http://oatminiproject.blogspot.com/2015/11/blog-post.html

ระบบเตือนภัยน้ำท่วม




               ชุดทดลองเครื่องเตือนภัยน้ำท่วม  โดยใช้บอร์ด Arduino UNO ควบคุมสั่งการ รูปแบบโครงงานคือสามารถแสดงให้เห็นถึงการป้องกันและเตือนภัยเพื่อไม่เกิดอันตรายกับผู้อยู่อาศัย เมื่อเรารู้ล่วงหน้าแล้วก็สามารถขนย้ายสิ่งของก่อนที่จะเสียหายหรืออาจถึงแก้ชีวิตได้ และอีกอย่างผมคิดว่าถ้าเกิดน้ำท่วมซึ่งอาจจะทำให้กระแสไฟฟ้าไหลไปกับน้ำได้เพราะว่าน้ำนั้นก็สามารถนำกระแสไฟฟ้าได้เหมือนกัน ถ้าเป็นอย่างนั้นก็อาจจะเกิดอันตรายถึงแก่ชีวิตได้ ผมจึงมีความคิดที่จะทำชุดทดลองเครื่องเตือนภัยน้ำท่วมนี้ขึ้นมา โดยใช้เซ็นเซอร์ตรวจจับน้ำฝน  Rain / Water Detection Sensor Module เป็นเซ็นเซอร์ตัวที่1  และอีกหนึ่งตัวเป็นเซ็นเซอร์ตัวที่ 2 Rain Raindrop Water Level Sensor Module เป็นเซ็นเซอร์ตรวจจับน้ำฝนเหมือนกัน การทำงานหลักๆ คือ เมื่อเซ็นเซอร์ตัวที่ทำงาน บอร์ดArduinoรับและประมวลผล Output ออกไปที่รีเลย์ 5V เพื่อไปสั่งให้หวูดสัญญาณเสียงดังขึ้น และเมื่อเซ็นเซอร์ตัวที่ ทำงานบอร์ดArduinoก็จะไปสั่งรีเลย์ 5V สั่งตัดกระแสไฟฟ้า L , N เพื่อไม่ให้จ่ายไฟไปที่ปลั๊กเพื่อไม่ให้เกิดอันตรายกับคนที่อยู่อาศัยภายในบ้าน
อุปกรณ์ภายในมีอะไรบ้าง มาดูกันเลยครับ 




  อุปกรณ์มี  
1.  เบรกเกอร์ 10A
2.  หม้อแปลง 220/15 V
3.  บอร์ด arduino UNO
4.  ชุดวงจรเร็กติไฟร์ 6V กับ 12V
5.  ชุดรีเลย์ 5V 2 ช่อง
6.  ชุดแปลงค่าของตัวเซ็นเซอร์
7.  ชุดเซ็นเซอร์ตรวจจับน้ำฝน

การออกแบบวงจร
หลักการทำงาน คือ แบ่งเป็น ระดับ 
      ระดับแรกเมื่อน้ำมาสัมผัสโดนเซ็นเซอร์ตัวที่ สัญญาณจะส่งไปที่บอร์ดarduinoบอร์ด(arduino)สั่งการไปที่รีเลย์ 5Vเพื่อทำให้หวูดสัญญาณดังขึ้น หวูดสัญญาณจะไม่หยุดถ้าหากยังมีน้ำมาสัมผัสโดนตัวเซ็นเซอร์
      ระดับที่ เมื่อมีน้ำมาสมผัสโดนเซ็นเซอร์ตัวที่ สัญญาณจะส่งไปที่บอร์ดarduinoบอร์ดarduinoก็ไปสั่งรีเรย์ให้ทำงาน ทำให้ตัด L,N ออก ดังรูปวงจรด้านบนครับ หลักการทำงานหลักๆก็จะมีประมาณนี้ครับ ส่วนอันนี้เป็นโค้ดโปรแกรมที่เขียนกับบอร์ด arduino UNOครับ

int sensorPin = A0; 
int buttonPin = 2;
int relay = 3; 
int relay1 = 6;
int sensorValue = 0; 
int buttonstate = 0;
void setup()
 {
pinMode (buttonPin, INPUT);
pinMode (relay, OUTPUT);
pinMode (relay1,OUTPUT);
}
void loop()
{
buttonstate = digitalRead(buttonPin);
{
  if (buttonstate == HIGH)
 {       
    digitalWrite(relay1, HIGH);  
  } 
  else
 { 
    digitalWrite(relay1, LOW); 
  }
}

sensorValue = analogRead(sensorPin);
sensorValue = sensorValue * 5/1023 ; 

if(sensorValue >= 3 )
      digitalWrite(relay, HIGH);
  else
      digitalWrite(relay, LOW);
}

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

https://www.arduitronics.com/article/22/arduino-and-motor-control-part-1

https://www.9arduino.com/article/71/โปรเจคเครื่องรดน้ำต้นไม้อัตโนมัติ-ด้วย-arduino-ราคาถูก-พร้อม-code-ตัวอย่าง

https://medium.com/sathittham/arduino-lcd-16x2-hello-world-dca09fd904f8