Turinys:

„Raspberry Pi 3 FPV Lego“tankas: 5 žingsniai (su nuotraukomis)
„Raspberry Pi 3 FPV Lego“tankas: 5 žingsniai (su nuotraukomis)

Video: „Raspberry Pi 3 FPV Lego“tankas: 5 žingsniai (su nuotraukomis)

Video: „Raspberry Pi 3 FPV Lego“tankas: 5 žingsniai (su nuotraukomis)
Video: Build a Raspberry Pi RC Tank driven by an 8BitDo Controller - GoBILDA Outlaw Chassis Kit Assembly 2024, Liepa
Anonim
Raspberry Pi 3 FPV Lego tankas
Raspberry Pi 3 FPV Lego tankas

„Lego“puikiai tinka mokyti vaikus, kaip viskas veikia, tuo pačiu leisdama jiems linksmintis. Žinau, kad vaikystėje man visada patiko „žaisti“su lego. Šioje instrukcijoje aprašoma, kaip iš „Lego“ir „Raspberry Pi 3“(„Raspi 3“) sukūriau FPV (pirmojo asmens peržiūros) baką. stengiausi, kad viskas būtų kuo paprasčiau, tik tam žingsniui, kai pritaikai variklius darbui su „lego“, reikia įrankių ir šiek tiek įgūdžių.

Bake iš esmės naudojami du varikliai, todėl jei nenorite bako, galite pagaminti „Romba“tipo robotą, jo konstrukcija bus kitokia, tačiau laidai ir programos bus visiškai vienodi.

### Šis projektas iš esmės yra 1 versija, taigi, jei norite jį patobulinti (kuriame yra daug ką padaryti), palikite komentarą. Taip pat visas kodas bus pasiekiamas mano „Github“puslapyje, nuorodos yra žingsniuose

Dalykai, kurių jums reikės:

  • Kai kurie „Lego“, aš naudoju „Lego Technic“arktinį sunkvežimį, kurį turėjau gulėti. Tačiau pasitelkite savo vaizduotę, šis rinkinys turėjo takelius ir viską, kad jie veiktų, todėl tai buvo naudinga šiam projektui.
  • „Raspberry Pi“, aš naudoju „Raspberry Pi 3“, nes būtent tai ir turėjau, jei turite kitokį modelį, galbūt pavyks, kad jis veiktų, tačiau GPIO kaiščiai skirsis.
  • „Micro SD“kortelė su įdiegta „Raspian“, skirta „Raspi 3“.
  • „Pi“fotoaparatas „Adafruit“parduoda keletą ir skirtingų ilgių juostinių kabelių. Pirkau kasyklą iš „Aliexpress“, ji turi žuvies akių objektyvą ir buvo pigi. Galbūt galėsite naudotis internetine kamera, tačiau „Pi“kamera veikia iš dėžutės.
  • USB maitinimo bankas, skirtas „Raspi 3“maitinti, manau, kad mano kaina buvo 8 USD, jo 2000 mAh, todėl kurį laiką veikia „Raspi 3“.
  • Akumuliatorius varikliams maitinti, aš naudoju akumuliatorių, kurį ištraukiau iš pigaus RC automobilio, jis yra 7,2 volto, 500 mAh ir įkraunamas, todėl veikia gana gerai. 9 V baterija būtų gera, bet tada jums taip pat reikės jungties.
  • Trumpieji kabeliai, skirti GPIO kaiščiams sujungti, mažiausiai 5 patelės ir moterys.
  • L298N variklio tvarkyklių plokštė yra gana pigi ir leidžia valdyti variklius atskirai. Jie taip pat yra gana standartiniai šio tipo programoms.
  • 2 x nuolatinės srovės pavarų dėžės variklis, šie „Adafruit“yra geri, tą patį galima nusipirkti ir iš „Aliexpress“

Įvairūs

  • Dvipusė putplasčio juosta
  • viela
  • šiluma susitraukia
  • juosta
  • gumytės
  • mikro USB kabelis

Jei ketinate pritaikyti nuolatinės srovės pavarų dėžės variklius, kaip aš, jums reikės:

  • dėžutės pjaustytuvas
  • dremel su diskiniu pjūklu
  • mini failai
  • 5 minučių epoksidas

Jums taip pat reikės savo kompiuterio/nešiojamojo kompiuterio, kad galėtumėte valdyti ir programuoti „Raspi 3“.

