Sadržaj:

Pas Bot: Lego Robot Rover sa web kamerom: 17 koraka (sa slikama)
Pas Bot: Lego Robot Rover sa web kamerom: 17 koraka (sa slikama)

Video: Pas Bot: Lego Robot Rover sa web kamerom: 17 koraka (sa slikama)

Video: Pas Bot: Lego Robot Rover sa web kamerom: 17 koraka (sa slikama)
Video: ВСЯ НОЧЬ С ПОЛТЕРГЕЙСТОМ В ЖИЛОМ ДОМЕ, я заснял жуткую активность. 2024, Juli
Anonim
Image
Image

Evo kako napraviti Lego robota kojim možete upravljati sa bilo kojeg ekrana putem WiFi -ja. Također ima web kameru tako da možete vidjeti kamo idete i LED svjetla za oči! Ovo je sjajan projekt za vašu djecu jer mogu izgraditi logotip, a vi ih možete uključiti u onoliko elektronike koliko su oni zadovoljni. Postoji mnogo fleksibilnosti u tome kako implementirate ovaj projekt, a to znači da lako ga možete iseći na komade i ponovo dizajnirati. Bilo mi je korisno kad sam zaglavio da jednostavno počnem iznova. Nakon što ste ovo učinili nekoliko puta, prilično ga je lako i brzo obnoviti iz temelja. Sjajna stvar u vezi s ovim je što ne morate brinuti da ćete "slomiti" bilo što jer ćete razviti vještine za laku obnovu.

Sta ti treba

  • Malina Pi B+
  • Baza i motorni komplet
  • Lego osnovna ploča
  • Super ljepilo industrijske čvrstoće
  • Drill
  • Zanatski nož
  • Oprema za lemljenje
  • sd kartica
  • Čitač SD kartica
  • Komplet kontrolera motora
  • 2 LED diode
  • web kamera srednje cijene (možete isprobati jeftinu)
  • PC i tablet / telefon
  • Wifi usmjerivač kojem imate administratorski pristup
  • Puno lego kockica
  • Punjač za hitne slučajeve
  • 4 žice za preskakanje svaka s najmanje 1 ženskim priključkom
  • 4 AA baterije (dobro se mogu puniti)

Korak 1: Pripremite bazu

Počeo sam s bazom i 2 motora poput ovog motora u Amazonu

Uzmite podlogu od perspeksa i zalijepite tanku Lego podlogu. Za ovo sam koristio super ljepilo industrijske čvrstoće koje se suši za nekoliko minuta i super je jako. Kad je ljepilo fiksirano, odrežite višak Lego osnovne ploče tako da slijedi liniju osnovne ploče od perspeksa. zatim izbušite rupe kroz Lego ploču koje odgovaraju podlozi od perspeksa. Bušio sam rupe kad god mi je trebalo. Sada imate temelj za izgradnju svoje Lego strukture.

Korak 2: Sastavite kotače

Sastavite točkove
Sastavite točkove

Sada sastavite kotače. Slijedite upute proizvođača ovdje. Kotači koje sam kupio imali su sve upute na kineskom, koje ne mogu pročitati, ali bilo je prilično lako shvatiti iz slika. Nakon sastavljanja pričvrstite žice na motore s malim komadom lemljenja.

Korak 3: Pričvrstite kotače na bazu

Pričvrstite kotače na bazu
Pričvrstite kotače na bazu

Zatim pričvrstite kotače na osnovnu ploču, ako je potrebno, možete izbušiti rupe u podnožju. Vjerojatno ćete pred kraj projekta saznati da želite da žice prođu kroz bazu negdje drugdje, ali uvijek možete izbušiti novu rupu i kasnije se preseliti.

Korak 4: Pripremite Pi

Pripremite Pi
Pripremite Pi

Sada pripremite PI. Koristio sam model B+ sa USB wifi ključem. Koristio sam Full Desktop sliku zasnovanu na Debian Jessie koju možete preuzeti sa Raspbian Pi stranice. Vrijedno je stvoriti SD karticu od nule i držati sliku diska pri ruci jer možete lako započeti iznova. Možda ćete morati malo proguglati da biste shvatili kako stvoriti sliku diska na računaru. Sliku sam stvorio koristeći Ubuntu ovako: Desnim tasterom miša kliknite sliku diska i odaberite "otvori sa pisačem slika diska". Zapišite sliku na SD karticu. Slika diska je prilično mala, pa ako imate veću SD karticu (npr. 30 GB), možete koristiti softver za particioniranje poput GParteda kako biste iskoristili sav raspoloživi prostor. Nakon što ste shvatili kako to učiniti, potrebno je oko 5 minuta i zaista se isplati kao da ste pokvarili softver, možete ga jednostavno ponovo instalirati.

Korak 5: Montirajte upravljačku ploču

Montirajte upravljačku ploču
Montirajte upravljačku ploču

Zatim vam je potrebna kontrolna ploča motora. Koristio sam komplet iz RyanTeka. Dolazi s izvrsnim vodičem za lemljenje, ali mislim da ga možete dobiti i pred lemljenje. Ako do sada niste lemili, ne brinite, samo polako i vježbajte prije nego što počnete na ploči motora.

Sada spojite bateriju (sa 4 AA baterije) i motore gore na upravljačku ploču, a zatim pričvrstite kontrolnu ploču na GPIO pinove Pi -a. Opet će vam kontrolna ploča dati više detalja. Ne brinite o postavljanju odgovarajućih žica motora u prave utore, sve dok nisu spojeni na priključke za istosmjernu struju. Ne lijepim niti pričvršćujem Pi ili bateriju na Lego ploču jer vam to daje veću fleksibilnost pri dizajniranju Lego kućišta. Takođe možete lako promeniti dizajn dok napredujete.

Korak 6: Počnite s izgradnjom Lego tijela

Počnite graditi Lego tijelo
Počnite graditi Lego tijelo
Počnite graditi Lego tijelo
Počnite graditi Lego tijelo

Sada je vrijeme za izradu Lego kockica. U ovom trenutku možete uključiti zaista malu djecu, sve dok mogu držati komad Lega! Počeli smo sa samo osnovnim kvadratnim kućištem dok sve nije funkcioniralo, a zatim smo postali avanturističniji sa psećim botom. Sjajna stvar ovdje je što možete obnoviti tijelo robota koliko god želite. Počnite stvaranjem doma za Pi. Ne zaboravite ostaviti mjesta za USB portove i kablove za napajanje. Ugradite priličnu količinu labavosti u bilo koje stanovanje koje gradite. U redu je da stvari malo zveckaju i ne možete biti previše precizni s Lego kockicama.

Koristili smo Lego prozore za omogućavanje pristupa USB priključcima koji će vam kasnije trebati.

Korak 7: Pripremite Pi

Sada je pravi trenutak za pokretanje Pi -a i pokretanje robota.

Razvijao sam kôd za korištenje s ovim projektom na Git hubu. Pročitajte me na stranicama git hub -a provest će vas kroz upute o tome kako instalirati sav softver na Pi, ali ću vas provesti i kroz korake ovdje.

Prvo pokrenite Pi uključivanjem kabela za napajanje. Morat ćete spojiti HDMI kabel na televizor i koristiti USB tastaturu i miša. Prva stvar je da se povežete na svoj WiFi. to radite klikom na ikonu u gornjem desnom kutu Raspian radne površine i dokazujete detalje. Jednom kada se povežete na Wifi, sve ostalo možete raditi iz komandne linije, pa ako želite, možete se povezati s Pi -om pomoću ssh -a, ali za sada, budući da smo povezani s televizorom, možemo otvoriti terminal sa Raspian radne površine.

Korak 8: Instalirajte softver na Pi

Otvorite terminal na Pi i upišite sljedeće naredbe.

sudo apt-get update

Ovo ažurira Raspian najnovijim softverom.

Zatim instalirajte softver za web kameru

sudo apt-get install motion

U ovom trenutku morate konfigurirati kretanje. Naveo sam šta treba ažurirati u kojim datotekama na stranicama github -a. Postoji i uputstvo o tome kako web kamera raditi na vašem Pi. Upoznajte postavke i igrajte se s njima kad vam bude ugodno s postavkama.

sudo apt-get install python-dev python-pip

Ovo instalira Python biblioteke, a takođe i upravitelja pakovanja softvera python.

sudo pip install 'pubnub> = 4.1.2'

Ovo instalira Pubnub, softver koji upravlja razmjenom poruka između kontrolne ploče i vašeg bežičnog robota.

Instaliranje ovog dijela traje neko vrijeme, pa idite i skuhajte šalicu čaja !!

Korak 9: Instalirajte softver robota

Sada ste instalirali sve bitne dijelove softvera, vrijeme je da instalirate kôd potreban za pokretanje robota.

git clone

ovo će stvoriti mapu lego-robot u vašem kućnom direktoriju.

Prije nego što možete pokrenuti kôd robota, morate stvoriti PubNub račun i nabaviti ključ za objavljivanje i pretplatu. to možete učiniti slijedeći upute za početak rada na PubNub -u. Nakon postavljanja morate otvoriti dvije datoteke:

  • lego-robot/server/keys.py
  • lego-robot/client/keys.js

i zamijenite pub i sub ključeve ključevima koje možete nabaviti s nadzorne ploče pubnub.

Imajte na umu da vrijednost kanala može biti bilo što, sve dok se podudara na klijentu i poslužitelju.

Korak 10: Instalirajte softver kontrolera i provjerite radi li sve

Instalirajte softver kontrolera i provjerite radi li sve
Instalirajte softver kontrolera i provjerite radi li sve
Instalirajte softver kontrolera i provjerite radi li sve
Instalirajte softver kontrolera i provjerite radi li sve

Na računaru klonirajte git hub kôd na isti način kao i mi na robotu.

git clone

Možda git nije instaliran na vašem računaru. Ako nije, slijedite upute na git hubu.

Imate i mogućnost preuzimanja koda kao zip datoteke, iako bih savjetovao instaliranje GIT -a i kopiranje datoteka kloniranjem spremišta.

morat ćete ažurirati datoteku lego-robot/client/keys.js sa svojim ličnim ključevima za objavljivanje i pretplatu.

Kada završite, otvorite datoteku lego-robot/client/buttons.html u web pregledniku. Sada biste trebali moći upravljati svojim robotom pomoću kontrolnih tipki.

Gornji dijagram prikazuje šta se dešava:

  • Kada pritisnete dugme, poruka se šalje na pubnub (pomoću ključa za objavljivanje)
  • PubNub zatim prosljeđuje robotu koji …
  • Sluša (koristeći tipku za pretplatu) poruke
  • Robot se zatim prevodi u radnju.

Koristio sam pubNub kao besplatan, brz (u stvarnom vremenu) i uvelike pojednostavljuje slanje i primanje poruka pomoću zaista lijepog API -ja.

Možete kopati u klijentskom i poslužiteljskom kodu i vidjeti poruke koje se šalju pomoću jednostavnih ključeva poput "naprijed" i "natrag".

Na lego-robot/client/joystick.html takođe postoji kontroler u stilu džojstika.

Poboljšat ću ove kontrolere i stalno dodavati nove, pa ako ikada poželite ažurirati softver, možete koristiti naredbu "git pull". Molimo vas da i sami doprinesete git spremištu i stvorite kontrole prilagođene korisnicima.

Sada ste spremni provjeriti radi li kretanje u redu. Na terminalu Pi promijenite direktorij u lego-robot/server i upišite:

sudo python robot.py

ovo pokreće python skriptu za osluškivanje dolaznih poruka iz Pubnuba.

