0% found this document useful (0 votes)
157 views88 pages

Internet of Things: Unit I - Introduction

The document discusses the Internet of Things (IoT). It defines IoT as a system of interrelated computing devices, objects, animals or people that are provided with unique identifiers and can transfer data over a network without human interaction. Things in IoT can be devices with sensors that are connected to the internet and able to share data, such as a farm animal with a biochip or a car with built-in sensors. Organizations are using IoT to operate more efficiently and make better decisions using collected data. IoT devices collect and share sensor data by connecting to gateways or the cloud to be analyzed. Connectivity, networking protocols, and artificial intelligence are key aspects that enable IoT applications and make devices smart.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
157 views88 pages

Internet of Things: Unit I - Introduction

The document discusses the Internet of Things (IoT). It defines IoT as a system of interrelated computing devices, objects, animals or people that are provided with unique identifiers and can transfer data over a network without human interaction. Things in IoT can be devices with sensors that are connected to the internet and able to share data, such as a farm animal with a biochip or a car with built-in sensors. Organizations are using IoT to operate more efficiently and make better decisions using collected data. IoT devices collect and share sensor data by connecting to gateways or the cloud to be analyzed. Connectivity, networking protocols, and artificial intelligence are key aspects that enable IoT applications and make devices smart.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 88

INTERNET OF THINGS

UNIT I – INTRODUCTION
INTERNET OF THINGS

The internet of things, or IoT, is a system of interrelated computing devices, mechanical and digital
machines, objects, animals or people that are provided with unique identifiers (UIDs) and the ability
to transfer data over a network without requiring human-to-human or human-to-computer interaction.

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 Internet Protocol (IP) address
and is able to transfer data over a network.

Increasingly, organizations in a variety of industries are using IoT to operate more efficiently, better
understand customers to deliver enhanced customer service, improve decision-making and increase
the value of the business.

How does IoT work?

An IoT ecosystem consists of web-enabled smart devices that use embedded systems, such as
processors, sensors and communication hardware, to collect, send and act on data they acquire from
their environments. IoT devices share the sensor data they collect by connecting to an IoT gateway or
other edge device where data is either sent to the cloud to be analyzed or analyzed locally. Sometimes,
these devices communicate with other related devices and act on the information they get from one
another. The devices do most of the work without human intervention, although people can interact
with the devices -- for instance, to set them up, give them instructions or access the data.

The connectivity, networking and communication protocols used with these web-enabled devices
largely depend on the specific IoT applications deployed.

IoT can also make use of artificial intelligence (AI) and machine learning to aid in making data
collecting processes easier and more dynamic.
Features of IOT

The most important features of IoT on which it works are connectivity, analysing, integrating, active
engagement, and many more. Some of them are listed below:

Connectivity: Connectivity refers to establish a proper connection between all the things of IoT to
IoT platform it may be server or cloud. After connecting the IoT devices, it needs a high speed
messaging between the devices and cloud to enable reliable, secure and bi-directional communication.

Analyzing: After connecting all the relevant things, it comes to real-time analysing the data collected
and use them to build effective business intelligence. If we have a good insight into data gathered
from all these things, then we call our system has a smart system.

Integrating: IoT integrating the various models to improve the user experience as well.

Artificial Intelligence: IoT makes things smart and enhances life through the use of data. For
example, if we have a coffee machine whose beans have going to end, then the coffee machine itself
order the coffee beans of your choice from the retailer.

Sensing: The sensor devices used in IoT technologies detect and measure any change in the
environment and report on their status. IoT technology brings passive networks to active networks.
Without sensors, there could not hold an effective or true IoT environment.

Active Engagement: IoT makes the connected technology, product, or services to active engagement
between each other.
DOMAIN SPECIFIC IoTs

1) Home Automation:

a) Smart Lighting: helps in saving energy by adapting the lighting to the ambient
conditions and switching on/off or diming the light when needed.
b) Smart Appliances: make the management easier and also provide status information
to the users remotely.
c) Intrusion Detection: use security cameras and sensors (PIR sensors and door sensors)
to detect intrusion and raise alerts. Alerts can be in the form of SMS or email sent to
the user.
d) Smoke/Gas Detectors: Smoke detectors are installed in homes and buildings to
detect smoke that is typically an early sign of fire. Alerts raised by smoke detectors
can be in the form of signals to a fire alarm system. Gas detectors can detect the
presence of harmful gases such as CO, LPGetc.,

2) Cities:

a) Smart Parking: make the search for parking space easier and convenient for drivers.
Smart parking are powered by IoT systems that detect the no. of empty parking slots
and send information over internet to smart application back ends.
b) Smart Lighting: for roads, parks and buildings can help in saving energy.
c) Smart Roads: Equipped with sensors can provide information on driving condition,
travel time estimating and alert in case of poor driving conditions, traffic condition
and accidents.
d) Structural Health Monitoring: uses a network of sensors to monitor the vibration
levels in the structures such as bridges and buildings.
e) Surveillance: The video feeds from surveillance cameras can be aggregated in cloud
based scalable storage solution.
f) Emergency Response: IoT systems for fire detection, gas and water leakage
detection can help in generating alerts and minimizing their effects on the critical
infrastructures.

3) Environment:

a) Weather Monitoring: Systems collect data from a no. of sensors attached and send
the data to cloud based applications and storage back ends. The data collected in
cloud can then be analysed and visualized by cloud based applications.
b) Air Pollution Monitoring: System can monitor emission of harmful gases(CO2, CO,
NO, NO2 etc.,) by factories and automobiles using gaseous and meteorological
sensors. The collected data can be analysed to make informed decisions on pollutions
control approaches.
c) Noise Pollution Monitoring: Due to growing urban development, noise levels in
cities have increased and even become alarmingly high in some cities. IoT based
noise pollution monitoring systems use a no. of noise monitoring systems that are
deployed at different places in a city. The data on noise levels from the station is
collected on servers or in the cloud.
d) Forest Fire Detection: Forest fire can cause damage to natural resources, property
and human life. Early detection of forest fire can help in minimizing damage.
e) River Flood Detection: River floods can cause damage to natural and human
resources and human life. Early warnings of floods can be given by monitoring the
water level and flow rate.

4) Energy:

a) Smart Grids: is a data communication network integrated with the electrical grids
that collects and analyse data captured in near-real-time about power transmission,
distribution and consumption. Smart grid technology provides predictive information
and recommendations to utilities, their suppliers, and their customers on how best to
manage power.
b) Renewable Energy Systems: IoT based systems integrated with the transformers at
the point of interconnection measures the electrical variables and how much power is
fed into the grid. For wind energy systems, closed-loop controls can be used to
regulate the voltage at point of interconnection which coordinate wind turbine outputs
and provides powersupport.
c) Prognostics: In systems such as power grids, real-time information is collected using
specialized electrical sensors called Phasor Measurement Units(PMUs) at the
substations. The information received from PMUs must be monitored in real-time for
estimating the state of the system and for predicting failures.

5) Retail:

a) Inventory Management: IoT systems enable remote monitoring of inventory using


data collected by RFID readers.
b) Smart Payments: Solutions such as contact-less payments powered by technologies
such as Near Field Communication(NFC) and Bluetooth.
c) Smart Vending Machines: Sensors in a smart vending machines monitors its
operations and send the data to cloud which can be used for predictive maintenance.

6) Logistics:

a) Route generation & scheduling: IoT based system backed by cloud can provide first
response to the route generation queries and can be scaled upto serve a large
transportation network.
b) Fleet Tracking: Use GPS to track locations of vehicles inreal-time.
c) Shipment Monitoring: IoT based shipment monitoring systems use sensors such as
temp, humidity, to monitor the conditions and send data to cloud, where it can be
analyzed to detect food spoilage.
d) Remote Vehicle Diagnostics: Systems use on-board IoT devices for collecting data
on Vehicle operations (speed, RPMetc.,) and status of various vehicle subsystems.

7) Agriculture:

a) Smart Irrigation: to determine moisture amount in soil.


b) Green House Control: to improve productivity.
IoT and M2M

M2M
Machine-to-Machine (M2M) refers to networking of machines (or devices) for the purpose
of remote monitoring and control and data exchange.
 Term which is often synonymous with IoT is Machine-to-Machine (M2M).
 IoT and M2M are often used interchangeably.
end-to-end architecture of M2M systems comprises of M2M area networks, communication networks
and application domain.

 An M2M area network comprises of machines (or M2M nodes) which have embedded
network modules for sensing, actuation and communicating various communication
protocols can be used for M2M LAN such as ZigBee, Bluetooth, M-bus, Wireless M-Bus
etc., These protocols provide connectivity between M2M nodes within an M2M area
network.
 The communication network provides connectivity to remote M2M area networks. The
communication network provides connectivity to remote M2M area network. The
communication network can use either wired or wireless network (IP based). While the
M2M are networks use either properietorary or non-IP based communication protocols,
the communication network uses IP-based network.
 To enable the communication between remote M2M are network, M2M gateways are
used.
The communication between M2M nodes and the M2M gateway is based on the communication
protocols which are naive to the M2M are network. M2M gateway performs protocol translations to
enable Ip-connectivity for M2M are networks. M2M gateway acts as a proxy performing translations
from/to native protocols to/from Internet Protocol(IP). With an M2M gateway, each mode in an
M2M area network appears as a virtualized node for external M2M area networks.

Differences between IoT and M2M

Features IoT M2M


Abbreviation IoT stands for the Internet of Things. M2M stands for Machine-to-Machine
communication.
Intelligence Devices include objects that are In M2M, there is a limited amount of
responsible for decision-making intelligence observed.
processes.
Communication IoT has used internet protocols like Communication technology and
Protocol Used FTP, Telnet, and HTTP. Traditional protocols are uses in M2M
technology.

Connection Type The connection of IoT is through the M2M uses a point to point connection.
Used network and using various types of
communication.

Scope It has a wide range of devices, yet the It has a limited Scope for devices.
scope is large.
Business Type Used It has Business to Consumer (B2C) and It has Business to Business (B2B)
Business to Business (B2B). communication.
Data Sharing In IoT, data sharing depends on the In M2M, devices may be connected
Internet protocol network. through mobile or any other network.
Open API Support IoT technology supports Open API In M2M technology, there is no Open
integrations. API support.
Example Big Data, Cloud, Smart wearables, and Data and Information, sensors, and
many more. many more.

Similarity Between IoT and M2M

The advent of the Internet of Things (IoT), the world is poised to become a global village. The IoT
vision is to establish a network of interconnected devices capable of sharing data with each other via
the Internet. Since IoT devices can communicate with each other, they can automatically be
programmed to execute tasks. For example, you can set up your lights to come on automatically when
it gets dark, or you can turn on your air-conditioner when your room gets hot.
One of the most important aspects of machine-to-machine communication is connectivity. If there is
no wireless or wired connection between devices, they cannot communicate. An IoT has various
protocols, technologies, and applications that are used for connectivity between devices.
First, we need to understand what IoT is and the meaning of M2M. IoT stands for The Internet of
Things and is a network of physical devices, vehicles, home appliances, and other items embedded
with electronics, software, sensors, actuators, and connectivity that enables these objects to connect
and exchange data. M2M stands for Machine to Machine communication. It is a subset of IoT that
deals explicitly with connections between machines. Machine-to-machine communication allows
devices to communicate without direct human input.
M2M is all about connecting machines to the Internet so that they can communicate with each other,
manage their tasks and data, and generally “do business” with one another. Likewise, IoT is all about
connecting devices to the Internet to be monitored remotely by individuals or enterprises.
IoT devices are often used in industrial settings to monitor equipment performance, report operational
data (such as temperature), or track assets (such as shipping containers). However, M2M
communications are not limited to industrial settings; they can also be used in home automation
applications such as controlling lights, locks, security systems, appliances, and more.
M2M value chains

 M2M value chains are internal to one company and cover one solution.
 Reasons for using M2M vary from project to project and company to company.
 It can include things such as cost reductions through streamlined business processes, product
quality improvements, and increased health and safety protection for employees.
 Input and output of the value chains as follows:
1.Inputs: Inputs are the base raw ingredients that are turned into a product. Examples could be cocoa
beans for the manufacture of chocolate or data from an M2M device that will be turned into a piece of
information.

2.Production/Manufacture: Production/Manufacture refers to the process that the raw inputs are put
through to become part of a value chain. For example, cocoa beans may be dried and separated before
being transported to overseas markets. Data from an M2M solution, meanwhile, needs to be verified
and tagged for provenance.

3.Processing: Processing refers to the process whereby a product is prepared for sale. For example,
cocoa beans may now be made into cocoa powder, ready for use in chocolate bars. For an M2M
solution, this refers to the aggregation of multiple data sources to create an information Component.

4.Packaging: Packaging refers to the process whereby a product can be branded as would be
recognizable to end-user consumers. For example, a chocolate bar would now be ready to eat and
have a red wrapper with the words “Kit Katt” on it. For M2M solutions, the data will have to be
combined with other information from internal corporate databases.

5.Distribution/Marketing: This process refers to the channels to market for products. For example, a
chocolate bar may be sold at a supermarket or even online. An M2M solution, however, will have
produced an Information Product that can be used to create new knowledge within a corporate
environment

IoT value chains


 IoT Value Chains are about the use and reuse of data across value chains and across solutions
 IoT value chains based on data are to some extent enabled by Open APIs and the other open
web-based technologies.
 Open APIs allow for the knowledge contained within different technical systems to become
unembedded.
 Creating the possibility for many different economic entities to combine and share their data
as long as they have a well-defined interface and description of how the data is formatted.
 Open APIs in conjunction with the Internet technologies mean that knowledge is no longer
tied to one digital system.
1.Inputs: The It has more inputs than for an M2M solution. It has the following
o Devices/Sensors: these are very similar to the M2M solution devices and sensors,
and may in fact be built on the same technology.
o Open Data: Open data is an increasingly important input to Information Value
Chains. Open data defines it as: “A piece of data is open if anyone is free to use,
reuse, and redistribute it.
o OSS/BSS: The Operational Support Systems and Business Support Systems of
mobile operator networks are also important inputs to information value chains, and
are being used increasingly in tightly closed information marketplaces that allow
operators to deliver services to enterprises
o Corporate Databases: Companies of a certain size generally have multiple corporate
databases covering various functions, including supply chain management, payroll,
accounting, etc.
2.Production/Manufacture: In the production and manufacturing processes for data in an IoT
solution, the raw inputs described above will undergo initial development into information
components and products. Some examples as follows:
o Asset Information: Asset information may include data such as temperature over time of
container during transit or air quality during a particular month.
o Open Data Sets: Open data sets may include maps, rail timetables, or demographics about a
certain area in a country or city.
o Network Information: Network information relates to information such as GPS data, services
accessed via the mobile network, etc. . . .
o Corporate Information: Corporate information may be, for example, the current state of
demand for a particular product in the supply chain at a particular moment in time
3.Processing: During the processing stage, data from various sources is mixed together. The data
from the various inputs from the production and manufacture stage are combined together to create
information.
4.Packaging: After the data from various inputs has been combined together, the packaging section
of the information value chain creates information components. These components could be produced
as charts or other traditional methods of communicating information to end-users. Both the processing
and packaging sections of the Information-Driven Global Value Chain (IGVC) are where Information
Marketplaces will be developed.
5. Distribution/Marketing: The final stage of the Information Value Chain is the creation of an
Information Product. It has two main categories:
o Information products for improving internal decision-making: These information products are
the result of either detailed information analysis that allows better decisions to be made
during various internal corporate processes, or they enable the creation of previously
unavailable knowledge about a company’s products, strategy, or internal processes.
o Information products for resale to other economic actors: These information products have
high value for other economic actors and can be sold to them.
Market Perspective
o The increasing interest in M2M and IoT solutions has been driven by the potential large
market and growth opportunities.
o In M2M and IoT, the technology used for these solutions may be very similar, even use the
same base components but the data is managed will be different.
o In an M2M solution, data remains within strict boundaries, it is used solely for the purpose.
o In IoT, data may be used and reused for many different purposes.
o Data can be shared between companies and value chains in internal information marketplaces.
o Data could be publicly exchanged on a public information marketplace.

Sensors for IoT Applications

Sensors are devices that detect and respond to changes in an environment. Inputs can come from a
variety of sources such as light, temperature, motion and pressure. Sensors output valuable
information and if they are connected to a network, they can share data with other connected devices
and management systems.

Sensors are crucial to the operation of many of today’s businesses. They can warn you of potential
problems before they become big problems, allowing businesses to perform predictive maintenance
and avoid costly downtime. The data from sensors can also be analyzed for trends allowing business
owners to gain insight into crucial trends and make informed evidence-based decisions.

Sensors come in many shapes and sizes. Some are purpose-built containing many built-in individual
sensors, allowing you to monitor and measure many sources of data. In brownfield environments, it’s
key for sensors to include digital and analog inputs so that they can read data from legacy sensors.

Temperature sensors
By definition, “A device, used to measure amount of heat energy that allows to detect a physical
change in temperature from a particular source and converts the data for a device or user, is known as
a Temperature Sensor.”
Only a couple of years ago, their uses mostly included A/C control, refrigerators and similar devices
used for environmental control. However, with the advent of the IoT world, they have found their role
in manufacturing processes, agriculture and health industry.
In the manufacturing process, many machines require specific environment temperature, as well as
device temperature. With this kind of measurement, the manufacturing process can always remain
optimal.
Followed are some sub-categories of Temp Sensors:
 Thermocouples: These are voltage devices that indicate temperature measuring with a change
in voltage. As temperature goes up, the output voltage of the thermocouple rises.
 Resistor temperature detectors (RTD): The resistance of the device is directly proportional to
the temperature, increase in a positive direction when the temperature rises resistance going
up.
 Thermistors: It is a temperature sensitive resistor that changes its physical resistance with the
change in temperature.
 IC (Semiconductor): They are linear devices where the conductivity of the semiconductor
increases linearly and it takes advantage of the variable resistance properties of
semiconductor materials. It can provide a direct temperature reading in digital form,
especially at low temperatures.
 Infrared sensors: It detects temperature by intercepting a portion of emitted infrared energy of
the object or substance, and sensing its intensity, can be used to measure temperature of solids
and liquids only, not possible to use it on gases because of their transparent nature.
Proximity sensor
A device that detects the presence or absence of a nearby object, or properties of that object, and
converts it into signal which can be easily read by user or a simple electronic instrument without
getting in contact with them.
Proximity sensors are largely used in the retail industry, as they can detect motion and the correlation
between the customer and product they might be interested in. A user is immediately notified of
discounts and special offers of nearby products.
Another big and quite an old use-case is vehicles. You are reversing your car and are alrmed about an
obstacle while taking reverse, that’s the work of proximity sensor.
They are also used for parking availability in places such as malls, stadiums or airports.
Following are some of the Proximity Sensors sub-categorised:
 Inductive Sensors: Inductive proximity sensors are used for non-contact detection to find out
the presence of metallic objects using electromagnetic field or a beam of electromagnetic
radiation. It can operate at higher speeds than mechanical switches and also seems more
reliable because of its robustness.
 Capacitive Sensors: Capacitive proximity sensors can detect both metallic as well as non-
metallic targets. Nearly all other materials are dielectric different from air. It can be used to
sense very small objects through a large portion of target. So, generally used in difficult and
complicated applications.
 Photoelectric Sensors: Photoelectric sensor is made up of light-sensitive parts and uses a
beam of light to detect the presence or absence of an object. It is an ideal alternative of
inductive sensors. And used for long distance sensing or to sense non-metal object.
 Ultrasonic Sensors: Ultrasonic sensors are also used to detect the presence or to measure the
distance of targets similar to radar or sonar. This makes a reliable solution for harsh and
demanding conditions.
Pressure sensor
A pressure sensor is a device that senses pressure and converts it into an electric signal. Here, the
amount depends upon the level of pressure applied.
There are plenty of devices that rely on liquid or other forms of pressure. These sensors make it
possible to create IoT systems that monitor systems and devices that are pressure propelled. With any
deviation from standard pressure range, the device notifies the system administrator about any
problems that should be fixed.
Water quality sensor
Water quality sensors are used to detect the water quality and Ion monitoring primarily in water
distribution systems.
Water is practically used everywhere. These sensors play an important role as they monitor the quality
of water for different purposes. They are used in a variety of industries.
Following is a list of the most common kind of water sensors in use:
 Chlorine Residual Sensor: It measures chlorine residual (i.e. free chlorine, monochloramine &
total chlorine) in water and most widely used as disinfectant because of its efficiency.
 Total Organic Carbon Sensor: TOC sensor is used to measure organic element in water.
 Turbidity Sensor: Turbidity sensors measure suspended solids in water, typically it is used in
river and stream gaging, wastewater and effluent measurement.
 Conductivity Sensor: Conductivity measurements are carried out in industrial processes
primarily to obtain information on total ionic concentrations (i.e. dissolved compounds) in
water solutions.
 pH Sensor: It is used to measure the pH level in the dissolved water, which indicates how
acidic or basic (alkaline) it is.
 Oxygen-Reduction Potential Sensor: The ORP measurement provides insights into the level
of oxidation/reduction reactions occurring in the solution.
Chemical sensor
Chemical sensors are applied in a number of different industries. Their goal is to indicate changes in
liquid or to find out air chemical changes. They play an important role in bigger cities, where it is
necessary to track changes and protect the population.
Main use cases of chemical sensors can be found in Industrial environmental monitoring and process
control, intentionally or accidentally released harmful chemical detection, explosive and radioactive
detection, recycling processes on Space Station, pharma industries and laboratory etc.
Following are most common kind of chemical sensors in use:
 Chemical field-effect transistor
 Chemiresistor
 Electrochemical gas sensor
 Fluorescent chloride sensor
 Hydrogen sulfide sensor
 Nondispersive infrared sensor
 pH glass electrode
 Potentiometric sensor
 Zinc oxide nanorod sensor
