Satura rādītājs:

Mikro: bitu MU redzes sensors - objektu izsekošana: 7 soļi
Mikro: bitu MU redzes sensors - objektu izsekošana: 7 soļi

Video: Mikro: bitu MU redzes sensors - objektu izsekošana: 7 soļi

Video: Mikro: bitu MU redzes sensors - objektu izsekošana: 7 soļi
Video: Scala 3. OpenJDK vs Oracle JDK. Марсоход Чжужун и CopterPack. [MJC News #7] #ityoutubersru 2024, Novembris
Anonim
Mikro: bitu MU redzes sensors - objektu izsekošana
Mikro: bitu MU redzes sensors - objektu izsekošana

Tātad šajā pamācībā mēs sāksim programmēt viedo automašīnu, kuru mēs veidojam šajā pamācībā un kurā šajā pamācībā esam uzstādījuši MU redzes sensoru.

Mēs ieprogrammēsim micro: bit ar vienkāršu objektu izsekošanu, lai MU sensors varētu izsekot satiksmes kartēm.

Piegādes

Materiāli

1 x Micro: bits

1 x motors: bits

1 x MU redzes sensors

1 x 2 asu kameras stiprinājums

4 x M3 x 30 skrūves

6 x M3 x 6 skrūves

6 x M3 starplikas

10 x M3 uzgriežņi

1 x ritentiņš

2 x viedie automašīnu motori

2 x TT130 motors

2 x riteņi TT130 motoram

1 x 9 voltu akumulators + bateriju turētājs

Mazliet stieples. Ja iespējams, divās dažādās krāsās

4 mm saplāksnis (170 x 125 mm)

Neliels divpusējas lentes gabals

Velcro lente (āķis un cilpa)

Karstā līme

Rīki:

Skrūvgrieži

Lodēšana

Dzelzs

Stieņu griezējs

Lāzera griezējs

Karstās līmes pistole

Urbis

2,5 un 3 mm urbji

1. darbība. MU sensora iestatīšana

MU sensora iestatīšana
MU sensora iestatīšana

Pirms sākam savienot visu, mēs vēlamies pareizi iestatīt sensoru.

Mu Vision sensoram ir 4 slēdži. Kreisajā pusē esošie divi izlemj tā izvades režīmu, bet divi labie - adresi.

Tā kā mēs vēlamies, lai adrese būtu 00, abiem labajā pusē esošajiem slēdžiem jābūt izslēgtiem.

Dažādi izvades režīmi ir:

00 UART

01 I2C

10 Wifi datu pārsūtīšana

11 Wifi attēlu pārraide

Mēs vēlamies strādāt I2C režīmā, tāpēc abiem slēdžiem jābūt ieslēgtiem 01, tāpēc kreisajai daļai jābūt izslēgtai, bet otrai - ieslēgtai.

2. darbība: savienojiet MU sensoru

Elektroinstalācija ir diezgan vienkārša, vienkārši izmantojiet četrus džemperu vadus, lai savienotu Mu sensoru ar sadalīšanas paneli.

Mu sensors -> Breakout board

SDA -> 20. tapa

SCL -> 19. tapa

G -> Zeme

V -> 3.3-5V

3. darbība. Kameras stiprinājuma savienošana

Kameras stiprinājuma vadu savienošana
Kameras stiprinājuma vadu savienošana

Servomotors, kas kontrolē horizontālo kustību, jāpievieno 13. tapai, un servomotors, kas kontrolē vertikālo kustību, jāpievieno 14. tapai.

4. darbība. Paplašinājuma iegūšana

Paplašinājuma iegūšana
Paplašinājuma iegūšana
Paplašinājuma iegūšana
Paplašinājuma iegūšana
Paplašinājuma iegūšana
Paplašinājuma iegūšana

Vispirms dodamies uz Makecode redaktoru un sākam jaunu projektu. Pēc tam mēs ejam uz "Papildu" un izvēlamies "Paplašinājumi". Ņemiet vērā, ka, tā kā esmu dāņu valoda, šīm pogām attēlos ir nedaudz atšķirīgi nosaukumi. Paplašinājumos mēs meklējam "Muvision" un atlasām vienīgo rezultātu.

5. darbība: savienojuma inicializēšana un algoritma iespējošana

Savienojuma inicializēšana un algoritma iespējošana
Savienojuma inicializēšana un algoritma iespējošana

Izmantojot šo paplašinājumu, jūs saņemsiet kļūdas "Nevar nolasīt nenoteiktu īpašumu". Tas ir tikai tāpēc, ka trūkst animācijas micro: bit. Tas neietekmē programmas apkopošanu un darbību.

Pirmā oranžā koda daļa inicializē I2C savienojumu.

Koda otrā oranžā daļa iespējo satiksmes karšu atpazīšanas algoritmus.

Ciparu rādīšana tiek izmantota problēmu novēršanai. Ja, palaižot programmu, mikro: bits netiek skaitīts līdz trim, tad pārbaudiet, vai MU redzes sensora vadi ir pareizi pievienoti pareizajām tapām.

Abi sarkanie bloki nosaka kameras stiprinājuma sākuma pozīciju.

6. solis: programma

Programma
Programma

Divi pirmie sarkanie bloki kontrolē servomotorus, kas kontrolē kameras stiprinājumus. Pirmais kontrolē vertikālo kustību, bet otrais - horizontālo kustību.

Pirmais ārējais "IF" bloks pārbauda, vai MU sensors var noteikt satiksmes kartes. Ja tas ir iespējams, tad pārejam pie diviem "IF" paziņojumiem iekšā.

Pirmajā "IF" paziņojumā pārbaudiet atklātās kartes vertikālo novietojumu redzes laukā. Ja redzes lauka centrā tiek ievietota kartīte, tad no vertikālās vērtības algoritma mēs iegūsim vērtību 50. Tagad, kad karte atrodas tieši vidū, tas ir reti. Mums ir jāsit ļoti precīzi, tādēļ, ja mēs izvēlēsimies 50 vienīgo vērtību, kur kamerai vajadzētu mierīgi sēdēt, tad tā vairāk vai mazāk visu laiku kustēsies. Tā vietā mēs skaitām visu starp 45 un 55 kā pa vidu. Tātad, ja karšu vertikālais izvietojums ir zem 45, mēs pārvietojam kameru mazliet uz leju, mainot vertikālo mainīgo par +1. Tādā pašā veidā mēs pārvietojam kameru nedaudz uz augšu, ja vertikālais novietojums ir virs 55, mainot vertikālo mainīgo par -1. Man varētu šķist dīvaini, ka kamera paceļas uz augšu, kad mēs paaugstinām mainīgo un uz leju, kad mainīgais paceļas uz augšu, bet tieši tā motors ir novietots.

Otrais "IF" paziņojums dara tieši to pašu, bet attiecībā uz horizontālo stāvokli. Tātad, ja satiksmes karte atrodas tālu pa labi no redzes lauka, kamera pārvietosies pa labi un, kad tā būs tālu pa kreisi no vission lauka, kamera pārvietosies pa kreisi.

Programmu varat atrast šeit.

7. solis: pabeigts

Tagad augšupielādējiet savu programmu viedajā automašīnā un pārbaudiet to.

Jūs varat palielināt, cik ātri kamera reaģē uz kustību, palielinot mainīgo lielumu līdz 2 vai 3, nevis 1. Varat arī mēģināt samazināt, cik liels lauka apjoms tiek uzskatīts par vidējo. Tā vietā mēģiniet no 47 līdz 53.

Ieteicams: