สารบัญ:
- ขั้นตอนที่ 1: ตั้งค่าวงจร
- ขั้นตอนที่ 2: ตั้งค่าซอฟต์แวร์: Arduino
- ขั้นตอนที่ 3: การตั้งค่าซอฟต์แวร์: Python
- ขั้นตอนที่ 4: ปัญหาการดีบักที่น่าจะเป็นไปได้
- ขั้นตอนที่ 5: การสาธิตอุปกรณ์ที่เสร็จสมบูรณ์
วีดีโอ: ระบบรักษาความปลอดภัยแบบโฮมเมดโดยใช้ Sensor Fusion: 5 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:02
แนวคิดเบื้องหลังโครงการนี้คือการสร้างเซ็นเซอร์ความปลอดภัยราคาถูกและใช้งานง่าย ซึ่งสามารถใช้เพื่อเตือนคุณเมื่อมีคนข้าม เป้าหมายเดิมคือสร้างบางสิ่งที่สามารถแจ้งเตือนฉันเมื่อมีคนเดินขึ้นบันได แต่ฉันก็ใช้เป็นเซ็นเซอร์ความปลอดภัยสำหรับประตูหน้าด้วย ซอฟต์แวร์ที่ให้มาในคำแนะนำนี้เข้ากันได้กับ macOS ต้องมีการเปลี่ยนแปลงเล็กน้อยจึงจะใช้งานได้กับ Windows สำหรับซอร์สโค้ดแบบเต็มสำหรับสคริปต์เหล่านี้ โปรดดูที่ repo GitHub นี้
เสบียง:
- Arduino นาโน*
- อัลตราโซนิก HC-SR04 เซนเซอร์
- โมดูล Bluetooth HC-05
- OMRON สวิตช์แทคไทล์
- ตัวต้านทาน 10k
- ชุดสายไฟเขียงหั่นขนม
- เขียงหั่นขนม
- พาวเวอร์แบงค์
*สามารถใช้ uno หรือ mega แทน nano ได้
ขั้นตอนที่ 1: ตั้งค่าวงจร
ทำตามแผนผังวงจรดังที่แสดงด้านบน เมื่อคุณอัปโหลดภาพสเก็ตช์ Arduino ไปยังนาโน อย่าลืมถอดสายไฟออกจากพิน RX และ TX บนนาโน พบว่าการอัปโหลดไปยัง Arduino อาจทำให้เกิดข้อผิดพลาดได้หากหมุดเหล่านี้เชื่อมต่อกับโมดูลบลูทูธ อัปโหลดภาพร่างก่อนแล้วจึงเชื่อมต่อหมุดเหล่านั้นกับโมดูลบลูทูธ
องค์ประกอบหลัก
- Arduino Nano - ไมโครคอนโทรลเลอร์
- HC-SR04 - อัลตราโซนิกเซนเซอร์
- โมดูล HC-05 - โมดูล Bluetooth
- สวิตช์ OMRON - ปุ่มที่ใช้เปิด/ปิดเซ็นเซอร์
ขั้นตอนที่ 2: ตั้งค่าซอฟต์แวร์: Arduino
- ดาวน์โหลดซอฟต์แวร์ Serial ไปยัง Arduino Library ของคุณ
- ตรวจสอบให้แน่ใจว่าได้เลือกพอร์ตและบอร์ดที่ตรงกับ Arduino. ของคุณ
- ดาวน์โหลดไฟล์ข้อมูลที่ระบุและอัปโหลดภาพร่างเมื่อคุณแน่ใจว่าพิน RX/TX บน Arduino ถูกตัดการเชื่อมต่อจากโมดูลบลูทูธ
ขั้นตอนที่ 3: การตั้งค่าซอฟต์แวร์: Python
เพื่อให้แจ้งเตือนคุณบนแล็ปท็อปได้สำเร็จ คุณจะต้องเรียกใช้สคริปต์หลาม สำหรับความช่วยเหลือในการดาวน์โหลด python และไลบรารีที่จำเป็น โปรดดูคำแนะนำที่เป็นประโยชน์นี้โดย TalalKhalil
สคริปต์ readValuesV2.py ที่ให้มาจะอ่านค่าที่ส่งโดยโมดูลบลูทูธ ตรวจสอบว่ามีคนข้ามเซ็นเซอร์และสร้างการแจ้งเตือนบนแล็ปท็อปของคุณหรือไม่ นอกจากนี้ยังสร้างและจัดเก็บโฟลเดอร์ภายในไดเร็กทอรีนั้นด้วยการวัดทั้งหมดที่อ่านตั้งแต่สคริปต์เริ่มต้นด้วยการประทับเวลา
ทำ:
- ดาวน์โหลด Python และการพึ่งพาทั้งหมด (ฉันใช้การติดตั้ง pip)
- ตรวจสอบให้แน่ใจว่าได้เปิดบลูทูธบนแล็ปท็อปของคุณและเชื่อมต่อกับอุปกรณ์ที่ชื่อ HC-06 คุณควรพบรายการดังกล่าวในรายการอุปกรณ์อื่นๆ ในส่วนบลูทูธของการตั้งค่าระบบของคุณ รหัสผ่านสำหรับโมดูลคือ '1234'
- ตัวแปรชื่อ distance_wall คือตัวแปรที่กำหนดเวลาที่เซ็นเซอร์ดับ ดังนั้น ตรวจสอบให้แน่ใจว่าได้เปลี่ยนค่านี้ซึ่งแสดงเป็น cms ตามสภาพแวดล้อมของคุณ ทั้งนี้ขึ้นอยู่กับตำแหน่งของเซ็นเซอร์
- เชื่อมต่อพิน RX/TX บนโมดูลบลูทูธและเรียกใช้สคริปต์ readValuesV2 มันจะขอหมายเลขบันทึกจากคุณเพื่อให้สามารถตั้งชื่อไฟล์ที่สร้างขึ้นได้อย่างถูกต้อง
มีแนวโน้มว่าคุณอาจต้องทำการดีบักเป็นจำนวนมาก ดังนั้นโปรดอ้างอิงส่วนสุดท้ายในคำแนะนำนี้สำหรับความช่วยเหลือเพิ่มเติม
ขั้นตอนที่ 4: ปัญหาการดีบักที่น่าจะเป็นไปได้
Arduino
1) avrdude: stk500_getsync(): not in sync: resp=0x0: สิ่งนี้มักจะเกิดขึ้นเมื่อพยายามอัปโหลดภาพร่างไปยัง Arduino
- ตรวจสอบให้แน่ใจว่าได้เลือกพอร์ต COM และบอร์ดที่ถูกต้อง
- หากคุณกำลังใช้ 'ATmega328P' ให้ลองใช้ 'ATmega328P (Old Bootloader)'
- ตรวจสอบให้แน่ใจว่าได้ถอดพิน RX/TX บน Arduino แล้ว
2) ข้อผิดพลาดในการนำเข้าไม่ว่าง
ตรวจสอบให้แน่ใจว่าได้เลือกพอร์ต COM ที่ถูกต้อง เนื่องจากคุณกำลังพยายามอัปโหลดภาพสเก็ตช์ไปยัง Arduino ตรวจสอบให้แน่ใจว่าสคริปต์หลามไม่ทำงาน
Python
1) [Errno 16] ทรัพยากรไม่ว่าง: '/dev/tty. HC-06-DevB': สิ่งนี้จะเกิดขึ้นเมื่อคุณไม่ได้เชื่อมต่อแล็ปท็อปกับโมดูลบลูทูธ
ในการแก้ปัญหานี้ คุณต้องแน่ใจว่าคุณได้เชื่อมต่อโมดูล HC กับแล็ปท็อปของคุณอย่างถูกต้อง คุณต้องตรวจสอบให้แน่ใจว่าโมดูลนี้ยังคงเชื่อมต่ออยู่ โมดูลนี้จะถูกตัดการเชื่อมต่อหลังจากที่คุณเรียกใช้สคริปต์เสร็จแล้ว
2) ValueError: ไม่ได้เชื่อมต่อโมดูลบลูทูธ
นี่เป็นข้อผิดพลาดที่เกิดขึ้นเองหากการเชื่อมต่อพอร์ตอนุกรมกับโมดูลบลูทูธไม่ได้เชื่อมต่ออย่างถูกต้อง
3) ข้อผิดพลาดในการขึ้นต่อกันของแพ็คเกจ Python
ฉันใช้ pip install เพื่อดาวน์โหลดแพ็คเกจที่จำเป็นสำหรับ python อ้างถึงสแต็กโอเวอร์โฟลว์สำหรับข้อผิดพลาดใด ๆ ที่ปรากฏขึ้นที่ส่วนท้ายนั้น
4) ข้อผิดพลาดเนื่องจาก OS
ฉันคาดว่าข้อผิดพลาดบางอย่างจะปรากฏขึ้นหากระบบปฏิบัติการที่ใช้คือ Windows บางพื้นที่ที่อาจเป็นปัญหาคือการบันทึกข้อมูลระบบบันทึกข้อมูลและการแจ้งเตือนบนแล็ปท็อปของคุณ
5) serial.serialutil. SerialException: อุปกรณ์รายงานความพร้อมในการอ่าน แต่ไม่มีข้อมูลส่งคืน
บางครั้งสิ่งนี้จะเกิดขึ้นหากปิดแหล่งจ่ายไฟ สิ่งนี้เกิดขึ้นกับฉันเมื่อฉันปิดอุปกรณ์โดยใช้สวิตช์
ฮาร์ดแวร์
1) ตรวจสอบให้แน่ใจว่าสวิตช์อยู่ในจังหวะที่เหมาะสมระหว่างตัวแบ่งบรรทัดบนเขียงหั่นขนมเพื่อไม่ให้การเชื่อมต่อปะปนกัน
ขั้นตอนที่ 5: การสาธิตอุปกรณ์ที่เสร็จสมบูรณ์
โปรดตรวจสอบวิดีโอเพื่อดูการทำงานของอุปกรณ์โดยใช้ลิงก์ที่ฝังหรือลิงก์ YouTube นี้: https://www.youtube.com/embed/Ab1wKr2ORbM โดยรวมแล้ว นี่คือสิ่งที่ฉันใช้เป็นประจำในขณะนี้ และพบว่ามันไม่ได้ทำให้แหล่งจ่ายไฟหมดเร็วเกินไป หรือทำให้แล็ปท็อปเครื่องเก่าของฉันต้องเครียดในแง่ของพลังในการประมวลผล หากคุณมีปัญหาใด ๆ อย่าลังเลที่จะสร้างโพสต์ปัญหาใน repo GitHub ที่เกี่ยวข้องสำหรับโครงการนี้!
แนะนำ:
Arduino Solar Powered Temperature and Humidity Sensor As 433mhz Oregon Sensor: 6 ขั้นตอน
Arduino Solar Powered Temperature and Humidity Sensor As 433mhz Oregon Sensor: นี่คือการสร้างเซ็นเซอร์อุณหภูมิและความชื้นที่ใช้พลังงานแสงอาทิตย์ เซ็นเซอร์จำลองเซ็นเซอร์ Oregon 433mhz และมองเห็นได้ในเกตเวย์ Telldus Net สิ่งที่คุณต้องการ: 1x "10-LED พลังงานแสงอาทิตย์ Motion Sensor" จากอีเบย์ ตรวจสอบให้แน่ใจว่ามันบอกว่าแป้ง 3.7v
RaspberryPi 3 Magnetic Sensor พร้อม Mini Reed Sensor: 6 ขั้นตอน
เซ็นเซอร์แม่เหล็ก RaspberryPi 3 พร้อมเซ็นเซอร์รีดขนาดเล็ก: ในคำแนะนำนี้ เราจะสร้างเซ็นเซอร์แม่เหล็ก IoT โดยใช้ RaspberryPi 3 เซ็นเซอร์ประกอบด้วยไฟ LED และออด ซึ่งทั้งคู่จะเปิดขึ้นเมื่อเซ็นเซอร์ขนาดเล็กตรวจจับแม่เหล็ก
Arduino เชื่อมต่อกับ Ultrasonic Sensor และ Contactless Temperature Sensor: 8 ขั้นตอน
การเชื่อมต่อกับ Arduino กับ Ultrasonic Sensor และ Contactless Temperature Sensor: ปัจจุบัน ผู้ผลิต นักพัฒนาต่างเลือกใช้ Arduino สำหรับการพัฒนาอย่างรวดเร็วของการสร้างต้นแบบของโครงการ Arduino เป็นแพลตฟอร์มอิเล็กทรอนิกส์แบบโอเพ่นซอร์สที่ใช้ฮาร์ดแวร์และซอฟต์แวร์ที่ใช้งานง่าย Arduino มีชุมชนผู้ใช้ที่ดีมาก ในโครงการนี้
Touch Sensor & Sound Sensor ควบคุมไฟ AC/DC: 5 ขั้นตอน
Touch Sensor & Sound Sensor ควบคุมไฟ AC/DC: นี่เป็นโครงการแรกของฉันและทำงานโดยใช้เซ็นเซอร์พื้นฐานสองตัว ตัวหนึ่งคือเซ็นเซอร์สัมผัส และตัวที่สองคือ เซ็นเซอร์เสียง เมื่อคุณกดทัชแพดบนเซ็นเซอร์สัมผัส ไฟ AC จะสลับ เปิด ถ้าคุณปล่อยมัน ไฟจะปิด และเหมือนเดิม
ใครอยู่ที่ประตูของฉัน? โครงการ PIR Motion Sensor/Range Sensor: 5 ขั้นตอน
ใครอยู่ที่ประตูของฉัน? โครงการ PIR Motion Sensor/Range Sensor: โครงการของเรามีวัตถุประสงค์เพื่อตรวจจับการเคลื่อนไหวผ่าน PIR และเซ็นเซอร์วัดระยะทาง รหัส Arduino จะส่งสัญญาณภาพและเสียงเพื่อบอกผู้ใช้ว่ามีคนอยู่ใกล้ รหัส MATLAB จะส่งสัญญาณอีเมลแจ้งเตือนผู้ใช้ว่ามีคนอยู่ใกล้ อุปกรณ์นี้