From what I see today, there are four main components of systems that support the Internet of Things, as depicted in Figure 1.
As you see, there are four separate areas:
- The Thing itself (the device)
- The Local Network, which moves data in and out of the device. This may include a gateway to translate proprietary communication protocols to the IP family of protocols.
- The Internet itself
- End user devices (desktop, laptop, smartphones) or enterprise data systems that receive and manipulate data (backend data analytics)
IoT is not complicated in conception, but it is complex in its execution. Each individual component is simple, but there are many required components for IoT. What is important to understand is that even if new hardware and software are still under development, we already have all the tools we need now to start making IoT a reality.
This article will look at the end devices in an IoT system from the embedded developer point of view. This article has four parts, divided along the same grouping found in Figure 1. I would like to start with the “Thing”. But to understand well the “Thing” challenges, we need to understand the communication technologies in play with the IoT devices.
What are the Local Networks?
As mentioned above, the value in IoT is in interconnected devices, and the data and metadata they will generate. The choice of communication technology affects the amount of software required, which in turn affects hardware requirements and cost. Furthermore, IoT devices are deployed in such a huge number of different ways—in clothing, houses, buildings, campuses, factories, and even in your body—that no single networking technology can fit all bills.
Wireless Sensor Networks (WSN)
For an installation of IoT devices in a specific location (say, a factory), a large number of sensors and actuators may be scattered over a wide area. A wireless technology is the best fit for such devices. There are as many types of edge/sensing node as there are system types, and some of these systems already have associated standards. This is why there are so many machine-to-machine (M2M) communication technologies in use. Some of these technologies pre-date the concepts of IoT and M2M, and they all have their particularities in terms of radio frequency, power consumption or protocol complexity. So, choosing a local networking technology can be a serious problem for embedded developers. There is often no single best choice. The technologies currently available are narrowly specialised for specific vertical markets (smart healthcare, smart grid, and so on).
Figure 2 shows the position of the nodes and edge nodes in a Wireless Sensor Network. A description of these devices follows below.
This type of embedded system will likely represent the largest product volume. A WSN node is an embedded system performing one, or a very few, functions (reading an environmental variable like temperature or pressure, turning on a light or a motor). WSN Nodes are very low cost, so they can be deployed in very high volume. They are also very low power so that they can run on battery or even use energy harvesting.
Energy harvesting derives energy from external sources (e.g. solar power, thermal energy, wind energy, electromagnetic radiation, kinetic energy and more), captures and stores it for small, low power wireless autonomous devices, like the nodes on a WSN.
WSN Edge Node
A WSN edge node is a WSN node with IP connectivity. It acts as a gateway between the WSN and the IP network. It can also perform additional local processing, local storage, and can have a user interface.