Cuprins:

Senzor de viziune MU Micro: bit - Urmărirea obiectelor: 7 pași
Senzor de viziune MU Micro: bit - Urmărirea obiectelor: 7 pași

Video: Senzor de viziune MU Micro: bit - Urmărirea obiectelor: 7 pași

Video: Senzor de viziune MU Micro: bit - Urmărirea obiectelor: 7 pași
Video: Exploring America's Most Untouched Abandoned Prison! 2024, Noiembrie
Anonim
Senzor de viziune MU Micro: bit - Urmărirea obiectelor
Senzor de viziune MU Micro: bit - Urmărirea obiectelor

Deci, în acest instructable vom începe să programăm Smart Car pe care îl construim în acest instructable și că am instalat un senzor de viziune MU în acest instructable.

Vom programa micro: bit cu câteva urmăriri simple de obiecte, astfel încât senzorul MU să poată urmări cardurile de trafic.

Provizii

Materiale

1 x Micro: bit

1 x Motor: bit

1 x senzor de viziune MU

Suport cameră 1 x 2 axe

4 x șuruburi M3 x 30

6 x șuruburi M3 x 6

6 x distanțier M3

10 x piulițe M3

1 x roată rotativă

2 x motoare inteligente pentru mașini

2 x motor TT130

2 x roți pentru motorul TT130

1 x baterie de 9 volți + suport baterie

Un pic de sârmă. În două culori diferite, dacă este posibil

Placaj de 4 mm (170 x 125 mm ar trebui să facă)

O bucată mică de bandă dublă

Banda cu velcro (Hook and loop)

Lipici fierbinte

Instrumente:

Șurubelnițe

Lipire

Fier

Cleste de sarma

Lasercutter

Pistol de lipit fierbinte

Burghiu

Burghie de 2,5 și 3 mm

Pasul 1: Configurarea senzorului MU

Configurarea senzorului MU
Configurarea senzorului MU

Înainte de a începe să conectăm ceva, dorim să configurăm senzorul în mod corespunzător.

Senzorul Mu Vision are 4 comutatoare. Cei doi din stânga își decid modul de ieșire, iar cei doi din dreapta își decide adresa.

Deoarece dorim ca adresa să fie 00, ambele comutatoare din dreapta ar trebui să fie dezactivate.

Diferitele moduri de ieșire sunt:

00 UART

01 I2C

10 Transmisie date Wifi

11 Transmisie imagine Wifi

Vrem să lucrăm în modul I2C, deci cele două comutatoare ar trebui să fie pe 01, deci cel mai stâng ar trebui să fie oprit și celălalt să fie pornit.

Pasul 2: Cablarea senzorului MU

Cablarea este destul de ușoară, pur și simplu folosiți patru fire jumper pentru a conecta senzorul Mu la placa dvs. de rupere.

Senzor Mu -> Breakout board

SDA -> pinul 20

SCL -> pinul 19

G -> Teren

V -> 3.3-5V

Pasul 3: Cablarea suportului camerei

Cablarea suportului camerei
Cablarea suportului camerei

Servomotorul care controlează mișcarea orizontală ar trebui să fie conectat la pinul 13 și servo motorul care controlează mișcarea verticală ar trebui să fie conectat la pinul 14.

Pasul 4: Obținerea extensiei

Obținerea extensiei
Obținerea extensiei
Obținerea extensiei
Obținerea extensiei
Obținerea extensiei
Obținerea extensiei

Mai întâi mergem la editorul Makecode și începem un nou proiect. Apoi mergem la „Avansat” și selectăm „Extensii”. Rețineți că, din moment ce sunt danez, aceste butoane au nume ușor diferite în imagini. În extensii căutăm „Muvision” și selectăm singurul rezultat pe care îl obținem.

Pasul 5: inițializarea conexiunii și activarea algoritmului

Inițializarea conexiunii și activarea algoritmului
Inițializarea conexiunii și activarea algoritmului

Când utilizați această extensie, veți primi unele erori „Nu se poate citi proprietatea nedefinită”. Asta doar pentru că lipsesc animația micro: bit. Nu afectează compilarea și rularea programului.

Prima parte portocalie a codului inițializează conexiunea I2C.

A doua parte portocalie a codului permite algoritmii de recunoaștere a cardurilor de trafic.

Afișarea numerelor este folosită pentru rezolvarea problemelor. Dacă bitul micro: nu contează până la trei când rulați programul, verificați dacă firele de pe senzorul de viziune MU sunt conectate corect la pinii din dreapta.

Cele două blocuri roșii stabilesc poziția de pornire pentru montarea camerei.

Pasul 6: Programul

Programul
Programul

Primele două blocuri roșii controlează servo-motoarele care controlează monturile camerei. Primul controlează mișcarea verticală și al doilea controlează mișcarea orizontală.

Primul bloc „IF” exterior verifică dacă senzorul MU poate detecta carduri de trafic. Dacă se poate, atunci trecem la cele două afirmații „IF” din interior.

Prima declarație „IF” verifică amplasarea verticală a cărții detectate în câmpul vizual. Dacă o carte este plasată în centrul câmpului vizual, atunci vom obține valoarea 50 din algoritmul valorii verticale. Acum, cardul să fie exact în mijloc este cam rar. Trebuie să lovim foarte precis, așa că, dacă mergem cu 50 ca singură valoare unde camera ar trebui să stea nemișcată, atunci se va mișca mai mult sau mai puțin tot timpul. Deci, în schimb, numărăm orice dintre 45 și 55 ca la mijloc. Deci, dacă plasarea verticală a cardurilor este sub 45, atunci mutăm camera puțin în jos, schimbând variabila verticală cu +1. În același mod, mișcăm camera un pic în sus dacă plasarea verticală este peste 55, schimbând variabila verticală cu -1. Aș putea părea ciudat că aparatul de fotografiat merge în sus, când ridicăm variabila și în jos când variabila crește, dar așa este așezat motorul.

A doua afirmație „IF” face exact același lucru, dar pentru poziția orizontală. Deci, atunci când cartela de trafic este la extrem de dreapta câmpului vizual, atunci camera se va deplasa la dreapta și când este la extrem de mult la stânga câmpului de viziune, atunci camera se va deplasa la stânga.

Programul îl puteți găsi aici.

Pasul 7: Finalizat

Acum încărcați programul pe Smart Car și testați-l.

Puteți crește cât de rapid reacționează camera la mișcare, mărind modificarea variabilelor la 2 sau 3 în loc de 1. Puteți încerca, de asemenea, să reduceți cât de mare este considerată o cantitate din câmp la mijloc. Încercați să o faceți de la 47 la 53 în schimb.

Recomandat: