Cuprins:

Robot Raspberry Pi Zero imprimat 3D: 12 pași
Robot Raspberry Pi Zero imprimat 3D: 12 pași

Video: Robot Raspberry Pi Zero imprimat 3D: 12 pași

Video: Robot Raspberry Pi Zero imprimat 3D: 12 pași
Video: В Google AIY Projects добавили естественное человеческое взаимодействие с Raspberry Pi 2024, Iulie
Anonim
Image
Image
Robot Raspberry Pi Zero imprimat 3D
Robot Raspberry Pi Zero imprimat 3D
Robot Raspberry Pi Zero imprimat 3D
Robot Raspberry Pi Zero imprimat 3D

Ați dorit vreodată să construiți un robot, dar pur și simplu nu ați avut toate materialele pentru a construi unul fără a ajunge la un șasiu voluminos inutil? Imprimantele 3D sunt aici pentru a salva ziua! Nu numai că pot crea piese care să fie compatibile cu practic orice hardware, ci o pot face într-un mod foarte spațios. Aici vă voi arăta cum să creați un robot foarte de bază care să conțină piese imprimate 3D, Raspberry Pi Zero și Camera Pi. V-aș încuraja să luați și să modificați ceea ce am făcut pentru a se potrivi nevoilor dvs. practice sau de divertisment. Pentru a controla robotul și pentru a vizualiza fluxul camerei, am construit o aplicație IOS (aplicația PiBotRemote) pe care o poți simți liber să o folosești și să o modifici. Cu toate acestea, puterea reală în astfel de proiecte derivă din diversitatea posibilităților atât în hardware, cât și în software. Așadar, te-aș încuraja să fii creativ și să adaug la ceea ce am făcut în funcție de ceea ce știi să faci. De exemplu, cred că ar fi grozav să-l faci pe acest robot să folosească viziunea automată pentru a-și recunoaște împrejurimile și pentru a naviga similar cu o mașină cu conducere automată.

Pasul 1: Cerințe

Cerințe
Cerințe
  • Materiale

    • Obligatoriu (aproximativ 75 USD)

      • Raspberry Pi Zero W (10 dolari)
      • Card Micro SD (8,25 USD)
      • Antet cu 40 de pini (3,25 USD)
      • Sârme jumper (6,86 USD)
      • Baterie USB (5,00 USD)
      • Motor reductor Micro 900 x / min x 2 (12,95 dolari fiecare)
      • Șofer de motor (4,95 dolari)
      • Roți (6,95 dolari)
      • Rulment cu bile din oțel de 14 mm (0,62 USD)
      • Șuruburi, piulițe și distanțe (vezi mai jos)
    • Opțional (aproximativ 45 USD)

      • LED-uri
      • Cameră Raspberry Pi (29,95 dolari)
      • Adaptor Pi Zero pentru cameră (5,95 dolari)
      • Servomotor (8,95 dolari)
    • Instrumente

      • Imprimantă 3D și filament
      • Computer (voi folosi un Mac și veți avea nevoie de unul dacă doriți să utilizați aplicația PiBot Remote)
      • iPhone / iPad / iPod Touch (Dacă veți utiliza aplicația)
      • Burghiu
      • Șurubelniță cu vârfuri schimbătoare

