Ipso smart objects for iot
-
Upload
michael-koster -
Category
Engineering
-
view
381 -
download
6
Transcript of Ipso smart objects for iot
1
IPSO Smart Objectsfor IoT
January 28, 2015
2
IPSO Smart Objects
Developed by the IP for Smart Objects Alliance (IPSO)
Semantic Interoperability across IoT devices and applications
Based on LWM2M object model
Reusable object IDs and resource IDs
Usable on many different transport protocols (CoAP, HTTP,
MQTT) which can support LWM2M addressing, data types,
and content formats
Basic Starter Pack for simple objects was published in 2014
Basic Objects represent simple sensors and actuators
Extensions in progress to broaden the use case applicability
3
Web to the Edge - Internet Standards for IoT
Application Software
IPSO Objects
OMA LWM2M
CoAP HTTP
6LowPAN IPV4/IPV6
MCU – 16KiB RAM MPU
802.15.4 WiFi, Ethernet
Hardware
HW Network
Routing
Application Protocol
API and Services
Data Models
Application
Web Server
4
IPSO Smart Objects use the LWM2M Object Model
Reusable resource and object IDs
Common definitions for concepts
across diverse applications
Map to semantic terms e.g.
temperature, currentValue
IDs are registered with the OMNA
Usable across different transport
protocols which can support:
URI Addressing
Data Types
Content Formats
Operations (Read, Write, Execute)
Some protocols may allow a subset e.g
MQTT can do Actuation and Notification
3303/0/5700
Object ID, defines object type
Object Instance, one or more
Resource ID, defines resource
type
5
Example IPSO Smart Object (Temperature)
6
Example IPSO Smart Object (Temperature) ..continued
7
IPSO Smart Object Starter Pack
8
Ad-Hoc IPSO Smart Object – BLE Heart Rate Sensor
Profile
9
Ad-Hoc IPSO Smart Object – Smart Thermostat
10
IPSO Smart Object Roadmap TBD
New Smart Objects to cover more use cases but need owners
More basic objects e.g. sensors, actuators, controllers
Home appliances, media control devices
Complex and composite objects using LWM2M Object Linking
Gateway integration, TR-069 interworking
Bluetooth and Zigbee Object Model Bindings
Standalone schema and templates for high level semantics
Device to Device Interaction using IPSO Smart Obejcts
11
Composite IPSO Smart Objects – Conceptual View
12
Composite Objects through Object Linking
Object Link is a new LWM2M data type
32 bit packed representation of Object ID and Instance
Composite objects can be made by using object links to
transclude other objects (include by reference)
Can use web-like pattern, following links
Linked objects are serialized inline when using SenML
13
Example Composite Object using Links
3308/0
3306/0
Thermostat
8300 – IPSO Thermostat
3303/0 - IPSO Temperature
3308 – IPSO Setpoint
3306 – IPSO Actuation
Input link (7100)
Setpoint link (7101)
Output link (7102)
Application Type (5750)
3303/0
14
IPSO Application Templates
Application Templates using JSON as a high level
constructor for object instances and high level composite
objects
Controls object linking and encapsulation structure
Settings, e.g. LWM2M Observe Attributes
Additional core-link-format metadata for discovery
Can include semantic hooks for abstract models
Hypermedia template for semantic discovery
Does this in a layered way as needed
15
Example Template for Object Linking
“objects”: {
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”
<etc>
16
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
17
IPSO Application Templates
Constructor for embedded objects
Constructor for complex, composite objects
Controls, e.g. LWM2M Observe Attributes
Hypermedia template for embedded server
Hypermedia template for client applications
Semantic Annotation using core-link-format metadata
18
IoT Use Case Architecture Framework
Application
Service e.g.
LWM2M
Application
Application
s
ClientServer
Peer-
Peer
Managed
Device, e.g.
16KB RAM,
128KB
Flash
Smart Object Registration,
Discovery and Data Layer
Service, Device Proxy and
Cache
Local, Gateway, or Cloud
BasedApplications can Discover and
Interact with devices using Peer-
Peer networking or through
Services, using the Same
Semantics
Applications running on
Servers, Gateways,
Browsers,
Smartphones, Tablets
Sensor/
Actuator
Device
Devices with
Embedded
Applications
Service e.g.
LWM2M
19
Networked Devices in the Connected Home
TV
Audio
DoorLock
Light
Washing Machine
Router
LWM2MServer
Smart
Phone
Ethernet,
WiFi,
Thread
Fitbit
BTLE
LWM2MServer
20
Managed Devices
TV
Audio
DoorLock
Light
Washing Machine
Router
LWM2MServer
Smart
Phone
Fitbit
BTLESimple Devices Are
Managed through LWM2M
Servers
LWM2MServer
Locally Managed
Remotely
Managed
Directly Managed
from Smart Device
21
Managed Device Interactions
TV
Audio
DoorLock
Light
Washing Machine
Router
LWM2MServer
Smart
Phone
Ethernet,
WiFi,
Thread
Fitbit
BTLE
LWM2MServer
Local Application
Scene Control
Binding, Pairing
Remote Application
Energy Management
22
Application Devices
TV
Audio
DoorLock
Light
Washing Machine
Router
Device Server
Smart
Phone
Fitbit
BTLE
App Devices may interact with
each other and participate in
managed interactionsLWM2MServer
Phone App
23
Resource Discovery on the Local Network
Could return a link-format document:
</3//9>;obs;rt=“urn:X-ipso:batt-level”;ct=”50”,
</3//0>;rt=”urn:X-ipso:dev-mdl”;ct=”50”,
</3//1>;rt=”urn:X-ipso:dev-mfg”;ct=”50”,
</3305/0/5800>;obs;rt=”urn:X-ipso:pwr-w”;ct=”50”,
</3305/0/5805>;obs;rt=”urn:X-ipso:pwr-accum-wh”;ct=”50”,
</3303/0/5700>;obs;rt=”urn:X-ipso:temp-C”;ct=”50”
CoAP
ServerCoAP
Client
DISCOVERY
GET /.well-known/core
2.05 Content
Could use
multicast
24
Device Registers With LWM2M Server, Application
Discovers
App
LWM2M
Server
Soft Endpoints
IP
Devic
e
IP
Devic
e
LWM2M Clients
/3303/0/5700
/domain/endpoints/3303/0/5700
25
Application Interacts With Device Transparently Through
Server
App
LWM2M
Server
IP
Devic
e
IP
Devic
e
LWM2M Clients
/domain/endpoints/3303/0/5700
/3303/0/5700
26
Application Receives Notifications Through Server
App
LWM2M
Server
IP
Devic
e
IP
Devic
e
LWM2M Clients
27
LWM2M Communication Through NAT Router
App
LWM2M
Server
CoAP
IP
Devic
e
IP
Devic
e
HW Device Endpoints
NAT Router