Smart Phone Controlled Home Automation Using Arduino
Required Components:
- Arduino Mega (any model)
- Android Phone
- HC05 Bluetooth Modules
- Bluetooth terminal App
- L293D IC
- Two 6V relays
- Two bulbs
- Breadboards
- 12 v,1A Adapter
- 16x2 LCD
CODE
#include <LiquidCrystal.h> //เรียกใช้ไฟล์ LiquidCrystal.h
LiquidCrystal lcd(7, 6, 5, 4, 3, 2); // เชื่อต่อกับขา 7, 6, 5, 4, 3, 2
LiquidCrystal lcd(7, 6, 5, 4, 3, 2); // เชื่อต่อกับขา 7, 6, 5, 4, 3, 2
void setup() {
pinMode(11, OUTPUT); //กำหนดขา11 เป็น output
pinMode(10, OUTPUT); //กำหนดขา10 เป็น output
Serial.begin(9600); // กำหนดค่า การรับส่งข้อมูล เท่ากับ 9600 บิตต่อวินาที
lcd.begin(16, 2); // จอกว้าง 16 colum 2 เเถว
lcd.print("**AUTOMATION**"); // เเสดงคำว่า **AUTOMATION**
}
pinMode(11, OUTPUT); //กำหนดขา11 เป็น output
pinMode(10, OUTPUT); //กำหนดขา10 เป็น output
Serial.begin(9600); // กำหนดค่า การรับส่งข้อมูล เท่ากับ 9600 บิตต่อวินาที
lcd.begin(16, 2); // จอกว้าง 16 colum 2 เเถว
lcd.print("**AUTOMATION**"); // เเสดงคำว่า **AUTOMATION**
}
void loop() {
if (Serial.available() > 0) // ตรวจสอบว่ามีการ พิมพ์หรือไม่
{
char c = Serial.read(); // กำหนดตัวเเปร C ไว้เก็บข้อมูลตัวอักษร ที่รับเข้ามา
if (c == 'a') //ถ้า ตัวเเปร c มีค่า กดตัวอักษร a
{
Serial.print("in a code"); //พิมพ์ข้อความ in a code
digitalWrite(10,HIGH); // ส่งข้อมูล HIGH ไปที่ ขา 10
digitalWrite(11,LOW); // ส่งข้อมูล Low ไปที่ ขา 11
Serial.print("10 HIGH"); //พิมพ์ข้อความ 10 HIGH
lcd.clear(); // ล้าง หน้าจอ Lcd
lcd.print("**BULB1 ON**"); //พิมพ์ข้อความ **BULB1 ON**
}
if(c=='b') ///ถ้า ตัวเเปร c มีค่า กดตัวอักษร b
{
digitalWrite(11,HIGH);
digitalWrite(10,LOW);
Serial.print("11 HIGH");
lcd.clear();
lcd.print("**BULB2 ON**");
}
if(c=='c') ///ถ้า ตัวเเปร c มีค่า กดตัวอักษร c
{
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
lcd.clear();
lcd.print("**BULB 1,2 ON**");
}
if(c=='d') ///ถ้า ตัวเเปร c มีค่า กดตัวอักษร d
{
digitalWrite(10,LOW);
digitalWrite(11,LOW);
lcd.clear();
lcd.print("**BULB 1,2 OFF**");
}
}
}
if (Serial.available() > 0) // ตรวจสอบว่ามีการ พิมพ์หรือไม่
{
char c = Serial.read(); // กำหนดตัวเเปร C ไว้เก็บข้อมูลตัวอักษร ที่รับเข้ามา
if (c == 'a') //ถ้า ตัวเเปร c มีค่า กดตัวอักษร a
{
Serial.print("in a code"); //พิมพ์ข้อความ in a code
digitalWrite(10,HIGH); // ส่งข้อมูล HIGH ไปที่ ขา 10
digitalWrite(11,LOW); // ส่งข้อมูล Low ไปที่ ขา 11
Serial.print("10 HIGH"); //พิมพ์ข้อความ 10 HIGH
lcd.clear(); // ล้าง หน้าจอ Lcd
lcd.print("**BULB1 ON**"); //พิมพ์ข้อความ **BULB1 ON**
}
if(c=='b') ///ถ้า ตัวเเปร c มีค่า กดตัวอักษร b
{
digitalWrite(11,HIGH);
digitalWrite(10,LOW);
Serial.print("11 HIGH");
lcd.clear();
lcd.print("**BULB2 ON**");
}
if(c=='c') ///ถ้า ตัวเเปร c มีค่า กดตัวอักษร c
{
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
lcd.clear();
lcd.print("**BULB 1,2 ON**");
}
if(c=='d') ///ถ้า ตัวเเปร c มีค่า กดตัวอักษร d
{
digitalWrite(10,LOW);
digitalWrite(11,LOW);
lcd.clear();
lcd.print("**BULB 1,2 OFF**");
}
}
}
ไม่มีความคิดเห็น:
แสดงความคิดเห็น