Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Internet of Things (IoT) - Assignment 1: Exploring Functionality and Architecture, Exercises of Marketing Management

A comprehensive overview of the internet of things (iot), exploring its definition, functionality, and standard architectures. It delves into various aspects of iot, including its working principles, security considerations, and diverse applications across industries like smart homes, healthcare, and agriculture. The document also examines key architectural frameworks, tools, hardware, and apis used in iot development.

Typology: Exercises

2023/2024

Uploaded on 08/30/2024

tran-the-tung
tran-the-tung 🇻🇳

2 documents

1 / 39

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
ASSIGNMENT 1 FRONT SHEET
Qualification
TEC Level 5 HND Diploma in Computing
Unit number and title
Unit 43: Internet of Things
Submission date
Date Received 1st submission
Re-submission Date
Date Received 2nd submission
Student Name
Huynh Huu Hoang
Student ID
GCS210952
Class
GCS1007
Assessor name
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that
making a false declaration is a form of malpractice.
Student’s signature
Grading grid
P1
P2
P3
P4
M1
M2
M3
M4
D1
D2
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27

Partial preview of the text

Download Internet of Things (IoT) - Assignment 1: Exploring Functionality and Architecture and more Exercises Marketing Management in PDF only on Docsity!

ASSIGNMENT 1 FRONT SHEET

Qualification TEC Level 5 HND Diploma in Computing Unit number and title Unit 43: Internet of Things Submission date Date Received 1st submission Re-submission Date Date Received 2nd submission Student Name Huynh Huu Hoang Student ID GCS Class GCS1007^ Assessor name Student declaration I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that making a false declaration is a form of malpractice. Student’s signature Grading grid P1 P2 P3 P4 M1 M2 M3 M4 D1 D

Summative Feedback:Resubmission Feedback: Grade: Assessor Signature: Date: Internal Verifier’s Comments: Signature & Date:

collect data and share information globally. IoT facilitates the connection of smart devices to the internet, allowing them to collect and transmit data, respond to each other, and interact with applications and software. These devices gather data from their surrounding environment, user inputs, or usage patterns and communicate over the internet with their corresponding IoT applications Example IOT:  Electrolux, established in 1919, specializes in home appliances such as refrigerators, ovens, washers, and dryers. Notably, the company prioritizes sustainability, incorporating sensor technology to prevent excessive energy consumption in its dryers and refrigerators.  AI Home Solutions, on the other hand, is a consulting and installation service provider for IoT technology in homes. They assist homes in integrating smart home solutions with a focus on home security and crime prevention. Partnering with renowned brands like Google, Ring, Nest, and Amazon, AI Home Solutions offers a range of products to enhance the connected and secure aspects of modern household. This information is derived from the company's website.

2. How does IOT work. IoT Technologies  In essence, IoT operates by equipping devices with hardware, such as sensors, to gather data.  This data is subsequently shared through the cloud and integrated into software.  The software then analyzes and transmits the processed data to users through applications or websites. IoT Security The advent of emerging technologies brings with it a dynamic landscape of risks and threats, and the Internet of Things (IoT) is no exception. Given that IoT can empower various functionalities such as building lighting, HVAC systems, vehicle diagnostics, and power grids, securing these critical systems and infrastructure elements becomes of utmost importance. IoT Precautions

TheU.S. Department of Health and Human Services Health Sector Cybersecurity Coordination Center advises individuals and organizations to adopt several precautions to reduce cybersecurity risks. This includes avoiding Universal Plug and Play, a feature enabling automatic device discovery and communication on the same network. Additionally, they recommend changing default passwords and router settings. Implementing a zero- trust model, which restricts access to essential requirements and verifies network interactions, is also emphasized for enhanced security.

3. IoT Functionality. "IoT" stands for the Internet of Things, signifying the network of physical objects or "things" equipped with sensors, software, and other technologies to establish connectivity and exchange data with other devices and systems via the internet. The scope of IoT functionality spans diverse capabilities and applications, playing a pivotal role in the transformative impact it has on various industries.  Remote Monitoring and Control: IoT devices have the capability to observe and gather real-time data from physical objects or environments. This data enables remote monitoring and control, empowering users to remotely track conditions and manage devices from a distance

