Sadržaj:

EWON Raspberry Pi pogonski kućni robot: 7 koraka (sa slikama)
EWON Raspberry Pi pogonski kućni robot: 7 koraka (sa slikama)

Video: EWON Raspberry Pi pogonski kućni robot: 7 koraka (sa slikama)

Video: EWON Raspberry Pi pogonski kućni robot: 7 koraka (sa slikama)
Video: Get access to devices behind Ewon Flexy IIoT Router 2024, Srpanj
Anonim
EWON Raspberry Pi Pokretni kućni robot
EWON Raspberry Pi Pokretni kućni robot
EWON Raspberry Pi Pokretni kućni robot
EWON Raspberry Pi Pokretni kućni robot
EWON Raspberry Pi Pokretni kućni robot
EWON Raspberry Pi Pokretni kućni robot

Autor sharathnaikSharathnaik.comSlijedi više od autora:

Vizualizator srca | Pogledajte kako vam srce kuca
Vizualizator srca | Pogledajte kako vam srce kuca
Vizualizator srca | Pogledajte kako vam srce kuca
Vizualizator srca | Pogledajte kako vam srce kuca
DIY- Cool džepna bilježnica od trapera (sa slikama)
DIY- Cool džepna bilježnica od trapera (sa slikama)
DIY- Cool džepna bilježnica od trapera (sa slikama)
DIY- Cool džepna bilježnica od trapera (sa slikama)
ŠTENCI
ŠTENCI
ŠTENCI
ŠTENCI

O: Inženjering i dizajn Više o sharathnaiku »

Nedavno sam se zbog trenutačne situacije užurbano gledao mnogo Netflixovih serija, nadam se da ste svi na sigurnom, i vidio sam da je izašla peta sezona Black Mirrora. Antologijska serija koja se vrti oko skupine osobnih života ljudi i kako tehnologija manipulira njihovim ponašanjem.

Jedna od epizoda koja mi je privukla pozornost bile su Rachel, Jack i Ashley Too. Jedan od glavnih likova ove serije je kućni robot po imenu Ashley O i taj robot ima mnogo karaktera oko sebe i sam sam pomislio da bih ga trebao izgraditi, to je dobar projekt za početak programiranja ako ne to onda barem Mogu ga programirati tako da se smije mojim šalama.!

Što / Tko je Ewon? Što može učiniti?

Stoga sam prije nego što sam počeo raditi na ovom projektu postavio neka osnovna pravila kojih se treba pridržavati. Ovaj projekt je morao biti

  • Lako za svakoga isprobati
  • Ne samo da je sladak, već i koristan kako ne bi završio na polici
  • Modularno, tako da možete nastaviti dodavati nove značajke.

Nakon što sam postavio ovo pravilo, odlučio sam koristiti SDK za Google asistenta. Ovaj SDK pruža mnogo značajki koje sam tražio, a ako vam dosadi Ewon, taksi ga uvijek koristite kao Google Home uređaj i radite ono što radi Google dom.

Ono što će Ewon učiniti jest dodati znak Google asistentu. To je pokazivanje emocija i reagiranje na ono što korisnik kaže. Ne čujete samo glas, već ćete vidjeti i kako reagirati.

NAPOMENA: Ovo uputstvo je u razvoju. Uskoro ću prenijeti sve relevantne datoteke. Hvala vam

Korak 1: Dijelovi potrebni za Ewon

ELEKTRONIKA

  • Malina PI
  • Servo SG90 (x4)
  • Servo MG995 - standard (x2)
  • PCA9685 16-kanalni servo upravljački program
  • USB zvučna kartica
  • Mikrofon
  • Zvučnici (Svaki mali zvučnik će poslužiti, ovako nešto)
  • Muški i ženski konektori zaglavlja pina
  • Oglasna ploča
  • Nextion zaslon

UČvršćivači i ležajevi

  • M3*10 mm (x10)
  • M3*8 mm (x10)
  • M3 matice (x20)
  • Ležaj

    • OD: 15 mm ID: 6 mm Širina: 5 mm (x2)
    • OD: 22 mm ID: 8 mm Širina: 7 mm (x2)

OSTALI MATERIJALI

  • Standoff

    • 40 mm (x4)
    • 30 mm (x4)

ALATI

3D pisač

Korak 2: Razumijevanje Ewona i programiranja