Gas sensor
Gas sensors are similar to the chemical ones, but are specifically used to monitor changes of the air
quality and detect the presence of various gases. Like chemical sensors, they are used in numerous
industries such as manufacturing, agriculture and health and used for air quality monitoring, detection
of toxic or combustible gas, hazardous gas monitoring in coal mines, oil & gas industries, chemical
laboratory research, manufacturing – paints, plastics, rubber, pharmaceutical & petrochemical etc.
Following are some common Gas sensors:
 Carbon dioxide sensor
 Carbon monoxide detector
 Catalytic bead sensor
 Hydrogen sensor
 Air pollution sensor
 Nitrogen oxide sensor
 Oxygen sensor
Smoke sensor
A smoke sensor is a device that senses smoke (airborne particulates & gases), and its level.
They have been in use for a long period of time. However, with the development of IoT, they are now
even more effective, as they are plugged into a system that immediately notifies the user about any
problem that occurs in different industries.
Smoke sensors are extensively used by manufacturing industry, HVAC, buildings and
accommodation infra to detect fire and gas incidences. This serves to protect people working in
dangerous environments, as the whole system is much more effective in comparison to the older ones.
Common Type of Smoke Sensors
 Optical smoke sensor (Photoelectric): Optical smoke sensor used the light scatter principle
trigger to occupants.
 Ionization smoke sensor: Ionization smoke sensor works on the principle of ionization, kind
of chemistry to detect molecules causing a trigger alarm.
IR sensors
An infrared sensor is a sensor which is used to sense certain characteristics of its surroundings by
either emitting or detecting infrared radiation. It is also capable of measuring the heat being emitted
by the objects.
They are now used in a variety of IoT projects, especially in Healthcare as they make monitoring of
blood flow and blood pressure simple. They are even used in a wide array of regular smart devices
such as smartwatches and smartphones as well.
Other common use includes home appliances & remote control, breath analysis, Infrared vision (i.e.
visualize heat leaks in electronics, monitor blood flow, art historians to see under layers of paint),
wearable electronics, optical communication, non-contact based temperature measurements,
automotive blind-angle detection.
Level sensors
A sensor which is used to determine the level or amount of fluids, liquids or other substances that
flow in an open or closed system is called Level sensor.
Like IR sensors, level sensors are present in a wide array of industries. They are primarily known for
measuring fuel levels, but they are also used in businesses that work with liquid materials. For
example, the recycling industry, as well as the juice and alcohol industry rely on these sensors to
measure the number of liquid assets in their possession.
There are two basic level measurement types:
 Point level sensors: Point level sensors usually detect the particular specific level and respond
to the user if the sensing object is above or below that level. It is integrated into single device
to get an alarm or trigger
 Continuous level Sensor: Continuous level sensors measure liquid or dry material levels
within a specified range and provide outputs which continuously indicate the level. The best
example of it is fuel level display in the vehicle.
Image sensors
Image sensors are instruments which are used to convert optical images into electronic signals for
displaying or storing files electronically.
The major use of image sensor is found in digital camera & modules, medical imaging and night
vision equipment, thermal imaging devices, radar, sonar, media house, Biometric & IRIS devices.
Two main types of sensors are used in:
 CCD (charge-coupled device), and
 CMOS (complementary metal-oxide semiconductor) imagers.
Although each type of sensor uses different technology to capture images, both CCD and CMOS
imagers use metal-oxide semiconductors, having the same degree of sensitivity to light, and no
inherent quality difference
Motion detection sensors
A motion detector is an electronic device which is used to detect the physical movement (motion) in a
given area and it transforms motion into an electric signal; motion of any object or motion of human
beings
These are primarily used for intrusion detection systems, automatics door control, boom barrier, smart
camera (i.e motion based capture/video recording),toll plaza, automatic parking systems, automated
sinks/toilet flusher, hand dryers, energy management systems(i.e. Automated Lighting, AC, Fan,
Appliances Control) etc.
Following are key motion sensor types widely used:
 Passive Infrared (PIR): It Detects body heat (infrared energy) and the most widely used
motion sensor in home security systems.
 Ultrasonic: Sends out pulses of ultrasonic waves and measures the reflection off a moving
object by tracking the speed of sound waves.
 Microwave: Sends out radio wave pulses and measures the reflection off a moving object.
They cover a larger area than infrared & ultrasonic sensors, but they are vulnerable to
electrical interference and more expensive.
Accelerometer sensors
Accelerometer is a transducer that is used to measure the physical or measurable acceleration
experienced by an object due to inertial forces and converts the mechanical motion into an electrical
output. It is defined as rate of change of velocity with respect to time
These sensors are now present in millions of devices, such as smartphones. Their uses involve
detection of vibrations, tilting and acceleration in general. This is great for monitoring your driving
fleet, or using a smart pedometer.
In some instances, it is used as a form of anti-theft protection, as the sensor can send an alert through
the system if an object that should remain stationary is moved.
There are various kinds of accelerometers and following are few mainly used in IoT projects:
 Hall-effect accelerometers: Hall-effect accelerometers are using Hall principle to measure the
acceleration, it measures the voltage variations caused by changes in a magnetic field around
them.
 Capacitive accelerometers: Capacitive accelerometers sensing output voltage dependents on
the distance between two planar surfaces. Capacitive accelerometers are also less prone to
noise and variation with temperature.
 Piezoelectric accelerometers: Piezoelectric sensing principle is working on the piezoelectric
effect. Piezo-film based accelerometers are best used to measure vibration, shock, and
pressure.
Gyroscope sensors
A sensor or device which is used to measure the angular rate or angular velocity is known as Gyro
sensors, Angular velocity is simply defined as a measurement of speed of rotation around an axis. It is
a device used primarily for navigation and measurement of angular and rotational velocity in 3-axis
directions. The most important application is monitoring the orientation of an object.
There are several different kinds of gyro sensors which are selected by their working mechanism,
output type, power, sensing range and environmental conditions.
 Rotary (classical) gyroscopes
 Vibrating Structure Gyroscope
 Optical Gyroscopes
 MEMS (micro-electro-mechanical systems) Gyroscopes
Humidity sensors
Humidity is defined as the amount of water vapour in an atmosphere of air or other gases. The most
commonly used terms are “Relative Humidity (RH)
Their applications and use can be found in Industrial & residential domain for heating, ventilating,
and air conditioning systems control. They can also be found in Automotive, museums, industrial
spaces and greenhouses, meteorology stations, Paint and coatings industries, hospitals & pharma
industries to protect medicines
Optical sensors
A sensor which measures the physical quantity of light rays and convert it into electrical signal which
can be easily readable by user or an electronic instrument/device is called optical sensor.
Optical sensors are loved by IoT experts, as they are practical for measuring different things
simultaneously. The technology behind this sensor allows it to monitor electromagnetic energy, which
includes, electricity, light and so on.
Following are key type of optical sensors:
 Photodetector: It uses light sensitive semiconductor materials like photocells,photodiodes or
phototransistors to work as photodetector
 Fiber Optics: Fibers optics carry no current, So its immune to electrical & electromagnetics
interference and even in damaged condition no sparking or shock hazard happens.
 Pyrometer: It estimates the temperature of an object by sensing the color of the light and
Objects radiate light according to their temperature and produce same colors at same
temperature.
 Proximity & Infrared: Proximity use light to sense objects nearby and Infrared are used where
visible light would be inconvenient.

Structure of IoT

IoT system architecture is often described as a four-stage process in which data flows from sensors
attached to “things” through a network and eventually on to a corporate data center or the cloud for
processing, analysis and storage.

In the Internet of Things, a “thing” could be a machine, a building or even a person. Processes in the
IoT architecture also send data in the other direction in the form of instructions or commands that tell
an actuator or other physically connected device to take some action to control a physical process. An
actuator could do something as simple as turning on a light or as consequential as shutting down an
assembly line if impending failure is detected.

STAGE 1: Sensors and Actuators

The process starts with sensors and actuators, the connected devices that monitor (in the case of
sensors) or control (in the case of actuators) some “thing” or physical process. Sensors capture data
regarding the status of a process or an environmental condition, such as temperature, humidity,
chemical composition, fluid levels in a tank, fluid flow in a pipe, or the speed of an assembly line as
well as much more.

In some cases, a sensor might detect a condition or event that requires an almost immediate response
so that an actuator can perform remediation actions in real time, for example, adjusting the flow rate
of a fluid, or the movements of an industrial robot. In these situations, very low latency between the
sensor and analysis/triggered actuator is required.

STAGE 2: Internet Gateways and Data Acquisition Systems

A data acquisition system (DAS) collects raw data from the sensors and converts it from analog into
digital format. The DAS then aggregates and formats the data before sending it through an Internet
gateway via wireless WANs (such as Wi-Fi or Cellular) or wired WANs for the next stage of
processing.

At this point, the volume of data is at its maximum. The quantities can be huge, especially, for
example, in a factory setting where hundreds of sensors may be gathering data simultaneously. For
that reason, the data is also filtered and compressed to an optimum size for transmission.

STAGE 3: Pre-processing: Analytics at the Edge


Once the IoT data has been digitized and aggregated, it will need processing to further reduce the data
volume before it goes to the data center or cloud. The edge device may perform some analytics as part
of the pre-processing. Machine learning can be very helpful at this stage to provide feedback into the
system and improve the process on an ongoing basis, without waiting for instructions to come back
from the corporate data center or cloud. Processing of this type will generally take place on a device
in a location close to where the sensors reside, such as in an on-site wiring closet.
STAGE 4: In-depth Analysis in the Cloud or Data Center
At Stage 4 in the process, powerful IT systems can be brought to bear to analyze, manage, and
securely store the data. This usually takes place in the corporate data center or in the cloud, where
data from multiple field sites/sensors can be combined to provide a broader picture of the overall IoT
system and deliver actionable insights to both IT and business managers. A company may have
operations in different geographies and IoT data can be analyzed to identify key trends and patterns,
or to spot anomalies.

At this level, industry-specific and/or company-specific applications can be used to perform in-depth
analysis and apply business rules to determine whether action needs to be taken. The incoming data
may indicate desirable changes to device settings or other ways to optimize the process, forming a
loop that facilitates constant improvement. Stage 4 also includes storage in a data warehouse, both for
record keeping and for further analysis.
The Five Layers of IoT Architecture
IoT architecture can be explained in either three or five layers. Many agree that the three-layer model
is simple to understand but leaves out some key details regarding how the data is used. Below is a
breakdown of each layer, what it does, and why it’s important.
Perception
The perception layer represents the physical IoT devices themselves. This can include health
monitors, lighting systems, autonomous vehicles, robotics, and security systems. Each IoT device
collects data that requires processing.
IoT sensors are inexpensive and can collect hundreds of different data points for processing. The data
collected will vary depending on the goals of the organization. For example, agricultural IoT devices
can record atmospheric data, moisture levels, solid temperature, and airflow to improve crop yield and
revenue.
Transport
The transport layer is responsible for sending collected data to the cloud or edge device for
processing. The transport layer relies on internet gateways to move data from the physical perception
layer into the processing phase.
There are a few different technologies system admins can use during this stage:
 Cellular 4G LTE / 5G
 Wi-Fi
 Bluetooth
 Low-Power Wide-Area Networks
Administrators can design their IoT architecture with a mix and match of transport protocols.
Ultimately the transport protocol you use should be able to reliably support data from the sensor to the
closest internet gateway. We cover this concept in more detail in our IoT connectivity article.
Processing
Once the data reaches the cloud or edge device the server can transform this data into information.
Modern IoT architectures leverage machine learning and artificial intelligence that create value by
analyzing this data.
For example, if an IoT sensor is recording a high fluctuation in temperature, artificial intelligence can
alert to this anomaly by monitoring the current temperature compared to its baseline. In this case, the
server might be able to send a command to an HVAC unit to lower the temperature and resolve the
issue.
Application
Processing typically occurs without human intervention, but humans still need to tell the server what
to do when certain rules are met or thresholds are broken. The application layer is where
administrators manage IoT device orchestration, create rule sets, and set service-level agreements for
their IoT architecture.
If you’ve ever used an app to turn your lights on at home, you’ve used the application layer to do so.
Reliable IoT architectures use the application layer to control and manage their networks from a
centralized dashboard. This centralization reduces complexity, especially in enterprise IoT networks,
which in turn improves efficiency and security.
Business
Finally, we arrive at the business layer, where information is transformed into business intelligence
that drives decision-making. Stakeholders and executives can use the insights collected at the
application layer to make better business decisions.
The business layer typically relies on reports and live dashboards for business intelligence.
Information collected from the application layer can be enriched further at this level through other
integrations. For example, business intelligence analysts can correlate cost savings based on
electricity consumption before and after smart lighting sensors were installed.
IoT Map Device

Map schema to support privacy mediation using cloud. The schema consists of three high-level
entities: unique identifier, meta, and domains. The meta objects consist of the global description of the
map including its temporal validity (in the form of start and expiration dates), the publication date of
the map and its version. The domains object consists of a list of active areas of data capture that are
owned by the same entity (e.g. a commercial organisation). Domains provide the name of the
organisation, the API end-point for privacy mediation requests at the organisational level, and a list of
data capture zones in which sensors and devices can capture potentially privacy invasive data. Each
data capture zone consists of lists of regions, trigger zones and capabilities.

Regions specify the geographical locations or boundaries of the space in which data capture is taking
place. Such locations can be described, for example, by specifying circular regions (latitude, longitude
and radius) or proximity-based locations (based on Bluetooth Low Energy beacons). Trigger zones
represent descriptions of monitored areas which, when entered by the user, trigger an immediate
notification to the backend system. Similar to regions, trigger zones can be described using geo-fences
or proximity-based location descriptions. Capability objects define the available mediation services of
the data capture zone, such as audio and video processors in the context of smart meeting rooms.

Each capability is described by a universally unique identifier object, a human-readable name, and a
list of supported cloudlet applications – in this case representing privacy mediators. Each cloudlet
application consists of an object that defines the application programming interfaces used to notify the
service of the user’s presence in the data capture area (callback_url), a URL to the user-facing
configuration interface, and a set of additional metadata objects including the name of the cloudlet
application, an icon and a URL to the homepage.

We note that whilst we aimed that our proposed map schema can be reused in different domains, a
generalised schema that goes beyond the support of privacy mediation leads to a number of challenges
that need to be considered.

2D vs 3D. Maps have traditionally represented two dimensional top down perspectives of the world
with some extensions in recent years to support the three-dimensional modelling of structures in
prominent cities. With the increased popularity of indoor mapping and tracking, we will likely see a
growing demand to model more complex structures. In our proposed map schema, we currently
follow a two-dimensional approach, ignoring the altitude of active regions and trigger zones.
Supporting three-dimensional models of the world introduces challenges regarding representation,
visualisation and interaction. We note that some of these challenges, however, have been addressed
with systems such as Building Information Modelling (BIM) that are designed to provide digital
representations of places and structures for planning and construction.

Access Control. Our map schema assumes that users have full access to the data stored within the
map. However, in some cases certain sections of a map may be considered confidential and may
require access restrictions. Supporting such access control will likely add a new layer of complexity to
the map schema definition in order to supply detailed information on access permissions for
individual users or groups. We note that initial work has been carried out to incorporate security
features

Moving Objects. Traditionally, mapping has been used to represent stationary devices and structures
such as buildings and sensors embedded in the environment. However, modern IoT devices are often
mobile and move frequently within and across spaces (e.g. wearable IoT sensors). The challenges for
representing moving objects within a map lie particularly in the processes to maintain and report
frequent location updates
Indoor vs. Outdoor. While outdoor mapping and location tracking is well established, indoor
location tracking is an active area of research and imposes a number of challenges regarding
reliability and accuracy of location tracking techniques. Researchers have already worked on utilising
existing Wi-Fi infrastructure to support indoor location tracking and on improving the accuracy of
such tracking techniques. However, in order to support commercial-grade applications, the wide
deployment and adoption of accurate indoor location tracking techniques and appropriate maps of IoT
devices that are situated indoors will become an important challenge in future

Single Common Map vs. Bespoke Maps. Our example schema was mostly being spoke to our
systems with attempts at generalisation. It is unclear if a ‘one map fits all’ approach is desirable, or
even possible in the context of mapping ‘the IoT’. However, designing bespoke map schemas would
likely lead to a large number of heterogeneous maps that become unusable beyond their original
context – or incur a heavy cost to be integrated into other contexts. We note that the set of challenges
presented is not exhaustive and that a number of other challenges are likely to emerge as more
research is conducted regarding the design and implementation of generalizable mapping schemas –
potentially leading to new IoT mapping standards.

POPULATING MAPS

The population and maintenance of maps is a further challenge in our proposed approach. Maps can
be populated from three key sources: (i) authorities, (ii) ordinary users, and (iii) data provided by
infrastructures. Based on these available sources, we provide a set of example population techniques
that can be applied in order to create and maintain maps of the IoT.

Authoritative. The obvious solution is to employ an authority (e.g. system administrator or owners of
spaces) that collects and supplies information about available IoT devices. The main advantage is that
the map is likely to have a high accuracy, and capabilities of the devices can be easily identified. The
main drawback is that the collection of required information can be laborious, particularly if large IoT
deployments have to be mapped from scratch. Additionally, IoT devices present in the same space
may be owned by distinct authorities, leading to only partially complete IoT maps of spaces.
Nevertheless, authoritative maps are likely to serve as starting points for IoT maps, but should not be
interpreted as absolute ground truths.

Crowdsourcing. In the crowdsourcing approach, a number of regular users provide the necessary
data to create maps, akin to OpenStreetMap. This reduces the burden of a dedicated party responsible
for populating a map. However, information quality is likely to decrease as users may not be aware of
the device capabilities and exact locations. Similarly, coverage may suffer as users fail to identify all
relevant devices. The usefulness of crowdsourced information can be potentially increased using a
two-phased approach where the information provided by users is verified in a second phase conducted
by domain experts or through automated analysis.

Infrastructure Sensing. The population of a map can also be delegated to the infrastructure itself.
For example, analysis of electric signals has been used to identify home appliances and network
traffic signatures have been used to identify IoT devices in a specific administrative network
removing the need for human effort. However, the underlying sensing techniques may not generalise
sufficiently across diverse environments and provide only limited device information.

Opportunistic Crowdsensing. Opportunistic crowdsensing can be seen as a halfway point between


user- and system-generated maps. The idea is to use sensors available on mobile devices to identify
IoT devices as users navigate across spaces. For example, magnetometers are capable to identify
signatures of specific displays and could be used to detect other IoT sensing devices. However, this
approach would also identify non-IoT devices, such as elevators or ticketing machines, i.e. leading to
noisy results. Additionally, the signatures of devices would depend on the orientation of the
magnetometer relative to the device. Discovered devices can then be associated with locations either
by the user manually supplying the location.
IoT System Management with NETCONF-YANG

Network Configuration Protocol (NETCONF) is a session-based network management protocol.


NETCONF allows retrieving state or configuration data and manipulating configuration data on
network devices.

 Management System
 Management API
 Transaction Manager
 Rollback Manager
 Data Model Manager
 Configuration Validator
 Configuration Database
 Configuration API
 Data Provider API

NETCONF

 NETCONF works on SSH transport protocol.


 Transport layer provides end-to-end connectivity and ensure reliable delivery of messages.
 NETCONF uses XML-encoded Remote Procedure Calls (RPCs) for framing request
andresponse messages.
 The RPC layer provides mechanism for encoding of RPC calls and notifications.
 NETCONF provides various operations to retrieve and edit configuration data from network
devices.
 The Content Layer consists of configuration and state data which is XML-encoded.
 The schema of the configuration and state data is defined in a data modelling language called
YANG.
 NETCONF provides a clear separation of the configuration and state data. • The configuration
data resides within a NETCONF configuration data store on the server.

YANG

 YANG is a data modelling language used to model configuration and state data manipulated
by the NETCONF protocol.
 YANG modules contain the definitions of the configuration data, state data, RPC calls that
can be issued and the format of the notifications.
 YANG modules defines the data exchanged between the NETCONF client and server.
 A module comprises of a number of 'leaf' nodes which are organized into structure.
 The 'leaf' nodes are specified using the 'leaf' or 'leaf-list' constructs.
 Leaf nodes are organized using 'container' or 'list' constructs.
 A YANG module can import definitions from other modules.
 Constraints can be defined on the data nodes, e.g. allowed values.
 YANG can model both configuration data and state data using the 'config' statement

YANG Module Example

 This YANG module is a YANG version of the toaster MIB.


 The toaster YANG module begins with the header information followed by identity
declarations which define various bread types.
 The leaf nodes (‘toasterManufacturer’ , ‘toasterModelNumber’ and oasterStatus’) are defined
in the ‘toaster’ container.
 Each leaf node definition has a type and optionally a description and default value.
 The module has two RPC definitions (‘make-toast’ and ‘cancel-toast’)
UNIT II IoT ARCHITECTURE, GENERATIONS AND PROTOCOLS
IETF architecture for IoT

 6LoWPAN (IPv6 over Low-power WPAN), CoRE (Constrained RESTfuEnvironments), and


ROLL (Routing Over Low power and Lossy networks).
 Each set of specifications makes an attempt to address a different part of the communication
stack of a constrained device.
 One layer called Application Support which includes the Presentation and Session Layers
combined. one intermediate layer is introduced the Adaptation Layer
 It positioned between the Physical/Data Link and the Network Layer and whose main
function is to adapt the Network Layer packets to Phy/Link layer packets among others.
 An example of an adaptation layer is the 6LoWPAN layer designed to adapt IPv6 packets to
IEEE 8021.5.4/Bluetooth Low Energy (BLE)/DECT Low Energy packets.
 An example of an Application Support Layer is IETF Constrained Application Protocol
(CoAP), which provides reliability and RESTful operation support to applications; however,
it does not describe the specific names of resources a node should host.
 A CoAP server is just a logical protocol entity, and the name “server” does not necessarily
imply that its functionality is deployed on a very powerful machine; a CoAP server can be
hosted on a constrained device.
 The CoRE Link Format specification describes a discovery method for the CoAP resources of
a CoAP server.
 For example, a CoAP client sending a request with the GET method to a specific well defined
server resource (./well-known/core) should receive a response with a list of CoAP resources
and some of their capabilities (e.g. resource type, interface type).
 The CoRE interface specification describes interface types and corresponding expected
behavior of the RESTful methods.
 The IETF stack for IoT does not currently include any specifications that are similar to the
profile specifications of other IoT technologies such as ZigBee.
 Profile specification means a document that describes a list of profile names and their
mappings to specific protocol stack behavior, specific information model, and specific
serialization of this information model over the relevant communication medium.
 An example of a profile specification excerpt would mandate that an exemplary
“Temperature” profile:
(a) should support a resource called /temp,
(b) the resource /temp must respond to a GET method request from a client, and
(c) the response to a GET method request shall be a temperature value in degrees Celsius
formatted as a text string with the format “temperature value encoded in a decimal number C”
 A Resource Directory is a CoAP server resource (/rd) that maintains a list of resources, their
corresponding server contact information (e.g. IP addresses or fully qualified domain name,
or FQDN), their type, interface, and other information similar to the information that the
CoRE Link Format document specifies.

 An RD plays the role of a rendezvous mechanism for CoAP Server resource descriptions,
in other words, for devices to publish the descriptions of the available resources and for
CoAP clients to locate resources that satisfy certain criteria such as specific resource
types. (e.g. temperature sensor resource type).
 Resource Directory is a rendezvous mechanism for CoAP Server resource descriptions, a
Mirror Server is a rendezvous mechanism for CoAP Server resource presentations.
 A Mirror Server is a CoAP Server resource (/ms) that maintains a list of resources and their
cached representations (Figure 6.8b).
 The original CoAP Server updates the mirror representation either periodically or when the
representation changes.
 A CoAP Client that retrieves the mirror representation receives the latest updated
representation from the original CoAP Server. The Mirror Server is useful when the CoAP
Server is not always available for direct access.
 An example of such a CoAP Server is one that resides on a real device whose
communication capabilities are turned off in order to preserve energy, e.g. battery powered
radio devices whose radio and/or processor goes to sleep mode.
 Typically, a Mirror Server is hosted on a device or machine that is always available.
 The IETF CoRE workgroup has included the fundamentals of a mapping process between
HTTP and CoAP in the IETF CoAP specification as well as a set of guidelines for the
interworking between HTTP and CoAP.
 The main is the different transport protocols used by the HTTP and CoAP: HTTP uses TCP
while CoAP uses UDP.
 HTTP Client sends an HTTP request to a CoAP server (Figure 6.9a) through a Gateway
Device hosting an HTTP-CoAP Cross Proxy.
 The Gateway Device connects to the Internet via an Ethernet cable using a LAN, and on
the CoAP side the CoAP server resides on a Sensor/Actuator (SAN) based on the IEEE
802.15.4 PHY/MAC.
 The HTTP request needs to include two addresses, one for reaching the Cross Proxy and one
for reaching the specific CoAP Server in the SAN.
 The request is in plain text format and contains the method (GET). It traverses the IPv4 stack
of the client, reaches the gateway, traverses the IPv4 stack of the gateway and
reaches the Cross proxy.
 The request is translated to a CoAP request (binary format) with a destination CoAP resource
coap://s.coap.example.com/foo, and it is dispatched in the CoAP stack of the
gateway, which sends it over the SAN to the end device.
 A response is sent from the end device and follows the reverse path in the SAN in order to
reach the gateway.
 The Cross proxy translates the CoAP response code to the corresponding HTTP code,
transforms the included media, creates the HTTP response, and dispatches it to the HTTP
client.

IoT reference architecture

The Reference Architecture is a starting point for generating concrete architectures and actual
systems. A concrete architecture addresses the concerns of multiple stakeholders of the actual system,
and it is typically presented as a series of views that address different stake-holder concerns. Views
are useful for reducing the complexity of the Reference Architecture blueprints by addressing
groups the concerns of one group at a time.

Views
The stakeholders for a concrete IoT system are the people who use the system (Human Users); the
people who design, build, and test the Resources, Services, Active Digital Artifacts, and Applications;
The people who deploy Devices and attach them to Physical Entities. the people who integrate IoT
capabilities of functions with an existing ICT system (e.g. of an enterprise).

The people who operate, maintain, and troubleshoot the Physical and Virtual Infrastructure. The
people who buy and own an IoT system or parts thereof In order to address the concerns of mainly the
concrete IoT architect, and secondly the concerns of most of the above stakeholders, the Reference
Architecture is presented as a set of architectural views
 Functional View: Description of what the system does, and its main functions.
 Information View: Description of the data and information that the system handles.
 Deployment and Operational View: Description of the main real world components of the
system such as devices, network routers, servers, etc.
IoT Functional View

Device and Application functional group


Device FG contains the Sensing, Actuation, Tag, Processing, Storage FCs, or simply components.
These components represent the resources of the device attached to the Physical Entities of interest.
The Application FG contains either standalone applications (e.g. for iOS, Android, Windows phone),
or Business Applications that connect the IoT system to an Enterprise system.
Communication functional group
The Communication FG contains the End-to-End Communication, Network Communication, and
Hopby-Hop communication components. The Hop-by-Hop Communication is applicable in the case
that devices are equipped with mesh radio networking technologies such as IEEE 802.15.4 for which
messages have to traverse the mesh from nodeto-node (hop-by-hop) until they reach a gateway node
which forwards the message (if needed) further to the Internet.
Network FC
The Network FC is responsible for message routing & forwarding and the necessary translations of
various identifiers and addresses.
(a) between network layer identifiers to MAC and/or physical network identifiers.
(b) between high-level human readable host/node identifiers to network layer addresses (e.g. Fully
Qualified Domain Names (FQDN) to IP addresses, a function implemented by a Domain Name
System (DNS) server).
(c) translation between node/service identifiers and network locators in case the higher layers above
the networking layer use node or service identifiers that are decoupled from the node addresses in the
network (e.g. Host Identity Protocol)
Virtual Entity functional group
The Virtual Entity FG contains functions that support the interactions between Users and Physical
Things through Virtual Entity services. An example of such an interaction is the query to an IoT
system of the form, “What is the temperature in the conference room Titan?” The Virtual Entity is the
conference room “Titan,” and the conference room attribute of interest is “temperature.”
The Virtual Entity Service FC enables the interaction between Users and Virtual Entities by means of
reading and writing the Virtual Entity attributes (simple or complex), which can be read or written.
The Virtual Entity Registry FC maintains the Virtual Entities of interest for the specific IoT system
and their associations. The component offers services such as creating/reading/updating/deleting
Virtual Entity descriptions and associations.
Information view
The information view consists of
(a) the description of the information handled in the IoT System.
(b) the way this information is handled in the system; in other words, the information lifecycle and
flow (how information is created, processed, and deleted), and the information handling components.
The pieces of information handled by an IoT system it can be Virtual Entity context information, i.e.
the attributes (simple or complex) as represented by parts of the IoT Information model. IoT Service
output itself is another important part of information generated by an IoT system.
Information flow and lifecycle
On a high level, the flow of information in an IoT system follows two main directions. From devices
that produce information such as sensors and tags, information follows a context-enrichment process
until it reaches the consumer application or part of the larger system, and from the application or part
of a larger system information it follows a context reduction process until it reaches the consumer
types of devices.
The enrichment process is shown in Figure. Devices equipped with sensors transform changes in the
physical properties of the Physical Entities of Interest into electrical signals. These electrical signals
are transformed in one or multiple values on the device level. These values are then enriched with
metadata information such as units of measurement, timestamp, and possibly location information.
At this point, the information is annotated with simple attributes such as location and time, and often
this type of metadata is sufficient for certain IoT applications or for the use in certain larger systems.
Information Handling
Push: An FC A pushes the information to another FC B provided that the contact information of the
component B is already configured in component A, and component B listens for such information
pushes.
Request/Response: An FC A sends a request to another FC B and receives a response from B after A
serves the request.
Subscribe/Notify: Multiple subscriber components (S A, S B ) can subscribe for information to a
component C, and C will notify the relevant subscribers when the requested information is ready

Publish/Subscribe: In the Publish/Subscribe (also known as a Pub/Sub pattern), there is a third


component called the broker B, which mediates subscription and publications between subscribers
(information consumers) and publishers (or information producers).
Deployment and Operational View
Devices that form networks in the M2M Area Network domain must be selected, or designed, with
certain functionality in mind. At a minimum, they must have an energy source (e.g. batteries,
increasingly EH), computational capability (e.g. an MCU), appropriate communications interface (e.g.
a Radio Frequency Integrated Circuit (RFIC) and front end RF circuitry), memory (program and
data), and sensing (and/or actuation) capability. These must be integrated in such a way that the
functional requirements of the desired application can be satisfied.
The physical environment has an implication on the communications technologies selected and the
reliability of the system in operation thereafter. Devices must be placed in close enough proximity to
communicate. Where the distance is too great, routing devices may be necessary. Devices may
become intermittently disconnected due to the time varying, stochastic nature of the wireless medium.
Certain environments may be fundamentally more suited to wireless propagation than others.

First Generation
The world’s first IoT device was invented in the early 1980s at the Carnegie Melon University. A
group of students from the university created a way to get their campus Coca-Cola vending machine
to report on its contents through a network in order to save them the trek if the machine was out of
Coke. They installed micro-switches into the machine to report on how many Coke cans were
available and if they were cold.
The concept of a network of smart devices was discussed as early as 1982, with a modified Coke
machine at Carnegie Mellon University (a BCC member!) becoming the first internet-connected
appliance. Through the 1990s, a series of papers were published in various academic journals. The
concept of the IoT first became popular in 1999, through the Auto-ID Center at MIT (another BCC
member!) and related market-analysis publications.
In 1990, John Romkey connected a toaster to the internet for the first time. A year later, a group of
students at the University of Cambridge used a web camera to report on coffee. They came up with
the idea to use the first web camera prototype to monitor the amount of coffee available in their
computer labs coffee pot. They did this by programming the web camera to take photos three times a
minute of the coffee pot. The photos were then sent to local computers so everyone could see if there
was coffee available.
The Internet of Things was a common topic used by the media at the beginning of the 21st Century
with several major developments paving the way for the future of IoT. LG Electronics introduced the
world’s first refrigerator connected to the internet in 2000. Allowing consumers to do their food
shopping online and make video calls.
IoT Description & Characteristics
IoT Description
The IoT can be defined in two ways based on
• existing Technology
• Infrastructure
Definition of IoT based on existing technology:
IoT is a new revolution to the internet due to the advancement in sensor networks, mobile devices,
wireless communication, networking and cloud technologies.
Definition of IoT based on infrastructure:
IoT is a dynamic global network infrastructure of physical and virtual objects having unique
identities, which are embedded with software, sensors, actuators, electronic and network connectivity
to facilitate intelligent applications by collecting and exchanging data.
Characteristics of IoT
Various characteristics of IoT are:
Dynamic and self-adapting: The IoT devices can dynamically adapt with sensed environment, their
operating conditions, and user’s context and take actions accordingly. For ex: Surveillance System.
Self-configuring: IoT devices can be able to upgrade the software with minimal intervention of user,
whenever they are connected to the internet. They can also setup the network i.e a new device can be
easily added to the existing network. For ex: Whenever there will be free wifi access one device can
be connected easily.
Interoperable Communication: IoT allows different devices (different in architecture) to
communicate with each other as well as with different network. For ex: MI Phone is able to control
the smart AC and smart TV of different manufacturer.
Unique identities: The devices which are connected to the internet have unique identities i.e IP
address through which they can be identified throughout the network. The IoT devices have intelligent
interfaces which allow communicating with users. It adapts to the environmental contexts. III. It also
allows the user to query the devices, monitor their status, and control them remotely, in association
with the control, configuration and management infrastructure.
Integrated into information network: The IoT devices are connected to the network to share some
information with other connected devices. The devices can be discovered dynamically in the network
by other devices. For ex. If a device has wifi connectivity, then that will be shown to other nearby
devices having wifi connectivity. The devices ssid will be visible though out the network. Due to
these things the network is also called as information network. For Ex: weather monitoring system.
Connectivity: Connectivity is an important requirement of the IoT infrastructure. Things of IoT
should be connected to the IoT infrastructure. Anyone, anywhere, anytime can connect, this should be
guaranteed at all times. For example, connection between people through internet devices like mobile
phones, and other gadgets, also connection between Internet devices such as routers, gateways,
sensors, etc.
Intelligence and Identity: The extraction of knowledge from the generated data is very important.
For example, a sensor generates data, but that data will only be useful if it is interpreted properly.
Each IoT device has a unique identity. This identification is helpful in tracking the equipment and at
times for querying its status.
Scalability: The number of elements connected to the IoT zone is increasing day by day. Hence, an
IoT setup should be capable of handling the massive expansion. The data generated as an outcome is
enormous, and it should be handled appropriately.
Dynamic and Self-Adapting (Complexity): IoT devices should dynamically adapt themselves to the
changing contexts and scenarios. Assume a camera meant for the surveillance. It should be adaptable
to work in different conditions and different light situations (morning, afternoon, night).
Architecture: IoT architecture cannot be homogeneous in nature. It should be hybrid, supporting
different manufacturers products to function in the IoT network. IoT is not owned by anyone
engineering branch. IoT is a reality when multiple domains come together.
Safety: There is a danger of the sensitive personal details of the users getting compromised when all
his/her devices are connected to the internet. This can cause a loss to the user. Hence, data security is
the major challenge. Besides, the equipment involved is huge. IoT networks may also be at the risk.
Therefore, equipment safety is also critical.

Advanced Generation

It is predicted that by 2025, all devices will be connected to the Internet, subsequently causing the
number of devices connected with the Internet to rise. As indicated by Cisco, there will be 500 billion
devices connected with the Internet of Things (IoT) by 2030. Furthermore, Telefonica anticipates that
90% of vehicles will be associated with the IoT by 2030 and forecasts that every person will have an
average of 15 connected devices by then. However, a review in 2015 proposed that more than 250
million connected vehicles will be available globally by 2020 an increase of 67%.

Such industrial opportunities additionally lead to effective and creative examination possibilities for
researchers and specialists in multi-disciplinary research areas, thus combining research studies,
engineering abilities, sciences and humanities all under one umbrella. Additionally, IoT is changing
the world into a smart world in which everything is effectively accessible quickly. Generally,
industries will engage in prompt speculation to deal with ventures depending on the development
level of the IoT technologies. Simultaneously, IoT is causing our livelihood to flourish.

Several researchers have been consistently working to advance and develop new strategies to adapt to
these phenomena. As shown in Figure 1, IoT applications are incredibly diverse and incorporate real-
time multimedia, IoT-based healthcare systems, IoT-based next-generation smart industries and IoT-
based next-generation smart agriculture. Besides security requirements, satisfying application
necessities is a critical task; living in an epidemic situation requires fast data analysis and prediction
mechanisms.

Consequently, this Special Issue has attracted researchers from academia and industries to
investigate the opportunities for next-generation IoT-based user scenarios and study their
effect on the solutions of the issues and challenges discussed above and propose viable
solutions. Several researchers have contributed to different areas of interest related to next-
generation IoT-based applications and user scenarios, including the following:
 Next-generation IoT-based smart healthcare;
 Next-generation IoT-based smart cities;
 Next-generation IoT-based smart agriculture;
 Next-generation IoT-based data analytics;
 Next-generation IoT-based industrial IoT;
 Next-generation IoT-based multimedia;
 Next-generation IoT-based spectrum sharing techniques.

Integrated IoT Sensors

Sensors are used in the architecture of IOT devices. Sensors are used for sensing things and devices
etc. A device that provides a usable output in response to a specified measurement. The sensor attains
a physical parameter and converts it into a signal suitable for processing (e.g. electrical, mechanical,
optical) the characteristics of any device or material to detect the presence of a particular physical
quantity. The output of the sensor is a signal which is converted to a human-readable form like
changes in characteristics, changes in resistance, capacitance, impedance etc.

Transducer :

 A transducer converts a signal from one physical structure to another.


 It converts one type of energy into another type.
 It might be used as actuators in various systems.

Sensors characteristics:

1. Static
2. Dynamic

Static characteristics
It is about how the output of a sensor changes in response to an input change after steady
state condition.

 Accuracy: Accuracy is the capability of measuring instruments to give a result close to the
true value of the measured quantity. It measures errors. It is measured by absolute and relative
errors. Express the correctness of the output compared to a higher prior system. Absolute
error = Measured value – True value Relative error = Measured value/True value
 Range: Gives the highest and the lowest value of the physical quantity within which the
sensor can actually sense. Beyond these values, there is no sense or no kind of response.
e.g. RTD for measurement of temperature has a range of -200`c to 800`c.
 Resolution: Resolution is an important specification towards selection of sensors. The higher
the resolution, better the precision. When the accretion is zero to, it is called threshold.
Provide the smallest changes in the input that a sensor is able to sense.
 Precision: It is the capacity of a measuring instrument to give the same reading when
repetitively measuring the same quantity under the same prescribed conditions.
It implies agreement between successive readings, NOT closeness to the true value.
It is related to the variance of a set of measurements.
It is a necessary but not sufficient condition for accuracy.
 Sensitivity: Sensitivity indicates the ratio of incremental change in the response of the system
with respect to incremental change in input parameters. It can be found from the slope of the
output characteristics curve of a sensor. It is the smallest amount of difference in quantity that
will change the instrument’s reading.
 Linearity: The deviation of the sensor value curve from a particular straight line. Linearity is
determined by the calibration curve. The static calibration curve plots the output amplitude
versus the input amplitude under static conditions.
A curve’s slope resemblance to a straight line describes the linearity.
 Drift: The difference in the measurement of the sensor from a specific reading when kept at
that value for a long period of time.
 Repeatability: The deviation between measurements in a sequence under the same
conditions. The measurements have to be made under a short enough time duration so as not
to allow significant long-term drift.

Dynamic Characteristics:
Properties of the systems

Zero-order system: The output shows a response to the input signal with no delay. It does not
include energy-storing elements. Ex. potentiometer measure, linear and rotary displacements.
First-order system: When the output approaches its final value gradually. Consists of an energy
storage and dissipation element.
Second-order system: Complex output response. The output response of the sensor oscillates before
steady state.

Sensor Classification:
 Passive & Active
 Analog & digital
 Scalar & vector

1. Passive Sensor: Cannot independently sense the input. Ex- Accelerometer, soil
moisture, water level and temperature sensors.
2. Active Sensor: Independently sense the input. Example- Radar, sounder and laser
altimeter sensors.
3. Analog Sensor: The response or output of the sensor is some continuous function of
its input parameter. Ex- Temperature sensor, LDR, analog pressure sensor and analog
hall effect.
4. Digital sensor: Response in binary nature. Design to overcome the disadvantages of
analog sensors. Along with the analog sensor, it also comprises extra electronics for
bit conversion. Example – Passive infrared (PIR) sensor and digital temperature
sensor(DS1620).
5. Scalar sensor: Detects the input parameter only based on its magnitude. The answer
for the sensor is a function of magnitude of some input parameter. Not affected by the
direction of input parameters. Example – temperature, gas, strain, color and smoke
sensor.
6. Vector sensor: The response of the sensor depends on the magnitude of the direction
and orientation of input parameter. Example – Accelerometer, gyroscope, magnetic
field and motion detector sensors.
UNIT III IoT PROTOCOLS AND TECHNOLOGY

SCADA and RFID Protocols

SCADA Protocols

SCADA systems to obtain its functionality, it needs a protocol for transmitting data. Some
of the SCADA protocols include Modbus RTU, RP-570, Profibus and Conitel. These communications
protocols are all SCADA-vendor specific but are widely adopted and used. Standard protocols are
IEC 61850 (in which T101 branched out), IEC 60870-5-101 or 104, and DNP3. These
communications protocols are standardized and recognized by all major SCADA vendors. Many of
these protocols is now improved and contain extensions to operate over TCP/IP. It is good security
engineering practice to avoid connecting SCADA systems to the Internet so the attack surface is
reduced. RTUs and other automatic controller devices were being developed before the advent of
industry wide standards for interoperability. The result is that developers and their management
created a multitude of control protocols.

Among the larger vendors, there was also the incentive to create their own protocol to "lock in" their
customer base. This paper discusses and compares T101 and DNP3. These two open communication
protocols that provide for interoperability between systems for tele control applications. Both are now
competing within the world market. DNP is widely used in North America, South America, South
Africa, Asia and Australia, while IEC 60870-5-101 or T101 is strongly supported in the Europe.

IEC 60870-5

IEC 60870-5 is the collection of standards produced by the IEC (International Electrotechnical
Commission). It was created to provide an open standard for the transmission of SCADA telemetry
control and information. It provides a detailed functional description for telecontrol equipment and
systems for controlling geographically widespread processes specifically for SCADA systems. The
standard is intended for application in the electrical industries, and has data objects that are
specifically intended for such applications. It is also applicable to general SCADA applications in any
industry. But IEC 60870-5 protocol is primarily used in the electrical industries of European
countries.
T101

T101 or IEC 60870-5-101 (IEC101) is an international standard prepared by TC57 for power system
monitoring, control & associated communications. This is compatible with IEC 60870-5-1 to IEC
60870-5-5 standards and uses standard asynchronous serial tele-control channel interface between
DTE and DCE. The standard is suitable for multiple configurations like point-to-point, star,
mutidropped etc

DNP3 Protocol

The DNP3 or Distributed Network Protocol is a set of communications protocols used between
components in process automation systems. It is usually used is in utilities such as water and electric
companies. It is also technically possible to use it in other utilities. It was specifically developed to
facilitate communications between various types of data acquisition and control systems. It plays a
crucial role in SCADA systems. It is used by SCADA Master Stations or Control Centers, Remote
Terminal Units, and Intelligent Electronic Devices.

Comparison of T101 and DNP3

Other SCADA Protocols

T101 and DNP3 are the most common SCADA protocols that are used in SCADA systems. Aside
form T101 and DNP3 the following protocols are also utilized in SCADA systems.

Modbus RTU

Modbus RTU is a serial communications protocol published by Modicon in 1979 for use with its
programmable logic controllers (PLCs). It has become a de facto standard communications protocol
in industry, and is now the most commonly available means of connecting industrial electronic
devices. The main reasons for the extensive use of Modbus over other communications protocols are:
It is openly published and royalty-free, relatively easy industrial network to deploy and it moves raw
bits or words without placing many restrictions on vendors.

RP-570

RP570 is a protocol used between an RTU (Remote Terminal Unit) in a substation and the FE (Front
End), which is usually the SCADA software in the Control Center. RP570 was developed by ABB in
beginning of 1990. It was based on IEC 57 part 5-1, presently known as IEC 60870. Known variations
are RP571, ADLP80 and ADLP180.

Profibus

Profibus devices communicate using the standardized PROFIBUS DP (Decentralized Periphery)


communication profile which defines the rules governing communication. At the heart of the
communication profile is what is known as the master/slave concept, whereby a master (active
communication peer) polls the associated slaves (passive communication peers) cyclically. When
polled, a slave will react by sending a response frame to the polling master. A request frame contains
the output data, e.g., setpoint speed of a drive, and the associated response frame contains the input
data, e.g., the latest measured value from a sensor. In one bus cycle, the master polls, e.g., exchanges
I/O data with, all associated slaves. This polling cycle is repeated as fast as possible.

Conitel

Continel protocol is an asynchronous communications protocol used in many Supervisory Control and
Data Acquisition (SCADA) systems. CONITEL Message blocks are composed of 31 bits plus a
message synchronization "start bit" at the front of the first message block and an End of Message
(EOM) bit at the end of each block. The protocol may be used either in a point-to-point or in a multi-
drop configuration. The protocol can be used in either half or full-duplex operation. Communications
security is provided by a 5-bit Bose-Chaudhuri cyclic code which is included with each message
block.

RFID Protocols

Radio Frequency Identification (RFID) is a method that is used to track or identify an object by radio
transmission uses over the web. Data digitally encoded in an RFID tag which might be read by the
reader. This device work as a tag or label during which data read from tags that are stored in the
database through the reader as compared to traditional barcodes and QR codes. It is often read outside
the road of sight either passive or active RFID.
Kinds of RFID

There are many kinds of RFID, each with different properties, but perhaps the most fascinating aspect
of RFID technology is that most RFID tags have neither an electric plug nor a battery. Instead, all of
the energy needed to operate them is supplied in the form of radio waves by RFID readers. This
technology is called passive RFID to distinguish it from the (less common) active RFID in which
there is a power source on the tag.

UHF RHID ( Ultra-High Frequency RFID ). It is used on shipping pallets and some driver’s
licenses. Readers send signals in the 902-928 MHz band. Tags communicate at distances of several
meters by changing the way they reflect the reader signals; the reader is able to pick up these
reflections. This way of operating is called backscatter.
HF RFID (High-Frequency RFID ). It operates at 13.56 MHz and is likely to be in your passport,
credit cards, books, and noncontact payment systems. HF RFID has a short-range, typically a meter or
less because the physical mechanism is based on induction rather than backscatter.
There are also other forms of RFID using other frequencies, such as LF RFID(Low-Frequency RFID),
which was developed before HF RFID and used for animal tracking

There are two types of RFID :


1. Passive RFID: In this device, RF tags are not attached by a power supply and passive RF tag
stored their power. When it is emitted from active antennas and the RF tag are used specific
frequency like 125-134MHZ as low frequency, 13.56MHZ as a high frequency and 856MHZ
to 960MHZ as ultra-high frequency.

2. Active RFID: In this device, RF tags are attached by a power supply that emits a signal and
there is an antenna which receives the data.

Working Principle of RFID :


Generally, RFID uses radio waves to perform AIDC function. AIDC stands for Automatic
Identification and Data Capture technology which performs object identification and collection and
mapping of the data.
An antenna is an device which converts power into radio waves which are used for communication
between reader and tag. RFID readers retrieve the information from RFID tag which detects the tag
and reads or writes the data into the tag. It may include one processor, package, storage and
transmitter and receiver unit.

Features of RFID:

 An RFID tag consists of two-part which is an microcircuit and an antenna.


 This tag is covered by protective material which acts as a shield against the outer environment
effect.
 This tag may active or passive in which we mainly and widely used passive RFID.
Application of RFID:

 It utilized in tracking shipping containers, trucks and railroad, cars.


 It uses in Asset tracking.
 It utilized in credit-card shaped for access application.
 It uses in Personnel tracking.
 Controlling access to restricted areas.
 It uses ID badging.
 Supply chain management.
 Counterfeit prevention (e.g., in the pharmaceutical industry).

Advantages of RFID:

 It provides data access and real-time information without taking to much time.
 RFID tags follow the instruction and store a large amount of information.
 The RFID system is non-line of sight nature of the technology.
 It improves the Efficiency, traceability of production.
 In RFID hundreds of tags read in a short time.

Disadvantages of RFID:

 It takes longer to program RFID Devices.


 RFID intercepted easily even it is Encrypted.
 In an RFID system, there are two or three layers of ordinary household foil to dam the radio
wave.
 There is privacy concern about RFID devices anybody can access information about anything.
 Active RFID can costlier due to battery.

BACnet Protocol

A data communication protocol that is used to build an automated control network, is known as
BACnet or Building Automation Control Network. This data communication protocol is both an ISO
& ANSI standard used for interoperability between cooperating building automation devices. Bacnet
Protocol includes a set of rules for governing the data exchange on a computer network that simply
covers all from what type of cable to utilize, to form a particular command or request in a normal
way.

To attain interoperability across a broad spectrum of equipment, the BACnet specification includes
three major parts. Primary, Secondary, and tertiary. So the primary part defines a technique to
represent any kind of building automation apparatus in a normal way.

Bacnet Protocol Architecture

The BACnet protocol architecture is predominately restricted to lighting controls, HVAC & gateways.
This protocol highlights lightweight and efficient communication which is optimized for short
messages, small networks, and inter-networks.

BACnet protocol architecture is a collapsed architecture that matches to 4-layers of the OSI model.
The four layers in the BACnet architecture mainly include Application, Network, Data Link &
Physical. Even though, just the Network layer & Application layer are simply BACnet.
The above architecture is the BACnet protocol stack which includes different layers as shown in the
diagram. This protocol is a collapsed version of the OSI stack. The transport and session layers are not
used. The application layer takes on the functions of these two layers.
BACnet Physical Layer

The upper layers of BACnet do not depend on the physical layer. So the Physical layer of BACnet
makes it feasible for BACnet to be executed on different networks. The physical layers of BACnet
have been specified with ARCNET, Ethernet, IP tunnels, BACnet/IP, RS-232, RS485, and
Lonworks/LonTalk. RS232 is for point-to-point communication. RS485 supports up to 32 nodes with
a distance of 1200 m at 76Kbps.

BACnet Protocol Link Layer

BACnet protocol is implemented directly with LonTalk or IEEE802.2 link layers. So it specifies Point
to Point (PTP) data link layer for RS232 connections. It specifies MS/TP data link layer intended for
RS-485 connections. The standard simply specifies BVLL (BACnet Virtual Link Layer) which states
all the services required through the BACnet device at this link layer.

IP BACnet Virtual Link Layer encapsulates required control data in a header of BACnet virtual link
control information. Because of IP, BVLL, and BACnet protocol devices can directly communicate
over IP networks without the requirement of any router device. BACnet protocol utilizes BBMD
(BACnet broadcast management device) concept which executes the required broadcast for the
preferred link layer.

BACnet Network Layer

This layer simply specifies the required addresses of the network for routing. BACnet network
includes a minimum of one or above segments that are connected with bridges once they utilize
similar LAN technologies. If they utilize various LAN protocols, then they are connected through
routers.

Application Layer

BACnet does not separate presentation as well as application layers. So it takes care of reliability &
sequencing or segmentation mechanisms generally connected with both the session & transport layers.
BACnet includes devices like objects to exchange service primitives which are described with ASN.1
syntax & serialized with ASN.1 BER.

BACnet Security Layer

The concept of BACnet security can be understood easily with an example say when BACnet device-
A requests a session key from the key server for establishing secure communication through device B,
then this key is transmitted to both the device-A & device-B through the key server which is known as
‘SKab’. BACnet protocol uses 56-bit DES encryption.

How Does Bacnet Protocol Work?

BACnet is a typical electronic communication protocol that works by allowing different kinds of
manufacturers’ building automation as well as monitoring systems like fire alarms, HVAC, and
perimeter security for communicating with each other. This protocol can work with nearly any normal
data protocol including TCP/IP.

 To the control system of the elevator to send all elevators to the ground floor immediately.
 To the paging system of the building to transmit an audible voice signal to inform occupants
of the building wherever the blaze was detected & how to go out from the building.
 From the audio or visual systems of the building to flash messages on TV displays within the
conference rooms.
 To an interface of phone system for sending alerts through text message to the facilities &
engineering teams of the building.

An object signifies physical information (physical inputs, outputs) & nonphysical information
(software/calculations). It is very significant to note that every object may signify a single portion of
information otherwise a group of information which executes the same and exact function.

BACnet Object

BACnet object is a concept that allows the communication as well as a group of data related to i/ps,
o/ps, software & calculations to be executed. The BACnet Object can visible itself in different ways
like Single Points, Logical Groups, Program Logic, Schedules & Historical Data. The BACnet objects
are both physical & non-physical.

Different Types

The different types of BACnet protocols are discussed below.

BACnet/IP

This is normally used with existing VLAN & WAN networks. So the devices can connect
directly to hubs or Ethernet switches. This LAN is a high-performance & fast type, but very
costly. BACnet/IP utilizes UDP/IP for compatibility through existing IP infrastructure. Once
BACnet/IP is utilized with several IP subnets, then extra device functionality known as
BBMDs (BACnet Broadcast Management Devices).

BACnet MS/TP

This kind of LAN uses EIA-485 twisted pair for signaling up to 4k feet. So it is a very
famous type of BACnet LAN which is used for unitary as well as application-specific
controllers. This BACnet MS/TP is not expensive.

BACnet ISO 8802-3 (Ethernet)

BACnet is directly used with Ethernet 8802-3 networks which are similar to BACnet/IP in
terms of speed & cost, although restricted to a single physical infrastructure that does not
utilize IP routers.
BACnet over ARCNET

This BACnet is MAC type which includes two forms like 2.5Mbs coax & 156Kbs above
EIA-485. This BACnet is supported by a limited number of vendors with ARCNET.

BACnet Point-to-Point

This BACnet Point-to-Point is simply used over the networks of dial-up telephones.
Generally, thus direct EIA-232 connection is no longer used for a direct Ethernet connection.

BACnet over LonTalk Foreign Frames

This BACnet simply allows LonTalk’s transport component for carrying BACnet messages.
But, the two protocols are not interoperable.

BACnet over ZigBee

Generally, this MAC is a wireless mesh network used with less costly devices. So it is
normally used as a gateway to ZigBee devices & not like a native BACnet transport.

Bacnet to Modbus Converter

Protocon-P3 Gateway is a BACnet to Modbus converter which is used in designing


automation systems in different applications like HVAC, access control, lighting control &
fire detection systems, and their related equipment. The Protocon-P3 Gateway combines such
BACnet systems & devices with Modbusbased management systems over Modbus RTU
protocol & Modbus TCP/IP.

Bacnet Protocol Vs Modbus

BACnet Protocol Modbus


It was developed by ASHRAE. It was developed by Modicon Inc.
Bacnet is used for communication across Modbus is used for communication between
devices. devices.
Its transmission modes are; IP, Ethernet, Zigbee Its transmission modes are; ASCII, RTU, and
& MS/TP. TCP/IP.
Its standards are; ANSI/ASHRAE Standard
185; ISO-16484-5; ISO-16484-6. Its standards are; IEC 61158.
It is used in different markets like Industrial,
It is used in different markets like Lighting, Life
Energy Management, Transportation, Building Safety, Access Controls, HVAC, transportation
Automation, Regulatory, health & security. & maintenance.
Network Interfaces: Existing LANs &LANs Network Interfaces: Traditional serial &
infrastructure. Ethernet protocols.
Examples: Tasks like fan schedule, sending a
Examples: Measurements of Tank Level. Boiler status alarm, and requesting temperature
Control. reading.
Advantages

 BACnet protocol is particularly designed for building automation as well as control


networks.
 It doesn’t depend on present LAN or WAN technologies.
 It is an American National Standard & a European pre-standard.
 It is scalable completely from small single building applications to universal networks
of devices.
 The implementers of BACnet can securely include non-standard extensions as well as
enhancements without influencing existing interoperability.
 It is adopted by the most famous fire protection companies in both the USA &
Europe.
 It is supported by different chiller manufacturers like Dunham-Bush, Carrier,
McQuay, York & Trane.
 In real building control applications, this protocol has a proven track record.

Disadvantages

 The main drawback of the BACnet protocol was a compliant problem. So because of
this issue, the BTL (BACnet Testing Laboratories) was introduced in the year 2000.
BTL is compliance & and independent testing organization. The main intention of this
is to test the products of BACnet to verify compliance with the standard. Once
approved; the product will get the logo of BTL.
 The problems or net-worthy attacks which are widely found in this protocol are; Lack
of spoofing & authentication, DoS attacks, immobilized network connections, and
lack of encryption & write access over devices.

Applications

 The BACnet is used in HVAC applications, fire control lighting control, security,
alarm & interfacing to utility companies.
 This protocol was particularly designed for building automation as well as control
applications.
 This protocol is used to provide mechanisms, especially for automation devices for
exchanging data irrespective of the specific building service they perform.
 This protocol can be used by digital controllers, computers & application-specific
otherwise unitary controllers with equivalent effect.
 BACnet protocol was initially developed to develop interoperability between building
automation devices; however, its data descriptions, as well as flexible architecture,
will make it work within a broad range of control applications.
 This is an object-oriented protocol, so used to signify network-accessible control
equipment.

This is the best protocol used to build automation and also to connect different systems. So,
Bacnet Protocol in IoT technology has a great future & it will develop by leaps & bounds. This
protocol provides a great solution from a scalability viewpoint too. Considering the criticality &
demand of the application, safety must be given & development must be done with security in
mind.
Zigbee Architecture

Zigbee

ZigBee is a Personal Area Network task group with low rate task group 4. It is a technology of home
networking. ZigBee is a technological standard created for controlling and sensing the network. As
we know that ZigBee is the Personal Area network of task group 4 so it is based on IEEE 802.15.4
and is created by Zigbee Alliance.

ZigBee is a standard that addresses the need for very low-cost implementation of Low power devices
with Low data rates for short-range wireless communications.

Types of ZigBee Devices:

 Zigbee Coordinator Device: It communicates with routers. This device is used for
connecting the devices.
 Zigbee Router: It is used for passing the data between devices.
 Zigbee End Device: It is the device that is going to be controlled.

General Characteristics of Zigbee Standard:

 Low Power Consumption


 Low Data Rate (20- 250 kbps)
 Short-Range (75-100 meters)
 Network Join Time (~ 30 msec)
 Support Small and Large Networks (up to 65000 devices (Theory); 240 devices (Practically))
 Low Cost of Products and Cheap Implementation (Open Source Protocol)
 Extremely low duty cycle.
 3 frequency bands with 27 channels.

Architecture of Zigbee:

Zigbee architecture is a combination of 6 layers.

1. Application Layer
2. Application Interface Layer
3. Security Layer
4. Network Layer
5. Medium Access Control Layer
6. Physical Layer

 Physical layer: The lowest two layers i.e the physical and the MAC (Medium Access
Control) Layer are defined by the IEEE 802.15.4 specifications. The Physical layer is closest
to the hardware and directly controls and communicates with the Zigbee radio.
 Medium Access Control layer (MAC layer): The layer is responsible for the interface
between the physical and network layer. The MAC layer is also responsible for providing
PAN ID and also network discovery through beacon requests.
 Network layer: This layer acts as an interface between the MAC layer and the application
layer. It is responsible for mesh networking.
 Application layer: The application layer in the Zigbee stack is the highest protocol layer and
it consists of the application support sub-layer and Zigbee device object. It contains
manufacturer-defined applications.

Zigbee Technology Advantages and Disadvantages

Advantages

The advantages of Zigbee include the following.


 This network has a flexible network structure
 Battery life is good.
 Power consumption is less
 Very simple to fix.
 It supports approximately 6500 nodes.
 Less cost.
 It is self-healing as well as more reliable.
 Network setting is very easy as well as simple.
 Loads are evenly distributed across the network because it doesn’t include a central controller
 Home appliances monitoring as well controlling is extremely simple using remote
 The network is scalable and it is easy to add/remote ZigBee end device to the network.
Disadvantages

The disadvantages of Zigbee include the following.


 It needs the system information to control Zigbee based devices for the owner.
 As compared with WiFi, it is not secure.
 The high replacement cost once any issue happens within Zigbee based home appliances
 The transmission rate of the Zigbee is less
 It does not include several end devices.
 It is so highly risky to be used for official private information.
 It is not used as an outdoor wireless communication system because it has less coverage limit.
 Similar to other types of wireless systems, this ZigBee communication system is prone to
bother from unauthorized people.

Applications of Zigbee Technology

Industrial Automation: In manufacturing and production industries, a communication link


continually monitors various parameters and critical equipment. Hence Zigbee considerably reduces
this communication cost as well as optimizes the control process for greater reliability.
Home Automation: Zigbee is perfectly suited for controlling home appliances remotely as a lighting
system control, appliance control, heating, and cooling system control, safety equipment operations
and control, surveillance, and so on.
Smart Metering: Zigbee remote operations in smart metering include energy consumption response,
pricing support, security over power theft, etc.
Smart Grid monitoring: Zigbee operations in this smart grid involve remote temperature
monitoring, fault locating, reactive power management, and so on.

6LowPAN

6LoWPAN is an IPv6 protocol, and It’s extended from is IPv6 over Low Power Personal Area
Network. As the name itself explains the meaning of this protocol is that this protocol works on
Wireless Personal Area Network i.e., WPAN.

WPAN is a Personal Area Network (PAN) where the interconnected devices are centered around a
person’s workspace and connected through a wireless medium. You can read more about WPAN at
WPAN. 6LoWPAN allows communication using the IPv6 protocol. IPv6 is Internet Protocol Version
6 is a network layer protocol that allows communication to take place over the network.

6LoWPAN initially came into existence to overcome the conventional methodologies that were
adapted to transmit information. But still, it is not so efficient as it only allows for the smaller devices
with very limited processing ability to establish communication using one of the Internet Protocols,
i.e., IPv6. It has very low cost, short-range, low memory usage, and low bit rate.
It comprises an Edge Router and Sensor Nodes.
 It is a technology that makes the individual nodes IP enabled.
 6LoWPAN can interact with 802.15.4 devices and also other types of devices on an IP Network.
For example, Wi-Fi.
 It uses AES 128 link layer security, which AES is a block cipher having key size of 128/192/256
bits and encrypts data in blocks of 128 bits each. This is defined in IEEE 802.15.4 and provides
link authentication and encryption.

Basic Requirements of 6LoWPAN:

1. The device should be having sleep mode in order to support the battery saving.
2. Minimal memory requirement.
3. Routing overhead should be lowered.

Features of 6LoWPAN:

1. It is used with IEEE 802.15,.4 in the 2.4 GHz band.


2. Outdoor range: ~200 m (maximum)
3. Data rate: 200kbps (maximum)
4. Maximum number of nodes: ~100

6LoWPAN application areas

With many low power wireless sensor networks and other forms of ad hoc wireless networks, it is
necessary that any new wireless system or technology has a defined area which it addresses. While
there are many forms of wireless networks including wireless sensor networks, 6LoWPAN addresses
an area that is currently not addressed by any other system, i.e. that of using IP, and in particular IPv6
to carry the data.
The overall system is aimed at providing wireless internet connectivity at low data rates and with a
low duty cycle. However there are many applications where 6LoWPAN is being used:
 General Automation: There are enormous opportunities for 6LoWPAN to be used in many
different areas of automation.
 Home automation: There is a large market for home automation. By connecting using IPv6,
it is possible to gain distinct advantages over other IoT systems. The Thread initiative has
been set up to standardize on a protocol running over 6LoWPAN to enable home automation.
 Smart Grid: Smart grids enable smart meters and other devices to build a micro mesh
network and they are able to send the data back to the grid operator’s monitoring and billing
system using the IPv6 backbone.
 Industrial monitoring: Automated factories and industrial plants provide a great
opportunity for 6LoWPAN and using automation, can enable major savings to be made. The
ability of 6LoWPAN to connect to the cloud opens up many different areas for data
monitoring and analysis.

Security and Interoperability with 6LoWPAN:

6LoWPAN security

It is anticipated that the Internet of Things, IoT will offer hackers a huge opportunity to take control of
poorly secured devices and also use them to help attack other networks and devices.

Accordingly, security is a major issue for any standard like 6LoWPAN, and it uses AES-128 link
layer security which is defined in IEEE 802.15.4. This provides link authentication and encryption.

Further security is provided by the transport layer security mechanisms that are also included. This is
defined in RFC 5246 and runs over TCP.
For systems where UDP is used the transport layer protocol defined under RFC 6347 can be used,
although this may require some specific hardware requirements.

6LoWPAN interoperability

One key issue of any standard is that of interoperability. It is vital that equipment from different
manufacturers operates together.

When testing for interoperability, it is necessary to ensure that all layers of the OSI stack are
compatible. To ensure that this can be achieved there several different specifications that are
applicable.

Any item can be checked to conform it meets the standard, and also directly tested for
interoperability.

Advantages of 6LoWPAN:

1. 6LoWPAN is a mesh network that is robust, scalable, and can heal on its own.
2. It delivers low-cost and secure communication in IoT devices.
3. It uses IPv6 protocol and so it can be directly routed to cloud platforms.
4. It offers one-to-many and many-to-one routing.
5. In the network, leaf nodes can be in sleep mode for a longer duration of time.

Disadvantages of 6LoWPAN:

1. It is comparatively less secure than Zigbee.


2. It has lesser immunity to interference than that Wi-Fi and Bluetooth.
3. Without the mesh topology, it supports a short range.

CoAP

CoAP a customary client-server IoT protocol. It enables clients to make requests for web transfers as
per the need of the hour. On the other hand, it also let supporting servers to respond to arriving
requests. In summary, devices’ nodes in the IoT ecosystem are enabled to interact over through CoAP
only.

CoAP and HTTP follow the same working procedure. However, CoAP attains its functionality via
asynchronous transactions (using UDP). It utilizes the POST, GET, PUT, and DELETE calls. That’s
the reason why API security is of higher grade while CoAP is active as it is an RPK and PSK-certified
protocol.

CoAP is compatible with 4 types of information exchange:

1. Acknowledgments confirm the completion or failure of an event.


2. Confirmable are the messages that are resent on time out until the confirmation of successful
sending doesn’t arrive.
3. Reset messages are empty, with confirmable as their nature.
4. Non-confirmable information is just sent and has no guarantee of successful delivery. There is
no acknowledgment of success either.
Key traits of CoAP are:

 Works for devices in the same network types.


 Enables data transmission, to and fro, for the general internet-enabled nodes and network-
connected devices.
 Works really fine for SMSs shared over mobile network connectivity.
 Suitable for internet-operative applications that use connected devices/sensors and have
resource limitations.
 Capable of translating HTTP, supports multicast, and exerts the bare minimum cost burden.
 Only helps machines to communicate (in the network).

CoAP Architecture

The WWW and the constraints ecosystem are the 2 foundational elements of the CoAP protocol
architecture. Here, the server monitors and helps in communication happening using CoAP and HTTP
while proxy devices bridge the existing gap for these 2 ecosystem, making the communication
smoother.

CoAP allows HTTP clients (also called CoAP clients here) to talk or exchange data/information with
each other within resource constraints.

While one tries to understand this architecture, gaining acquaintances with some key terms is crucial:

 Endpoints are the nodes that host have knowledge of;


 Client sends requests and replies to incoming requests;
 Server gets and forwards requests. It also gets and forwards the messages received in response
to the requests it had processed.
 Sender creates and sends the original message.
 Recipient gets the information sent by the client or forwarded by the server.
CoAP Function

The key role of CoAP is to act like HTTP wherever restricted devices are a part of communication.
While filling the gap of HTTP, it enables devices like actuators and sensors to interact over the
internet.

The devices, involved in the process, are administered and controlled by considering data as a
system’s component. CoAP protocol can operate its functions in an environment having reduced
bandwidth and extreme congestion as it consumes reduced power and network bandwidth.

For the application ecosystem where CoAP is not desirable, generic implementations are offered for
various platforms. Most of the CoAP implementations are done privately while few are published in
open-source libraries like MIT license.

CoAP Features

The defining features that place CoAP protocol separate from other protocols are as stated next. As it
shares great similarities with HTTP, developers face bare minimum difficulties while using it.

CoAP is an integration-friendly protocol and can be paired easily with applications using cross-
protocol proxies. Seamlessly, it integrates with JSON, XML, CBOR, and various other data formats.
In the process, the web client doesn’t get hints about a sensor resource being accessed.

As resources demanded by CoAP are on the minimum side, it keeps the wastes under control. There is
no need to deploy a hefty transport stack for web transfers. The header and encoding, used for
message processing, are compact and don’t cause any fragments on the link layer.

CoAP Layer

 CoAP Messages Model

It makes UDP transactions possible at endpoints in the confirmable (CON) or non-confirmable (NON)
format. Every CoAP message features a distinct ID to keep the possibilities of message duplications at
bay.

The 3 key parts involved to build this layer are binary header, computer option, and payload. As
explained before, confirmable texts are reliable and easy-to-construct message that are fast and are
resent until the receipt of a confirmation of successful delivery (ACK) with message ID.

 CoAp Request/Response Model

This layer takes care of CON and NON message requests. Acceptance of these requests depend on
server’s availability. Cases are:
1. If idle, the server will handle the request right away. If a CON, the client will get an ACK for
it. If the ACK is shared as a Token and differs from the ID, it is essential to map it properly
by matching request-response pairs.
2. If there is a delay or wait involved, the ACK is sent but as an empty text. When its turn
arrvies, the request is processed andthe client gets a fresh CON.

The key traits of the Request/Response model are mentioned next:

 Request or response codes for CoAP are same as for the HTTP, except for the fact that they
are in the binary format (0-8 byte Tokens) in CoAP’s case.
 Request methods for making calls (GET, PUT, POST, and DELETE) are declared in the
process.
 A CON response could either be stored in an ACK message or forward as CON/NON.

CoAP vs MQTT

MQTT CoAP

This model has publishers and subscribers as main Uses requests and responses
participants
Central broker handles message dispatching, Message dispatching happens on a unicasting basis
following the optimal publisher to client path. (one-to-one). The process is same as HTTP.

Event-oriented operations Viable for state transfer

Establishing a continual and long-lasting TCP Involved parties use UDP packets (async) for message
connection with the broker is essential for the client. passing and communication.

No message labeling but have to use diverse It defines messages properly and makes its discovery
messages for different purposes. easy.
Energy Storage Module
IoT devices, with only non-chargeable battery cells, have a limited lifetime based on the total battery
energy provided, which makes the battery volume necessary. The available energy also limits the IoT
performance in terms of, e.g., the number of measurements, data analysis, and data communication.
For IoT devices with an energy harvester, the situation changes. Many of the performance limitations
will disappear or be greatly reduced.
Wireless data Transport
The most power-intensive task for most of today’s wireless IoT devices is wireless communication. In
general, it is energy efficient in that a packet transmission is completed without any interruptions.
Internet packet sizes vary from 50–1500 depending on the application and the radio protocol used.
Thus, ensuring that enough energy is available for transmitting a complete package is important.
RF Transceivers
For more than two decades, vendors have produced commercially available RF modules/chips that
can transmit (TX) and receive (RX) digital data from one point to another. We have investigated
datasheets for RF chips from various vendors and compared them over time. All chips have been
compared using their highest sensitivity setting, highest data rate and a power output to the antenna of
1mW (0dBm).

Energy Per Bit


Taking data rate into consideration, one can examine how many joules per bit, Q (J/bit), is required
for a full data link between two RF chips of the same kind:
Q=PTX+PRXC,
where PTX (watt) is the transmitter’s power consumption, PRX (watt) is the receiver’s power
consumption and C is the data rate (bit/s).
Receiver Sensitivity
Receivers have become more sensitive, meaning that the incoming signal can be weaker and the
receiver can still interpret the wirelessly sent data. This advancement has made it possible to either
lower the power output to reach the same distance or use the same output power to transfer data over a
longer range.
FSPL(dB)=10log104πdfc2,
where d is distance in meters, f is carrier frequency in Hz and c is the speed of light. The free space
path loss describes how much the signal is attenuated due to the distance between the transmitter and
receiver
L0(dB)=Pt(dB)−Pr(dB).
Hence, the required link budget L0 has to be greater than or equal to the FSPL to successfully transmit
data between two devices. Substituting FSPL for L0 and solving for d to obtain the maximum distance
two devices can communicate yields
d=c10L0(dB)/104πf.
Using the data and dividing it by the maximum distance, obtained, two transceivers of the same model
can communicate with the yields. Newtons per bit can be interpreted as describing how much effort
(force) an RF chip has to exert to transfer a bit a certain distance through a medium with friction.

RF Limitations
To address if the current trend can continue, we used Shannon-Hartley’s theorem to analyze what a
theoretical limit could be. The Shannon-Hartley theorem states the maximum data capacity in the
presence of noise that can be transmitted wirelessly for a given signal strength, noise and bandwidth.
C=Wlog2(1+PrNr),
where C is the channel capacity (bits/s), W is the bandwidth (Hz), Pr is the received signal strength
(watt or volt2) and Nr is noise (watt or volt2).
Pr=Nr(2C/W−1).
Ln in the presence of noise for a specific channel capacity and bandwidth.
Ln(dB)=Pt(dB)−Nr(dB)−dB(2C/W−1)).
Data Acquisition
It is common that an IoT device samples a low number of data points, e.g., a temperature
measurement. Since temperature measurements are seldom performed consecutively in long high
frequency series, the measurement tasks can be performed rapidly with sleeping periods in between.
However, in cases where the task is to capture a waveform, it can be considered an interruptible task,
where the acquisition can be the dominating task.
Energy Storage
Batteries
Batteries, both primary and secondary cells, have high energy densities and are the most common
storage medium for wireless sensors today. Despite their high storage capacities, they are not well
suited for long-life (up to 20 years) IoT devices. Primary cells cannot be recharged, and secondary
cells suffer from cyclic degradation. Hence, battery-powered IoT devices require maintenance, which
is not a desired feature.
Supercapacitors
Supercapacitors have lower energy density than batteries; however, they do not suffer from cyclic
degradation to as great an extent as secondary cells. Regardless, supercapacitors do suffer from
energy losses due to internal energy distribution and current leakage. The internal current leakage
alone can consume as much power as a microprocessor in a low power running state. All
commercially available supercapacitors known to the authors knowledge cannot operate above 85∘C,
limiting the use of supercapacitors in many industrial applications.
Capacitors
Electrolytic capacitors also suffer from degradation; however, many electrolytic capacitor failure
modes and degradation are due to high ripple currents, core heating and vaporization of the
electrolyte, which is unlikely for a wireless IoT device under consumer and most industrial operating
conditions.
The low degradation, low current leakage and projected energy density increase make ceramic
capacitors a good candidate for intermediate energy storage in combination with energy harvesting for
long-life industrial IoT devices.
Power Management Module
Power management is a notable concern for IoT devices considering application based sensor use; it is
required to be powered by small batteries for extended periods of time. The semiconductors used in
such devices must be designed for low power. The Wireless Sensor Networks (WSNs) fundamentally
utilize nodes integrated in application specific domain with the ability to recognize and capture vital
information. Usually, the sensing nodes operate by fetching energy from a battery source. The
rectified input is shared with the switching regulator, which further uses Battery management block,
for example, the sensors output is transmitted to switching converter and further the output of DC-DC
converter is sent to battery management unit that focuses on power management of the IoT system.
Various blocks in the architecture are used in very familiar IoT systems and some of the aspects of
blocks concerning battery, LDOs, DC-DC converters need to be addressed for power management of
whole system.

Power limitations in Battery/Power Sources


1) Currently used sensing devices include Wi-Fi-based sensors running on 2xAA batteries. Earlier
solutions used non-rechargeable batteries to strike out balance between cost, convenience of use and
availability.
2) In rechargeable energy source applications, NiMH batteries are replaced by NiCd batteries for
better efficiency. However, the discharge rate is high for NiMH batteries that allow an approximate
of 500 charge-discharge cycles for each cell which makes their use unfeasible for longer time in IoT
system use.
3) Additionally, energy harvesting sources using mechanical, thermoelectric, solar, etc. sources fail to
generate 50mW of power in transmission mode required by low power devices and consume even
lower in sleep modes. Therefore, it is difficult to be considered for energy storage and smooth
operation of IoT sensing system.
4) Wirelessly powering up devices is another method into play. Electricity can be directed via
magnetic inductive coupling or electromagnetic radiation. Designing such systems is complex and
security compliance is another perspective to be considered because electromagnetic fields are
harmful to living things.
5) Power management blocks are analog and mixed signal circuits. In this paper, power related
features of these blocks are addressed and one such block is low-dropout regulators (LDOs). Analog
linear regulators are supplemented with synthesizable, process and voltage scalability; digital linear
regulators have been enabled for fast response at extremely low controller currents. They are
frequently used where supply of different voltage is required on System on Chip (SoC) and isolating
external noise source from internal SoC.
6) In solutions like super capacitors, along with the benefit of unlimited charge-discharge cycles
(>100,000), is the disadvantage of high self-discharge (up to 25%/day). Some solutions like solid-
state thin-film offer low power density but high energy density.
7) DC-DC Converters/controllers are used when there is relatively high voltage drop than LDOs.
Different configurations of buck, boost converters and controllers can be used depending on the
specification of output voltage required and the type of compensation required.

Factors impacting Power Management


The certain criterions required to be fulfilled by designed power management solutions are:
1) Voltage accuracy: Tolerance specifications for voltage are strict in loads such as microprocessor,
memory, peripherals, etc. and the designed power converter should be able to limit the output voltage
within the voltage tolerance limits. The feedback from output voltage is matched with Voltage
reference for which limits play a crucial role. This is commonly used in reference for data converters,
op amps, and comparators, etc.
2) Sleep and shutdown: In a battery based application, the data receiving and transmitting duty cycle
decide the battery lifetime. Between the phases of data transmission, it is vital to keep the standby
mode currents really low so that there is enough energy in the battery source for its active use. In
sleep mode the current requirement of the devices drops down to Nano Amperes to micro Amperes.
Identification of this factor in sleep profile helps to enhance battery life by varying the power
transmitted to the devices.
3) Efficiency: Thermal management and energy savings are two of the many important facets that are
improved with high efficiency of designer energy source.
4) Built-in low power modes and high light load efficiency: In some applications, sleep mode
when the nodes are inactive comprises of long durations compared to the short durations of high
activity. The converters operate in pulse frequency mode by decreasing the frequency to increase the
efficiency at low load. High load efficiency is equally vital in improving reliability of the design.
5) Aging: Energy is dissipated as heat which increases the ambient temperature including the
integrated circuit (IC) temperature. This temperature rise speeds up the aging factor. Although, a
semiconductor design for IoT solution operates from 2 years to 10 or 15 years, even a small increase
in design ambient temperature could have significant rise in device junction temperature and lead to
aging. Even when the devices are inactive, aging occurs due to continuous constant stress across
transistors. Attention must be paid on package as well.
6) Scalability: This is the capability of solution to be open to a dynamic environment and be
responsive to meet the changing needs. Most smart objects have software drivers handling the
processor interface with the power management system because the power requirements of a multi-
core processor are not always aligned to the requirements of a single-core processor. To design the
power solution, scalability is needed not only in terms of hardware but also software.
7)Power up timing and sequencing: Startup voltage of the different rails needs to be tuned
depending on the system operating frequency and type of cascaded systems/blocks. Clock speed and
cycle both enhance the circuits and reducing the power up time helps in achieving better efficiency
and performance. The timing and sequence also need to be adjusted and optimized depending on the
use case.
Approach/Methodology for Power management
Power Management techniques provide solution and try to address the problems mentioned in the
above sections using various techniques. With different applications, the IoT power architecture
is optimized, but the problems faced in general with power management of blocks in IoT can be
addressed using techniques as follows
1) Power Grating Technique: In this technique, energy is saved during shutdown and sleep/active
nodes by introduction of an electronic switch between chip and power supply line. This technique is
implemented in devices that have a large sleep time and work in the inactive mode during a
substantial amount of time during the device operation. Therefore, energy is saved as less power is
consumed during the sleep time and in case of non-rechargeable sources, the source lifetime is
increased.
2) Power Matching Technique: This is based on selection of battery according to capacity of cells.
To allow continuous power flow at low currents, the power is managed by transceiver nodes and
internal nodes.
3) SPCPM Technique: Simultaneous power control and power management (SPCPM) is based on
simultaneous active/sleep nodes. The node maximizes the number of transmitted packets along with
keeping in concern the time-varying amount of energy. Monitoring a time based pattern helps to
optimize the transmitted energy packets and save power.
4) New Measurement Solutions: Traditional measurement techniques are complex and time
consuming and do not deliver measurement accuracy required to optimize power management.
Seamless current ranging and long-term, gap free data logging overcomes the traditional measurement
techniques for battery drain current. It is a patented technology in which the seamless current ranging
is combined with digitizers for improved digital measurements.
5) Predictive Energy Allocation Technique: In this technique, parameters impacting energy are
allocated some weights and it is used to provide envision for future energy generation rate and helps
to trace the power to evaluate energy utilization rate, system power failure time and system power
loss. These metrics help to deduce the life of IoT devices in a system.
6) Power Capping: This technique is used to restrict power consumption of a design to a safe level,
typically a design time estimate called thermal design power (TDP). This limit is kept because beyond
this thermal violations of the system may occur. Dynamic voltage, frequency scaling (DVFS), Power
gating (PG), threshold level computing and adaptive scheduling are other factors having power
capping benefits in power management.
RF Module
An RF module (short for radio-frequency module) is a (usually) small electronic device used to
transmit and/or receive radio signals between two devices. In an embedded system it is often desirable
to communicate with another device wirelessly. This wireless communication may be accomplished
through optical communication or through radio-frequency (RF) communication. For many
applications, the medium of choice is RF since it does not require line of sight. RF communications
incorporate a transmitter and a receiver. They are of various types and ranges. Some can transmit up
to 500 feet. RF modules are typically fabricated using RF CMOS technology.
RF modules are most often used in medium and low volume products for consumer applications such
as garage door openers, wireless alarm or monitoring systems, industrial remote controls, smart sensor
applications, and wireless home automation systems. They are sometimes used to replace older
infrared communication designs as they have the advantage of not requiring line-of-sight operation.
Several carrier frequencies are commonly used in commercially available RF modules, including
those in the industrial, scientific and medical (ISM) radio bands such as 433.92 MHz, 915 MHz, and
2400 MHz. These frequencies are used because of national and international regulations governing
the used of radio for communication. Short Range Devices may also use frequencies available for
unlicensed such as 315 MHz and 868 MHz.
RF modules may comply with a defined protocol for RF communications such as Zigbee, Bluetooth
Low Energy, or Wi-Fi, or they may implement a proprietary protocol.
Types of RF modules
The term RF module can be applied to many different types, shapes and sizes of small electronic sub
assembly circuit board. It can also be applied to modules across a huge variation of functionality and
capability. RF modules typically incorporate a printed circuit board, transmit or receive circuit,
antenna, and serial interface for communication to the host processor.

 transmitter module
 receiver module
 transceiver module
 system on a chip module.
Transmitter modules
An RF transmitter module is a small PCB sub-assembly capable of transmitting a radio wave and
modulating that wave to carry data. Transmitter modules are usually implemented alongside a
microcontroller which will provide data to the module which can be transmitted. RF transmitters are
usually subject to regulatory requirements which dictate the maximum allowable transmitter power
output, harmonics, and band edge requirements.
Receiver modules
An RF receiver module receives the modulated RF signal, and demodulates it. There are two types of
RF receiver modules: super heterodyne receivers and super regenerative receivers. Super regenerative
modules are usually low cost and low power designs using a series of amplifiers to extract modulated
data from a carrier wave. Super regenerative modules are generally imprecise as their frequency of
operation varies considerably with temperature and power supply voltage. Super heterodyne receivers
have a performance advantage over super regenerative; they offer increased accuracy and stability
over a large voltage and temperature range.
Transceiver modules
An RF transceiver module incorporates both a transmitter and receiver. The circuit is typically
designed for half-duplex operation, although full-duplex modules are available, typically at a higher
cost due to the added complexity.
System on a chip (SoC) module
An SoC module is the same as a transceiver module, but it is often made with an onboard
microcontroller. The microcontroller is typically used to handle radio data packetisation or managing
a protocol such as an IEEE 802.15.4 compliant module. This type of module is typically used for
designs that require additional processing for compliance with a protocol when the designer does not
wish to incorporate this processing into the host microcontroller.
Host microcontroller interface
RF modules typically communicate with an embedded system, such as a microcontroller or a
microprocessor. The communication protocols include UART, used in Digi International's X-Bee
modules, Serial Peripheral Interface Bus used in Anaren's AIR modules and Universal Serial Bus used
in Roving Networks' modules. Although the module may use a standardized protocol for wireless
communication, the commands sent over the microcontroller interface are typically not standardized
as each vendor has its own proprietary communications format. The speed of the microcontroller
interface depends on the speed of the underlying RF protocol used: higher speed RF protocols such as
Wi-Fi require a high-speed serial interface such as USB whereas protocols with a slower data rate
such as Bluetooth Low Energy may use a UART interface.
RF signal modulation
There are several types of digital signal modulation methods commonly used in RF transmitter and
receiver modules:

 ASK
 OOK
 FSK
 direct-sequence spread spectrum
 frequency-hopping spread spectrum.
The detailed description, advantages and disadvantages are listed in the linked articles above.
Main factors affecting RF module performance
As with any other RF device, the performance of an RF module will depend on a number of factors.
For example, by increasing the transmitter power, a larger communication distance will be achieved.
However, this will also result in a higher electrical power drain on the transmitter device, which will
cause shorter operating life for battery powered devices. Also, using a higher transmit power will
make the system more prone to interference with other RF devices, and may in fact possibly cause the
device to become illegal depending on the jurisdiction. Correspondingly, increasing the receiver
sensitivity will also increase the effective communication range, but will also potentially cause
malfunction due to interference from other RF devices.
The performance of the overall system may be improved by using matched antennas at each end of
the communication link, such as those described earlier.
Finally, the labeled remote distance of any particular system is normally measured in an open-air line
of sight configuration without any interference, but often there will be obstacles such as walls, floors,
or dense construction to absorb the radio wave signals, so the effective operational distance will in
most practical instances be less than specified.
Module physical connection
A variety of methods are used to attach an RF module to a printed circuit board, either with through-
hole technology or surface-mount technology. Through-hole technology allows the module to be
inserted or removed without soldering. Surface-mount technology allows the module to be attached to
the PCB without an additional assembly step. Surface-mount connections used in RF modules include
land grid array (LGA) and castellated pads. The LGA package allows for small module sizes as the
pads are all beneath the module but connections must be X-rayed to verify connectivity.
Wireless protocols used in RF modules
RF modules, especially SoC modules, are frequently used to communicate according to a pre-defined
wireless standard, including:

 Zigbee
 Bluetooth Low Energy
 Wi-Fi
 IEEE 802.15.4
 Z-Wave
However, RF modules also frequently communicate using proprietary protocols, such as those used in
garage door openers.
Typical applications

 Vehicle monitoring
 Remote control
 Telemetry
 Small-range wireless network
 Wireless meter reading
 Access control systems
 Wireless home security systems
 Area paging
 Industrial data acquisition system
 Radio tags reading
 RF contactless smart cards
 Wireless data terminals
 Wireless fire protection systems
 Biological signal acquisition
 Hydrological and meteorological monitoring
 Robot remote control
 Wireless data transmissions
 Digital video/audio transmission
 Digital home automation, such as remote light/switch
 Industrial remote control, telemetry and remote sensing
 Alarm systems and wireless transmission for various types of low-rate digital signal
 Remote control for various types of household appliances and electronics projects
 Many other applications field related to RF wireless controlling
Sensing Module

The sensors convert a physical quantity into a corresponding voltage. They are used to measure
physical properties like pressure, temperature, force, acceleration, location, motion, light intensity,
humidity, air pressure, etc.

The term transducer is often used for sensors. They capture the change in the environment variable.
Sensor modules have extra electronic circuitry along with a sensor that helps interface them with
microcontrollers.

7 segment LED Display

A 7 segment LED display is a form of an electronic display device is used for displaying decimal
numerals. It is an alternative to previously used more complex dot matrix displays. They are mainly
used in electronic meters, digital clocks, basic calculators, and other electronic devices that display
numerical information.

The displays common pins are generally used to identify which type of 7 segment display it is.
Every LED display has two connecting pins, are “Anode” and “Cathode”, therefore two types of LED
7-segment display called: Common Cathode (CC) and Common Anode (CA).

7 Segment Display Pinout

A Seven Segment display has 10 pins which are A, B, C, D, E, F, G, DP, and two pins.

Bluetooth Sensor Module HC-05

Bluetooth Module HC-05 is used to communicate between Arduino and other devices. HC-05 is used
for a transparent wireless serial connection setup. It is simple to use Bluetooth SPP (Serial Port
Protocol) module. HC-05 can be used in a Master or Slave configuration, making it a great solution
for wireless communication.

For example, Bluetooth Module is used in Home Automation using Arduino to control appliance
using Bluetooth. You can see our article on Home Automation using Arduino and Bluetooth

Bluetooth HC05 Pinout

HC-05 has 6 pins are STATE, RXD, TXD, GND, VCC, and EN.
Color Sensor

Color Sensor (TCS3200) is a color detector that detects surface color which has 4 white LEDs and a
TAOS TCS3200 RGB sensor chip. It can detect and measure the nearly limitless range of visible
colors.

Internal to the device is an oscillator which produces a square-wave output whose frequency is
proportional to the intensity of the color chosen. Color Sensor outputs a square wave (50% duty
cycle) with a frequency corresponding to light intensity and color, the frequency is directly
proportional to light intensity.

Color Sensor TCS3200 Pinout

TCS3200 has 8 pins.

DHT11 Temperature & Humidity Sensor

The DHT11 Temperature and Humidity Sensor senses, measures and regularly reports the relative
humidity in the air. It measures both moisture and air temperature. The warmer the air is, the more
moisture it can hold, so relative humidity changes with fluctuations in the temperature.

Humidity sensors detect the relative humidity of immediate environments in which they are placed.
As the air becomes hotter, it holds more moisture, so the relative humidity changes with the
temperature.

DHT11 Pinout

DHT11 Sensor has 3 pins are VCC, GND, and OUT.


 VCC to 5V of Arduino.
 GND to GND of Arduino.
 DOUT to A0 (Analog 0 pin) of Arduino.

DS3231 RTC Module

DS3231 RTC Module (Real-Time Clock Module) is used to track the current time and date and
generally used in computers, laptops, mobiles, embedded system applications devices, etc.

It is also called the Real-Time Clock Module which is a low-cost, extremely accurate I²C RTC with a
battery(Cell) and an integrated temperature-compensated crystal oscillator (TCXO) and crystal.

The clock operates in both time format i.e. 24 hours and 12 hours with an AM/PM indicator. There
are different types of ICs used for RTC like DS1307, DS12C887, etc.

DS3231 Pinout

This RTC module has a total of 10 pins but some pins are the same.

ESP8266 WiFi Module


ESP8266 is Wi-Fi enabled system on chip (SoC) module developed by Espressif system. It is mostly
used for the development of the Internet of Things (IoT) embedded applications. The ESP8266 is a
low-cost Wi-Fi microchip with full TCP/IP stack and microcontroller capability produced by
Shanghai-based Chinese manufacturing company Espressif Systems.
The ESP8266 is capable of either hosting an application or offloading all the Wi-Fi networking
functions from another application processor. The ESP8266 module is an extremely cost-effective
board with a huge, and fastest ever growing, community.
ESP8266 WiFi Module Pinout

 3V3: – 3.3 V Power Pin.


 GND: – Ground Pin.
 RST: – Active Low Reset Pin.
 EN: – Active High Enable Pin.
 TX: – Serial Transmit Pin of UART.
 RX: – Serial Receive Pin of UART.
 GPIO0 & GPIO2: – General Purpose I/O Pins. It also known as TX/RX pins are used for
Programming the module or for serial I/O purpose.
GPS Receiver Module
GPS module receivers are generally used in smartphones, fleet management systems, military, etc. for
tracking or finding a location. Global Positioning System (GPS) is a satellite-based system that uses
satellites and ground stations to measure and compute its position on Earth. GPS is also known as
Navigation System with Time and Ranging (NAVSTAR) GPS.
This NMEA string output from the GPS receiver contains different parameters like longitude, latitude,
altitude, time, etc. which are separated by commas. Each string starts with ‘$’ and ends with a carriage
return/line feed sequence. For e.g $GPGGA, 184241.000, 1829.9639,N, 07347.6174, E, 1, 05, 2.1,
607.1, M,-64.7, M, ,0000*7C
Pin Description of GPS Module

 VCC: Power Supply 3.3 – 6 V


 GND: Ground
 TX: Transmit data serially which gives information about location, time, etc.
 RX: Receive Data serially. It is required when we want to configure the GPS receiver.
LCD Display 16×2 Module
LCD Display or Liquid Crystal Display (LCD) is generally used in many electronics applications. It is
widely used in Arduino projects to show status, messages, sensor reading we use LCD 16×2.
Pin Description of LCD Display 16×2 Module
OLED Display Module
OLED (Organic Light-Emitting Diodes) is an advanced display technology made from a thin film of
light-emitting organic materials. When electrical current is applied, a bright light is emitted from
OLED. OLEDs are emissive displays that do not require a backlight and so are thinner and more
efficient than LCD displays (which do require a white backlight).
OLED displays are not just thin and efficient, they provide the best image quality ever (as compared
to LED and LCDs) and they can also be made transparent, foldable, flexible and even rollable and
stretchable in the future.
Pin Configuration

Pin Name: Description

Ground
Connected to the ground of the circuit
(GND)

Vcc
Can be powered by either 3.3V or 5V
(Vdd,5V)

It is a clock signal. This pin transmits clocks to a


SCL slave, SCL. Data will be sent to other devices on
(D0,CLK) clock tick event. The only master device has
control over this SCL line

SDA is used to transmit data between master and


SDA
slave. The data and acknowledgement are sent
(D1,MOSI)
through SDA.

Relay Module
Relay is a switch which is operated electrically. Relays are work on the electromagnetic principle to
mechanically operate a switch but there are also other relays that operate on other principles such as
solid-state relays.
Relays are used to control a circuit by a separate low power signal or, controlled several circuits by
one signal.
Relay is an electrically operated switch that can be turned on by a circuit or device or current can be
turned on. The relay can be controlled through Arduino in a very simple way, like controlling an
LED.
UNIT IV CLOUD ARCHITECTURE BASICS
The Cloud types; IaaS, PaaS, SaaS
Infrastructure as a Service (IaaS)
IaaS is also known as Hardware as a Service (HaaS). It is a computing infrastructure managed over
the internet. The main advantage of using IaaS is that it helps users to avoid the cost and complexity
of purchasing and managing the physical servers. IaaS provider provides the following services -
1. Compute: Computing as a Service includes virtual central processing units and virtual main
memory for the Vms that is provisioned to the end- users.
2. Storage: IaaS provider provides back-end storage for storing files.
3. Network: Network as a Service (NaaS) provides networking components such as routers,
switches, and bridges for the Vms.
4. Load balancers: It provides load balancing capability at the infrastructure layer.
Characteristics of IaaS

 Resources are available as a service


 Services are highly scalable
 Dynamic and flexible
 GUI and API-based access
 Automated administrative tasks
Example: DigitalOcean, Linode, Amazon Web Services (AWS), Microsoft Azure, Google Compute
Engine (GCE), Rackspace, and Cisco Metacloud.
Advantages of IaaS
1. Shared infrastructure: IaaS allows multiple users to share the same physical infrastructure.
2. Web access to the resources: Iaas allows IT users to access resources over the internet.
3. Pay-as-per-use model: IaaS providers provide services based on the pay-as-per-use basis. The
users are required to pay for what they have used.
4. Focus on the core business: IaaS providers focus on the organization's core business rather than on
IT infrastructure.
5. On-demand scalability: On-demand scalability is one of the biggest advantages of IaaS. Using
IaaS, users do not worry about to upgrade software and troubleshoot the issues related to hardware
components.
Disadvantages of IaaS
1. Security: Security is one of the biggest issues in IaaS. Most of the IaaS providers are not able to
provide 100% security.
2. Maintenance & Upgrade: Although IaaS service providers maintain the software, but they do not
upgrade the software for some organizations.
3. Interoperability issues: It is difficult to migrate VM from one IaaS provider to the other, so the
customers might face problem related to vendor lock-in.
Platform as a Service (PaaS)
PaaS cloud computing platform is created for the programmer to develop, test, run, and manage the
applications. PaaS providers provide the Programming languages, Application frameworks,
Databases, and Other tools:
1. Programming languages: PaaS providers provide various programming languages for the
developers to develop the applications. Some popular programming languages provided by PaaS
providers are Java, PHP, Ruby, Perl, and Go.
2. Application frameworks: PaaS providers provide application frameworks to easily understand the
application development. Some popular application frameworks provided by PaaS providers are
Node.js, Drupal, Joomla, WordPress, Spring, Play, Rack, and Zend.
3. Databases: PaaS providers provide various databases such as ClearDB, PostgreSQL, MongoDB,
and Redis to communicate with the applications.
4. Other tools: PaaS providers provide various other tools that are required to develop, test, and
deploy the applications.
Advantages of PaaS
1) Simplified Development: PaaS allows developers to focus on development and innovation without
worrying about infrastructure management.
2) Lower risk: No need for up-front investment in hardware and software. Developers only need a PC
and an internet connection to start building applications.
3) Prebuilt business functionality: Some PaaS vendors also provide already defined business
functionality so that users can avoid building everything from very scratch and hence can directly start
the projects only.
4) Instant community: PaaS vendors frequently provide online communities where the developer can
get the ideas to share experiences and seek advice from others.
5) Scalability: Applications deployed can scale from one to thousands of users without any changes
to the applications.
Disadvantages of PaaS
1) Vendor lock-in: One has to write the applications according to the platform provided by the PaaS
vendor, so the migration of an application to another PaaS vendor would be a problem.
2) Data Privacy: Corporate data, whether it can be critical or not, will be private, so if it is not located
within the walls of the company, there can be a risk in terms of privacy of data.
3) Integration with the rest of the systems applications: It may happen that some applications are
local, and some are in the cloud. So there will be chances of increased complexity when we want to
use data which in the cloud with the local data.]
Characteristics of PaaS

 Accessible to various users via the same development application.


 Integrates with web services and databases.
 Builds on virtualization technology, so resources can easily be scaled up or down as per
the organization's need.
 Support multiple languages and frameworks.
 Provides an ability to "Auto-scale".
Example: AWS Elastic Beanstalk, Windows Azure, Heroku, Force.com, Google App Engine,
Apache Stratos, Magento Commerce Cloud, and OpenShift.
Software as a Service (SaaS)
SaaS is also known as "on-demand software". It is a software in which the applications are hosted by
a cloud service provider. Users can access these applications with the help of internet connection and
web browser. There are the following services provided by SaaS providers -
Business Services - SaaS Provider provides various business services to start-up the business. The
SaaS business services include ERP (Enterprise Resource Planning), CRM (Customer Relationship
Management), billing, and sales.
Document Management - SaaS document management is a software application offered by a third
party (SaaS providers) to create, manage, and track electronic documents.
Social Networks - As we all know, social networking sites are used by the general public, so social
networking service providers use SaaS for their convenience and handle the general public's
information.
Mail Services - To handle the unpredictable number of users and load on e-mail services, many e-
mail providers offering their services using SaaS.
Advantages of SaaS cloud computing layer
1. SaaS is easy to buy: SaaS pricing is based on a monthly fee or annual fee subscription, so it allows
organizations to access business functionality at a low cost, which is less than licensed applications.
2. One to Many: SaaS services are offered as a one-to-many model means a single instance of the
application is shared by multiple users.
3. Less hardware required for SaaS: The software is hosted remotely, so organizations do not need
to invest in additional hardware.
4. Low maintenance required for SaaS: Software as a service removes the need for installation, set-
up, and daily maintenance for the organizations. The initial set-up cost for SaaS is typically less than
the enterprise software.
5. No special software or hardware versions required: All users will have the same version of the
software and typically access it through the web browser. SaaS reduces IT support costs by
outsourcing hardware and software maintenance and support to the IaaS provider.
6. Multidevice support: SaaS services can be accessed from any device such as desktops, laptops,
tablets, phones, and thin clients.
7. API Integration: SaaS services easily integrate with other software or services through standard
APIs.
8. No client-side installation: SaaS services are accessed directly from the service provider using the
internet connection, so do not need to require any software installation.
Disadvantages of SaaS
1) Security: Actually, data is stored in the cloud, so security may be an issue for some users.
However, cloud computing is not more secure than in-house deployment.
2) Latency issue: Since data and applications are stored in the cloud at a variable distance from the
end-user, there is a possibility that there may be greater latency when interacting with the application
compared to local deployment.
3) Total Dependency on Internet: Without an internet connection, most SaaS applications are not
usable.
4) Switching between SaaS vendors is difficult: Switching SaaS vendors involves the difficult and
slow task of transferring the very large data files over the internet and then converting and importing
them into another SaaS also.
Characteristics of SaaS

 Managed from a central location


 Hosted on a remote server
 Accessible over the internet
 Users are not responsible for hardware and software updates. Updates are applied
automatically.
 The services are purchased on the pay-as-per-use basis
Example: BigCommerce, Google Apps, Salesforce, Dropbox, ZenDesk, Cisco WebEx, ZenDesk,
Slack, and GoToMeeting.
Difference between IaaS, PaaS, and SaaS

IaaS Paas SaaS

It provides a virtual data It provides virtual platforms and It provides web software and
center to store information tools to create, test, and deploy apps to complete business
and create platforms for app apps. tasks.
development, testing, and
deployment.

It provides access to resources It provides runtime It provides software as a


such as virtual machines, environments and deployment service to the end-users.
virtual storage, etc. tools for applications.

It is used by network It is used by developers. It is used by end users.


architects.

IaaS provides only PaaS provides SaaS provides


Infrastructure. Infrastructure+Platform. Infrastructure+Platform
+Software.
Development environments for service development; Amazon, Azure, Google Appcloud
platform in industry

Amazon Web Services

The full form of AWS is Amazon Web Services. It is a platform that offers flexible, reliable, scalable,
easy-to-use and, cost-effective cloud computing solutions.
AWS is a comprehensive, easy to use computing platform offered Amazon. The platform is
developed with a combination of infrastructure as a service (IaaS), platform as a service (PaaS) and
packaged software as a service (SaaS) offerings.
History of AWS

 2002- AWS services launched


 2006- Launched its cloud products
 2012- Holds first customer event
 2015- Reveals revenues achieved of $4.6 billion
 2016- Surpassed $10 billon revenue target
 2016- Release snowball and snowmobile
 2019- Offers nearly 100 cloud services
 2021- AWS comprises over 200 products and services
AWS Compute Services
Here, are Cloud Compute Services offered by Amazon:

 EC2(Elastic Compute Cloud)- EC2 is a virtual machine in the cloud on which you have OS
level control. You can run this cloud server whenever you want.
 LightSail- This cloud computing tool automatically deploys and manages the computer,
storage, and networking capabilities required to run your applications.
 Elastic Beanstalk- The tool offers automated deployment and provisioning of resources like
a highly scalable production website.
 EKS (Elastic Container Service for Kubernetes)- The tool allows you to Kubernetes on
Amazon cloud environment without installation.
 AWS Lambda- This AWS service allows you to run functions in the cloud. The tool is a big
cost saver for you as you to pay only when your functions execute.
Migration
Migration services used to transfer data physically between your datacenter and AWS.

 DMS (Database Migration Service)– DMS service can be used to migrate on-site databases
to AWS. It helps you to migrate from one type of database to another — for example, Oracle
to MySQL.
 SMS (Server Migration Service)– SMS migration services allows you to migrate on-site
servers to AWS easily and quickly.
 Snowball- Snowball is a small application which allows you to transfer terabytes of data
inside and outside of AWS environment.
Storage
Amazon Glacier- It is an extremely low-cost storage service. It offers secure and fast storage for data
archiving and backup.
 Amazon Elastic Block Store (EBS)- It provides block-level storage to use with Amazon
EC2 instances. Amazon Elastic Block Store volumes are network-attached and remain
independent from the life of an instance.
 AWS Storage Gateway- This AWS service is connecting on-premises software applications
with cloud-based storage. It offers secure integration between the company’s on-premises and
AWS’s storage infrastructure.
Security Services

 IAM (Identity and Access Management)- IAM is a secure cloud security service which
helps you to manage users, assign policies, form groups to manage multiple users.
 Inspector- It is an agent that you can install on your virtual machines, which reports any
security vulnerabilities.
 Certificate Manager- The service offers free SSL certificates for your domains that are
managed by Route53.
 WAF (Web Application Firewall)- WAF security service offers application-level protection
and allows you to block SQL injection and helps you to block cross-site scripting attacks.
 Cloud Directory- This service allows you to create flexible, cloud-native directories for
managing hierarchies of data along multiple dimensions.
 KMS (Key Management Service)- It is a managed service. This security service helps you
to create and control the encryption keys which allows you to encrypt your data.
 Organizations- You can create groups of AWS accounts using this service to manages
security and automation settings.
 Shield- Shield is managed DDoS (Distributed Denial of Service protection service). It offers
safeguards against web applications running on AWS.
 Macie- It offers a data visibility security service which helps classify and protect your
sensitive critical content.
 GuardDuty- It offers threat detection to protect your AWS accounts and workloads.
Database Services

 Amazon RDS- This Database AWS service is easy to set up, operate, and scale a relational
database in the cloud.
 Amazon DynamoDB- It is a fast, fully managed NoSQL database service. It is a simple
service which allow cost-effective storage and retrieval of data. It also allows you to serve
any level of request traffic.
 Amazon ElastiCache- It is a web service which makes it easy to deploy, operate, and scale
an in-memory cache in the cloud.
 Neptune- It is a fast, reliable and scalable graph database service.
 Amazon RedShift- It is Amazon’s data warehousing solution which you can use to perform
complex OLAP queries.
Application Services

 Step Functions- It is a way of visualizing what’s going inside your application and what
different microservices it is using.
 SWF (Simple Workflow Service)- The service helps you to coordinate both automated tasks
and human-led tasks.
 SNS (Simple Notification Service)- You can use this service to send you notifications in the
form of email and SMS based on given AWS services.
 SQS (Simple Queue Service)- Use this AWS service to decouple your applications. It is a
pull-based service.
 Elastic Transcoder- This AWS service tool helps you to changes a video’s format and
resolution to support various devices like tablets, smartphones, and laptops of different
resolutions.
Deployment and Management

 AWS CloudTrail: The services records AWS API calls and send backlog files to you.
 Amazon CloudWatch: The tools monitor AWS resources like Amazon EC2 and Amazon
RDS DB Instances. It also allows you to monitor custom metrics created by user’s
applications and services.
 AWS CloudHSM: This AWS service helps you meet corporate, regulatory, and contractual,
compliance requirements for maintaining data security by using the Hardware Security
Module(HSM) appliances inside the AWS environment.
Developer Tools

 CodeStar- Codestar is a cloud-based service for creating, managing, and working with
various software development projects on AWS.
 CodeCommit- It is AWS’s version control service which allows you to store your code and
other assets privately in the cloud.
 CodeBuild- This Amazon developer service help you to automates the process of building
and compiling your code.
 CodeDeploy- It is a way of deploying your code in EC2 instances automatically.
 CodePipeline- It helps you create a deployment pipeline like testing, building, testing,
authentication, deployment on development and production environments.
 Cloud9- It is an Integrated Development Environment for writing, running, and debugging
code in the cloud.
Mobile Services

 Mobile Hub- Allows you to add, configure and design features for mobile apps.
 Cognito- Allows users to signup using his or her social identity.
 Device Farm- Device farm helps you to improve the quality of apps by quickly testing
hundreds of mobile devices.
 AWS AppSync- It is a fully managed GraphQL service that offers real-time data
synchronization and offline programming features.
Business Productivity

 Alexa for Business- It empowers your organization with voice, using Alexa. It will help you
to Allows you to build custom voice skills for your organization.
 Chime- Can be used for online meeting and video conferencing.
 WorkDocs- Helps to store documents in the cloud
 WorkMail- Allows you to send and receive business emails.
Desktop & App Streaming

 WorkSpaces- Workspace is a VDI (Virtual Desktop Infrastructure). It allows you to use


remote desktops in the cloud.
 AppStream- A way of streaming desktop applications to your users in the web browser. For
example, using MS Word in Google Chrome.
Azure
Microsoft Azure is a cloud computing platform that provides a wide variety of services that we can
use without purchasing and arranging our hardware. It enables the fast development of solutions and
provides the resources to complete tasks that may not be achievable in an on-premises environment.
Azure Services like compute, storage, network, and application services allow us to put our effort into
building great solutions without worrying about the assembly of physical infrastructure.
Azure Services
o Compute services: It includes the Microsoft Azure Cloud Services, Azure Virtual Machines,
Azure Website, and Azure Mobile Services, which processes the data on the cloud with the
help of powerful processors.
o Data services: This service is used to store data over the cloud that can be scaled according to
the requirements. It includes Microsoft Azure Storage (Blob, Queue Table, and Azure File
services), Azure SQL Database, and the Redis Cache.
o Application services: It includes services, which help us to build and operate our application,
like the Azure Active Directory, Service Bus for connecting distributed systems, HDInsight
for processing big data, the Azure Scheduler, and the Azure Media Services.
o Network services: It helps you to connect with the cloud and on-premises infrastructure,
which includes Virtual Networks, Azure Content Delivery Network, and the Azure Traffic
Manager.
How Azure works
It is essential to understand the internal workings of Azure so that we can design our applications on
Azure effectively with high availability, data residency, resilience, etc.

Microsoft Azure is completely based on the concept of virtualization. So, similar to other virtualized
data center, it also contains racks. Each rack has a separate power unit and network switch, and also
each rack is integrated with a software called Fabric-Controller. This Fabric-controller is a
distributed application, which is responsible for managing and monitoring servers within the rack. In
case of any server failure, the Fabric-controller recognizes it and recovers it. And Each of these
Fabric-Controller is, in turn, connected to a piece of software called Orchestrator.
This Orchestrator includes web-services, Rest API to create, update, and delete resources.
When a request is made by the user either using PowerShell or Azure portal. First, it will go to the
Orchestrator, where it will fundamentally do three things:
1. Authenticate the User
2. It will Authorize the user, i.e., it will check whether the user is allowed to do the requested
task.
3. It will look into the database for the availability of space based on the resources and pass the
request to an appropriate Azure Fabric controller to execute the request.
Combinations of racks form a cluster. We have multiple clusters within a data center, and we can have
multiple Data Centers within an Availability zone, multiple Availability zones within a Region, and
multiple Regions within a Geography.
o Geographies: It is a discrete market, typically contains two or more regions, that preserves
data residency and compliance boundaries.
o Azure regions: A region is a collection of data centers deployed within a defined perimeter
and interconnected through a dedicated regional low-latency network.
Azure covers more global regions than any other cloud provider, which offers the scalability needed
to bring applications and users closer around the world. It is globally available in 50 regions around
the world. Due to its availability over many regions, it helps in preserving data residency and offers
comprehensive compliance and flexible options to the customers
o Availability Zones: These are the physically separated location within an Azure region. Each
one of them is made up of one or more data centers, independent configuration.
Azure Pricing
It is one of the main reasons to learn Microsoft Azure. Because Microsoft is providing free Credits in
the Azure account to access Azure services for free for a short duration. This credit is sufficient for
people who are new at Microsoft Azure and want to use the services.
Microsoft offers the pay-as-you-go approach that helps organizations to serve their needs. Typically
the cloud services will be charged based on the usage. The flexible pricing option helps in up-scaling
and down-scaling the architecture as per our requirements.
Azure Certification
Microsoft Azure helps to fill the gap between the industry requirement and the resource available.
Microsoft provides Azure Certification into three major categories, which are:
o Azure Administrator: Those who implement, monitor, and maintain Microsoft Azure
solutions, including major services.
o Azure Developer: Those who design, build, test, and maintain cloud solutions, such as
applications and services, partnering with cloud solution architects, cloud DBAs, cloud
administrators, and clients to implement these solutions.
o Azure Solution Architect: Those who have expertise in compute, network, storage, and
security so that they can design the solutions that run on Azure.
Google Appcloud platform in industry
Google Cloud Platform (GCP) is a suite of cloud computing services provided by Google. It is a
public cloud computing platform consisting of a variety of services like compute, storage, networking,
application development, Big Data, and more, which run on the same cloud infrastructure that Google
uses internally for its end-user products, such as Google Search, Photos, Gmail and YouTube, etc.
The services of GCP can be accessed by software developers, cloud administrators and IT
professionals over the Internet or through a dedicated network connection.
Why Google Cloud Platform?
Google Cloud Platform is known as one of the leading cloud providers in the IT field. The services
and features can be easily accessed and used by the software developers and users with little technical
knowledge. Google has been on top amongst its competitors, offering the highly scalable and most
reliable platform for building, testing and deploying the applications in the real-time environment.
Apart from this, GCP was announced as the leading cloud platform in the Gartner's IaaS Magic
Quadrant in 2018. Gartner is one of the leading research and advisory company. Gartner organized a
campaign where Google Cloud Platform was compared with other cloud providers, and GCP was
selected as one of the top three providers in the market.
Most companies use data centers because of the availability of cost forecasting, hardware certainty,
and advanced control. However, they lack the necessary features to run and maintain resources in the
data center. GCP, on the other side, is a fully-featured cloud platform that includes:
o Capacity: Sufficient resources for easy scaling whenever required. Also, effective
management of those resources for optimum performance.
o Security: Multi-level security options to protect resources, such as assets, network and OS -
components.
o Network Infrastructure: Number of physical, logistical, and human-resource-related
components, such as wiring, routers, switches, firewalls, load balancers, etc.
o Support: Skilled professionals for installation, maintenance, and support.
o Bandwidth: Suitable amount of bandwidth for peak load.
o Facilities: Other infrastructure components, including physical equipment and power
resources.
Therefore, Google Cloud Platform is a viable option for businesses, especially when the businesses
require an extensive catalogue of services with global recognition.
Google Cloud vs Google Cloud Platform
Google Cloud includes a combination of services available over the internet that can help
organizations go digital. Google Cloud Platform (which provides public cloud infrastructure for
hosting web-based applications and is the focus of this blog post) is a part of Google Cloud.
Some other services that are a part of Google Cloud include:
 Google Workspace, formerly known as G Suite and Google Apps. This product provides
identity management for organizations, Gmail, and collaboration tools.
 Enterprise versions of Android and Chrome OS. These phone and laptop operating systems
are ways for users to connect to web-based applications.
 Application programming interfaces (APIs) for machine learning and enterprise mapping
services. These provide software-to-software communication.
While Google’s GCP cloud infrastructure is the backbone of applications like Google Workplace,
these applications aren’t what we’re talking about when we talk about GCP. For this post, we’re
focusing on Google Cloud Platform
Benefits of Google Cloud Platform
Best Pricing: Google enables users to get Google Cloud hosting at the cheapest rates. The hosting
plans are not only cheaper than other hosting platforms but also offer better features than others. GCP
provides a pay-as-you-go option to the users where users can pay separately only for the services and
resources they want to use.
Work from Anywhere: Once the account is configured on GCP, it can be accessed from anywhere.
That means that the user can use GCP across different devices from different places. It is possible
because Google provides web-based applications that allow users to have complete access to GCP.
Private Network: Google has its own network that enables users to have more control over GCP
functions. Due to this, users achieve smooth performance and increased efficiency over the network.
Scalable: Users are getting a more scalable platform over the private network. Because Google uses
fiber-optic cables to extend its network range, it is likely to have more scalability. Google is always
working to scale its network because there can be any amount of traffic at any time.
Security: There is a high number of security professionals working at Google. They always keep
trying to secure the network and protect the data stored on servers. Additionally, Google uses an
algorithm that encrypts all the data on the Cloud platform. This gives assurance to the users that their
data is completely safe and secure from unauthorized sources.
Redundant Backup: Google always keeps backup of user's data with built-in redundant backup
integration. In case a user has lost the stored data, it's not a big problem. Google always has a copy of
the users' data unless the data is deleted forcefully. This adds data integrity, reliability and durability
with GCP.
Key Features of Google Cloud Platform

 On-demand services: Automated environment with web-based tools. Therefore, no


human intervention is required to access the resources.
 Broad network access: The resources and the information can be accessed from
anywhere.
 Resource pooling: On-demand availability of a shared pool of computing resources to
the users.
 Rapid elasticity: The availability of more resources whenever required.
 Measured service: Easy-to-pay feature enables users to pay only for consumed services.
Working of Google Cloud Platform
When a file is uploaded on the Google cloud, the unique metadata is inserted into a file. It helps
identify the different files and track the changes made across all the copies of any particular file. All
the changes made by individuals get synchronized automatically to the main file, also called a master
file. GCP further updates all the downloaded files using metadata to maintain the correct records.
Let's understand the working of GCP with a general example:
Suppose that MS Office is implemented on Cloud to enable several people to work together. The
primary aim of using cloud technology is to work on the same project at the same time. We can create
and save a file on the cloud once we install a plugin for the MS Office suite. This will allow several
people to edit a document at the same time.
Once users are assigned as an editor, they can use and edit the document's cloud copy as desired. The
combined, edited copy is generated that is known as the master document. GCP helps to assign a
unique URL to each specific copy of the existing document given to different users. However, any of
the authorized users' changes will be visible on all the copies of documents shared over the cloud.
Google Cloud Platform Services

 Compute Services
 Networking
 Storage Services
 Big Data
 Security and Identity Management
 Management Tools
 Cloud AI
 IoT (Internet of Things)
Compute Services
Google App Engine: It is a cloud computing platform that follows the concept of Platform-as-a-
Service to deploy PHP, Java and other software. It is also used to develop and deploy web-based
software in Google-managed data centers. The most significant advantage of Google App Engine is
its automatic scaling capability.
Compute Engine: It is a cloud computing platform that follows the concept of Infrastructure-as-a-
Service to run Windows and Linux based virtual machines. It is an essential component of GCP. It is
designed on the same infrastructure used by Google search engine, YouTube and other Google
services.
Kubernetes Engines: This computing service is responsible for offering a platform for automatic
deployment, scaling, and other operations of application containers across clusters of hosts. The
engine supports several container tools like a docker, etc.
Networking
VPC: VPC stands for Virtual Private Network. The primary function of VPC is to offer a private
network with routing, IP allocation, and network firewall policies. This will help to create a secure
environment for the application deployments.
Cloud Load Balancing: As its name states, Cloud balancing is used to distribute workload across
different computing resources to balance the entire system performance. This also results in cost-
reduction. The process also helps in minimizing the availability and maximizing the capability of the
resources.
Content Delivery Network: CDN is a geographically distributed network of proxy servers and their
data centers. The primary aim of using CDN is to provide maximum performance to the users.
Additionally, it also helps deliver high availability of resources by equally distributing the related
services to the end-users.
Storage Services
Google Cloud Storage: It is an online data storage web service that Google provides to its users to
store and access data from anywhere. The service also includes a wide range of features like
maximum performance, scalability, security and sharing.
Cloud SQL: It is a web-service that enables users to create, manage, and use relational databases
stored on Google Cloud servers. The service itself maintains and protects the databases, which helps
users focus on their applications and other operations.
Cloud Bigtable: It is known for its fast performance and highly manageable feature. It is a highly
scalable NoSQL database service that allows collecting and retaining data from as low as 1 TB to
hundreds of PB.
Big Data
BigQuery: It is a fully managed data analysis service by Google. The primary aim of Google
BigQuery service is to helps businesses to analyze Big Data. It offers a highly scalable data
management option. This means BigQuery allows users to perform ad-hoc queries and share data
insights across the web.
Google Cloud Datastore: Google Cloud Datastore is a kind of datastore service that is fully
managed, schema-less, and non-relational. This service enables businesses to perform automatic
transactions and a rich set of queries. The main advantage of Google Cloud Datastore is the capability
of automatic scaling. This means that the service can itself scale up and down, depending on the
requirement of resources.
Google Cloud Dataproc: It is a very fast and easy to use big data service offered by Google. It
mainly helps in managing Hadoop and Spark services for distributed data processing. The service
allows users to create Hadoop or Spark clusters sized according to the overall workload and can be
accessed whenever users want them.
Security and Identity Management
Cloud Data Loss Prevention API: It is mainly designed to manage sensitive data. It helps users
manage sensitive data elements like credit card details, debit card details, passport numbers, etc. It
offers fast and scalable classification for sensitive data.
Cloud IAM: It stands for Cloud Identity and Access Management. It is a framework that contains
rules and policies and validates the authentication of the users for accessing the technology resources.
That is why it is also known as Identity Management (IdM).
Management Tools
Google Stackdriver: Google Stackdriver service is primarily responsible for displaying the overall
performance and diagnostics information. This may include insights of data monitoring, tracing,
logging, error reporting, etc. The service also prompts an alert notification to the public cloud users.
Google Cloud Console App: It is a native mobile application powered by Google. The primary aim
of this service is to enable users to manage the core features of Google Cloud services directly from
their mobile devices anytime, anywhere. The primary functions of this service are alerting,
monitoring, and performing critical actions on resources.
Cloud AI
Cloud Machine Learning Engine: It is another fully managed service that allows users to create
Machine Learning models. The service is mainly used for those ML models, which are based on
mainstream frameworks.
Cloud AutoML: It is the type of service that is based on Machine Learning. It helps users to enter
their data sets and gain access to quality trained pre-designed ML models. The service works by
following Google's transfer learning and Neural Architecture Search method.
IoT (Internet of Things)
Cloud IoT Core: It is one of the fully managed core services. It allows users to connect, control, and
ingest data from various devices that are securely connected to the Internet. This allows other Google
cloud services to analyze, process, collect and visualize IoT data in real-time.
Cloud IoT Edge: The Edge computing service brings memory and other computing-power resources
near to the location where it is required.
Advantages of Google Cloud Platform
o Google Cloud Offers Quick and Easy Collaboration: Multiple users can access the data
and simultaneously contribute their information. This is possible because the data is stored on
the cloud servers, not on the user's personal computers.
o Higher Productivity with Continuous Development: Google is always working on adding
new features and functionalities to provide higher productivity to the customers. Therefore,
Google delivers frequent updates to its products and services.
o Less Disruption with Adopting New Features: Instead of pushing huge disruptive updates
of changes, Google provides small updates weekly. This helps users to understand and adopt
new features easily.
o Least or Minimal Data is stored on Vulnerable Devices: Google does not store data on
local devices unless a user explicitly tries to do it. This is because the data stored on local
devices may get compromised compared to the cloud's data.
o Users can access Google Cloud from Anywhere: The best thing is that a user can easily
access the information stored on Google cloud from anywhere because it is operated through
web-based applications.
o Google provides Maximum Security with its Robust Structure: Google hires leading
security professionals to protect user's data. Users get process-based and physical security
features made by Google.
o Users have Full Control over their Data: Users gain full control over services and the data
stored in Google Cloud. If a user does not want to use Google services any longer and wants
to delete the cloud data, it can be easily performed.
o Google provides Higher Uptime and Reliability: Google uses several resources to provide
higher and reliable up-time servers. If a data center is not working for technical issues, the
system will automatically communicate with the secondary center without interruption visible
to users.
Disadvantages of Google Cloud Platform
o Cloud hosting is more expensive than traditional hosting. But, to be honest, it’s worth the
peace of mind.
o Google Cloud DNS is still slower than CloudFlare, so we use the latter for DNS resolution.
o No free support (as far as I know). But Google Cloud has extensive documentation, so we
haven’t had any problems implementing any features yet.
UNIT V IOT PROJECTS ON RASPBERRY PI
Building IOT with RASPBERRY PI
The Internet of Things (IoT) is a scenario in which objects, animals or people are provided with single
identifiers and the capability to automatically transfer and the capability to automatically transfer data
more to a network without requiring human-to-human or human-to-computer communication.
Raspberry Pi

 The Raspberry Pi is a very cheap computer that runs Linux, but it also provides a set of GPIO
(general purpose input/output) pins that allow you to control electronic components for physical
computing and explore the Internet of Things (IoT).
 Raspberry Pi was basically introduced in 2006. It is particularly designed for educational use and
intended for Python.
 A Raspberry Pi is of small size i.e., of a credit card sized single board computer, which is
developed in the United Kingdom (U.K) by a foundation called Raspberry Pi.
 There have been three generations of Raspberry Pis: Pi 1, Pi 2, and Pi 3
 The first generation of Raspberry (Pi 1) was released in the year 2012, that has two types of
models namely model A and model B.
 Raspberry Pi can be plugged into a TV, computer monitor, and it uses a standard keyboard and
mouse.
 It is user friendly as can be handled by all the age groups.
 It does everything you would expect a desktop computer to do like word-processing browsing the
internet spreadsheets, playing games to playing high definition videos.
 All models feature on a broadcom system on a chip (SOC), which includes chip graphics
processing unit GPU (a Video Core IV), an ARM compatible and CPU.
 The CPU speed ranges from 700 MHz to 1.2 GHz for the Pi 3 and on board memory range from
256 MB to 1 GB RAM.
 An operating system is stored in the secured digital SD cards and program memory in either the
MicroSDHC or SDHC sizes.
 Most boards have one to four USB slots, composite video output, HDMI and a 3.5 mm phone jack
for audio. Some models have WiFi and Bluetooth.
 Several generations of Raspberry Pis have been released.
 All models feature a Broadcom system on a chip (SoC) with an integrated ARMcompatible
central processing unit (CPU) and on-chip graphics processing unit (GPU).
 Processor speed ranges from 700 MHz to 1.4 GHz for the Pi 3 Model B+ or 1.5 GHz for the Pi 4;
on-board memory ranges from 256 MB to 1 GB with up to 4 GB available on the Pi 4 random-
access memory (RAM).
 Secure Digital (SD) cards in MicroSDHC form factor (SDHC on early models) are used to store
the operating system and program memory.
 The boards have one to five USB ports. For video output, HDMI and composite video are
supported, with a standard 3.5 mm tip-ring-sleeve jack for audio output.
 Lower-level output is provided by a number of GPIO pins, which support common protocols like
I²C. The B-models have an 8P8C Ethernet port and the Pi 3 and Pi Zero W have on-board Wi-Fi
and Bluetooth.
 The Raspberry Pi, on the other hand, supports a more robust CPU that is capable of running Linux
and supports NodeJS, allowing JavaScript developers to use their existing skillset and build
sophisticated devices with relative ease.
 To interact with the GPIO pins, we use a NodeJS module called onoff that provides simple access
to the individual pins.
Components and Peripherals

 Voltages: Two 5V pins and two 3V3 pins are present on the board, as well as a number of ground
pins (0V). The remaining pins are all general purpose 3V3 pins
 A GPIO pin designated as an output pin can be set to high (3V3) or low (0V). A GPIO pin
designated as an input pin can be read as high (3V3) or low (0V).
 Processor & RAM: Raspberry based on ARM11 processor. Latest version supports 700MHz
processor and 512MB SDRAM. The Central processing unit is the brain of the raspberry pi board
and that is responsible for carrying out the instructions of the computer through logical and
mathematical operations.
 Ethernet: The Ethernet port of the raspberry pi is the main gateway for communicating with
additional devices. The raspberry pi Ethernet port is used to plug your home router to access the
internet.
 USB Ports: It has 2 USB ports. USB port provide current upto 100mA. For connecting devices
that draw current more than 100mA, an external USB powered hub is required.
 Ethernet Port: It has standard RJ45 Ethernet port. Connect Ethernet cable or USB wifi adapter to
provide internet connectivity.
 HDMI Output: It supports both audio and video output. Connect raspberry Pi to monitor using
HDMI cable.
 Composite video Output: Raspberry comes with a composite video output with an RCA jack
