The number of vendors who are active in the IoT space is already mindboggling … just like Cloud, every existing IT vendor out there will be reshaping their solutions so that they look like you absolutely need them if you are going to build a solution. The trap is, of course, using the wrong tools for the job and ending up with too many layers of software, with too much baggage, to do the job properly.
The first part in understanding the IoT landscape is to understand the various layers, who plays in them, and do you need to concern yourself with them. Each layer will have critical importance depending on whether you are building a consumer tool, or alternatively automating your factory … two very different propositions.
The first step to understanding the complexity of the IoT space is to review the excellent IOT landscape diagram, first published by TechCrunch, in the article Making Sense of the Internet of Things. This article sets out three layers, the building blocks, horizontals and verticals. This blog will elaborate on each of the layers to aid understanding and look at the space from more of an architectural lens, rather than commercial view.
The first level concerns the Connected Devices or Building Blocks and includes the sensors themselves, hardware kits that control the sensors and provide the connectivity to the chosen network protocol. In my simplified IoT architecture this is included as the Connected Devices layer.
Sensors – The first layer, and the one that enables the whole industry, are the ‘things’ themselves. Without understanding the ‘things’ then it is pretty hard to envisage the rest of the landscape. A good definition of the ‘thing’ is come from Techtarget:
“A thing, in the Internet of Things, can be a person with a heart monitor implant, a farm animal with a biochip transponder, an automobile that has built-in sensors to alert the driver when tire pressure is low — or any other natural or man-made object that can be assigned an IP address and provided with the ability to transfer data over a network. So far, the Internet of Things has been most closely associated with machine-to-machine (M2M) communication in manufacturing and power, oil and gas utilities. Products built with M2M communication capabilities are often referred to as being smart.”
One interesting thing about this definition is that it states a requirement that the ‘thing’ has an IP address. However, many things are connected via protocols such as Bluetooth and NFC and don’t necessarily have an IP address. However, these things, are often connected to the Internet, by a concentrator or hub, in many cases a mobile phone or some other computer in the network (particularly in the case of M2M).
For example, the Android developers platform supports three broad categories of sensors:
- Motion sensorsThese sensors measure acceleration forces and rotational forces along three axes. This category includes accelerometers, gravity sensors, gyroscopes, and rotational vector sensors.
- Environmental sensorsThese sensors measure various environmental parameters, such as ambient air temperature and pressure, illumination, and humidity. This category includes barometers, photometers, and thermometers.
- Position sensorsThese sensors measure the physical position of a device. This category includes orientation sensors and magnetometers.
These are all connected to the internet via the Android mobile phone, which acts as the concentrator or router for these devices to talk to apps (although some apps run on the device itself and do not communicate with the network at all)
For a list of the many hundreds of available sensors, refer to the Wikipedia list which describes the sensors available in each of the categories.
- 1 Automotive, transportation
- 2 Chemical
- 3 Electric current, electric potential, magnetic, radio
- 4 Environment, weather, moisture, humidity
- 5 Flow, fluid velocity
- 6 Ionizing radiation, subatomic particles
- 7 Navigation instruments
- 8 Position, angle, displacement, distance, speed, acceleration
- 9 Optical, light, imaging, photon
- 10 Pressure
- 11 Force, density, level
- 12 Thermal, heat, temperature
- 13 Proximity, presence
- 14 Sensor technology
- 15 Other sensors and sensor related properties and concepts
Hardware Kits – The hardware kits are used to connect and control the sensors, provide them power, and gather the data and send to the network via some communication protocol. At this level the hardware may have to be concerned with failure modes, error reporting, power management, data storage and a number of tasks required to control the device or sensor.
Some of the major kits here include Arduino, Intel Galileo and Raspberry-Pi BeagleBoard, Gadgeteer, CubieBoard, and others.
Kits like Raspberry Pi are very cheap ($25 – $35) and were designed for kids to program. A list of the Automation, sensing and robotics projects completed this kit can be found here.
Communications Hardware – The hardware kits may or may not come with communications hardware, and depending on the deployment scenario, additional communication protocols may be required. For example in agriculture, satellite and radio networks are used to communicate with sensor equipment.
An example of communication hardware, the TSgaTe is a powerful communication platform that enables fast and simple development of M2M solutions, wireless monitoring and remote control applications. Available TST libraries allow easy and quick development of software applications in ANSI C language that take full advantage of the add-on modules. Such hardware are embedded into the end device, like the street light controller shown below.
Connection Protocols – this is the very basic level of connectivity for the sensor device to the network. Major protocols include WiFi, RFID, 2G, 3G, 4G (GSM. GPRS, GPS) Bluetooth, NFC, ZigBee.
Most of the above protocols are well known, however ZigBee deserves some explanation
Zigbee is a low cost, low power wireless technology that has been designed for the robust transmission of small amounts of data, usually sensor measurements or control commands for actuators, over mesh networks in the industrial environment. This standard has been defined by the ZigBee Alliance, an industrial consortium of companies led by Texas Instruments, Philips, Freescale and ST among others. Zigbee allows sending data, usually information from sensors and/or control commands for actuators, through multi hope wireless mesh networks, which allows a great coverage area (due to message forwarding by the repeater nodes) with redundant links (if a route is down, information is sent over another path), making Zigbee a robust network suitable for critical environments.
In my next article we will try to make some sense of the communications networks that are used to for IoT and M2M communication, before tackling the horizontal layers where the software platforms reside.