การควบคุมด้วยเสียง: Clap Switch
นึกถึงโฆษณา "Clapper" เก่า ๆ ออกไหม? Arduino Clap Switch ช่วยให้คุณสร้างอุปกรณ์แบบนั้นได้จริง โดยใช้ analog sound sensor เพื่อตรวจจับเสียงที่ดังและคมชัด (เช่น เสียงตบมือ) และสลับการทำงานของ relay เพื่อเปิดหรือปิดอุปกรณ์

The Sound Threshold Logic
ไมโครโฟนจะรับเสียงทุกชนิด หน้าที่ของ Arduino คือการกรองเสียงเหล่านั้น:
- Sensor: Sound Detector Module (LM393/KY-037) จะส่ง variable voltage ไปยัง analog pin อย่างต่อเนื่อง
- Spike: เสียงตบมือจะสร้าง high-voltage spike ที่เกิดขึ้นอย่างกะทันหัน
- การสลับ: โค้ดจะใช้ตัวแปร
boolean(สถานะ true/false) เมื่อ loud spike ผ่าน threshold ที่กำหนด ตัวแปรจะพลิกกลับ ทำให้ relay เปิด (ON) หากตบมืออีกครั้ง ตัวแปรจะพลิกกลับ ทำให้ relay ปิด (OFF)
Hardware Components
- Arduino Uno/Nano: ตัวประมวลผลเสียง
- KY-037 Sound Sensor Module: ไมโครโฟนและ amplifier
- 1-Channel Relay Module: สวิตช์ high-voltage
- โคมไฟตั้งโต๊ะหรือเครื่องใช้ไฟฟ้า: สำหรับทดสอบ relay อย่างปลอดภัย
Debouncing Sound
เช่นเดียวกับ mechanical buttons, สัญญาณเสียงก็มีความไม่เสถียร ส่วนที่ยากที่สุดของโปรเจกต์นี้คือการเขียนโปรแกรม non-blocking delay (millis()) เพื่อให้แน่ใจว่าเสียงตบมือครั้งเดียวที่ยาวเล็กน้อยจะไม่ถูกนับเป็นสองหรือสามครั้ง ซึ่งจะช่วยป้องกันไม่ให้ไฟกระพริบอย่างรวดเร็ว