0% found this document useful (0 votes)
41 views40 pages

Unit 3

Uploaded by

Manjurathi B
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
41 views40 pages

Unit 3

Uploaded by

Manjurathi B
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 40

UNIT 3

IoT ARCHITECTURE -STATE OF THE


ART
1. IOT Reference Architecture

•Functional View: Description of what the


system does, and its main functions.
•Information View: Description of the data and
information that the system handles.
•Deployment and Operational
View: Description of the main real world
components of the system such as devices,
network routers, servers, etc.
IOT Functional View
• Device and Application functional group
• Devices are like phone,machines
• Communication functional group
• The Hop-by-Hop Communication is applicable in the case that
devices and messages have to traverse the mesh from node-to-
node (hop-by-hop) until they reach a gateway node which
forwards the message (if needed) further to the Internet.
• This FC has two main interfaces:
• one “southbound” to/from the actual radio on the device, and
• one “northbound” to/from the Network FC in the
Communication FG.
• The Network FC is responsible for message routing &
forwarding and the necessary translations of various identifiers
and addresses.
• The translations can be
• (a) between network layer identifiers to MAC and/or
physical network identifiers,
• (b) between high-level human readable host/node
identifiers to network layer addresses and
• (c) translation between node/service identifiers and
network locators in case the higher layers above the
networking layer use node or service identifiers
• The End-to-End Communication FC is responsible
for end-to-end transport of application layer messages
through diverse network and MAC/PHY layers.
IoT Service functional group
• The IoT Service FC is a collection of service
implementations, which interface the related and
associated Resources.
• For a Sensor type of a Resource, the IoT Service FC
includes Services that receive requests from a User and
returns the Sensor Resource value in synchronous or
asynchronous (e.g. subscription/notification) fashion.
• The IoT Service Resolution FC contains the necessary
functions to realize a directory of IoT Services that
allows dynamic management of IoT Service descriptions
and discovery/lookup/resolution of IoT Services by other
Active Digital Artifacts.
Virtual Entity functional group
• The Virtual Entity FG contains functions that support the interactions
between Users and Physical Things through Virtual Entity services.
• An example of such an interaction is the query to an IoT system of the
form, “What is the temperature in the conference room Titan?”
Process Management functional group
• The IoT Process Management FG, integration of business processes with
IoT-related services.
• It consists of two FCs:
• The Process Modelling FC provides that right tools for modelling a
business process that utilises IoT-related services.
• The Process Execution FC contains the execution environment of the
process models created by the Process Modelling FC and executes the
created processes by utilising the Service Organisation FG in order to
resolve high-level application requirements to specific IoT services
Service Organization functional group
• The Service Composition FC manages the descriptions and
execution environment of complex services consisting of simpler
dependent services.
• An example of a complex composed service is a service offering
the average of the values coming from a number of simple Sensor
Services.
• The Service Orchestration FC resolves the requests coming from
IoT Process Execution FC or User into the concrete IoT services
that fulfill the requirements.
• The Service Choreography FC is a broker for facilitating
communication among Services using the Publish/Subscribe
pattern. Users and Services interested in specific IoT-related
services subscribe to the Choreography FC, providing the desirable
service attributes even if the desired services do not exist.
Security functional group
• The Security FG contains the necessary functions for ensuring the security
and privacy of an IoT system.
• The Identity Management FC manages the different identities of the
involved Services or Users in an IoT system
• The The Authentication FC verifies the identity of a User and creates an
assertion upon successful verification. verifies the identity of a User and
creates an assertion upon successful verification.
• The Authorization FC manages and enforces access control policies. It
provides services to manage policies (CUD), as well as taking decisions
and enforcing them regarding access rights of restricted resources.
• The Key Exchange & Management is used for setting up the necessary
security keys between two communicating entities in an IoT system.
• The Trust & Reputation FC manages reputation scores of different
interacting entities in an IoT system and calculates the service trust levels.
Management functional group
• The Configuration FC maintains the configuration of the FCs and the Devices in an IoT
system. The component collects the current configuration of all the FCs and devices,
stores it in a historical database, and compares current and historical configurations.

• The Fault FC detects, logs, isolates, and corrects system-wide faults if possible. This
means that individual component fault reporting triggers fault diagnosis and fault
recovery procedures in the Fault FC.The component collects the current configuration
of all the FCs and devices, stores it in a historical database, and compares current and
historical configurations.