Sada pokušajte pritisnuti neke tipke na kontroleru, trebali biste vidjeti ove odgovore primljene na Pi terminalu (kao što je prikazano na gornjoj slici), a robot.py prevodi ove poruke u pokrete preslikavajući ih u signale na Pi GPIO.

Trebali biste moći kretati robota.

Korak 11: Pripremite web kameru i LED svjetla

Pripremite web kameru i LED svjetla
Pripremite web kameru i LED svjetla
Pripremite web kameru i LED svjetla
Pripremite web kameru i LED svjetla

Možete koristiti bilo koju web kameru koja je kompatibilna s Linuxom (većina njih je). Ja bih se odlučio za model srednje klase (oko 15 funti) jer sam isprobao zaista jeftin i od njega nisam mogao dobiti nikakvu jasnu sliku. Prvi korak je rastavljanje web kamere tako da imate samo osnovnu ploču i kameru.

Ako želite instalirati svjetla, uzmite LED svjetlo i spojite dvije žice za preskakanje na svaki terminal. Koristio sam žice za preskakanje koje imaju ženski terminal na jednom kraju, tako da ih kasnije možete jednostavno priključiti na Pis GPIO pinove. Drugi kraj žice morate ogoliti da biste uklonili terminal. Ovdje možete i lemiti kako biste uspostavili sigurnu vezu. Koristio sam i neke termoskupljajuće folije, koje možete koristiti za pokrivanje svake žice, iako se ne bih brinuo da ću to previše dobro obaviti sve dok ne budete sretni što sve radi, tada možete završiti i poboljšati. Također je dobra ideja upotrijebiti otpornik kako biste spriječili da LED upali.

Ovdje se nalaze detaljna uputstva koja detaljno opisuju kako spojiti LED diode.

Kao što prikazuje slika, koristim Lego blok s rupom kao jednostavan način za postavljanje LED diode na glavu robota.

Korak 12: Kreirajte glavu pomoću brega za nos i svjetla

Napravite glavu pomoću brega za nos i svjetla
Napravite glavu pomoću brega za nos i svjetla
Napravite glavu pomoću brega za nos i svjetla
Napravite glavu pomoću brega za nos i svjetla
Napravite glavu pomoću brega za nos i svjetla
Napravite glavu pomoću brega za nos i svjetla

Napravite kućište glave za kameru. Ovdje neću biti previše specifičan jer je vrijeme da budete kreativni. Međutim, morate graditi oko kamere. Dog bot integrira kameru u nos i ima oči kao LED diode. Svakako ostavite rupu na stražnjoj strani glave kako biste izvukli žice.

Korak 13: Dovršite tijelo

Završite telo
Završite telo
Završite telo
Završite telo
Završite telo
Završite telo

Sada ste sretni što se pseći bot u osnovi kreće, možete stvoriti kućište za baterije. Koristio sam paket od 4 AA baterije (isporučene s kotačima i postoljem) i paket punjača za hitne slučajeve. AA baterije služe za istosmjerne motore za kotače, a paket mobilnih telefona za Pi. Dobra je ideja učiniti baterije lako dostupnima jer ćete im morati pristupiti radi punjenja i zamjene.

Kad budete sretni, postavite krov nad Pi. Ne brinem previše o skrivanju žica i strujnih krugova, jer je to dio slike robota. Međutim, u ovom trenutku sve ovisi o vama. Možda biste trebali razmotriti koliko vaš bot postaje sve teži, što se sporije kreće.

Korak 14: Montirajte glavu

Montirajte glavu
Montirajte glavu
Montirajte glavu
Montirajte glavu
Montirajte glavu
Montirajte glavu

Vrijeme je da sve povežete.

Spojite USB kabel web kamera na prednju stranu bota, koristeći pristupne rupe koje ste stvorili. Robot možete pričvrstiti žicom tako što ćete stvoriti Lego kućište. Skratio sam i USB kabel tako što sam ga izrezao i ponovno lemio, ali to učinite samo ako zaista imate potrebu za lemljenjem 4 male žice zajedno. Možda bi bilo lakše kupiti kratki USB kabel i ponovo ga spojiti na stražnju stranu fotoaparata.

Također morate spojiti LED svjetla na Pin GPIO pinove koje ne preuzima kontroler ploče motora. Ovo su GPIO pinovi 20 i 21 i dva rezervna uzemljenja u blizini. Upotrijebite rezervne igle za uzemljenje u blizini. Ako svjetlo ne radi, pokušajte prebaciti okruglo tlo pomoću GPIO izlaza. Da biste utvrdili koje pinove treba spojiti na google dobar GPIO dijagram.

Korak 15: Testirajte LED diode i nosač nosa

Testirajte LED diode i kameru nosa
Testirajte LED diode i kameru nosa

Za pokretanje softvera za web kameru upišite:

sudo motion

Također provjerite jeste li pokrenuli skriptu robot.py (kako je detaljno opisano u uputama previuos):

sudo python robot.py

Sada biste trebali moći koristiti prekidač za svjetla na kontroleru za paljenje i gašenje svjetla.

Web kamera trebala bi emitirati na vašoj IP IP adresi na portu 8080, pa na primjer upišite sljedeće u svoj web preglednik.

192.168.1.2:8081

Pi IP adresu sam pronašao prijavljujući se na svoj usmjerivač kao administrator i gledajući povezane uređaje. Upute o tome kako to učiniti obično se nalaze na stražnjoj strani usmjerivača ili pogledajte upute za usmjerivače na mreži.

možete istražiti konfiguracijske postavke softvera za kretanje, kako je opisano u prethodnom koraku. Smatram da se streaming ponekad zaustavi, ali općenito radi u redu.

Ovom video streamu možete pristupiti sa bilo čega što ima preglednik povezan na vašu WiFi mrežu.

Korak 16: Dovršavanje

Pristup na mreži

Sada biste trebali moći upravljati robotom iz preglednika na računaru. Međutim, lijepo je što možete kontrolirati robota s bilo kojeg dodirnog uređaja poput iPad -a ili telefona.

Da biste to učinili, morate smjestiti klijentske datoteke (buttons.html itd.) Na web poslužitelju.

Počeo sam s instaliranjem web servera na Pi, koji radi u redu. Međutim, lakše je samo prenijeti HTML datoteku na bilo koji drugi web poslužitelj. Jednostavno sam kopirao HTML datoteku na svoj javni plavi račun domaćina. Možda biste htjeli pristup datotekama za zaštitu datoteka jer sadrže pub ključeve vašeg pub nub kanala. Nakon što to učinite, možete pristupiti kontroleru sa bilo kojeg uređaja, čak i izvan vaše kuće.

Automatsko pokretanje

Još jedna korisna stvar koju treba učiniti je ažuriranje / etc / rc.local skripte na vašem maline Pi; dodajući ova dva reda:

  • sudo motion
  • nohup sudo python /home/pi/lego-robot/server/robot.py &

Oni će se pokrenuti svaki put kada se Pi pokrene, tako da ne morate ručno pokretati naredbu.

Korak 17: Zabavite se

Zabavi se !
Zabavi se !

To je sve.

Ostavite komentare ako zaglavite, a ako želite poboljšati bilo koji softver, pridružite se github spremištu. Nastavit ću raditi na ovom projektu i evo nekoliko ideja:

  • Kontroler u stilu "big trak" u kojem programirate niz naredbi poput "lijevo 10, naprijed 6, nazad 2 …", a zatim pritisnite "pokreni" i robot izvršava naredbe.
  • Naginjući vrat, tako da možete gledati prema gore pomoću web kamere
  • Zvučnik koji prevodi tekst iz kontrolera u govor
  • Upravljanje glasom

Živjeli

Peter

Preporučuje se: