IOT Long Answers
IOT Long Answers
Unit 1
1. Characteristics of IOT
2. IOT Protocols -MQTT,CoAP
3. IOT Communication Models - 4 models
4. Big Data Analytics
5. Cloud Computing -Service and Deployment
6. IOT Levels and Deploying Template
Unit 2
1. HTTPLib,URLLib,SMTPLib
2. Raspberry Pi Architecture
3. SPI,I2C
4. Controlling LED(Python)
Unit 3
Unit 4
Unit 5
1. Smart Homes
2. Agriculture
Unit 1 Answers
1. Characteristics of IOT
Answer :
Definition
IoT is a network is of physical objects with unique identifiers that are connected with each other and are embedded
with electronics,software & sensors which enables these objects to collect & exchange data
(or)
IoT refers to the interconnection via the internet of computing devices embedded in everyday objects, enabling them
to send and receive data
Characteristics of IOT
1. Dynamic & Self Adapting
dynamically adapt with the changing contexts
take actions based on their operating conditions, sensed environment
Eg :
Surveillance cameras can change their modes based on day or night
2. Self Configuring
allow a large number of devices to work together to provide certain functionality
Eg :
devices can change their networking & update software automatically
3. Inter Operable Communication Protocols
Iot devices support a number of interoperable communication protocols and can communicate with
other devices and also
with infrastructure
4. Unique Identity
Each IoT device has a unique identity differentiated with a unique identifier (IP address)
5. Integrated into Information Network
integration of IoT devices into information network allow devices to communicate and exchange data with other
devices and systems
Answer :
Answer :
1. IoT Communication Models
IoT Communication Models are of following types
1. Request-Response communication model
client sends requests to the server and the server responds to the requests
When the server receives a request, it decides how to respond, fetches the data, retrieves resource
representations, prepares the response, and then sends the response to the client
Answer :
Big Data analytics is the process of collecting, organizing and analyzing large sets of data (called Big Data) to discover patterns
and other useful information
Big Data Analytics involves collecting data from different sources, munge it in a way that it becomes available to be consumed
by analysts and finally deliver data products useful to the organization business
Characteristics / 5 Vs of big Data
1. Volume
quantity of generated and stored data
2. Velocity
speed at which the data is generated and processed
3. Variety
type and nature of the data.
Eg : text, images, audio, video
4. Veracity
how much the data is reliable
5. Value
refers to data value
Eg :
1. Sensor data generated by IoT systems(eg : Weather Monitoring systems)
2. Machine sensor data collected from sensors established in industrial and energy systems.
3. Health and fitness data generated IoT devices.
4. Data generated by IoT systems for location and tracking vehicles.
5. Data generated by retail inventory monitoring systems
Answer:
It is the delivery of different services through the internet including data storage servers, databases, networking & software
Characteristics
1. broad network access
2. on demand service
3. rapid scalability
4. measured service -pay only for the services used
Services are offered to users in different forms
1. Infrastructure-as-a-service(IaaS):
provides users the ability to provision computing and storage resources.
basic storage and computing capabilities as standardized services over the network.
Servers, storage systems, networking equipment, data centre space etc. are pooled and made available to handle
workloads
Eg : Amazon, GoGrid, 3 Tera, etc
2. Platform-as-a-Service(PaaS)
provides users the ability to develop and deploy application in cloud using the development tools, APIs, software
libraries
layer of software, or development environment is encapsulated & offered as a service, upon which other higher levels
of service can be built.
The customer has the freedom to build his own applications
Eg : Google’s App Engine, Force.com, etc are some of the popular PaaS examples
3. Software-as-a-Service(SaaS)
provides the user a complete software application or the user interface to the application itself.
The Cloud Service Provider manages the cloud infrastructure including servers, application software etc.
complete application is offered to the customer, as a service on demand
Eg : SaaS is offered by companies such as Google, Sales force, Microsoft, Zoho, etc
Answer :
IoT System comprises of the following components
1. Device
An IoT system comprises of devices that provide sensing, actuation, monitoring and control functions
2. Resource
are software components on the IoT device for
1. accessing, processing, and storing sensor information, or
2. controlling actuators connected to the device
3. enable network access for the device
3. Controller Device/Service
sends data from the device to the web service and receives commands from the application (via web services)
for controlling the device.
4. Database
can be either local or in the cloud and stores the data generated by the IoT device
5. Web Service
serve as a link between the IoT device, application, database and analysis components.
can be either implemented using HTTP and REST principles (REST service) or using WebSocket protocol
(WebSocket service).
6. Analysis Component
responsible for analyzing the IoT data and generate results in a form which are easy for the user to understand
7. Application
provide an interface that the users can use to control and monitor various aspects of the IoT system
allow users to view the system status and view the processed data
IoT Levels and Templates
there are 6 types of IoT systems
1. IoT Level-1 system
has a single node/device that performs sensing and/or actuation, stores data, performs analysis and hosts the
application
Level-1 IoT systems are suitable for modeling low-cost and low-complexity solutions where
1. data involved is not big
2. analysis requirements are not computationally intensive ie LessAnalysis need to be done
Eg : used in Home automation system
1. HTTPLib,URLLib,SMTPLib
Answer :
SMTPLib
Simple Mail Transfer Protocol (SMTP) is a protocol which handles sending email and routing email between mail
servers.
The Python SMTPLib module provides an SMTP client session object that can be used to send email.
Eg : -no need to write exact can reduce some attributes also
2. Raspberry Pi Architecture
Answer :
Introduction to Rasperry pie
About the Raspberry Pi Board
Raspberry Pi Interfaces
Raspberry Pi has serial, SPI and I2C interfaces for data transfer
1. Serial
The serial interface on Raspberry Pi has receive (Rx) and transmit (Tx) pins for communication, with serial
Peripherals.
2. SPI - Serial Peripheral Interface (SPI)
is a synchronous serial data protocol used for communication with one or more peripheral devices.
In an SPI connection, there is one master device and one or more peripheral devices.
There are five pins on Raspberry Pi for SPI interface:
1. MISO (Master In Slave Out)
Master line for sending data to the peripherals.
2. MOSI (Master Out Slave In)
Slave line for sending data to the master.
3. SCK (Serial Clock)
Clock generated by master to synchronize data transmission
4. CEO (Chip Enable 0)
To enable or disable devices.
5. CEO (Chip Enable 1)
To enable or disable devices. c)
3. I2C
The I2C interface pins on Raspberry Pi allow you to connect hardware modules. I2C interface allows
synchronous data transfer with just two pins - SDA (data line) and SCL (clock line)
3. SPI,I2C
Answer :
SPI & I2C more detailed
a)I2C
Additionally, an I2C bus is used in the various control architecture, for example, SMBus (System Management Bus), PMBus
(Power Management Bus), IPMI (Intelligent Platform Management Interface), etc
Advantages of I2C communication protocol
There is a lot of advantage of I2C protocol which makes the user helpless to use the I2C protocol in many applications
1. It is the synchronous communication protocol, so no need of precise oscillators for the master and slave.
2. It requires only two-wire, one wire for the data (SDA), and other wire for the clock (SCL).
3. It provides the flexibility to the user to select the transmission rate as per the requirements.
4. In I2C Bus, each device on the bus is independently addressable.
5. It follows the master and slave relationships.
Limitations
1. It consumes more power than other serial communication busses due to open-drain topology.
2. It is good only for a short distance.
3. I2C protocol has some limitation for the number of slaves, the number of the slave depends on the capacitance
of the I2C bus.
b)SPI
The serial peripheral interface is four wire-based full-duplex communication protocol these wire generally known as
1. MOSI (master out slave in),
2. MISO (master in slave out),
3. SCL (a serial clock which produces by the master) and
4. SS (slave select line which use to select specific slave during the communication).
SPI follows the master and slave architecture and communication is always started by the master. Like I2C it is also a
synchronous communication protocol because the clock is shared by the master and slave.
SPI is supported only multi-slave does not support multi-master and slaves are selected by the slave select signal. In SPI
during the communication data is shifted out from the master and shifted into the slave vice- versa through the shift register
Advantages of SPI communication protocol
1. There is no start and stop bits, so the data can be streamed continuously without interruption.
2. It supports full-duplex
3. No need for precision oscillators in slave devices as it uses a master’s clock
4. No complicated slave addressing system like I2C.
5. Higher data transfer rate than I2C (almost twice as fast).
Disadvantages of SPI communication protocol
1. If there is more than one slave in communication then the wiring will be complex.
2. Uses four wires (I2C and UARTs use two).
3. No acknowledgment that the data has been successfully received (I2C has this).
4. No form of error checking like the parity bit in UART.
5. It only allows for a single master.
4. Controlling LED(Python)
Answer :
Unit 3 Answers
Answer :
Introduction
Though both M2M and IoT involve networking of machines or devices, they differ in the underlying technologies,
system architectures and types of applications
Differences
1. Communication Protocols
M2M and IoT can differ in how the communication between the machines or devices happens
M2M uses either proprietary or non-IP based communication protocols for communication within the
M2M area networks
Eg : M2M protocols include ZigBee, Bluetooth, ModBus, M-Bus, WirelessM-Bustec
IoT uses HTTP, CoAP, WebSocket, MQTT,XMPP,DDS,AMQPetc.,
2. Machines in M2M Vs Things in IoT
M2M systems typically have homogeneous machine types within an M2M area network ie Machines in M2M
will be homogenous
"Things" in IoT refers to physical objects that have unique identifiers and can sense and communicate with their
external environment ie Things in IoT will be heterogeneous.
3. Hardware Vs Software Emphasis
emphasis of M2M is more on hardware with embedded modules
the emphasis of IoT is more on softwar
4. Data Collection & Analysis
M2M data is collected in point solutions and often in on-premises storage infrastructure
the data in IoT is collected in the cloud (can be public, private or hybrid cloud)
5. Applications
M2M data is collected in point solutions and can be accessed by onpremises applications such as diagnosis
applications, service management applications,and onpremisis enterprise applications.
IoT data is collected in the cloud and can be accessed by cloud applications such as analytics applications,
enterprise applications, remote diagnosis and management applications, etc
Software-Defined Networking (SDN) is a networking architecture that separates the control plane from the data plane and
centralizes the network controller
SDN vs Conventional Network Architecture
SDN uses simple packet forwarding hardware as opposed to specialized hardware in conventional networks
below Figure shows the conventional network architecture built with a specialized hardware(switches,routers etc.,)
SDN Architecture
Key elements of SDN
1. Centralized Network Controller
With decoupled control and data planes and centralized network controller, the network administrators
can rapidly configure the network
2. Programmable Open APIs
SDN architecture supports programmable open APIs for interface between the SDN application and
control layers (Northbound interface).
3. Standard Communication Interface
SDN architecture uses a standard communication interface between the control and infrastructure layers
(Southbound interface)
Network Function Virtualization (NFV) is a technology that leverages virtualization to consolidate the heterogeneous network
devices onto industry standard high volume servers, switches and storage.
NFV is complementary to SDN as NFV can provide the infrastructure on which SDN can run
NFV Architecture
Key elements of NFV
1. Virtualized Network Function(VNF)
VNF is a software implementation of a network function which is capable of running over the NFV Infrastructure
(NFVI).
2. NFV Infrastructure(NFVI)
NFVI includes compute, network and storage resources that are virtualized.
3. NFV Management and Orchestration
NFV Management on all virtualization-specific management tasks
Orchestration is the automated configuration, management, and coordination of computer systems,
applications, and services
3. NETCONF-YANG
Answer :
Answer :
Limitations of SNMP
1. SNMP is stateless in nature and each SNMP request contains all the information to process the request. The application
needs to be intelligent to manage the device.
2. SNMP is a connectionless protocol which uses UDP as the transport protocol, making it unreliable as there was no
support for acknowledgement of requests.
3. It is difficult to differentiate between configuration and state data in MIBs.
4. Retrieving the current configuration from a device can be difficult with SNMP.
5. Earlier versions of SNMP did not have strong security features.
Unit 4 Answers
Answer :
Service Models & Deployment Models
1. Infrastructure-as-a-service(IaaS):
provides users the ability to provision computing and storage resources.
basic storage and computing capabilities as standardized services over the network.
Servers, storage systems, networking equipment, data centre space etc. are pooled and made available to
handle workloads
provides us infrastructure
It is a type of cloud computing service used by system administrators/ network architects
It simply provides the underlying OS, security, networking and servers for developing the applications
provides access to fundamental resources such as physical machines, virtual machines, virtual storage etc
can scale up/down as per requirement
Advantages
1. user have full control over computing resources through administrative access to Virtual Machines
2. more control to user than SaaS & PaaS
3. Website hosting
Running websites using IaaS can be less expensive than traditional web hosting.
4. Security
The IaaS Cloud Provider may provide better security than your existing software.
5. Maintainence
There is no need to manage the underlying data center or the introduction of new releases of the
development or underlying software. This is all handled by the IaaS Cloud Provider
Eg : Amazon Web services -EC2, IBM Cloud etc
2. Platform-as-a-Service(PaaS)
provides users the ability to develop and deploy application in cloud using the development tools, APIs,
software libraries
layer of software, or development environment is encapsulated & offered as a service, upon which other higher
levels of service can be built.
The customer has the freedom to build his own applications
developers use it
provides a platform & environment(ie runtime environment) to allow developers to build applications & services
over the internet
offers development and deployment tools required the application
Paas services are hosted in the cloud & are accessed by the user via web browser
User do not have control over cloud infrastructure including network, OS, servers, storage
we will interact with UI only & OS will be provided by the vendor
but we have control over the deployed applications & possibly configuration settings for the application
hosting environment
Paas service hosts both hardware & software on its own infrastructure
Advantages
1. cost effective (pay as per use)
2. no need to purchase expensive servers, software or data storage
3. can scale up/down at any time
4. software management (updates etc) are managed by the provider
5. easy deployment of web applications
Eg : Google’s App Engine, Force.com, Windows Azure etc are some of the popular PaaS examples
3. Software-as-a-Service(SaaS)
provides the user a complete software application or the user interface to the application itself.
The Cloud Service Provider manages the cloud infrastructure including servers, application software etc.
complete application is offered to the customer, as a service on demand
provides applications to the cloud‘s end user that are mainly accessed via a web portal or service-oriented
architecture-based web service technology.
These services can be seen as ASP (application service provider) on the application layer.
Usually, a specific company that uses the service would run, maintain and give support so that it can be reliably
used over a long period of time
maintenance of software and hardware done by the vendor - so it removes the cost of h/w and s/w
maintenance at user's end
user need not install the software his machine
generally used by end users
Characteristics
1. it makes the software available over the internet
2. s/w application is maintained by the vendors
3. cost effective (pay as per use)
4. available on demand
5. can be scaled up or scaled down anytime according to our need
6. works on shared model ie one software is used by multiple clients
7. softwares are automatically upgraded
Benefits
1. efficient use of software/licenses
2. platform independence to the user
3. multitenant solutions
4. can be scaled up or scaled down
5. accessible anytime,anywhere
6. reduced time (we can use application directly from the browser)
7. cost effective (pay as per use)
Eg : Google drive, Cisco Webex,Gmail etc & SaaS offered by companies such as Google, Sales force, Microsoft,
Zoho, etc
1. private cloud
private cloud has infrastructure that‘s provisioned for exclusive use by a single organization comprising multiple
consumers such as business units.
It may be owned, managed and operated by the organization, a third party or some combination of them, and it
may exist on or off premises
deployed locally
also called as internal or corporate cloud
Advantages
1. high security
as data doesnt flow outside the sensitive private infra
2. data privacy
only authorised people can access the data
3. more customisable
as companies get to customise their solution as per their requirement
4. deployed locally - so more privacy & security
5. improved reliability
Disadvantages
1. area of operation is limited
as private cloud is accesssible within an organisation only
2. high cost
more costly compared to public cloud
as need to invest in hardware & software
3. limited scalability
compared to public cloud
2. public cloud
public cloud is created for open use by the general public.
Public cloud sells services to anyone on the internet. (Amazon Web Services is an example of a large public
cloud provider.)
This model is suitable for business requirements that require management of load spikes and the applications
used by the business, activities that would otherwise require greater investment in infrastructure for the
business.
fundamental characteristic of public cloud is Multitenancy
Advantages
1. cost efficient & pay per use
public cloud also helps reduce capital expenditure and bring down operational IT costs
2. maintained by cloud service provider so user need not maintain it
3. location independent -because services are delivered through internet
4. high scalability
Disadvantages
1. deployed globally
so less secure as resources are shared publically
2. less customizable as compared to private cloud
Eg :
Google drive
dropbox
EC2 (Amazon elastic compute cloud)
Google App engine -is PaaS for developing & hosting web applications
3. community cloud
community cloud is managed and used by a particular group or organizations that have shared interests, such
as specific security requirements or a common mission
allows services to be accessed by a group of several organisations to share the info b/w the organisation & a
specific community
owned, managed & operated by by 1 or more organisations in the community or 3rd party
Advantages
1. Cost reduction/ cost effective
cheaper than private cloud as multiple companies share the bill which lowers the cost
2. sharing of resources among companies
3. more secure than public cloud but less than private cloud
Disadvantages
1. data is accessible b/w organisations
can result in overall security concerns
2. consistent maintenance cost
3. overall increased cost(than public cost)
4. hybrid cloud
hybrid cloud combines two or more distinct private, community or public cloud infrastructures such that they
remain unique entities but are bound together by standardized or proprietary technology that enables data and
application portability.
Normally, information that‘s not critical is outsourced to the public cloud, while business-critical services and
data are kept within the control of the organization
it is mixture/combination of features of both public & private cloud
1. for critical activities are performed by private cloud
2. for non-critical activities are performed by public cloud
Advantages
1. Scalability
2. Security
3. Low Cost
4. Flexibility
Disadvantages
1. managing is difficult or complex
because there are more than 1 type of deployment models
dependency on infrastructure
Answer :
Answer :
About Django
Django Architecture
Answer :
has 4 components
1. Smart Lighting
Helps in saving energy by adapting the lighting to the ambient conditions and switching on/off or diming the
light when needed.
Key enabling technologies for smart lighting include solid state lighting and IP-enabled lights.
Smart lighting solutions for home achieve energy saving by sensing the human movements and their
environments and controlling the lights accordingly.
Wireless –enabled and internet connected lights can be controlled remotely from IoT applications such as a
mobile or web application
2. Smart Appliances
Smart appliances make the management easier and provide status information of appliances to the users
remotely. E.g: smart washer/dryer that can be controlled remotely and notify when the washing/drying cycle is
complete.
Open Remote is an open source automation platform for smart home and building that can control various
appliances using mobile and web applications.
It comprises of three components:
1. Controller
manages scheduling and runtime integration between devices.
2. Designer
allows to create both configuration for the controller and user interface designs.
3. Control Panel
allows to interact with devices and control them
3. Intrusion Detection
Home intrusion detection systems use security cameras and sensors to detect intrusions and raise alerts.
The form of the alerts can be in form:
1. SMS
2. Email
3. Image grab or a short video clip as an email attachment
4. Smoke/Gas Detectors
Smoke detectors are installed in homes and buildings to detect smoke that is typically an early sign of fire.
It uses optical detection, ionization or air sampling techniques to detect smoke
Alerts raised by smoke detectors can be in the form of signals to a fire alarm system.
Gas detector can detect the presence of harmful gases such as carbon monoxide (CO), liquid petroleum gas
(LPG), etc.
2. Smart Agriculture
Answer :
it has 2 components
1. Smart Irrigation
Smart irrigation systems can improve crop yields while saving water
The systems use IoT devices with soil moisture sensors to determine the amount of moisture in the soil and
release flow of water through the irrigation pipes only when the moisture levels go below a predefined
threshold
The system also collect the moisture level measurements on a server or in the cloud where data can be analysed
to plan the watering scheduling
Cultivator’s rain cloud
2. Green House Control
It controls temperature ,humidity, soil moisture , light and carbon dioxide levels are monitored using sensors
and climatological conditions are controlled automatically using actuation devices
IoT systems plays an important role in green house control and help in improving productivity.
The data collected from various sensors is stored on centralized servers or in the cloud where analysis is
performed to optimize the control strategies and also correlate the productivity with different control strategies.