ความปลอดภัยเป็นปัญหาหลักสำหรับเราทุกคนมาโดยตลอดและมีระบบรักษาความปลอดภัยและการเฝ้าระวังที่ใช้เทคโนโลยีระดับสูงและ IoT มากมายในตลาด Intruder หรือ Burglar Alarmเป็นหนึ่งในโครงการคลาสสิกและเป็นที่นิยมในหมู่นักเรียนอิเล็กทรอนิกส์และมือสมัครเล่น นอกจากนี้เรายังได้สร้างสัญญาณกันขโมยโดยใช้เทคโนโลยีต่างๆดังนี้
- วงจรเตือนภัยด้วยเลเซอร์
- สัญญาณเตือนความปลอดภัยจาก IR
- สัญญาณกันขโมยโดยใช้ PIR
- ระบบรักษาความปลอดภัยที่ใช้ GSM
วันนี้เราจะเพิ่มอีกหนึ่งปลุกความปลอดภัยในรายการของเราซึ่งอยู่บนพื้นฐานอัลตราโซนิคเซนเซอร์สัญญาณเตือนประตูควบคุม Arduinoนี้สามารถติดตั้งใกล้ประตูเพื่อตรวจจับว่ามีใครอยู่ที่ประตู เมื่อใดก็ตามที่มีคนเข้ามาในช่วงของเซ็นเซอร์อัลตราโซนิกเสียงกริ่งจะเริ่มส่งเสียงบี๊บ คุณสามารถปรับช่วงการตรวจจับเซ็นเซอร์ตามประตูของคุณ ระบบนี้ยังสามารถตอบสนองวัตถุประสงค์ของการตรวจจับการเคลื่อนไหว
ส่วนประกอบที่จำเป็น:
- เขียงหั่นขนม
- อัลตราโซนิกเซนเซอร์
- Buzzer
- Arduino Mega (ทุกรุ่น)
- สายจัมเปอร์
- สาย USB สำหรับอะแดปเตอร์ Arduino หรือ 12v, 1A
โมดูลเซนเซอร์อัลตราโซนิก:
เซ็นเซอร์อัลตราโซนิก HC-SR04 ถูกใช้ที่นี่เพื่อตรวจจับการปรากฏตัวของบุคคลใด ๆ ที่ประตู โมดูลเซ็นเซอร์ประกอบด้วยเครื่องส่งสัญญาณอัลตราโซนิกตัวรับและวงจรควบคุม อัลตราโซนิกเซนเซอร์ประกอบด้วยดวงตากลมสองดวงซึ่งใช้ในการส่งคลื่นอัลตราโซนิกและอีกดวงหนึ่งเพื่อรับ
เราสามารถคำนวณระยะห่างของวัตถุโดยอาศัยเวลาที่คลื่นอัลตราโซนิกถ่ายกลับไปที่เซ็นเซอร์ เนื่องจากทราบเวลาและความเร็วของเสียงเราจึงสามารถคำนวณระยะทางได้ตามสูตรต่อไปนี้
- ระยะทาง = (เวลา x ความเร็วของเสียง) / 2
ค่าจะถูกหารด้วยสองเนื่องจากคลื่นเคลื่อนที่ไปข้างหน้าและข้างหลังซึ่งครอบคลุมระยะทางเท่ากัน แต่ในโครงการนี้เราได้ใช้ไลบรารี NewPing.h และไลบรารีนี้ดูแลการคำนวณนี้และเราจำเป็นต้องใช้คำสำคัญบางคำคำอธิบายจะได้รับในส่วนการเขียนโปรแกรมด้านล่าง
ตรวจสอบโครงการด้านล่างเพื่อวัดระยะห่างของวัตถุใด ๆ และเพื่อทำความเข้าใจการทำงานของเซ็นเซอร์อัลตราโซนิกอย่างถูกต้อง:
- การวัดระยะทางโดยใช้ Arduino โดยใช้เซ็นเซอร์อัลตราโซนิก
- การวัดระยะทางโดยใช้ไมโครคอนโทรลเลอร์ HC-SR04 และ AVR
แผนภาพวงจรและคำอธิบาย:
การเชื่อมต่อวงจรสำหรับUltrasonic Alarmนี้ทำได้ง่ายมาก ขาทริกเกอร์ของเซ็นเซอร์อัลตราโซนิกเชื่อมต่อกับหมายเลขพิน ขาเซนเซอร์ Arduino และ Echo 12 ตัวเชื่อมต่อกับพินหมายเลข 11 ของ Arduino Vcc ของเซ็นเซอร์เชื่อมต่อกับขา 5V ของ Arduino และ GND ของเซ็นเซอร์เชื่อมต่อกับ GND ของ Arduino หนึ่งขากริ่งเชื่อมต่อกับ GND ของ Arduino และขาอื่น ๆ ที่มีการเชื่อมต่อถึง 8 THขาของ Arduino
คำอธิบายการทำงาน:
การทำงานของArduino Door Alarmนั้นง่ายมาก เมื่อใดก็ตามที่ใครก็ตามเข้ามาในเส้นทาง / ช่วงของ Ultrasonic Sensor ไมโครคอนโทรลเลอร์จะตรวจจับระยะห่างของวัตถุจากเซ็นเซอร์และหากวัตถุอยู่ในช่วงที่กำหนดไว้ก็จะส่งสัญญาณ High ไปยังกริ่งและเสียงกริ่งจะเริ่มส่งเสียงบี๊บ
คุณสามารถทดสอบวงจรโดยวางสิ่งใด ๆ ไว้ด้านหน้าเซ็นเซอร์ภายในช่วงตรวจสอบวิดีโอเพื่อสาธิต ฟังก์ชั่นของ Ultrasonic Sensor นี้สามารถใช้ในการสร้าง Obstacle Avoiding Robot ได้
คำอธิบายการเขียนโปรแกรม:
ในโครงการนี้เราได้ใช้ NewPing.h Library สำหรับ Ultrasonic sensor ซึ่งพัฒนาโดย Tim Eckel แม้ว่าเราจะสามารถใช้เซ็นเซอร์อัลตราโซนิกได้โดยไม่ต้องใช้ไลบรารีนี้เหมือนกับที่เราทำในโครงการก่อนหน้านี้ แต่ไลบรารีนี้มีคุณสมบัติที่ดีมากมายสำหรับเซ็นเซอร์อัลตราโซนิกและง่ายต่อการเขียนโค้ดสำหรับเซ็นเซอร์อัลตราโซนิกโดยใช้ไลบรารีนี้ เราสามารถใช้ฟังก์ชั่นของเซ็นเซอร์อัลตราโซนิกได้อย่างง่ายดายโดยใช้ไลบรารีนี้โดยไม่ต้องเขียนโค้ดมากเกินไป เหมือนกับไลบรารีอื่น ๆ ที่ใช้จัดการกับความซับซ้อนในระดับล่าง
# รวม
คุณสามารถตรวจสอบคุณสมบัติการใช้งานและโค้ดตัวอย่างทั้งหมดของไลบรารีนี้ได้โดยไปที่ลิงค์นี้ ตรวจสอบหน้า Arduino อย่างเป็นทางการของไลบรารีนี้
ไลบรารีรุ่นล่าสุดสามารถดาวน์โหลดได้จากลิงค์ด้านบน นอกจากนี้เราได้ดาวน์โหลด Library จากลิงค์ด้านล่างซึ่งได้รับการแก้ไขสำหรับ Teensy:
github.com/PaulStoffregen/NewPing
ก่อนอื่นคุณควรทดสอบเซ็นเซอร์ด้วยการเบิร์นรหัสตัวอย่างที่ระบุไว้ในหน้า นอกจากนี้เรายังมีการใช้รหัสตัวอย่างสำหรับโครงการของเราและปรับเปลี่ยนได้ตามที่เราปลุกประตูโครงการ
ทริกเกอร์พินเชื่อมต่อกับพิน 12 ของ Arduino และพิน Echo เชื่อมต่อกับพิน 11 ของ Arduino MAX_DISTANCE หมายถึงระยะทางที่เซ็นเซอร์สามารถตรวจจับสิ่งกีดขวางได้คือ 500 ซม. หรือ 5 ม.
# กำหนด TRIGGER_PIN 12 # กำหนด ECHO_PIN 11 # กำหนด MAX_DISTANCE 500
บรรทัดด้านล่างระบุอัตราการรับส่งข้อมูลที่ข้อมูลถูกส่งไปยังพอร์ตอนุกรม Arduino จากเซ็นเซอร์อัลตราโซนิก
Serial.begin (115200);
Pin no 10 ได้รับการกำหนดค่าเป็นพินเอาต์พุตและเชื่อมต่อกับ Buzzer พินอื่น ๆ ของออดเชื่อมต่อกับ GND ของ Arduino
PinMode (10, เอาท์พุท);
ใน ฟังก์ชัน void echoCheck () จะ ใช้ sonar.ping_result / US_ROUNDTRIP_CM เพื่อคำนวณระยะห่างของสิ่งกีดขวางจากเซ็นเซอร์ ธง ใช้ในการสั่งงานกริ่งเมื่อสิ่งกีดขวางอยู่ในระยะ 50 ซม. จากเซ็นเซอร์อัลตราโซนิก คุณสามารถเปลี่ยน 'ระยะทาง' ตามความต้องการหรือขนาดประตูของคุณ
ถ้า ((sonar.ping_result / US_ROUNDTRIP_CM) <50) flag = 1; อื่นถ้า ((sonar.ping_result / US_ROUNDTRIP_CM)> 50) แฟล็ก = 0;
รหัสได้รับการแสดงความคิดเห็นเป็นอย่างดีจากไลบรารีAuthor of NewPing.h และสามารถเข้าใจได้ง่าย นอกจากนี้คุณสามารถตรวจสอบหน้าห้องสมุดเพื่อทำความเข้าใจได้ดีขึ้นและสามารถใช้ไลบรารีนี้เพื่อสร้างโครงการที่ซับซ้อนโดยใช้เซ็นเซอร์อัลตราโซนิก รหัสเต็มสำหรับโครงการ Door Alarm นี้มีให้ด้านล่าง
หลักเซ็นเซอร์อัลตราโซนิกที่ใช้ในการวัดระยะทางจากวัตถุใด ๆ แต่ที่นี่เราจะเห็นว่ามันสามารถใช้เป็นสัญญาณเตือนภัยการรักษาความปลอดภัยหรือสัญญาณเตือนประตูกับ Arduino ในทำนองเดียวกันเราสามารถสร้างโครงการที่มีประโยชน์มากมายโดยใช้สิ่งนี้: ตัวบ่งชี้ระดับน้ำอัตโนมัติและตัวควบคุมโดยใช้ Arduino