Lecture 01 - Introduction To IoTs

Download as pdf or txt
Download as pdf or txt
You are on page 1of 33

INTERNET OF THINGS

Chapter 1
INTERNET OF THINGS A HANDS ON APPROACH
Introduction to IoTs
What is IoT?

▪ IoT is a network of physical objects embedded with electronics,


software, sensors, and connectivity
▪ Enables objects to collect and exchange data, making them
smart and data-capable
Objectives of IoT

▪ Empower almost any object to become smart and data-capable


▪ Benefit from advances in communications, computation, and
interconnectivity
Learning Outcomes
▪ LO1: Analyse what aspects of IoT are necessary and appropriate when
designing software applications
▪ LO2: Outline a plan for an appropriate IoT application, using common
architecture, frameworks, tools, hardware and APIs
▪ LO3: Develop an IoT application using any combination of hardware,
software, data, platforms and services
▪ LO4: Evaluate your IoT application and the problems it might encounter
when integrating into the wider IoT ecosystem
Materials of Course
▪ Login to CMS (http://cms.btec.edu.vn/) with student
account ([email protected])
▪ Choose correct class
▪ Enroll by class name (SE0xx0x)
▪ CMS Folder:
• Slides
• Lab
• Assignment
• EBook
Preparation for Course
▪ Parts, libraries required for project (List in each Lab)
▪ IDE: Ardunio
Objectives

▪ Understand the Core Concepts of IoT


▪ Explore Communication Protocols in IoT
▪ Demystify Functional Blocks and Communication Models
Topics
▪ IoT definition
▪ Characteristics of IoT
▪ Physical Design of IoT
▪ Logical Design of IoT
▪ IoT Protocols
▪ IoT Levels & Deployment Templates
IoT definition
A dynamic global network infrastructure
with self-configuringcapabilities based
on standard and interoperable
communicationprotocols where physical
and virtual “things” have identities,
physicalattributes, and virtual
personalities and use intelligent
interfaces, andare seamlessly integrated
into the information network,
oftencommunicate data associated with
users and their environments.
Characteristics of IoT

• Dynamic & Self-Adapting


• Self-Configuring
• Interoperable Communication Protocols
• Unique Identity
• Integrated into Information Network
Physical Design of IoT (1/2)
▪ The “Things” in IoT usually refers to IoT devices which have unique
identities and can perform remote sensing, actuating and
monitoring capabilities.
▪ IoT devices can:
• Exchange data with other connected devices and applications
(directlyorindirectly), or
• Collect data from other devices and process the data locally or
Physical Design of IoT (2/2)
• Send the data to centralized servers or cloud-based applicationback-ends
forprocessing the data, or
• Perform some tasks locally and other tasks within the IoT infrastructure,
based on temporal and space constraints.
Generic block diagram of an IoT Device
▪ An IoT device may consist of several
interfaces for connections to other
devices, both wired and wireless:
• I/O interfaces for sensors
• Interfaces for Internet connectivity
• Memory and storage interfaces
• Audio/video interfaces
IoT Protocols
▪ Link Layer
• 802.3 – Ethernet
• 802.11 – WiFi
• 802.16 – WiMax
• 802.15.4 – LR-WPAN
• 2G/3G/4G
▪ Network/Internet Layer
• IPv4
• IPv6
• 6LoWPAN
▪ Transport Layer
• TCP
• UDP
▪ Application Layer
• HTTP
• CoAP
• WebSocket
• MQTT
• XMPP
• DDS
• AMQP
Logical Design of IoT
▪ Logical design of an IoT system refers to an abstract representation of the entities
and processes without going into the low-level specifics of the implementation.
▪ An IoT system comprises of a number of functional blocks that provide the system
the capabilities for identification, sensing, actuation, communication, and
management.
Request-Response Communication Model
▪ Request-Response is a communication model in which the 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
Publish-Subscribe Communication Model (1/2)
▪ Publish-Subscribe is a communication model that involves publishers,
brokers and consumers
▪ Publishers are the source of data. Publishers send the data to the
topics which are managed by the broker. Publishers are not aware of
the consumers
▪ Consumers subscribe to the topics which are managed by the broker
▪ When the broker receives data for a topic from the publisher, it sends
the data to all the subscribed consumers
Publish-Subscribe Communication Model (2/2)
Push-Pull Communication Model (1/2)
▪ Push-Pull is a communication model in which the data producers push
the data to queues and the consumers pull the data from the queues.
Producers
▪ Queues help in decoupling the messaging between the producers and
consumers
▪ Queues also act as a buffer which helps in situations when there is a
mismatch between the rate at which the producers push data and the
rate rate at which the consumers pull data
Push-Pull Communication Model (2/2)
Exclusive Pair Communication Model
▪ Exclusive Pair is a bidirectional, fully
duplex communication model that
uses a persistent connection between
the client and server
▪ Once the connection is setup it
remains open until the client sends a
request to close the connection
▪ Client and server can send messages to
each other after connection setup
REST-based Communication APIs
▪ Representational State Transfer (REST)
is a set of architectural principles by
which you can design web services and
web APIs that focus on a system’s
resources and how resource states are
addressed and transferred
▪ REST APIs follow the request- response
communication model
▪ The REST architectural constraints
apply to the components, connectors,
and data elements, within a distributed
hypermedia system
WebSocket-based Communication APIs
▪ WebSocket APIs allow bi- directional, full duplex communication between clients and servers
▪ WebSocket APIs follow the exclusive pair communication model
IoT Levels & Deployment Templates (1/2)
An IoT system comprises of the following components:
▪ Device: An IoT device allows identification, remote sensing, actuatingandremote
monitoring capabilities. You learned about various examplesofIoTdevices in section
▪ Resource: Resources are software components on the IoT deviceforaccessing,
processing, and storing sensor information, or controllingactuators connected to the
device. Resources also include thesoftwarecomponents that enable network access
for the device
▪ Controller Service: Controller service is a native service that runsonthedevice and
interacts with the web services. Controller servicesendsdatafrom the device to the
web service and receives commands fromtheapplication (via web services) for
controlling the device
IoT Levels & Deployment Templates (2/2)
▪ Database: Database can be either local or in the cloud andstoresthedatagenerated
by the IoT device
▪ Web Service: Web services serve as a link between the IoT device, application,
database and analysis components. Web servicecanbeeitherimplemented using
HTTP and REST principles (REST service) or usingWebSocket protocol (WebSocket
service)
▪ Analysis Component: The Analysis Component is responsiblefor analyzingthe IoT
data and generate results in a form which are easy for theusertounderstand
▪ Application: IoT applications provide an interface that the users canusetocontrol and
monitor various aspects of the IoT system. Applicationsalsoallow users to view the
system status and view the processeddata
IoT Level-1
▪ A level-1 IoT system has a single
node/device that performs sensing
and/or actuation, stores data,
performs analysis and hosts the
application
▪ Level-1 IoT systems are suitable for
modeling low- cost and low-complexity
solutions where the data involved is
not big and the analysis requirements
are not computationally intensive
IoT Level-2
▪ A level-2 IoT system has a single node that
performs sensing and/or actuation and local
analysis
▪ Data is stored in the cloud and application is
usually cloud- based
▪ Level-2 IoT systems are suitable for solutions
where the data involved is big, however, the
primary analysis requirement is not
computationally intensive and can be done
locally itself
IoT Level-3
▪ A level-3 IoT system has a single node.
Data is stored and analyzed in the cloud
and application is cloud- based
▪ Level-3 IoT systems are suitable for
solutions where the data involved is big
and the analysis requirements are
computationally intensive
IoT Level-4
▪ A level-4 IoT system has multiple nodes that
perform local analysis. Data is stored in the
cloud and application is cloud-based.
▪ Level-4 contains local and cloud- based
observer nodes which can subscribe to and
receive information collected in the cloud
from IoT devices
▪ Level-4 IoT systems are suitable for solutions
where multiple nodes are required, the data
involved is big and the analysis requirements
are computationally intensive
IoT Level-5
▪ A level-5 IoT system has multiple end nodes
and one coordinator node
▪ The end nodes that perform sensing and/or
actuation
▪ Coordinator node collects data from the end
nodes and sends to the cloud
▪ Data is stored and analyzed in the cloud and
application is cloud-based
▪ Level-5 IoT systems are suitable for solutions
based on wireless sensor networks, in which
the data involved is big and the analysis
requirements are computationally intensive
IoT Level-6
▪ A level-6 IoT system has multiple
independent end nodes that perform
sensing and/or actuation and send data to
the cloud.
▪ Data is stored in the cloud and application is
cloud-based
▪ The analytics component analyzes the data
and stores the results in the cloud database
▪ The results are visualized with the cloud-
based application
▪ The centralized controller is aware of the
status of all the end nodes and sends control
commands to the nodes
Summary
▪ Understanding the Power of IoT
▪ Communication Protocols is the Backbone of IoT
▪ Building Blocks and Communication Models

You might also like