#define TRIG_PIN 2
#define ECHO_PIN 3
#define BUZZER_PIN 8
// กำหนดระยะที่ต้องการแจ้งเตือนในหน่วยเซนติเมตร
const int ALERT_DISTANCE = 10;
void setup() {
pinMode(TRIG_PIN, OUTPUT); // กำหนดขา TRIG เป็น OUTPUT
pinMode(ECHO_PIN, INPUT); // กำหนดขา ECHO เป็น INPUT
pinMode(BUZZER_PIN, OUTPUT); // กำหนดขา BUZZER เป็น OUTPUT
Serial.begin(9600); // เริ่มการสื่อสารผ่าน Serial Monitor เพื่อดูค่าระยะทาง
}
void loop() {
// ส่งสัญญาณเสียงออกจากขา TRIG
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
// รับค่าสัญญาณกลับจากขา ECHO
long duration = pulseIn(ECHO_PIN, HIGH);
// คำนวณระยะทาง (หน่วย: เซนติเมตร)
int distance = duration * 0.034 / 2;
// แสดงระยะทางผ่าน Serial Monitor
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
// ตรวจสอบระยะ หากน้อยกว่า 10 เซนติเมตร ให้ทำการแจ้งเตือน
if (distance <= ALERT_DISTANCE) {
tone(BUZZER_PIN, 1000); // เปิดเสียง Buzzer ที่ความถี่ 1000 Hz
} else {
noTone(BUZZER_PIN); // ปิดเสียง Buzzer
}
delay(500); // เวลาหน่วงก่อนการตรวจสอบครั้งถัดไป
}