As often is the case in information technology there are new ways of referring to old concepts that have matured – this the case with the Internet of Things (IoT).
Wired devices have communicated use signaling to exchange information since the early 20th century. For the last few decades the term machine to machine (M2M) has referred to the direct point-to-point communication between devices using a channel, originally wired and more recently cellular. M2M communication typically includes the collection of industrial sensor data to an application software that processes it. The first example of this was the caller ID system back in 1968 which was later patented in 1973.
If we understand that the internet connects things, traditionally computers to other computers, then the IoT is the process of connecting items such as a car, bridge, refrigerator, farm, air-conditioning unit, or just about any object by adding sensors, compute capability, and attaching them to the internet. Doing so it considered making the thing smart – as smartphone, smart thermostat, etc.
Nowadays we have a convergence of several technologies which is going to accelerate the adoption of IoT:
- Microcontrollers: inexpensive, capacity and capability improving
- Protocols: standardizing and becoming more secure
- High-speed networks: gigabit fiber or cellular 4G LTE
- Cloud-based storage: inexpensive, easy to provision and scale
IoT environment anatomy
The elements of an IoT solution:
- Collect. Using sensors to record information about the physical world. Examples include measuring location, motion, temperature, humidity, sound, chemical, gas, flow, pressure, AC current sensor, DC current and voltage, light monitoring.
- Transport. Sending sensor data to other devices, gateways, and the cloud. In some cases, the edge device has conductivity directly to the Internet having an IP address, and other cases it passes through a gateway that is. The edge device, gateway, and cloud can be connected over a number of channels such as Bluetooth, Wi-Fi, ZigBee, and protocols such as MQTT, AMQP, and HTTP.
- Store. Sensor data once in the cloud can be stored in different ways. Common data storage is: document db, blob storage, or a relational database in the cloud. The storage type is dependent on whether the data is structured or unstructured.
- Process. Take action based on data captured. The sole purpose of collecting the data is to act upon and in some cases, action can be taken prior to any analytics being performed. This processing could involve using actuators that can alter the state of the physical world, such as opening valves, switching machines on and off, sounding alarms, controlling servos, closing doors, and many other things.
- Publish. When embedded sensor data is combined with both internal and external data from other systems, additional insight from analyzing the data can be learned and acted upon. Exposing that insight can also drive additional value for other stakeholders outside the immediate needs of the current system, allowing for the monetization of this knowledge.
The core components of an IoT solution include:
- Sensors: Electronic components that translate physical environment values into analog or digital signals.
- Actuators: Electronic components that interact with the physical environment. These are often relays, switches, valves, and motors.
- Edge Device: A compute capable device that the sensor is attached to. This is often a microcontroller based on the ARM processor. We call it Edge, because it is on the edge of the network.
- Bridge: Communication brokers between devices and the cloud. Bridges are used in translating data traffic between different protocols and channels.
- Gateway: IP enabled device the to integrate protocols for networking, help manage storage and edge analytics on the data, and facilitate data flow securely between edge devices and the cloud.
- Service Platform: A cloud based platform for intake, storage, and processing of data.
- Machine Learning: computational algorithms to analyze big data to derive patterns by which models can be produced in determining possible predictive and prescriptive analytics.