Iot Module 4 Notes
Iot Module 4 Notes
Module-4
IOT CASE STUDIES Agricultural IoT – Introduction and Case Studies Textbook 1:
Chapter 10– 10.1 to 10.6; Chapter 12- 12.1-12.2Cloud Computing
10.1 Introduction
Cloud computing is more than traditional network computing. Unlike network
computing, cloud computing comprises a pool of multiple resources such as servers,
storage, and network from single/multiple organizations. These resources are allocated
to the end users as per requirement, on a payment basis. In cloud computing
architecture, an end user can request for customized resources such as storage space,
RAM, operating systems, and other software to a cloud service provider (CSP) as shown
in Figure 10.1. For example, a user can request for a Linux operating system for
running an application from a CSP; another end user can request for Windows 10
operating system from the same CSP for executing some application. The cloud
services are accessible from anywhere and at any time by an authorized user through
Internet connectivity.
User
a) Network computing
Resourc
epool User
A
User
B
b) Cloud computing
The services of cloud computing are based on the pay-per-use model. The concept is
the same as paying utility bills based on consumption. In cloudcomputing, a user pays
for the cloud services as per the duration of their resource usage. On the other hand,
there is a CSP, that provides cloud services to end user organizations.
10.2 Virtualization
The key concept of cloud computing is virtualization. The technique of sharing a single
resource among multiple end user organizations or end users is known as
virtualization. In the virtualization process, a physical resource is logically distributed
among multiple users. Figure 10.2(a) represents a traditional desktop, where an
application (App) is running on top of an OS, and resources are utilized only for that
particular application. On the other hand, multiple resources can be used by different
end users through virtualization software, as shown in Figure 10.2(b).
(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
Virtualization
Different operating systems can be installed in these processors and each of them
can work as stand-alone machines.
(ii) Storage Virtualization: In storage virtualization, the storage space from different
entities are accumulated virtually, and seem like a single storage location.
Through storage virtualization, a user’s documents or files exist in different
locations in a distributed fashion. However, the users are under the impression
that they have a single dedicated storage space provided to them.
(iii) Application Virtualization: A single application is stored at the cloud end.
However, as per requirement, a user can use the application in his/her local
computer without ever actually installing the application. Similar to storage
virtualization, in application virtualization, the users get the impression that
applications are stored and executed in their local computer.
(iv) Desktop Virtualization: This type of virtualization allows a user to access and
utilize the services of a desktop that resides at the cloud. The users can use the
desktop from their local desktop.
1. Software-as-a-Service (SaaS)
2. Platform-as-a-Service (PaaS),
3. Infrastructure-as-a-Service (IaaS).
Software-as-a-service
Cloud model
Infrastructure-as-a-service
Private cloud
Community cloud
Deployment model
Public cloud
Hybrid cloud
User 2
User 2
App 2
User 1 User 3 App 1 App 3 User 3
User 1
Software B
Software D
Software C Platform
User 2
User 1 User 3
Database Networks
(c) IaaS
(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.
(b) Community Cloud: This cloud forms with the collaboration of a set of
organizations for a specific community. For a community cloud, each
organization has some shared interests.
(c) Public Cloud: The public cloud is owned by a third-party organization,
which provides services to the common public. The service of this cloud is
available for any user, on a payment basis.
(d) Hybrid Cloud: This type of cloud comprises two or more clouds (private,
public, or community).
Currently, different types of cloud simulators are available. A few cloud simulators
are listed here:
(i) CloudSim
(a) Description: CloudSim [3] 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
(iii) GreenCloud
Features of OpenStack
Component Function
Nova Compute
Neutron Networking
Cinder Block storage
Keystone Identity
Glance Image
Swift Object storage
Horizon Dashboard
Trove Database
Sahara Elasticmap reduce
Features of AWS
Used by
multiple users
Single user
application
Aggregated data
Deployed WSN
by single user
Used by
multiple users
Multiple user
applications
Sensor
virtualization
Aggregated data
Deployed sensor
nodes by different
scnsor-owners
Cloud
Web interface
SCSP
Sensor
owners
End-users
Sensor allocation
Virtualization
Registration Data center
Login management
Template selection Data extraction
Service Maintenance
Data caching
....
Figure 10.8 Sensor-cloud architecture
Agricultural IoT
Figure 12.1 depicts a basic architecture of an agricultural IoT.
20%
20%
Flow
Sensor D 20%
20%
20%
20%
Sensor D
100
20%
100
20%
90
20%
80
70
90
20%
60
80
70
60
Sensor A Sensor C
Drone
100%
90%
80%
70%
60%
Cloud computing
Analytics
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
Mrs. Nayana Prashanth, DEPT OF ISE, 19
SKIT
BETCK105H /Introduction to IOT Module-4
et al. [1]. 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.
IoT
MQTT infrastructure
Broker
Internet
Cluster 1 Cluster 2
Hardware
For sensing and transmitting the data from the deployment fields to a centralized unit,
such as a server and a cloud, different hardware components are used in the system. The
commercial off-the-shelf (COTS) TelosB platform is used in the system. The TelosB motes
are equipped with three types of sensors: temperature, humidity, and light sensors. With
the help of an optical filter and diffuser accessory on the light sensors, the PAR is
calculated to estimate the LAI. The system is based on the cluster concept. A Raspberry-
Pi is used as a cluster head, which connects with four ground sensor motes.
Mrs. Nayana Prashanth, DEPT OF ISE, 20
SKIT
BETCK105H /Introduction to IOT Module-4
The real deployment of the LAI assessment system involves various environmental
and wild-life challenges. Therefore, for reliable data delivery, the authors take the
redundant approach of using both wired and wireless connectivity. In the first
deployment generation, USB power supply is used to power-up the sensors motes.
Additionally, the USB is used for configuring the sensor board and accessing the
failure as per requirement. In this setup, a mechanical timer is used to switch off the
sensor nodes during the night. In the second deployment generation, the cluster is
formed with wireless connectivity. The ground sensor motes consist of external
antennas, which help to communicate with the cluster head. A Raspberry-Pi with
long-term evolution (LTE) is used as a gateway in this system.
Communication
The LAI system consists of multiple components, such as WSN, IoT gateway, and IoT-
based network. All of these components are connected through wired or wireless
links. The public land mobile network (PLMN) is used to establish connectivity
between external IoT networks and the gateway. The data are analyzed and visualized
with the help of a farm management information system (FMIS), which resides in the
IoT-based infrastructure. Further, a prevalent data transport protocol: MQTT, is used
in the system. We have already explored the details of MQTT in Chapter 8. MQTT isa
very light-weight, publish/subscribe messaging protocol, which is widely used for
different IoT applications. The wireless LAN is used for connecting the cluster head
with a gateway.
Software
Software is an essential part of the system by which different operations of the system
are executed. In order to operate the TelosB motes, TinyOS, an open-source, low-power
operating system, is used. This OS is widely used for different WSN applications. Typically,
in this system, the data acquired from the sensor node is stored with a timestamp and
sequence number (SN). For wired deployments (the first-generation deployment), the
sampling rate used is 30 samples/hour. However, in the wireless deployment (the second
generation), the sampling rate is significantly reduced to 6 samples/hour.
IoT Architecture
The MQTT broker runs in the Internet server of the system. This broker is responsible for
receiving the data from the WSN. In the system, the graphical user interface (GUI) is
built using an Apache server. The visualization of the data is performed at the server
itself. Further, when a sensor fails, the server informs the users. The server can provide
different system-related information to the smartphone of the registered user.
Architecture
The architecture of this system consists of three layers: Sensing and actuating layer,
remote processing and service layer, and application layer. These layers perform
dedicated tasks depending on the requirements of the system. Figure 12.5 depicts the
architecture of the system. The detailed functionalities of different layers of this
system are as follows:
(i) Sensing and Actuating layer: This layer deals with different physical devices,
such as sensor nodes, actuators, and communication modules. In the system,a
specially designated sensor node works as a cluster head to collect data from
other sensor nodes, which are deployed on the field for sensing the value of soil
moisture and water level. A cluster head is equipped with two communication
module: ZigBee (IEEE 802.15.4) and General Packet Radio Service (GPRS). The
communication between the deployed sensor nodes and the cluster head takes
place with the help of ZigBee. Further, the cluster heads use GPRS to transmit
data to the remote server. An electrically erasable programmable read-only memory
(EEPROM), integrated with the cluster head, stores a predefined threshold value
of water levels and soil moisture. When the sensed value of the deployed sensor
node drops below this predefined threshold value, a solenoid (pump) activates
to start the irrigation process. In the system, the standard EC-05 soil moisture
Mrs. Nayana Prashanth, DEPT OF ISE, 22
SKIT
BETCK105H /Introduction to IOT Module-4
sensor is used along with the water level sensor, which is specifically designed
and developed for this project. A water level sensor is shown in Figure 12.6(a).
(ii) Processing and Service layer: This layer acts as an intermediate layer between the
sensing and actuating layer and the application layer. The sensed and process data
is stored in the server for future use. Moreover, these data are accessibleat any
time from any remote location by authorized users. Depending on the sensed values
from the deployed sensor nodes, the pump actuates to irrigate the field. A
processing board as depicted in Figure 12.6(b) is developed for the project.
(iii) Application layer: The farmer can access the status of the pump, whether it is in
switch on/off, and the value of different soil parameters from his/her cell phone.
This information is accessible with the help of the integrated GSM facility of the
farmers’ cell phone. Additionally, an LED array indicator and LCD system is
installed in the farmers’ house. Using the LCD and LED, a farmer can easily track
the condition of his respective fields. Apart from this mechanism, a farmercan
manually access field information with the help of a Web-based application.
Moreover, the farmer can control the pump using his/her cell phone from a
remote location.
Deployment
The system has been deployed and experimented in two agricultural fields: (i) an
agricultural field at the Indian Institute of Technology Kharagpur (IIT Kharagpur),
India, and (ii) Benapur, a village near IIT Kharagpur, India. Both the agricultural fields
were divided into 10 equal sub-fields of 3× 3m2. In order to examine the
performance, the system was deployed at over 4 sub-fields. Each of these sub-fields
consists of a solenoid valve, a water level sensor, and a soil moisture sensor, along with
a processing board.
***