1 žingsnis: pastatykite baką

Sukurkite baką
Sukurkite baką
Sukurkite baką
Sukurkite baką
Sukurkite baką
Sukurkite baką

Taigi tai tikrai nėra instrukcijos, nes šis žingsnis tikrai turėtų būti jūsų sukurtas. Pakalbėsiu apie kai kuriuos dalykus, kuriuos turėjau apsvarstyti kurdamas tai, tačiau tikras malonumas slypi patiems išsiaiškinti (panašiai kaip tikras „Lego“). Naudokite nuotraukas, jei jos yra naudingos, man prireikė daug metų, kad galėčiau sukurti šį dizainą, galų gale paprastas kelias buvo geriausias.

  1. Pirmiausia pastatykite galines ašis

    1. ir būtinai palikite pakankamai vietos varikliams ir padarykite juos pakankamai plačius, kad komponentai tilptų viduje. Norėjau, kad manoji būtų gana plati, nes norėjau, kad viskas sėdėtų ašių viduje, tai leido bakui gana žemai tilpti po daiktais ir vytis katę.
    2. Ratų ant ratų čia yra skylė, tinkanti „Lego“kryžminei ašiai, todėl atminkite, kad būtent čia bus montuojami jūsų varikliai.
    3. Jums reikia pakankamai vietos takeliui gale ir priekyje. 2 paveiksle galite pastebėti, kad „L“gabalai nėra semetriniai. Aš iš pradžių juos turėjau pusiau, bet takelis nuolat trinosi ir vienu metu užstrigo ir sulaužė variklio adapterį.
  2. Sukūrę ašis, galite jas sujungti

    1. reguliariai naudojant ilgus antgalius su kryžminėmis atramomis. Įsitikinkite, kad kryžminės atramos yra išdėstytos taip, kad komponentai tilptų tarp jų, tai padės išlaikyti žemą profilį.
    2. ilgį lems tai, kiek turite takelio. Ši trasa nėra ištempta, todėl reikia šiek tiek atsipalaiduoti. Jei turite guminį takelį, galite jį sutvirtinti. Bėgimo ratas taip pat yra gera idėja, tačiau apskritai to nereikia.
    3. Šis žingsnis buvo smulkus ir tiesiog apima bandymus ir klaidas.
  3. Varikliai iš esmės yra įstrigę dvipuse putplasčio juosta, todėl jie turi didelį paviršių, prie kurio jie gali būti priklijuoti.
  4. Mano pagamintas fotoaparato laikiklis yra gana šiukšlė, turėtumėte neabejotinai pabandyti ir pasidaryti savo. Man patinka žemai, nes atrodo, kad greitai keliauji fotoaparatu. Tai būtų puiki vieta atnaujinti naudojant vieną ar dvi servo sistemas, kad fotoaparatas galėtų judėti.

Tikimės, kad šios pastabos bus naudingos. Aš sukūriau šį dalyką prieš rašydamas instrukciją ir šiek tiek dvejoju, ar dabar, kai tai vyksta, jį atskirti. Aš tikrai tikiu, kad galima sukurti geresnį dizainą, todėl manau, kad jūsų tobulėjimas būtų geriausias. Palikite komentarą, jei norite, kad tai būtų visas vadovas, jei bus pakankamai paklausos, aš tai padarysiu.

2 žingsnis: DC pavarų dėžės variklis į „Lego“adapterį

DC pavarų dėžės variklis į „Lego“adapterį
DC pavarų dėžės variklis į „Lego“adapterį
DC pavarų dėžės variklis į „Lego“adapterį
DC pavarų dėžės variklis į „Lego“adapterį
DC pavarų dėžės variklis į „Lego“adapterį
DC pavarų dėžės variklis į „Lego“adapterį

