Technology for                                                                            Pervasive ComputingUsing Web Ser...
Overview    Motivation    Use Case Driven Analysis    Implementation    Results    Outlook                 IoT 2010, IoT G...
Technology for3   05.12.2010   Pervasive                 Computing
Motivation    How to apply IoT in industrial environments         RFID, most often in logistics, first steps/islands      ...
Technology for5   05.12.2010   Pervasive                 Computing
Internet of Things    Federating data from objects, machines, devices       Closing the reality gap  business value      ...
Why proprietary nodes and protocols?    Heterogeneous IoT Nodes          Market quickly evolving          application spec...
IoT Platforms: Networked Sensing+ID                                32 bit ARM7                                   256K RAM/...
Why Web Services?Document oriented Web Service    Loose coupling    Message oriented communication    State less    Not (o...
Device Profile for Web Services Features: • Profile of Basic Web Service   functionality                                  ...
Technology for11   05.12.2010   Pervasive                  Computing
Are Web Services really the tool for IoT?     Cannot answer this generally!          Other approaches: see other talks in ...
Identification and placement  unambiguous association of data to data sources (measurement units or RFID name  plates)    ...
IoT 2010, IoT Gateways, Till Riedel                                                        Technology for14   05.12.2010  ...
Configuration & Storage     Need to archive configuration and data formats with the     document:         See e.g. IEEE CO...
IoT 2010, IoT Gateways, Till Riedel                                                        Technology for16   05.12.2010  ...
IoT 2010, IoT Gateways, Till Riedel                                                        Technology for17   05.12.2010  ...
Measurement     Again: do not use RPCs        Publish/Subscribe patterns are much more natural to the domain        WS-Eve...
Technology for19   05.12.2010   Pervasive                  Computing
Mapping Web Services to IoT              Client C   WebService   Service Proxy S                                          ...
Mapping Web Services to IoT              Client C    WebService   Service Proxy S        GW                  GWGW         ...
Mapping Web Services to IoT              Client C    WebService   Service Proxy S        GW The question will not be how t...
Mapping IoT Nodes to Web Services We will need gateways? But how many? Can we afford map every service by hand?  Is there ...
Syntactic Transformation                                                                            Gateway WS/WSN        ...
Model driven development process                                     WSDL/XSL,                                     ASN.1, ...
The nice things about talking XML                                       Lots of tools available!                          ...
Domain specificFormal                                                    Executable                    IoT 2010, IoT Gatew...
Aspect oriented Code Generation                                                                           Java-Code       ...
Technology for29   05.12.2010   Pervasive                  Computing
Human resources   C# Mobile WCF Client  pPart Sensornode C-Code (DOM based)Easy new platform adaption:• Particle (binary e...
Network resources       using different encoding       allows high data rates/less       energy consumption       Event mu...
General Issues of Web Services     Web-Service client implementations are often not scalable          Other event delivery...
Reason for using Web Services     But:          Interaction patterns from web service community apply          to IoT!    ...
Technology for34   05.12.2010   Pervasive                  Computing
Conclusion     We have show how Web Services can provide a     clean semantic abstraction to an IoT use case.We can functi...
Outlook      We only told you half of the story       The Internet of Things not only about      homogeneity but is also ...
Questions?                  riedel@teco.edu                  nicolaie.fantana                  @de.abb.com                ...
Upcoming SlideShare
Loading in …5
×

Using Web Service Gateways and Code Generation for Sustainable IoT System Development

1,319 views

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,319
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
45
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Using Web Service Gateways and Code Generation for Sustainable IoT System Development

  1. 1. Technology for Pervasive ComputingUsing Web Service Gateways and Code Generationfor Sustainable IoT System DevelopmentT. Riedel, N.L. Fantana*, A. Genaid, D. Yordanov, H. Schmidtke, M. Beigl,KIT Pervasive Computing Systems Group, * ABB Corporate ResearchKIT – University of the State of Baden-Wuerttemberg andNational Research Center of the Helmholtz Association www.kit.edu
  2. 2. Overview Motivation Use Case Driven Analysis Implementation Results Outlook IoT 2010, IoT Gateways, Till Riedel Technology for2 05.12.2010 Pervasive Computing
  3. 3. Technology for3 05.12.2010 Pervasive Computing
  4. 4. Motivation How to apply IoT in industrial environments RFID, most often in logistics, first steps/islands in industrial environment WSN, most often in special applications No real internet Can IoT technolgies bring benefit in industrial ad-hoc service case? How can we be future proof and adaptive to new developments? IoT 2010, IoT Gateways, Till Riedel Technology for4 05.12.2010 Pervasive Computing
  5. 5. Technology for5 05.12.2010 Pervasive Computing
  6. 6. Internet of Things Federating data from objects, machines, devices Closing the reality gap  business value Technology available and installed: RFID, WSN, automation systems, external data internet of Things == Network of Networks of Things IoT 2010, IoT Gateways, Till Riedel Technology for6 05.12.2010 Pervasive Computing
  7. 7. Why proprietary nodes and protocols? Heterogeneous IoT Nodes Market quickly evolving application specific node development Topologies and Infrastructure: RFID vs. WSN Sensing the reality everywhere size/energy Resource optimized IoT protocols Enable the effective use of WSN/RFID Lot of research in MAC-Layers, routing etc. Low overhead by using implicit information Technology for7 05.12.2010 IoT 2010, IoT Gateways, Till Riedel Pervasive Computing
  8. 8. IoT Platforms: Networked Sensing+ID 32 bit ARM7 256K RAM/2M Flash/80 MHz, 802.15.4, Java 8bit PIC18F6720 MCU 4KB RAM /128KB Flash,5MIPS, Awarecon, C/JavaSPOTS, Sun 8bit rfPIC 64 Byte RAM/1.4 KB Flash 1MIPS, C/Config only No MCU, 1bit-4kbyte EEPROM Organic Label, PolyIC Technology for 8 05.12.2010 IoT 2010, IoT Gateways, Till Riedel Pervasive Computing
  9. 9. Why Web Services?Document oriented Web Service Loose coupling Message oriented communication State less Not (only) RPC! (see Saif, Greaves: Communication Primitives for Ubiquitous Systems or RPC Considered Harmful)Typing Integration into many programming languages Well-defined Interfaces Long term documentation (one the ideas behind SGML) Technology for9 05.12.2010 IoT 2010, IoT Gateways, Till Riedel Pervasive Computing
  10. 10. Device Profile for Web Services Features: • Profile of Basic Web Service functionality Service • Infrastructureless setup • Support for “resource constraint “ WS WS WS device Discovery MEX Eventing WS-Addressing, WS-Security Socrades Project UDP HTTP http://socrades.eu Web services in automation and TCP sensing, realtime IP WS4D http://ws4d.org DPWS implementations for gsoap (C,C++), AXIS (Java) IoT 2010, IoT Gateways, Till Riedel Technology for10 05.12.2010 Pervasive Computing
  11. 11. Technology for11 05.12.2010 Pervasive Computing
  12. 12. Are Web Services really the tool for IoT? Cannot answer this generally! Other approaches: see other talks in this session!!! Use case/requirement driven analysis: 1) Identification 2) Placement 3) Configuration 4) Measurement 5) Storage IoT 2010, IoT Gateways, Till Riedel Technology for12 05.12.2010 Pervasive Computing
  13. 13. Identification and placement unambiguous association of data to data sources (measurement units or RFID name plates) scan the landscape for existing IoTWS-Discovery works infrastructure-less and ad-hoc custom search criteria (type of node, location, measurement grouping) RFID batch readings EPC over the air protocol protocols in wireless sensor networks. URIDevice Profile Metadata Simple abstraction on Hosting and Hosted Service Device and Functionality But also group of devices, networlk and gateway services Adds services to “things”WS-MetadataExchange Extend using context information  location information Identification is not only a machine to machine problem!! IoT 2010, IoT Gateways, Till Riedel Technology for 13 05.12.2010 Pervasive Computing
  14. 14. IoT 2010, IoT Gateways, Till Riedel Technology for14 05.12.2010 Pervasive Computing
  15. 15. Configuration & Storage Need to archive configuration and data formats with the document: See e.g. IEEE COMTRADE Format (3 text files) Not only understand live data Find out what the capabilities/interfaces are of a sensor WSDL is very expressive Can easily extended semantically: We started using e.g. UnitsML Easy to put in text documentation Configure dynamic capabilities via document oriented interfaces Clearly communicate and document the state! Serialize data as XML along with static and dynamic configuration and context information IoT 2010, IoT Gateways, Till Riedel Technology for15 05.12.2010 Pervasive Computing
  16. 16. IoT 2010, IoT Gateways, Till Riedel Technology for16 05.12.2010 Pervasive Computing
  17. 17. IoT 2010, IoT Gateways, Till Riedel Technology for17 05.12.2010 Pervasive Computing
  18. 18. Measurement Again: do not use RPCs Publish/Subscribe patterns are much more natural to the domain WS-Eventing provides simple/extensible semantics Industrial application need to support high data rates: E.g. 2kHz continues sensor signal 250kHz transient Do you want to use XML for this: yes Can we use XML over a IoT network: no IoT 2010, IoT Gateways, Till Riedel Technology for18 05.12.2010 Pervasive Computing
  19. 19. Technology for19 05.12.2010 Pervasive Computing
  20. 20. Mapping Web Services to IoT Client C WebService Service Proxy S Technology for20 05.12.2010 Pervasive Computing
  21. 21. Mapping Web Services to IoT Client C WebService Service Proxy S GW GWGW GW Technology for21 05.12.2010 Pervasive Computing
  22. 22. Mapping Web Services to IoT Client C WebService Service Proxy S GW The question will not be how to write a single gateway but GW how to write all the gateways needed in the future…GW GW Technology for22 05.12.2010 Pervasive Computing
  23. 23. Mapping IoT Nodes to Web Services We will need gateways? But how many? Can we afford map every service by hand? Is there a way to do it once and for all? IoT 2010, IoT Gateways, Till Riedel Technology for23 05.12.2010 Pervasive Computing
  24. 24. Syntactic Transformation Gateway WS/WSN TransportA WS Comm. Transport Transformation Transformation <sample> ….</sample> Platform X Transport 111|101001011|1011How to write transformations• Manual Proxies• Declarative Mapping (uMiddle, Transport• CoBIS) Transformation• Implicit Mapping! Platform Y IoT 2010, IoT Gateways, Till Riedel Technology for 24 05.12.2010 Pervasive Computing
  25. 25. Model driven development process WSDL/XSL, ASN.1, IDL Ecore Meta ModelCommunication viaCommon ModelsGeneratedMiddleware AkzeptorEfficient GeneratedCode Transformation DSLAvailable aseclipse plug-in Client Gateway SensorNode IoT 2010, IoT Gateways, Till Riedel Technology for25 05.12.2010 Pervasive Computing
  26. 26. The nice things about talking XML Lots of tools available! But also theory available!Representation R Hedge Grammars, nested word Representation R’ languages Structure best available compromise between expressiveness and complexity? Can be accepted via automata! bisimulate bisimulate Encoding E’ Encoding EWS-Client Gateway IoT node Technology for 26 05.12.2010 IoT 2010, IoT Gateways, Till Riedel Pervasive Computing
  27. 27. Domain specificFormal Executable IoT 2010, IoT Gateways, Till Riedel Technology for 27 05.12.2010 Pervasive Computing
  28. 28. Aspect oriented Code Generation Java-Code C-Code SAX Reader Bin Reader Automata generator DOM struct Writer DOM struct Writer templates software product line implementation (Voelter, et.al)Eclipse Modeling FrameworkXpand based model to text Technology for28 05.12.2010 IoT 2010, IoT Gateways, Till Riedel Pervasive Computing
  29. 29. Technology for29 05.12.2010 Pervasive Computing
  30. 30. Human resources C# Mobile WCF Client pPart Sensornode C-Code (DOM based)Easy new platform adaption:• Particle (binary encoding, AwareCon MAC, DOM-based code, existing pPart node)• 6LoWPAN (binary encoding, 6lowpan/802.15.4 MAC,event-based code, Contiki Node)• “Dummynode” (various encodings, IPv4, dom-based, PC basedtest environment)Prototypes we are currently working on:• RFID • Microstrain • Java NodesDifference between a Java SAX based implementation and a C proto-thread implementation:approx. 150 lines of code for all possible service/gateway combinations IoT 2010, IoT Gateways, Till Riedel Technology for 30 05.12.2010 Pervasive Computing
  31. 31. Network resources using different encoding allows high data rates/less energy consumption Event multiplexing offloads load from sensor network WS-Eventing requires scalable client  IoT 2010, IoT Gateways, Till Riedel Technology for31 05.12.2010 Pervasive Computing
  32. 32. General Issues of Web Services Web-Service client implementations are often not scalable Other event delivery modes relax this situation: WS-Management Discovery is not scalable for the real IoT Custom scoping is important. Moving away from the standards again: Difficult to adapt clients! You have to make it work once at least Support for IoT Web Sevice standards is weak and often incomplete and complicated IoT 2010, IoT Gateways, Till Riedel Technology for32 05.12.2010 Pervasive Computing
  33. 33. Reason for using Web Services But: Interaction patterns from web service community apply to IoT! Flexibility needed for IoT deployment Interacting with things and not aggregating their data Proprietary, incomplete, non-standardized solution will give quicker success, but can they really be sustainable? Complexity is not an argument just an excuse! Performance is not an argument either! A common language for the IoT is needed: Use (Web) Services for devices !! IoT 2010, IoT Gateways, Till Riedel Technology for33 05.12.2010 Pervasive Computing
  34. 34. Technology for34 05.12.2010 Pervasive Computing
  35. 35. Conclusion We have show how Web Services can provide a clean semantic abstraction to an IoT use case.We can functionally fully capture an industrial service IoT application with heterogeneous devices using Web Services We developed a way to develop a product line of gateways for Web Services We functionally enabled a number of IoT platforms to be used in our application. IoT 2010, IoT Gateways, Till Riedel Technology for35 05.12.2010 Pervasive Computing
  36. 36. Outlook We only told you half of the story  The Internet of Things not only about homogeneity but is also about the differences of real things (and thus technologies) How can we translate non-functional behavior to a technology agnostic client application and eventually user? time synchronization for high speed sampling, calibration temporary failure, service availability (especially RFID) robustness, acceptance by user! IoT 2010, IoT Gateways, Till Riedel Technology for36 05.12.2010 Pervasive Computing
  37. 37. Questions? riedel@teco.edu nicolaie.fantana @de.abb.com Technology for37 05.12.2010 Pervasive Computing

×