• The Member FC manages membership information about the relevant entities in an


IoT system.

• The State FC is similar to the Configuration FC, and collects and logs state information
from the current FCs, which can be used for fault diagnosis, performance analysis and
prediction, as well as billing purposes.

• The Reporting FC is responsible for producing compressed reports about the system
state based on input from FCs. ii-font-family
IOT Information View

Information Description
• The pieces of information handled by an IoT system
• Virtual Entity context information, i.e. the attributes (simple or complex) as represented
by parts of the IoT Information model.
• IoT Service output itself is another important part of information generated by an IoT
system. For example, Sensor or a Tag Service.
• Virtual Entity descriptions in general, which contain not only the attributes coming from
IoT Devices (e.g. ownership information).
• Virtual Entity Associations with other Virtual Entities (e.g. Room #12 is on floor#7)
• Resource Descriptions –> type of resource (e.g. sensor), identity, associated Services,
and Devices.
• Device Descriptions –> device capabilities (e.g. sensors, radios).
• Descriptions of Composed Services –> the model of how a complex service is
composed of simpler services.
• IoT Business Process Model describes –> the steps of a business process utilizing other
IoT-related services.
• Management information such as state information from operational FCs used for
fault/performance purposes, configuration snapshots, reports, membership information,
etc.
Information Flow and Lifecycle
IOT Information handling
Deployment and operational view
2. FIWARE
Together with its members and partners,
FIWARE Foundation drives the definition – and
the Open Source implementation – of key open
standards that enable the development of
portable and interoperable smart solutions in a
faster, easier and affordable way, avoiding
vendor lock-in scenarios, whilst also nurturing
FIWARE as a sustainable and innovation-driven
business ecosystem
• Monitoring electrical controls remotely enables
the real-time oversight, analysis and resolution
of control-system issues from a distance.
• This ensures not only efficiency and safety, but
also facilitates proactive maintenance.
• The significance of having efficient and safe
electrical control systems cannot be overstated,
as they play a pivotal role in maintaining
seamless operations, averting downtime,
reducing risks and optimizing productivity
across diverse industries and applications.
3. Importance of middleware in IoT architecture
• Middleware plays a crucial role in IoT architecture by acting as an
intermediary layer that simplifies and streamlines communication
between devices, applications, and services. Here’s an overview of its
importance and how middleware platforms like FiWare facilitate
communication in IoT environments.
• Importance of Middleware in IoT Architecture
• Abstraction: Middleware abstracts the complexities of device
communication, allowing developers to interact with devices and
services without needing to understand the underlying hardware or
protocols.
• Interoperability: It provides a standardized interface for different
devices and applications, facilitating communication across
heterogeneous systems and ensuring that various IoT components can
work together seamlessly.
• Data Management: Middleware handles data storage, processing, and
retrieval, allowing applications to access
• Scalability: Middleware solutions enable IoT
architectures to scale effectively by managing
connections and data flow among a growing number
of devices and applications.
• Security: Middleware can implement security
protocols and manage authentication, authorization,
and encryption, ensuring that data exchanged
between devices and applications is secure.
• Event Handling: It can facilitate event-driven
architectures by managing and processing events
generated by devices, enabling real-time responses
and actions based on sensor data or other inputs.
How FiWare Facilitates Communication
• FiWare is an open-source platform designed to support the
development of smart applications in various domains, including smart
cities, energy, and healthcare. Here’s how FiWare facilitates
communication between devices and applications:
• Context Management:
– FiWare includes a Context Broker (Orion Context Broker) that allows devices
to publish context information and subscribe to updates. This enables
applications to access real-time data and changes in device states.
• Standardized Interfaces:
– It provides standardized APIs and data models (based on NGSI standards) for
interacting with devices and services. This ensures interoperability among
different devices and applications, regardless of their underlying technologies.
• Data Storage:
– FiWare integrates with various databases (e.g., MongoDB, PostgreSQL) for
data storage, allowing applications to store and retrieve sensor data easily.
This supports efficient data management and querying.
• Communication Protocols:
– FiWare supports multiple communication protocols (e.g., HTTP, MQTT,
CoAP), allowing devices to communicate using the most suitable protocol
for their use case, whether it's real-time communication or low-power
applications.
• Application Enablement:
– The platform provides a suite of components (e.g., IoT Agents) that
facilitate device management, data ingestion, and integration with existing
applications. This reduces the complexity of developing IoT solutions.
• Security Features:
– FiWare incorporates security mechanisms to manage user access and
ensure secure communication between devices and applications. This is
critical for maintaining data integrity and privacy.
• Event Processing:
– Through components like Cygnus (for data collection) and QuantumLeap
(for time-series data), FiWare can handle event-driven applications,
allowing for real-time data processing and analytics.
Example Use Cases of FiWare

• Smart Cities: FiWare can manage data from various sensors (e.g., traffic, air
quality) in urban environments, enabling city planners to make informed
decisions based on real-time data.
• Smart Agriculture: IoT devices in agriculture can communicate soil moisture
levels, weather conditions, and crop health data to applications that
optimize irrigation and resource management.
• Smart Energy Management: FiWare can integrate data from energy meters
and devices, allowing for real-time monitoring and control of energy
consumption and generation.
Middleware is essential in IoT architecture for enabling communication,
ensuring interoperability, managing data, and enhancing security. FiWare
exemplifies how middleware platforms can facilitate the seamless integration
of devices and applications, providing a robust framework for developing smart
solutions across various sectors. By abstracting complexities and offering
standardized protocols, FiWare empowers developers to create efficient and
scalable IoT applications.
6LowPAN
• 6LoWPAN is an IPv6 protocol, and It’s extended from is IPv6 over Low Power
Personal Area Network. As the name itself explains the meaning of this protocol is
that this protocol works on Wireless Personal Area Network i.e., WPAN.
• WPAN is a Personal Area Network (PAN) where the interconnected devices are
centered around a person’s workspace and connected through a wireless medium.
• 6LoWPAN allows communication using the IPv6 protocol. IPv6 is Internet Protocol
Version 6 is a network layer protocol that allows communication to take place over
the network. It is faster and more reliable and provides a large number of
addresses.
• 6LoWPAN initially came into existence to overcome the conventional methodologies
that were adapted to transmit information.
• But still, it is not so efficient as it only allows for the smaller devices with very
limited processing ability to establish communication using one of the Internet
Protocols, i.e., IPv6. It has very low cost, short-range, low memory usage, and low
bit rate. It comprises an Edge Router and Sensor Nodes.
• Even the smallest of the IoT devices can now be part of the network, and the
information can be transmitted to the outside world as well. For example, LED
Streetlights
• It is a technology that makes the individual nodes IP enabled. • 6LoWPAN can
interact with 802.15.4 devices and also other types of devices on an IP
Network.
• For example, Wi-Fi. • It uses AES 128 link layer security, which AES is a block
cipher having key size of 128/192/256 bits and encrypts data in blocks of 128
bits each.
• This is defined in IEEE 802.15.4 and provides link authentication and
encryption.
Basic Requirements of 6LoWPAN:
• 1. The device should be having sleep mode in order to support the battery
saving.
• 2. Minimal memory requirement.
• 3. Routing overhead should be lowered.
Features of 6LoWPAN:
1. It is used with IEEE 802.15,.4 in the 2.4 GHz band.
2. Outdoor range: ~200 m (maximum)
3. Data rate: 200kbps (maximum)
4. Maximum number of nodes: ~100
Advantages of 6LoWPAN:
1. 6LoWPAN is a mesh network that is robust, scalable, and can
heal on its own.
2. 2. It delivers low-cost and secure communication in IoT
devices.
3. 3. It uses IPv6 protocol and so it can be directly routed to
cloud platforms.
4. 4. It offers one-to-many and many-to-one routing. 5. In the
network, leaf nodes can be in sleep mode for a longer
duration of time.
Disadvantages of 6LoWPAN:
5. It is comparatively less secure than Zigbee.
6. It has lesser immunity to interference than that Wi-Fi and
Bluetooth.
7. Without the mesh topology, it supports a short range.
Applications of 6LoWPAN:
1. It is a wireless sensor network.
2. It is used in home-automation,
3. It is used in smart agricultural techniques, and industrial
monitoring.
Security and Interoperability with 6LoWPAN:
• Security: 6LoWPAN security is ensured by the AES
algorithm, which is a link layer security, and the transport
layer security mechanisms are included as well.
• Interoperability: 6LoWPAN is able to operate with other
wireless devices as well which makes it interoperable in a
network.
4. Remote monitoring and sensing in IoT
applications
• Remote monitoring and sensing in IoT applications involve collecting
data from sensors deployed in various environments and transmitting that
data for analysis and decision-making. Embedded target boards like
Raspberry Pi and Intel Galileo play a significant role in facilitating these
functions. Here’s how they contribute to remote monitoring and sensing
in IoT.pplications:
• Role of Embedded Target Boards in Remote Monitoring and Sensing
1. Data Acquisition
• Sensor Interfaces: Both Raspberry Pi and Intel Galileo can interface
with a variety of sensors (temperature, humidity, motion, etc.) through
GPIO (General Purpose Input/Output), I2C, SPI, and analog input. This
allows them to collect real-time data from the environment.
• Analog-to-Digital Conversion: For sensors that provide analog signals,
these boards can convert the signals into digital data for processing.
2. Data Processing
• Local Processing: The boards can run algorithms to process the
collected data locally. This can include filtering, aggregation, or
preliminary analysis to reduce the amount of data sent to the
cloud.
• Event Triggering: Embedded boards can be programmed to
trigger actions based on sensor readings, such as sending alerts if
a temperature exceeds a certain threshold.
3. Connectivity
• Network Communication: Raspberry Pi and Intel Galileo can
connect to the internet using Ethernet or Wi-Fi. This connectivity
is essential for transmitting sensor data to remote servers or cloud
platforms.
• Protocols: They support various communication protocols (e.g.,
MQTT, HTTP, CoAP), which are crucial for effective data
transmission in IoT applications.
4. Data Transmission
• Cloud Integration: Data collected and processed by these boards
can be sent to cloud services for storage and further analysis. This
allows for long-term data retention and sophisticated analytics.
• Real-Time Monitoring: Users can access real-time data through
web dashboards or mobile applications, enabling immediate
decision-making based on the sensed data.
5. Remote Control and Management
• Remote Access: Users can remotely access and control the
embedded boards via secure protocols (e.g., SSH, VPN). This allows
for troubleshooting, updates, and reconfiguration without physical
access to the devices.
• Firmware Updates: Remote updating capabilities ensure that the
software running on these boards can be maintained and improved
over time, enhancing security and functionality.
Specific Use Cases
Smart Agriculture
• Raspberry Pi can be used to monitor soil moisture levels, weather
conditions, and crop health using various sensors. The data can be sent to
a cloud platform where farmers can access it and make informed decisions
about irrigation and fertilization.
Environmental Monitoring
• Intel Galileo can be employed in air quality monitoring stations to
collect data on pollutants. This data can be transmitted to a central
database for analysis, helping cities address pollution levels and inform
the public.
Home Automation
• Both boards can serve as hubs for smart home devices, collecting
data from various sensors (temperature, motion, security) and allowing
users to monitor and control their home environment remotely via mobile
apps or web interfaces.
Industrial IoT
• In manufacturing, Raspberry Pi can monitor machinery for
vibrations and temperature, sending alerts to maintenance
teams when anomalies are detected. This can help prevent
failures and reduce downtime.
 Raspberry Pi and Intel Galileo are powerful embedded target
boards that play crucial roles in remote monitoring and sensing
applications within the IoT landscape.
 They facilitate data acquisition, processing, connectivity,
and transmission, making it possible to monitor environments
and systems from anywhere.
 Their versatility and support for various protocols enable
them to be integrated into a wide range of IoT applications,
enhancing efficiency, safety, and convenience across industries.
5. Interfacing sensors with an embedded board like Arduino or
ARM Cortex

• Interfacing sensors with embedded boards like Arduino or ARM Cortex involves
several key steps, from hardware connections to data processing and
transmission. Here’s a comprehensive guide outlining these steps:
• Steps for Interfacing Sensors with an Embedded Board
• Step 1: Choose the Sensor
• Select a Sensor: Choose the appropriate sensor for your application (e.g.,
temperature, humidity, motion, light).
• Check Compatibility: Ensure the sensor is compatible with your embedded
board (Arduino, ARM Cortex, etc.).
• Step 2: Gather Required Components
• Embedded Board: An Arduino board (e.g., Arduino Uno, Arduino Nano) or ARM
Cortex development board (e.g., STM32, NXP LPC).
• Sensor: The chosen sensor, along with any required resistors, capacitors, or
pull-up/down resistors. Breadboard and Jumper Wires: For prototyping and
connections.
• Step 3: Connect the Sensor
• Wiring: Connect the sensor’s pins to the appropriate pins on the
embedded board:
• Power Pins: Connect VCC and GND pins of the sensor to the power and
ground on the board.
• Data Pins: Connect the data/output pin(s) of the sensor to a digital or
analog input pin on the board, depending on the sensor type.
• Verify Connections: Double-check the wiring to avoid misconnection.
• Step 4: Write the Code
• Set Up the Development Environment: Install the Arduino IDE or the
necessary toolchain for ARM development (e.g., Keil, STM32CubeIDE).
• Include Libraries: Import any required libraries specific to the sensor
(available in the Arduino library manager or from the sensor manufacturer).
• Initialize the Sensor: Write code to initialize the sensor in the setup()
function.
• Read Sensor Data: Use appropriate functions to read data from the sensor
in the loop() function.
• Example Code Snippet (Arduino):
• cpp
• #include <DHT.h>
• DHT dht(2, DHT11); // Initialize DHT11 sensor on pin 2
• void setup() {
• Serial.begin(9600);
• dht.begin(); // Start sensor
• }
• void loop() {
• float temperature = dht.readTemperature();
• float humidity = dht.readHumidity();
• Serial.print("Temperature: ");
• Serial.print(temperature);
• Serial.print(" °C, Humidity: ");
• Serial.print(humidity);
• Serial.println(" %");
• delay(2000); // Read every 2 seconds
• }
• Step 5: Process Sensor Data
• Data Manipulation: Depending on the application, you may
need to filter, average, or convert raw sensor data into usable
formats (e.g., Celsius from a raw sensor reading).
• Condition Checks: Implement conditions to trigger actions
based on sensor readings (e.g., sending alerts if temperature
exceeds a threshold).
• Step 6: Transmit Data
• Choose Communication Protocol: Decide on a
communication protocol for transmitting data (e.g., MQTT,
HTTP, LoRa, Zigbee).
• Establish Connection: If using Wi-Fi or cellular, set up the
connection (e.g., using Wi-Fi libraries for Arduino).
• Send Data: Write code to format and send the processed
data to a server or cloud platform.
• Example Transmission (HTTP):
• cpp
• #include <WiFi.h>
• const char* ssid = "your_SSID";
• const char* password = "your_PASSWORD";
• const char* server = "http://yourserver.com/data";
• void setup() {
• Serial.begin(9600);
• WiFi.begin(ssid, password);
• while (WiFi.status() != WL_CONNECTED) {
• delay(1000);
• Serial.println("Connecting to WiFi...");
• }
• }
• void loop() {
• float temperature = dht.readTemperature();
• // Send data to server
• WiFiClient client;
• if (client.connect(server, 80)) {
• String data = "temperature=" + String(temperature);
• client.println("POST /data HTTP/1.1");
• client.println("Host: " + String(server));
• client.println("Content-Type: application/x-www-form-
urlencoded");
• client.println("Content-Length: " + String(data.length()));
• client.println();
• client.print(data);
• }
• delay(2000);
• }
Step 7: Receive and Store Data (on Server/Cloud)
• Cloud Service Integration: Use cloud services (like AWS, Azure, or Google
Cloud) to receive, store, and analyze sensor data.
• Data Management: Implement databases or data lakes to organize and
query the incoming data efficiently.
Data Processing and Transmission
• Data Collection: Sensors collect raw data and send it to the embedded
board.
• Data Processing: The board processes the data through filtering and
conditioning.
• Data Transmission: The processed data is transmitted over a selected
communication protocol to a server or cloud.
• Data Storage and Analysis: The server or cloud processes and stores the
data for analysis, visualization, and further actions.

• By following these steps, developers can effectively interface sensors with
embedded boards and ensure the smooth processing and transmission of
sensor data in IoT systems.

You might also like