There are many components required to build a complete Internet of Things (IoT) solution. Each component plays a role from connecting a “thing” that generates data to building a front-end application for end-users. The IoT solution could be as simple as a light switch at home, or a complex project in a factory with thousands of sensors in an assembly line.
In this lesson, we’ll discuss the technology that we find in an IoT technology stack. We also discuss different architecture models that attempt to standardize IoT and we’ll talk a bit about the impact of IoT on our networks.
IoT Technology Stack
The IoT technology stack covers all required technologies from connecting an IoT device, to producing data, to an actual purpose. This can be a challenge because there are many different technologies, standards, and protocols that have to work together.
In general, an IoT stack consists of four items:
- Devices (things)
- IoT platforms
We’ll take a closer look at the specific IoT items: devices, gateways, and IoT platforms.
Devices (or things) come in many forms and shapes. When people think about IoT and devices, they usually think about “smart devices” like:
- Smart light bulbs (Philips Hue)
- Wearables (Apple Watch)
- Activity trackers (Fitbit)
- Smart thermostats (Google Nest Learning Thermostat)
- Smart doorbell (Nest Hello Doorbell)
IoT however, also consists of devices that aren’t always visible like transducers. A transducer is a device that converts energy from one form to another. There are two types:
Let’s look at some examples.
A sensor is a device that detects or measures a specific physical quantity and converts it into another form, usually electrical pulses. Sensors have been in use for decades and are an essential IoT component. This is where our data is captured. Here are some examples of common sensors used in IoT:
- Temperature sensor
- Vibration sensor
- Acoustic sensor
- Pressure sensor
- Humidity sensor
- Occupancy sensor
- Proximity sensor
- Image sensor
- Acoustic sensor
- Light sensor
Here is an example of a sensor:
Above you see the TMP36 analog temperature sensor which can detect a temperature between -40 and +125 Celsius. You can be a proud owner for about $1-2.
An actuator is a device that receives a signal and sets something in motion to act upon or within an environment. Usually, the actuator uses force to turn something on or off. For example, an actuator that sits on your radiator to open or close the valve. Like sensors, we have used actuators for decades before IoT. Here are some examples:
- Thermal actuator: uses a heat source to generate motion.
- Electric actuator: uses a power source like a battery to generate motion.
- Hydrolic actuator: uses liquid to generate motion.
- Pneumatic: uses compressed air to generate motion.
Here is an example of an actuator:
Above, you see the Tado radiator thermostat which can control your radiator.
An IoT device needs some intelligence. For example, the TMP36 analog temperature sensor I showed you can sense the temperature but it has to be connected to something that powers it and that can read the data. You could connect a sensor like this to the GPIO pins of a Raspberry Pi.
The Raspberry Pi is still a bulky device. Another option is a microcontroller. For example, an ESP from EspressIf. Here is a picture of my ESP32 which is connected to a hardware button:
Other devices like the Tado radiator thermostat have integrated the actuator and micro-controller in a single package.
The intelligence in a device can vary. There are three communication options:
- Unidirectional: For example, a temperature sensor collects the current temperature and sends the temperature value to a management device for analysis.
- Local: For example, a thermostat collects current the temperature and then turns on an airconditioning device.
- Bidirectional: For example, a thermostat collects the current temperature and sends the temperature value to a management device for analysis. The management device then sends a signal to the thermostat to turn on an airconditioning device.
When you want to select a device for your IoT solution, here are some criteria to consider:
- Mobility: is the device physically attached to an object or wearable?
- Power: is the device powered by a battery? If so, how long does the battery last?
- Processing power: how much processing power is required or does your device offer?
- Data transmission: how often and how much data does the device transmit?
- Connection: how do you connect the device? Wired or wireless? Does the technology offer enough bandwidth for your required data transmission?
- Density: how many devices are required in the area to capture all data? Could you transmit data through a mesh network?
Somehow, we need to connect our devices to the outside world. That’s what gateways are for. As the name implies, the gateway is the device that sits between an IoT device and an IoT platform.