smart-innovation documentation

46
Smart-Innovation Documentation Release latest Sep 09, 2020

Upload: others

Post on 16-Oct-2021

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Smart-Innovation Documentation

Smart-Innovation DocumentationRelease latest

Sep 09, 2020

Page 2: Smart-Innovation Documentation
Page 3: Smart-Innovation Documentation

Contents

1 Introduction 1

2 Industry 4.0 3

3 Use cases 53.1 Smart Home . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53.2 Smart Grids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63.3 Industrial IoT (IIoT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73.4 Monitoring Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

4 Components of Internet of Things 114.1 Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124.2 Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124.3 Cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5 Security 15

6 Components of Cloud platform 176.1 What is Cloud Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176.2 Popular Cloud Platforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

7 Device 237.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

8 Micro-controller based edge devices 278.1 Microprocessor vs Micro-controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288.2 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308.3 System on a Chip (SoC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308.4 Microcontroller Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308.5 Hardware ,Software & Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318.6 Applications of Microcontrollers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328.7 Microcontroller Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

9 Communication Technologies 359.1 Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359.2 Zigbee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359.3 Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369.4 Cellular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

i

Page 4: Smart-Innovation Documentation

9.5 LoRaWAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

10 IoT Protocols 3710.1 Message Queue Telemetry Transport Protocol (MQTT) . . . . . . . . . . . . . . . . . . . . . . . . . 3710.2 HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3810.3 Constrained Application Protocol (CoAP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

11 Internet of Things Solution design considerations 3911.1 Sensors and Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3911.2 Communications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3911.3 Platform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4011.4 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4011.5 Cloud platform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4011.6 Over-the-Air Firmware Updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4111.7 Complete System Integrations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4111.8 Data Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

ii

Page 5: Smart-Innovation Documentation

CHAPTER 1

Introduction

IoT stands for Internet of Things. As per the IEEE ( IEEE, ”Internet of Things” , 2014) Internet of Things is definedas “A network of items embedded with sensors which are connected to the internet”,

The usual internet we all know is a network of networks which comprise of computers, servers and many networks.For example when you access Youtube.com you access through your computer and retrieve data from another serverwhich again a computer via the network. With the advancement of computer networks many device are connected tothis internet. For example now your ,Tab, home thermostat, cameras and other devices & appliances are connected tothe internet. These connected devices through the internet creates a broader network of computers and devices is nowcapable of transferring data between devices through the network even without human interaction. This is called theInternet of Things. This can be a small device as small as a pill or can be big as an aero plane. If you take a GPStracker on a vehicle, you can monitor the vehicle in real time. Now you can check your home security camera feedfrom your phone. Another classic example is the Smart home concept of connected smart devices that can be usedfor home automation. This larger network of devices and appliances collectively as a network is called the internetof Things. Internet of things will be a dominant force in the industries in future. It is predicted that about 50 Billiondevices will be connected to internet by end of 2020. Those will generate 4.4 zettabytes of data. IoT industry willgrow to a 14.4 Billion dollar industry by 2025.

1

Page 6: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

2 Chapter 1. Introduction

Page 7: Smart-Innovation Documentation

CHAPTER 2

Industry 4.0

Industry 4.0 is the name given for the next technical revolution that will take place with the increasing blend of smarttechnologies with transitional or legacy industries. Some of the key aspects of this will be increased automation,speed and accurate communication, efficient real time monitoring and machines which can communicate withouthuman interaction. Internet of Things or IoT will play a major role in this technology transformation because massivescale machine to machine communication is the concept behind IoT. The other technologies like robotics, ArtificialIntelligence(AI), Machine Learning(ML) will also be a quintessential part of this technical revolution.

The increase of automation and self-monitoring machines is in industries has already begun reducing human workforcein manufacturing related industries.

The replacement of human involvement in industries will urge to direct the human work force to find more creativesolutions and innovations for problems human kind face in becoming more efficient with supplies to the growingpopulation and demand throughout the world. This is why the most required skills in industry 4.0 would be creativityand innovation.

3

Page 8: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

4 Chapter 2. Industry 4.0

Page 9: Smart-Innovation Documentation

CHAPTER 3

Use cases

There are many applications of IoT we can already see in the environment.

3.1 Smart Home

One of the most popular applications of IoT is the smart home automation systems. Smart home concept is developedwith many connected devices installed in a house to create greater convenience. Some of the features can be listed as

5

Page 10: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

below.

• Smart TVs that can be connected to the internet and works with voice recognition or gesture control. Anypopular brand of TVs now has smart TVs.

• Smart lighting with automated operation with the condition of ambient light and remote controlling from outsidethe house. Example: Phillips Hue bulbs

• Smart thermostats to monitor and control home temperature. Example: Nest thermostat

• Smart door Locks to detect , authenticate and access control home users and selected visitors.

• Smart security cameras with remote monitoring and motions sensing.

• Pet care systems to automatically feeding and remote monitoring of pets.

• Home gardening systems with smart irrigation and health parameter monitoring.

• Smart home appliances such as coffee makers, refrigerators, air conditioners, washing machines etc.

3.2 Smart Grids

The electrical power grids are another areas where the IoT technologies are disrupting around the globe. The IoTtechnology will optimize the operation of generation, distribution and consumption of electrical power in the grid.This will be done using a combination of smart meters, smart appliances and energy source management. The Smartgrid will have the below features.

• Smart metering with each electricity consumption is measured in real time using remote monitoring enabledmeters. This data also used to correctly identify the demand patterns.

6 Chapter 3. Use cases

Page 11: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

• Smart appliances will consume the energy more efficiently and can be programmed to match the demand profileof the grid.

• Power generation and distribution can also be automated in response to the demand on real time with the inputsof the massive IoT network. This will be used to load balance the network specially due to a high number ofindependent renewable energy sources.

• Smart grids can be used to analyze and create better cost structures

3.3 Industrial IoT (IIoT)

The increase of nodes in industries which can communicate will be used for automations and monitoring reducingthe human interaction of human work force in future industries. This transformation of industries with IoT is calledthe Industrial Internet of Things. Mainly the nodes in an IIoT environment will be acting as sensor nodes collectingdata and the processed data through edge computing devices or cloud applications will be used for automations andmonitoring dashboards.

3.3. Industrial IoT (IIoT) 7

Page 12: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

3.4 Monitoring Applications

A simple application of IoT can be used for a temperature monitoring application. For example the temperature ata given location or a space would be a key measurement in certain applications such a agriculture and commercialstorages. In these applications a temperature sensor which can be connected to the internet will be used and the datais transmitted to a cloud application via internet protocols. The data can be visualized in real time based on the valuesgenerated through the sensor. This is a simple sample application. The scaled up version of this implementation wouldbe a weather station network with IoT.

8 Chapter 3. Use cases

Page 13: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

Smart bulb/Switch is also a IoT based implantation like this. The bulbs or switches can be remotely controlled andeven at site can be controlled without the manual intervention mostly using mobile devices.

3.4. Monitoring Applications 9

Page 14: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

10 Chapter 3. Use cases

Page 15: Smart-Innovation Documentation

CHAPTER 4

Components of Internet of Things

Internet of Things has two main components Internet and Things. Applications, protocols and interconnected networkis called the Internet and every component with connectivity to the internet is referred to as a “Thing”. In technicalterms, according to IEEE IoT architecture has 3 components.

• Physical

• Gateway

• Services

The physical layer is comprised of devices, gateway is the network used for communication and services are the datahandling part in application layer which is commonly is the cloud.

This can be simply identified by a common example of an IoT implementation. GPS based vehicle tracking system isa basic example of an IoT system. Each vehicle is comprised of a GPS device and the network is the GSM networkwhich transmit the data and the data is handled though an application in a server which is basically the service or thecloud.

11

Page 16: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

4.1 Device

Devices are the hardware devices any other physical device connected to the IoT network. This could include belowcategories of devices.

• Sensors – Temperature, Humidity, proximity, GPS, accelerometer

• Actuators- Motors, bulbs, Switches

• Human interface devices – household appliances, PCs, Tabs

• Computers and smart devices

• Network devices- routers, switches

The physical devices mainly do the analog data conversion to digital signals and collect data. The devices have remoteconnectivity and real time data transmission with secured channels.

4.2 Network

Connecting of billions of new devices to the internet is a great expansion of the network. IPV6 plays a major role inconnecting these devices with scalable unique addresses for all. Different protocols are used to for communication likehttp, https and light weight protocols like ZeroMQ and MQTT. The devices sometimes act and edge computing nodesprocessing certain amounts of data to have better solutions but in most cases the data is transmitted to the cloud at oncewhere connectivity plays a major role. This is where the wired and wireless technologies comes into play. Below aresome of the most popular communication technologies. • Wireless Communication – Bluetooth, NFC, Wifi, ZigBee,LTE, 5G • Wired Communication - Ethernet, Power line communication(PLC)

12 Chapter 4. Components of Internet of Things

Page 17: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

4.3 Cloud

Cloud is the application and presentation layer of the IoT architecture. The servers and computes processing thedata are referred to as the cloud platform here. IoT data storing, processing and presentation part happens here. Forexample a dashboard is a web based representation of a data set collected through many or single IoT node. Below isa screenshot of an implementation of a dashboard done with ThingsBoard platform.

4.3. Cloud 13

Page 18: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

14 Chapter 4. Components of Internet of Things

Page 19: Smart-Innovation Documentation

CHAPTER 5

Security

Security is one of the most controversial areas related to IoT. The common security challenges in traditional internetsuch as authentication, data leakage, unauthorized access and many other aspects are related to IoT as well. Perhapsthe data transmission without encryption is one of the major issues in many cases. The operational and computationlimitations of IoT devices may limit the functionality to enforce greater security measures at the device end. A popularexample is the Mirai botnet incident in 2016 where it is reported that nearly 300,000 IoT devices were infected to anattack. The security measures have to be implemented in each of the layers of IoT starting form policy level changesto protocol and program level changes.

IoT Security Foundation was launched in 2015 to ensure the future of the security aspects of IoT. The rapid growth ofIoT will demand for better secured platforms and channels for security of data as well.

15

Page 20: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

16 Chapter 5. Security

Page 21: Smart-Innovation Documentation

CHAPTER 6

Components of Cloud platform

6.1 What is Cloud Computing

Cloud Computing technologies are emerging as a common way of provisioning infrastructure services, applicationsand general computing and storage resources on-demand. (IEEE) The term cloud stands for the on-demand availablecomputer system resources connected through a network which operates without human direct human management.Cloud is an essential part of the IoT architecture as mentioned before. The Cloud also comprises several componentswith different features. We need the cloud platform to handle, processing, visualize and store the data from IoTnetworks. Although there could be many components and architectures related to cloud platforms, here we refer tothe cloud platforms related to IoT only. The models of cloud computing used with IoT is commonly Platform as aservice(PaaS) or Infrastructure as a Service(IaaS). Below are some of the key components of any cloud platform withIoT.

6.1.1 Device manager - Provisioning/ Monitoring

The IoT end devices will be connected to the cloud application. The authentication of devices to retrieve data shouldbe done by the platform by registering only specified and known devices related to the network. This registration ofdevices happen through the device manager of the cloud platform. The IoT devices will be registered through devicemanagers by unique IDs and keep the devices connected to the platform by authenticating the correct devices. Thesecurity handling part of encryption is also handled by the device management based on keys or certificates. Devicemanager will also display the status of the devices and the total registered device list for a cloud application. Somemanagement applications provide alerts in the event of a device failure. To summarize below are the functions of thedevice manger.

• Registration of IoT devices for cloud platform with defined parameters like device names

• Management of devices such as add, remove or modify remotely

• Monitoring of IoT devices connected

• Alerts on device status and operation

• Device authentication and data encryption

17

Page 22: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

6.1.2 Database

The database in a cloud application is the primary data storage. This process is also called as data ingestion in scenariossuch as IoT platforms. This means that data is transferred from one location to another to analyze and process further.In IoT architecture while some data processing might happen in edge computing devices the majority of the datachunks are moved to the cloud. This data is stored in databases to analyze and processing. The on demand natureof cloud platform provides the elasticity for the databases to adjust based on the requirement with or without humanintervention.

6.1.3 Analytics

The process of data ingestion can happen in real time or in batches or as a combination of both. The analysis part isoccurred in cloud based on the system requirement. The batch data are imported on regular intervals as aggregateddata and processed in scheduled intervals. The real time data analysis is performed for very time specific and timesensitive operations. For example if we take a vehicle tracking system, the tracking should happen in real time. Thedata can be processed to give meaningful values using the defined formulas which is called analysis. Sometimes theanalysis will require to represent the real time values over a period. Some of the most popular technologies that arecurrently used for analytics is big data analytics, machine learning and AI.

6.1.4 Dashboard

Dashboards are the representation of processed data. The visualization of the data in the presentation layer of thearchitecture happens through the dashboard. A dashboard could have graphs, tables, values, maps, diagrams or anyother graphic which displays a meaning value of processed data of the IoT network. This could be a online dash boardor hosted in a single location. However most IoT related dashboards are accessible over the internet with multipledevices such as computers, Tabs or mobiles. Below is a sample picture of a weather station dashboard.

6.2 Popular Cloud Platforms

There are many popular Iot platforms in use as of now. Below are some of the most popular cloud platforms related toIoT.

18 Chapter 6. Components of Cloud platform

Page 23: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

6.2.1 Azure IoT

Azure IoT is the tech giant Microsoft’s IoT platform. This has predefined App templates tailored for end user businessneeds. They have some prebuilt applications for different business verticals. Azure also claims to be a scalable, reliableand trusted IoT cloud used by many multinational corporations.

6.2.2 AWS IoT

Being one of the leading cloud service providers AWS IoT platform with more added features such as security, multiplesupported other services and superior AI integration.

6.2. Popular Cloud Platforms 19

Page 24: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

6.2.3 ThingsBoard

ThingsBoard is an open source IoT platform which supports both cloud and on-premise deployments. The platform hassome powerful features of data collection, processing, visualization and device management. This platforms enableconnectivity through standard protocols such as HTTP, MQTT and CoAP.

6.2.4 Google Cloud IoT

Google Cloud IoT is the IoT cloud version from google which is supports the IoT architecture as below.

20 Chapter 6. Components of Cloud platform

Page 25: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

6.2. Popular Cloud Platforms 21

Page 26: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

22 Chapter 6. Components of Cloud platform

Page 27: Smart-Innovation Documentation

CHAPTER 7

Device

7.1 Introduction

7.1.1 Sensors/Edge computing devices

IoT devices are the end nodes of a the network. These are sometimes referred to as constrained devices since mostlythese are sensors or actuators. They are connected through the network to enable M2M communication in IoT. Thecommunication methods of Bluetooth, wifi and ZigBee are come of the common communication technologies usedby these end nodes. Some of these nodes are collectively act as a mesh network forming large IoT networks as well.The end hardware devices are categorized further as below according their data handling capability.

As most of the devices have computational power at the node itself IoT devices enable edge computing as well wherea certain level of processing can happen. For example the temperature can be monitored at a location and an alarmcan be generated to a cloud application only when a specific limit is exceeded. The devices of an IoT network can beeither a sensor or can actuator or edge computing devices together with the sensors.

23

Page 28: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

7.1.2 Single Board Computers

Single board computers are small and low end computers with low end processing power. These computers comes insmall physical size and comparatively inexpensive. Sometimes these are referred to as micro computers or computeron a stick. These computers have the microprocessor, input/outputs, memory and other basic characteristics of anormal computer. Micro computers also used as popular IoT devices since they have the capabilities of IoT devices.One of the popular single board computers is Rasberry Pi.

24 Chapter 7. Device

Page 29: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

7.1.3 Why Edge computing devices is the future?

The data transmitted by sensors or devices directly to the cloud are highly dependent on the connectivity which issometimes not reliable. The resources consumed even for a simple analysis in direct cloud accessed architecture ishigh which takes more time as well. This is whether the edge computing devices provides a major advantage. Theedge computing devices are capable of processing and storing certain amounts of data and transmit to the cloud whichsaves power and valuable cloud resources together with time. Depending on the requirements with the increase of highperforming computer hardware devices the edge computing will provide more promising future.

7.1. Introduction 25

Page 30: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

26 Chapter 7. Device

Page 31: Smart-Innovation Documentation

CHAPTER 8

Micro-controller based edge devices

In these systems, complex data analysis and decision making tasks are handled in the cloud back-end, while the devicenodes perform data collection tasks or respond to remote control commands. Overall, this is a nice balance. Hardwareis inexpensive to replace and can run on small batteries for multiple years, and heavy compute resources are providedby cloud services that are easy to scale up to meet demand as the number of edge devices increases.

Let’s learn more about microcontrollers. . .

27

Page 32: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

8.1 Microprocessor vs Micro-controller

Computer is comprised of a microprocessor. Basically microcontroller is a mini computer intended for limited taskwhere a computer with microprocessor is intended to do many multiple tasks. There are some similarities and differ-ences between Microprocessor and Microcontroller.

28 Chapter 8. Micro-controller based edge devices

Page 33: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

8.1. Microprocessor vs Micro-controller 29

Page 34: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

Microcontroller has all the features of a microprocessor with comparatively low performance. The microcontroller isa minicomputer with all the features of a computer.

8.2 Block Diagram

8.3 System on a Chip (SoC)

System on a Chip or SoC will be the future of processors. With the advancement of the integrated circuit manufac-turing, miniature computers on a single chip of silicon is arising. These will have more features, performance andsmaller size with separate connectivity modules. SoCs are in contrast to the common traditional motherboard-basedPC architecture, which separates components based on function and connects them through a central interfacing circuitboard. A SoC integrates a microcontroller or microprocessor with advanced peripherals like graphics processing unit(GPU), Wi-Fi module, or one or more coprocessors. Similar to how a microcontroller integrates a microprocessorwith peripheral circuits and memory, an SoC can be seen as integrating a microcontroller with even more advancedperipherals. SoC is increasingly becoming popular in mobile computing, embedded systems and IoT.

8.4 Microcontroller Architecture

Microcontrollers incorporate memory, a CPU, peripherals and I/O interfaces into a single chip. The architecture of adevice can be depicted as in below diagram.

30 Chapter 8. Micro-controller based edge devices

Page 35: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

8.5 Hardware ,Software & Firmware

• Hardware - Hardware in ICT domain is referred to as the physical parts of a computer.

• Software - Software is a set of instructions or programs instructing a computer to do specific tasks.

• Firmware - Firmware is a specific class of computer software that provides the low-level control for a device’sspecific hardware.

8.5. Hardware ,Software & Firmware 31

Page 36: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

8.6 Applications of Microcontrollers

The nature of microcontrollers has come inherent advantages to use in practical applications.

• Suitable for specific applications

• Programmable according to requirement

• Application development is less time consuming

• Can be prototyped using simulators and emulators

• Easy to design and implantation

32 Chapter 8. Micro-controller based edge devices

Page 37: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

This is why microcontroller are widely used in industries for many commercial products. At present most consumerproducts have certain parts designed with a microcontroller. Below are some of the popular implementations.

• Wearable devices

• Robotics

• Automobile

• Industrial automation

• IoT applications

The use in IoT applications are increasingly becoming popular based on the advantages of microcontroller.

8.7 Microcontroller Programming

A microcontroller does not have an instruction set to perform the operation out of the box. Therefore it needs to beprogrammed with instructions to perform a task. Therefore 3 tasks need to be done to program the microcontroller.

• Write the code in a programming language

• Compile the code to suit the microcontroller used

• Upload the compiled version of program to computer

C is the most popular language to program microcontrollers. However C++ and Python are also used commonly byusers.

8.7. Microcontroller Programming 33

Page 38: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

34 Chapter 8. Micro-controller based edge devices

Page 39: Smart-Innovation Documentation

CHAPTER 9

Communication Technologies

Protocols and Communication Technologies are used in the Internet of Things. Some of the key IoT technologies andprotocols (IoT Communication Protocols) are Bluetooth, Wifi, Radio Protocols, LTE-A and WiFi-Direct. These IoTcommunication protocols meet and complement the specific functional requirements of an IoT system.

9.1 Bluetooth

Bluetooth is an important short-range IoT communication technology. Bluetooth has become very important in com-puting and many consumer product markets. It is expected to be a key for wearable products in particular, againconnecting to the IoT albeit probably via a smartphone in many cases. The new Bluetooth Low-Energy (BLE) – orBluetooth Smart, as it is now branded – is a significant protocol for IoT applications. Importantly, while it offers asimilar range to Bluetooth it has been designed to offer significantly reduced power consumption.

9.2 Zigbee

ZigBee is similar to Bluetooth and is majorly used in industrial settings. It has some significant advantages in complexsystems offering low-power operation, high security, robustness and high and is well positioned to take advantage of

35

Page 40: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

wireless control and sensor networks in IoT applications. The latest version of ZigBee is the recently launched 3.0,which is essentially the unification of the various ZigBee wireless standards into a single standard.

9.3 Wi-Fi

WiFi connectivity is one of the most popular IoT communication protocol, often an obvious choice for many devel-opers, especially given the availability of WiFi within the home environment within LANs. There is a wide existinginfrastructure as well as offering fast data transfer and the ability to handle high quantities of data. Currently, the mostcommon WiFi standard used in homes and many businesses is 802.11n, which offers range of hundreds of megabitper second, which is fine for file transfers but may be too power-consuming for many IoT applications.

9.4 Cellular

Any IoT application that requires operation over longer distances can take advantage of GSM/3G/4G cellular com-munication capabilities. While cellular is clearly capable of sending high quantities of data, especially for 4G, thecost and also power consumption will be too high for many applications. But it can be ideal for sensor-based low-bandwidth-data projects that will send very low amounts of data over the Internet.

9.5 LoRaWAN

LoRaWAN is one of popular IoT Technology, targets wide-area network (WAN) applications. The LoRaWAN designto provide low-power WANs with features specifically needed to support low-cost mobile secure communication inIoT, smart city, and industrial applications. Specifically meets requirements for low-power consumption and supportslarge networks with millions and millions of devices, data rates range from 0.3 kbps to 50 kbps.

36 Chapter 9. Communication Technologies

Page 41: Smart-Innovation Documentation

CHAPTER 10

IoT Protocols

A protocol is a standard set of rules that allow electronic devices to communicate with each other. These rules includewhat type of data may be transmitted, what commands are used to send and receive data, and how data transfers areconfirmed. You can think of a protocol as a spoken language.

10.1 Message Queue Telemetry Transport Protocol (MQTT)

MQTT (Message Queue Telemetry Transport) is a messaging protocol developed with the aid of Andy Stanford-Clarkof IBM and Arlen Nipper of Arcom in 1999 and is designed for M2M communication. It’s normally used for farawaytracking in IoT. Its primary challenge is to gather statistics from many gadgets and delivery of its infrastructure. MQTTconnects gadgets and networks with packages and middleware. All the devices hook up with facts concentrator serverslike IBM’s new message sight appliance. MQTT protocols paintings on top of TCP to offer easy and dependablestreams of information.

These IoT protocols include 3 foremost additives: subscriber, publisher, and dealer. The writer generates the informa-tion and transmits the facts to subscribers through the dealer. The dealer guarantees safety by means of move-checkingthe authorization of publishers and subscribers.

37

Page 42: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

10.2 HTTP

The good old HTTP is still commonly used even in IoT, especially on low cost micro controllers. It has many benefitslike its text based (debug and message crafting is easy), many libraries and the most importantly it goes throughfirewalls. Its biggest disadvantage is that it’s not full duplex. Server can’t talk to the devices (Polling is used toovercome this).

10.3 Constrained Application Protocol (CoAP)

CoAP is an internet utility protocol for constrained gadgets. It is designed to enable simple, constrained devices to joinIoT through constrained networks having low bandwidth availability. This protocol is primarily used for machine-to-machine (M2M) communication and is particularly designed for IoT systems that are based on HTTP protocols.

38 Chapter 10. IoT Protocols

Page 43: Smart-Innovation Documentation

CHAPTER 11

Internet of Things Solution design considerations

Building complete and functional IoT projects can be a puzzle full of surprises if you are not aware of all the buildingpieces that must be taken into account. The IoT market offers a wide range of technologies, products and applications.All these options are confusing when you face the design and development of a specific IoT project with specificneeds. Fortunately, all IoT projects share the same building blocks from an architectural point of view. If you have aclear understanding of these building blocks, it will be easier for you to design a successful IoT system.

11.1 Sensors and Devices

Devices and sensors are the “thing” part of your IoT projects. These and other devices interact with the physical en-vironment. It is not only important that they accurately read the phenomenon your application needs (air temperature,power consumption, water flow, traffic density, etc.), but also, they have to be integrated with the overall system archi-tecture too. When selecting the devices, you must check that they support the necessary networking protocols and thatyour system platform can decode the message formats they send. Device configuration is another important feature.Some devices provide configuration programs while others require internal reprogramming to change their behaviour.Finally, you must evaluate the power source the use (batteries, solar panels, AC, etc.) since it has a strong impact inthe system maintenance.

11.2 Communications

Although the “i” in IoT stands for internet, you have different kinds of networks available for communications amongdevices and with the platform. Choosing the right networking technology depends on the characteristics and require-ments of the project. It is common to use more than one technology in an IoT project. The main factors to take intoaccount when choosing a networking technology for your IoT projects are:

11.2.1 Devices spread:

If devices are located in the same area like a building, an industrial plant or even a neighbourhood, short-range tech-nologies like Wi-Fi, ZigBee would be a good choice. Otherwise, If devices are widespread in a city or country,

39

Page 44: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

long-range technologies like NB-IOT/ LoRa or Sigfox can be the right choice.

11.2.2 Required data rates:

Some networking protocols are not suitable depending on the amount of data that the devices send. For instance,NB-IOT and LoRa do not provide enough bandwidth when a sensor must send the temperature of a room or the stateof a parking lot every minute.

11.2.3 Network coverage:

You can deploy your own network for the LoRa project including the use of third-party LoRa networks (TTN) or usean available network provided by third parties (2G, NB-IoT, etc.).

11.3 Platform

The software platform of your IoT projects will be in charge of managing the devices (onboarding process, monitoring,etc.) and receiving and processing the messages. It also must provide APIs for reading the gathered data. YourIoT software platform must be flexible enough to support different communication protocols (MQTT, REST, XMPP,WebSockets, etc.).

Platforms are usually deployed in the cloud, but you should check if they can be deployed on-premises in case theproject is big enough and investing in computing hardware is an option. In addition to basic functionalities, someplatforms provide other interesting features like data mining, multitenancy and deriving data.

11.4 Applications

All IoT projects are carried out for a purpose. Maybe the goal is receiving an alarm when a laboratory room reachesa certain temperature or optimizing the water supply of a city. In other cases, IoT projects are used for reducingthe power consumption of a building or predicting the maintenance of an industrial engine. IoT applications are justsoftware systems which use the data that is received by the devices and the functionality that they provide. Dependingon the level of customization, three categories can be defined:

• IoT vertical applications, which provide out-of-the-box functionalities for a specific application domain likesmart waste management, smart building monitoring, smart water metering, smart irrigation, etc.

• Toolboxes and frameworks for building your own dashboards, reports, alarms, graphics, etc. These can beindependent products which integrate with external data sources or they can be provided as a part of the IoTsoftware platform.

• Custom software applicationswhich are developed from the ground up using standard software developmenttechnologies. These applications will use the IoT software platform APIs as the foundation for building theirfunctionality.

11.5 Cloud platform

When comparing platforms, most companies often want an IoT cloud platform that covers all the bases, while beingflexible in the ways they can store and stream data. Truly, most companies want out-of-the-box support for opinionatedbehaviors AND the flexibility to change those defaults that makes it special. Ultimately, as a consumer, you’re lookingfor the best IoT cloud platform that lets you achieve the above based on your solution.

40 Chapter 11. Internet of Things Solution design considerations

Page 45: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

11.5.1 Scalability

First and foremost, an IoT cloud platform has to support millions of simultaneous device connections and allow youto configure devices for machine-to-machine communication. Of course, every IoT cloud platform will claim they canhandle millions of simultaneous device connections. You should look for an IoT cloud platform that has consistentlyhigh uptime and offers complete transparency on previous downtimes. Every platform should have some type ofplatform status page; use this to examine their uptime and how they have handled past incidents. It may also helpto examine the types of customers they have helped and the amount of devices they have deployed with them. Youshould also look for a platform that manages the scaling cloud infrastructure for you. The best vendors will monitorthe performance of your devices and help you scale when necessary.

11.5.2 Device Management Features

When comparing IoT cloud platforms, you need to assess how well the vendor allows you to monitor, segment,and manage edge devices that are out in the field. To extract the right data out of your devices, you need a devicemanagement system that can interface with microprocessors and local software on IoT devices. This is complicated tobuild because few companies have an IoT hardware, software, and connectivity ecosystem that can handle bidirectionalcommunication streams and provide device management services that don’t interfere with this process. For companieswho want to have complete control over their remote devices, these are some of the basic features you’ll need:

• Cloud API — The ability to organize devices, segment your fleet for more granular control, and monitor thehealth of your devices in real-time.

• Developer Tools — A central interface or set of tools that allow you to manage and reprogram your IoT deviceswirelessly.

• Device command and control — Cloud-based functions that allow you to control variables and events throughtheir Rest API structure.

• Event Logs —An interface that allows you to see what’s happening with devices in real time to improve theexperience of finding data that is relevant to you.

• Remote Diagnostics — Features that allow you to actively monitor device health vitals and take preemptiveactions when warning signs appear.

11.6 Over-the-Air Firmware Updates

Over-the-air (OTA) firmware updates are a vital component of any IoT cloud platform. OTA firmware refers to thepractice of remotely updating the code on an embedded device. The value of incorporating OTA update capabilitiesinto a connected product cannot be understated, and include - Companies can test new features by sending updatesto one or multiple devices. Companies can save costs by managing the firmware across their fleet of devices from aseamless, unified interface, developers can deploy frequently and reliably, knowing that products will stay functionalas updates are released. OTA firmware augments scalability by adding new features and infrastructure to productsafter they are released.

11.7 Complete System Integrations

How does the IoT cloud vendor integrate all the complex stuff that you need for IoT — like cellular modems, car-rier/sim cards, device diagnostics, firmware updates, cloud connections, security, application layer, and RTOS ? Thiswill probably require a call to a sales representative to understand how these discrete components work together. Talkwith your engineers and make sure these parts all work together in a way that works easily for them. Have themcompare these integrations with other IoT cloud vendor platform

11.6. Over-the-Air Firmware Updates 41

Page 46: Smart-Innovation Documentation

Smart-Innovation Documentation, Release latest

11.8 Data Management

When it comes to storing, processing, and analyzing data, you need a system that is already built to handle it. Thebest IoT cloud platforms combine data sources from an entire fleet into a unified data flow that provides product-widebusiness intelligence. It is also imperative to choose a IoT cloud platform architecture that seamlessly integrates devicedata with your existing services. This allows you to reap all the benefits of getting to house your data where you want,without having to handle the complex building and maintenance aspects of hosting your own IoT cloud solution. Forinstance, many companies often want to send device data to their Sales force, Azure, or AWS environment. You shouldlook for an IoT cloud platform that can handle these integrations and allow you to store your data where you want it.

42 Chapter 11. Internet of Things Solution design considerations