A quick guide to designing a perfect Internet of Things (IoT) system taking into account performance, connectivity, power consumption and security issues
The Internet of Things (IoT) is no longer a technology of the future. Smart cities, connected industries and smart households have indeed ushered in an era where machines can communicate. The beauty of this technology lies in the fact that the complex backend structure of systems is represented to the end-user in the simplest possible form. This requires profound design know-how.
What the IoT is made up of
The IoT can be designed at different scales for different uses. It can start from our homes with simple lighting or appliance control, and expand into the realm of factories and industries with automated machines, smart security systems and central management systems—called connected factories. It has scaled up to entire cities with smart parking, smart metering, waste management, fire control, traffic management and any similar functions involved. However, irrespective of the scale of application, the main IoT backbone remains similar.
The IoT architecture is multi-layered with delicate components intricately connected to each other. It starts with sensors, which are the source of data being collected. Sensors pass data onto an adjacent edge device, which converts data into readable digital values and stores these temporarily. When the edge senses a suitable wireless network or the Internet, it pushes the locally stored data to a cloud server involved in the application. The data is processed, analysed, stored and forwarded to the end-user device, represented by an application software. All the design fundamentals and challenges revolve around these layers.
Designing the perfect system
Successfully setting up a complete IoT chain comes with certain challenges. Designers need to walk the extra mile to meet all business requirements like prolonged battery life and low power consumption, secured network gateways, ruggedised hardware and more. Electromagnetic compliance (EMC) and resistance to electromagnetic interference (EMI) are also essential. Introducing new devices within a wireless radius without disturbing the existing system is one of the most demanding skills for an IoT design.
Components like the microcontroller unit (MCU), sensors and wireless network are built and handled with special care for an optimal system design. Based on the scale of application, the design is bound to alter. While basics remain the same, minute detailing into engineering improves a system build by leaps and bounds.
Optimising the MCU
An MCU is the central nervous system of the IoT setup. Data collected by sensor nodes is processed by the MCU using software programs, enabling the system to respond accordingly. The MCU for an IoT system is chosen based on application-specific requirements.
For basic applications with limited amount of data to be transmitted every day, an 8-bit MCU will suffice. On the other hand, large-scale connected systems require 32-bit controllers. As 32-bits MCUs have a bigger RAM size and larger flash that can hold a complete network stack and application codes, these are optimal for embedded systems that will apply radio-frequency (RF) program stacks or complex algorithms.
According to Kavita Char, formerly senior product manager at Silicon Labs, MCUs with floating-point units (FPUs) have further compatibility for such applications and ease the computation process. An FPU-supported controller enables precision up to long decimal values. This gives a lot of flexibility in data calculation and eliminates the requirement of overflow-checks in the program.
MCUs with FPUs can be of great advantage in applications like location tracking, processing of measurement data from accelerometers and gyrometers, or any application where data precision is quite important.
Designing the connectivity module
How would you want your devices to interact? At the moment, major wireless options include Wi-Fi, Bluetooth Low Energy (BLE), GSM and Zigbee. Designers need to pay attention to some essential criteria for choosing a connectivity module. Some of these factors include data throughput, connectivity range and speed required, power requirement, scalability, robustness and upgraded protocol. Designers must choose a technology that will survive the test of time.
Building an effective connectivity model depends on two components: transceiver of the module (which essentially consists of a receiver, a transmitter and an antenna) and network frequency.
The receiver of a transceiver sets the threshold for the signal to be received and also ensures that the signal is distinguishable from the other signals in the same frequency and the ambient noise. Therefore ensuring a high-quality receiver is imperative. Lower data rate improves sensitivity of the receiver.
The transmitter, on the other hand, controls the output power of the transceiver—how much it can amplify. Experts suggest a 6dB gain capacity can double the amplitude of the output signal. While higher transmitter power means higher output signal, there is a trade-off in battery life. Hence this decision should depend completely on the type of application, the data to be amplified and the geographic location.