top of page
Writer's pictureBalajikasiram

Blog post 9 : Anatomy of IIoT : The Edge : Building blocks & Variants

Updated: Aug 15, 2020



Edge - Building blocks and Variants

In the previous post, we had a broad overview about the Edge layer. This blog post will focus on the building blocks of Edge devices / IoT gateways and provide you an overview about different variants of Edge devices.

 

What are the building blocks of Edge devices / IoT Gateways ?


The above diagram shows the different building blocks of an edge device starting from the hardware, IDE[1] to the edge application. Given below is a short description of the different building blocks.


1. Device hardware - Comprises the required hardware for the proper functioning of the edge device in an industrial environment:

  • Processor, RAM, Non-volatile memory

  • Input modules for field inputs (Analog, Digital ..)

  • Field protocol modules (Modbus, CANBUS, Serial ..)

  • GPS & GLONASS module

  • Real time clock

  • UMTS (2G, 3G) or LTE (4G) modules, WiFi module

  • Power supply, Back up battery

  • Proper encapsulation with suitable Ingress protection rating

  • Antennas for GSM, GPS / GLONASS, WiFi

  • Cable ingress with cable glands / MIL connectors

  • Terminal blocks for cable terminations.

Please note that all the edge devices will not be having all these hardware features, and hardware features and requirements depend on the IIoT application. We will have a better understanding of hardware requirements when we define the edge device requirements for an IIoT application in the subsequent blog posts.


2. Operating System - Generally Industrial IoT edge devices run either on RTOS[2] or on Embedded Linux operating systems. RTOS is used when highly deterministic real time response is required from Edge devices.


3. Run time environmentAn execution environment provided by the operating system for

  • Execution of application programs

  • Sending commands to the processor

  • Accessing system resources such as memory, software libraries

  • Interface with system hardware

  • Provide all necessary services and processes for executing application programs


4. Abstraction Layer – Abstraction layers provide APIs[3] access to the hardware resources of the edge device. For instance, APIs can be provided for accessing the Analog input modules, working with CANBUS modules, sending data through WiFi modules and so on. Abstraction layers help in providing a uniform way of interacting with the hardware & standardize application software development.


5. Gateway Services & Libraries – These are API libraries to access firmware functionalities like Real time clock, GPS application libraries, CANBUS application libraries, Datalogger, Mathematical function libraries and so on.

If the Gateway services and libraries that are connected to hardware resources, additional functionalities are built on top of APIs from the abstraction layer.


6. Configuration – API based / GUI[4] based configuration to set up parameters for the gateway such as Remote management parameters, CANBUS parameters, Modbus parameters, WiFi parameters and so on.


7. Edge Computing – Application program running on the Edge device spanning Data acquisition, Processing, Edge analytics, Store and forward, and Data transfer to IoT platform. Programming languages for the Edge applications vary from manufacturer to manufacturer. Some of the common ones are Node red, JS, C++, Micro - Python, Structured Text, Lua.


8. IDE – IDE is an Integrated Development Environment for developing application programs for the Edge devices. Typically, manufacturers of IoT gateways have their own development environments. Some of the commonly used environments are Eclipse IDE, Codesys development environment.


9. Security Management – Includes multiple tenets starting with Physical tampering detection and alerts, Silicon level root of trust, Secure boot, TLS, Encryption, Secure management of remote updates.


10. Remote Management – This is about enabling management of the edge device from the IoT platform. Remote management can be broadly split into

  • Device provisioning

  • Authentication

  • Remote configuration

  • Firmware over the air updates

  • Application over the air updates

  • Remote application monitoring

Remote management can either be done by exposing APIs or by installing IoT platform agents in the Edge device.

So far, we had an overview of the different building blocks that enable IoT gateways / Edge devices. All these building blocks will not be available in every edge device. To know more, let us look at different variants of edge devices / IoT gateways that are available in the market.

 

What are the different variants of Edge devices ?

There are several variants of edge devices in the market ranging from "Basic devices" that only transmit data to "Advanced devices" capable of doing machine learning at the edge.

At present, there is no standard nomenclature or taxonomy for classifying these edge devices. Given below is a classification based on usage of edge devices in Industrial IoT applications.


1. Basic Devices - These are typically used in remote monitoring of mobile industrial assets to monitor location and acquire basic operational data. Given below are the typical characteristics of basic devices

  • Micro controller based

  • Small footprint (Few MBs of RAM)

  • Limited options for acquiring field data (Few analog and digital inputs)

  • GPS / GLONASS[5]

  • RTC[6]

  • No edge computing capability, just acquires and transfers data,

  • Typically sends data on raw TCP

  • Very limited security features


2. Intelligent Standalone Devices - Used in remote monitoring and control of mobile industrial assets to comprehensively monitor location, operation, and health data, and in select cases used to control operation of the assets. Given below are the characteristics of these type of devices

  • ARM cortex processor family or equivalent

  • Medium footprint (Few hundred MBs of RAM)

  • Good options for acquiring field data (Analog and digital inputs, Field protocols)

  • GPS / GLONASS, RTC

  • Good edge computing capability (Compatible with IEC 61131-3[7] or equivalent)

  • Over the air updates

  • Reasonable security features (Certificate based authentication, TLS, Encryption)

  • Compatible with popular IoT platforms[8]


3. Intelligent Aggregator Devices - Typically used for data acquisition and remote monitoring in manufacturing shop floor. One device shall be used for acquiring comprehensive data from multiple assets / equipment. For example, one aggregator type gateway can be used to acquire production, condition, and energy consumption data from tens of machines in an assembly line of a manufacturing shop floor. Features of these devices are as below.

  • Intel Atom family or equivalent

  • Large footprint (Few GBs of RAM)

  • Good options for acquiring large sets of field data (Analog and digital inputs, Field protocols, Modbus, CANBUS, OPC-UA)

  • RTC

  • Good edge computing capability (Compatible with IEC 61131-3)

  • Over the air updates

  • Very good security features (Root trust, Secure boot, Certificate based authentication, TLS, Encryption)

  • Compatible with popular IoT platforms


4. Advanced Devices - Meant to be used for advanced applications at the edge like ML @ Edge, Computer vision at the edge

  • Intel Atom family or better

  • Large footprint (Few GBs of RAM)

  • Good options for acquiring large sets of field data (Analog and digital inputs, Field protocols, Modbus, CANBUS, OPC-UA), RTC

  • Good edge computing capability (Compatible with IEC 61131-3)

  • Ability to deploy containers with services developed in the IoT platform, Machine learning @ the Edge, Computer vision @ the edge

  • Over the air updates

  • Very good security features (Root trust, Secure boot, Certificate based authentication, TLS, Encryption)

  • Compatible with popular IoT platforms

In this blog post, we looked at the building blocks and the different types of Edge devices. The next post is dedicated to Edge computing.

 

[1] Integrated Development Environment

[2] RTOS or Real Time Operating Systems enable deterministic real time execution of application programs. RTOS is generally used where high level of real time response is required such as in Programmable logic controllers and Motion control systems [3] Application Programming Interface [4] Graphical User Interface

[5] Global positioning system / Globalnaya Navigazionnaya Sputnikovaya Sistema, or Global Navigation Satellite System (Russian version of GPS) [6] Real time clock


[7] IEC standard for programming Industrial control systems [8] IoT platform landscape is very dynamic, however, some of the popular IoT platforms include Azure IoT, PTC Thingworks, C3 IoT, Bosch IoT platform



154 views0 comments

Comments


bottom of page