Module 4
Module 4
Course objectives
Understand about the fundamentals of Internet of Things and its
building blocks along with their characteristics.
life.
Gain insights about the current trends of Associated IOT
technologies and IOT Analytics.
Module-4 (8- Hours Pedagogy)
Associated IoT Technologies :-
Cloud Computing-
Introduction
Virtualization
Cloud Models
Service-Level Agreement in Cloud Computing
Cloud Implementation
Sensor-Cloud-
Sensors-as-a-Service.
(a)Variety:
(b) Availability:
(c) Portability:
(d) Elasticity:
(a)Variety:
The process of virtualization in cloud computing enables an end user organization to
use various types of applications based on the requirements. As an example, suppose
John takes up still photography as a hobby. His resource-limited PC can barely handle
the requirements for a photo editing software, say X-photoeditor. In order to augment
his PC’s regular performance, he uninstalls the X-photoeditor software and purchases a
cloud service, which lets him access a virtual machine (VM). In his VM, he installs the
X-photoeditor software, by which he can edit photos efficiently and, most importantly,
without worrying about burdening his PC or running out of processing resources. After
six months, John’s interest in his hobby grows and he moves on to video-editing too.
For editing his captured videos, he installs a video editing software, Y-videoeditor, in
his VM and can edit videos efficiently. Additionally, he has the option of installing and
using a variety of software for different purposes.
(b) Availability:
Virtualization creates a logical separation of the resources of multiple
entities without any intervention of end users. Consequently, the concept of
virtualization makes available a considerable amount of resources as per user
requirements. The end users feel that there are unlimited resources present
dedicatedly for him/her. Let us suppose that Jane uses a particular email
service. Her account has been active for over ten years now; however, it offers
limited storage of 2 GB. Due to the ever accumulating file attachments in
different emails, her 2 GB complimentary space is exhausted. However, there is
a provision that if she pays $100 annually, she can attach additional space to
her mail service. This upgrade allows her to have more storage at her disposal
for a considerable time in the future.
(c) Portability:
Portability signifies the availability of cloud computing services from
anywhere in the world, at any instant of time. For example, a person flying
from the US to the UK still has access to their documents, although they
cannot physically access the devices on which the data is stored. This has been
made possible by platforms such as Google Drive.
(d) Elasticity:
Through the concept of virtualization, an end user can scale-up or
scale-down resource utilization as per requirements. We have already
explained that cloud computing is based on a pay-per-use model. The end user
needs to pay the amount based on their usage. For example, Jack rents two
VMs in a cloud computing infrastructure from a CSP. VM1 has the Ubuntu
operating system (OS), on which Jack is simulating a network scenario using
Network Simulator-2 (NS2). VM2 has Windows 10 OS, on which he is running a
MATLAB simulation. However, after a few days, Jack feels that his VM2 has
served its purpose and is no longer required. Consequently, he releases VM2
and, after that, he is only billed for VM1. Thus, Jack can scale-up or scale-down
his resources in cloud computing, which employs the concept of virtualization.
(ii) Advantages for CSP:
(a) Resource Utilization:
(b) Effective Revenue Generation:
(a)Resource Utilization:
Typically, a CSP in a cloud computing architecture procures resources
on their own or get them from third parties. These resources are distributed
among different users dynamically as per their requirements. A segment of
a particular resource provided to a user at a time instant, can be provided
to another user at a different time instant. Thus, in the cloud computing
architecture, resources can be re-utilized for multiple users.
(a)Private Cloud:
This type of cloud is owned explicitly by an end user organization. The
internal resources of the organization maintain the private cloud.
(i) Availability :
This metric signifies the amount of time the service will be accessible
for the customer.
(ii) Response Time:
The maximum time that will be taken for responding to a customer
request is measured by response time.
(iii) Portability:
This metric indicates the flexibility of transferring the data to another
service.
(iv) Problem Reporting:
How to report a problem, whom and how to be contacted, is explained
in this metric.
(v) Penalty:
The penalty for not meeting the promises mentioned in the SLA.
Cloud Implementation:
Cloud simulation:
With the rapid deployment of IoT infrastructure for different
applications, the requirement for cloud computing is also increasing.
It is challenging to estimate the performance of an IoT system with the
cloud before real implementation.
On the other hand, real deployment of the cloud is a complex and
costly procedure. Thus, there is a requirement for simulating the system through
a cloud simulator before real implementation.
There are many cloud simulators that provide pre-deployment test
services for repeatable performance evaluation of a system.
Typically, a cloud simulator provides the following advantages to a
customer:
• Pre-deployment test before real implementation
• System testing at no cost
• Repeatable evaluation of the system
• Pre-detection of issues that may affect the system performance
• Flexibility to control the environment
Different types of Cloud Simulators are available.
A few cloud simulators are listed here:
(i) CloudSim
(ii) CloudAnalyst
(iii) GreenCloud
(i) CloudSim
(a)Description:
CloudSim is a popular cloud simulator that was developed at the
University of Melbourne.
This simulator is written in a Java-based environment. In CloudSim, a
user is allowed to add or remove resources dynamically during the
simulation and evaluate the performance of the scenario.
(b) Features:
CloudSim has different features, which are listed as follows:
(1) The CloudSim simulator provides various cloud computing data centers
along with different data center network topologies in a simulation
environment.
(2) Using CloudSim, virtualization of server hosts can be done in a simulation.
(3) A user is able to allocate virtual machines (VMs) dynamically.
(4) It allows users to define their own policies for the allocation of host
resources to VMs.
(5) It provides flexibility to add or remove simulation components dynamically.
(6) A user can stop and resume the simulation at any instant of time.
(ii) CloudAnalyst :
(a)Description:
CloudAnalyst is based on CloudSim. This simulator provides a
graphical user interface (GUI) for simulating a cloud environment,
easily.
The CloudAnalyst is used for simulating large-scale cloud
applications.
(b) Features:
(1) The CloudAnalyst simulator is easy to use due to the presence of the
GUI.
(2) It allows a user to add components and provides a flexible and high
level of configuration.
(3) A user can perform repeated experiments, considering different
parameter values.
(4) It can provide a graphical output, including a chart and table.
(iii) GreenCloud
(a)Description:
GreenCloud is developed as an extension of a packet level
network simulator, NS2.
This simulator can monitor the energy consumption of different
network components such as servers and switches.
(b) Features:
(1) GreenCloud is an open-source simulator with user-friendly GUI.
(2) It provides the facility for monitoring the energy consumption of the
network and its various components.
(3) It supports the simulations of cloud network components.
(4) It enables improved power management schemes.
(5) It allows a user to manage and configure devices, dynamically, in
simulation.
An open-source cloud: OpenStack
For the real implementation of cloud, there are various open-
source cloud platforms available such as OpenStack, CloudStack, and
Eucalyptus.
The OpenStack is free software, which provides a cloud IaaS to
users.
A user can easily use this cloud with the help of a GUI-based web
interface or through the command line.
The service components of OpenStack along with their functions
are depicted in the below table.
Features of OpenStack :
(i) OpenStack allows a user to create and deploy virtual machines.
(ii) It provides the flexibility of setting up a cloud management
environment.
iii) OpenStack supports an easy horizontal scaling: dynamic addition or
removal of instances for providing services to multiple numbers of users.
(iv) This cloud platform allows the users to access the source code and
share their code to the community.
Table: Components in OpenStack
A commercial cloud: Amazon web services (AWS)
Finally, through the Web portal, the end user receives the
services, as shown in the above figure. Based on the type and usage
duration of service, the end user pays the charges to the SCSP.
(ii) Sensor Owner :
The SCSP receives rent from end users with the help of a pre-
defined pricing model. The pricing scheme may include the
infrastructure cost, sensor owners’ rent, and the revenue of the SCSP.
• Cloud computing:
Sensors such as the camera, devices to measure soil moisture, soil
humidity, and soil pH-level are used for serving different agricultural
applications. These sensors produce a huge amount of agricultural data that
need to be analyzed.
Sometimes, based on the data analysis, action needs to be taken, such
as switching on the water pump for irrigation. Further, the data from the
deployed sensors are required to be stored on a long-term basis since it may be
useful for serving future applications. Thus, for agricultural data analysis and
storage, the cloud plays a crucial role.
• Sensors:
The sensors are the major backbone of any IoT application. Similarly,
for agricultural IoT applications, the sensors are an indispensable component. A
few of the common sensors used in agriculture are sensors for soil moisture,
humidity, water level, and temperature.
• Cameras:
Imaging is one of the main components of agriculture. Therefore,
multispectral, thermal, and RGB cameras are commonly used for scientific
agricultural IoT.
These cameras are used for estimating the nitrogen status, thermal
stress, water stress, and crop damage due to inundation/flood, as well as
infestation. Video cameras are used for crop security.
• Satellites:
In modern precision agriculture, satellites are extensively used to
extract information from field imagery. The satellite images are used in
agricultural applications to monitor different aspects of the crops such as crop
health monitoring and dry zone assessing over a large area.
• Analytics:
Analytics contribute to modern agriculture massively. Currently, with
the help of analytics, farmers can take different agricultural decisions, such as
estimating the required amount of fertilizer and water in an agricultural field
and estimating the type of crops that need to be cultivated during the upcoming
season.
Moreover, analytics is not only responsible for making decisions
locally; it is used to analyze data for the entire agricultural supply chain. Data
analytics can also be used for estimating the crop demand in the market.
• Wireless connectivity:
One of the main components of agricultural IoT is wireless
connectivity. Wireless connectivity enables the transmission of the agricultural
sensor data from the field to the cloud/server. It also enables farmers to access
various application services over handheld devices, which rely on wireless
connectivity for communicating with the cloud/server.
• Handheld devices:
Over the last few years, e-agriculture has become very popular. One of
the fundamental components of e-agriculture is a handheld device such as a
smartphone.
Farmers can access different agricultural information, such as soil and
crop conditions of their fields and market tendency, over their smartphones.
Additionally, farmers can also control different field equipment, such as
pumps, from their phones.
• Drones:
Currently, the use of drones has become very attractive in different
applications such as surveillance, healthcare, product delivery, photography,
and agriculture. Drone imaging is an alternative to satellite imaging in
agriculture.
In continuation to providing better resolution land mapping visuals,
drones are used in agriculture for crop monitoring, pesticide spraying, and
irrigation.
An agricultural food chain (agri-chain) represents the different stages that are
involved in agricultural activity right from the agricultural fields to the consumers.
Figure 12.3 depicts a typical agricultural food chain with the different operations that
are involved in it. Additionally, the figure depicts the applications of different IoT
components required for performing these agricultural operations.
In the agri-chain, we consider farming as the first stage. In farming, various
operations, such as seeding, irrigation, fertilizer spreading, and pesticide spraying, are
involved. For performing these operations, different IoT components are used.
As an example, for monitoring the soil health, soil moisture and temperature
sensors are used; drones are used for spraying pesticides; and through wireless
connectivity, a report on on-field soil conditions is sent directly to a users’ handheld
device or cloud.
After farming, the next stage in the agri-chain is transport.
Transport indicates the transfer of crops from the field to the local storage, and
after that, to long-term storage locations.
In transport, smart vehicles can automatically load and unload crops. The
global positioning system (GPS) plays an important role by tracking these smart
devices, and radio frequency identification (RFID) is used to collect information
regarding the presence of a particular container of a crop at a warehouse.
Figure: Use of IoT components in the agricultural chain
Storage is one of the important operations in the agri-chain. It is responsible for
storing crops on a long term basis. Typically, cold storage is used for preserving the crops
for a long time and providing them with the necessary climatic and storage conditions and
protection.
In the storage, cameras are used to keep a check and protect the harvested crops.
The camera feeds are transferred through wireless connectivity to a remote server or a cloud
infrastructure. Moreover, the amount and type of crops stored in a storage location are
tracked and recorded with the help of sensors and cloud computing.
For pushing the crops into the market, processing plays a crucial role in an agri-
chain. Processing includes proper drying and packaging of crops. For drying and packaging,
different sensors are used.
Packaging is the immediate operation prior to pushing the crop into the market.
Thus, it is essential to track every package and store all the details related to the crops in the
cloud.
Logistics enables the transfer of the packed crops to the market with the help of
smart vehicles. These smart vehicles are equipped with different sensors that help in loading
and unloading the packed crop autonomously.
Additionally, GPS is used in these smart vehicles for locating the position of the
packed crops at any instant and tracking their whereabouts. All the logistical information
gets logged in the cloud with the help of wireless connectivity.
Finally, the packed items reach the market using logistical channels. From the
market, these items are accessible to consumers. The details of the sale and purchase of the
items are stored in the form of records in the cloud.
12.1.2 Advantages of IoT in agriculture
Modern technological advancements and the rapid developments in IoT components have
gradually increased agricultural productivity. Agricultural IoT enables the autonomous execution
of different agricultural operations. The specific advantages of the agricultural IoT are as follows:
(i) Automatic seeding:
IoT-based agricultural systems are capable of autonomous seeding and planting over
the agricultural fields. These systems significantly reduce manual effort, error probability,
and delays in seeding and planting.
(ii) Efficient fertilizer and pesticide distribution:
Agricultural IoT has been used to develop solutions that are capable of applying and
controlling the amount of fertilizers and pesticides efficiently. These solutions are based on the
analysis of crop health.
(iii) Water management:
The excess distribution of water in the agricultural fields may affect the growth of crops. On the
other hand, the availability of global water resources is finite. The constraint of limited and often
scarce usable water resources is an influential driving factor for the judicious and efficient
distribution of agricultural water resources. Using the various solutions available for agricultural
IoT, water can be distributed efficiently, all the while, increasing field productivity and yields.
The IoT-enabled agricultural systems are capable of monitoring the water level and moisture in
the soil, and accordingly, distribute the water to the agricultural fields.
(iv) Real-time and remote monitoring:
Unlike traditional agriculture, in IoT-based farming, a stakeholder can remotely monitor different
agricultural parameters, such as crop and soil conditions, plant health, and weather conditions.
Moreover, using a smart handheld device (e.g., cellphone), a farmer can actuate on-field farming
machinery such as a water pump, valves, and other pieces of machinery.
(v) Easy yield estimation:
Agricultural IoT solutions can be used to record and aggregate data, which may be spatially or
temporally diverse, over long periods. These records can be used to come up with various
estimates related to farming and farm management. The most prominent among these estimates is
crop yield, which is done based on established crop models and historical trends.
(vi) Production overview:
The detailed analysis of crop production, market rates, and market demand are essential factors
for a farmer to estimate optimized crop yields and decide upon the essential steps for future
cropping practices. Unlike traditional practices, IoT-based agriculture acts as a force multiplier
for farmers by enabling them to have a stronger hold on their farming as well as crop
management practices, and that too mostly autonomously. Agricultural IoT provides a detailed
product overview on the farmers’ handheld devices.
12.2 Case Studies
In this section, we discuss a few case studies that will provide an overview of real
implementation of IoT infrastructure for agriculture.
12.2.1 In-situ assessment of leaf area index using IoT-based agricultural system
In this case study, we focus on an IoT-based agricultural system developed by Bauer et al. [1].
The authors focus on the in-situ assessment of the leaf area index (LAI), which is considered as
an essential parameter for the growth of most crops. LAI is a dimensionless quantity which
indicates the total leaf area per unit ground area. For determining the canopy (the portion of the
plant, which is above the ground) light, LAI plays an essential role.
Architecture
The authors integrated the hardware and software components of their implementation in order to
develop the IoT-based agricultural system for LAI assessment. One of the important components
in this system is the wireless sensor network (WSN), which is used as the LAI assessment unit.
The authors used two types of sensors:
(i) ground-level sensor (G) and
(ii) reference sensor (R).
These sensors are used to measure photosynthetically active radiation (PAR). The
distance between the two types of sensors must be optimal so that these are not located very far
from one another. In this system, the above-ground sensor (R) acts as a cluster head while the
other sensor nodes (Gs) are located below the canopy. These Gs and R connect and form a star
topology. A solar panel is used to charge the cluster head. The system is based on IoT
architecture. Therefore, a cluster head is attached to a central base station, which acts as a
gateway. Further, this gateway connects to an IoT infrastructure. The architecture of the system is
depicted in Figure 12.4.