Kazalo:

3D natisnjeni robot Raspberry Pi Zero: 12 korakov
3D natisnjeni robot Raspberry Pi Zero: 12 korakov

Video: 3D natisnjeni robot Raspberry Pi Zero: 12 korakov

Video: 3D natisnjeni robot Raspberry Pi Zero: 12 korakov
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Julij
Anonim
Image
Image
3D natisnjeni robot Raspberry Pi Zero
3D natisnjeni robot Raspberry Pi Zero
3D natisnjeni robot Raspberry Pi Zero
3D natisnjeni robot Raspberry Pi Zero

Ste si kdaj želeli zgraditi robota, pa preprosto niste imeli vseh materialov za izdelavo, ne da bi na koncu dobili nepotrebno obsežno šasijo? 3D tiskalniki so tukaj, da rešijo dan! Ne samo, da lahko ustvarijo dele, ki so združljivi s skoraj vsako strojno opremo, lahko to storijo na zelo prostorsko učinkovit način. Tukaj vam bom pokazal, kako ustvariti zelo osnovnega robota, ki vsebuje 3D natisnjene dele, Raspberry Pi Zero in Pi kamero. Spodbujam vas, da sprejmete in spremenite, kar sem naredil, da bo ustrezal vašim praktičnim ali zabavnim potrebam. Za nadzor robota in ogled vira kamere sem izdelal aplikacijo IOS (PiBotRemote), ki jo lahko uporabljate in spreminjate. Resnična moč v projektih, kot je ta, pa izhaja iz raznolikosti možnosti tako v strojni kot programski opremi. Zato vas spodbujam, da ste ustvarjalni in dodate tisto, kar sem naredil, odvisno od tega, kaj znate narediti. Na primer, mislim, da bi bilo kul, če bi ta robot uporabil strojni vid za prepoznavanje okolice in navigacijo podobno kot samovozeči avto.

1. korak: Zahteve

Zahteve
Zahteve
  • Materiali

    • Obvezno (približno 75 USD)

      • Raspberry Pi Zero W (10 USD)
      • Kartica Micro SD (8,25 USD)
      • 40 -polna glava (3,25 USD)
      • Jumper žice (6,86 USD)
      • Baterija USB (5,00 USD)
      • Micro Gearmotor x 2, 900 vrt / min (po 12,95 USD)
      • Voznik motorja (4,95 USD)
      • Kolesa (6,95 USD)
      • 14 mm jekleni kroglični ležaj (0,62 USD)
      • Vijaki, matice in podstavki (glej spodaj)
    • Izbirno (približno 45 USD)

      • LED
      • Kamera Raspberry Pi (29,95 USD)
      • Adapter za kamero Pi Zero (5,95 USD)
      • Servo motor (8,95 USD)
    • Orodja
      • 3D tiskalnik in filamenti
      • Računalnik (uporabljal bom mac in potrebujete ga, če želite uporabljati aplikacijo PiBot Remote)
      • iPhone/iPad/iPod Touch (če boste uporabljali aplikacijo)
      • Vrtalnik
      • Izvijač s spremenljivimi konicami

Več informacij o delih

  • Pi Zero: Če želite uporabiti Pi Zero samo za ta projekt, vam bo uspelo ves čas teči brez glave. V nasprotnem primeru boste morali kupiti dodatne vmesnike, če boste kdaj želeli priključiti izhod HDMI ali zunanjo napravo USB. V tem primeru je najverjetneje najcenejša možnost nakupa kompleta Pi Zero, takega (24 USD), ki sem ga kupil pri Amazonu. Čeprav sem še vedno moral kupiti kartico micro SD, je bil v kompletu priložen Pi Zero, oba potrebna adapterja in veliko različnih glav. Vse to je lahko koristno.
  • Kartica Micro SD: Uporabite lahko katero koli kartico Micro SD, če ima najmanj 8 GB prostora za shranjevanje.
  • Jumper Wires: Takšni skakalci so mi všeč, ker prihajajo kot povezan sveženj. To mi omogoča, da ločim recimo 9-žilni odsek in lepo povežem Pi in gonilnik motorja.
  • Baterija USB: Baterija, ki sem jo kupil pri Sparkfunu, je bila od takrat ukinjena. Posledično ga boste morali najti drugje. Tisti, ki sem ga povezal, je bil podoben mojemu, vendar ga nisem kupil, zato boste morda morali datoteke za tiskanje spremeniti tako, da ustrezajo vaši bateriji. Prepričajte se, da najdete baterijo s priključenim kablom mikro USB, saj vam to omogoča neposredno priključitev na pi brez odvečne žice.
  • Motor Driver: Priporočam uporabo potapljača, s katerim sem se povezal, ker je precej poceni in tisk je oblikovan tako, da se popolnoma prilega deski. Poleg tega lahko druge plošče delujejo drugače in lahko dobite različne rezultate.
  • 14 -milimetrska jeklena krogla: To žogo sem uporabil preprosto zato, ker sem imel eno naokoli. Uporabite lahko druge velikosti, vendar boste morda morali spremeniti velikost vtičnice. Žoga bo našemu robotu služila kot tretje kolo. To je eno od področij oblikovanja mojega robota, ki je trenutno najbolj problematično in bi lahko izkoristilo največ izboljšav. Čeprav deluje dobro na gladkih, trdih površinah, ima težave pri preprogah in hrapavih površinah. To področje svojega oblikovanja lahko spremenite.
  • Vijaki, matice, stojala: Morda se boste morali malo potruditi, da poiščete vijake, ki vam ustrezajo. Preprosto sem našel vijake, ki pritrjujejo Pi, in vijake, ki držijo nosilec kamere Pi skupaj v zbirki očetovih vijakov. Za nosilce in vtičnice motorja sem uporabil te vijake (2,95 USD) in te matice (1,50 USD), ki sta na voljo pri Sparkfun -u. Stojnice in 8 vijakov (na sliki sem po nesreči vključil le 4), ki držijo robota skupaj, sem vzel iz neuporabljenih kompletov VEX moje šole.
  • LED: Prepričan sem, da veste, kje lahko preprosto najdete nekaj LED. Izberite barve, ki jih želite predstaviti za funkcije: moč, povezava, pot predvajanja robota in navodila za sprejem robota.
  • Kamera in servo: Odvisno od tega, kaj želite narediti z robotom, se lahko odločite, da fotoaparata in servo ne vključite, ker nista potrebna za osnovno gibanje, in k stroškom robota dodate 45 USD.

Korak: Nastavitev Pi Zero

Nastavitev Pi Zero
Nastavitev Pi Zero

Sledite tej povezavi, da nastavite brezglavo namestitev na vašem Raspberry Pi Zero W

  • Ne pozabite, da se Pi Zero ne more povezati z 5GHz omrežjem Wi-Fi
  • Upoštevajte navodila za Raspbian Stretch ali novejše

Ko se uspešno povežete prek SSH s pi, zaženite

sudo raspi-config

in spremenite naslednje konfiguracije:

  • Zamenjajte geslo. Zelo nevarno je pustiti privzeto geslo malina. Zapomnite si to geslo.
  • V možnostih omrežja spremenite ime gostitelja iz raspberrypi v nekaj krajšega, na primer pizero ali pibot. Za preostanek te vadnice bom uporabil pibota. Ne pozabite, kaj ste dali tukaj.
  • V možnostih zagona -> Namizje / CLI izberite Samodejna prijava konzole
  • Pojdite na možnosti vmesnika in omogočite kamero

Izberite Dokončaj in znova zaženite napravo.

3. korak: Nastavite omrežje AdHoc

Z vzpostavitvijo omrežja AdHoc bomo lahko svojo krmilno napravo neposredno povezali z robotom brez posrednikov. To bo omogočilo hitrejše pretakanje videa in manjšo zakasnitev nadzora. Vendar ta korak ni potreben, saj bo vse še vedno delovalo prek običajnega omrežja wifi.

Najprej boste morali prenesti in razpakirati vse potrebne datoteke iz GitHub -a. V terminalu se pomaknite do prenesene mape in mapo PiBotRemoteFiles pošljite pi z ukazom:

scp -r PiBotRemoteFiles/ [email protected]: Namizni/

Ta pošlje vse potrebne datoteke robotu, ki ga bo nadzoroval in vzpostavil omrežje AdHoc. Prepričajte se, da so datoteke v mapi z imenom "PiBotRemoteFiles", ki se nahaja na namizju; sicer marsikaj ne bo uspelo. Če boste uporabljali aplikacijo PiBot Remote, lahko v nastavitvah aplikacije preklapljate med običajnim omrežjem Wi-Fi in omrežjem AdHoc. V nasprotnem primeru ga lahko ročno spremenite prek SSH z enim od naslednjih ukazov:

sudo bash adhoc.sh

sudo bash wifi.sh

Seveda se pred zagonom prejšnjih ukazov pomaknite do mape PiBotRemoteFiles. Vsaka sprememba med AdHoc in Wi-Fi bo začela veljati šele po naslednjem ponovnem zagonu. Če je nastavljen AdHoc, bi se moralo ob zagonu Pi Zero pojaviti omrežje PiBot.