Vėlgi, tai padariau prieš rašydamas ir nepadariau jokių nuotraukų. Manau, kad yra daugybė įvairių vadovėlių, kurie tai daro. „Adafruit“iš tikrųjų parduoda adapterį, tai yra geriausias būdas, be to, jums nereikia naikinti variklio laikiklių. Nors esu NZ, todėl „Adafruit“nėra, bet pasidaryk pats yra:-). Štai ką aš padariau (atsiprašau už blogas diagramas):

  1. Paruoškite visus savo įrankius, mes ketiname pjauti plastiką, todėl tai nebus sunku. Aš naudojau porą dirbtuvių akinių, nes asmeniškai nekenčiu mažų plastiko gabalėlių per visus mano akių obuolius. Aš taip pat naudojau vieną iš tų žalių pjaustymo lentų, todėl nesugadinau stalo.
  2. Taigi diagramoje rodomas vaizdas iš viršaus ir šono. Iš esmės pilka yra maža balta dalis ant nuolatinės srovės pavarų dėžės variklio, o raudona yra ta vieta, kur mes pjauname. Raudona spalva iš viršaus iš tikrųjų turėtų būti Lego skersinės ašies skerspjūvis. Mes pašalinsime tą medžiagą, kad ašis tvirtai tilptų viduje. Pabandykite tai iškirpti kuo arčiau centro ir beveik iki pat apačios. Pirmiausia pradėjau maždaug pjauti diskiniu pjūklu ant dremelio, tada pradėjau skusti gabalėlius dėžutės pjaustytuvu, kol puikiai priglundavau.
  3. Nupjovę gabalėlį ir ašį prigludę daugiau ar mažiau tiesiai (tai turėtų atrodyti kaip keistai sulankstyta pusė šakutės), galite epoksidiškai pritvirtinti „Lego“skersinę ašį. Prieš dengdami bet kokią epoksidinę medžiagą, įsitikinkite, kad ant geltonos dėžės uždėjote maskavimo juostą variklio, kad netyčia nepriklijuotumėte veleno prie korpuso. Gerai išmaišykite 5 minučių epoksidą ir storu sluoksniu užtepkite baltą antgalį ir skersinę ašį, ieškome 1-2 mm storio sluoksnio. 5 minučių epoksidinė medžiaga greitai tampa lipni ir netinkama naudoti, todėl čia dirbkite greitai.
  4. Uždėję kailį ir epoksidinė medžiaga neveikia, turėtumėte tai padaryti. Jis veikia šiek tiek, todėl būkite atsargūs. Nustačius panašią į gumą konsistenciją, galite lengvai nupjauti bet kokį epoksidinės medžiagos perteklių, taip gavau gražų plokščią galą.
  5. Palikite išdžiūti per naktį, o ryte turėtumėte turėti „Lego DC“pavarų dėžės variklį

3 žingsnis: prijunkite

Sujungimas
Sujungimas
Sujungimas
Sujungimas
Sujungimas
Sujungimas

Šio projekto laidai yra gana paprasti. Mes naudosime 4 jungiamus kabelius nuo moterų iki moterų, kad prijungtume savo GPIO kaiščius prie variklio valdiklio L298N, o iš vyrų - į moteriškus jungiamuosius kabelius, kad prijungtume „Raspi 3“įžeminimą prie „L298N“variklio valdiklio žemės. Mes taip pat naudosime tam tikrą laidą, kad prijungtume variklius prie variklio valdiklio L298N.

Aš pasirenku naudoti šį kaiščių derinį „Raspi“, nes jie yra sugrupuoti. Tačiau nedvejodami naudokite bet kokį GPIO kaiščių ir GND rinkinį. Tiesiog nepamirškite pakeisti kodo.

Galite naudoti prijungimo schemą arba atlikti šiuos veiksmus:

Raspi 3 L298N

GND (14 kaištis) GND

GPIO27 (13 kaištis) IN1

GPIO22 (15 kontaktas) IN2

GPIO23 (16 kontaktas) IN3

GPIO24 (18 kaištis) IN4

Dėl variklių ir jų montavimo aš juos prijungiau taip.

Out2, Out3 neigiamas

Out1, Out4 teigiami

Iš esmės neigiamas buvo nukreiptas į nugarą, o teigiamas - į priekį. Jei gausite juos priešingai, bakas tiesiog važiuoja priešinga kryptimi, kurią lengva pataisyti programinėje įrangoje.

4 žingsnis: programavimas

Taigi šiam žingsniui turėsime nustatyti keletą dalykų, jei to dar nepadarėte.

  • Raspietis
  • Python 2 arba 3
  • Git
  • -j.webp" />

„Raspian“diegimas

Pirmiausia turime turėti „Raspian“kortelę „micro SD“kortelėje, todėl turėkite parengtą mažiausiai 8 GB SD formatą (taip pat galite įdiegti „NOOBS lite“, jei turite tik 4 GB kortelę).

Norėdami įdiegti „Raspian“, rekomenduočiau naudoti NOOBS. Oficiali nuoroda yra čia. Atsisiųskite ZIP failą į savo kompiuterį ir ištraukite failus į SD kortelę. Įsitikinkite, kad failai ir aplankai yra ten, o ne aplanke „noobs“.

Kai tai padarysite, prijunkite SD kortelę prie „Raspi 3“, prijunkite ekraną (televizorius su HDMI veikia gerai, jei neturite monitoriaus) ir klaviatūrą bei pelę.

Turėtumėte pamatyti diegimo ekrano apkrovą, prisijungti prie „wifi“(„Wi -Fi“reikalingas, kad šis projektas veiktų) ir įdiegti, aš tiesiog naudoju numatytuosius nustatymus, nes jie veikia gerai.

Konfigūravimas režimui be galvos

Taigi, kai „Raspian“yra įdiegtas ir esate prisijungę prie „Raspi 3“, galite pradėti konfigūruoti „Raspi 3“veikti begaliniu režimu (t. Y. Naudoti SSH, o ne ekraną ir klaviatūrą). Tik pastaba, kurią turėsite naudoti sudo, todėl įsitikinkite, kad žinote pagrindinį slaptažodį.

Atidarykite terminalą ir įveskite „sudo raspi-config“, turėsite mėlyną ir pilką ekraną, kaip ir paveikslėliuose. Eikite į „Sąsajos parinktys“, paspauskite „Enter“, tada pereikite prie „P2 SSH“, paspauskite „Enter“ir dar kartą įveskite „taip“, dar kartą - „gerai“.

Dabar grįžkite į „sąsajos parinktis“ir įjunkite fotoaparatą.

Grįžę į meniu, paspauskite dešinę ir įveskite, kad pasirinktumėte „baigti“.

Toliau turime rasti savo IP adresą, tai galite padaryti įvesdami „ifconfig“į terminalą. Raskite bloką, prasidedantį „wlan0“(dažniausiai paskutinis), ir užsirašykite savo IP adresą. Jei naudojate namų „Wi -Fi“, jis turėtų būti antroje eilutėje ir atrodyti maždaug taip: 192.168.1. XX

Puiku, tai yra konfigūracijos pabaiga

Papildomos programinės įrangos diegimas

Taigi, norėdami paleisti turimus scenarijus, turėsite įdiegti 2 arba 3 „python“. Jei norite išmokti python, rekomenduočiau išmokti python 3, skirtumai yra nedideli, tačiau python 3 dabar plačiau naudojamas. Jis turėtų būti iš anksto įdiegtas su „Raspian“, tačiau turėtume tik dar kartą patikrinti.

Įveskite „python --version“, turėtumėte gauti tokią išvestį kaip „Python 2.7.13“, o tai reiškia, kad turite įdiegtą „python 2“. Norėdami patikrinti, ar turite „python 3“, tiesiog įveskite „python3 --version“ir turėtumėte gauti panašią išvestį. Jei neturite 2 ar 3 python, galite įvesti „sudo apt-get install python“arba „sudo apt-get install python3“.

Jums taip pat reikės „Git“, kad gautumėte kodą, vėlgi, jis turėtų būti iš anksto įdiegtas. Norėdami patikrinti ir naudoti „sudo apt-get install git“, įveskite „git --version“, jei jo neturite.

„MJPG-Streamer“diegimas

„MJPG-Streamer“yra vienas iš būdų pasiekti „Picamera“. Tai leidžia jums pasiekti kamerą per naršyklę ir manipuliuoti vaizdu. Tai tikriausiai yra gražesnis ir lengvesnis būdas naudoti fotoaparatą, jei jums nepatinka kodas.

  1. Vėl naudosime „Git“. Į Raspi 3 terminalą įveskite „git clone https://github.com/jacksonliam/mjpg-streamer.git“. Programinė įranga bus atsisiųsta, tai neužims daug laiko.
  2. Turbūt geriausias dalykas, kurį šiuo metu galima padaryti, yra pažvelgti į failą „README.md“ir vykdyti diegimo instrukcijas. Jie man sklandžiai dirbo. Jei turite klausimų, palikite juos komentaruose ir aš pasistengsiu padėti

Įdiegę galite jį paleisti. Toliau aprašysiu, kaip tai padaryti.

Viską sujungti

Puiku, dabar turėtume būti pasiruošę eiti. Įsitikinkite, kad „Raspi 3“yra įjungtas. Kompiuteryje/nešiojamame kompiuteryje atidarykite terminalą (darau prielaidą, kad naudojate „Linux“arba „Mac“, jei naudojate „Windows“, turėsite atsisiųsti glaistą. Internete yra daug vadovėlių, kaip tai naudoti, nesijaudinkite, tai lengva) ir įveskite „ssh [email protected]. XX“(darant prielaidą, kad nepakeitėte numatytojo vartotojo vardo) arba bet kokį jūsų IP adresą, kurį radome anksčiau. Įveskite slaptažodį (tai tikrai neturėtų būti numatytasis). Puiku, dabar esate „Raspi 3“terminalo sesijoje per savo kompiuterį/nešiojamąjį kompiuterį.

Taigi terminale įveskite „git clone“https://github.com/astrobenhart/Raspi-3-FPV-Lego-T… Tai turėtų užtrukti tik kelias sekundes, nes failai yra tikrai maži. Tada galite pereiti į katalogą naudodami „cd Raspi-3-FPV-Lego-Tank“, dabar įveskite „ls“ir įsitikinkite, kad matote šiuos 5 failus: „demo.py“, „drive.py“, „Picamera_tank“. py, „baigtas.jpg“ir „README.md“. Būtinai peržiūrėkite „readme“, ar nėra atnaujinimų.

demo.py

Šis py scenarijus puikiai tinka patikrinti, ar jūsų laidai veikia. Tai tiesiog vyksta skirtingais variklių važiavimo atgal ir pirmyn deriniais.

paleiskite „python demo.py“. Užpildymas trunka apie pusę minutės.

vairuoti.py

Tai py scenarijus, kurį paleisite, kad valdytumėte baką. Jis nustato GPIO kaiščių atvaizdavimą ir sukuria defs judėti. Jis taip pat užfiksuoja klavišų paspaudimus, kad valdytų baką.

Norėdami paleisti, naudokite „python drive.py“. Palaukite sekundę, jūsų terminalas turėtų būti tuščias.

naudokite „w, a, s, d“, jei norite judėti, o tarpo klavišą - sustabdyti. Kai būsite pasiruošę uždaryti programą, paspauskite „n“.

Picamera_tank.py

Tai yra mano vaizdo kameros transliacijos versija. Tai veikia tik su „python 3“(t. Y. Paleisti naudokite „python3 Picamera_tank.py“). Tai galima paleisti antrame terminalo lange arba paspauskite „Ctrl-z“ir įveskite „bg“, kad paleistumėte jį to paties terminalo fone. Man asmeniškai patinka naudoti atskirą terminalą.

Jums nereikės nieko papildomai įdiegti, bet jei naudojate pip. Jei susiduriate su problemomis, palikite komentarą.

Kai tai veiks „Raspi 3“, prisijunkite prie savo kompiuterio/nešiojamojo kompiuterio naršyklės ir eikite į 192.168.1. XX: 8000 (IP, kurį radome anksčiau). Turėtumėte pamatyti kameros išvestį. Jei vaizdą reikia pasukti, turėsite redaguoti py scenarijų. Netoli apačios yra komentaras, žemiau įveskite reikiamus sukimosi laipsnius. Man tai buvo 180, nes mano fotoaparatas yra apverstas.

Norėdami paleisti „MJPG-Streamer“

Norėdami paleisti „-j.webp

Kai tai veikia, eikite į 192.168.1. XX: 8080 (IP, kurį radome anksčiau) ir spustelėkite transliaciją. Žaiskite naudodami kitas parinktis, jos jums gali būti naudingos.

Štai ir viskas. Dabar turėtumėte turėti galimybę vairuoti savo FPV baką visur, kur galite gauti „Wi -Fi“. Pasilinksmink.

5 žingsnis: paruoštas produktas

Ir čia yra vaizdo įrašas, kuriame viskas veikia.

Tik pastaba, kad turiu „Raspi 3“prijungtą prie nešiojamojo kompiuterio, kad galėčiau jį įjungti vaizdo įraše, nes kai kurių bandymų metu maitinimo bankas baigėsi. Tai truko beveik valandą, dėl ko buvau labai laimingas.

Prašome palikti komentarus, jei tokių turite, ir tikiuosi, kad jums patiks gaminti šį „Raspberry Pi 3 FPV Lego Tank“, jei jį išbandysite.

Dėkoju, Benas

Rekomenduojamas: