Lab Manual IoT 5th Sem-1 - 240927 - 103358
Lab Manual IoT 5th Sem-1 - 240927 - 103358
NALANDA
LAB MANUAL
Vth Sem.
Subject:- Internet of Things (Basic)
(IoT Lab)
[200508 C]
1
Index
Sl.No. Laboratory Practical Titles Page No.
01 Prepare a list of platforms used for IoT. 3
02 Prepare a list of features of above IoT platforms. 4-8
03 Prepare a list of features provided by python language 9-10
for IoT applications.
04 Establish Connectivity between various components of 11
IoT.
05 Establish Connection between Arduino and Bluetooth 12-13
module.
06 Establish Connection using WiFi. 14-15
07 Publish data on the IoT platform. 16-17
2
Experiment No: - 01
Aim: - Prepare a list of platforms used for IoT.
Theory: - An IoT platform serves as a mediator between the world of physical objects
and the world of actionable insights. Combining numerous tools and functionalities,
Internet of Things platforms enable you to build unique hardware and software products
for collecting, storing, analysing and managing the plethora of data generated by your
connected devices and assets.
4. IRI Voracity
5. Particle
7. ThingWorx
3
Experiment No: - 02
4
Internet of Things cloud platforms. Cisco also provides reliable IoT hardware, including
switches, access points, routers, gateways and more.
Take a look at some examples of powerful Cisco Internet of Things products and
solutions.
• Cisco IoT Control Center ensures impeccable cellular connectivity management,
allowing you to integrate all your IoT devices in one SaaS solution.
• Extended Enterprise Solution allows for the development of IoT business
applications at the edge and ensures rapid deployment and centralized network
management.
• Edge Intelligence simplifies data processing by allocating data flows either to local or
multi-cloud environments.
• Industrial Asset Vision utilizes sensors to monitor your assets continuously and
deliver data for better decision-making.
• Cisco IoT Threat Defense protects sensible data and devices against cyberattacks,
providing secure remote access, segmentation, visibility and analysis, and other
security services.
5
• Full integration of customers, products and CRM
• No need for programming skills to create rules, conditions and events due to a simple
point-and-click UI
• Compatibility with third-party websites, services and other products
• A proactive approach to customer issues and needs
By using Salesforce IoT Cloud, businesses get a holistic view of customer data, improve
customer experience and increase sales.
4. IRI Voracity:
If you need an all-in-one data management platform that enables IoT data control at every
stage of your business processes, IRI Voracity is the perfect fit.
This platform uses two engines, IRI CoSort and Hadoop, to process Big Data. It can discover,
govern, integrate, analyze, transform and migrate data from various sources and in various
formats such as Unix, Linux or Windows file systems, ISAM, MongoDB, LDIF, HIVE, JSON, S3,
PostgreSQL, MQTT, Kafka and more.
Core features of IRI Voracity:
• A Data Governance Portal enables data search and classification in silos. It also
provides encryption and anonymization to comply with data privacy regulations.
• A Faster ETL and Analytic Alternative performs extraction and transformation of
large-sized data much faster than legacy ETL tools.
• A DB Ops Environment allows you to administer all your databases from one place.
5. Particle:
Particle offers an IoT edge-to-cloud platform for global connectivity and device
management, as well as hardware solutions, including development kits, production
modules and asset tracking devices. With Particle’s team of IoT experts, who provide end-
to-end professional services, you can develop your product from concept to production.
Core features of the Particle platform:
• Integration with third-party services via REST API
• Firewall-protected cloud
• Capability to work with data from Google Cloud or Microsoft Azure
• No need for technical expertise in order to use the platform
6
An IoT platform built on IBM Cloud is a fully managed cloud service for device management,
flexible and scalable connectivity options, secure communications and data lifecycle
management. With IBM Watson IoT, you can collect insights from automobiles, buildings,
equipment, assets and things.
Core features of IBM Watson IoT:
• Data ingestion from any source with the help of MQTT
• Direct access to the latest data in the Cloudant NoSQL DB solution
• Built-in monitoring dashboards to control your assets
• Analytics Service to process raw metrics
• The Cloud Object Storage solution for long-term data archiving
7. ThingWorx:
The specialized Industrial Internet of Things (IoT) platform ThingWorx is used in a variety of
manufacturing, service and engineering scenarios. The platform addresses common
challenges across industries, from remote monitoring and maintenance to workforce
efficiency and asset optimization.
Core features of ThingWorx:
• Access to multiple data sources due to the extension of traditional industrial
communications
• Powerful ready-to-use tools and applications to create and scale IIoT solutions
quickly
• Real-time insights from complex industrial IoT data to proactively optimize
operations and prevent issues
• Total control over network devices, processes and systems
7
• A high level of security provided by end-to-end encryption throughout all points of
connection, automated configuration and authentication
• Machine learning capabilities
• A variety of services for edge computing
10.Oracle IoT:
The Internet of Things Cloud Service by Oracle is a managed Platform as a Service (PaaS) for
connecting your devices to the cloud.
Core features of Oracle IoT:
• The ability to create applications and connect them to devices with JavaScript, Java,
Android, iOS, C POSIX and REST APIs
• Integration with enterprise applications, web services and other Oracle Cloud
Services
• Real-time analysis tools to aggregate and filter incoming data streams
• Automatic synchronization of data streams with Oracle Business Intelligence Cloud
Service
• Unique digital identity for each device to establish trust relationships among devices
and applications.
8
Experiment No: - 3
2.Expressive Language
Python can perform complex tasks using a few lines of code. A simple example, the hello
world program you simply type print("Hello World"). It will take only one line to execute,
while Java or C takes multiple lines.
3. Interpreted Language
Python is an interpreted language; it means the Python program is executed one line at a
time. The advantage of being interpreted language, it makes debugging easy and portable.
4. Cross-platform Language
Python can run equally on different platforms such as Windows, Linux, UNIX, and
Macintosh, etc. So, we can say that Python is a portable language. It enables programmers
to develop the software for several competing platforms by writing a program only once.
9
Python community. The open-source means, "Anyone can download its source code
without paying any penny."
6. Object-Oriented Language
Python supports object-oriented language and concepts of classes and objects come into
existence. It supports inheritance, polymorphism, and encapsulation, etc. The object-
oriented procedure helps to programmer to write reusable code and develop applications
in less code.
7. Extensible
It implies that other languages such as C/C++ can be used to compile the code and thus it
can be used further in our Python code. It converts the program into byte code, and any
platform can use that byte code.
9. Integrated
It can be easily integrated with languages like C, C++, and JAVA, etc. Python runs code line
by line like C,C++ Java. It makes easy to debug the code.
10.Embeddable
The code of the other programming language can use in the Python source code. We can
use Python source code in another programming language as well. It can embed other
language into our code.
10
Experiment No: - 4
Aim:- Establish Connectivity between various components of IoT.
Theory:- IoT (Internet of Things) devices typically consist of various components such as
sensors, processors, communication modules, and actuators. These components need to be
connected and communicate with each other to enable the functioning of the IoT system.
Here are some ways to establish connectivity between the
11
Experiment No: - 5
Aim:- Establish Connection between Arduino and Bluetooth module.
Procedure:- To establish a connection between an Arduino and a Bluetooth
module, you can follow these general steps:
Choose a Bluetooth module: There are various types of Bluetooth modules available in
the market, such as HC-05, HC-06, and HM-10. Choose a module that suits your project
requirements.
1. Connect the Bluetooth module to the Arduino: Connect the TX pin of the
Bluetooth module to the RX pin of the Arduino and vice versa. You also need to
connect the GND and VCC pins of the Bluetooth module to the GND and 5V pins of
the Arduino, respectively.
2. Upload a program to the Arduino: You can use the Arduino IDE to upload a
program to the Arduino that can communicate with the Bluetooth module. You can
find sample codes and libraries for Bluetooth communication on the internet.
3. Test the connection: After uploading the program to the Arduino, you can test
the connection by pairing the Bluetooth module with a smartphone or a computer.
You can use a Bluetooth terminal app on your smartphone or a serial terminal app
on your computer to send and receive data from the Arduino.
#include <SoftwareSerial.h>
void setup() {
Serial.begin(9600);
bluetooth.begin(9600);
void loop() {
12
if (bluetooth.available()) {
char c = bluetooth.read();
Serial.print(c);
if (Serial.available()) {
char c = Serial.read();
bluetooth.print(c); }}
This code sets up a serial communication between the Arduino and the Bluetooth
module using pins 2 and 3 as the RX and TX pins, respectively. It reads data from the
Bluetooth module and prints it on the serial monitor of the Arduino, and vice versa.
Note that you need to pair the Bluetooth module with your smartphone or
computer before testing this code.
13
Experiment No: - 6
Aim:- Establish Connection using WiFi.
1. Obtain a Wi-Fi module: You will need a Wi-Fi module that can connect to your
Arduino board. There are several options available, such as the ESP8266 or ESP32.
2. Connect the Wi-Fi module: You will need to connect the Wi-Fi module to your
Arduino board according to its specific wiring instructions. Generally, this will involve
connecting the power, ground, and communication pins.
3. Install the necessary libraries: You will need to install the necessary libraries to
control the Wi-Fi module. This can be done through the Arduino IDE's library
manager.
4. Write the code: You will need to write code that can connect to your Wi-Fi network.
This will typically involve specifying the network's SSID and password.
5. Upload the code: Upload the code to your Arduino board using the Arduino IDE.
Here is an example code for connecting to a Wi-Fi network using an ESP8266 Wi-Fi
module:
#include <ESP8266WiFi.h>
void setup() {
Serial.begin(9600);
delay(10);
WiFi.begin(ssid, password);
delay(500);
Serial.println("Connecting to WiFi...");
14
}
void loop() {
Note that this is just a basic example and you will need to modify it to fit your specific
requirements.
15
Experiment No: - 7
Aim:- Publish data on the IoT platform.
Procedure:- Publishing data on an IoT platform involves the following general steps:
Materials Required :
16
4. Visualize the data on the platform's dashboard or analytics tools. You may need to
set up the visualization tools to display the data correctly.
5. Set up alerts or notifications if the data exceeds a certain threshold. Refer to the
platform's documentation for instructions on how to set up alerts.
Part 4: Testing and Troubleshooting
1. Test the system by monitoring the data on the platform and comparing it to known
values. Verify that the data is being sent and received correctly.
2. Troubleshoot any issues that arise, such as connectivity issues or incorrect readings.
Use the platform's documentation and community forums for help in
troubleshooting.
Overall, publishing data on an IoT platform is a powerful tool for monitoring and controlling
remote environments. With careful planning and attention to detail, you can successfully
implement an IoT-based data monitoring system.
17
Experiment No: - 8
Aim:- Measure the temperature of a remotely located temperature sensor Using IOT based
temperature data-monitoring system.
Procedure:- To measure the temperature of a remotely located temperature sensor using
an IoT-based temperature data-monitoring system, you can follow these steps:
Materials Required :
19
Experiment No: - 9
Aim:- Measure the humidity of a remotely located temperature sensor Using IOT based
temperature data-monitoring system.
Materials Required :
1. Connect the humidity sensor to the microcontroller board. Use the appropriate pins
for the sensor you are using. Refer to the sensor's datasheet or documentation for
pin connections.
2. Connect the Wi-Fi or Ethernet module to the microcontroller board. Refer to the
module's documentation for pin connections.
3. Connect the USB cable to the microcontroller board and the computer.
1. Test the system by monitoring the humidity data on the platform and comparing it to
known values. Verify that the data is being sent and received correctly.
2. Troubleshoot any issues that arise, such as connectivity issues or incorrect readings.
Use the platform's documentation and community forums for help in
troubleshooting.
Overall, measuring the humidity of a remotely located temperature sensor using an IoT
based temperature data-monitoring system can be a valuable tool for monitoring and
controlling humidity in various settings, such as greenhouses, museums, and data centers.
With careful planning and attention to detail, you can successfully implement an IoT-based
humidity monitoring system.
21
Experiment No: - 10
Aim:- Measure the pressure of a remotely located temperature sensor Using IOT based
temperature data-monitoring system.
Materials Required :
• Arduino board
• BMP180 or BMP280 pressure sensor
• Wi-Fi or Ethernet module
• Breadboard and jumper wires
• USB cable for programming the Arduino
• Computer with Arduino IDE and a serial monitor program
• IoT platform account
1. Connect the BMP180 or BMP280 sensor to the Arduino board. Use the following pin
connections:
• VCC to 3.3V
• GND to GND
• SDA to A4
• SCL to A5
2. Connect the Wi-Fi or Ethernet module to the Arduino board, if using a Wi-Fi or Ethernet
connection. Refer to the module's documentation for pin connections.
3. Connect the USB cable to the Arduino board and the computer.
Part 2: Programming the Arduino
1. Open the Arduino IDE on your computer.
2. In the IDE, go to File > Examples > Adafruit BMP085 Library > BMP085test.
3. Upload the code to the Arduino board.
4. Open the serial monitor to view the output from the sensor. The pressure readings
should appear in the serial monitor.
5. Modify the code to include the Wi-Fi or Ethernet connection, if applicable. Use the
IoT platform's API or SDK to send the pressure data to the platform. Refer to the
platform's documentation for instructions on how to send data.
22
Part 3: Visualizing the data on the IoT platform
1. Log in to your IoT platform account.
2. Create a new project and configure the project settings.
3. Use the platform's API or SDK to receive the pressure data from the Arduino board.
4. Visualize the data on the platform's dashboard or analytics tools. You may need to
set up the visualization tools to display the pressure data.
5. Set up alerts or notifications if the pressure readings exceed a certain threshold.
Refer to the platform's documentation for instructions on how to set up alerts.
Part 4: Testing and Troubleshooting
1. Test the system by placing the pressure sensor in a location with known pressure
readings. Check that the readings on the platform match the expected readings.
2. Troubleshoot any issues that arise, such as connectivity issues or incorrect readings.
Use the platform's documentation and community forums for help in
troubleshooting.
Overall, an IoT-based temperature data-monitoring system can provide real-time pressure
data from a remote location, allowing you to monitor and control pressure-sensitive
systems or environments. With careful planning and attention to detail, you can
successfully implement a pressure data-monitoring system using IoT technology.
23
Experiment No: - 11
Aim:- Publish the data using Mqtt.
Procedure:- To Publish the data using Mqtt ,we can follow these steps:
Materials Required :
24
1. Test the system by monitoring the data on the MQTT broker dashboard or analytics
tools. Verify that the data is being published correctly to the topic.
2. Troubleshoot any issues that arise, such as connectivity issues or incorrect data. Use
the MQTT broker documentation and community forums for help in troubleshooting.
Overall, publishing data using MQTT can be a powerful tool for creating IoT systems that
can communicate with each other and share data. With careful planning and attention to
detail, you can successfully implement an MQTT-based data publishing system.
25
Experiment No: - 12
Aim:- Download and Configure POSTMAN Applications
Procedure:- To Download and Configure POSTMAN Applications, we can follow these steps:
Materials Required :
26
Overall, POSTMAN is a powerful tool for testing and debugging API endpoints. With careful
attention to detail and a solid understanding of the API, you can successfully use POSTMAN
to test and troubleshoot APIs.
27
Experiment No: - 13
Aim:- Verify REST APIs through POSTMAN.
Procedure:- To Verify REST APIs through POSTMAN, we can follow these steps:
Materials Required :
Part 3: Troubleshooting
1. If the API endpoint returns an error message or unexpected result, use the POSTMAN
console or error messages to troubleshoot the issue.
2. Review the API documentation to ensure that the correct endpoint and parameters
are being used.
3. Test the endpoint with different inputs and parameters to verify that it works
correctly.
4. Consult the API provider or documentation for help in troubleshooting.
28
Overall, POSTMAN is a powerful tool for verifying REST APIs. With careful attention to detail
and a solid understanding of the API, you can successfully use POSTMAN to test and
troubleshoot APIs.
29
Experiment No: - 14
Aim:- Verify JSON APIs through POSTMAN.
Procedure:- To Verify JSON APIs through POSTMAN , we can follow these steps:
Materials Required :
Part 3: Troubleshooting
1. If the API endpoint returns an error message or unexpected result, use the POSTMAN
console or error messages to troubleshoot the issue.
2. Review the API documentation to ensure that the correct endpoint and parameters
are being used.
30
3. Test the endpoint with different inputs and parameters to verify that it works
correctly.
4. Consult the API provider or documentation for help in troubleshooting.
Overall, POSTMAN is a powerful tool for verifying JSON APIs. With careful attention to
detail and a solid understanding of the API, you can successfully use POSTMAN to test and
troubleshoot APIs.
31
Experiment No: - 15
Aim:- Verify SOAP APIs through POSTMAN.
Procedure:- To Verify SOAP APIs through POSTMAN , we can follow these steps:
Materials Required :
Overall, POSTMAN is a powerful tool for verifying SOAP APIs. With careful attention to
detail and a solid understanding of the API, you can successfully use POSTMAN to test and
troubleshoot SOAP APIs.
33
Experiment No: - 16
Aim:- Identify components for given project
Procedure:- To Identify components for given project , we can follow these steps:
Materials Required :
35
Experiment No: - 17
Aim:- Estimate the cost to make Project working.
Procedure:- Here is a general procedure to estimate the cost to make a project working:
1. Identify the components needed for the project: Review the project requirements
and specifications to determine the necessary components needed for the project.
Make a list of the components, their specifications, and the quantity required.
2. Research the cost of components: Research the cost of each component from various
suppliers. Consider the quantity needed and any discounts or deals offered.
3. Estimate the labor cost: Determine the amount of time it will take to assemble, test,
and install the components. Estimate the labor cost based on the hourly rate of the
workers.
4. Consider the cost of tools and equipment: Determine if any special tools or
equipment are needed to assemble or test the components. Estimate the cost of
renting or purchasing the necessary tools and equipment.
5. Calculate the overhead costs: Include overhead costs such as rent, utilities, insurance,
and other expenses associated with the project.
6. Add in contingency costs: Allow for additional costs that may arise due to unforeseen
circumstances.
7. Total the costs: Add up the costs of the components, labor, tools and equipment,
overhead, and contingency costs. This will give you an estimate of the total cost to
make the project working. Compare to budget:
8. Compare the estimated cost to the budget allocated for the project. If the estimated
cost is higher than the budget, consider making adjustments such as selecting lower-
cost components or reducing the labor time.
9. Monitor costs during the project: As the project progresses, monitor the costs to
ensure that they are staying within the budget. Make adjustments as needed to
avoid cost overruns.
By following these steps, you can estimate the cost to make a project working and ensure
that the project stays within budget.
36