that supports both PAL and NTSC video output.
 Audio Output: It has 3.5mm audio output jack. This audio jack is used for providing audio
output to old television along with RCA jack for video.
 GPIO Pins: It has a number of general purpose input/output pins. These pins are used to connect
other electronic components. For example, you can connect it to the temperature sensor to
transmit digital data.
 Display Serial Interface (DSI): DSI interface are used to connect an LCD panel to Raspberry PI.
 Cameral Serial Interface(CSI): CSI interface are used to connect a camera module to Raspberry
PI.
 SD Card slot: Raspberry does not have built in OS and storage. Plug in an SD card loaded with
Linux to SD card slot.
 Power Input: Raspberry has a micro USP connector for power input.
 Memory: The raspberry pi model A board is designed with 256MB of SDRAM and model B is
designed with 51MB.Raspberry pi is a small size PC compare with other PCs. The normal PCs
RAM memory is available in gigabytes. But in raspberry pi board, the RAM memory is available
more than 256MB or 512MB.
 Status LEDs: Raspberry has 5 status LEDs.
o ACT - SD card Access
o PWR - 3.3V power is present
o FDX - Full duplex LAN Connected
o LNK - Link/Network Activity
o 100 - 100 Mbit LAN connected
Raspberry PI Interfaces:

 It supports SPI, serial and I2C interfaces for data transfer.


 Serial: Serial Interface on Raspberry has receive(Rx) and Transmit(Tx) pins for communication
with serial peripherals.
 SPI: Serial Peripheral Interface (SPI) is a synchronous serial data protocol used for
communicating with one or more peripheral devices. In an SPI connection, there is one master
device and one or more peripheral devices. There are 5 pins Raspberry for SPI interface.
 MISO (Master In Slave Out): Master line for sending data to the peripherals.
 MOSI (Master Out Slave In): Slave Line for sending data to the master.
 SCK (Serial Clock): Clock generated by master to synchronize data transmission.
 CE0(Chip Enable 0): To enable or disable devices.
 CE1(Chip Enable 1): To enable or disable devices.
 I2C: I2C Interface pins are used to connect hardware modules. I2C interface allows synchronous
data transfer with two pins: SDA (data line) and SCL (Clock Line).
Features of Raspberry PPI
1. Where the system processing is huge. They can process high end programs for applications like
Weather Station, Cloud server, gaming console etc. With 1.2GHz clock speed and 1 GB RAM
RASPBERRY PI can perform all those advanced functions.
2. RASPBERRY PI 3 has wireless LAN and Bluetooth facility by which you can setup WIFI
HOTSPOT for internet connectivity.
3. RASPBERRY PI had dedicated port for connecting touch LCD display which is a feature that
completely omits the need of monitor.
4. RASPBERRY PI also has dedicated camera port so one can connect camera without any hassle to
the PI board.
5. RASPBERRY PI also has PWM outputs for application use.
6. It supports HD steaming.
Applications

 Hobby projects.
 Low cost PC/tablet/laptop
 IoT applications
 Media center
 Robotics
 Industrial/Home automation
 Server/cloud server
 Print server
 Security monitoring
 Web camera
 Gaming
 Wireless access point
Creating the sensor project
RaspberryPi is a miniaturized low cost computer that has the capability to run OPEN ELEC,
Windows 10 IoT, OSMC, Risc OS and other operating systems customized for specific uses. Besides
the listed operating systems RaspberryPi has an official operating system referred to as Raspbian.
RaspberryPi has a wide variety of models with varying features to cater for different needs. To
support OS management activities such as installation, downloading and set up an OS manager
referred to as New Out of the Box Software (NOOBS) is available and it can be downloaded
here https://www.raspberrypi.org/downloads/noobs/.

Before any RaspberryPi project can be undertaken, you need a correctly configured set up. You need
to select an appropriate model for your task. This article will use model 3 for demonstration. An
HDMI supported full or compact display is required, but it is possible to work without a display. To
control the Pi, a USB mouse and keyboard are required. The operating system of the Pi is installed on
a MicroSD card therefore you need at least an 8 GB card and a card reader. Power supply via micro
USB similar to the one used on smart phones is needed.

The first step in setting up a Pi is installing a Raspian or any other preferred OS via NOOBS. The
operating system has to be downloaded on another computer other than the Pi and moved to a SD
card. The OS can be installed manually or via NOOBS but the NOOBS approach is simpler.
Although, manual installation may be more difficult it offers the flexibility to install custom images.

Manual installation begins by downloading a preferred OS from


here https://www.raspberrypi.org/downloads/. After downloading an image, you need to unzip it using
a tool such as 7-Zip, Unzip or the Unarchiver. To write an image to the SD card an image writing tool
such as Etcher available here https://etcher.io/ needs to be used. Download and install etcher, then use
it to select an image and an SD card where the image will be written. The SD card is then ready to be
inserted on the Pi.

To ensure all devices will be recognized after a boot, there is a specific order of connecting devices.
Begin by linking the HDMI cable with the monitor followed by any devices using USB ports. An
ethernet cable is connected and finally a power adapter is connected after which the Pi will power up.

To demonstrate code development the C# programming language will be used. To support execution
of .NET code the Mono project has to be installed on the Pi using the commands below.

sudo apt-get update

sudo apt-get upgrade

sudo apt-get install mono-complete

To support development of IoT projects, there are several Clayster libraries available at Github. The
data library provides a way of persisting data in the SQLite database that is part of Raspberry Pi. The
EventLog library enables logging. The Internet library provides communication protocols that enable
communication over the Internet. The Language library enables development of applications that can
be internationalized or localized. The Raspberry Pi library provides a way to interact with GPIO pins.
The environment states that will be sensed by our project are motion, temperature and light. The light
and temperature sensors are analog and they are connected through an I2C bus to GPIO pins. To
communicate the status of the Pi 4 LEDs are used. A green LED on GPIO23 shows application status.
A yellow LED on GPIO 24 will show the measurement status. A LED on GPIO 18 will show the
status of HTTP activities. A red LED on GPIO 25 will alert us on occurrence of communication
errors.

To interact with the Pi hardware Clayster libraries mentioned earlier will be used. A constructor is
used to initialize, interact and dispose a hardware resource. It is important to always dispose a
resource before application termination because the OS has no control over hardware resources.

To interact with LEDs the code shown below is used: –

private static DigitalOutput executionLed = new DigitalOutput (23, true);

private static DigitalOutput measurementLed = new DigitalOutput (24, false);

private static DigitalOutput errorLed = new DigitalOutput (25, false);

private static DigitalOutput networkLed = new DigitalOutput (18, false);

To interact with the motion sensor the code shown below is used: –

private static DigitalInput motion = new DigitalInput (22);

To interact with the temperature sensor the code shown below is used: –

private static I2C i2cBus = new I2C (3, 2, 400000);

private static TexasInstrumentsTMP102 tmp102 = new TexasInstrumentsTMP102 (0, i2cBus);

To interact with the light sensor the code shown below is used: –

private static AD799x adc =

new AD799x (0, true, false, false, false, i2cBus);

The variables that will be used to sense the state of the environment are shown below: –

private static bool motion = false;

private static double tempCelsius;


private static double lightDensity;

private static object synchObject = new object ();

To support retrieval of historical records the variables shown below will be used: –

private static List<Record> everySec = new List<Record> ();

private static List<Record> everyMin = new List<Record> ();

private static List<Record> everyHr = new List<Record> ();

private static List<Record> everyDy = new List<Record> ();

private static List<Record> everyMon = new List<Record> ();

Preparing Raspberry Pi

The Raspberry Pi 4 B and Raspberry Pi 400 (which is just a 4 B inside a keyboard) are powered via a
USB Type-C port, which requires a charger that can output 5 volts and 3 amps. Most USB Type-C
phone chargers don't have enough amps to get the job done, unless they have USB PD capability, but
USB-C laptop chargers should all work. While it's unlikely to be a problem, note that Pi 4 models that
were manufactured in 2019 or early 2020 have a bug which prevents them from charging over high-
speed data cables that support USB 3.x 5 or 10 Gbps connections.

All other Raspberry Pi models, including the Raspberry Pi 3 B and Pi Zero / Zero W / Zero 2 W, get
power via a micro USB port, which means that you can give it juice by connecting it to just about any
of the many different third-party chargers or even by attaching it to one of your computer's USB ports.
While you can get away with giving the board a lot less electricity (the Pi Zero W runs perfectly off of
my laptop's USB port), the optimal power source for a Raspberry Pi 3 should have 5 volts and 2.5
amps, which also provides plenty of power for any peripherals you attach to its USB ports.
There are a number of power supplies that are made specifically for Raspberry Pis, including the
official Raspberry Pi 4 power supply (opens in new tab) and the CanaKit 5V 2.5A supply (opens in
new tab)for other Raspberry Pi models.

The Pi doesn't have a built-in power switch, so the default way to turn it on is to plug it in. You can
also find power supplies with built-in on / off switches. However, to avoid data loss, you'll want to
use the shutdown feature in your operating system (OS) before unplugging or switching it off.

Downloading and Installing Raspberry Pi OS

Once you have all the components you need, use the following steps to create the boot disk you will
need to set up your Raspberry Pi. These steps should work on a using a Windows, Mac or Linux-
based PC (we tried this on Windows, but it should be the same on all three).

1. Insert a microSD card / reader into your computer.


2. Download and install the official Raspberry Pi Imager. Available for Windows, macOS or
Linux, this app will both download and install the latest Raspberry Pi OS. There are other ways to do
this, namely by downloading a Raspberry Pi OS image file and then using a third-party app to “burn
it,” but the Imager makes it easier.
3. Click Choose OS.
4. Select Raspberry Pi OS (32-bit) from the OS menu (there are other choices, but for most uses, 32-
bit is the best). Click Choose storage and pick the SD card you’re using.
5. Click the settings button or hit CTRL + SHIFT + X to enter settings.
6. Fill in settings fields as follows and then hit Save. All of these fields are technically optional, but
highly recommended so that can get your Raspberry Pi set up and online as soon as you boot it. If you
don't set a username and password here, you'll have to go through a setup wizard that asks you to
create them on first boot.
 Set hostname: the name of your Pi. It could be "raspberrypi" or anything you like.
 Enable SSH: Allow SSH connections to the Pi. Recommended.
 Use password authentication / public key: method of logging in via SSH
 Set username and password: Pick the username and password you'll use for the Pi
 Configure wireless LAN: set the SSID and password of Wi-FI network
 Wireless LAN country: If you're setting up Wi-Fi, you must choose this.
 Set locale settings: Configure keyboard layout and timezone (probably chosen correctly by
default)
7. Click Write. The app will now take a few minutes to download the OS and write to your card.

Clayster libraries

Console Applications outlines the process to create a simple console application. When we create a
service for a service platform, the executable EXE file already exists. Therefore, we have to create a
library project instead and make sure that the target framework corresponds to the version of the
Clayster distribution.

Such a project will generate a dynamic link library (DLL) file. During startup, the Clayster
executable file will load any DLL file it finds marked as a Clayster Module in its installation folder or
any of its subfolders.

Libraries available in the Clayster distribution

 Clayster.AppServer.Infrastructure: This library contains the application engine available in the


platform. Apart from managing applications, it also provides report tools, cluster support,
management support for operators and administrators; it manages backups, imports, exports,
localization and various data sources used in IoT, and it also provides rendering support for
different types of GUIs, among other things

 Clayster.Library.Abstract: This library contains a data abstraction layer, and is a crucial tool for
the efficient management of objects in the system.

 Clayster.Library.Installation: This library defines the concept of packages.

 Clayster.Library.Meters: It contains an abstraction model for things such as sensors, actuators,


controllers, meters, and so on Apart from the libraries, we will also add two additional references
to the project — this time to two service modules available in the distribution.

 Clayster.HomeApp.MomentaryValues: This is a simple service that displays momentary values


using gauges. We will use this project to display gauges of our sensor values.

 Clayster.Metering.Xmpp: This module contains an implementation of XMPP on top of the


abstraction model defined in the Clayster.Library.Metersznamespace.
thinger.io

 Thinger.io is a platform that allows connecting things to the Internet. And what’s new?
Hardware agnostic: Connect anything! from basic Arduinos with very limited resources, to
more complex embedded systems running linux like Raspberry Pi
 It is Open Source, so you can take the code an build your own cloud if you want. It provides
thing API discovery right out of the box, so you can code your things and interact easily from
the web.
SenseIoT

SenseIoT is a platform for storing and processing sensor data safely and securely in the cloud. It
comes with tools for visualizing data, setting triggers, and remotely managing data. The SenseIoT API
enables developers to integrate the platform and its functions with any devices, sensors, or sensor
networks that can connect to the internet.

The SenseIoT API conforms to the REST design principles and is therefore based on HTTP Requests.
The HTTP requests that are supported are: GET, PUT, POST, DELETE, and OPTIONS. These
methods are for listing, updating, creating, and deleting data respectively. The OPTIONS method
enables third party web clients to do cross-domain requests.

PUT / DELETE Alternative

Clients that are not able to perform PUT or DELETE requests can use the POST parameter

Getting Started with the API

The SenseIoT API is based on HTTP requests, and so you need to be able to perform your own,
customized API requests to interact with the API.
Step 1: Creating an Account Step 2: Log In
Step 3: Create a Sensor
Step 4: Upload Data
Now that we have a sensors, lets give it some data. We can upload multiple data points at the same
time, and give every data point a (UNIX) timestamp. If you don’t give your data points a timestamp,
SenseIoT will timestamp them at the time they are received.
Step 5: Retrieve Data

Client Libraries

We have created a couple of libraries to help you write client applications that access the SenseIoT
API. There are different libraries for different platforms and languages. The libraries are open source,
so feel free to incorporate them into your own app.

iOS and Android Clients

The libraries for iOS and Android are a special case: they also give you easy access to the sensors on
the phone. They contain everything you need to build a context aware app.

Available Client Libraries

o Android
o iOS
o Python
o Ruby
Functionalities

 Device management: Remotely maintain, control and interact with devices regardless of
their location. Check status, change configurations, enable/disable or upgrade devices’
firmware.
 Listeners: When data is received, when it is stored, when a device is connected or
disconnected…
 Rules: Complex scripts, reusable pieces of code or simple ready to use logic.
 Triggers: Pushes data to an external system with Carriots’ triggers. A method to implement
data brokerage.
 SDK application engine: Listeners and rules, both are executed by Carriots SDK engine.
Sandboxing Java execution threads to keep secure and efficient. All the DB is accessible from
the scripts.
 Data export: Integrate with other IT systems, export files creation, data push to other
databases or REST API usage to manage outbound data.
 Custom alarms: Alarms are created by Carriots when something goes wrong. Custom
Alarms creation and management are used to notify, acknowledge and discard for custom
notifications flow.
 User management: Corporate users can manage other user accounts to manage projects or to
define custom defined privileges and visibility.
 Custom control panel: Custom control panel creation with any technology to manage all
Carriots entities using REST API.

Node-RED

Node-RED is a software tool developed by IBM for wiring together hardware devices, APIs and
online services as part of the Internet of Things.

Node-RED provides a browser-based flow editor, which can be used to create JavaScript functions.
Elements of applications can be saved or shared for re-use. The runtime is built on Node.js. The flows
created in Node-RED are stored using JSON.

Node-RED is built on Node.js, taking full advantage of its event-driven, non-blocking model. This
makes it ideal to run at the edge of the network on low-cost hardware such as the Raspberry Pi as well
as in the cloud.

By default, the Node-RED editor is not secured anyone who can access the IP address and port it is
running on can access the editor and deploy changes. This is only suitable if you are running on a
trusted network.
Interfacing the hardware

A Microcontroller is a wonderful piece of engineering. For it to do many things, it needs to interact


with the outside world (Input and Output devices). The process of connecting devices together so that
they can exchange the information is called interfacing. In order for these devices to swap their
information, they must share a common communication protocol.

Generally, communication protocol can be separated two categories: parallel or serial.

Interfaces

A parallel interface refers to a multiline channel with each line capable of transmitting several bits of
data simultaneously. They usually require buses of data transmitting across eight, sixteen, or more
wires. Data is transferred in huge, crashing waves of 1’s and 0’s.

Serial interfaces stream their data, one single bit at a time. These interfaces can operate on as little as
one wire, usually never more than four.

Serial interfaces have certain advantages over parallel interfaces. The most significant advantage is
simpler wiring. In addition, serial interface cables can be longer than parallel interface cables, because
there is much less interaction (crosstalk) among the conductors in the cable.

Most hardware interfaces are serial interfaces sacrificing potential speed in parallel. Serial interfaces
generally use multiple wires to control the flow and timing of binary information along the primary
data wire. Each type of hardware interface defines a method of communicating between a peripheral
and the central processor.

IoT hardware platforms use a number of common interfaces. Sensor and actuator modules can support
one or more of these interfaces:

 USB. Universal Serial Bus is a technology that allows a person to connect an electronic
device to a microcontroller. It is a fast serial bus.
 GPIO. General-purpose input/output pins area generic pin on an integrated circuit or
computer board whose behavior — including whether it is an input or output pin — is
controllable by the user at run time. GPIO pins have no predefined purpose, and go unused by
default. GPIO pins can be designed to carry digital or analog signals, and digital pins have
only two states: HIGH or LOW.
 Digital GPIO can support Pulse Width Modulation (PWM). PWM lets you very quickly
switch a power source on and off, with each “on” phase being a pulse of a particular duration,
or width. The effect in the device can be a lower or higher power level. For example, you can
use PWM to change the brightness of an LED; the wider the “on” pulses, the brighter the
LED glows.
 Analog pins might have access to an on-board analog-to-digital conversion (ADC) circuit. An
ADC periodically samples a continuous, analog waveform, such as an analog audio signal,
giving each sample a digital value between zero and one, relative to the system voltage.
 When you read the value of a digital I/O pin in code, the value can must be either HIGH or
LOW, where an analog input pin at any given moment could be any value in a range. The
range depends on the resolution of the ADC. For example an 8-bit ADC can produce digital
values from 0 to 255, while a 10-bit ADC can yield a wider range of values, from 0 to 1024.
More values means higher resolution and thus a more faithful digital representation of any
given analog signal.
 The ADC sampling rate determines the frequency range that an ADC can reproduce. A higher
sampling rate results in a higher maximum frequency in the digital data. For example, an
audio signal sampled at 44,100 Hz produces a digital audio file with a frequency response up
to 22.5 kHz, ignoring typical filtering and other processing. The bit precision dictates the
resolution of the amplitude of the signal.
 I2C. Inter-Integrated Circuit serial bus uses a protocol that enables multiple modules to be
assigned a discrete address on the bus. I2C is sometimes pronounced “I two C”, “I-I-C”, or “I
squared C”. I has two wires, a clock and data wire.
 SPI. Serial Peripheral Interface/Interchange Bus devices employ a master-slave architecture,
with a single master and full-duplex communication.
 UART. Universal Asynchronous Receiver/Transmitter devices translate data between serial
and parallel forms at the point where the data is acted on by the processor. UART is required
when serial data must be laid out in memory in a parallel fashion.
 RS 232 Recommended Standard 232 is used for obtaining communication between the
computer and circuit such to transfer data between circuit and computer.
Developing embedded systems that interface microcontrollers to the outside world is a fascinating
endeavor.

Persisting data

Persisting data is an important topic in application development, as users typically expect to reuse
data in the future. For Android, there are primarily three basic ways of persisting data:
1. A lightweight mechanism known as shared preferences to save small chunks of data
2. Traditional file systems
3. A relational database management system through the support of SQLite databases

Saving and Loading User Preferences

 Android provides the Shared Preferences object to help you save simple application data.
 For example, your application may have an option that enables users to specify the font size of the
text displayed in your application.
 In this case, your application needs to remember the size set by the user so that the next time he or
she uses the application again, it can set the size appropriately
 In order to do so, you have several options:
1. You can save the data to a file, but you have to perform some file management routines, such
as writing the data to file.
2. Use a database, but saving simple data to a database is overkill, both from a developer’s point
of view and in terms of the application’s run-time performance.
3. Using the SharedPreferences object, however, you save the data you want through the use of
name/value pairs specify a name for the data you want to save, and then both it and its value will
be saved automatically to an XML file for you.

Accessing Preferences Using an Activity

• In the following Try It Out, you learn how to use the Shared Preferences object to store
application data.
• You will also learn how the stored application data can be modified directly by the user
through a special type of activity provided by the Android OS.
• Using Eclipse, create an Android project and name it UsingPreferences.
• Create a new subfolder in the res folder and name it xml. In this newly created folder, add a fi
le and name it myapppreferences.xml
Example

Linked List Concatenation: Consider the problem of concatenating two singly linked lists with n
and m as the number of nodes in them. Say n>m. We need to keep the versions, i.e., we should be able
to original list. One way is to make a copy of every node and do the connections. O(n + m) for
traversal of lists and O(1) each for adding (n + m – 1) connections.

Other way, and a more efficient way in time and space, involves traversal of only one of the two lists
and fewer new connections. Since we assume m<n, we can pick list with m nodes to be copied. This
means O(m) for traversal and O(1) for each one of the (m) connections. We must copy it otherwise
the original form of list wouldn’t have persisted.

Binary Search Tree Insertion: Consider the problem of insertion of a new node in a binary search
tree. Being a binary search tree, there is a specific location where the new node will be placed. All the
nodes in the path from the new node to the root of the BST will observe a change in structure
(cascading). For example, the node for which the new node is the child will now have a new pointer.
This change in structure induces change in the complete path up to the root. Consider tree below with
value for node listed inside each one of them.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy