Basic 𝐑𝐨𝐛𝐨𝐭𝐢𝐜𝐬
– Robotics Engineering Certification
Let’s Start the Robotics Journey
Class 10-
Project 01: Home
Automation System
Project Objective:
Objective:
To design and implement a Smart Home Automation System that enhances home safety
by integrating gas and flame detection, real-time status display, and alert mechanisms.
Overview:
This project focuses on building a safety-centric smart home system using the following
components:
● Gas Sensor: Monitors air quality for the presence of harmful gases (e.g., LPG,
methane).
● Flame Sensor: Detects fire or flame presence to mitigate potential fire hazards.
● I2C Display Module: Provides a user-friendly real-time display of system status
and alerts.
● Buzzer Module: Acts as an audible alarm system to notify users of detected
hazards.
Key Features:
1. Gas Leak Detection:
○ The gas sensor continuously monitors for the presence of combustible gases.
○ If gas levels exceed the threshold, an alert is triggered, and the buzzer activates.
2. Fire Detection:
○ The flame sensor detects flames or sudden changes in infrared light intensity.
○ Upon detection, the system activates the buzzer and displays an alert on the I2C
screen.
3. Real-time Display:
○ The I2C display shows real-time gas levels, flame status, and system health.
○ Warning messages are displayed during critical events.
4. Audible Alerts:
○ The buzzer provides immediate feedback to alert nearby occupants of gas leaks or
fire hazards.
Hardware Requirements:
● Gas Sensor (MQ-2): For detecting gases.
● Flame Sensor: For fire detection.
● I2C LCD Display Module: For real-time updates.
● Buzzer Module: For audible alerts.
● Arduino
● Power Supply: To power the system.
Circuit Diagram: Step 01
Circuit Diagram: Step 02
Circuit Diagram: Step 03
D0 G Vcc
Circuit Diagram: Step 04
Circuit Diagram: Step 04
Coding: LCD Display
Printing on I2C Display
#include <LiquidCrystal_I2C.h>
// Replace 0x27 with your LCD's I2C address from the scanner
LiquidCrystal_I2C lcd(0x27, 16, 2); // 16 columns and 2 rows
void setup() {
[Link](); // Initialize the LCD
[Link](); // Turn on the backlight
// Display a message
[Link](0, 0); // Set cursor to column 0, row 0
[Link]("Hello, World!"); // Print text
[Link](0, 1); // Set cursor to column 0, row 1
[Link]("I2C Display");
}
void loop() {
// Optional: update the display or leave it static
}
#include <Wire.h> void loop() {
#include <LiquidCrystal_I2C.h>
int flameStatus = digitalRead(flameSensorPin);
LiquidCrystal_I2C lcd(0x27, 16, 2); int gasStatus = digitalRead(gasSensorPin);
[Link](0, 0);
const int flameSensorPin = 6;
const int gasSensorPin = 7; if (flameStatus == HIGH) {
const int buzzerPin = 8; [Link]("Flame: SAFE ");
[Link]("Flame sensor: SAFE");
void setup() {
[Link](9600); } else {
[Link]();
[Link](); [Link]("Flame: ALERT ");
[Link]("Home Automation"); [Link]("Flame sensor: ALERT!");
[Link](0, 1); activateBuzzer();
[Link]("System Start..."); }
delay(2000); // Show startup message
pinMode(flameSensorPin, INPUT); [Link](0, 1); if (gasStatus == HIGH) {
pinMode(gasSensorPin, INPUT); [Link]("Gas: SAFE "); } else { [Link]("Gas: ALERT ");
pinMode(buzzerPin, OUTPUT); activateBuzzer(); } delay(500); } void activateBuzzer() {
QnA