Internet of Things-Unit 1
Internet of Things-Unit 1
Internet of Things refers to the network of physical devices, vehicles, home appliances, and other
items embedded with electronics, software, sensors, and network connectivity, allowing them to
collect and exchange data. The IoT enables these devices to interact with each other and with the
environment and enables the creation of smart systems and services.
Some examples of IoT devices include:
Smart home devices such as thermostats, lighting systems, and security systems.
Wearables such as fitness trackers and smartwatches.
Healthcare devices such as patient monitoring systems and wearable medical devices.
Industrial systems such as predictive maintenance systems and supply chain management
systems.
Transportation systems such as connected cars and autonomous vehicles.
1. Connectivity
As the name suggests, it’s all about the connectivity of 2 or more devices. This characteristics of IoT
help to communicate with and share information between two or more devices. The IoT has created a
world where everything is connected to communicate well and share user data. This connectivity also
enables objects to be controlled remotely.
2. Identity of Things
As we all know, Identity is the unique characteristic of anyone. If we take the example of mobile,
every mobile phone has a unique IMEI number, and the same goes for other devices in this world.
Due to this unique number, we identify people and things on the Internet. So, we can say that
the Identity of Things is one of the unique characteristics of IoT.
The concept of Identity is found in many aspects of IoT. Device Identity is the one thing that makes
an IoT device unique and identifiable. Identity can be used to distinguish between different devices,
give them a name, and allow them to be controlled.
3. Scalability
Scalability is nothing but the ability of a system to grow without affecting its performance of the
system. We can quickly achieve that by adding more hardware resources or software layers to an
existing system. IoT is increasing daily, and it is essential to consider scalability in your system,
which makes it essential characteristics of IoT.
4. Dynamic or Self-Adapting
Being dynamic is one of the main characteristics of IoT because it needs to be self-adaptive to
understand the changes around it and act accordingly. If we take an example of a camera, it was
initially created just to take a photograph; however, later, it has got the feature of adjusting the quality
of a photograph according to the light. So, being dynamic is very important to grow a system. Self-
adaptability is a very important characteristics of IoT.
5. Architecture
Architecture is one of the critical characteristics of IoT, as with the increasing number of IoT devices,
it is very important to keep it heterogenetic not homogenetic. IoT is only possible when multiple
domains come together and work to build a system that can minimize human work. So, it is essential
for the devices to support diverse technologies and protocols and communicate with each other.
6. Safety
The basic idea of IoT is to connect everything to the internet and make the system easier for the users.
However, when things are connected to the internet in such a way there is always a danger of the
sensitive personal details of the users getting compromised. So safety is undoubtedly a crucial
characteristic of IoT.
7. Intelligence
The evolution of digital personal assistants like Alexa, Cortana, and Siri is an example of the
intelligence of electronic devices. The intelligence of IoT devices is the intelligence of smart sensors
and devices to sense data, interact with each other and collect a massive amount of data for analysis. It
is very crucial for your IoT device to be smart and for that, you need to make sure that it is always up-
to-date with the latest software and firmware. So, we can say that Intelligence is one of the essential
Characteristics of IoT.
Types of sensors –
Electrical sensor :
Electrical proximity sensors may be contact or non contact.
Simple contact sensors operate by making the sensor and the component complete an electrical
circuit.
Non- contact electrical proximity sensors rely on the electrical principles of either induction for
detecting metals or capacitance for detecting non metals as well.
Light sensor:
Light sensor is also known as photo sensors and one of the important sensor.
Light dependent resistor or LDR is a simple light sensor available today.
Touch sensor:
Detection of something like a touch of finger or a stylus is known as touch sensor.
Range sensing:
Range sensing concerns detecting how near or far a component is from the sensing position,
although they can also be used as proximity sensors.
Longer range sensing is carried out using transmitted energy waves of various types eg radio
waves, sound waves and lasers.
Mechanical sensor:
Any suitable mechanical / electrical switch may be adopted but because a certain amount of force is
required to operate a mechanical switch it is common to use micro-switches.
Pneumatic sensor:
The pneumatic proximity sensor is an example of a contact type sensor. These cannot be used
where light components may be blown away.
Optical sensor:
optical sensors can be blinded by flashes from arc welding processes, airborne dust and smoke
clouds may impede light transmission etc.
Speed Sensor:
Sensor used for detecting the speed of any object or vehicle which is in motion is known as speed
sensor .For example – Wind Speed Sensors, Speedometer ,UDAR ,Ground Speed Radar .
Temperature Sensor:
Devices which monitors and tracks the temperature and gives temperature’s measurement as an
electrical signal are termed as temperature sensors .These electrical signals will be in the form of
voltage and is directly proportional to the temperature measurement .
PIR Sensor:
PIR stands for passive infrared sensor and it is an electronic sensor that is used for the tracking and
measurement of infrared (IR) light radiating from objects in its field of view and is also known as
Pyroelectric sensor .It is mainly used for detecting human motion and movement detection .
Ultrasonic Sensor:
The principle of ultrasonic sensor is similar to the working principle of SONAR or RADAR in
which the interpretation of echoes from radio or sound waves to evaluate the attributes of a target
by generating the high frequency sound waves .
An actuator is a machine component or system that moves or controls the mechanism of the system.
Sensors in the device sense the environment, then control signals are generated for the actuators
according to the actions needed to perform. A servo motor is an example of an actuator.
Types of Actuators :
1. Hydraulic Actuators –
A hydraulic actuator uses hydraulic power to perform a mechanical operation. They are actuated by a
cylinder or fluid motor. The mechanical motion is converted to rotary, linear, or oscillatory motion,
according to the need of the IoT device. Ex- construction equipment uses hydraulic actuators because
hydraulic actuators can generate a large amount of force.
2. Pneumatic Actuators –
A pneumatic actuator uses energy formed by vacuum or compressed air at high pressure to convert
into either linear or rotary motion. Example- Used in robotics, use sensors that work like human
fingers by using compressed air.
3. Electrical Actuators –
An electric actuator uses electrical energy, is usually actuated by a motor that converts electrical
energy into mechanical torque. An example of an electric actuator is a solenoid based electric bell.
Thermal/Magnetic Actuators –
These are actuated by thermal or mechanical energy. Shape Memory Alloys (SMAs) or Magnetic
Shape‐Memory Alloys (MSMAs) are used by these actuators. An example of a thermal/magnetic
actuator can be a piezo motor using SMA.
Mechanical Actuators –
A mechanical actuator executes movement by converting rotary motion into linear motion. It
involves pulleys, chains, gears, rails, and other devices to operate. Example – A crankshaft.
Soft Actuators
Shape Memory Polymers
Light Activated Polymers
With the expanding world of IoT, sensors and actuators will find more usage in commercial and
domestic applications along with the pre-existing use in industry.
Things/Devices
Things/Devices are used to build a connection, process data, provide interfaces, provide storage, and
provide graphics interfaces in an IoT system. All these generate data in a form that can be analyzed by
an analytical system and program to perform operations and used to improve the system.
for example temperature sensor that is used to analyze the temperature generates the data from a
location and is then determined by algorithms.
devices in IoT(Internet of things)
Connectivity
Devices like USB hosts and ETHERNET are used for connectivity between the devices and the
server.
Processor
A processor like a CPU and other units are used to process the data. these data are further used to
improve the decision quality of an IoT system.
Audio/Video Interfaces
An interface like HDMI and RCA devices is used to record audio and videos in a system.
Input/Output interface
To give input and output signals to sensors, and actuators we use things like UART, SPI, CAN, etc.
Storage Interfaces
Things like SD, MMC, and SDIO are used to store the data generated from an IoT device.
Other things like DDR and GPU are used to control the activity of an IoT system.
IoT Protocols
These protocols are used to establish communication between a node device and a server over the
internet. it helps to send commands to an IoT device and receive data from an IoT device over the
internet. we use different types of protocols that are present on both the server and client side and
these protocols are managed by network layers like application, transport, network, and link layer.
IoT(Internet of Things) protocols
In this layer, protocols define how the data can be sent over the network with the lower layer
protocols using the application interface. these protocols include HTTP, WebSocket, XMPP, MQTT,
DDS, and AMQP protocols.
HTTP
Hypertext transfer protocol is a protocol that presents an application layer for transmitting media
documents. it is used to communicate between web browsers and servers. it makes a request to a
server and then waits till it receives a response and in between the request server does not keep any
data between the two requests.
WebSocket
This protocol enables two-way communication between a client and a host that can be run on an
untrusted code in a controlled environment. This protocol is commonly used by web browsers.
MQTT
Transport Layer
This layer is used to control the flow of data segments and handle error control. also, these layer
protocols provide end-to-end message transfer capability independent of the underlying network.
TCP
The transmission control protocol is a protocol that defines how to establish and maintain a network
that can exchange data in a proper manner using the internet protocol.
UDP
a user datagram protocol is part of an internet protocol called the connectionless protocol. this
protocol is not required to establish the connection to transfer data.
Network Layer
This layer is used to send datagrams from the source network to the destination network. we use IPv4
and IPv6 protocols as host identification that transfers data in packets.
IPv4
This is a protocol address that is a unique and numerical label assigned to each device connected to
the network. an IP address performs two main functions host and location addressing. IPv4 is an IP
address that is 32-bit long.
IPv6
It is a successor of IPv4 that uses 128 bits for an IP address. it is developed by the IETF task force to
deal with long-anticipated problems.
Link Layer
Link-layer protocols are used to send data over the network’s physical layer. it also determines how
the packets are coded and signaled by the devices.
Ethernet
It is a set of technologies and protocols that are used primarily in LANs. it defines the physical layer
and the medium access control for wired ethernet networks.
WiFi
It is a set of LAN protocols and specifies the set of media access control and physical layer protocols
for implementing wireless local area networks.
IoT devices are found everywhere and will enable circulatory intelligence in the future. For
operational perception, it is important and useful to understand how various IoT devices communicate
with each other. Communication models used in IoT have great value. The IoTs allow people and
things to be connected any time, any space, with anything and anyone, using any network and any
service.
Types of Communication Model :
1. Request & Response Model –
This model follows a client-server architecture.
The client, when required, requests the information from the server. This request is usually in the
encoded format.
This model is stateless since the data between the requests is not retained and each request is
independently handled.
The server Categories the request, and fetches the data from the database and its resource
representation. This data is converted to response and is transferred in an encoded format to the
client. The client, in turn, receives the response.
On the other hand — In Request-Response communication model client sends a request to the
server and the server responds to the request. When the server receives the request it decides how
to respond, fetches the data retrieves resources, and prepares the response, and sends it to the
client.
2. Publisher-Subscriber Model –
This model comprises three entities: Publishers, Brokers, and Consumers.
Publishers are the source of data. It sends the data to the topic which are managed by the broker.
They are not aware of consumers.
Consumers subscribe to the topics which are managed by the broker.
Hence, Brokers responsibility is to accept data from publishers and send it to the appropriate
consumers. The broker only has the information regarding the consumer to which a particular
topic belongs to which the publisher is unaware of.
3. Push-Pull Model –
The push-pull model constitutes data publishers, data consumers, and data queues.
Publishers and Consumers are not aware of each other.
Publishers publish the message/data and push it into the queue. The consumers, present on the
other side, pull the data out of the queue. Thus, the queue acts as the buffer for the message when
the difference occurs in the rate of push or pull of data on the side of a publisher and consumer.
Queues help in decoupling the messaging between the producer and consumer. Queues also act as
a buffer which helps in situations where there is a mismatch between the rate at which the
producers push the data and consumers pull the data.
4. Exclusive Pair –
Exclusive Pair is the bi-directional model, including full-duplex communication among client
and server. The connection is constant and remains open till the client sends a request to close the
connection.
The Server has the record of all the connections which has been opened.
This is a state-full connection model and the server is aware of all open connections.
WebSocket based communication API is fully based on this model.
Generally we used Two APIs For IoT Communication. These IoT Communication APIs are:
Representational state transfer (REST) is a set of architectural principles by which you can design
Web services the Web APIs that focus on systems’s resources and how resource states are addressed
and transferred. REST APIs that follow the request response communication model, the rest
architectural constraint apply to the components, connector and data elements, within a distributed
hypermedia system. The rest architectural constraint are as follows:
Client-server – The principle behind the client-server constraint is the separation of concerns. for
example clients should not be concerned with the storage of data which is concern of the serve.
Similarly the server should not be concerned about the user interface, which is concern of the
clien. Separation allows client and server to be independently developed and updated.
Stateless – Each request from client to server must contain all the information necessary to
understand the request, and cannot take advantage of any stored context on the server. The session
state is kept entirely on the client.
Cache-able – Cache constraints requires that the data within a response to a request be implicitly or
explicitly leveled as cache-able or non cache-able. If a response is cache-able, then a client cache is
given the right to reuse that repsonse data for later, equivalent requests. caching can partially or
completely eliminate some instructions and improve efficiency and scalability.
Layered system – layered system constraints, constrains the behavior of components such that each
component cannot see beyond the immediate layer with they are interacting. For example, the client
cannot tell whether it is connected directly to the end server or two an intermediaryalong the way.
System scalability can be improved by allowing intermediaries to respond to requests instead of the
end server, without the client having to do anything different.
Uniform interface – uniform interface constraints requires that the method of communication
between client and server must be uniform. Resources are identified in the requests (by URIsin web
based systems) and are themselves is separate from the representations of the resources data returned
to the client. When a client holds a representation of resources it has all the information required to
update or delete the resource you (provided the client has required permissions). Each message
includes enough information to describe how to process the message.
Code on demand – Servers can provide executable code or scripts for clients to execute in their
context. this constraint is the only one that is optional.
In this article we discuss various IoT Levels and Deployment templates. We know that we can’t use
same approach for every problem statement. After a long search on internet, I found some IoT
Deployment templates. These are 6 IoT Deployment templates. It is based on Complexity.
Device: Allows identification, remote sensing, actuating and remote monitoring capabilities. IoT
devices include wireless sensors, software, actuators, and computer devices. They are attached to a
particular object that operates through the internet, enabling the transfer of data among objects or
people automatically without human intervention. Read more…
Resource: These are Software components on the IoT device for accessing, processing, and storing
sensor information, or controlling
actuators connected to the device.
Controller Service: A native service that runs on the device and work between node device and web
services. Controller service sends data from the device to the web service and receives commands
from the application (via web services) for controlling the device.
Database: A storage place for Collected or generated data. It can be local or cloud based.
Web Service: Web services serve as a link between the IoT device, application, database and analysis
components. Web service can be either implemented using HTTP and REST principles (REST
service) or using WebSocket protocol (WebSocket service).
Analysis Component: Responsible for analyzing the IoT data and generate results in a form which
are easy for the user to understand.
Application: IoT applications provide an interface that the users can use to control and monitor
various aspects of the IoT system. It allow users to view the system Monitor and processed data.
IoT Level-1
• A level-1 IoT system has a single node/device that performs sensing and/or actuation, stores data,
performs analysis and hosts the application • TIt is suitable for modeling low- cost and low-
complexity solutions where the data involved is not big and the analysis requirements are not
computationally intensive.
IoT Level-2
• It has a single node that performs sensing and/or actuation and local analysis (IoT Device and
collected data).
• It is useful for solutions where the data involved is big, however, the primary analysis requirement is
not computationally intensive and can be done locally itself.
IoT Level-3
• It has has a single node. Database and application establish in the cloud.
• It is suitable for solutions where the data involved is big and the analysis requirements are
computationally intensive.
IoT Level-4
• It has multiple nodes that perform local analysis. It has Cloud based application and database. These
IoT System contains local and cloud- based observer nodes which can subscribe to and receive
information collected in the cloud from IoT node devices.
• It is suitable for solutions where we are using multiple nodes, the data involved is big and the
analysis requirements are computationally intensive.
IoT Level-5
• It has multiple end nodes and one coordinator node. The end nodes use for sensing and/or actuation.
• In this model Coordinator node collects data from the end nodes and transfer to the cloud. In this
model we used Cloud-based Database for store and Analyze data.
• It is suitable for solutions based on wireless sensor networks, in which the data involved is big and
the analysis requirements are computationally intensive.
IoT Level-6
• It has multiple independent end nodes that used for sensing and/or actuation and transfer data to the
cloud. We used Cloud-based database.
• The analytics component analyzes the data and stores the results in the cloud database and results
are visualized with the cloud-based application.
• The centralized controller is aware of the status of all the end nodes and sends control commands to
the nodes
Domain Specific Tools
Depending upon of its usages, the software may be classified as generic or specific. Generic software
is a software that can perform multiple tasks in a different environment without being modified like a
word processor software that can be used by anyone to make different types of documents as a report,
whitepaper, training material, etc. Specific software is software for a particular application, like
railway reservation system, weather forecasting, etc.
Some Domain Specific Tools :
1. School Management System : School management system handles various activities and
processes of a school to facilitate campus management like examination, attendance, admission,
student’s fees, timetable, teacher’s training, etc. It provides a healthy interaction among teachers,
students, parents.
2. Inventory Management : Managing multiple tasks like purchase, sales, order, delivery, stock
maintenance, etc. associated with raw or processed goods in any business is called inventory
management. The inventory management software ensures that stocks are never below specified
limits and purchase/deliveries are done in time. Inventory management system is very useful for
forecasting, utilizing economies of scale and timing.
3. Payroll Management System : Payroll management system deals with the financial aspects of
the employee’s salary, taking care of leaves, bonus, loans, etc. Some advantages of using this kind
of management system are managed employee information efficiently, generate pay-slip at the
convenience of a mouse click, manages its own security. Payroll software is generally a
component of HR (Human Resource) management software in big organizations.
Employee Definition
|
Salary Structure
|
Pay Element
|
Tax Details Recording
|
Leave and Time Sheet Booking
|
Employee Appraisal
|
Employee Payroll Generation
|
Salary Payment
Block diagram for Salary Payment Process
Financial Accounting : Financial management software keeps an electronic record of all financial
transactions of the organization. Objectives of financial accounting
1. Record financial transactions as and when they occur so that the data can be analyzed for
preparing a financial statement.
2. Calculate profit or loss, to enable management to take course-correction strategies if required.
3. Ascertain the financial strength of the company by determining its assets and liabilities.
4. Communicate the information to stakeholders through statements and reports, so that these
stakeholders can take appropriate decisions on their investments in the business.
4. Hotel Management : Hotel management software helps hotel managers to keep track of
inventory levels, daily orders, customer management, employee scheduling, table booking, etc.
5. Reservation System : A reservation system is a software that handles multiple modules like train
routes, train management, seat booking, meal booking, train maintenance, train status, travel
package, etc.
6. Weather Forecasting System : Weather forecasting system is a real-time software that predicts
the weather of a place by collecting live data about atmospheric temperature, humidity, wind
level, etc. It is used to predict major disasters like earthquakes, hurricanes, tsunamis, etc.