4. korak: Dodajte LED za napajanje

Dodajte LED za vklop
Dodajte LED za vklop

Čeprav je vsekakor nepotrebno, je lahko koristno imeti lučko za napajanje. Če želite to aktivirati, vnesite SSH v Pi Zero in zaženite ukaz:

sudo nano /etc/bash.bashrc

Na konec datoteke dodajte naslednjo vrstico:

python /home/pi/Desktop/PiBotRemoteFiles/startup.py

Kasneje bomo spremenili pin GPIO, povezan z LED za napajanje.

5. korak: Nastavitev spletnega vmesnika RPi Cam

Nastavitev spletnega vmesnika RPi Cam
Nastavitev spletnega vmesnika RPi Cam
Nastavitev spletnega vmesnika RPi Cam
Nastavitev spletnega vmesnika RPi Cam

Za dostop do videotokanov Raspberry Pi Cameras bomo uporabili vmesnik RPi-Cam-Web. Informacije o tem modulu najdete tukaj, njihova koda pa na GitHubu. Za namestitev modula moramo najprej posodobiti naš Pi. To lahko traja do 10 minut.

sudo apt-get posodobitev

sudo apt-get dist-upgrade

Nato moramo namestiti git:

sudo apt-get install git

Končno lahko namestimo modul:

git clone

RPi_Cam_Web_Interface/install.sh

Po namestitvi modula se prikaže konfiguracijsko okno. Če želite dodati uporabniško ime in geslo, uporabite isto uporabniško ime in geslo kot račun vašega pi. V nasprotnem primeru aplikacija PiBot Remote ne bo mogla sprejeti pretoka kamere.

Zdaj, če greste v brskalnik v napravi v istem omrežju kot Pi in če je kamera povezana s pi, lahko tok sprejmete tako, da obiščete https://pibot.local/html/#. Vmesnik RPi omogoča enostaven nadzor nad kamero, z dotikom ali klikom na videoposnetek pa lahko postane celozaslonski. To bomo kasneje uporabili z oddaljeno aplikacijo PiBot.

Zdaj smo končali z nastavitvijo Pi Zero, k zabavnim stvarem!

6. korak: Natisnite vse

Natisnite vse
Natisnite vse
Natisnite vse
Natisnite vse

Čeprav sem uporabljal 3D -tiskalnik Dremel s PLA nitko, lahko uporabite svoje tiskalnike in materiale. Vse datoteke STL so v mapi, ki ste jo prenesli z GitHub -a. Vse sem lahko natisnil v štirih serijah: zgornjo ploščo, spodnjo ploščo, vse nosilce in vtičnice ter obroč. Bodite ustvarjalni pri izbiri barve in v celoti izkoristite zmogljivosti 3D tiskalnikov. Moj tiskalnik ni imel dvojnega ekstrudiranja ali kakršnih koli podobnih funkcij, če pa bi imel dostop do takega tiskalnika, priporočam, da okraske na vrhu zgornje plošče natisnete v kontrastni barvi. Verjetno boste morali spiliti in vrtati, da se nekateri kosi prilegajo.

Pobarvajte zgornjo ploščo, da bodo LED simboli in okraski vidni.

Morda ste na koncih spodnje plošče opazili dva nosilca, ki spominjata na sistem montaže GoPro. Uporabite jih za pritrditev, kar želite, na sprednjo ali zadnjo stran robota. V datoteki mešalnika najdete nosilec označevalca za suho brisanje, ki sem ga uporabil, pa tudi predlogo, ki jo lahko spremenite, da zadrži vaš predmet.

Prav tako lahko določite smer v naprej; Doslej sem zamenjal vsaj trikrat.

7. korak: Spajkajte na glavi

Spajkanje na glavi
Spajkanje na glavi
Spajkanje na glavi
Spajkanje na glavi
Spajkanje na glavi
Spajkanje na glavi

Čeprav sem se odločil za spajkanje glav na PiZero, lahko svoje žice spajkate neposredno na pi. Če se odločite za spajkanje glav, kot sem jaz, priporočam uporabo takega s pravim kotom, kot je moj. Ohrani žice veliko bolj skrite in naredi vse videti veliko bolj urejeno.

Zdaj je čas za spajkanje gonilnika motorja. Spodnja plošča je zasnovana posebej za tega gonilnika motorja Sparkfun in omogoča prostor za glavo zatiča za pritrditev na dnu. To omogoča enostavno menjavo zatičev motorja, tako da lahko zamenjate levo in desno ter naprej in nazaj. Čeprav zdaj vključujem naslednji korak, vam toplo priporočam, da počakate nekaj korakov, dokler natančno ne ugotovite, kako dolge morajo biti vaše žice. Odrežite 9-žični del mostičkov, ki so združljivi z zatiči glave, ki ste jih pravkar spajali v pi. Vsako žico previdno spajkajte, da lahko skupina skupaj leži in se ovije okoli baterije. Vnaprej izmerite dolžino žice, da ne boste imeli premalo ali preveč.

Končno je čas za spajkanje LED. Lepite jih na ustrezna mesta na zgornji plošči in zložite vse ozemljitvene zatiče enega na drugega. Spajajte eno žico na tla in eno žico na vsako LED. Od leve proti desni so funkcije LED: moč robota, povezava aplikacij z robotom, robot predvaja shranjeno pot in robot prejema navodila.

Pripnite tudi žice na vsak motor, tako da se lahko priklopijo v glave, ki prihajajo iz gonilnika motorja.

8. korak: Privijte motor in vtičnico

Privijte motor in vtičnico
Privijte motor in vtičnico
Privijte motor in vtičnico
Privijte motor in vtičnico
Privijte motor in vtičnico
Privijte motor in vtičnico
Privijte motor in vtičnico
Privijte motor in vtičnico

Najprej vsak motor vstavite v nosilec motorja. Nato vsak vijak delno vstavite, dokler konica ne doseže površine nosilca ali vtičnice. Nato za vsak vijak držite matico na drugi strani plošče, ko zategnete vsak vijak. Ne pozabite postaviti ležaja med dve vtičnici, ko privijete drugo. Namestite gonilnik motorja na njegovo mesto in priključite motorje. Ni pomembno, kateri motor je priključen na vsak izhod, saj ga lahko preprosto spremenite, ko se robot zažene.

9. korak: Pripravite kamero in servo

Pripravite kamero in servo
Pripravite kamero in servo
Pripravite kamero in servo
Pripravite kamero in servo
Pripravite kamero in servo
Pripravite kamero in servo
Pripravite kamero in servo
Pripravite kamero in servo

Priključite trak adapterja Pi Zero v fotoaparat in ohišje fotoaparata privijte skupaj. Servo postavite na njegovo mesto. Za servo lahko izvrtate luknje za vijake, vendar je dovolj dovolj tesno. Kamero pritrdite na servo na kakršen koli način, ki se vam zdi najboljši. Trenutno imam v nosilcu dve luknji, s sponko, ki poteka skozi servo rog in ohišje fotoaparata. Vendar pa to pušča veliko prostora za premikanje, zato boste morda želeli uporabiti super lepilo. Usmerite kamero v katero koli smer in privijte servo rog. Vstavite trak kamere skozi režo pri malini in ga priključite na pi. Na koncu zložite trak tako, da je ravno ob bateriji.

10. korak: Vse združite

Združevanje vsega skupaj
Združevanje vsega skupaj
Združevanje vsega skupaj
Združevanje vsega skupaj
Združevanje vsega skupaj
Združevanje vsega skupaj
Združevanje vsega skupaj
Združevanje vsega skupaj

Končno je čas, da vse postane eno. Priključite žice iz LED, gonilnika motorja in servo v Pi tako, da uporabljate samo veljavne zatiče, vendar jih držite blizu izhoda. Nato postavite žice skozi njihove reže in privijte pi na svoje mesto. Zasnovan je tako, da ohranja stvari čiste, zato ne obupajte, ko se vam zdi, da ni dovolj prostora za te velike mostičke.

Vsako stojalo privijte v spodnjo ploščo, tako da je vsaka varna. Vstavite baterijo in se prepričajte, da se napajalni kabel lahko prilega skozi režo in v napajalna vrata Pi Zero. Okoli njega ovijemo žice gonilnika motorja in okoli vsega namestimo obroček. Ko ste stisnili vse žice v prostor med baterijo in zgornjo ploščo, majhen greben na spodnji plošči v obroč in dve visoki točki na obroču v zgornjo ploščo. Zdaj lahko zgornjo ploščo trdno privijete in izdelali ste svojega robota!

11. korak: Odprite projekt Xcode

Odprite projekt Xcode
Odprite projekt Xcode
Odprite projekt Xcode
Odprite projekt Xcode
Odprite projekt Xcode
Odprite projekt Xcode

Naslednjih nekaj korakov velja le, če boste uporabljali aplikacijo PiBot Remote, ki zahteva Mac in napravo IOS.

Ker sem poceni in nimam plačanega računa Apple Developer, lahko delim samo projekt Xcode, ne pa tudi same aplikacije. Nato lahko projekt odprete sami, spremenite podpis in ga zaženete v svoji napravi.

Če Xcode še nimate, ga prenesite iz trgovine z aplikacijami na vašem Macu. Ko se Xcode naloži, v spodnjem desnem kotu izberite »Odpri drug projekt« in se pomaknite do mape »PiBot Remote« v prenosu GitHub.

Ko se projekt odpre, kliknite na korensko datoteko v pogledu na skrajni levi strani, imenovano "PiBot Remote".

Spremenite »Bundle Identifier« v nekaj edinstvenega. Moje ime bi lahko zamenjali s svojim ali pa nekaj dodali na konec.

Spremenite ekipo v svoj osebni račun. Če ga nimate, izberite »Dodaj račun«.

Pritisnite ukaz-B za izdelavo in upajte, da vse deluje pravilno. Ko uspešno zgradite projekt, priključite napravo v računalnik. Kliknite gumb na desni strani gumbov za predvajanje in ustavitev v zgornjem levem kotu in izberite svojo napravo.

Pritisnite ukaz-R in aplikacija se mora zagnati v vaši napravi. Vaša naprava bo morda morala preveriti identitete, preden se zažene, in šele takrat bo potrebovala dostop do interneta.

12. korak: Končne prilagoditve

Končne prilagoditve
Končne prilagoditve

Številke pin lahko prilagodite za vse, razen za LED za vklop v aplikaciji PiBot Remote. Če želite spremeniti pin za LED za napajanje, SSH v PI in zaženite ukaz:

/home/pi/Desktop/PiBotRemoteFiles/startup.py

Dva primerka 36 spremenite v kateri koli pin GPIO, ki ste ga uporabili. Nato pritisnite control-X, y, enter.

Aplikacija in strežnik sta nagnjena k napakam. Uporabite konzolo v načinu za odpravljanje napak, da ugotovite, kaj se dogaja. Če ste v dvomih, poskusite znova zagnati Pi in/ali znova zagnati aplikacijo. Včasih se po okvari kode aplikacija ne more znova povezati, ker je naslov že v uporabi. V tem primeru preprosto spremenite vrata in aplikacija se mora povezati.

Ko vozite robota s pospeševalnikom na napravi, morate uporabiti nekaj neprijetnih kretenj za umerjanje, ustavitev/zagon, nastavitev kamere in prikaz/skrivanje vrstice zavihkov

  • Umerjanje: Tapnite in pridržite z dvema prstoma 0,5 sekunde (če vaša naprava to podpira, boste po umerjanju naprave čutili haptične povratne informacije
  • Camera Adjust (Prilagoditev fotoaparata): Najbolj zapletena gesta: naredite, kar je bilo opisano prej, za umerjanje, nato povlecite prste navzgor, da premaknete kamero navzgor, in povlecite navzdol, da premaknete kamero navzdol. Prilagoditev bo izvedena, ko dvignete prste.
  • Preklop Stop/Start: Ko greste na pogled merilnika pospeška, je robot sprva nastavljen tako, da prezre ukaze za premikanje. Če želite preklopiti to nastavitev, se dvakrat dotaknite z dvema prstoma.
  • Prikaži/skrij vrstico z zavihki: če želite omogočiti celozaslonski ogled med vožnjo s merilnikom pospeška, se vrstica zavihkov samodejno skrije po nekaj sekundah. Če ga želite znova prikazati, povlecite navzgor. Če ga želite skriti, povlecite navzdol.

Če ste razočarani nad težavami in nevšečnostmi, povezanimi z mojo aplikacijo, ne pozabite, da nisem imel nobene formalne izobrazbe za programiranje kakršne koli vrste. Zato pozdravljam nasvete in predloge. Prosim, da razcepite moje datoteke GitHub.

Če naredim kakršne koli prilagoditve na GitHubu, jih uporabim za robota tako, da prenesem datoteke in jih pošljem prek rekurzivnega SCP v Pi na ustreznem mestu. Če ste klonirali projekt Xcode, preprosto povlecite spremembo. V nasprotnem primeru lahko prenesete projekt in sledite 11. koraku, da odprete aplikacijo v svoji napravi.

Če s to vadnico naredite kaj zanimivega, mi to sporočite v komentarjih, zanima me, kako jo lahko uporabimo kot predlogo za vse vrste fascinantnih projektov.

Priporočena: