Kazalo:

Raspberry Pi 3 FPV Lego Tank: 5 korakov (s slikami)
Raspberry Pi 3 FPV Lego Tank: 5 korakov (s slikami)

Video: Raspberry Pi 3 FPV Lego Tank: 5 korakov (s slikami)

Video: Raspberry Pi 3 FPV Lego Tank: 5 korakov (s slikami)
Video: Build a Raspberry Pi RC Tank driven by an 8BitDo Controller - GoBILDA Outlaw Chassis Kit Assembly 2024, Julij
Anonim
Lego Tank Raspberry Pi 3 FPV
Lego Tank Raspberry Pi 3 FPV

Lego je odličen za poučevanje otrok o tem, kako stvari delujejo, hkrati pa jim omogoča, da se zabavajo. Vem, da sem se kot otrok vedno rad "igral" z legom. Ta navodila opisujejo, kako sem iz lega in Raspberry Pi 3 (Raspi 3) zgradil rezervoar FPV (pogled prve osebe). poskušal sem biti čim preprostejši, le korak, ko motorje prilagodite za delo z legom, zahteva orodja in nekaj spretnosti.

Rezervoar v bistvu uporablja dva motorja, zato če ne želite rezervoarja, lahko naredite robota tipa Romba, bo konstrukcija drugačna, vendar bodo ožičenje in programi popolnoma enaki.

### Ta projekt je v bistvu različica 1, zato, če ga želite izboljšati (kar je dovolj prostora), pustite komentar. Na voljo bo tudi vsa koda, na moji strani Github so povezave v korakih

Stvari, ki jih boste potrebovali:

  • Nekaj Lega sem uporabil Lego Technic Arctic Truck, ki sem ga ležal. Uporabite svojo domišljijo, ta komplet je vseboval skladbe in vse, da so ti delovali, zato je bilo dobro za ta projekt.
  • Kot Raspberry Pi sem uporabil Raspberry Pi 3, ker sem to imel, če imate drugačen model, bi lahko deloval, vendar se bodo zatiči GPIO razlikovali.
  • Kartica mikro SD z nameščenim Raspianom za Raspi 3.
  • Fotoaparat Pi, Adafruit prodaja nekaj pa tudi različne tračne kable različnih dolžin. Moj je bil kupljen pri Aliexpressu, ima objektiv ribje oko in je bil poceni. Morda boste lahko uporabljali spletno kamero, vendar kamera Pi deluje brezhibno.
  • USB Power Bank za napajanje Raspi 3, mislim, da je moj stal 8 USD, njegova 2000mah pa tako nekaj časa poganja Raspi 3.
  • Akumulator za napajanje motorjev, uporabil sem baterijo, ki sem jo potegnil iz poceni avtomobila RC, to je 7,2 voltov, 500 mAh in polnilno baterijo, tako da deluje zelo dobro. 9V baterija bi bila dobra, potem pa boste potrebovali tudi priključek.
  • Mostični kabli, ki povezujejo zatiče GPIO skupaj, najmanj 5 žensk na žensko.
  • L298N Motor Driver Board, te so precej poceni in omogočajo ločeno krmiljenje motorjev. To so tudi precej standardni za to vrsto uporabe.
  • 2 x enosmerni motor menjalnika, ti iz Adafruit so dobri, popolnoma enakega lahko kupite tudi na Aliexpressu

Razno

  • Dvostranski penasti trak
  • žica
  • toplotno krčenje
  • trak
  • gumice
  • mikro USB kabel

Če boste motorje DC menjalnika prilagodili tako kot jaz, boste potrebovali:

  • rezalnik za škatle
  • dremel s krožnim žaginim listom
  • mini datoteke
  • 5 minutni epoksid

Za nadzor in programiranje Raspi 3 boste potrebovali tudi svoj osebni računalnik/prenosni računalnik.

1. korak: Zgradite rezervoar

Zgradite tank
Zgradite tank
Zgradite tank
Zgradite tank
Zgradite tank
Zgradite tank

Torej to v resnici niso navodila, ker bi moral biti ta korak res vaša lastna zasnova. Govoril bom o nekaterih stvareh, ki sem jih moral upoštevati pri izdelavi tega, a prava zabava je v tem, da ugotovite sami (podobno kot dejanski Lego). Uporabite fotografije, če so v pomoč. Za razvoj te zasnove sem potreboval kar nekaj let, na koncu je bila preprosta cesta najboljša.

  1. Najprej sestavite zadnje osi

    1. Pazite, da motorjem pustite dovolj prostora in jih naredite dovolj široke, da se komponente lahko namestijo v notranjost. Želel sem, da je moj precej širok, saj sem želel, da je vse, kar sedi znotraj osi, to je omogočilo, da je bil rezervoar precej nizek, da bi se prilegal pod stvari in lovil mačko.
    2. Kolesa na gosenicah tukaj imajo luknjo, ki ustreza križni osi Lego, zato ne pozabite, da se bodo vaši motorji namestili tukaj.
    3. Za progo zadaj in spredaj potrebujete dovolj prostora. Na sliki 2 lahko opazite, da okraski "L" niso semetrični, kar omogoča prostor za skladbe. Sprva sem jih imel semetrične, toda proga se je še naprej drla in se je na neki točki zagozdila in zlomila adapter motorja.
  2. Ko so osi zgrajene, jih lahko povežete

    1. z uporabo dolgih bitov s križnimi nosilci v rednih časovnih presledkih. Poskrbite, da bodo križni nosilci nameščeni tako, da se med njimi prilegajo komponente, kar pomaga ohraniti nizek profil.
    2. dolžina bo določena s tem, koliko sledi imate. Ta proga nima raztezanja, zato je potrebno malo ohlapnosti. Če imate gumijasto progo, jo lahko zategnete. Tudi tekaško kolo je dobra ideja, vendar na splošno ni potrebno.
    3. Ta korak je bil malenkost naprej in vključuje le nekaj poskusov in napak.
  3. Motorji so v bistvu zlepljeni z dvostranskim penastim trakom, zato jim zagotovite veliko površino, na katero se lahko prilepijo.
  4. Nosilec za kamero, ki sem ga naredil, je precej smeten, vsekakor bi morali poskusiti sami. Všeč mi je nizko, saj se zdi, da hitro potujete s kamero. To bi bil kul kraj za nadgradnjo s servo ali dvema, da bi kamero premaknili.

Upajmo, da so te opombe v pomoč. To stvar sem zgradil, preden sem napisal navodila, in malo obotavljam, da bi jo zdaj ločil, ko gre. Resnično verjamem, da je mogoče narediti boljši dizajn, zato menim, da bi bil vaš lasten razvoj najboljši. Pustite komentar, če želite, da ga naredim v celoten vodnik, če bo dovolj povpraševanja, bom to storil.

2. korak: Adapter DC menjalnika na Lego adapter

Adapter DC menjalnika na Lego adapter
Adapter DC menjalnika na Lego adapter
Adapter DC menjalnika na Lego adapter
Adapter DC menjalnika na Lego adapter
Adapter DC menjalnika na Lego adapter
Adapter DC menjalnika na Lego adapter

Spet sem to naredil pred pisanjem in nisem naredil nobene fotografije. Mislim, da obstaja veliko različnih vadnic, ki to počnejo. Adafruit dejansko prodaja adapter, to je najboljši način, poleg tega pa vam ni treba uničiti nosilcev motorja. Jaz sem v NZ, čeprav Adafruit ni na voljo, DIY pa je:-). To sem naredil (oprostite zaradi slabih diagramov):

  1. Pripravite vsa orodja, rezali bomo plastiko, zato to ne bo težko. Uporabil sem par delavniških očal, ker osebno sovražim majhne plastične plasti po celem očesu. Uporabil sem tudi eno od teh zelenih rezalnih desk, da nisem pokvaril mize.
  2. Diagram torej prikazuje pogled od zgoraj in s strani. V bistvu je siva majhen bel del na motorju DC menjalnika, rdeča pa je tam, kjer režemo. Rdeča na zgornjem pogledu naj bi bila dejansko prerez Legove prečne osi. Odstranili bomo ta material, tako da se os tesno prilega notranjosti. Poskusite to prerezati čim bližje sredini in skoraj desno do dna. Začel sem tako, da sem najprej grobo rezal s krožno žago na svojem dremelu, nato sem začel britje kosov z rezalnikom, dokler nisem imel popolnega prileganja.
  3. Ko odrežete ta del in se os prilega bolj ali manj naravnost (izgledati mora kot čudno prepognjena vilica), lahko Lego prečno os premažete z epoksi smolo. motorja, tako da gredi ne pritrdite na ohišje. 5-minutni epoksid dobro premešajte in nanesite debelo plast na beli del in prečno os, iščemo 1-2 mm debel sloj. 5 -minutni epoksid se hitro zlepi in postane neuporaben, zato tukaj delajte hitro.
  4. Ko nanesete dezinfekcijski premaz in epoksid ne teče, morate to storiti. Malo teče, zato bodite previdni. Ko je nastavljen na gumijasto konsistenco, lahko enostavno odstranite odvečni epoksid, tako sem dobil lep ploski konec.
  5. Pustite, da se posuši čez noč, do jutra pa bi morali imeti motor Lego DC menjalnika

3. korak: Ožičite ga

Ožičenje
Ožičenje
Ožičenje
Ožičenje
Ožičenje
Ožičenje

Ožičenje za ta projekt je precej preprosto. Za priključitev naših GPIO zatičev na krmilnik motorja L298N bomo uporabili 4 moške kable ženski -ženski in moški -ženski mostični kabel za povezavo tal Raspi 3 z maso krmilnika motorja L298N. Nekaj žice bomo uporabili tudi za priključitev motorjev na krmilnik motorja L298N.

Odločil sem se, da bom to kombinacijo zatičev uporabil na Raspiju, ker so združeni skupaj. Uporabite lahko kateri koli komplet zatičev GPIO in GND. Ne pozabite ga spremeniti v kodi.

Uporabite lahko shemo ožičenja ali sledite spodnjim korakom:

Raspi 3 L298N

GND (pin 14) GND

GPIO27 (pin 13) IN1

GPIO22 (pin 15) IN2

GPIO23 (pin 16) IN3

GPIO24 (pin 18) IN4

Za motorje in način njihove namestitve sem jih povezal na ta način.

Out2, Out3 negativno

Out1, Out4 pozitivno

V bistvu je bilo negativno nazaj, pozitivno pa naprej. Če jih dobite drugače, se rezervoar samo pelje v nasprotni smeri, kar je enostavno popraviti v programski opremi.

4. korak: Programiranje

Torej, za ta korak bomo morali nastaviti nekaj stvari, če tega še niste storili.

  • Raspian
  • Python 2 ali 3
  • Git
  • MJPG-Streamer

Namestitev Raspian

Najprej moramo imeti Raspian na kartici micro SD, zato naj bo formatiran SD vsaj 8 GB (NOOBS lite lahko namestite tudi, če imate le kartico s 4 GB).

Za namestitev Raspian priporočam uporabo NOOBS. Uradna povezava je tukaj. Prenesite datoteko zip v računalnik in datoteke izvlecite na kartico sd. Prepričajte se, da so datoteke in mape tam in ne v mapi noobs.

Ko to storite, priključite kartico SD v Raspi 3, priključite zaslon (televizor s HDMI deluje brezhibno, če nimate monitorja) ter tipkovnico in miško.

Videti bi morali obremenitev namestitvenega zaslona, vzpostaviti povezavo z wifi (wifi je potreben za delovanje tega projekta) in namestiti, uporabljam samo privzete nastavitve, saj delujejo dobro.

Konfiguriranje za način brez glave

Torej, ko je Raspian nameščen in ste prijavljeni v Raspi 3, lahko začnete konfigurirati Raspi 3 za delovanje v brezglavnem načinu (tj. Uporabite SSH namesto zaslona in tipkovnice). Zapomnite si, da morate uporabiti sudo, zato se prepričajte, da poznate geslo root.

Odprite terminal in vnesite 'sudo raspi-config'. Moral bi imeti modro-siv zaslon, kot na slikah. Premaknite se na 'Možnosti vmesnika', pritisnite enter, nato se pomaknite na 'P2 SSH' pritisnite enter in znova vnesite za 'da', spet za 'ok'.

Zdaj se vrnite v 'možnosti vmesnika' in omogočite kamero.

Nazaj v meniju pritisnite desno in vnesite, da izberete »zaključi«.

Nato moramo najti naš naslov IP, to lahko storite tako, da v terminal vnesete 'ifconfig'. Poiščite blok, ki se začne z wlan0 (običajno zadnji) in zapišite svoj IP naslov. Moral bi biti v drugi vrstici in izgledati nekako takole 192.168.1. XX, če uporabljate domači wifi.

Super, to je konec konfiguracije

Namestitev dodatne programske opreme

Torej, če želite zagnati skripte, ki jih imam, morate imeti nameščen python 2 ali 3. Če se želite naučiti pythona, priporočam učenje pythona 3, razlike so majhne, vendar se python 3 zdaj bolj pogosto uporablja. Moral bi biti vnaprej nameščen z Raspian, vendar bi morali samo dvakrat preveriti.

Vnesite 'python --version', dobili bi izhod, kot je 'Python 2.7.13', kar pomeni, da imate nameščen python 2. Če želite preveriti, ali imate python 3, vnesite 'python3 --version' in dobili boste podoben izhod. Če nimate pythona 2 ali 3, lahko vnesete »sudo apt-get install python« ali »sudo apt-get install python3«.

Za pridobitev kode boste potrebovali tudi Git, znova ga je treba vnaprej namestiti. Vnesite 'git --version', da preverite in uporabite 'sudo apt-get install git', če ga nimate.

Namestitev MJPG-Streamerja

MJPG-Streamer je eden od načinov, kako sem dobil dostop do Picamere. Omogoča dostop do kamere prek brskalnika in upravljanje s sliko. Verjetno je to lepši in enostavnejši način uporabe fotoaparata, če vam ne ustreza koda.

  1. Spet bomo uporabili Git. V terminal Raspi 3 vnesite 'git clone https://github.com/jacksonliam/mjpg-streamer.git'. Programska oprema se bo naložila, ne traja predolgo.
  2. Verjetno je najbolje, da na tej točki pogledate datoteko 'README.md' in sledite navodilom za namestitev. Delali so zame brez težav. Če imate kakršna koli vprašanja, jih pustite v komentarjih in poskusil vam bom pomagati

Ko je nameščen, ga lahko zaženete. Spodaj bom opisal, kako to počnem.

Vse skupaj

Super, zdaj bi morali biti pripravljeni iti. Prepričajte se, da je vaš Raspi 3 vklopljen. V računalniku/prenosnem računalniku odprite terminal (predvidevam, da uporabljate Linux ali Mac, če uporabljate Windows, boste morali prenesti kit. Na spletu je veliko vadnic o tem, kako to uporabiti, ne skrbite, enostavno je) in vnesite 'ssh [email protected]. XX (ob predpostavki, da niste spremenili privzetega uporabniškega imena) ali kateri koli vaš IP naslov, ki smo ga našli prej. Vnesite geslo (to zagotovo ne sme biti privzeto). Odlično, zdaj ste na računalniku/prenosnem računalniku na terminalski seji na Raspiju 3.

Torej, v terminalu vnesite 'git clone https://github.com/astrobenhart/Raspi-3-FPV-Lego-T… To bi moralo trajati le nekaj sekund, saj so datoteke res majhne. Nato se lahko pomaknete v imenik z uporabo 'cd Raspi-3-FPV-Lego-Tank', zdaj vnesite 'ls' in se prepričajte, da vidite teh 5 datotek: 'demo.py', 'drive.py', 'Picamera_tank. py, 'finished.jpg' in 'README.md'. Poskrbite, da boste na readme našli vse posodobitve.

demo.py

Ta skript py je odličen za preverjanje, ali vaše ožičenje deluje. Gre le za različne kombinacije vožnje motorjev naprej in nazaj.

uporabite 'python demo.py' za zagon. Dokončanje traja približno pol minute.

drive.py

To je skript py, ki ga boste zagnali za nadzor rezervoarja. Nastavi preslikavo pin GPIO in ustvari defs za premikanje. Zajema tudi pritiske tipk za nadzor rezervoarja.

Za zagon uporabite 'python drive.py'. Počakaj malo, tvoj terminal mora biti prazen.

za premikanje uporabite 'w, a, s, d' in preslednico za ustavitev. Ko ste pripravljeni zapreti program, pritisnite 'n'.

Picamera_tank.py

To je moja različica streamerja za kamero. To deluje samo s pythonom 3 (tj. Za zagon uporabite 'python3 Picamera_tank.py'). To lahko zaženete v drugem terminalskem oknu ali pa pritisnete ctrl-z in vnesete bg, da ga zaženete v ozadju na istem terminalu. Osebno rad uporabljam ločen terminal.

Ne bi vam bilo treba namestiti ničesar dodatnega, če pa uporabljate pip. Če naletite na težave, pustite komentar.

Ko se to zažene na Raspiju 3, se prijavite v brskalnik računalnika/prenosnika in pojdite na 192.168.1. XX: 8000 (IP, ki smo ga našli prej). Moral bi videti izhod kamere. Če je treba sliko zavrteti, boste morali urediti skript py. Pri dnu je komentar, spodaj vnesite potrebne stopnje rotacije. Zame je bilo 180, saj je moj fotoaparat obrnjen na glavo.

Za zagon programa MJPG-Streamer

Če želite zagnati -j.webp

Ko se to zažene, pojdite na 192.168.1. XX: 8080 (IP, ki smo ga našli prej) in kliknite na pretakanje. Poigrajte se z drugimi možnostmi, morda vam bodo koristile.

In to je to. Zdaj bi morali imeti možnost, da s svojim lastnim rezervoarjem FPV vozite povsod, kjer koli lahko dobite svoj WiFi. Zabavaj se.

5. korak: Končni izdelek

In tukaj je video, kako vse deluje.

Samo opomba, da imam Raspi 3 priključen na prenosni računalnik, da ga v videoposnetku napajam, saj je pri nekaterih testiranjih zmanjkalo napajalnika. Trajalo je skoraj eno uro, kar sem bil zelo vesel.

Pustite komentarje, če jih imate, in upam, da vam bo všeč, če boste poskusili narediti ta Raspberry Pi 3 FPV Lego Tank.

Hvala, Ben

Priporočena: