Ipso smart objects for iot

  • Published on

  • View

  • Download


Keynote Presentation templateIPSO Smart Objectsfor IoTJanuary 28, 2015#1IPSO Smart ObjectsDeveloped by the IP for Smart Objects Alliance (IPSO)Semantic Interoperability across IoT devices and applicationsBased on LWM2M object modelReusable object IDs and resource IDsUsable on many different transport protocols (CoAP, HTTP, MQTT) which can support LWM2M addressing, data types, and content formatsBasic Starter Pack for simple objects was published in 2014Basic Objects represent simple sensors and actuatorsExtensions in progress to broaden the use case applicability#Web to the Edge - Internet Standards for IoTApplication SoftwareIPSO ObjectsOMA LWM2MCoAPHTTP6LowPANIPV4/IPV6MCU 16KiB RAMMPU802.15.4WiFi, EthernetHardwareHW NetworkRoutingApplication ProtocolAPI and ServicesData ModelsApplicationWeb Server#IPSO Smart Objects use the LWM2M Object ModelReusable resource and object IDsCommon definitions for concepts across diverse applicationsMap to semantic terms e.g. temperature, currentValueIDs are registered with the OMNAUsable across different transport protocols which can support:URI Addressing Data TypesContent FormatsOperations (Read, Write, Execute)Some protocols may allow a subset e.g MQTT can do Actuation and Notification3303/0/5700Object ID, defines object typeObject Instance, one or moreResource ID, defines resource type#Example IPSO Smart Object (Temperature)#Example IPSO Smart Object (Temperature) ..continued#IPSO Smart Object Starter Pack#Ad-Hoc IPSO Smart Object BLE Heart Rate Sensor Profile#Ad-Hoc IPSO Smart Object Smart Thermostat#IPSO Smart Object Roadmap TBD New Smart Objects to cover more use cases but need ownersMore basic objects e.g. sensors, actuators, controllersHome appliances, media control devicesComplex and composite objects using LWM2M Object LinkingGateway integration, TR-069 interworkingBluetooth and Zigbee Object Model BindingsStandalone schema and templates for high level semanticsDevice to Device Interaction using IPSO Smart Obejcts#Composite IPSO Smart Objects Conceptual View#Composite Objects through Object LinkingObject Link is a new LWM2M data type32 bit packed representation of Object ID and InstanceComposite objects can be made by using object links to transclude other objects (include by reference)Can use web-like pattern, following linksLinked objects are serialized inline when using SenML#Example Composite Object using Links3308/03306/0Thermostat8300 IPSO Thermostat3303/0 - IPSO Temperature3308 IPSO Setpoint3306 IPSO ActuationInput link (7100)Setpoint link (7101)Output link (7102)Application Type (5750)3303/0#IPSO Application Templates Application Templates using JSON as a high level constructor for object instances and high level composite objectsControls object linking and encapsulation structureSettings, e.g. LWM2M Observe AttributesAdditional core-link-format metadata for discoveryCan include semantic hooks for abstract modelsHypermedia template for semantic discoveryDoes this in a layered way as needed#Example Template for Object Linkingobjects: { 8300: { description: IPSO PID Control, instances: { 0: { resources: { 7100: { description: Input Object Link, value: [3300,0] }, 7101: { description: Setpoint Object Link, value: [3308,0] }, 7102: { description: Output Object Link, value: [3306,0] }, 5750: { description: Application Type, value: Thermostat# objects: { 3303: { description: ipso temperature sensor, lwm2m-attributes: {pmin: 60, pmax: 300, max-age: 360}, core-link-attributes: {rt: [oma.lwm2m, urn:X-ipso:temperature]}, instances: { 0:{ lwm2m-attributes: {}, core-link-attributes: {rt: urn:oma:lwm2m:ext:3303}, resources: { 5700:{ description: Current Measured Value lwm2m-attributes: {pmin: 10,step: 0.5}, core-link-attributes: {rt: ucum:temperature, obs, ct: 50} }, 5701: { description: units, value: ucum:Cel, operations: [r] }, 5601: {description: Min Measured Value, value: 100}, 5602: {description: Max Measured Value, value: 0}, 5603: {description: Min Range Value, value: 0}, 5604: {description: Max Range Value, value: 100}, 5605: {description: Reset Min/Max} }Example Template using Semantic Annotation #IPSO Application TemplatesConstructor for embedded objectsConstructor for complex, composite objectsControls, e.g. LWM2M Observe AttributesHypermedia template for embedded serverHypermedia template for client applicationsSemantic Annotation using core-link-format metadata#IoT Use Case Architecture FrameworkApplicationService e.g. LWM2MApplicationApplicationsClientServerPeer-PeerManaged Device, e.g. 16KB RAM, 128KB FlashSmart Object Registration, Discovery and Data Layer Service, Device Proxy and CacheLocal, Gateway, or Cloud BasedApplications can Discover and Interact with devices using Peer-Peer networking or through Services, using the Same SemanticsApplications running on Servers, Gateways, Browsers, Smartphones, TabletsSensor/Actuator DeviceDevices with Embedded ApplicationsService e.g. LWM2M#Networked Devices in the Connected HomeTVAudioDoorLockLightWashing MachineRouterLWM2MServerSmart PhoneEthernet,WiFi,ThreadFitbitBTLELWM2MServer#Managed DevicesTVAudioDoorLockLightWashing MachineRouterLWM2MServerSmart PhoneFitbitBTLESimple Devices Are Managed through LWM2M Servers LWM2MServerLocally ManagedRemotelyManagedDirectly Managed from Smart Device #Managed Device InteractionsTVAudioDoorLockLightWashing MachineRouterLWM2MServerSmart PhoneEthernet,WiFi,ThreadFitbitBTLELWM2MServerLocal ApplicationScene ControlBinding, PairingRemote ApplicationEnergy Management#Application DevicesTVAudioDoorLockLightWashing MachineRouterDevice ServerSmart PhoneFitbitBTLEApp Devices may interact with each other and participate in managed interactionsLWM2MServerPhone App#Resource Discovery on the Local NetworkCould return a link-format document:;obs;rt=urn:X-ipso:batt-level;ct=50,;rt=urn:X-ipso:dev-mdl;ct=50,;rt=urn:X-ipso:dev-mfg;ct=50,;obs;rt=urn:X-ipso:pwr-w;ct=50,;obs;rt=urn:X-ipso:pwr-accum-wh;ct=50,;obs;rt=urn:X-ipso:temp-C;ct=50CoAP ServerCoAP ClientDISCOVERYGET /.well-known/core2.05 Content Could use multicast#Device Registers With LWM2M Server, Application DiscoversAppLWM2M ServerSoft EndpointsIP DeviceIP DeviceLWM2M ClientsDISCOVERREGISTER/3303/0/5700/domain/endpoints/3303/0/5700#Application Interacts With Device Transparently Through ServerAppLWM2M ServerIP DeviceIP DeviceLWM2M Clients1. GET3. REPLY2. GET4. REPLY/domain/endpoints/3303/0/5700/3303/0/5700#Application Receives Notifications Through ServerAppLWM2M ServerIP DeviceIP DeviceLWM2M Clients1. NOTIFY2. NOTIFY#LWM2M Communication Through NAT RouterAppLWM2M ServerCoAPIP DeviceIP DeviceHW Device EndpointsREG UPDATENAT RouterGET/PUT#Resources:Resource NameResource IDAccess TypeMultipleInstances?MandatoryTypeRange or EnumerationUnitsDescriptionsSensor Value5700RNoMandatoryFloatLast or Current Measured Value from the SensorUnits5701RNoOptionalStringMeasurement Units Definition e.g. Cel for Temperature in Celsius.Min MeasuredValue5601RNoOptionalFloatSame as Measured ValueSame as Measured ValueThe minimum value measured by the sensor since power ON or resetMax Measured Value5602RNoOptionalFloatSame as Measured ValueSame as Measured ValueThe maximum value measured by the sensor since power ON or resetMin Range Value5603RNoOptionalFloatSame as Measured ValueSame as Measured ValueThe minimum value that can be measured by the sensorMax RangeValue5604RNoOptionalFloatSame as Measured ValueSame as Measured ValueThe maximum value that can be measured by the sensorReset Min and Max Measured Values5605ENoOptionalOpaqueReset the Min and Max Measured Values to Current ValueTable 1 Smart Objects defined by this Technical Guideline ObjectObject ID Multiple Instances?IPSO Digital Input3200YesIPSO Digital Output3201YesIPSO Analogue Input3202YesIPSO Analogue Output3203YesIPSO Generic Sensor3300YesIPSO Illuminance Sensor3301YesIPSO Presence Sensor3302YesIPSO Temperature Sensor3303YesIPSO Humidity Sensor3304YesIPSO Power Measurement3305YesIPSO Actuation3306YesIPSO Set Point3308YesIPSO Load Control3310YesIPSO Light Control3311YesIPSO Power Control3312YesIPSO Accelerometer3313YesIPSO Magnetometer3314YesIPSO Barometer3315YesObject info:ObjectObject ID Object URNMultiple Instances?DescriptionHeart Rate12200urn:oma:lwm2m:x:12200YesHeart Rate MonitorResource Info:Resource NameResource IDAccess TypeMultipleInstances?MandatoryTypeRange or EnumerationUnitsDescriptionsSensor Value5700RNoMandatory Float BPM Heart Rate Measurement ValueDigital Input State5500RNoOptionalBooleanSensor contact status 0=no contact, 1= contactTotal Energy5950RNoOptionalFloatkJEnergy ExpendedReset Cumulative Energy5822ENoOptionalOpaqueReset 5950 Energy Expended to zeroBody Sensor Location5951R,WNoOptionalStringIntended sensing location on the body R-R Interval5952RNoOptionalStringSequence of R-wave intervalsObject info:ObjectObject ID Object URNMultiple Instances?DescriptionSmart Thermostat12300urn:oma:lwm2m:x:12300YesSmart Thermostat with multiple settingsResource Info:Resource NameResource IDAccess TypeMultipleInstances?MandatoryTypeRange or EnumerationUnitsDescriptionsSensor Value5700RNoMandatory Float Per Units resource Temperature measurementUnits5500R,WNoMandatoryStringucum:degF, ucum:degCUnits for 5700Application Type5750R,WNoOptionalStringName, e.g. Hall ThermostatCooling5200RNoOptionalBoolean1=coolingHeating5201RNoOptionalBoolean1=heatingHeat Source5203RNoOptionalStringEmergency, NormalIndicates heat sourceFan Timer Active5204R,WNoOptionalBoolean1=runningFan Timeout5205R,WNoOptionalStringUTSTime for fan to stopEnergy Save Mode5206R,WNoOptionalBoolean1= Energy Save modeAway Mode5207 R,WNoOptionalBoolean0=Home,1=AwaySetpoint5208RNoOptionalFloatDesired TemperatureHVAC Mode5209R,WNoOptionalStringHeat, Cool, Heat-CoolSystem Mode High Setpoint5210R,WNoOptionalFloatHighest desired temperatureLow Setpoint5211R,WNoOptionalFloatLowest desired temperatureHigh Away Setpoint5212R,WNoOptionalFloatHighest away mode temperatureLow Away Setpoint5213R,WNoOptionalFloatLowest away mode temperature


View more >