ETI-unit2-Notes-Msbte-Store
ETI-unit2-Notes-Msbte-Store
connected as input to the ports of the system to capture the change in measuring
variable and actuator are connected to output port as a final control element to control
the system as per change in input variables within the specified range. For example,
air conditioning system at home is used to control the room temperature as per the
specified limit.
Application specific user's interface: Most of the embedded system comes with
Application specific user's interface such as switches, buttons, display, light, bell,
keypad etc. For example, mobile phone comes with user interface such as Keyboard,
LCD or LED display, Speaker, vibration alert etc.
2.1.3 Architecture of Embedded System:
Application of PIC:
1. Motor Control, Digital Power & Lighting
Motor Control
Digital Power
Lighting
Automotive
Home Appliance
High Temperature for 150C
2. Human Interface
Graphics Solutions
Segmented LCD
Touch Sensing Solutions
Audio and Specch
3. Connectivity
Wireless
USB
Ethernet
CAN
(b) AVR (Alf-EgilBogenVegardWollan RISC microcontroller or Advanced Virtual
RISC)
AVR was developed in the year 1996 by Atmel Corporation and the architecture of AVR was
designerd By Alf-EgilBogen and VegardWollan. AVR and Alf-
EgilBogenVegardWollanRISC microcontroller, also known as Advanced Virtual RISC, AVR
microcontroller executes most of the instructions in single execution cycle. AVRS are about
four times faster than PICS and consumes less power. AVRS can be operated in different
power saving modes.
Features of AVR
Applications of AVR
Signal sensing and Data acquisition
Motion control and Interface motors
Displays on LCD
Interface any type of sensors and transducers
Interface GSM and GPS
Control and automation of industrial plants, mechanical & electrical systems
Automation of heavy machineries
Developments for UAVS (Unmanned Aerial Vehicles)
Light sensing, Temperature sensing & controlling devices
Fire detection & safety devices
Industrial instrumentation devices
Process control devices
(c) ARM microcontroller
The ARM (Advanced RISC machine) is a 32-bit Reduced Instructions Set Computer (RISC)
microcontroller and introduced by the Acron computers' organization in 1987.The ARM
architecture uses a 'Harvard architecture' which support separate data and instruction buses
for communicating with the ROM and RAM memories.The ARM microcontrollers support
for both low-level and high-level programming languages.
Features of ARM mierocontroller
Load/store RISC architecture.
An ARM and Thumb instruction sets i.e. 32-bit instructions can be freely intermixed
with16-bit instructions in a program.
Efficient multi-core processing and easier coding for developers.
Support multi-processing
networks. Data rates for these standards range from 9.6 Kb/s (for 2G) to upto 100 Mb/s
(for4G) and are available from the 3GPP websites.
Network/Internet Layer Protocols: The network layers are responsible for sending of IP
datagrams from the source network to the destination network. This layer performs the host
addressing and packet routing. The datagrams contain the source and destination addresses
which are used to route them from the source to destination across multiple networks. Host
identification is done using hierarchical IP addressing schemes such as IPV4 or IPV6.
IPV4: Internet Protocol version 4 (IPV4) is the most deployed Internet protocol that is used
to identify the devices on a network using a hierarchical addressing scheme. IPV4 uses a 32-
bit address scheme that allows total of 232 or 4,294,967,296 addresses. IPV4 has been
succeeded by IPV6. The IP protocols establish connections on packet networks, but do not
guarantee delivery of packets. Guaranteed delivery and data integrity are handled by the
upper layer protocols (such as TCP).
IPV6: Internet Protocol version 6 (IPV6) is the newest version of Internet protocol and
successor to IPv4, IPV6 uses 128-bit address scheme that allows total of 2128 or 3.4 x 1038
addresses.
6LOWPAN: 6LOWPAN (IPV6 over Low power Wireless Personal Area Networks) brings
IP protocol to the low-power devices which have limited processing capability, 6LOWPAN
operates in the 2.4 GHz frequency range and provides data transfer rates of 250 Kb/s.
6LOWPAN works with the 802.15.4 link layer protocol and defines compression
mechanisms for IPV6 datagrams over IEEE 802.15.4-based networks.
Transport Layer Protocols:
The Transport layer protocols provide end-to-end message transfer capability independent of
the underlying network. The message transfer capability can be set up on connections, either
using handshakes (as in TCP) or without handshakes/acknowledgements (as in UDP). The
transport layer provides functions such as error control, segmentation, flow control and
congestion control.
TCP: Transmission Control Protocol (TCP) is the most widely used transport layer protocol,
that is used by web browsers (along with HTTP, HTTPS application layer protocols), email
programs (SMTP application layer protocol) and file transfer (FTP), TCP is a connection
oriented and stateful protocol. TCP ensures reliable transmission of packets in-order and also
provides error detection capability so that duplicate packets can be discarded and lost packets
are retransmitted,
UDP: UDP is a connectionless protocol. UDP is useful for time-sensitive applications that
have very small data units to exchange and do not want the overhead of connection setup.
UDP is a transaction oriented and stateless protocol. UDP does not provide guaranteed
delivery, ordering of messages and duplicate elimination. Higher levels of protocols can
ensure reliable delivery or ensuring connections created are reliable.
Application Layer Protocols: Application layer protocols define how the applications
interface with the lower layer protocols to send the data over the network. The application
data, typically in files, is encoded by the application layer protocol and encapsulated in the
transport layer protocol which provides connection or transaction oriented communication
over the network. Port numbers are used for application addressing (for example port 80 for
HTTP, port 22 for SSH, etc.). Application layer protocols enable process-to-process
connections using ports.
HTTP: Hypertext Transfer Protocol (HTTP) is the application layer protocol that forms the
foundation of the World Wide Web (WWW)., HTTP includes commands such as GET, PUT,
POST, DELETE, HEAD, TRACE, OPTIONS, etc. The protocol follows a request-response
model where a client sends requests to a server using the HTTP commands. HTTP is a
stateless protocol and each HTTP request is independent of the cther requests. An HTTP
client can be a browser or an application running on the client (e.g., an application running
onan IoT device, a mobile application or other software). HTTP protocol uses Universal
Resource Identifiers (URIS) to identify HTTP resources.
COAP: Constrained Application Protocol (COAP) is an application layer protocol for
machine-to-machine (M2M) applications, meant for constrained environments with
constrained devices and constrained networks. Like HTTP, COAP is a web transfer protocol
and uses a request-response model, however it runs on top of UDP instead of TCP. COAP
uses a client-server architecture where clients communicate with servers using connectionless
datagrams. COAP is designed to easily interface with HTTP. Like HTTP, COAP supports
methods such as GET, PUT, POST, and DELETE. COAP draft specifications are available
on IEFT Constrained environments (CORE) Working Group website.
WebSocket: WebSocket protocol allows full-duplex communication over a single socket
connection for sending messages between client and server, WebSocket is based on TCP and
allows streams of messages to be sent back and forth between the client and server while
keeping the TCP connection open. The client can be a browser, a mobile application or an
IoT device.
MQTT: Message Queue Telemetry Transport (MQTT) is a light-weight messaging protocol
based on the publish-subscribe model. MQTT uses a client-server architecture where the
client (such as an IoT device) connects to the server (also called MQTT Broker) and
publishes messages to topics on the server. The broker forwards the messages to the clients
subscribed to topics. MQTT is well suited for constrained environments where the devices
have limited processing and memory resources and the network bandwidth is low.
XMPP: Extensible Messaging and Presence Protocol (XMPP) is a protocol for mal
communication and streaming XML data between network entities. XMPP powers wide
range of applications including messaging, presence, data syndication, gaming, multi-party
chat vice /video calls. XMPP allows sending small chunks of XML data from one network cu
to another in near real-time. XMPP is a decentralized protocol and uses a client. architecture
XMPP supports both client-to-server and server-to-server communication part la the context
of IoT, XMPP allows real-time communication between IoT devices,
DDS: Data Distribution Service (DDS) is a data-centric middleware standard for device -to-
device or machine-to-machine communication. DDS uses a publish-subscribe model where
publishers (e.g. devices that generate data) create topics to which subscribers (e.g., devices
that want to consume data) can subscribe. Publisher is an object responsible for data
distribution and the subscriber is responsible for receiving published data. DDS provides
quality-of-service (QoS) control and configurable reliability.
AMOP: Advanced Message Queuing Protocol (AMQP) is an open application layer protocol
for business messaging. AMQP supports both point-to-point and publisher/subscriber models,
routing and queuing. AMQP brokers receive messages from publishers (c.g., devices or
applications that generate data) and route them over connections to consumers (applications
that process data). Publishers publish the messages to exchanges which then distribute
message copies to queues. Messages are either delivered by the broker to the consumers
which have subscribed to the qucues or the consumers can pull the messages from the queues.
A RESTful web service is a “web API” implemented using HTTP and REST principles.
HTTP Resource Type Action Example
Methods
GET Collection List all the http://example.com/api/tasks/(list all
URL resource in a task)
collection
GET Element URL Get information http://example.com/api/tasks/1/(get
Unlike request-response APIS such as REST, the WebSocket APIS allow full duplex
communication and do not require a new connection to be setup for each message to be sent.
WebSocket communication begins with a connection setup request sent by the client to the
server. This request (called a WebSocket handshake) is sent over HTTP and the server
interprets it as an upgrade request. If the server supports WebSocket protocol, the serve
responds to the WebSocket handshake response. After the connection is setup, the client and
server can send data/messages to each other in full-duplex mode. WebSocket APIS reduce
the network traffic and latency as there is no overhead tor connection setup and termination
requests for cach message. WeBSocket is suitable for IoT applications that have low latency
high throughput requirements.
2.2.3 IoT Enabling Technologies:
IoT is enabled by several technologies including wireless sensor networks, cloud computing
big data analytics, embedded systems, security protocols and architectures, communication
protocols, web services, mobile internet and semantic search engines Following are some
technologies which play a key role in IoT.
Wireless Sensor Networks: A Wireless Sensor Network (WSN) comprises of distributed
devices with sensors which are used to monitor the environmental and physical conditions
AWSN consist of a number of end-nodes and routers and a coordinator, End nodes have
several sensors attached them. End nodes can also act as routers. Routers are responsible for
routing the data packets from end-nodes to the coordinator The coordinator collects the data
from all the nodes. Coordinator also acts as a gateway that connects the WSN to the Intemet
Some examples of WSNS used in IoT systems are described as follows:
• Weather monitoring systems
• Indoor air quality monitoring systems,
• Soil moisture monitoring systems
• Surveillance systems
• smart grids
• Structural health monitoring systems
ZigBee is one of the most popular wireless technologies used by WSNS. ZigBee
specifications are based on IEEE 802.15.4. ZigBee operates at 2.4 GHz frequency and offers
data rates upto 250 KB/s and range from 10 to 100 meters depending on the power output and
environmental conditions.
Cloud Computing:Cloud computing is a transformative computing paradigm that involves
delivering applications and services over the internet. Cloud computing services are offered
to user in different forms:
Infrastructure-as-a-Service (IaaS):IaaS provides the users the ability to provision
computing and storage resources, These resources are provided to the users as virtual
machine instances and virtual storage. Users can start, stop, configure and manage he virtual
machine instances and virtual storage. Users can deploy operating systems a applications of
their choice on the virtual resources provisioned in the cloud. The cloud service provider
manages the underlying infrastructure. Virtual resource provisioned by the users are billed
based on a pay-per-use paradigm. Some example of the wide usage of IaaS are automated,
policy-driven operations such as backup recovery, monitoring, clustering, internal
networking, website hosting, etc. The service provider is responsible for building the serves
and storage, networking firewalls/
security, and the physical data center. Some key players offering IaaS are amazon EC2,
Microsoft Azure, Google Cloud Platform, GoGrid, Rackspace, DigitalOcean among others.
Platform-as-a-Service (PaaS): PaaS provides the users the ability to develop and deploy
application in the cloud using the development tools, application programming interfaces
(APIS), software libraries and services provided by the cloud service provider. The cloud
service provider manages the underlying cloud infrastructure including servers, network,
operating systems and storage. The users, themselves, are responsible for developing,
deploying, configuring and managing applications on the cloud infrastructure. The PaaS
environment enables cloud users (accessing them via a webpage) to install and host data sets,
development tools and business analytics applications, apart from building and maintaining
necessary hardware. Some key players offering PaaS are Bluemix, CloudBees,
Salesforce.com, Google App Engine, Heroku, AWS, Microsoft Azure, OpenShift, Oracle
Cloud, SAP and OpenShift.
Software-as-a-Service (SaaS): SaaS provides the users
application or the user interface to the application itself. The cloud service provider manages
the underlying cloud infrastructure including servers, network, operating systems, storage and
application software, and the user is unaware of the underlying architecture of the cloud.
Applications are provided to the user through a thin client interface (e.g., a browser). SaaS
applications are platform independent and can be accessed from various client devices such
as workstations, laptop, tablets and smart- a complete software phones, running different
operating systems. Since the cloud service provider manages both the application and data,
the users are able to access the applications from anywhere. SaaS lets users easily access
software applications - such as emails- over the internet. Most common examples of SaaS are
Microsoft Office 360, AppDynamics, Adobe Creative Cloud, Google G Suite, Zoho,
Salesforce, Marketo, Oracle CRM, Pardot Marketing Automation, and SAP Business
ByDesign.
Benefits of cloud computing services
• Faster implementation and time to value
• Anywhere access to applications and content
• Rapid scalability to meet demand
• Higher utilization of infrastructure investments
• Lower infrastructure, encrgy, and facility costs
• Greater IT staff productivity and across organization
• Enhanced security and protection of information assets
Big Data Analytics:
Big Data analytics is the process of collecting, organizing and analyzing large scts of data
(called Big Data) to discover patterns and other useful information. Big Data 'analytics can
help organizations to better understand the information contained within the data and will
also help identify the data that is most important to the business and future business decisions
Analysts working with Big Data typically want the knowledge that comes from analyzing the
data. Big Data Analytics involved several steps starting from data cleansing, data munging
(or wrangling), data processing and visualization.
2.2.4 IoT levels and deployment templates:
IoT Level1: System has a single node that performs sensing and/or actuation, stores de
performs analysis and host the application as shown in fig. Suitable for modeling low cost
low complexity solutions where the data involved is not big and analysis requirement are
computationally intensive. An e.g., of IoT Level1 is Home automation.
Fig.2.1310T Level-1
IoT Level2: has a single node that performs sensing and/or actuating and local analysis a
shown in fig. Data is stored in cloud and application is usually cloud based. Level2 101
systems are suitable for solutions where data are involved is big, however, the primaly
analysis requirement is not computationally intensive and can be done locally itself. An e.g of
Level2 IoT system for Smart Irrigation.
Fig.2.16IoT Level-4
IoT Level5: System has multiple end nodes and one coordinator node as shown in fig. 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, Level5 IIOT systems are suitable for solution based on wireless sensor network,
in which data involved is big and analysis requirements are computationally intensive. An
example of Level5 system for Forest Fire Detection.
Fig.2.16IoT Level-5
IoT Level6: System has multiple independent end nodes that perform sensing and/or
actuation and sensed data to the cloud. Data is stored in the cloud and application is cloud
based as shown in fig The analytics component analyses the data and stores the result in the
cloud data base, The results are visualized with cloud based application. The centralize
controller is aware of the status of all the end nodes and sends control commands to nodes.
An example of a Level6 IoT system for Weather Monitoring System.
Pressure sensors: These sensors are used in loT systems to monitor systems and devices that
are driven by pressure signals. When the pressure range is beyond the threshold level, the
device alerts the user about the problems that should be fixed, For exarmple, BMP180 is a
popular digital pressure sensor for use in mobile phones, PDAS, GPS navigation devices and
outdoor equipment. Pressure sensors are also used in smart vehicles and aircrafts to determine
force and altitude, respectively. In vehicle, tyre pressure monitoring system (TPMS) is used
to alert the driver when tyre pressure is too low and could create unsafe driving conditions.
Image sensors: These sensors are found in digital cameras, medical imaging systems, night-
vision equipment, thermal imaging devices, radars, sonars, media house and biometric stems.
In the retail industry, these sensors are used to monitor customers visiting the store through
loT network. In offices and corporate buildings, they are used to monitor employees nd
various activities through IoT networks.
IR sensors: These sensors can measure the heat emitted by objects. They are used in various
loT projects including healthcare to monitor blood flow and blood pressure, smartphones to
use as remote control and other functions, wearable devices to detect amount of light,
thermometers to monitor temperature and blind-spot detection in vehicles.
Fig. 2.37Solenoid
References:
• https://data-flair.training/blogs/iot-applications/
• https://books.google.co.in/books?id=JPKGBAAAQBAJ&pg=PA45&source-gbs_toc_
r&cad=2#v=onepage&q&f=false
• https://www.tutorialspoint.com/arduino/arduino_board_description.htm#
ttps://kainjan1.files.wordpress.com/2018/01/chapter-1_iot.pdf
• https://www.tutorialspoint.com/internet_of_things/internet_of_things_tutorial.pdf
https://www.iare.ac.in/sites/default/files/lecture_notes/IOT%20LECTURE%20NOTE
S_IT.pdf
https://components 101.com/microcontrollers/arduino-uno
https://computer.howstuffworks.com/raspberry-pi2.htm
https://www2.deloitte.com/content/dam/insights/us/articles/iot-primer-iot-
technologies-applications/DUP_1102_InsideTheInternetOfThings.pdf
https://techdifferences.com/difference-between-sensors-and-actuators.html
https://electronicsforu.com/technology-trends/tech-focus/iot-sensors
https://iotbytes.wordpress.com/basic-iot-actuators/
• https://en.wikipedia.org/wiki/NodeMCU
https://www.electronicwings.com/nodemcu/introduction-to-nodemcu
https://www.instructables.com/id/Programming-ESP8266-ESP-12E-NodeMCU-
Using-Arduino-/
• https://datafloq.com/read/3-major-challenges-facing-future-iot/2729