Sisukord:
- Samm: Ewoni jaoks vajalikud osad
- 2. samm: Ewoni mõistmine ja programmeerimine
- 3. samm: keha printimine
- Samm: pange Ewon kokku
- Samm: ühendage Ewon
- 6. samm: Tere Ewon! Kas sa kuuled mind?
- Samm: mis saab edasi?
Video: EWON Raspberry Pi jõul töötav kodurobot: 7 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
Autor: sharathnaikSharathnaik.com
Teave: inseneriteadus ja disain Lisateavet sharathnaiki kohta »
Hiljuti avastasin end praeguse olukorra tõttu palju Netflixi sarju vaatamas, loodan, et teil kõigil on turvaline, ja nägin, et Black Mirrori 5. hooaeg ilmus. Antoloogiasari, mis keerleb inimeste grupi isikliku elu ümber ja kuidas tehnoloogia nende käitumist manipuleerib.
Ja üks episoodidest, mis mu tähelepanu köitis, olid Rachel, Jack ja Ashley Too. Selle sarja üks peategelasi on kodurobot nimega Ashley O ja sellel robotil on palju iseloomu ja ma mõtlesin, et peaksin selle ehitama, see on hea projekt programmeerimisega alustamiseks, kui mitte, siis vähemalt Ma võin selle programmeerida oma naljade üle naerma.!
Mis / kes on Ewon? Mida ma saan teha?
Nii et enne selle projektiga alustamist seadsin mõned põhireeglid, mida järgida. See projekt pidi olema
- Kõigil on lihtne proovida
- Mitte ainult olla armas, vaid ka kasulik olla, et see riiulisse ei satuks
- Modulaarne, nii et saate pidevalt uusi funktsioone lisada.
Pärast selle reegli seadmist otsustasin kasutada Google'i assistendi SDK -d. See SDK pakub palju funktsioone, mida ma otsisin, ja kui teil Ewonist igav hakkab, kasutage seda alati Google Home'i seadmena ja tehke seda, mida Google'i kodu teeb.
Ewon teeb Google'i assistendile tegelase. See näitab emotsioone ja reageerib sellele, mida kasutaja ütleb. Nüüd ei kuule te ainult häält, vaid näete ka, kuidas reageerida.
MÄRKUS. See juhend on väljatöötamisel. Varsti laadin kõik asjakohased failid üles. Aitäh
Samm: Ewoni jaoks vajalikud osad
ELEKTROONIKA
- Vaarika PI
- Servo SG90 (x4)
- Servo MG995 - standard (x2)
- PCA9685 16-kanaliline servo draiver
- USB helikaart
- Mikrofon
- Kõlarid (iga väike kõlar teeb midagi sellist)
- Meeste ja naiste tihvtide päisepistikud
- Leivalaud
- Nextion -ekraan
KINNITUSED JA LAAGRID
- M3*10 mm (x10)
- M3*8 mm (x10)
- M3 pähklid (x20)
-
Laager
- OD: 15mm ID: 6mm Laius: 5mm (x2)
- OD: 22mm ID: 8mm Laius: 7mm (x2)
MUUD MATERJALID
-
Seisak
- 40 mm (x4)
- 30 mm (x4)
TÖÖRIISTAD
3D printer
2. samm: Ewoni mõistmine ja programmeerimine
Enne programmeerimisaspektiga alustamist lubage mul lühidalt selgitada Ewoni vooluahela plokkskeemi.
RPI (Raspberry pi) on süsteemi aju. Servojuht, mida juhib RPI, juhib servot. Ekraan, mida juhib RPI ja seeriaühendus emotsioonide näitamiseks, ning lõpuks mikrofon ja kõlarid, mida kasutati Ewoniga suhtlemiseks. Nüüd, kui me teame, milline riistvara teeb, alustame Ewoni programmeerimist.
Google'i assistendi SDK installimine
Lubage mul selgitada kahte põhjust, miks plaanisin Google'i assistenti kasutada:
- Tahtsin, et Ewon ei oleks lihtsalt lõbus robot, vaid ka kasulik. Google'i assistendi SDK -l on juba palju ressursse, mida saate kasutada Ewoni funktsionaalsuse suurendamiseks.
- Samuti saate kasutada Google'is ja dialoogis toiminguid, et anda Ewonile võimalus eelnevalt määratletud vastustega vestelda. Praegu keskendume ainult põhilisele SDK -le.
Alustame Google'i assistendi SDK installimisega. See ei tohiks olla keeruline, kuna RPI -s Google'i assistendi SDK seadistamiseks on palju ressursse. Saate seda õpetust järgida:
Õpetus:
Pärast ülaltoodud protsessi lõppu peaksite saama klaviatuuril sisestusklahvi klõpsata ja assistendiga rääkida. See kõik puudutab Google'i assistendi SDK installimist.
Kuidas seda nimetada? Ewon?
Tere Google! Seda kasutatakse Google'i assistendiga rääkimiseks ja kahjuks ei luba Google kasutada ühtegi muud kohandatud äratussõna. Vaatame, kuidas saame seda muuta nii, et Google'i assistent käivitub, kui keegi Ewonile helistab.
Snowboy: väga kohandatav kuumade sõnade tuvastamise mootor, mis on integreeritud reaalajas ühilduvasse Raspberry Pi, (Ubuntu) Linuxi ja Mac OS X-iga.
Kuum sõna (tuntud ka kui äratussõna või käivitussõna) on märksõna või fraas, mida arvuti pidevalt kuulab signaalina muude toimingute käivitamiseks.
Alustuseks paigaldame Snowboy RPI -le. Ärge unustage Snowboy installimiseks virtuaalset keskkonda aktiveerida nagu assistendi SDK installimisel. Kõik, mida me siit installime, tuleb installida virtuaalsesse keskkonda. Snowboy installimine võib olla pisut keeruline, kuid see link peaks aitama teil seda ilma probleemideta installida. Link:
Siin on kokkuvõtlik installiprotsess, kui ülaltoodud link läheb segaseks või installimine ebaõnnestub.
$ [sudo] apt-get install libatlas-base-dev swig $ [sudo] pip install pyaudio $ git kloon https://github.com/Kitt-AI/snowboy $ cd snowboy/swig/Python3 $ make $ cd.. /.. $ python3 setup.py build $ [sudo] python setup.py install
Kui installitud, käivitage demofail [leitud kaustast - snowboy/example/Python3/], et näha, kas kõik töötab ideaalselt.
Märkus: saate hõlpsalt muuta oma roboti nime ka millekski muuks. Peate lihtsalt minema saidile https://snowboy.kitt.ai/ ja koolitama kohandatud märksõna ning seejärel asetama selle kuuma sõna samasse kausta kui ewon.pmdl.
Kas Ewon saab emotsioonidest aru?
Nüüd, kui Ewonil on nimi, kasutan ma robotit nimetamise asemel Ewoni. Olgu, emotsioonid, lühikesed vastused ei, Ewon ei saa emotsioonidest aru, nii et me teeme siinkohal selle, et paneme Ewoni tundma meie kõnes emotsioone märksõnade abil ja esitama sellega seotud näoilmeid.
Selle saavutamiseks olen teinud lihtsa tundeanalüüsi skripti. On 6 erinevat emotsiooniklassi.
Õnnelik, kurb, viha, hirm, vastikus ja üllatus. Need on peamised emotsiooniklassid ja igal neist on emotsiooniga seotud märksõnade loend. (näiteks hea, tore, põnevil, kõik on rõõmsate emotsioonide all).
Nii et kui me ütleme mõnda emotsiooniklassi märksõna, käivitatakse vastav emotsioon. Nii et kui ütlete "Hei Ewon!" ja oodake, kuni Ewon kõneleb, ja ma ütlen jätkuvalt: "Täna on tore päev!", see võtab märksõna "tore" ja käivitab vastava emotsiooni "õnnelik", mis käivitab Happy näoilme.
Kas need kõrvad on Ewonil?
Järgmine samm oleks vallandatud emotsiooni kasutamine vastava näoilme käitamiseks. Ewoni puhul on näoilme märkamine, kuid kõrva ja kaela liigutamine servode abil ning ekraani muutmine silmade liigutuste muutmiseks.
Esiteks, servod, selle käitamiseks on üsna lihtne järgida seda õpetust Adafruit'i servoteegi seadistamiseks. Link:
Seejärel määrame kõigi servode jaoks maksimaalse ja minimaalse väärtuse. Seda tehakse iga servo käsitsi liigutamise ja selle piiride kontrollimisega. Seda saate teha, kui olete Ewoni kokku pannud.
Silmad Ewonile
Silmade jaoks kasutan Nextioni ekraani, millel on hunnik pilte nagu allpool.
See on Photoshopis kujundatud piltide jada, mis järjestikku mängides teeb animatsiooni. Sarnane jada loodi kõigi emotsioonide jaoks. Mis tahes emotsiooni kuvamiseks peate nüüd helistama konkreetse pildijärjestuse, millest animatsioon koosneb. Failid asuvad kaustas „Kuva failid”, allalaadimislink allpool.
Lõpuks ometi
Kui see kõik kokku panna, kui skript vallandab õnneliku emotsiooni, kutsutakse õnnelik funktsioon ja servo liigub juba määratud nurkadele ja ekraan esitab õnneliku silma animatsiooni. Nii saavutame niimoodi inimlike emotsioonide "mõistmise". See meetod ei ole parim ja on aegu, mil märksõnad ei lange samasse emotsiooni kui eelnevalt määratletud, kuid praegu töötab see piisavalt hästi ja tuvastamise täpsuse suurendamiseks saate alati lisada rohkem märksõnu. Lisaks saab selle parema tulemuse saamiseks asendada palju koolitatud emotsioonianalüüsi mudeliga, nagu Paralleldotsi emotsioonianalüüsi mudel. Aga kui ma seda proovisin, tekkis palju viivitusi, mis panid Ewoni aeglasemalt reageerima. Võib -olla on Ewoni versioonil 2.0 midagi sellist.
See on LINK kõikidele EWONi käivitamiseks vajalikele failidele. Laadige fail alla ja järgige alltoodud samme:
- Pakkige fail lahti, asetage see kaust (Ewon) koju/pi/
- Lisage failis main.py seadme ID ja mudeli ID. ID saadakse Google'i assistendi SDK installimisel.
- Avage käsuviip ja käivitage järgmiste käskude allikas:
source env/bin/enablepython main.py models/Ewon.pmdl
3. samm: keha printimine
3D -failid leiate siit:
Nüüd, kui meil kõigil on seadistatud Ewoni aju, on aeg oma keha printida. Trükkimiseks on 18 unikaalset osa, enamik neist on üsna väikesed, kogutrükiaeg umbes 15-20 tundi. (välja arvatud juhtumid).
Kasutasin valget PLA -d 50% täidisega ja kihi kõrgusega 2mm. Vajadusel saate neid väärtusi muuta, kuid see peaks hästi toimima, kuid veenduge, et väikeste osade tugevus oleks 100%.
Pärast failide printimist võite kasutada liivapaberit või käsifaili ja puhastada prinditud osad, eriti lingid, kus osad üksteisest läbi libisevad. Liigeste silumine muudab mehhanismi siledaks ja tagab servole vähem vastupanu. See protsess võib kesta nii kaua kui soovite, kuna võite trükitud osade täiusliku väljanägemise nimel eksida.
Lisamärkused: 3D-trükitud osade auke saate uuesti puurida, kasutades 3 mm otsikut. Kõik augud on sama suurusega. See hõlbustab hiljem mutrite keeramist koostes.
Samm: pange Ewon kokku
Enne kokkupanekuga alustamist on trükitud osades vaja teha vähe muudatusi. Failid, mille nimi on servolink, peavad olema varustatud servolinkidega, mis on servoga kaasas, see muudab 3D -prinditud lingid servoga hästi ühendatavaks.
Ewoni kokkupanek peaks toimuma otse edasi. Lisasin teile pildid, mida saate jälgida.
Lisamärkused: Veenduge, et te ei pinguta poldi või kruvi üle, sest see võib trükitud osi puruneda ja kuluda.
Samm: ühendage Ewon
Oleme viimasel sammul Ewoni ellu äratamiseks. Siin on komponentide ühendusskeem koos ühendusi kujutavate piltidega.
- Servojuht on ühendatud I2C tihvtidega, mis on SDA ja SCL RPI.
- Ekraan on ühendatud RPI RX- ja TX -kontaktidega
- Mikrofon ja kõlarid on ühendatud USB -helikaardiga, mis on RPI -ga ühendatud USB -pordi kaudu.
Hoiatus: olge oma RPI lühendamisel ettevaatlik. Kontrollige kaks korda kõiki oma ühendusi ja veenduge, et te pole ühtegi viga teinud. Kõik lisaseadmed, mis on kõlar, servodraiver ja ekraan, töötavad eraldi 5 -voldise akuga ja ei kasuta Raspberry Pi 5v liini. Vaarika pi kasutatakse ainult andmete saatmiseks tarvikutele, kuid mitte nende toiteks.
6. samm: Tere Ewon! Kas sa kuuled mind?
Seega oleme lisanud kõik oma tarvikud ja paigaldanud kõik vajalikud teegid. Ewoni saate käivitada, käivitades shelliskripti, kasutades./run Ewon.sh Aga mis see.sh skript on? Ewon kasutab palju erinevaid teeke erinevate skriptidega (Google'i assistent SDK, Snowboy, Adafruit jne). Kõik skriptid paigutatakse vastavatesse kaustadesse. (Saame teisaldada kõik failid samale teele ja kõik skriptid korraldada, kuid praegu ei luba mõned raamatukogud lähtefaile teisaldada, nii et praegu hoiame neid lihtsalt vastavas asukohas).sh on shelliskriptid, mis käitavad kõiki neid skripte ükshaaval igast asukohast, nii et te ei pea igasse asukohta käsitsi minema ja skripte käivitama. See hõlbustab kõigi käskude käsitsemist.
Kui olete shelliskripti käivitanud, öelge lihtsalt "Hei Ewon!" ja sa peaksid nägema, kuidas Ewon hakkab sind kuulama. Nüüd saate kasutada Ewoni Google'i assistendina ja sellega rääkida ning näete, kuidas Ewon muudab teie avaldatud väljendeid. Proovige midagi sellist: „Hei Ewon! Ma olen täna kurb "ja näete, kuidas Ewon on teiega kurb. Küsige Ewonilt nalja ja näete, kuidas see nalja pärast naerab.
Samm: mis saab edasi?
Ewon ei peatu siin. Ewonil on nüüd võimalus emotsioone avastada ja näidata, kuid me saame seda teha palju rohkem. See on alles algus.
Tulevases värskenduses töötame selle üle, kuidas seda teha
- Ewon tuvastab näod ja jälgib teie nägu ning liigub koos teie näoga.
- Lisame heliefekte, et anda tegelasele täiendav sügavus.
- Lisage liikuvust, et Ewon saaks teiega koos liikuda.
Märkus. Praeguse olukorra tõttu on projekti osade hankimine muutunud väga keeruliseks. See pani mind disaini ja funktsionaalsust muutma, arvestades minu nimekirjas leiduvaid mõtteid. Aga niipea, kui ma kõik osad kätte saan, uuendage ülaltoodud projekti.
Uuendused:
- Tegime koodis mõningaid muudatusi, eemaldasime kesta skripti.
- EWONile lisati ristkülikukujuline korpus.
Soovitan:
Arduino jõul töötav maalimisrobot: 11 sammu (piltidega)
Arduino jõul töötav maalimisrobot: Kas olete kunagi mõelnud, kas robot suudaks teha lummavaid maale ja kunsti? Selles projektis püüan seda Arduino jõul töötava maalimisrobotiga reaalsuseks muuta. Eesmärk on, et robot saaks ise maale teha ja kasutada
RC jõul töötav elektriline mänguauto: 10 sammu (piltidega)
RC jõul töötav elektriline mänguauto: Autor: Peter Tran 10ELT1See õpetus kirjeldab kaugjuhtimispuldiga (RC) töötava elektrilise mänguauto teooriat, disaini, tootmist ja testimise protsessi, kasutades HT12E/D IC kiipe. Õpetused kirjeldavad auto projekteerimise kolme etappi: lõastatud kaabliga infrapuna
3D -trükitud Arduino jõul töötav neljajalgne robot: 13 sammu (piltidega)
3D -trükitud Arduino jõul töötav neljajalgne robot: Eelmistest juhenditest näete ilmselt, et mul on sügav huvi robotprojektide vastu. Pärast eelmist Instructable'i, kus ma ehitasin kahejalgse roboti, otsustasin proovida luua neljajalgse roboti, mis suudaks jäljendada loomi nagu koer
Ultrakondensaatori jõul töötav robot: 15 sammu (koos piltidega)
Ultrakondensaatorite jõul töötav robot: Little Flash on 3D -prinditud robot, mida toidavad ultrakondensaatorid. Jänni jäämise vältimiseks kasutab ta põrklülitit ja juhuslikke tee kohandusi. Ta töötab 25 minutit ja seda saab laadida umbes 40 sekundiga, kasutades 10 -amprist pidevat vooluallikat
Joy Robot (Robô Da Alegria) - avatud lähtekoodiga 3D -trükitud, Arduino jõul töötav robot!: 18 sammu (koos piltidega)
Joy Robot (Robô Da Alegria) - avatud lähtekoodiga 3D -trükitud, Arduino jõul töötav robot!: Esimene auhind võistlusrataste võistlusel, teine auhind võistlusel Arduino võistlusel ja teine koht disaini lastele väljakutsel. Aitäh kõigile, kes meie poolt hääletasid !!! Roboteid jõuab igale poole. Alates tööstuslikest rakendustest kuni