Razumijevanje Ewona i programiranja
Razumijevanje Ewona i programiranja
Razumijevanje Ewona i programiranja
Razumijevanje Ewona i programiranja
Razumijevanje Ewona i programiranja
Razumijevanje Ewona i programiranja

Prije nego počnem s aspektom programiranja, dopustite mi da ukratko objasnim blok dijagram sklopa Ewon -a.

RPI (malina pi) je mozak sustava. Servo upravljač upravlja RPI pogonom. Zaslon kojim upravlja RPI sa serijskom komunikacijom za iskazivanje emocija i na kraju, mikrofonom i zvučnicima koji se koriste za komunikaciju s Ewonom. Sada kada znamo koji hardver radi ono što počnemo programirati Ewon.

Instaliranje SDK -a google pomoćnika

Dopustite mi da objasnim dva razloga zašto sam planirao koristiti Google asistenta:

  • Htio sam da Ewon ne bude samo zabavan, već i koristan robot. SDK za Google asistenta već ima hrpu resursa koje možete koristiti za povećanje funkcionalnosti Ewona.
  • Također možete koristiti radnje na googlu i tijek dijaloga kako biste Ewonu omogućili chat s unaprijed definiranim odgovorima. Za sada ćemo se koncentrirati samo na osnovni SDK.

Započnimo instaliranjem SDK -a google pomoćnika. To ne bi trebalo biti teško jer postoji hrpa resursa koji će vam pomoći postaviti SDK za Google asistenta na RPI. Ovaj vodič možete pratiti zajedno:

Vodič:

Nakon završetka gore navedenog procesa trebali biste moći pritisnuti enter na tipkovnici i razgovarati s pomoćnikom. To je sve o instaliranju SDK -a Google asistenta.

Kako bih mu trebao dati ime? Ewon?

Hej Google! To je ono što se koristi za početak razgovora s google asistentom i nažalost google ne dopušta upotrebu bilo koje druge prilagođene riječi za buđenje. Pa da vidimo kako to možemo promijeniti tako da se google asistent aktivira kad netko nazove Ewon.

Snowboy: visoko prilagodljiv stroj za otkrivanje vrućih riječi koji je ugrađen u stvarnom vremenu kompatibilan s Raspberry Pi, (Ubuntu) Linuxom i Mac OS X.

Vruća riječ (također poznata kao riječ za buđenje ili riječ za pokretanje) je ključna riječ ili izraz koji računalo stalno sluša kao signal za pokretanje drugih radnji.

Počnimo s instaliranjem Snowboya na RPI. Ne zaboravite aktivirati virtualno okruženje za instaliranje Snowboya kao što ste učinili za instaliranje SDK -a za pomoćnike. Sve što ovdje instaliramo mora biti instalirano u virtualnom okruženju. Instaliranje Snowboya može biti malo zeznuto, ali ova bi vam veza trebala pomoći da ga instalirate bez ikakvih problema. Veza:

Evo sažetog procesa instalacije ako gornja veza postane zbunjujuća ili instalacija ne uspije.

$ [sudo] apt-get install libatlas-base-dev swig $ [sudo] pip install pyaudio $ git clone https://github.com/Kitt-AI/snowboy $ cd snowboy/swig/Python3 $ make $ cd.. /.. $ python3 setup.py build $ [sudo] python setup.py install

Nakon instalacije pokrenite demo datoteku [koja se nalazi u mapi - snowboy/examples/Python3/] da vidite radi li sve savršeno.

Napomena: možete jednostavno promijeniti ime svog robota u nešto drugo. Sve što trebate učiniti je otići na https://snowboy.kitt.ai/ i istrenirati prilagođenu vruću riječ, a zatim staviti tu vruću riječ u istu mapu kao i ewon.pmdl.

Može li Ewon razumjeti emocije?

Sad kad Ewon ima ime, koristit ću Ewon umjesto da ga nazivam robotom. U redu, dakle emocije, kratki odgovori ne, Ewon ne može razumjeti emocije pa ćemo ovdje učiniti da Ewon detektira emocije u našem govoru pomoću ključnih riječi, a zatim pusti odgovarajući izraz lica povezan s tim.

Da bih to postigao, ono što sam učinio je jednostavna skripta za analizu osjećaja. Postoji 6 različitih klasa emocija.

Slika
Slika

Sretan, tužan, bijes, strah, gađenje i iznenađenje. Ovo su glavne klase emocija i svaka od njih ima popis ključnih riječi povezanih s emocijom. (na primjer dobro, lijepo, uzbuđeno, sve dolazi pod sretne emocije).

Dakle, kad god izgovorimo bilo koju ključnu riječ u razredu emocija, aktivira se odgovarajuća emocija. Pa kad kažete "Hej Ewon!" i pričekajte da Ewon progovori, a ja nastavljam govoriti "Danas je lijep dan!", ona uzima ključnu riječ "Lijepo" i pokreće odgovarajuću emociju "Sretna" koja pokreće izraz lica za Sretnu.

Jesu li te uši na Ewonu?

Sljedeći korak bio bi korištenje pokrenute emocije za pokretanje odgovarajućeg izraza lica. Kod Ewona izraz lica je primjetan, ali pomiče uho i vrat pomoću servo upravljača i mijenja zaslon kako bi promijenio pokrete očiju.

Prvo, servo pogoni, za pokretanje je prilično jednostavno možete slijediti ovaj vodič za postavljanje Adafruit servo biblioteke. Link:

Slika
Slika

Zatim dodjeljujemo maksimalnu i minimalnu vrijednost za sve servomotore. To se postiže ručnim pomicanjem svakog servo servera i provjerom njegovih granica. To možete učiniti nakon što sastavite Ewon.

Oči za Ewon

Za oči koristim Nextion zaslon koji ima hrpu slika kao ispod.

Slika
Slika

To je slijed slika koje sam osmislio u photoshopu koji kada se reproduciraju u nizu čini animaciju. Sličan slijed stvoren je za sve emocije. Sada za prikaz bilo kakve emocije sve što trebate učiniti je nazvati određeni slijed slika koji čini animaciju. Datoteke se nalaze u mapi 'Prikaži datoteke', donja veza za preuzimanje.

Konačno

Spajajući sve kada je skripta pokrenula emociju sreće, poziva se funkcija happy, a servo se pomiče na već postavljene kutove i zaslon prikazuje animaciju veselog oka. Na ovaj način postižemo "razumijevanje" ljudskih emocija. Ova metoda nije najbolja i postoje slučajevi kada ključne riječi ne padaju u iste emocije kao što je unaprijed definirano, ali za sada ovo funkcionira dovoljno dobro i uvijek možete dodati još ključnih riječi kako biste povećali točnost otkrivanja. Nadalje, ovo se može zamijeniti mnogo uvježbanijim modelom analize emocija kao što je model analize emocija Paralleldots kako bi se dobili bolji rezultati. No, kad sam ga isprobao, bilo je puno kašnjenja zbog kojih je Ewon sporije reagirao. Možda će Ewon verzija 2.0 imati ovako nešto.

Ovo je LINK na sve datoteke potrebne za pokretanje EWON -a. Preuzmite datoteku i slijedite korake u nastavku:

  • Raspakirajte datoteku, postavite ovu mapu (Ewon) kod kuće/pi/
  • Dodajte ID uređaja i ID modela u datoteku main.py. ID se dobiva prilikom instaliranja SDK -a google pomoćnika.
  • Otvorite naredbeni redak i pokrenite izvor sljedećih naredbi:

izvor env/bin/enablepython main.py models/Ewon.pmdl

Korak 3: Ispis tijela

3D datoteke možete pronaći ovdje:

Sada kada smo svi namješteni s Ewonovim mozgom, došlo je vrijeme za ispis njegovog tijela. Treba ispisati 18 jedinstvenih dijelova, od kojih je većina prilično mala, s ukupnim vremenom ispisa od oko 15-20 sati. (isključujući slučajeve).

Koristio sam bijeli PLA s 50% ispune i visinom sloja od 2 mm. Možete promijeniti ove vrijednosti ako je potrebno, trebale bi raditi dobro, ali pazite da mali dijelovi imaju 100% ispunu, radi čvrstoće.

Nakon što su datoteke ispisane, možete upotrijebiti brusni papir ili ručnu datoteku i očistiti ispisane dijelove, posebno veze na kojima se dijelovi provlače jedan kroz drugi. Zaglađivanje spojeva učinit će mehanizam glatkim i pružit će manji otpor servo pogonu. Ovaj proces može trajati koliko god želite koliko god se čovjek mogao izgubiti pokušavajući učiniti ispisane dijelove savršenima.

Dodatne napomene: Rupe u 3D ispisanim dijelovima možete ponovno izbušiti pomoću bita od 3 mm. Sve su rupe istih dimenzija. To će olakšati uvrtanje matica kasnije u sklopu.

Korak 4: Spajanje Ewon -a zajedno

Spajanje Ewon -a zajedno
Spajanje Ewon -a zajedno
Spajanje Ewon -a zajedno
Spajanje Ewon -a zajedno
Spajanje Ewon -a zajedno
Spajanje Ewon -a zajedno
Spajanje Ewon -a zajedno
Spajanje Ewon -a zajedno

Prije nego počnemo s montažom potrebno je nekoliko izmjena na ispisanim dijelovima. Datoteke pod nazivom servo veza moraju biti opremljene servo vezama koje dolaze sa servo, to čini da se 3D ispisane veze dobro povežu sa servo.

Sastavljanje Ewona treba biti ravno. U prilogu vam prilažem slike koje možete pratiti.

Dodatne napomene: Pazite da ne zategnete previše vijak ili vijak jer se to može slomiti i istrošiti ispisane dijelove.

Korak 5: Ožičenje Ewon -a

Ožičenje Ewon
Ožičenje Ewon
Ožičenje Ewon
Ožičenje Ewon
Ožičenje Ewon
Ožičenje Ewon

Na završnom smo koraku da Ewon zaživi. Ovdje je dijagram ožičenja za komponente zajedno sa slikama koje pokazuju vezu.

  • Servo upravljački program spojen je na I2C pinove koji su SDA i SCL RPI.
  • Zaslon je spojen na RX i TX pinove RPI -a
  • Mikrofon i zvučnici spojeni su na USB zvučnu karticu koja je spojena na RPI putem USB priključka.

Upozorenje: Pazite da ne skratite RPI. Dvaput provjerite sve veze i provjerite niste li učinili pogrešku. Sav pribor koji je zvučnik, servo upravljački program i zaslon napaja se zasebnom 5v baterijom i ne koristi Raspberry Pi 5v liniju. Raspberry pi se koristi samo za slanje podataka u pribor, ali ne i za njihovo napajanje.

Korak 6: Hej Ewon! Možeš li me čuti?

Hej Ewon! Možeš li me čuti?
Hej Ewon! Možeš li me čuti?

Stoga smo priložili svu dodatnu opremu i instalirali sve potrebne knjižnice. Ewon možete pokrenuti pokretanjem ljuske skripte pomoću./run Ewon.shAli što je to.sh skripta? Ewon koristi mnogo različitih knjižnica s različitim skriptama (SDK za Google pomoćnike, Snowboy, Adafruit itd.). Sve skripte smještene su u odgovarajuće mape. (Možemo premjestiti sve datoteke na isti put i organizirati sve skripte, ali trenutno neke knjižnice ne dopuštaju premještanje izvornih datoteka, pa ćemo ih za sada samo držati na odgovarajućim mjestima).sh je shell skripte koje pokreću sve ove skripte jednu po jednu sa svakog mjesta, tako da ne morate ručno otići na svako mjesto i pokrenuti skripte. To olakšava rukovanje svim naredbama.

Nakon što pokrenete shell skriptu, samo recite "Hey Ewon!" i trebali biste vidjeti kako vas Ewon počinje slušati. Sada možete koristiti Ewon kao google pomoćnika i razgovarati s njim i možete vidjeti kako Ewon mijenja izraze iz onoga što govorite. Isprobajte nešto poput „Hej Ewon! Danas sam tužan “i možete vidjeti kako je Ewon tužna s vama. Pitajte Ewona za šalu i vidite kako se smije šali.

Korak 7: Što je sljedeće?

Ewon ovdje ne staje. Ewon sada ima način otkrivanja i pokazivanja emocija, ali možemo učiniti da učini mnogo više. Ovo je tek početak.

U nadolazećem ažuriranju poradit ćemo na tome kako to napraviti

  • Ewon detektira lica i prati vaše lice te se kreće zajedno s vašim licem.
  • Dodati ćemo zvučne efekte kako bismo liku dali dodatnu dubinu.
  • Dodajte mobilnost kako bi se Ewon mogao kretati zajedno s vama.

Napomena: Zbog trenutne situacije postalo je vrlo teško nabaviti dijelove za projekt. To me natjeralo da promijenim dizajn i funkcionalnost s obzirom na misli koje sam imao u svom inventaru. Ali čim se dočepam svih dijelova, loše ću ažurirati gornji projekt.

Nadopune:

  • Napravljene su neke izmjene u kodu, uklonjena je skripta ljuske.
  • Dodano pravokutno tijelo za EWON.

Preporučeni: