Do you want to learn the basics of the Internet of Things and How IoT Works?
Or, are you feeling overwhelmed by the technical details of IoT you have read somewhere else, and want a simpler version of it?
Believe me, you have landed at the right place! I am going to explain the Internet of Things using a simplistic approach.
Before we get started, I want you to ponder over this very simple question:
“Is it possible to CONTROL every electronic item in your house/office just by tapping on your smartphone?”
You heard it right. You don’t need to leave the comfortable and cozy environment of your bedroom to turn off the light in another room, or make coffee in your kitchen!
Instead, you just need to install a dedicated application in your smartphone, and you are better off doing tasks that would have, otherwise, required physical effort from your side.
Can you guess about the technology which goes behind such applications?
Yeah, I know. You guessed it right!
Internet of Things, or as most people would say it “IoT”.
As simplistic as the name may seem, the technology itself is not that much simpler. However, this does not mean that its documentation needs to be complicated enough.
On the forefront of the internet, you will find the explanation of IoT being coiled around abstract terms which is only understandable by the sophisticated ones.
If you are reading this, you are most probably not one of the geeky ones and simply looking for an introduction to How IoT Works. Well, even if you are a nerdy one, you can still brush up your concepts about IoT in the context of a real-life scenario described herein.
In any case, I am going to unwind complicated IoT definition and explain it with simple terminology. PERIOD!
Moreover, I am going to explain how the majority of IoT applications can seamlessly integrate with the daily routine of an average person. Let’s get started then…
What is Internet of Things
Internet of Things (IoT) is mainly a derivative of two words: “Internet” and “Things”.
“Internet” means an interconnected network, capable of transferring data between any two regions of the world.
Simply put, it means a remote connection that facilitates communication and the sharing of useful information.
“Things” mean the entities or objects which share data over the internet connection.
Before the conceptualization of IoT, “things” were mainly considered as Personal Computers, Laptops, Telephones, Smart Phones, and Landline, etc.
Humans used such “things” to transfer the informative data all over the world i.e., weather conditions, sports streaming, stocks valuation, movies, and eBooks, etc.
Without a necessary system of humans, the transfer of such data seemed an improbable task. For example, a human was needed to appropriately compose an electronic mail before sending it over the internet. Moreover, a human was also needed at the other end of the internet spectrum to make sense of the received email.
This one-dimensional use of “things” gave rise to the question “Can two devices intelligently interact with each other without human-intervention?”
Fortunately, the researchers found the answer in the INTERNET of THINGS.
Internet of Things (IoT) extends the power of the internet beyond computers and smartphones to a whole range of other objects.
In the paradigm of IoT, “things” are considered to be objects which normally don’t require an internet connection.
Before the advent of IoT, such objects could not transfer the information in a manner comprehensible to humans or other intelligent machines.
Some of the examples include smart meters, smart thermostats, coffee brewing machines, dishwashers, electric bulbs, headphones, and wearable devices, etc.
From an alternate perspective, most of the IoT devices tend to have an ON/OFF switch. Apart from communicating the power status of IoT devices, you can monitor and control other features as well e.g., the temperature of the thermostat, volume level of a headphone, dimming operation of an electric lamp, and temperature/strength of a coffee brewing machine.
In a much broader sense, IoT is all about connecting different objects using the Internet and then transferring the data fluently between them. More importantly, information and data accumulated from IoT devices can be used to significantly improve the life quality of a human being.
Before identifying how the unison of all IoT devices can lead to a better human life, it is important to understand how all such devices work in a real-world setting.
Even before that, a precise knowledge of how the internet transforms the world into a global village will be quite helpful in understanding the operation behind IoT Devices.
So, let’s make sense of the INTERNET…
How Internet Works
Internet, more or less, consists of a large mesh (network) of ethernet wires spread all over the world. Multiple objects can be connected to this mesh via unique access points.
Once the network is up and running, connected objects can freely transfer data between each other.
The reliability of data transfer is ensured by enforcing the communicating devices to strictly comply with a dedicated protocol while transmitting and receiving data.
It’s getting tough? OK…No Worries!
Let’s understand the internet in a more humanly manner. For this, you need to consider a scenario where you need to send some important documents to your friend in another city using a postal service.
The interconnected network of roads within the city, and the highways connecting different cities are analogous to the mesh of ethernet wires.
Multiple houses and apartments located on the roads of a city can be uniquely identified with the help of their street address.
The postal service behaves like a carrier to transfer the documents from your house to your friend’s apartment.
To ensure that the documents reach the right location, you will be forced to follow a protocol set forward by the postal service. The terms and conditions of the protocol may be depicted as follows:
- Put the documents within an envelope and seal it properly
- At the front of the envelope, write your full name and the return address
- At the back of the envelope, write the full name and address of the recipient
- At the top front of the envelope, write the sender’s phone number
- At the back front of the envelope, write the receiver’s phone number
Once you have fully complied with the stated protocol, you will hand over the envelope to the operations officer. The postal service will then deliver your documents at the pasted location and take the signatures of the recipient as part of their protocol.
Similarly, if your friend wants to send you a reply via the same postal service, the same protocol will need to be followed for reliable communication.
Believe me! Internet is no more complex than this postal service example. PERIOD!
Just like the houses located on the road, computing devices are connected via Ethernet Wires and WiFi.
Similar to a different postal address for each house, each object on the internet is identified using a unique IP address.
With an internet connection, two devices with different IP addresses can reliably communicate with each other. The sending device encodes the data using a specific protocol, whereas the receiving device decodes the data using the same protocol.
The feature which sets the internet apart from the postal service is the speed of data transfer.
While an efficient postal service may take 1 to 2 days to deliver a parcel from one city to another, an internet connection can transfer the same parcel (in digital form) within a matter of seconds.
Let’s dig deeper and explore some applications of the internet in our daily lives…
The Internet has infused so much within human life that most people cannot even imagine living without it. The sole reason for this seamless integration is that the solution for most of our problems is readily available on the internet.
You can even search on google, “How to comb a Bald Head”.
Don’t believe me! Here are the search results:
Before the internet era, information was available, though, not in the readiest and optimized form. If you wanted to know about the health benefits of any herb, you would need to go to a nearby library and read the relevant material from different books.
During the stone age, people used to experiment with different things before making an inference or arriving at a conclusion.
For example, to get the information about herbs, people would eat the herb and observe/record the changes taking place in their bodies. In doing so, many people also died because of poisonous chemical composition of various herbs.
In a historical context, these people have indeed formed the basis of the internet by collecting useful information and making it available for the next generation.
Today, you don’t need to experiment with any herb or read a complete book about it. You just need to write the name of the herb on the google, press enter, and VOILA!
You will be presented with a large number of articles optimized for this specific herb. These articles will not only explain the health benefits of the herb, but also its history, origin, composition, disadvantages, and recommended dosage, etc.
With the power of the internet, the information for just about everything is just one click away.
At the forefront, it is just a simple search on google. In the background, however, things get quite messy in little to no time.
For even a simple search, a stream of back and forth messages are exchanged between your computer/smartphone and the server on which information is stored.
To understand the working of IoT, it will be useful to get a structural overview of the messy background communication.
Let’s get you started with a very simple question:
“Why did you end up on this Blog Post?”
Simple. You wanted to learn about the working of IoT. You had the option to either go to a public library or browse the internet to learn about the IoT.
Eventually, you decided to explore the internet as it was more convenient for you to get the information while sitting in your house or apartment.
To access the internet, you needed a device with a LAN or Wi-Fi adapter. Fortunately, you had a laptop that provided both the interfaces.
With internet access, a unique IP Address was assigned to your laptop which would act as the identity of your laptop in case of data exchange with another device connected to the internet.
Since this blog post is also textual/image data stored within a remote server, anybody wanting to access this data must communicate with the server at the dedicated IP address.
Once you clicked on the search result of this blog post, the server received your laptop’s request to load the text and images within your browser.
Before the request was sent to the server, its IP address was deciphered using a Domain Name Server (DNS). DNS consists of a lookup table of all the domain names against their IP addresses.
Once the server received the request, it fetched the IP address of your laptop by scrapping the request message.
Finally, the text/images were sent back to your laptop’s IP address and displayed within your browser.
During this simple data exchange over the internet, three things played a vital role:
- Both the server and the laptop needed to have a Network Interface Card (LAN or Wi-Fi) to access the internet
- A unique IP address was given to both the laptop and the server to distinguish them from the other devices connected to the internet
- Both the server and the laptop needed to decipher the message of each other. Thus, the same messaging protocol was followed during the communication
Before the advent of IoT, it was a norm to consider the exchange of data only between the devices which respected the above three conditions i.e., smartphones, desktop computers, laptops, servers, and tablets, etc.
However, a huge market need was there to integrate other devices with the internet i.e., automobiles, security systems, and patient health monitoring, etc.
Such applications demanded the incorporation of dumb devices within the global sphere of the internet. Finally, an IoT ecosystem was born in which miscellaneous devices could interact with each other and transfer data over the internet.
How IoT Works
The integration of a computer or a smartphone within the internet ecosystem is not much difficult of a task since these devices are already provided with the necessary components and drivers to access the internet. All you need to do is plug-and-play.
Conversely, if you need to incorporate any other device within the global village (internet), you need to make sure that the device complies with the following features:
- A LAN or Wi-Fi adapter to access the Internet
- A Network Driver to process the incoming and outgoing messages
- An Output Interface to send out the value of digital and analog sensors
- An Input Interface to receive commands to control the settings, parameters, and features of the device
Let’s explore these features for thermostat…
A thermostat is used to maintain constant temperature in various consumer electronics i.e., deep freezers, air conditioners, coffee brewing machines, etc.
During normal operation, a thermostat senses the temperature of the environment and adjusts it as per the user requirements. A user can set the desired temperature manually using a control knob.
If you want to control the thermostat via the internet, you need to provide interfaces for either digital or analog communication:
- An Output Interface to send the environmental temperature, fetched from the temperature sensor installed in the thermostat
- An Input Interface to receive the desired temperature to control the heating conditions of the thermostat
In this way, a human sitting at the office can adjust the temperature of the electronic appliances placed in the home.
At this stage, you may be wondering why I haven’t mentioned anything about the Network Adapter and its driver to send/receive thermostat data over the internet…
The primary reason is that devices may differ in their IO Interface, but a network adapter/driver is bound to play the same role even in different devices:
- Fetch the data from the output interface of the device, and send it over the internet
- Receive the data from the internet, and feed it into the input interface of the device
Using this convention, Wi-Fi/LAN adapters are manufactured in a standalone manner e.g., ESP8266 Wi-Fi Module, W5500 Ethernet Shield, etc. Later, these are integrated within the microcontrollers having various peripherals/interfaces to establish communication with the external devices i.e., GPIO, UART, SPI, I2C, ADC, DAC, CAN, etc.
One such example is NodeMCU, which contains an ESP8266 Wi-Fi module as well as different communication interfaces. Wi-Fi module transfers information over the internet, whereas the interfaces communicate with the external devices.
Most of the IoT platforms are deployed in the same manner, albeit there are some rare cases in which the device has a built-in ethernet controller. Irrespective of the modular design, each IoT device must possess a unique IP address to be able to transfer data over the internet.
There exists a Main Hub which collects data from the IoT devices employed at various operation points either wirelessly or through wired connections.
Because of the limited storage and computational power of the main hub, data is sent over the internet to a dedicated data center. Data is processed, manipulated, and deciphered within the data center to extract useful meaning out of it.
Actionable information from the data center is sent back to the main hub, which distributes it to the relevant IoT device. The desired action is then performed by the corresponding IoT device.
This cycle of data exchange between IoT Devices, Main Hub, and Data Center is performed for as long as the system is operational.
In an IoT framework, all devices do not behave in the same manner. An application may demand an IoT device to only send data, whereas the others may demand the collection of data until a specific condition is met.
There exist broad categories of IoT devices which I am going to explain further…
Categories of IoT Devices
IoT devices can be divided into three main categories in the context of their data manipulation capabilities:
1. Collect and Send
These IoT devices collect the sensory information and then send this information over the internet. In short, these devices help us collect information about the environment and then make intelligent decisions using statistical/probabilistic models.
Some examples of such devices are temperature sensors, moisture sensors, light sensors, IR sensors, UV sensors, etc.
2. Receive and Act
Such IoT devices receive information from the environment and then act on it accordingly. Rather than acting as passive listeners, these devices behave as active workers.
Your music player receives the remote signal to increase the volume and adjusts it accordingly. Your car door-locking system receives the signal from car keys and unlocks the doors.
3. Collect and Act
Such devices are the hybrid models of the first two types. In the first phase, these devices collect the information and then send it over the internet. In the second phase, information is received and the corresponding action is performed.
Such IoT devices are most complex since they need to perform both sensing and actuation. A simple example of such a system is an Intelligent Toddler Monitor.
An IoT camera inspects the position of a toddler in a room, and up streams the camera feed to the parents’ smartphone. Upon movement of the toddler, an electric motor drives the camera to keep the toddler within the visible range of the camera.
IoT Connection Types
In the world of IoT, a connection type is defined w.r.t the entities which decipher and act on the communicated messages at both ends.
An entity can be either a human or an IoT device. Based on this classification, there are 3 types of IoT connections:
1. People to People
In this connection type, a message is sent by a human using an IoT device. On the opposite end, a human reads the received message and deciphers it accordingly.
In simple terms, devices only behave as the sender/receiver in this case and are devoid of any intelligence. A human is needed to firstly compose a message to send, and then understand the received message using natural intelligence.
A common example of this type of connection is the exchange of text messages via cellular networks, or through online chatting applications such as messenger, WhatsApp, IMO, etc.
2. People to Things
In this connection, an IoT device operates autonomously at one end whereas human intelligence is required at the other end.
The IoT device can receive/act on messages, as well as autonomously collect/send sensory information. Thus, there is some form of artificial intelligence at work in this connection type.
Temperature control of an Air Conditioner over the internet exhibits the behaviour of such a connection type. A man sitting at his office sends the desired temperature over the internet, while the IoT device installed at home forces the air conditioner to operate at the same temperature.
3. Things to Things
This connection type devoid of human intelligence in full, with IoT devices operating autonomously at both ends.
At the start, human intelligence is used to program the devices to take action according to the received data or collect/send data in a specific manner. Once the devices are programmed, they are on their own without even the slightest of human intervention.
An example of such a system is an automatic water sprinkler system. A moisture sensor installed in the garden informs the sprinkler about the saturation levels of the soil. Once the moisture in soil falls below a certain threshold, the sprinkler will start spraying water and vice versa.
Now let’s discuss the use cases of IoT in the daily life of an average person…
Applications of IoT
Having explored the working of IoT, now is the time to discuss some applications which assist human during daily tasks.
Rather than elaborating on the applications in modular form, I am going to consider the tasks which an average human performs during a single day and discuss the applications of IoT in that same context.
Let’s start where your day begins …
1. Waking Up
Before sleeping at night, you set an alarm on your mobile to help you wake up in the morning. An hour before your alarm rings, your mobile sends a signal to your Smart Geyser.
Upon receiving the signal, the smart geyser lights up on fire. By the time you wake up, an immediate supply of warm water is waiting for you to get a shower.
Before sleeping, you could have modified the operational settings of the geyser i.e., turn-on time, fire intensity, etc.
Such an application saves your electricity bill as well as optimizes the time which you would have spent waiting for the water to get hot.
Once you turn your shower off, the smart shower sends a breakfast signal to your coffee brewer and toaster maker.
By the time you are done wearing your office clothes, hot coffee is waiting for you along with freshly toasted bread.
In such an application, you can adjust the temperature settings for both the coffee and toaster maker beforehand. You can modify these settings anytime you want later.
When you turn on your tap to do your dishes after breakfast, the smart tap understands that you are about to leave for the office. Henceforth, it sends a signal for the car to get started with the heater on.
Meanwhile, a message is sent to your manager at work that you will leave for the office in about 5-10 minutes.
4. Driving for Work
Once you enter your car, all the smart locks and windows in your house will automatically shut down thereby enforcing a securely locked house.
Moreover, the GPS installed in your car will calculate the best possible route considering the live traffic data.
Besides, a text message will be sent to your colleagues about your expected arrival time at the office as per the designated route.
5. At Work
While you are performing regular duties at work, smart sensors installed within your house will keep you at the bay of what’s happening inside your house.
A smoke detector will notify you as well as the emergency services in case a fire erupts in your house.
Door Lock Sensor will inform you if someone else has opened a door in your house. Smart Cameras will immediately send you a live stream of the house in case of any sudden movement.
In this way, you are sure about the safety of your house even while you are at work.
6. Leaving from Work
When you decide to leave from work and step-in your car, a message will be sent to your favorite diner about your meal preferences as well as your expected arrival time.
When you reach the diner, a hot meal will already be waiting for you. You don’t need to place the order and then wait for it.
7. Tea Time
Once your car enters the vicinity of your garage, smart cameras will detect it and send a responsive signal to all the door locks and windows. Consequently, your house will come out of secure lockdown.
By the time you replace your office attire with informal clothes, your electric kettle will have prepared the hot water for you to enjoy your evening tea.
8. Gym Time
After taking a little bit of rest, you decide to visit the gym for your daily exercise. As soon as you wear a fitness watch and activate it, it will send an automated message to your trainer that you are on your way to the gym.
Meanwhile, your car will self-start and calculate an optimal route to the gym. When you enter the car, your trainer will be informed of your expected arrival time.
9. Entertainment Time
Once you get out of the gym and deactivate your fitness watch, your mobile will offer you some suggestions about the movies or series you want to watch today.
Upon selecting the movie, your home entertainment system will receive a signal to start the silent down streaming of the movie. As such, you don’t need to wait for the movie to load in case of a disrupted internet connection.
10. Bed Time
As 10 minutes are left in your movie, you will be sent a reminder to set up an alarm for the morning. The thermostat in your bed will start adjusting the temperature as per your liking.
Doors and windows will automatically shut down thereby securing the house, and all the sensors will be activated.
Once you lie on your bed, smart lights in the house will fade out for you to enjoy a cozy and good-night sleep.
In most of the IoT frameworks, data is accumulated in the main hub from various IoT devices before sending it over the internet to a dedicated data center or a cloud. Further processing of data takes place in the data center or cloud.
In a Home Automation network, an individual IoT device controls electronic items in a single room. Using this convention, there should be as many IoT devices in a house as the number of rooms.
Combine some IoT cameras installed in the lawn and the main gate, and you have got yourselves a whole lot of IoT devices.
Each device is collecting tons of information after each millisecond, and sending it to a central data center.
The servers in the data center process the data, and then instructs the IoT devices to take some action as per the user request e.g., switch a light on/off, increase the speed of the fan, etc.
Everything seems perfect, right?
No! If you observe closely, there is a huge problem with this transmission framework.
During the exchange of data between the main hub and data center, most of the data packets contain useless information and require no action from the IoT device.
In a practical scenario, a user may adjust fan speed 20 to 30 times in a day, or switch the light on/off for a maximum of, say, 100 times. Moreover, the camera feed is useful only if there is any noticeable movement in the visible-range.
Taking this convention, fan speed and light status should only be reported to the data center if the user changes it. Besides, only that camera feed should be sent to the data center for processing in which there is a movement of any kind.
On the contrary, data packets containing the status and control information of fan speed, light switching, and camera feed are transferred every millisecond to the data center for further processing.
This indicates a huge and unnecessary consumption of computing resources, internet bandwidth, and storage media.
So, what is the solution?
If you ask any IoT expert, you will come across the term ‘Edge Computing’.
In simple terms, edge computing refers to data filtering at the edge of the network before sending it towards the data center for further processing.
Edge Computing will filter out unnecessary details from the data, and only let that information pass through for which data processing will yield actionable results.
In normal circumstances, dedicated Edge Devices are connected at the edge of IoT networks. Each data transfer between the main hub and data center is qualified by these devices.
These devices, sort of, pre-process the data using limited computing power, and then send only useful data to the data center where extended data processing takes place.
An application for edge computing is the face recognition system. In such a system, the edge device will pre-process the camera feed to detect the human face.
If no face is detected, the data from the camera feed will either be discarded or stored in local storage for later use.
Upon face detection, the camera feed will be sent to the data center where intensive computing resources will be used to compare the live facial features with the ones stored in the database.
The comparison results will then be returned to the main hub, and subsequently, to the Graphical User Interface.
IoT and Data
If there is anything more precious in this world than Koh-I-Noor, it’s collecting data about people’s behavior and preferences at any given time.
Until now, you may have a notion that you are using popular social sharing apps for free i.e., Facebook, Instagram, Twitter, Gmail, Google, etc.
I am sorry, but I have to tell you that this is not how it works!
Maybe, you should answer this very simple question:
“How come these technology giants generate revenue if you and every other person in this world are using their services for free?”
Believe me! Nothing in this world is for free.
You are using their services at the expense of providing them with your data.
By combining your data with the behavior and preferences of the million other people using their apps, multiple groups are formed based on the geographical regions and user preferences.
Various advertising campaigns are then directed to a specific group of users. This is the main reason why you see an advertisement for shoes on your timeline, while your friend is being shown ads for fresh fruits.
Differences in personal preferences of the general public are collected through their interactions and searches on popular social platforms, and this what drives their massive advertising revenue.
The same approach for data analysis can be applied in IoT, however, data will be collected through indirect interaction of users with the IoT devices.
For example, your smartwatch can tell where and when you were most active and productive during the day.
Using the camera feed of your shop, you can find out where the customers spend most of their time. You can order more of those goods and include more variety in that specific part of the shop.
Data collected from a pressure sensor installed within a pipeline can be used to detect extremely high pressure. This information can be used to trigger a signal to shut valves to avert a spill.
A Disney land can use the GPS data of its customers to analyze the queue wait times during entry. Using this data, management can take the necessary steps to optimize the queue time and reduce the hassle for their customers.
Such processing of data demands extensive frameworks of Artificial Intelligence, Machine Learning, Deep Learning, Data Science, Data Analytics, etc.
In essence, IoT is nothing more than extending the power of internet beyond the computers and smart phones.
You can send an email over the internet, but how amazing it would feel if you could control all the electronic devices within your home/office using a smartphone application.
Moreover, data collected from IoT devices can be analyzed, processed, and interpreted to improve the overall life quality of humans in different sectors such as business, social, financial, personal management, etc.
Whether you are anticipating it or not, years ahead will mark a massive extension in IoT framework all over the world. So, its sensible to start learning about IoT today to stay alive in a competitive landscape.
Well, that’s it for me today. However, you need to comment about the IoT projects you have developed in the past or intend to do so in the future…
He is the owner and founder of Embedded Robotics and a health based start-up called Nema Loss. He is very enthusiastic and passionate about Business Development, Fitness, and Technology. Read more about his struggles, and how he went from being called a Weak Electrical Engineer to founder of Embedded Robotics.