Mai multe informații despre piese

  • Pi Zero: Dacă doriți să utilizați Pi Zero doar pentru acest proiect, veți fi bine să rulați fără cap tot timpul. În caz contrar, dacă vreți vreodată să conectați o ieșire HDMI sau un periferic USB, va trebui să achiziționați adaptoare suplimentare. În acest caz, este cel mai probabil cea mai rentabilă opțiune de a cumpăra un kit Pi Zero, ca acesta (24 USD), pe care l-am cumpărat de pe Amazon. Deși a trebuit să cumpăr un card micro SD, acest kit a venit cu Pi Zero, ambele adaptoare necesare și multe antete diferite. Toate acestea pot fi utile.
  • Card Micro SD: Puteți utiliza orice card Micro SD, atâta timp cât are un spațiu de stocare de minimum 8 GB.
  • Jumper Wires: îmi plac jumperii ca aceștia, deoarece vin ca un pachet conectat. Acest lucru îmi permite să separ, să zicem, o secțiune cu 9 fire și să conectez cu grijă Pi și driverul motorului.
  • Baterie USB: Bateria pe care am cumpărat-o de la Sparkfun a fost întreruptă de atunci. Ca urmare, va trebui să găsiți unul în altă parte. Cel pe care l-am conectat arăta similar cu al meu, dar nu l-am cumpărat și poate fi necesar să modificați fișierele de imprimare pentru a se potrivi bateriei. Asigurați-vă că găsiți o baterie cu un cablu micro USB atașat, deoarece acest lucru vă permite să vă conectați direct la pi fără exces de sârmă.
  • Driver de motor: aș recomanda utilizarea scafandrului la care am legat, deoarece este destul de ieftin, iar imprimarea este concepută pentru a se potrivi exact acelei plăci. În plus, alte placi pot funcționa diferit și este posibil să aveți rezultate diferite.
  • Minge de oțel de 14 mm: am folosit această minge pur și simplu pentru că se întâmplă să am una așezată. Simțiți-vă liber să utilizați alte dimensiuni, dar poate fi necesar să modificați dimensiunea soclului. Mingea va servi ca a treia roată pentru robotul nostru. Acesta este unul dintre domeniile de proiectare ale robotului meu, care este cel mai problematic în acest moment și care ar putea utiliza cele mai multe îmbunătățiri. Deși funcționează bine pe suprafețe netede și dure, are probleme pe covoare și suprafețe mai aspre. Simțiți-vă liber să schimbați această zonă a designului dvs.
  • Șuruburi, piulițe, separatoare: poate fi necesar să lucrați puțin pentru a găsi șuruburi care funcționează pentru dvs. Pur și simplu am găsit șuruburile care montau Pi-ul, precum și șuruburile care păstrau camera Pi fixată împreună în colecția de șuruburi a tatălui meu. Pentru suporturile și soclurile motorului, am folosit aceste șuruburi (2,95 USD) și aceste piulițe (1,50 USD), ambele disponibile la Sparkfun. Distanțele și cele 8 șuruburi (am inclus din greșeală doar 4 în imagine) care țin robotul laolalt le-am luat din kiturile VEX neutilizate ale școlii mele.
  • LED-uri: Sunt sigur că știți unde puteți găsi cu ușurință câteva LED-uri. Alegeți culorile pe care doriți să le reprezinte funcțiile: putere, conexiune, calea de redare a robotului și robotul care primește instrucțiuni.
  • Camera și Servo: În funcție de ceea ce doriți să faceți cu robotul dvs., puteți alege să nu includeți Camera și Servo, deoarece acestea nu sunt necesare pentru mișcarea de bază și puteți adăuga 45 USD la costul robotului.

Pasul 2: Configurare Pi Zero

Configurare Pi Zero
Configurare Pi Zero

Urmați acest link pentru a configura o instalare fără cap pe Raspberry Pi Zero W

  • Nu uitați că Pi Zero nu se poate conecta la o rețea Wi-Fi de 5 GHz
  • Asigurați-vă că urmați instrucțiunile pentru Raspbian Stretch sau o versiune ulterioară

După ce v-ați conectat cu succes prin SSH la pi, rulați

sudo raspi-config

și modificați următoarele configurații:

  • Schimbați-vă parola. Este foarte periculos să lăsați parola implicită zmeură. Asigurați-vă că vă amintiți această parolă.
  • În Opțiuni de rețea, schimbați numele gazdei din raspberrypi în ceva mai scurt, cum ar fi pizero sau pibot. Voi folosi pibot pentru restul acestui tutorial. Nu uitați să vă amintiți ce ați pus aici.
  • În Opțiuni de încărcare -> Desktop / CLI, selectați Console Autologin
  • Accesați opțiunile de interfață și activați camera

Selectați Finalizare și reporniți dispozitivul.

Pasul 3: configurați rețeaua AdHoc

Prin configurarea unei rețele AdHoc, vom putea conecta dispozitivul nostru de control direct la robot fără intermediari. Acest lucru va permite redarea mai rapidă a videoclipurilor și o latență mai mică a controlului. Cu toate acestea, acest pas nu este necesar, deoarece totul va funcționa în continuare printr-o rețea WiFi normală.

Mai întâi, va trebui să descărcați și să dezarhivați toate fișierele necesare din GitHub. În terminal, navigați la folderul descărcat și trimiteți folderul PiBotRemoteFiles către pi cu comanda:

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

Aceasta trimite toate fișierele necesare robotului care îl va controla și va configura rețeaua AdHoc. Asigurați-vă că fișierele se află într-un folder numit „PiBotRemoteFiles” care se află pe desktop; altfel multe lucruri nu vor reuși să funcționeze pe drum. Dacă utilizați aplicația PiBot Remote, puteți comuta între Wi-Fi normal și o rețea AdHoc în setările aplicației. În caz contrar, îl puteți modifica manual prin SSH cu una dintre următoarele comenzi:

sudo bash adhoc.sh

sudo bash wifi.sh

Desigur, asigurați-vă că ați navigat la folderul PiBotRemoteFiles înainte de a rula comenzile precedente. Orice modificare între AdHoc și Wi-Fi va intra în vigoare numai după următoarea repornire. Dacă este configurat un AdHoc, atunci ar trebui să vedeți o rețea PiBot care apare atunci când se pornește Pi Zero.

Pasul 4: Adăugați un LED de alimentare

Adăugați un LED de alimentare
Adăugați un LED de alimentare

Deși cu siguranță nu este necesar, poate fi util să aveți o lumină de alimentare. Pentru a activa acest lucru, SSH în Pi Zero și rulați comanda:

sudo nano /etc/bash.bashrc

Și adăugați următoarea linie la sfârșitul fișierului:

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

Ulterior vom schimba pinul GPIO asociat cu LED-ul de alimentare.

Pasul 5: Configurarea interfeței web RPi Cam

Configurarea interfeței web RPi Cam
Configurarea interfeței web RPi Cam
Configurarea interfeței web RPi Cam
Configurarea interfeței web RPi Cam

Pentru a accesa fluxul video Raspberry Pi Cameras, vom folosi RPi-Cam-Web-Interface. Informații despre acest modul pot fi găsite aici, iar codul lor se află pe GitHub. Pentru a instala modulul, trebuie mai întâi să ne actualizăm Pi. Acest lucru poate dura până la aproximativ 10 minute.

sudo apt-get update

sudo apt-get dist-upgrade

Apoi, trebuie să instalăm git:

sudo apt-get install git

Și putem instala în cele din urmă modulul:

git clone

RPi_Cam_Web_Interface / install.sh

După instalarea modulului, va apărea o fereastră de configurare. Dacă doriți să adăugați un nume de utilizator și o parolă, asigurați-vă că utilizați același nume de utilizator și parolă ca și contul dvs. pi. În caz contrar, aplicația PiBot Remote nu va putea primi fluxul camerei.

Acum, dacă accesați un browser de pe un dispozitiv din aceeași rețea ca Pi și dacă camera este conectată la pi, puteți primi fluxul accesând https://pibot.local/html/#. Interfața RPi permite controlul ușor al camerei și, atingând sau făcând clic pe videoclip, poate deveni ecran complet. Vom folosi acest lucru mai târziu cu aplicația de la distanță PiBot.

Acum am terminat de configurat Pi Zero, pentru lucrurile distractive!

Pasul 6: Imprimați totul

Tipărește totul
Tipărește totul
Tipărește totul
Tipărește totul

Deși am folosit o imprimantă 3D Dremel cu filament PLA, nu ezitați să utilizați propriile imprimante și materiale. Toate fișierele STL se află în folderul pe care l-ați descărcat de pe GitHub. Am reușit să imprim totul în patru loturi: placa superioară, placa inferioară, toate suporturile și prizele și inelul. Fii creativ în alegerea culorilor și profită din plin de abilitățile imprimantelor 3D. Imprimanta mea nu avea dublă extrudare sau niciun fel de caracteristici fanteziste, dar dacă aveți acces la o astfel de imprimantă, aș recomanda imprimarea decorațiunilor de pe partea superioară a plăcii superioare într-o culoare contrastantă. Probabil că va trebui să limați și să găuriți pentru ca unele piese să se potrivească.

Simțiți-vă liber să pictați placa superioară pentru a face vizibile simbolurile și decorațiunile LED.

Este posibil să fi observat două monturi pe capetele plăcii inferioare care seamănă cu sistemul de montare GoPro. Simțiți-vă liber să le folosiți pentru a atașa orice doriți la partea din față sau din spate a robotului. În fișierul blender, puteți găsi o montură de marker de ștergere uscată pe care am folosit-o, precum și un obiect șablon pe care îl puteți modifica pentru a vă ține obiectul.

De asemenea, nu ezitați să definiți orice direcție ca înainte; Am schimbat de cel puțin trei ori până acum.

Pasul 7: lipire pe anteturi

Solder pe anteturi
Solder pe anteturi
Solder pe anteturi
Solder pe anteturi
Solder pe anteturi
Solder pe anteturi

Deși am ales să lipesc pe anteturi către PiZero, puteți să vă lipiți firele direct pe pi. Dacă alegeți să lipiți anteturile așa cum am făcut-o, aș recomanda să folosiți unul cu un unghi drept ca al meu. Păstrează firele mult mai ascunse și face ca totul să pară mult mai îngrijit.

Acum este timpul să lipiți șoferul motorului. Placa inferioară este concepută special pentru acest driver de motor Sparkfun și permite spațiu pentru ca antetul pinului să iasă în partea inferioară. Acest lucru permite schimbarea ușoară a pinilor motorului, astfel încât să puteți schimba stânga și dreapta și înainte și înapoi. Deși includ pasul următor acum, v-aș recomanda cu insistență să așteptați câțiva pași până când veți ști exact cât trebuie să fie firele dvs. Tăiați o secțiune de 9 fire de știfturi care sunt compatibile cu știfturile de antet pe care tocmai le-ați lipit în pi. Lipiți cu grijă fiecare sârmă, astfel încât grupul să poată să se întindă împreună și să înfășoare bateria. Măsurați lungimea firului în prealabil, astfel încât să nu ajungeți prea puțin sau prea mult.

În cele din urmă, este timpul să lipiți LED-urile. Lipiți-le în locațiile respective de pe placa superioară și pliați toți știfturile la sol unul peste celălalt. Lipiți un fir la pământ și un fir la fiecare LED. De la stânga la dreapta, funcțiile LED-urilor sunt: puterea robotului, conectivitatea aplicației la robot, robotul redă o cale salvată și robotul primește instrucțiuni.

De asemenea, lipiți fire la fiecare motor, astfel încât acestea să poată fi conectate la anteturile provenite de la conducătorul motorului.

Pasul 8: Înșurubați motorul și soclul

Înșurubați motorul și soclul
Înșurubați motorul și soclul
Înșurubați motorul și soclul
Înșurubați motorul și soclul
Înșurubați motorul și soclul
Înșurubați motorul și soclul
Înșurubați motorul și soclul
Înșurubați motorul și soclul

Mai întâi, introduceți fiecare motor într-un suport pentru motor. Apoi introduceți fiecare șurub parțial, până când vârful ajunge la suprafața suportului sau a prizei. Apoi, pentru fiecare șurub, țineți în loc o piuliță de cealaltă parte a plăcii în timp ce strângeți fiecare șurub. Nu uitați să așezați rulmentul între cele două prize în timp ce înșurubați a doua. Așezați driverul motorului în poziția sa și conectați motoarele. Nu contează ce motor este conectat la fiecare ieșire, deoarece puteți schimba cu ușurință acest lucru odată ce robotul este în funcțiune.

Pasul 9: Pregătiți camera și servo

Pregătiți camera și servo
Pregătiți camera și servo
Pregătiți camera și servo
Pregătiți camera și servo
Pregătiți camera și servo
Pregătiți camera și servo
Pregătiți camera și servo
Pregătiți camera și servo

Conectați panglica adaptorului Pi Zero în cameră și înșurubați carcasa camerei împreună. Așezați servo-ul în poziția sa. S-ar putea să găuriți găurile șuruburilor pentru servo, dar este suficient de confortabil. Atașați camera la servo în orice mod găsiți cel mai bine. În prezent, am două găuri în suport, cu o capsă care trece prin claxonul servo și carcasa camerei. Cu toate acestea, acest lucru lasă mult spațiu de mișcare, așa că poate doriți să folosiți super lipici. Îndreptați camera în orice direcție doriți și înșurubați claxonul servo în poziție. Introduceți panglica camerei prin fanta de zmeură și conectați-o la pi. În cele din urmă, pliați panglica pentru a o menține pe baterie.

Pasul 10: Puneți totul împreună

Punând totul împreună
Punând totul împreună
Punând totul împreună
Punând totul împreună
Punând totul împreună
Punând totul împreună
Punând totul împreună
Punând totul împreună

Este în sfârșit timpul ca totul să devină o singură piesă. Conectați firele de la LED-uri, driverul motorului și servo la Pi în așa fel încât să utilizați numai pini valabili, dar țineți-i aproape de ieșirea lor. Apoi puneți firele prin sloturile lor și înșurubați pi în loc. Acest lucru este conceput pentru a se potrivi bine, așa că nu renunțați atunci când se pare că nu există suficient spațiu pentru acele știfturi mari.

Înșurubați fiecare distanță în placa inferioară, astfel încât fiecare să fie sigură. Introduceți bateria și asigurați-vă că cablul de alimentare se poate potrivi prin slot și în portul de alimentare al Pi Zero. Înfășurați firele șoferului motorului în jurul acestuia și montați vârful inelului în jurul tuturor. După ce ați strâns toate firele în spațiul dintre baterie și placa superioară, creasta mică pe placa inferioară în inel și cele două puncte înalte ale inelului în placa superioară. Acum puteți strânge bine placa superioară și v-ați construit robotul!

Pasul 11: Deschideți proiectul Xcode

Deschideți proiectul Xcode
Deschideți proiectul Xcode
Deschideți proiectul Xcode
Deschideți proiectul Xcode
Deschideți proiectul Xcode
Deschideți proiectul Xcode

Următorii pași se aplică numai dacă veți utiliza aplicația PiBot Remote, care necesită un dispozitiv Mac și IOS.

Deoarece sunt ieftin și nu am plătit un cont Apple Developer, pot distribui doar proiectul Xcode, nu aplicația în sine. Apoi puteți deschide singur proiectul, puteți schimba semnătura și îl puteți lansa pe propriul dispozitiv.

Dacă nu aveți deja Xcode, descărcați-l din magazinul de aplicații de pe Mac. După ce Xcode se încarcă, alegeți „Deschideți un alt proiect” în colțul din dreapta jos și navigați la folderul „PiBot Remote” din descărcarea GitHub.

Odată ce proiectul se deschide, faceți clic pe fișierul rădăcină din vizualizarea din partea stângă numită „Telecomandă PiBot”.

Schimbați „Identificatorul de pachet” cu ceva unic. Puteți înlocui numele meu cu al dvs. sau puteți adăuga ceva la final.

Schimbați echipa, în contul dvs. personal. Dacă nu aveți unul, selectați „Adăugați un cont”.

Apăsați comanda-B pentru a construi și sperați că totul funcționează corect. După ce ați construit cu succes proiectul, conectați dispozitivul la computer. Faceți clic pe butonul din dreapta butoanelor de redare și oprire din colțul din stânga sus și selectați dispozitivul.

Apăsați comanda-R și aplicația ar trebui să se lanseze pe dispozitivul dvs. Este posibil ca dispozitivul dvs. să fie nevoit să verifice identitățile înainte de a rula și va avea nevoie de acces la internet numai în acest moment.

Pasul 12: Ajustări finale

Ajustări finale
Ajustări finale

Puteți ajusta numerele de pin pentru orice, cu excepția LED-ului de alimentare din aplicația PiBot Remote. Pentru a schimba pinul pentru LED-ul de alimentare, SSH în PI și rulați comanda:

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

Schimbați cele două instanțe de 36 cu orice pin GPIO pe care l-ați folosit. Apoi apăsați control-X, y, introduceți.

Aplicația și serverul sunt predispuse la erori. Utilizați consola în modul de depanare pentru a afla ce se întâmplă. Dacă aveți dubii, încercați să reporniți Pi și / sau să reporniți aplicația. Uneori, după o eroare de cod, aplicația nu poate să se reconecteze, deoarece adresa este deja utilizată. În acest caz, pur și simplu schimbați portul și aplicația ar trebui să se conecteze.

De asemenea, atunci când conduceți robotul cu acceleratorul pe dispozitivul dvs., trebuie să folosiți câteva gesturi incomode pentru a calibra, opri / porni, regla camera și afișa / ascunde bara de file

  • Calibrare: țineți apăsat cu două degete timp de 0,5 secunde (dacă dispozitivul dvs. îl acceptă, veți simți feedback haptic odată ce dispozitivul a fost calibrat
  • Camera Adjust: Cel mai dificil gest, faceți ceea ce a fost descris anterior pentru a calibra, apoi trageți degetele în sus pentru a muta camera în sus și trageți în jos pentru a muta camera în jos. Reglarea se va face odată ce ridicați degetele.
  • Stop / Start Toggle: Când mergeți la vizualizarea accelerometrului, robotul este setat inițial să ignore comenzile de mișcare. Pentru a comuta această setare, atingeți de două ori cu două degete.
  • Afișați / ascundeți bara de file: pentru a permite vizualizarea pe ecran complet în timp ce conduceți accelerometrul, bara de file se va ascunde automat după câteva secunde. Pentru a o afișa din nou, glisați în sus. Pentru a-l ascunde, glisați în jos.

Dacă sunteți frustrat de problemele și inconvenientele asociate cu aplicația mea, amintiți-vă că nu am avut educație formală în programarea de niciun fel. Așa că salut sfaturi și sugestii. Simțiți-vă liber să vă forțați fișierele GitHub.

Dacă fac ajustări pe GitHub, aplică-le la robot descărcând fișierele și trimitându-le prin SCP recursiv către Pi în locația corespunzătoare. Dacă ați clonat proiectul Xcode pur și simplu trageți modificarea. În caz contrar, puteți descărca proiectul și urmați pasul 11 pentru a deschide aplicația pe dispozitiv.

Dacă faceți ceva interesant cu acest tutorial, vă rog să-mi spuneți în comentarii, sunt interesat să văd cum poate fi folosit ca șablon pentru tot felul de proiecte fascinante.

Recomandat: