Difference between revisions of "Architecture"

From IoTWiki
Jump to: navigation, search
(Intro UML)
 
m (Digital Twin and IoT network call outs)
Line 4: Line 4:
 
*The interaction, protocols and evolution of the individual components in the usage of the system. This may also be a normative or presciptive specification using standards
 
*The interaction, protocols and evolution of the individual components in the usage of the system. This may also be a normative or presciptive specification using standards
  
The [https://en.wikipedia.org/wiki/Unified_Modeling_Language| UML] specifies usecase, component, package and deployment views among others.
+
The [https://en.wikipedia.org/wiki/Unified_Modeling_Language| UML] specifies component, package, deployment and interaction views among others.
  
== IoT Components ==
+
== IoT System Components ==
===Motes===
+
IoT systems use  ''constrained devices'' with much less functionality then computers. IEEE and other standards use many terms and this is a quick layman's intro to some of them. IoT Devices fall into ''Full Function Device'' (FFD) like a Linux based TV Set top box or CCTV device, ''Reduced Function Device'' (RFD) like a pollution sensor which does not do  ISO layer 2 routing and Limited Function device(LFD) which are motes or smart dust of the wireless sensor network (WSN)
===Gateway or Hubs===
+
;Motes
===IoT Platfrom===
+
:Motes<ref>https://computer.howstuffworks.com/mote.htm</ref> are limited function devices (LFD) with sensors and/or actuators and very small memory (32 Kb ) and small compute capacity ( 8 or 16 bit micro controller) and may use energy harvesting techniques( Solar etc) or be passive (RFID) or be battery powered typically for a year or more.
===Middelware===
+
;Gateway or Hubs
===South and North side===
+
:These take part in packet routing and typically are Linux based devices. Android based smartphones are also emerging as a option. Hubs are used in mesh networks and route packets using same radio and protocols as they receive . [https://en.wikipedia.org/wiki/IEEE_802.15.4|IEEE 802.15.4]based Zigbee and new Bluetooth 5 use mesh approach. Gateway typically connect to the Internet on one side(north side)  and may connect to non internet based networks on the other (south ) side.
===Connectivity====
+
;IoTNetworks
===Data Formats
+
A vast range of methods and protocols are used to connect endpoints. The academic literature call them ''capillary networks'' and other terms like ''proximity networks'' or ''field networks''  and ''south side networks'' are also used. In this note we use the newer term [[UsersWiki!:IoTNetwork| IoTNetwork]].  Some examples of the over 200
 +
*wired
 +
**[https://www.rtaautomation.com/technologies/modbus-rtu/ RS 232 / RS485 based  Modbus]
 +
**[https://en.wikipedia.org/wiki/Fieldbus Fieldbus] using industrial Ethernet
 +
**[https://opcfoundation.org/ OPC] now migrating to wireless
 +
*wireless
 +
**WiFi and extensions like HaLow
 +
**IEEE 802.15.4 based Zigbee,  6LowPAN based Thread
 +
**(Wireless HART)
 +
**[https://en.wikipedia.org/wiki/ISA100.11a ISA100]
 +
**Cellular (M2M) covering 1G, 2G ,3G
 +
**LPWAN
 +
**BLE
 +
;Middelware & Data Formats
 +
The data formats range from fixed field records (Modbus) to XML style ( HTML, XMPP) over Rest API calls and binary JSON over MQTT.
 +
;IoTPlatfrom
 +
A component tightly coupled with the gateway and managing south side IoTNetworks and devices and interfacing with north side Internet and cloud See [[UsersWiki!IoTPlatform]]
 +
;Touch-points
 +
IoT assume machine to machine communication (M2M). A variety of touchpoints from HTML pages, voice (Amazon Alexa), SMS , email, twitter and whatsApp based interaction, chatbots and API based machine interaction are expected.
 +
;Server Applications
 +
Typically in modern system the application provides a user interface (UI) over HTML or a front end Smartphone App. 
 +
These require a micro-service based server side or user interface less applications. There are new concerns of authentication and authorization and security in this scenario and bots and devices must have thier own identity in the software. The concept of [[UsersWiki!:DigitalTwin|''Digital Twin'']] is emerging as a paradigm.
 +
 
 +
 
 +
==See Also==
 +
https://www.cse.wustl.edu/~jain/cse570-15/ftp/iot_prot/

Revision as of 04:02, 22 October 2017

System Architecture or Software Architecture for IoT is an evolving story as it covers heterogeneous devices and use cases from closed loop near real time process control, automotive to sporadic SmartCity pollution measurements and very dense urban deployment of Smartdevices for electric grid and street lighting etc.There are many proposed reference architecture for IoT. They vary by purpose ( Analytics Dash-boarding, Device management,M2M Standard bodies) and scope (Cloud or SmartCity).  

Architecture is broadly about two ideas

  • The components of a system that provide the function being delivered. This is a structural view and may involve many layers with each component have a similar blowup
  • The interaction, protocols and evolution of the individual components in the usage of the system. This may also be a normative or presciptive specification using standards

The UML specifies component, package, deployment and interaction views among others.

IoT System Components

IoT systems use constrained devices with much less functionality then computers. IEEE and other standards use many terms and this is a quick layman's intro to some of them. IoT Devices fall into Full Function Device (FFD) like a Linux based TV Set top box or CCTV device, Reduced Function Device (RFD) like a pollution sensor which does not do ISO layer 2 routing and Limited Function device(LFD) which are motes or smart dust of the wireless sensor network (WSN)

Motes
Motes<ref>https://computer.howstuffworks.com/mote.htm</ref> are limited function devices (LFD) with sensors and/or actuators and very small memory (32 Kb ) and small compute capacity ( 8 or 16 bit micro controller) and may use energy harvesting techniques( Solar etc) or be passive (RFID) or be battery powered typically for a year or more.
Gateway or Hubs
These take part in packet routing and typically are Linux based devices. Android based smartphones are also emerging as a option. Hubs are used in mesh networks and route packets using same radio and protocols as they receive . 802.15.4based Zigbee and new Bluetooth 5 use mesh approach. Gateway typically connect to the Internet on one side(north side) and may connect to non internet based networks on the other (south ) side.
IoTNetworks

A vast range of methods and protocols are used to connect endpoints. The academic literature call them capillary networks and other terms like proximity networks or field networks and south side networks are also used. In this note we use the newer term IoTNetwork. Some examples of the over 200

  • wired
  • wireless
    • WiFi and extensions like HaLow
    • IEEE 802.15.4 based Zigbee, 6LowPAN based Thread
    • (Wireless HART)
    • ISA100
    • Cellular (M2M) covering 1G, 2G ,3G
    • LPWAN
    • BLE
Middelware & Data Formats

The data formats range from fixed field records (Modbus) to XML style ( HTML, XMPP) over Rest API calls and binary JSON over MQTT.

IoTPlatfrom

A component tightly coupled with the gateway and managing south side IoTNetworks and devices and interfacing with north side Internet and cloud See UsersWiki!IoTPlatform

Touch-points

IoT assume machine to machine communication (M2M). A variety of touchpoints from HTML pages, voice (Amazon Alexa), SMS , email, twitter and whatsApp based interaction, chatbots and API based machine interaction are expected.

Server Applications

Typically in modern system the application provides a user interface (UI) over HTML or a front end Smartphone App. These require a micro-service based server side or user interface less applications. There are new concerns of authentication and authorization and security in this scenario and bots and devices must have thier own identity in the software. The concept of Digital Twin is emerging as a paradigm.


See Also

https://www.cse.wustl.edu/~jain/cse570-15/ftp/iot_prot/