Unleashing the World of IoT: A comprehensive explanation of what lies within IoT
‘Internet’ of Things, better calling it ‘Social Network’ of Things, is gradually becoming a part of everyone’s life, both for individuals as well as businesses. Connecting things anywhere, anytime and for anyone is the core of IoT. You go to a hotel, and the doors open automatically. You use the restroom and you get an astounding experience of touch-free water running from the taps. Theorem you booked for your accommodation, welcomes you with a customized experience, lights switch on automatically, room temperature is maintained asper your preference. All these and everything you experience is nothing but the value adds an IoT deployment can offer.All this is fine, but have you ever thought as to what all goes behind in making this happen! The objective of this article is to take you through thematic behind this invisible layer that is making things work for you. Let’s give it a sneak peek and understand layer-by-layer the vast infrastructure involving multiple components, interactions, commands, and connections.
The unseen blocks and architecture
IoT is being been explored since decades. Several theories have emerged concerning its architecture. Let me mention here that there is no one-size-fits-all architecture of the entire deployment. The strategy behind implementing IoT lies within the business need and the industry it is being deployed for.
Business needs may vary, strategies might be different, but the key building blocks behind every IoT implementation include the following layers:
- physical smart things also referred to as the perception layer;
- communication layer comprising networks and gateways empowering low-power devices to enter the world the internet
- the platform layer or the middleware, also referenced as the ‘heart’ of IoT by some players
- the application layer for the ultimate end-user to harness the data, analyze it, and put-it-for-use.
Let’s deep-dive into each layer and understand what it entails.
The Perception Layer
The perception layer or the physical layer is the first layer of the IoT ecosystem and comprises a range of ‘things’, big or small, starting from as small entities as sensors and chipsets to even bigger counterparts like buildings, cars, manufacturing plants, hotels, and whatnot. These are the endpoint devices that form the physical components and can be further divided into three categories based on their functionalities. These categories are:
Sensors such as beacons, utility meters, gauges, thermostats, amongst others. The prime function of these sensors is to ‘sense’ a parameter which could be temperature, motion, air quality, humidity, and convert them into electrical signals. These signals are then sent to the IoT system over the communication layer and saved as meaningful data for making informed decisions.
Actuators are nothing but components of a machine that are responsible for moving and controlling a mechanism or system. These actuators are used to translate electrical signals into IoT-driven physical actions. These are predominantly used in heavy machines, robotic arms, moto controllers, and lasers.
Machines and devices are the components that perform the final action based on the received command and deliver the required work.
The Communication Layer: Transmitting the data
The next layer which is responsible for transmitting this captured data to the cloud, as well as other components of the IoT ecosystem, is the communication layer. For devices to be able to send data, the devices in the physical layer are connected to the preferred cloud platform via:
a. the most common internet protocol called TCP/IP
b. through gateways – responsible for securing the data by encrypting and decrypting it throughout the communication channel
There are numerous networking technologies available that can be used to establish communication. The selection of technology primarily depends on:
a. The specific use-case
b. Distance between the communicating devices
c. Signal strength required between the two communicating devices
Some of the commonly used networking technologies for IoT deployments include:
a. Ethernet: which primarily connects physical non-moving or fixed devices like CCTV cameras, industrial equipment which is permanently fixed, video gaming consoles;
b. Wi-Fi: the most prominent and widely used wireless networking technology predominantly installed for data-intensive IoT deployments. A wireless router is used to establish a wi-fi network and devices are connected to this wi-fi network for transmitting data;
c. Bluetooth: used for short-range communication and widely seen in wearables and smartphones. As IoT leverages low-power devices to collect data, a new standard called Bluetooth Low-energy (BLE) was designed which is extensively used nowadays;
d. LoRaWAN: acronym for Long Range Wide Area Network is a Low Power, Wide Area (LPWA) networking protocol designed to wirelessly connect battery operated 'things' to the internet in regional, national, or global networks
e. Cellular Network: offering nearly global coverage and consistent data transfer.
These networking technologies are used to enable communication and data transmission between the IoT components however, the complexity of communication is such that one device should be able to talk to another device in a language that is comprehensive and understandable to each other. That is where several 'protocols' come into picture and are required to be enabled for authenticating, signaling, and communication purposes. Host of communication protocols have been designed for this purpose but the ones which are primarily used in key IoT deployments are:
- the data distribution services (DDS); addressing the requirement of real-time systems, a machine-to-machine standard aiming tenable dependable, high-performance, interoperable, real-time scalable data exchange
- the Advanced Message Queuing Protocol (AMQP); a binary, application layer protocol, supporting a wide variety of messaging applications and communication patterns.
- the Constrained Application Protocol (CoAP); asynchronous message exchange providing machine-to-machine communication in a constrained environment-end nodes limited in memory and power
- the Message Queue Telemetry Transport (MQTT); lightweight, publish-subscribe network protocol, designed for connections with remote locations where a "small code footprint" is required or the network bandwidth is limited.
The Platform Layer: Making sense of data
Often referred to as the 'Heart' of any IoT strategy, the platform layer is the one that is responsible for monitoring, controlling, analyzing, communicating, assessing, and actioning aspects of the environment. This layer is responsible for accumulating, storing, and processing the raw data received from the physical devices and translating it into a usable format that can be fed to business applications in the next layer. This magical work of making the data usable for the application is carried out in two broad stages:
The Data Accumulation Stage: The goal of this stage is to accumulate the data from the physical devices, sort out diverse data formats (both structured and non-structured) and store it most efficiently. The real-time data is captured through an API and works as transit hub between event-based data generation and query-based data consumption. This stage is also responsible for defining if the received data can be put to use as per the business requirements and make necessary amendments for data to work for business.
The Data Abstraction layer: Data collection is fruitless until and unless it is prepared for consumer applications to use and generate meaningful insights for business decisions. The entire process of abstraction involves combining data from different sources(both IoT and non-IOT like ERP, CRM, SAP, etc.); reconciling all the data formats, and aggregating data into one location.
Together the data accumulation and data abstraction layer make it easy for the software developers to focus on solving particular business needs, enhance their productivity and drastically improve the efficiency of the complete data life-cycle.
The Application Layer – Enabling Business to take informed decisions
This layer is responsible for analyzing the 'cleaned' data as per specific business requirements. Based on the industry vertical and the specific problems that need to be solved, there are hundreds of applications available which can be used to analyze data. Device monitoring, mobile apps, business intelligence, analytics solutions using machine learning, deriving artificial intelligence algorithms, and hundreds of other such business requirements can be easily dealt with these applications. Thebes part of the application layer is that it is interoperable and is nonconfined to one use case. This enhances the flexibility and scalability of the ecosystem and also makes it cost-effective to deploy.