สารบัญ:

การตรวจจับระยะทางด้วย Micro:bit และ Sonar (โมดูล HC-SR04): 3 ขั้นตอน (พร้อมรูปภาพ)
การตรวจจับระยะทางด้วย Micro:bit และ Sonar (โมดูล HC-SR04): 3 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: การตรวจจับระยะทางด้วย Micro:bit และ Sonar (โมดูล HC-SR04): 3 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: การตรวจจับระยะทางด้วย Micro:bit และ Sonar (โมดูล HC-SR04): 3 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: การใช้งานเซนเซอร์วัดระยะห่าง Ultrasonic Sensor ร่วมกับบอร์ด micro:bit 2024, พฤศจิกายน
Anonim
การตรวจจับระยะทางด้วย Micro:bit และ Sonar (โมดูล HC-SR04)
การตรวจจับระยะทางด้วย Micro:bit และ Sonar (โมดูล HC-SR04)

สัปดาห์นี้ฉันได้ใช้เวลาเล่นกับ BBC micro:bit ที่ยอดเยี่ยมและเซ็นเซอร์โซนิค ฉันได้ลองใช้โมดูลต่างๆ มาสองสามโมดูลแล้ว (รวมแล้วมากกว่า 50 รายการ) และคิดว่ามันน่าจะดี ดังนั้นโปรดแชร์ผลลัพธ์บางส่วนของฉัน

โมดูลที่ดีที่สุดที่ฉันพบคือโมดูล Sparkfun HC-SR04 ฉันเลือกของฉันจาก Kitronik ในสหราชอาณาจักรและในสหรัฐอเมริกาแน่นอนว่ามีให้จากสถานที่เช่น Adafruit (ล้อเล่น Sparkfun นี่คือลิงค์ของคุณ). เหตุผลข้อนี้ดีที่สุด เพราะดูเหมือนว่าจะใช้งานได้ประมาณ 95% ของเวลาบน 3V ที่จัดหาโดย BBC micro:bit ซึ่งอาจล้มลงได้เมื่อคุณมีเซ็นเซอร์และเอาต์พุตอื่นๆ ที่ทำงานอยู่ในการตั้งค่าของคุณ อย่างไรก็ตามเมื่อใช้จอแสดงผล LED ออนบอร์ดบน micro:bit คุณอาจจะไม่เป็นไร

ในขณะที่ฉันแค่กำลังซ่อมแซม แทนที่จะฝังโซนิคในโครงการ ฉันใช้กระดานฝ่าวงล้อมและเขียงหั่นขนมที่รวมอยู่ในชุดเริ่มต้น micro:bit ที่ฉันหยิบขึ้นมาจาก Kitronik ในสหราชอาณาจักร

ขั้นตอนที่ 1: การตั้งค่าฮาร์ดแวร์

การตั้งค่าฮาร์ดแวร์
การตั้งค่าฮาร์ดแวร์
การตั้งค่าฮาร์ดแวร์
การตั้งค่าฮาร์ดแวร์

การตั้งค่าเซ็นเซอร์อัลตราโซนิกนั้นค่อนข้างง่าย โดยเฉพาะอย่างยิ่งกับเซ็นเซอร์ Sparkfun เนื่องจากทำงานบน 3V ได้ มันมีสี่พินเท่านั้น จากซ้ายไปขวา ได้แก่ VCC, Trig, Echo และ GND VCC และ GND มีไว้สำหรับจ่ายไฟ และ Trig, Echo และ GND ใช้สำหรับสัญญาณของคุณ ฉันรวม GND ไว้ในชุดสัญญาณเนื่องจากจำเป็นสำหรับเส้นฐาน ข้อผิดพลาดทั่วไปอย่างหนึ่งของฉันเกี่ยวกับเซ็นเซอร์และสิ่งต่างๆ เช่น ไฟ LED อัจฉริยะ ไม่ได้เชื่อมต่อส่วนประกอบทั้งหมดเข้ากับกราวด์ทั่วไป ฉันได้รวมรูปภาพและแผนผังของการตั้งค่าของฉัน

พินที่ง่ายที่สุดที่จะใช้บน micro:bit คือ 0, 1 และ 2 ดังนั้นฉันจึงใช้ 0 สำหรับ Trig และ 1 สำหรับ Echo

หากคุณพบว่าคุณไม่ได้รับการอ่านค่าจาก HC-SR04 ของคุณ อาจเป็นเพราะว่าอุปกรณ์ได้รับพลังงานไม่เพียงพอ หากเป็นกรณีนี้ คุณสามารถเพิ่มกำลังให้กับโมดูลดังที่แสดงในภาพที่สอง การใช้แบตเตอรี่ AA 3 ก้อนให้ 4.5V ซึ่งน่าจะเพียงพอ เบ็ดขึ้นตามที่แสดงไว้ที่นี่ด้วยพื้นดินทั่วไปนั้น อย่าเสียบ 4.5V เข้ากับ Micro:bit ของคุณ เพราะมันอาจจะฆ่ามันได้!

ขั้นตอนที่ 2: การตั้งค่าซอฟต์แวร์

