Kazalo:
- Korak: Stvari, ki jih boste potrebovali
- Korak: Telo robota
- Korak: Glava in obraz robota
- 4. korak: PCB po meri
- 5. korak: Napajanje
- 6. korak: Končna montaža
- 7. korak: Programska oprema
- 8. korak: Kode
- 9. korak: Demo
Video: Tinku: osebni robot: 9 korakov (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:05
Avtor sw4pFollow Več avtorja:
Pozdravljeni, Tinku ni samo robot; je osebni robot. To je vse v enem paketu. Lahko vidi (računalniški vid), posluša (obdelava govora), se pogovarja in se odzove na situacijo. Lahko izrazi čustva in seznam stvari, ki jih lahko počne, se nadaljuje. Dal sem mu ime; Imenujem ga Tinku.
Kratek uvod o tem, kaj lahko naredi
-
Računalniški vid
- Zaznavanje obrazov
- Sledenje obrazu
- Fotografirajte in posnemite video
- Prepoznajte označevalce ArUco
- Obdelava govora
- Obdelava govora brez povezave (zaznavanje vročih besed)
- Lahko razume, kaj govorite, tako da zazna Hotwords.
- Izražajte čustva
- Premika glavo za neverbalno komunikacijo in izražanje čustev.
- Na svojem zaslonu prikazuje slike in gife, ki podpirajo trenutno razpoloženje.
-
Premikanje naokoli
Lahko teče naokoli s kolesi in identificira mesta z oznakami ArUco
-
Izogibanje oviram
Ima sonarne senzorje, zato se vedno zaveda svojega okolja in se lahko izogne oviram
Lahko naredi veliko več stvari. Izvedete lahko tudi, katere nove funkcionalnosti želite.
Dovolj govora.
EDIT: Tinkovo telo je začelo razpokati, zato sem ga moral popolnoma preoblikovati. Tu so nove slike, popolnoma sveže in boljše Tinku. Žal nimam slik korakov prenove Tinkuja.
Korak: Stvari, ki jih boste potrebovali
Robotovo telo
- Akrilna plošča
- MDF plošča
- Majhne L sponke
- Paket vijakov in matice
Servomotorji, motorji in kolesa
- Dynamixel AX-12A (3 kosi)
- Komplet vijakov in matic iz bioloida
- Motorji (2 kosa)
- Skladbe (2 pakiranja)
- Gosenična kolesa (4 kosi)
- L objemke za motorje (2 kosa)
- L objemka za lažno gred kolesa (2 kosa)
- Lažna gred kolesa (2 kosa)
- Bioloidni okvir F8
- Bioloidni okvir F3 (2 kosa)
- Bioloidni okvir F2
- Bioloidni okvir F10
Elektronika
- Arduino
- Raspberry Pi ali Udoo Quad
- Voznik motorja
- Spletna kamera Logitech-c270 (ima vgrajen mikrofon)
- Ultrazvočni senzorji razdalje (6 kosov)
- Lipo baterija (3300 Mah 3S)
- Regulator napetosti (DC-DC)
- Nadomestni regulator napetosti (DC-DC)
- Zaslon na dotik (7 palcev)
- Zvezdišče USB (samo, če uporabljate Udoo Quad, ker ima samo 2 vrata USB)
- 7404 šestkotni pretvornik IC
- 74HC244 IC
- 14 -polna IC osnova
- 20 -polna IC osnova
Priključki in kabli
- Moški priključek za baterijo T-plug
- Prilagodljiv kabel HDMI (samo če ima vaš zaslon priključek HDMI)
- Kabel mikro USB
- Tri zatiči ženski-ženski klimatski kabel (6 kosov)
- Moški vtič DC sodček (2 kosa)
- Servo priključki Dynamixel (3 kosi)
- Kabel USB A do B (samo če ni priložen Arduinu)
- Mostične žice
- Žice za ploščice
- Burg trakovi
Za izdelavo PCB -jev
- Bakren laminat
- Jedkalec iz PCB (Fecl3)
- Perforirano PCB
- 1 mm sveder
Razno
- Lepilo
- Hladilne cevi
- Ostanki
Opomba: Tukaj uporabljam ploščo Udoo, ker ima boljšo računalniško hitrost kot moja malina pi 2. Uporabljam zunanji Arduino in ne vgrajen Arduino plošče Udoo, ker so vsi moji senzorji in moduli združljivi s 5V, Arduino pa v Udoo plošča je združljiva s 3V.
Korak: Telo robota
Za pripravo telesa robota sem uporabil akrilno folijo in jo razrezal v določeni velikosti, da sem naredil strukturo, podobno škatli. Na sliki sem omenil dimenzijo vsake strani telesa.
- Akrilno pločevino odrežite glede na določeno velikost.
- Na določenih mestih izvrtajte luknje za pritrditev motorjev, senzorjev, odmikov in povezovanje vsake plošče skupaj.
- V osnovni plošči in zgornji plošči izvrtajte večjo luknjo za prehod kablov.
- Na spodnji strani sprednje in zadnje plošče naredite majhno zarezo, tako da lahko preidejo žice, ki prihajajo iz ultrazvočnega senzorja.
Čas je za pripravo in montažo motorjev in gosenic.
- Spajate dodatne žice na zatiče motorja, tako da lahko žica doseže gonilnike motorja.
- Objemke motorja in spone lažnih kolesnih gredi namestite na osnovno ploščo robota.
- Motorje in lažno gred koles povežite s sponkami, nato pa povežite kolesa.
- Sestavite skladbe in naredite zanko.
- Trak na kolesih. Ne pozabite, da proga ni ohlapna in ima dovolj napetosti.
Zdaj povežite sprednjo, zadnjo in eno stransko ploščo na osnovni plošči z majhnimi sponkami L. Zgornje plošče in ene stranske plošče ne nameščajte tako, da imamo dovolj prostora za namestitev elektronike na robota.
Korak: Glava in obraz robota
Robotu smo že dali telo in kolesa. Zdaj je čas, da mu podarimo glavo, vrat in obraz.
Vrat:
Najbolj zapleten del glave robota je vrat. Zato ga bomo najprej pripravili. Delo s servomotorji Dynamixel je nekoliko zmedeno, vendar so zanesljivi in vzdržljivi. Za to je na voljo veliko pritrdilnih sponk, tako da jih lahko povežete na kakršen koli način.
Oglejte si ta videoposnetek za boljšo razlago, kako povezati servomotorje dynamixel skupaj.
- Vstavite matice v servomotorje dynamixel, da jih pritrdite z okvirji.
- Okvir bioloida F8 postavite na sredino zgornje plošče in označite vrtalne luknje ter jih izvrtajte.
- Okvir bioloida F8 pritrdite na enega od servomotorjev, nato okvir bioloida F8 pritrdite na zgornjo ploščo.
- Pridružite se vsakemu servomotorju skupaj z različnimi okvirji in pripravite vrat.
- Povežite servomotorje med seboj s pomočjo tri-polnih servo-priključkov dinamixel.
Oči in uho:
Spletno kamero Logitech-c270 uporabljam kot oko za svojega robota. To je dobra kamera, ki lahko fotografira in snema video posnetke v ločljivosti 720p. Vgrajen ima tudi mikrofon, zato postane tudi uho za mojega robota. Po dolgem brainstormingu sem ugotovil, da je fotoaparat najbolje namestiti na vrhu zaslona. Toda za namestitev kamere potrebujem nosilec za kamero. Torej naredimo enega.
- S spletne kamere odstranite kovinske kose, ki ji dajejo nekaj teže.
- Iz MDF plošče izrežite dva kosa, enega kvadratnega in enega trikotnika z dimenzijami, ki so prikazane na sliki.
- Izvrtajte luknjo na dnu spletne kamere in na kvadratnem MDF -ju. Na kvadratnem kosu naredite zarezo, da vanj vstavite žico spletne kamere.
- Kose MDF zlepite skupaj, da tvorijo T-obliko. Nosilec kamere je pripravljen.
- Preden pritrdite nosilec fotoaparata in fotoaparat skupaj, najprej pripravite glavo.
Vodja:
Glava robota je povezana s servomotorji. Biti mora čim lažji, da glava ne obremenjuje servomotorjev. Zato sem namesto akrilne pločevine uporabil ploščo MDF.
- Odrežite kos MDF plošče z dimenzijami (18 cm x 13 cm) in izvrtajte luknje za pritrditev zaslona.
- Bioloidni okvir F10 postavite na sredino MDF plošče, označite vrtalne luknje in jih izvrtajte.
- Bioloidni okvir F10 in bioloidni okvir F2 postavite na vsako stran MDF plošče in ju združite skupaj z matico in vijakom.
- Zdaj prilepite nosilec kamere na zadnjo stran plošče.
- Pridružite se bioloidnemu okvirju F2 s koncem servo konfiguracije.
- Zaslon na ploščo MDF pritrdite s pomočjo stojal.
- Spletno kamero pritrdite na nosilec kamere.
Zdaj sta naša glava in obraz robota popolna.
4. korak: PCB po meri
Zdaj je čas, da raztopimo nekaj fecl3 in jedkamo nekaj PCB.
Zakaj sem izdelal PCB po meri?
- Nimam servo krmilnika dynamixel, zato ga moram narediti.
- Na Arduino moram na čistejši način priključiti veliko senzorjev, zato sem za Arduino naredil ščit.
Naredimo.
- Prenesite datoteke PCB in jih natisnite na bakreno obložen laminat.
- S pomočjo fecl3 odstranite bakreno obložen laminat
- Izvrtajte 1 mm luknje za pritrditev IC in trakov.
- Če želite, da glave za zlaganje ščitov zdrsnejo po plastičnih zamaških burg traku proti koncu zatičev.
- Spajate IC -baze in burg trakove na tiskanih vezjih.
- Sheme sem predložil za referenco.
Opomba - S programsko opremo Express PCB odprite datoteko.pcb in Express SCH, da odprete datoteko.sch.
5. korak: Napajanje
Ohranjanje konstantne moči v različnih elektronskih modulih in motorjih robota je zelo potrebno. Če moč v katerem koli modulu pade pod mejno vrednost, bo to povzročilo napako in je zelo težko ugotoviti razlog za to.
Primarni vir energije v tem robotu je 3S Lipo baterija 2200mAh. Ta baterija ima tri celice, izhodna napetost pa je 11,1 volta. Plošča Udoo potrebuje 12v napajanje, plošča Arduino pa 5v. Zato sem se odločil za uporabo dveh regulatorjev napetosti, enega stopnjevalnega, drugega pa stopnjevalnega. Eden bo ohranil trenutno napajanje za vse 12 -voltne module, drugi pa za vse 5 -voltne module.
Slika vsebuje ročno narisane sheme.
- Spajate regulatorje napetosti na perforiranih PCB ploščah.
- Spojite priključek moške baterije T-plug na vhod obeh regulatorjev napetosti.
- Priključite "ozemljitveni" izhod obeh regulatorjev.
- Na vsak izhod regulatorja priključite enosmerne priključke. Dolžina žic naj bo dovolj dolga, da lahko doseže ploščo Udoo/Raspberry Pi in Arduino.
- Spajkajte burg trak na vsak izhod regulatorja kot dodatno izhodno moč, če jo v prihodnji spremembi potrebujemo.
- Preden priključite napajalnik na kateri koli elektronski modul, kalibrirajte izhod vsakega regulatorja s priloženim potenciometrom za nastavitev na natančno 12v in 5v.
6. korak: Končna montaža
Zdaj je čas. Po toliko korakih je čas, da sestavite vsak modul skupaj. Navdušen? No, jaz sem.
- Izrežite pravokoten kos MDF plošče dimenzij (30 x 25 cm). Ta plošča je osnova za namestitev elektronskih modulov. V osnovni akrilni plošči ne želim izvrtati veliko lukenj, zato uporabljam MDF ploščo. Pomaga tudi pri skrivanju žic pod njim, da bo naš robot videti čist in čist.
- Položite module na ploščo MDF in označite montažne luknje ter jih izvrtajte. Naredite nekaj dodatnih lukenj za prehod žic pod ploščo MDF.
- Nekaterim luknjam sem dodelil številke, zato jih lažje napotim in vi razumete sheme ožičenja.
Napajanje:
- Napajalni modul namestite na ploščo in vtičnico 12v in 5v prenesite skozi luknjo številka 1 in izvlecite vtičnico 12v skozi luknjo številka 2 in izvlecite vtičnico 5v skozi luknjo številka 3.
- Baterijo sem zaenkrat pustil ohlapno, ker jo moram včasih odstraniti in napolniti.
Voznik motorja:
- Žice, povezane z motorji, izvlecite skozi luknjo št. 4 in jih povežite z voznikovo ploščo motorja.
- Motorji za pravilno delovanje potrebujejo 12 -voltni napajalnik, zato povežite 12 -voltni in GND -pin gonilnika z izhodom regulatorja napetosti 12v.
- Zatiče gonilnika motorja priključite na Arduino v skladu s kodo.
Arduino:
- Pred namestitvijo Arduina prenesite žice treh ultrazvočnih senzorjev skozi zadnjo ploščo, žice preostalih treh ultrazvočnih senzorjev pa skozi sprednjo ploščo in jih izvlecite skozi luknjo številka 3.
- Namestite Arduino in nanj pritrdite senzorski ščit.
- Vsem ultrazvočnim senzorskim žicam sem dal številke, tako da jih je mogoče enostavno odpraviti v primeru kakršne koli napake. Nožice senzorja priključite na ščit zaporedno od številke 1 do 6 zaporedoma.
- Priključite 5 -voltni vtič na Arduino.
Servo krmilnik Dynamixel:
- Servo krmilnik dynamixel namestite na ploščo.
- Povežite 12v in GND pin servo krmilnika z izhodom regulatorja napetosti 12v.
- Povežite 5v in GND pin servo krmilnika z izhodom regulatorja napetosti 5v.
- Povežite nožice servo krmilnika in Arduino v skladu s kodo.
- Izhodni zatič servomotorja zaenkrat pustite izklopljen. Priključite ga po namestitvi zgornje plošče robota.
Udoo / Raspberry Pi:
Opomba: Preden sledite spodnjim korakom, se prepričajte, da ste operacijski sistem že namestili na kartico MicroSD in ga postavili na ploščo Udoo / Raspberry Pi. Če ne, sledite povezavam za namestitev Raspbiana na Raspberry Pi ali Udoobuntu na ploščo Udoo.
- Na ploščo namestite Udoo / Raspberry Pi in nanjo priključite vtičnico.
- Če uporabljate Udoo, priključite zvezdišče USB v enega od priključkov USB.
- Vanj priključite kabel HDMI in kabel mikro USB. Ti zatiči se uporabljajo za dobavo podatkov in napajanje na zaslon.
- Priključite Arduino na Udoo / Raspberry Pi s kablom USB A do B.
Zgornja plošča:
- Z uporabo sponk L pritrdite zgornjo ploščo na stransko, sprednjo in zadnjo ploščo robota.
- Priključite kabel HDMI, kabel mikro USB na zaslon in spletno kamero na ploščo Udoo / Raspberry Pi.
- Priključite tri-polni servo-konektor, ki prihaja iz osnovnega dinamixel-servo-servo upravljalnika. Pazite, kateri pin je DATA, GND in +12v. Za boljšo referenco si oglejte slike v razdelku "Glava in obraz robota". Če žice priključite v nasprotnem vrstnem redu, lahko poškodujete servomotorje.
Ultrazvočni senzorji razdalje:
Zadnji del sestavljanke. Po tem je naša montaža skoraj končana.
- Izrežite šest pravokotnih kosov MDF plošče/akrilne pločevine z dimenzijami (6 cm x 5 cm).
- V njih izvrtajte luknje na zahtevanih mestih.
- Ultrazvočne senzorje pritrdite na vsako ploščo in pritrdite vse plošče z osnovno ploščo robota.
- Senzorje povežite s priključki.
Končno je končano. Priključite baterijo in zaženite Udoo/Raspberry Pi
7. korak: Programska oprema
Strojna oprema je popolna, toda brez programske opreme je ta robot le škatla. Seznam programske opreme, ki jo potrebujemo, je
- TightVNC
- Python
- OpenCV
- Snežni deček
-
Nekaj paketov python
- Pyautogui
- numpy
- pyserial
- pyaudio
TightVNC:
TightVNC je brezplačen paket programske opreme za daljinsko upravljanje. S programom TightVNC lahko vidite namizje oddaljenega računalnika in ga upravljate z lokalno miško in tipkovnico, tako kot bi to počeli pred računalnikom.
Če imate dodatno tipkovnico in miško, je to dobro. Če ne, namestite TightVNC v prenosni računalnik in sledite tem korakom.
Prvič povežite tipkovnico in miško z Udoo / Raspberry Pi. Povežite se z omrežjem wifi. Odprite terminal in vnesite
$ ifconfig
- Zapišite si naslov IP robota.
- Odprite TightVNC v prenosnem računalniku. Vnesite naslov IP v zahtevano polje in pritisnite Enter. Voila! Zdaj ste povezani. Za dostop do robota uporabite sledilno ploščico in tipkovnico prenosnega računalnika.
Python:
Python je zelo priljubljen in vsestranski jezik, zato ga uporabljam kot primarni programski jezik za tega robota.
Tukaj uporabljam python 2.7, če pa želite, lahko uporabite tudi python 3. Na srečo je Python vnaprej nameščen v operacijskem sistemu Udoobuntu in Raspbian. Zato nam ga ni treba namestiti.
OpenCV:
OpenCV je odprtokodna knjižnica, namenjena predvsem računalniškemu vidu v realnem času. OpenCV s Pythonom je zelo enostaven za uporabo. Namestitev programa OpenCV je nekoliko okorna, vendar je na voljo veliko zelo enostavnih navodil. Moj osebni favorit je tale. Ta priročnik je za Raspberry Pi, lahko pa ga uporabite tudi za ploščo Udoo.
Snežni deček:
Snowboy je knjižnica, ki so jo napisali Kitt.ai fantje in je namenjena predvsem obdelavi govora brez povezave/zaznavanju vročih besed. Je zelo enostaven za uporabo. Sledite tej povezavi, da namestite snowboya na Raspberry Pi. Če uporabljate ploščo Udoo, pojdite na ta projekt, ki ga je napisal meto, da namestite snowboya v Udoo.
Paketi Python:
Upoštevajte te preproste priročnike za namestitev nekaterih paketov python.
- Pyautogui - Pyautogui je paket za simulacijo pritiskov tipk na tipkovnici ali premiku miške.
- Numpy - vnesite "pip install numpy" v lupino Linuxa in pritisnite enter. Tako preprosto je.
- Pyserial - Pyserial je paket, namenjen serijski komunikaciji prek pythona. Uporabili ga bomo za komunikacijo z Arduinom.
8. korak: Kode
Strojni del je končan. Del programske opreme je dokončan. Zdaj je čas, da temu robotu podarimo dušo.
Kodirajmo.
Koda za tega robota je nekoliko zapletena in trenutno mu dodajam še več funkcionalnosti. Zato sem kode gostil v svojem skladišču Github. To lahko preverite in od tam klonirate/naložite kode.
Zdaj to ni samo robot; zdaj je Tinku.
9. korak: Demo
Demo. jeeeee !!
To je nekaj osnovnih predstavitev. Prihaja še veliko bolj zanimivih.
Ostanite z nami za več posodobitev in če dvomite, vas prosimo, da komentirate.
Hvala, ker ste prebrali moj projekt. Ti si neverjeten.
Če vam je ta projekt všeč, ga prosim glasujte na natečaju Mikrokontroler in robotika
Veselo ustvarjanje;-)
Priporočena:
Osebni detektor strele: 5 korakov (s slikami)
Osebni detektor strele: V tem projektu bomo ustvarili majhno napravo, ki vas opozori na bližnje udare strele. Skupni stroški vseh materialov v tem projektu bodo cenejši od nakupa komercialnega detektorja strele in izpopolnili boste veščino izdelave vezja
Osebni pomočnik: 9 korakov (s slikami)
Osebni pomočnik: V tem navodilu vam bom pokazal, kako lahko z močjo ESP8266, ustvarjalnostjo pri oblikovanju in programiranju programske opreme naredite nekaj kul in izobraževalnega. Poimenoval sem ga osebni pomočnik, ker je žepne velikosti ti in lahko daš
8 -kanalni analogni ojačevalnik za osebni računalnik ali domači kino: 12 korakov (s slikami)
8 -kanalni analogni ojačevalnik za osebni računalnik ali domači kino: To je moj prvi pouk. Naučil vas bom, kako narediti 8-kanalni ojačevalnik za računalnik ali avdio sistem z ločenimi analognimi izhodi, uporabljal sem ga za svoj namizni računalnik, za gledanje filmov, poslušanje glasbe v visoki ločljivosti in igranje iger,
Unity večigralska 3D hologramska igra in hologramski projektor za osebni računalnik: 16 korakov (s slikami)
Unity večigralska 3D hologramska igra in hologramski projektor za osebni računalnik: Na inspiraciji Holusa rad razvijam zelo poceni holografski zaslon. Toda ko sem poskušal najti igre, na spletu nisem našel ničesar. Zato nameravam razviti svojo igro v Unityju. To je moja prva tekma v enotnosti. Pred tem sem v Flashu razvil nekaj iger, vendar
Biometrični osebni dnevnik: 5 korakov (s slikami)
Biometrični osebni dnevnik: Ta čeden pripomoček ima senzor prstnih odtisov, tako da lahko svoje kul stvari shranite v osebno prenosno torbico. Včasih uporabljam dnevnik in pisalo ter oblikujem svoje nove projekte. Opremljen je s 3D tiskanim ohišjem in uporablja Arduino nano. Odlična ideja za darilo