What issues should be considered in IoT gateway design[Copy link]
The Internet of Things (IoT) has become an integral part of our daily lives. It is hard to imagine life without being able to turn on the water heater from your phone when you are almost home. To achieve this and other more important functions, you need an ecosystem consisting of many components that work together seamlessly. The IoT architecture (Figure 1) can be divided into multiple layers according to their functions: The device layer (also called the terminal layer) generally contains three elements: sensors for measuring actual data, actuators for performing corresponding functions, and transceivers for transmitting sensor data and receiving actuator instructions. The IoT gateway layer is an important component of the IoT ecosystem. It is the medium between sensors, actuators and the cloud. It is used to handle the communication between local sensors and remote users and complete other related functions. The cloud layer is used for monitoring and management of the entire IoT system. It connects to multiple gateways to analyze the collected and stored data. The application layer is the interface for end users to access and control IoT products and services.
Figure 1 The IoT ecosystem can be divided into multiple layers, which work together to measure, distribute and analyze data and perform corresponding actions. Key to Gateway Design While every IoT system is different, the primary role of a gateway is to aggregate data from multiple low-speed end nodes and send the data to the cloud over a high-speed link. Aggregating data may involve more than just sending data to the upper layer. For example, with a mesh topology like ZigBee or LoRa, the gateway may receive multiple copies of the same message. In this case, the gateway must choose which message to send to the upper layer and which message to send to the end nodes in the lower layer. As the functionality of the IoT becomes more complex, designers are moving some of the data processing functions closer to the sensor/device layer, which is called "fog computing." Dividing IoT tasks in this way eliminates the need to send data that is not useful for data analysis to the server, which not only reduces response time but also reduces network load. In this way, the location of the gateway device is the most appropriate choice because it is usually cheaper to merge the response to multiple end points in a single module rather than dividing it among multiple units. In large-scale IoT systems, each layer has a clear physical separation. However, in some small systems, multiple layers can be combined into a single unit. For example, the gateway in a vending machine includes the user interface, inputs, outputs, and wireless or wired interfaces. In this case, the IoT only includes the cloud and the gateway. Given the variety of choices, what are the hardware and software requirements for IoT gateways? Hardware Considerations Here are some of the gateway hardware requirements: CPU: Different IoT applications have very different requirements for the gateway's CPU and its related modules. Some applications may require high computing power, which requires a powerful processor with floating-point computing capabilities; some applications may be sensitive to security, which requires a CPU with hardware enhancements to meet TPM specifications. Many vendors offer CPUs that are compatible with small gateways. For example, the Intel Atom E3800 is popular in IoT gateways. The processor has multiple series ranging from 1 to 8 cores; memory from 512kB to 2MB; operating frequency from 1.33 GHz to 1.91 GHz. Storage: Solid-state drives (SDDs) that use flash memory to store data are a popular choice because they have no moving heads, reliable performance, and are more cost-effective than hard disk drives (HDDs). The Intel E 6000p series is a good example of an SSD: it comes in 128GB and 256GB versions, features a standard PCIe Gen 3 interface, and provides AES 256-bit data encryption. Connectivity: The hardware must support a variety of wired and wireless communication interfaces. The Internet connection to the cloud will most likely be through Wi-Fi or Ethernet to a router, but given the diversity of IoT use cases, the connection to the end node is highly specialized. Environmental considerations: The actual operating environment should also be considered in the choice of hardware. Will the IoT gateway device be placed in an office, on the factory floor, or exposed to sunlight in some way? And what are the power consumption requirements? Software considerations The software of the IoT gateway also needs to be considered. The main points are as follows: The operating system is used to manage the processor, memory, and other resources, and provide applications with an abstraction of the underlying hardware. There are many choices for the operating system of the IoT gateway, including dedicated systems such as Microsoft's Windows IoT Enterprise or Windows IoT Core, and many other open source systems such as Ubuntu or Ubuntu Core, which are derivatives of Linux. Connection and communication with the end node can be through protocols such as USB, RS-485, IEEE 802.11/b/g/n (WiFi), LoRa, or Bluetooth Low Energy (BLE). Communication with the cloud can use Ethernet, Wi-Fi, or cellular protocols. Gateways are located between the end device layer and the public Internet, and play an important role in ensuring the security of data. At the same time, gateways are also the primary target of hacker attacks. Any robust software stack must include layer security, including encryption of communications and authentication of devices. Security design usually includes close interaction between hardware and software components. Gateway Design Examples In order to meet the needs of different IoT applications, IoT gateway devices come in different shapes and sizes. Below are examples of gateway devices for different applications - Industrial IoT, multimedia information station. Industrial IoT Industrial IoT (IIoT) applications include automated manufacturing, HVAC, smart logistics, process control and smart agriculture. The scope of use of IIoT is wide, so IIoT gateways must be compatible with various communication protocols, capable of close-range processing, have flexible installation options, and be able to work in factory environments.
Figure 2 Dell EM3001 gateway is based on Intel's dual-core Atom E3805 processor and is widely used in various industrial applications, such as automated automobile assembly lines. The Dell EM3001 is mainly aimed at industrial IoT applications. It is based on Intel's Atom E3805 processor, has 1MB RAM, and runs at 1.33 GHz. The EM3001 belongs to the Edge Gateway 3000 series, has a fanless design, and is compatible with various operating systems, including Ubuntu, Windows Embedded Standard, or Intel Wind River Linux. The EM3001 supports both wired and wireless networks. The supported wireless protocols include IEEE 802.11b/g/n (Wi-Fi), cellular networks, and BLE, and supported wired protocols such as USB, 10/100 Ethernet, and PoE. In addition, it also includes traditional industrial interface standards such as RS-232, RS-422, and RS-485. To increase flexibility, the EM3001 includes a GPIO port with 8 channels that can be independently programmed as digital I/O, DAC, and ADC interfaces. It also integrates accelerometers, pressure, temperature and humidity sensors, and GPS. The EM3001 is designed for use in mobile and manufacturing environments. It has low power consumption, IP50 protection, an industrial-grade micro-SD card, and TPM 2.0 security specifications. Interactive Multimedia Information Station The interactive multimedia information station, also known as a point-of-sale POS terminal, is an example of a small IoT application. It requires a gateway through which the terminal interacts with the cloud server to complete the predetermined task. The terminal needs to include a thermal printer, display, and human-machine interface (HMI) such as microphone, speaker, and touch screen. Intel provides NUC (Next Generation Unit Computing) series devices for small applications. For example, the Intel NUC Kit NUC5CPYH combines terminal nodes and network functions into a single device. For small applications, all data is processed on remote servers and the remote server is heavily dependent, so the gateway can use a lower-performance and cheaper CPU. The NUC CPU uses the Intel Celeron series dual-core CPU N3050, which contains 2 MB of cache and runs at a frequency of 1.6GHz. To match the application, the NUC Gateway also includes Intel HS graphics and provides VGA, HDMI and eDP touch screen display interfaces. In addition, it also has audio capabilities, with headphone/microphone jacks and built-in speakers.