Smart Home Applications: IoT is widely used in smart homes for controlling and monitoring devices such as thermostats, lights, security cameras, door locks, and appliances  Industrial IoT (IoT): In industrial environments, IoT is applied for predictive maintenance, asset tracking, monitoring equipment performance, and enhancing overall efficiency  Healthcare Monitoring: Wearable devices and sensors are used for monitoring health parameters, tracking fitness, and providing real- time health data to healthcare professionals.  Smart Cities: IoT technologies contribute to creating smart cities by optimizing traffic management, monitoring air quality, managing energy consumption, and improving overall urban efficiency.  Environmental Monitoring: IoT devices can be employed to monitor environmental conditions, including air and water quality, contributing to efforts in environmental conservation  Supply Chain Management: In supply chain management, IoT is employed to track and monitor the movement of goods, optimize logistics, and enhance overall efficiency in the supply chain  Energy Management: IoT devices help optimize energy consumption in buildings and industrial processes by monitoring usage patterns and adjusting settings for efficiency.

4. Application of IoTSmart Homes: Home automation systems incorporate IoT devices to control and monitor home appliances, lighting, security cameras, thermostats, and other connected devices. Users can remotely manage their homes through smartphones or voice commands.

Healthcare: In healthcare, IoT encompasses wearable devices for monitoring vital signs, remote patient monitoring, smart pills, and connected medical devices. These technologies contribute to improved patient care, early detection of health issues, and overall enhancement of healthcare efficiency.  Industrial IoT (IoT): In manufacturing and industrial settings, IoT is applied for predictive maintenance, real-time monitoring of equipment, supply chain optimization, and overall improvement of process efficiency.  Smart Cities: IoT is utilized for tracking and managing vehicles, optimizing routes, monitoring cargo conditions (such as temperature-sensitive shipments), and ensuring efficient logistics operations

IoT is utilized for tracking and managing vehicles, optimizing routes, monitoring cargo conditions (such as temperature-sensitive shipments), and ensuring efficient logistics operations. II. Review standard architecture, frameworks, tools, hardware and APIs available for use in IoT development. (P2) 1.Review of Standard Architecture In manufacturing and industrial settings, IoT is applied for predictive maintenance, real-time monitoring of equipment, supply chain optimization, and overall improvement of process efficiency  Three-Tier IoT Architecture:

  1. Edge Tier:This tier includes edge devices or sensors responsible for local data collection. It conducts preliminary data processing and filtering before forwarding pertinent information to the next tier.
  2. Fog Tier (or Edge Computing):The fog tier manages more intricate processing tasks in proximity to the data source. By processing data on local devices or gateways, it reduces latency and minimizes bandwidth usage.
  3. Cloud Tier:The cloud tier oversees storage, analytics, and long-term processing. It receives data from the edge and fog tiers, conducts in-depth analysis, and stores information for future utilization.  Microservices Architecture: This architectural style entails constructing an application as a collection of small, autonomous services, each operating in its own process and communicating through APIs. Microservices architecture provides flexibility, scalability, and simplified maintenance.  Service-Oriented Architecture (SOA): Service-Oriented Architecture (SOA) entails structuring software components as services that are independently accessible and reusable. In the realm of IoT, SOA facilitates the development of modular, interoperable services capable of seamless communication with each other.  Event-Driven Architecture: Event-driven architecture operates on the principle of triggering services based on events. This architecture is particularly suitable for IoT applications, where events like sensor readings can prompt specific actions.  IoT Reference Model (IoT-RM):

The IoT-RM, developed by the International Telecommunication Union (ITU), establishes a standardized framework for the design and implementation of IoT systems. It delineates the relationships between different IoT components, encompassing devices, networks, and applications.  Open Connectivity Foundation (OCF) Architecture: The Open Connectivity Foundation (OCF) offers a standardized IoT architecture with specifications addressing device discovery, communication, and data sharing. Its goal is to foster interoperability among IoT devices manufactured by different companies.  IoT-A Reference Architecture: The IoT-A reference architecture concentrates on identifying crucial architectural principles and components for IoT. It outlines fundamental building blocks, including sensing, processing, communication, and application layers.

2. Review of IoT Frameworks and Tools **a. IoT Frameworks:

  • IoTivity:** Developed by the Open Connectivity Foundation (OCF), IoTivity is an open-source framework fostering standardization and interoperability among IoT devices. It supplies a set of APIs for device discovery, communication, and data sharing. - Eclipse IoT: Eclipse IoT includes various open-source projects providing a foundation for IoT development. Notable projects include Eclipse Paho for MQTT messaging, Eclipse Californium for CoAP communication, and Eclipse Kura for edge computing. - AWS IoT: Amazon Web Services (AWS) IoT offers a comprehensive platform featuring device SDKs, secure device provisioning, and scalable cloud services. It supports MQTT and HTTP protocols and seamlessly integrates with other AWS services for data storage, analytics, and machine learning. - Azure IoT: Microsoft Azure IoT provides a suite of services and SDKs for constructing, deploying, and managing IoT applications. This includes Azure IoT Hub for device communication, Azure IoT Edge for edge computing, and Azure IoT Central for simplified device management. - Google Cloud IoT: Google Cloud IoT supplies tools for managing and processing IoT data at scale. Its components include Cloud IoT Core for device management, Cloud IoT Edge for edge computing, and seamless integration with other Google Cloud services.

These low-cost Wi-Fi modules, particularly the ESP32 with Bluetooth and Wi-Fi connectivity, are widely employed in IoT projects, offering versatility for a variety of applications.

- BeagleBone: BeagleBone boards provide enhanced processing power compared to some other single-board computers. They are suitable for applications demanding higher performance. - Particle Boards: Particle offers a range of IoT development boards, such as the Particle Photon and Electron, equipped with Wi- Fi and cellular connectivity to meet diverse IoT project requirements. - NVIDIA Jetson Series: The NVIDIA Jetson series is specifically designed for edge computing and AI applications within IoT. These boards feature powerful GPUs, making them suitable for applications that demand advanced processing capabilities.. **2. APIs for IoT Development:

  • MQTT (Message Queuing Telemetry Transport):** MQTT is a lightweight, publish-subscribe messaging protocol widely employed in IoT for efficient communication between devices. Renowned for its low bandwidth usage, it supports real-time updates. - CoAP (Constrained Application Protocol): CoAP is a protocol specifically designed for resource-constrained devices in IoT. It suits devices with limited processing power and memory, adhering to a RESTful architecture. - RESTful APIs: RESTful APIs offer a simple and scalable means for IoT devices to communicate over HTTP. Following a stateless, client-server communication model, they are commonly used for web-based IoT applications. - WebSockets: WebSocket is a communication protocol establishing full-duplex communication channels over a single, long- lived connection. It is apt for applications necessitating low-latency communication. - IoT Hub APIs (Azure IoT Hub, AWS IoT, Google Cloud IoT): Cloud providers furnish APIs for managing and communicating with IoT devices. These APIs facilitate device registration, message routing, and integration with other cloud services. - Device SDKs (Software Development Kits): Many IoT platforms provide device SDKs for various programming languages. These SDKs abstract the complexity of communication protocols and offer high-level interfaces for developers.

- TensorFlow Lite for Microcontrollers: TensorFlow Lite for Microcontrollers empowers developers to run machine learning models on microcontrollers, making it suitable for edge devices with limited resources. - Twilio IoT SIM: Twilio delivers APIs and SIM cards designed for connecting IoT devices to cellular networks. This is particularly useful for applications requiring mobile connectivity. - Weather APIs: APIs like OpenWeatherMap provide real-time weather data, offering value for IoT applications related to climate monitoring and smart agriculture. III. Investigate architecture, frameworks, tools, hardware and API techniques available to develop IoT applications. (P3)

a. Architecture:

Three-Tier Architecture:  Description: Divides the IoT system into edge, fog, and cloud tiers, optimizing data processing and management.  Advantages: Reduces latency, minimizes bandwidth usage, and enhances scalability.  Use Case: Ideal for applications with a large number of distributed devices. Microservices Architecture:  Description: Breaks down the application into small, independent services, promoting scalability and ease of maintenance.  Advantages: Modularity, flexibility, and straightforward deployment.  Use Case: Well-suited for complex IoT applications requiring adaptability and scalability. Event-Driven Architecture:  Description: Focuses on events triggering actions, ensuring real-time responsiveness.  Advantages: Supports asynchronous communication and responsiveness to dynamic conditions.  Use Case: Suitable for applications with event-triggered responses, such as updates from sensor data.updates.

b. Frameworks:

IoTivity: Description: Open-source framework by OCF, ensuring interoperability among IoT devices. Advantages: Standardization, device discovery, and communication. Use Case: Ideal for building IoT solutions requiring standardized communication.

Advantages: Simplicity, vast community support, and a wide range of compatible sensors. Use Case: Suitable for quick prototyping and experimentation. API Techniques: MQTT (Message Queuing Telemetry Transport): Description: Lightweight and efficient messaging protocol for communication between IoT devices. Advantages: Low bandwidth usage, publish-subscribe model. Use Case: Suitable for real-time communication between devices. RESTful APIs: Description: Set of principles for building scalable and interoperable APIs based on HTTP. Advantages: Stateless communication, simplicity, and widespread adoption. Use Case: Commonly used for web-based IoT applications. CoAP (Constrained Application Protocol): Description: Lightweight protocol designed for resource-constrained devices in IoT. Advantages: Suited for low-power devices, RESTful communication. Use Case: Ideal for IoT applications with resource-constrained devices. Various Standard Architectures for the SAME Application: Device Layer: Auto Sliding Door: The physical door that opens and closes automatically. Motor: Drives the movement of the sliding door. Sensor Laser: Detects individuals approaching the door. Microcontroller Board: Controls the entire system's operation. Electromagnet: Locks and unlocks the door. Push Button: Triggers the automatic opening mechanism. Example: The sensor laser detects someone approaching, signaling the microcontroller board to initiate the door's opening using the motor. Connection Layer: Wires: Serve as the transmission medium for data exchange between devices.

Example: Sensors mounted on the automatic door transmit motion data to the motor through wires, enabling seamless communication within the system. Data Processing Layer: Receives Data: Gathers information from sensor devices. Processes Data: Analyzes incoming data and makes decisions. Controls Operations: Directs the motor and other components based on processed information. Example: The layer receives data from motion sensors, processes the information, and instructs the motor to open or close the door accordingly. Customer Layer: Human Users: People approaching and engaging with the IoT product. Example: Users walking near the door trigger the system to perceive their presence and open the door, ensuring a seamless entry and exit experience. Summary: This IoT architecture for auto doors illustrates the collaboration of physical devices, communication channels, data processing capabilities, and human interaction. It emphasizes the role of each layer in creating a responsive and user-friendly automated door system. 2.Various IoT Frameworks and Tools for the SAME Application Software Tools: GitHub: Description: A cloud-based platform for code collaboration, version management, and access to a vast repository of open-source code. Use Case: Collaborate on code, track project versions, and benefit from a rich open-source community. Arduino IDE:

Purpose: Acts as a proximity detector, detecting the presence of users approaching the automatic door.

3. Button Definition: Similar to switches, creates and breaks electrical connections. Provides manual control for the automatic door. Purpose: Allows users to override sensor-based automatic opening and activate the door manually. 4. Micro Servo Definition: A closed-loop system controlling motion and position. Precisely controls the door's movement based on signals from the Arduino. Purpose: Acts as a compact and precise actuator for opening and closing the door.

5. Keypad Definition: Used as an input device to read key presses. Consists of 4 rows and 4 columns for user input. Purpose: Allows users to enter codes or passwords for access through the automatic door system. 6. Potentiometer Definition: A type of variable resistor that changes resistance when adjusted. Used for fine-tuning sensitivity or controlling motor speed. Purpose: Adjusts sensitivity of the ultrasonic sensor or controls the speed of the servo motor. 3.1.2 How they work Arduino: Arduino serves as the brain of the automatic door system. It interprets sensor readings, executes control logic, and communicates with other components. Code is written using the Arduino IDE and uploaded to the Arduino board.