กลับไปหน้ารวมไฟล์
clap-switch-arduino.md

การควบคุมด้วยเสียง: Clap Switch

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

invisible_mess_glasses_relay_schema_1772681179521.png

The Sound Threshold Logic

ไมโครโฟนจะรับเสียงทุกชนิด หน้าที่ของ Arduino คือการกรองเสียงเหล่านั้น:

  1. Sensor: Sound Detector Module (LM393/KY-037) จะส่ง variable voltage ไปยัง analog pin อย่างต่อเนื่อง
  2. Spike: เสียงตบมือจะสร้าง high-voltage spike ที่เกิดขึ้นอย่างกะทันหัน
  3. การสลับ: โค้ดจะใช้ตัวแปร 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()) เพื่อให้แน่ใจว่าเสียงตบมือครั้งเดียวที่ยาวเล็กน้อยจะไม่ถูกนับเป็นสองหรือสามครั้ง ซึ่งจะช่วยป้องกันไม่ให้ไฟกระพริบอย่างรวดเร็ว

ข้อมูล Frontmatter ดั้งเดิม

title: "Clap Switch Using Arduino"
description: "Control lights with a clap! Build an acoustic switch using a sound sensor module and an Arduino to toggle your appliances hands-free."
category: "Home Automation"
difficulty: "Easy"