ระบบจำลองการรักษาความปลอดภัยภายในบ้านนี้ 
Home Alarm System
หลักการทำงาน
           ระบบจำลองการรักษาความปลอดภัยภายในบ้านนี้ จะทำงานในขณะที่ผู้ใช้งานนั้นไม่อยู่บ้านหรือล็อคบ้านไว้ ระบบนี้ประกอบไปด้วยเซ็นเซอร์ที่ทำหน้าที่ในการตรวจจับสิ่งต่างๆ เช่น การบุกรุกเข้ามาโจรกรรม การเกิดอัคคีภัย เป็นต้น
           ขณะทำงานระบบจะเปิดการตรวจจับโดยรับสัญญาณอินพุตจากเซ็นเซอร์ 2 อย่างด้วยกันคือ PIR Motion Sensor (เซ็นเซอร์ตรวจจับการเคลื่อนไหว) ในระบบจำลองนี้ จะติดเซนเซอร์ไว้ในห้องรับแขก และ Flame Detector Sensor (เซ็นเซอร์ตรวจจับเปลวไฟ) จะติดเซนเซอร์ไว้ในห้องครัว เมื่อผู้อาศัยไม่อยู่บ้านหรือล็อคบ้านไว้ PIR Motion Sensor และ Flame Detector Sensor จะทำงาน เมื่อมีการเคลื่อนไหวภายในบ้าน สัญญาณกันขโมยจะส่งเสียง Alarm แจ้งเตือนออกทาง Buzzer ทันที หรือเมื่อเกิดเปลวไฟบริเวณห้องครัว (Flame Detector Sensor จะทำงาน) และสัญญาณ Alarm ก็จะทำงานเช่นกัน
           แต่เมื่อผู้อาศัยกลับมาแล้วและปลดล็อคประตูด้วยรหัสผ่าน “1234” ตามด้วยเครื่องหมาย # ตามที่ตั้งไว้ มีผลทำให้ระบบเซนเซอร์ตรวจจับปิดการทำงาน และหลังจากปลดล็อคแล้ว ผู้อาศัยจะสามารถควบคุมการปิดเปิดเครื่องใช้ไฟฟ้าภายในบ้านได้ โดยกดปุ่มที่ Keypad (ปุ่ม A - หลอดไฟดวงที่ 1 หรือ ปุ่ม B - หลอดไฟดวงที่ 2) และเมื่อผู้อาศัยจะเข้านอน ต้องการล็อคบ้านและเปิดระบบเตือนภัย ก็สามารถทำได้โดยกดที่ Keypad (ปุ่ม C) 
           จากการทำงานของระบบนี้ เป็นเพียงการทำงานเบื้องต้นให้เห็นภาพ ผู้ใช้สามารถนำไปต่อยอดพัฒนาเพิ่มเติมได้ เช่น เชื่อมต่อกับ GSM Module เพื่อสื่อสารผ่านเครือข่ายโทรศัพท์มือถือและอินเตอร์เน็ต หรือเชื่อมต่ออุปกรณ์ LAN หรือ Wi-Fi เพิ่มเติมเพื่อสื่อสารผ่านอินเตอร์เน็ต แล้วประยุกต์การทำงานให้เกิด Alarm ให้ระบบส่ง SMS หรือโทรออกไปยังเจ้าของบ้านเพื่อเตือนภัยได้อีกด้วย
#include <Password.h>
#include <Keypad.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
  
Password password = Password( "1234" ); // Set the Password
  
// Set the LCD address to 0x27 for a 20 chars and 4 line display
LiquidCrystal_I2C lcd(0x27, 20, 4);
  
const byte ROWS = 4;        // Four rows
const byte COLS = 4;        //  columns
const int status_lock = A0; // LED Status Pin
const int status_unlock = A1; // LED Status Pin
const int led_bed = 11;     // Home Light2 Pin
const int led_bath = 12;    // Home Light1 Pin
int pir = A2;               // PIR Sensor Pin
int flame = A3;             // Flame Sensor Pin
int Buzzer = 10;            // Buzzer Module Pin
int alarmValue = 0; 
int fl = 0, state = 0, state1 = 0, state2 = 0, Alarm_fl = 0; // Flag
int dir = 8, dir1 = 0;
String test = "                    ";
// Define the Keymap
char keys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};
  
byte rowPins[ROWS] = { 2,3,4,5, };// Connect keypad ROW0, ROW1, ROW2 and
                    // ROW3 to these Arduino pins.
byte colPins[COLS] = { 6,7,8,9 };// Connect keypad COL0, COL1, COL2 and
                        // COL3 to these Arduino pins.
  
// Create the Keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
แหล่งที่มา
https://thaieasyelec.com/article-wiki/embedded-electronics-application/home-alarm-systems-control-by-arduino.html

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

Coin Validator เครื่องรับเหรียญ เครื่องหยอดเหรียญ Multi Coin รุ่น SG-6

Learning 7 Segment + Arduino