สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: ขั้นตอนที่ 1: การตั้งค่าเซนเซอร์
- ขั้นตอนที่ 2: ขั้นตอนที่ 2: การเดินสายไฟ
- ขั้นตอนที่ 3: รับส่วนขยาย
- ขั้นตอนที่ 4: การเข้ารหัส- เมื่อเริ่ม
- ขั้นตอนที่ 5: การเข้ารหัส - Forever Loop
- ขั้นตอนที่ 6: การทดสอบ
วีดีโอ: Micro:bit MU Vision Sensor - การติดตามวัตถุ: 6 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
นี่เป็นแนวทางที่สี่ของฉันเกี่ยวกับวิชันเซนเซอร์ MU สำหรับ micro:bit ฉันจะอธิบายวิธีการติดตามวัตถุด้วย micro:bit และเขียนพิกัดไปยังหน้าจอ OLED ฉันมีคำแนะนำอื่นๆ เกี่ยวกับวิธีเชื่อมต่อ micro:bit กับเซ็นเซอร์วิชัน MU และ OLED และวิธีรับส่วนขยายที่เหมาะสมเพื่อตั้งโปรแกรม ฉันจะยังคงอธิบายสิ่งนั้นในคู่มือนี้ แต่ให้เร็วกว่านี้เล็กน้อย
เสบียง
1 x BBC micro:บิต
1 x Morpx Mu Vision เซนเซอร์ 3
1 x Micro:bit breakout board - ต้องมีการเข้าถึงพิน 19&20 ซึ่งไม่มีบอร์ด breakout ทั้งหมด ฉันใช้ elecfreaks motorbit เพราะฉันชอบบอร์ดนั้น
8 x สายจัมเปอร์ (หญิง-หญิง)
1 x หน้าจอ OLED
ขั้นตอนที่ 1: ขั้นตอนที่ 1: การตั้งค่าเซนเซอร์
ก่อนที่เราจะเริ่มต้นการเชื่อมต่อสิ่งใด ๆ เราต้องการตั้งค่าเซ็นเซอร์อย่างถูกต้อง
เซ็นเซอร์ Mu Vision มีสวิตช์ 4 ตัว สองคนทางซ้ายกำหนดโหมดเอาท์พุต และสองคนทางขวากำหนดที่อยู่ เนื่องจากเราต้องการให้ที่อยู่เป็น 00 จึงควรปิดสวิตช์ทั้งสองทางด้านขวา โหมดการส่งออกที่แตกต่างกันคือ:
00 UART
01 I2C
10 การถ่ายโอนข้อมูล Wifi
11 การส่งภาพ Wifi
เราต้องการใช้การเชื่อมต่อแบบอนุกรม เนื่องจากหน้าจอ OLED ต้องการหมุด I2C แบบ micro:bits เท่านั้น ดังนั้นเราจึงจะทำงานในโหมด UART นั่นหมายความว่าสวิตช์ทั้งสองควรอยู่ที่ 00 ดังนั้นควรปิดทั้งคู่
ขั้นตอนที่ 2: ขั้นตอนที่ 2: การเดินสายไฟ
การเดินสายไฟค่อนข้างง่าย เพียงใช้สายจัมเปอร์สี่เส้นเพื่อเชื่อมต่อเซ็นเซอร์ Mu กับบอร์ดฝ่าวงล้อมของเรา ดูภาพในขั้นตอนที่ 1 เพื่อขอความช่วยเหลือ
เซ็นเซอร์ Mu -> กระดานฝ่าวงล้อม
RX-> พิน 13
TX -> พิน14
G -> กราวด์
วี -> 3.3-5V
จากนั้นเราใช้สายจัมเปอร์สี่เส้นเพื่อเชื่อมต่อ OLED กับบอร์ดฝ่าวงล้อมของเรา
OLED -> กระดานฝ่าวงล้อม
วิน -> 3.3 v
GND -> GND
SCL -> Pin19
SCD -> Pin20
ขั้นตอนที่ 3: รับส่วนขยาย
ขั้นแรกเราไปที่เครื่องมือแก้ไข Makecode และเริ่มโครงการใหม่ จากนั้นไปที่ "ขั้นสูง" และเลือก "ส่วนขยาย" โปรดทราบว่าเนื่องจากฉันเป็นคนเดนมาร์ก ปุ่มเหล่านี้จึงมีชื่อต่างกันเล็กน้อยในภาพ ในส่วนขยาย เราค้นหา "Muvision" และเลือกผลลัพธ์เดียวที่เราได้รับ จากนั้นเรากลับไปที่ส่วนขยายและค้นหา oled12864 และเลือกส่วนขยาย OLED12864_I2C
ขั้นตอนที่ 4: การเข้ารหัส- เมื่อเริ่ม
บล็อกแรกในโปรแกรมนี้จะบอก micro:bit ว่าควรใช้พินใดในการเชื่อมต่อแบบอนุกรม หากคุณใช้หมุดเดียวกันกับ I เมื่อคุณเชื่อมต่อเซ็นเซอร์วิชันเซนเซอร์ MU คุณต้องตั้งค่า TX เป็นพิน 13 และ RX เป็นพิน 14 Baudrate ซึ่งเป็นความเร็วที่ไมโคร:บิตและเซ็นเซอร์วิชัน MU จะพูด ควรตั้งไว้ที่ 9600
บล็อกถัดไปเริ่มต้นการเชื่อมต่อ I2C ระหว่างหน้าจอ OLED และ Micro:bit ที่อยู่ขึ้นอยู่กับฮาร์ดแวร์ OLED ส่วนใหญ่มักจะเป็น 60 แต่สำหรับหน้าจอ OLED บางรุ่นอาจเป็น 61 หรือตัวเลขอื่นๆ
ฉันรวมบล็อกตัวเลขที่แสดงไว้สามช่องเพื่อช่วยในการแก้ปัญหา ตัวอย่างเช่น หาก micro:bit นับถึง 2 เท่านั้นเมื่อเริ่มทำงาน ฉันรู้ว่ามีปัญหาในการเปิดใช้อัลกอริธึมการ์ดรูปร่าง คุณสามารถรวมบล็อกหมายเลขการแสดงที่สี่ระหว่างบล็อกแรกและบล็อกที่สองในโปรแกรมปัจจุบัน
บล็อกถัดไป บล็อกสีส้มชุดแรก เริ่มต้นการเชื่อมต่อแบบอนุกรมระหว่างวิชันเซนเซอร์ MU และ micro:bit
บล็อกถัดไปคือบล็อกหมายเลขแสดงสำหรับการแก้ไขปัญหา
บล็อกถัดไป ซึ่งควรเป็นบล็อกสีส้มที่สอง บอกให้เซ็นเซอร์ MU เปิดใช้งานอัลกอริธึม Shape Card
บล็อกสุดท้ายเป็นบล็อกแสดงหมายเลขสำหรับการแก้ไขปัญหา
ขั้นตอนที่ 5: การเข้ารหัส - Forever Loop
เราเริ่มโปรแกรมด้วยบล็อก if-else พร้อมบล็อกการ์ดรูปร่างตรวจสอบ
การ์ดตรวจจับรูปร่างให้ 0 หรือ 1 หากตรวจพบการ์ดรูปร่าง เราจะได้ 1 (จริง) และ 0 (เท็จ) หากตรวจไม่พบการ์ดตัวเลข เราต้องรวมไว้ด้วย เพราะด้วยอัลกอริธึมการ์ดรูปร่างของเรา จะทำงานบนการ์ดรูปร่างที่ตรวจพบล่าสุดเสมอ ดังนั้นหากเราไม่เคยตรวจพบเชปการ์ด เราก็ไม่สามารถรันอัลกอริธึมได้จริงๆ
บล็อกแรกในข้อความความจริงบอกให้หน้าจอ OLED เขียน W (สำหรับความกว้าง) ที่มุมซ้ายบนของหน้าจอ ตำแหน่ง (0, 0)
บล็อกถัดไปบอกให้หน้าจอ OLED เขียนตัวเลขที่ได้รับจากอัลกอริธึมการ์ดรูปร่างทางด้านขวาของตำแหน่ง W (2, 0) ตัวเลขนี้บอกเราว่าการ์ดรูปทรงกว้างแค่ไหน
โปรแกรมดำเนินต่อไปเช่นนี้
บล็อกแรกที่บอกให้หน้าจอ OLED เขียนจดหมาย H สำหรับความสูงที่ (5, 0) X สำหรับค่าตำแหน่ง X ที่ (0, 2) Y สำหรับค่าตำแหน่ง Y ที่ (5, 2)
จากนั้นบล็อกที่สองที่บอกหน้าจอ OLED ให้เขียนตัวเลขที่ได้รับจากอัลกอริธึมการ์ดรูปร่าง ความสูงของการ์ดที่ (7, 0) ไพ่ตำแหน่ง X ที่ (2, 2) ไพ่ตำแหน่ง Y ที่ (7, 2).
ดังนั้นเมื่อเรารันโปรแกรมและเซ็นเซอร์ MU Vision ตรวจพบรูปร่างการ์ด มันจะให้ความกว้าง ความสูง และตำแหน่งของการ์ดแก่เรา
โปรแกรมเต็มสามารถพบได้ที่นี่
ขั้นตอนที่ 6: การทดสอบ
อาจมองเห็นได้ยากในวิดีโอ แต่เมื่อฉันย้ายการ์ดจากด้านหนึ่งไปอีกด้านหนึ่ง ค่า X จะเปลี่ยนไป การเลื่อนการ์ดขึ้นและลงจะเปลี่ยนค่า Y การย้ายการ์ดเข้าไปใกล้และออกจากวิชันเซนเซอร์ MU จะเปลี่ยนค่าความสูงและความกว้าง
มันค่อนข้างง่ายที่จะใช้โปรแกรมนี้เพื่อตรวจจับสิ่งอื่น เพียงแค่เปลี่ยน "การ์ดรูปร่าง" เป็นสิ่งที่คุณต้องการตรวจจับ ควรทำงานกับบล็อคสี ลูกบอล ร่างกาย การ์ดตัวเลข และการ์ดจราจร
แนะนำ:
วิธีเรียกใช้เซอร์โวมอเตอร์โดยใช้ Moto:bit ด้วย Micro:bit: 7 ขั้นตอน (พร้อมรูปภาพ)
วิธีเรียกใช้เซอร์โวมอเตอร์โดยใช้ Moto:bit ด้วย Micro:bit: วิธีหนึ่งในการขยายฟังก์ชันการทำงานของ micro:bit คือการใช้บอร์ดชื่อ moto:bit โดย SparkFun Electronics (ประมาณ 15-20 เหรียญสหรัฐ) มันดูซับซ้อนและมีคุณสมบัติมากมาย แต่ก็ไม่ยากที่จะเรียกใช้เซอร์โวมอเตอร์จากมัน Moto:bit ช่วยให้คุณ
Micro:bit MU Vision Sensor สำหรับผู้เริ่มต้น - I2C และการจดจำการ์ดรูปร่าง: 8 ขั้นตอน
Micro:bit MU Vision Sensor สำหรับผู้เริ่มต้น - I2C และ Shape Card Recognition: ฉันได้ใช้เซ็นเซอร์วิชันซิสเต็ม MU สำหรับ Micro:bit แล้ว ดูเหมือนว่าจะเป็นเครื่องมือที่ยอดเยี่ยมที่จะช่วยให้ฉันสร้างโครงการตามวิสัยทัศน์ที่แตกต่างกันมากมาย น่าเศร้าที่ดูเหมือนจะไม่มีคำแนะนำมากมายขนาดนั้น และในขณะที่เอกสารประกอบนั้น
Micro:bit MU Vision Sensor - ติดตั้งบนสมาร์ทคาร์: 5 ขั้นตอน
Micro:bit MU Vision Sensor - ติดตั้งบน Smart Car: นี่คือคำแนะนำเกี่ยวกับวิธีการติดตั้งเซ็นเซอร์วิชัน MU บน Smart Car ที่เราสร้างขึ้นในคำแนะนำนี้ ในขณะที่คู่มือนี้แสดงวิธีติดตั้งเซ็นเซอร์วิชันเซนเซอร์ MU คุณยังสามารถติดตามเพื่อติดตั้งเซ็นเซอร์ประเภทอื่นๆ ได้ทั้งหมด ฉันมีที่ยึดกล้อง 2 แกน
Micro:bit MU Vision Sensor - การเชื่อมต่อแบบอนุกรมและหน้าจอ OLED: 10 ขั้นตอน
Micro:bit MU Vision Sensor - การเชื่อมต่อแบบอนุกรมและหน้าจอ OLED: นี่เป็นแนวทางที่สามของฉันเกี่ยวกับเซ็นเซอร์วิชัน MU จนถึงตอนนี้ เราได้ลองใช้ MU เพื่อจดจำการ์ดที่มีตัวเลขและรูปร่าง แต่เพื่อสำรวจเซ็นเซอร์ MU ของเราด้วยโปรเจ็กต์ที่ซับซ้อนมากขึ้น เราต้องการผลลัพธ์ที่ดีขึ้น เราไม่สามารถรับข้อมูลได้มากขนาดนั้น
การเขียนโปรแกรม Micro:Bit Robot & Joystick:Bit Controller ด้วย MicroPython: 11 ขั้นตอน
การเขียนโปรแกรม Micro:Bit Robot & Joystick:Bit Controller ด้วย MicroPython: สำหรับ Robocamp 2019 ค่ายหุ่นยนต์ภาคฤดูร้อนของเรา คนหนุ่มสาวอายุ 10-13 ปีกำลังบัดกรี ตั้งโปรแกรม และสร้าง 'หุ่นยนต์น้ำหนักเกิน' ของ BBC micro:bit ตลอดจนการเขียนโปรแกรม micro:bit เพื่อใช้เป็นรีโมตคอนโทรล หากคุณอยู่ที่ Robocamp ให้เล่นสกี