int relay1 = 2; // เชื่อมต่อกับขา in1 ของบอร์ดรีเลย์
int sensor = A2; // เชื่อมต่อกับขา Senser
int val = 0; // ประกาศค่าตัวแปรเพื่อเพื่อประมวลผล
#define LED 13 // กำหนดขาไฟ LED บนบอร์ด Arduino
void setup() {
Serial.begin(9600); // ตั้งค่า Port เพื่อแสดงผล
pinMode(relay1, OUTPUT); // ตั้งค่า Pin 2 ที่เชื่อมต่อกับ Relay ให้เป็นขาส่งออกเพื่อใช้สั่งงานให้ Relay ทำงาน
pinMode(sensor, INPUT); // ตั้งค่า Pin A2 ที่เชื่อมต่อกับ Sensor ให้เป็นขารับเข้าค่าความเคลื่อนไหว
pinMode(LED, OUTPUT); // ตั้งค่า Pin 13 ซึ่งเป็นขา LED ของบอร์ด Arduino เป็นขาส่งออก
digitalWrite(LED, LOW); // กำหนดให้ไฟ LED ปิด
}
void loop() {
val = analogRead(sensor); // อ่านค่าที่ Sensor อ่านได้
Serial.println(val); // แสดงค่าที่อ่านได้
if (val > 500) { // ทำงานเมื่อตรวจเจอการเคลื่อนไหว
Serial.println("Movement detected!");
digitalWrite(LED, HIGH); // สั่งเปิดไฟ LED บนบอร์ด Arduino
digitalWrite(relay1, LOW); // สั่งเปิดรี Relay1
delay(10000); // NOTE กำหนดค่าเวลาที่จะให้เปิดไฟค้าง
} else if (val < 100) {
Serial.println("No movement!");
digitalWrite(LED, LOW); // สั่งเปิดไฟ LED บนบอร์ด Arduino
digitalWrite(relay1, HIGH); // สั่งปิดรี Relay1
delay(1000);
}
delay(100);
}