การตั้งค่าซอฟต์แวร์
การตั้งค่าซอฟต์แวร์
การตั้งค่าซอฟต์แวร์
การตั้งค่าซอฟต์แวร์
การตั้งค่าซอฟต์แวร์
การตั้งค่าซอฟต์แวร์

micro:bit ถูกตั้งโปรแกรมไว้ในเบราว์เซอร์ คุณสามารถไปที่ https://makecode.microbit.org/ เพื่อเริ่มตั้งโปรแกรมโซนิคเซนเซอร์ของคุณ ขั้นแรก คุณจะต้องเพิ่มแพ็คเกจใหม่ให้กับชุดมาตรฐาน ฉันเคยใช้แพ็คเกจที่เรียกว่าโซนาร์

เพิ่มแพ็คเกจ Sonar ลงในบล็อกของคุณและตั้งค่ารหัสตามที่แสดงในภาพที่สี่

เราใช้คำสั่ง bargraph เพื่อแสดงข้อมูลเซ็นเซอร์ (ตัวแปรที่เรียกว่า item) ข้อมูลเพิ่มเติมเกี่ยวกับกราฟแท่งสามารถดูได้ที่นี่: https://makecode.microbit.org/reference/led/plot-… แม้ว่าผมต้องดูโค้ดบน GitHub อย่างน่าอัศจรรย์ เพื่อค้นหาว่าการปล่อยให้ค่าต่ำสุดเป็น 0 อนุญาตให้ทำได้ ปรับอัตโนมัติ. คุณสามารถเปลี่ยนค่านี้เพื่อกำหนดจุดสูงสุดที่คุณต้องการวัดได้ มันจะให้ข้อมูลเป็นจำนวนเต็ม (จำนวนเต็ม) และในหน่วยที่คุณเลือก ฉันเชื่อว่าโซนาร์บล็อคกำลังคำนวณการแปลงสำหรับเรา ฉันพบว่าเมื่อเปลี่ยนไปพิมพ์ข้อมูลเซ็นเซอร์ไปที่หน้าจอ (ดังแสดงในภาพที่ห้า) ฉันสัมผัสได้ถึงระยะทางที่ต้องการวัดและเขียนโค้ด หากคุณกำลังติดตาม คุณจะสังเกตเห็นว่ามีค่าเป็นศูนย์จำนวนมาก ซึ่งทำให้กราฟแท่งหรือผลลัพธ์อื่นๆ กะพริบ ฉันคิดว่ามันง่ายที่สุดที่จะกรองสิ่งเหล่านี้ด้วยคำสั่ง if (พบได้ในตรรกะ) นี่เป็นวิธีที่ง่ายที่สุดที่ฉันพบว่าทำงานโดยใช้ไฟ LED เช่น NeoPixels ตัวอย่างนี้แสดงในภาพที่หกที่นี่

ขั้นตอนที่ 3: เพิ่มไฟ LED ค้นหาโครงการ

เพิ่มไฟ LED ค้นหาโครงการ!
เพิ่มไฟ LED ค้นหาโครงการ!
เพิ่มไฟ LED ค้นหาโครงการ!
เพิ่มไฟ LED ค้นหาโครงการ!
เพิ่มไฟ LED ค้นหาโครงการ!
เพิ่มไฟ LED ค้นหาโครงการ!
เพิ่มไฟ LED ค้นหาโครงการ!
เพิ่มไฟ LED ค้นหาโครงการ!

เป็นเรื่องดีที่มีเอาต์พุต LED บนบอร์ดโดยตรง แต่เพื่อให้เซ็นเซอร์รู้สึกมีประโยชน์มากขึ้น ฉันจึงใช้ไฟ LED ภายนอกสองสามรุ่น รูปภาพและรหัสบางส่วนอยู่ด้านล่าง สำหรับสิ่งเหล่านี้ ฉันต้องการพินเพิ่มเติม ดังนั้นบอร์ดฝ่าวงล้อมตัวเชื่อมต่อ Kitronik Edge จึงมีประโยชน์มาก!

การตั้งค่ากระดานเหมือนภาพแรก ฉันตัดสินใจสร้างระบบสัญญาณไฟจราจรสำหรับเวลาที่สิ่งต่างๆ เข้ามาใกล้เกินไป ไฟ LED สีเขียวนั้นดี สีเหลืองอำพันสำหรับการได้ใกล้ชิดกับเพื่อนสนิท และตอนนี้สีแดงก็อยู่ใกล้เกินไป แล้วคุณล่ะถอยออกไป ฉันสงสัยว่านี่อาจเป็นประโยชน์สำหรับการวิ่งบนจักรยานอย่างใกล้ชิดหรือไม่ การเชื่อมโยงกับจอแสดงผลที่ด้านหน้าของจักรยานยนต์จะให้ผลตอบรับที่ดีกับผู้ขับขี่ว่าบัตรผ่านหรือไม่ ระยะทางคงเปลี่ยนไปในตัวอย่างในชีวิตจริง คนปั่นจักรยาน 12 นิ้วผ่าน ไม่เป็นไร!!

แนะนำ: