int ledPin[3] = {9, 10, 11} ; // ขา LED
int ldrPin = A0; // ขา LDR Sensor
int pirPin = 2; // ขา PIR Sensor
int lightValue = 0; // เก็บค่าแสง
int motionState = 0; // เก็บสถานะ PIR
void setup() {
for (int i = 0; i < 3; i++) {
pinMode(ledPin[i], OUTPUT); // LED เป็น Output
}
pinMode(pirPin, INPUT); // PIR เป็น Input
Serial.begin(9600); // เปิด Serial Monitor
}
void loop() {
lightValue = analogRead(ldrPin); // อ่านค่าแสง
motionState = digitalRead(pirPin); // อ่านค่าการเคลื่อนไหว
Serial.print("Ligth: ");
Serial.print(lightValue);
Serial.print("Motion: ");
Serial.println(motionState);
// ตรวจสอบค่าแสงน้อย (กลางคืน)
if (lightValue < 500) {
if (motionState == HIGH) {
for (int i = 0; i < 3; i++) {
analogWrite(ledPin[i], 255); // เปิดไฟ 100%
}
}
else {
for (int i = 0; i < 3; i++) {
analogWrite(ledPin[i], 102); // เปิดไฟ 40% (255*0.4 = 102)
}
}
}
else {
for (int i = 0; i < 3; i++) {
analogWrite(ledPin[i], 0); // กลางวันปิดไฟ
}
}
delay(200); // หน่วงเวลา เปิด-ปิด
}