อุปกรณ์ที่ใช้
1. Arduino UNO R3 - Made in italy
2. Sensor Shield V 5.0
3. สาย Jumper Female to Male ยาว 20cm.
4. สาย Jumper Female to Female ยาว 20cm.
5. Relay 1 Channel 5V DC Solid State High Level Trigger
6. Voice Sound Detection Sensor Module
รูปผลงาน
1.
2.
3.
บล็อกไดอะแกรม
การต่อวงจร ระหว่าง Sensor Shield กับ เซ็นเซอร์เสียง
Shield <-> เซ็นเซอร์เสียง
G <-> GND
V <-> VCC
S(4) <-> OUT
การต่อวงจร ระหว่าง Sensor Shield กับ รีเลย์
Shield <-> รีเลย์
G <-> DC-
V <-> DC+
S(5) <-> CH1
การต่อวงจร ระหว่าง หลอดไฟ กับ รีเลย์
int sound_sensor = 4; //กำหนดตัวแปรให้ sound sersor เป็นขา4
int relay = 5; // กำหนดตัวแปรให้ relay เป้นขา5
int clap = 0; //กำหนดตัวแปรให้ clap เป็น ขา0
long detection_range_start = 0; // กำหนดตัวแปรให้ detection_range_start เท่ากับ0
long detection_range = 0; // กำหนดตัวแปรให้ detection_range เท่ากับ 0
boolean status_lights = false; // กำหนดให้ status_lights เป็นเท๊จ หรือ 0
void setup() {
pinMode(sound_sensor, INPUT); // กำหนดให้ sound_sensor เป็นอินพุท
pinMode(relay, OUTPUT); // กำหนดให้ relay เป็น output
}
void loop() {
int status_sensor = digitalRead(sound_sensor);
if (status_sensor == 0) // ถ้า status_sensor เปรียบเทียบเท่ากับ 0
{
if (clap == 0) // ถ้า clap เท่ากับ 0
{
detection_range_start = detection_range = millis(); // detection_range_start เท่ากับ detection_range เท่ากับ millis()
clap++; // clap เพิ่มขึ้น 1
}
else if (clap > 0 && millis()-detection_range >= 50) // ถ้า clap มากกว่า 0 เปรียบเทียบ millis()-detection_range มากกว่าหรือเท่ากับ 50
{
detection_range = millis();// detection_range ค่าเท่ากับ millis
clap++; // clap เพิ่มขึ้น1
}
}
if (millis()-detection_range_start >= 400) // ถ้า (millis()-detection_range_start มากกว่า400
{
if (clap == 2) // ถ้า clap เท่ากับ2
{
if (!status_lights) // ถ้า ผลลัพท์status_lights เป็นเท็จ
{
status_lights = true; //status_lights เท่ากับ ถูก หรือ 1
digitalWrite(relay, HIGH); //ส่งค่า ให้ relay เป็น high
}
else if (status_lights) //status_lights เท่ากับ ถูก หรือ 1
{
status_lights = false; //status_lights เท่ากับ ผิดหรือ 0
digitalWrite(relay, LOW); //ส่งค่า ให้ relay เป็น low หรือ 0
}
}
clap = 0; // clap เท่ากับ 0
}
}
ผลการทดลอง
วิธีควบคุม Arduino ด้วย เซ็นเซอร์เสียง Voice Sound Detection Sensor Module เราจะควบคุม การ เปิด ปิดไฟ AC 220V ด้วยเสียงตบมือ โดยเราจะใช้เซ็นเซอร์ตรวจจับเสียง + รีเลย์ และแสดงผลด้วยไฟ หลอดไฟบ้าน
ลิ้งดูวีดีโอผลการทดลองมินิโปรเจ้คเปิด-ปิดไฟ220Vด้วยเสียง
ไม่มีความคิดเห็น:
แสดงความคิดเห็น