INHOUDSOPGAWE:

EWON Raspberry Pi Powered Home Robot: 7 stappe (met foto's)
EWON Raspberry Pi Powered Home Robot: 7 stappe (met foto's)

Video: EWON Raspberry Pi Powered Home Robot: 7 stappe (met foto's)

Video: EWON Raspberry Pi Powered Home Robot: 7 stappe (met foto's)
Video: Companion Robot: Overview - Raspberry Pi | Arduino | DIY Robotics 2024, Julie
Anonim
EWON Raspberry Pi Powered Home Robot
EWON Raspberry Pi Powered Home Robot
EWON Raspberry Pi Powered Home Robot
EWON Raspberry Pi Powered Home Robot
EWON Raspberry Pi Powered Home Robot
EWON Raspberry Pi Powered Home Robot

Volg meer deur die skrywer:

Hartvisualiseerder | Sien jou hart klop
Hartvisualiseerder | Sien jou hart klop
Hartvisualiseerder | Sien jou hart klop
Hartvisualiseerder | Sien jou hart klop
DIY- Cool denim-saknotaboek (met foto's)
DIY- Cool denim-saknotaboek (met foto's)
DIY- Cool denim-saknotaboek (met foto's)
DIY- Cool denim-saknotaboek (met foto's)
PUPPI
PUPPI
PUPPI
PUPPI

Oor: Ingenieurswese en ontwerp Meer oor sharathnaik »

As gevolg van die huidige situasie het ek onlangs na baie Netflix-reekse gekyk, ek hoop dat u almal veilig is, en ek het gesien dat seisoen 5 van die Black Mirror vrygestel is. 'N Bloemlesingsreeks wat handel oor 'n groep mense se persoonlike lewens en hoe tegnologie hul gedrag manipuleer.

En een van die episodes wat my aandag getrek het, was Rachel, Jack en Ashley Too. Een van die hoofkarakters van hierdie reeks is 'n tuisrobot met die naam Ashley O, en die robot het baie karakter daaroor en ek het self gedink ek moet een bou. Ek kan dit programmeer om te lag vir my grappies.!

Wat / wie is Ewon? Wat kan dit doen?

Dus, voordat ek aan hierdie projek begin werk, het ek 'n paar basiese reëls gestel wat gevolg moet word. Hierdie projek moes wees

  • Maklik vir almal om te probeer
  • Nie net om oulik te wees nie, maar ook nuttig, sodat dit nie in 'n rak beland nie
  • Modulêr, sodat u aanhou om nuwe funksies by te voeg.

Nadat ek hierdie reël opgestel het, het ek besluit om die Google Assistant SDK te gebruik. Hierdie SDK bied baie funksies waarna ek gesoek het, en as u van Ewon verveeld raak, kan u dit altyd as 'n Google Home -toestel gebruik en doen wat 'n Google -huis doen.

Wat Ewon gaan doen, is om 'n karakter by die Google -assistent te voeg. Dit wys emosies en reageer op wat die gebruiker sê. Dit is nie net die stem wat u hoor nie, maar u kan ook sien hoe u moet reageer.

LET WEL: hierdie instruksies is onder ontwikkeling. Ek sal binnekort al die relevante lêers oplaai. Dankie

Stap 1: Onderdele benodig vir Ewon

ELEKTRONIES

  • Framboos PI
  • Servo SG90 (x4)
  • Servo MG995 - standaard (x2)
  • PCA9685 16-kanaals servodrywer
  • USB klank kaart
  • Mikrofoon
  • Luidsprekers (enige klein luidspreker sal so iets doen)
  • Manlike en vroulike penkoppe
  • Broodbord
  • Display van Nextion

BEGASTE EN LAGERS

  • M3*10 mm (x10)
  • M3*8 mm (x10)
  • M3 Neute (x20)
  • Peiling

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

ANDER MATERIAAL

  • Opstand

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

GEREEDSKAP

3D -drukker

Stap 2: Begrip van Ewon en programmering

Ewon en programmering verstaan
Ewon en programmering verstaan
Ewon en programmering verstaan
Ewon en programmering verstaan
Ewon en programmering verstaan
Ewon en programmering verstaan

Voordat ek met die programmeringsaspek begin, laat ek kortliks die blokdiagram van die stroombaan van Ewon verduidelik.

RPI (Raspberry pi) is die brein van die stelsel. Servobestuurder bestuur deur RPI dryf die servo. Skerm beheer deur RPI met seriële kommunikasie om emosies aan te toon, en laastens mikrofoon en luidsprekers wat gebruik word om met Ewon te kommunikeer. Noudat ons weet watter hardeware dit doen, laat ons begin om Ewon te programmeer.

Installeer Google Assistant SDK

Laat ek die twee redes verduidelik waarom ek van plan was om Google Assistant te gebruik:

  • Ek wou hê dat Ewon nie net 'n prettige robot moet wees nie, maar ook 'n nuttige een. Google Assistant SDK het reeds baie hulpbronne wat u kan gebruik om die funksionaliteit van Ewon te verbeter.
  • U kan ook aksies op Google en die dialoogvloei gebruik om Ewon in staat te stel om met vooraf gedefinieerde antwoorde te gesels. Vir eers konsentreer ons slegs op die basiese SDK.

Kom ons begin deur die Google Assistant SDK te installeer. Dit behoort nie moeilik te wees nie, aangesien daar baie hulpbronne is om u te help om Google Assistant SDK op te stel op RPI. U kan hierdie tutoriaal volg:

Tutoriaal:

Na afloop van die bogenoemde proses, moet u op Enter op die sleutelbord kan klik en met die assistent kan praat. Dit gaan alles oor die installering van die Google Assistant SDK.

Wat moet ek dit noem? Ewon?

Hey Google! Dit is wat gebruik is om met Google Assistant te begin praat, en ongelukkig laat Google nie toe dat ander aangepaste wekwoord gebruik word nie. Kom ons kyk hoe ons dit kan verander sodat Google -assistent geaktiveer word as iemand Ewon bel.

Snowboy: 'n baie aanpasbare enjin vir opsporing van warm woorde wat ingebed is in real-time, versoenbaar met Raspberry Pi, (Ubuntu) Linux en Mac OS X.

'N Warm woord (ook bekend as wekwoord of snellerwoord) is 'n sleutelwoord of frase waarna die rekenaar voortdurend luister as 'n sein om ander aksies te aktiveer.

Kom ons begin deur Snowboy op RPI te installeer. Onthou om die virtuele omgewing te aktiveer om Snowboy te installeer, net soos om Assistent SDK te installeer. Alles wat ons van hier af installeer, moet in die virtuele omgewing geïnstalleer word. Dit kan 'n bietjie lastig wees om Snowboy te installeer, maar hierdie skakel kan u help om dit sonder probleme te installeer. Skakel:

Hier is 'n samevattende installasieproses as die skakel hierbo verwarrend raak of die installering misluk.

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

Sodra dit geïnstalleer is, voer die demo -lêer uit [gevind in die gids - snowboy/examples/Python3/] om te sien of alles perfek werk.

Let wel: u kan ook die naam van u robot na iets anders verander. Al wat u hoef te doen is om na https://snowboy.kitt.ai/ te gaan en 'n aangepaste woordwoord op te lei en dan die warm woord in dieselfde gids as ewon.pmdl te plaas.

Kan Ewon emosies verstaan?

Noudat Ewon 'n naam het, gebruik ek Ewon in plaas daarvan om dit 'n robot te noem. Goed, emosies, kort antwoorde nee, Ewon kan emosies nie verstaan nie, dus wat ons hier gaan doen, is om Ewon emosie in ons toespraak te laat opspoor met behulp van sleutelwoorde en dan die ooreenstemmende gesigsuitdrukking wat daarmee gepaard gaan, te speel.

Om dit te bereik, is 'n eenvoudige sentimentanalise -skrif wat ek gedoen het. Daar is 6 verskillende emosieklasse.

Beeld
Beeld

Gelukkig, hartseer, woede, vrees, walging en verrassing. Dit is die belangrikste emosieklasse en elkeen het 'n lys sleutelwoorde wat met die emosie verband hou. (byvoorbeeld, goed, aangenaam, opgewonde, almal is onder gelukkige emosie).

Dus, as ons een van die sleutelwoorde in die emosieklas sê, word die ooreenstemmende emosie geaktiveer. As u dus sê "Hey Ewon!" en wag totdat Ewon praat, en ek sê verder: "Vandag is 'n lekker dag!", dit kry die sleutelwoord 'Mooi' en veroorsaak die ooreenstemmende emosie 'Gelukkig' wat die gesigsuitdrukking vir Happy aanskakel.

Is die ore op Ewon?

Die volgende stap is die gebruik van die geaktiveerde emosie om die onderskeie gesigsuitdrukking uit te voer. Met Ewon merk die gesigsuitdrukking op, maar beweeg sy oor en nek met servo's en verander die skerm om die oogbewegings te verander.

Eerstens, die servo's, dit is redelik maklik om dit uit te voer; u kan hierdie tutoriaal volg om die Adafruit -servobiblioteek op te stel. Skakel:

Beeld
Beeld

Dan ken ons die maksimum en minimum waarde toe vir al die servo's. Dit word gedoen deur elke servo handmatig te skuif en die limiete daarvan na te gaan. U kan dit doen sodra u Ewon bymekaargemaak het.

Oë vir Ewon

Vir die oë gebruik ek 'n Nextion -skerm met 'n klomp foto's soos hieronder.

Beeld
Beeld

Dit is 'n reeks beelde wat ek in Photoshop ontwerp het, en as dit in volgorde gespeel word, 'n animasie maak. 'N Soortgelyke volgorde is geskep vir alle emosies. Om enige emosie te toon, hoef u slegs die spesifieke beeldreeks wat die animasie uitmaak, te noem. Die lêers is in die gids 'Vertoon lêers', die aflaai skakel hieronder.

Uiteindelik

As u alles bymekaar sit as die gelukkige emosie deur die draaiboek veroorsaak word, word die gelukkige funksie genoem en die servo beweeg na die reeds ingestelde hoeke en die vertoning speel die animasie van die gelukkige oog. So bereik ons 'begrip' van menslike emosies. Hierdie metode is nie die beste nie en daar is tye dat sleutelwoorde nie in dieselfde emosie val as vooraf gedefinieer nie, maar dit werk vir eers goed genoeg en u kan altyd meer sleutelwoorde byvoeg om die akkuraatheid van opsporing te verhoog. Verder kan dit vervang word deur 'n baie meer opgeleide model vir emosie -analise, soos die Paralleldots Emotion -ontledingsmodel om beter resultate te kry. Maar toe ek dit probeer, was daar baie vertragings wat Ewon stadiger sou laat reageer. Miskien sal Ewon weergawe 2.0 so iets hê.

Dit is die SKAKEL na al die lêers wat nodig is om EWON uit te voer. Laai die lêer af en volg die onderstaande stappe:

  • Pak die lêer uit, plaas hierdie vouer (Ewon) tuis/pi/
  • Voeg Toestel -ID en Model -ID in die main.py -lêer by. Die ID word verkry tydens die installering van Google Assistant SDK.
  • Open die opdragprompt en voer die bron van die volgende opdragte uit:

bron env/bin/activatepython main.py -modelle/Ewon.pmdl

Stap 3: Druk die liggaam af

U kan die 3d -lêers hier vind:

Noudat ons almal klaar is met die brein van Ewon, is dit tyd om sy liggaam te druk. Daar moet 18 unieke dele gedruk word, waarvan die meeste redelik klein is, met 'n totale druktyd van ongeveer 15-20 uur. (die gevalle uitgesluit).

Ek het wit PLA gebruik met 50% vulsel en 'n laaghoogte van 2 mm. U kan hierdie waardes verander indien nodig, dit moet goed werk, maar sorg dat die klein dele 100% vol is vir sterkte.

Nadat die lêers gedruk is, kan u skuurpapier of 'n handlêer gebruik en die gedrukte dele skoonmaak, veral die skakels waar die dele deur mekaar gly. Deur die gewrigte glad te maak, word die meganisme gladder en sal die servo minder weerstand bied. Hierdie proses kan so lank neem as wat u wil, aangesien u kan verdwaal deur die gedrukte dele perfek te laat lyk.

Ekstra notas: U kan die gate in die 3D-gedrukte dele weer boor met 'n 3 mm-bietjie. Al die gate is van dieselfde afmetings. Dit sal dit makliker maak as u die moere later in die samestelling inskroef.

Stap 4: Ewon aanmekaar sit

Ewon aanmekaar sit
Ewon aanmekaar sit
Ewon aanmekaar sit
Ewon aanmekaar sit
Ewon aanmekaar sit
Ewon aanmekaar sit
Ewon aanmekaar sit
Ewon aanmekaar sit

Voordat ons met die samestelling begin, is daar min aanpassings aan die gedrukte dele nodig. Die lêers met die naam servolink moet toegerus wees met servoskakels wat by die servo kom, dit maak dat die 3D -gedrukte skakels goed met die servo kan skakel.

Die montering van Ewon moet reguit vorentoe geskied. Ek het prente aangeheg sodat u dit kan volg.

Bykomende aantekeninge: maak seker dat u nie die bout of skroef te hard draai nie, aangesien dit die gedrukte dele kan breek en dra.

Stap 5: Ewon opbou

Bedrading Ewon
Bedrading Ewon
Bedrading Ewon
Bedrading Ewon
Bedrading Ewon
Bedrading Ewon

Ons is by die laaste stap om Ewon lewendig te maak. Hier is die bedradingsdiagram vir die komponente saam met beelde wat die verbinding toon.

  • Servo -bestuurder is gekoppel aan die I2C -penne wat SDA en SCL van RPI is.
  • Die skerm is gekoppel aan die RX- en TX -penne van RPI
  • Mikrofoon en luidsprekers is gekoppel aan die USB -klankkaart wat via die USB -poort aan RPI gekoppel is.

Waarskuwing: wees versigtig om u RPI te kort. Kontroleer al u verbindings twee keer en maak seker dat u geen foute begaan het nie. Al die toebehore wat luidspreker, servo -bestuurder en skerm is, word aangedryf deur 'n aparte 5v -battery en gebruik nie die Raspberry Pi 5v -lyn nie. Framboos pi word slegs gebruik om data na die bykomstighede te stuur, maar nie om dit van krag te voorsien nie.

Stap 6: Hey Ewon! Kan jy my hoor?

Haai Ewon! Kan jy my hoor?
Haai Ewon! Kan jy my hoor?

Ons het dus al ons bykomstighede aangeheg en al die nodige biblioteke geïnstalleer. U kan Ewon begin deur die shell -script met./run Ewon.sh uit te voer, maar wat is hierdie.sh -script? Ewon gebruik baie verskillende biblioteke met verskillende skrifte (Google assistent SDK, Snowboy, Adafruit, ens.). Al die skrifte word in hul onderskeie vouers geplaas. (Ons kan al die lêers op dieselfde pad skuif en al die skrifte georganiseer het, maar tans kan sommige van die biblioteke nie die bronlêers verskuif nie, so ons hou dit vir eers op hul onderskeie plekke). is skulpskrifte wat al hierdie skrifte een vir een vanaf elke plek uitvoer, sodat u nie handmatig na elke plek hoef te gaan en die skrifte uit te voer nie. Dit maak dit makliker om al die opdragte te hanteer.

Sodra u die shell -script uitgevoer het, sê net 'Hey Ewon!' en jy moet sien dat Ewon na jou begin luister. Nou kan u Ewon as Google -assistent gebruik en daarmee praat, en u kan sien dat Ewon uitdrukkings verander van wat u sê. Probeer iets soos "Hey Ewon! Ek is vandag hartseer "en jy kan sien dat Ewon saam met jou hartseer is. Vra Ewon vir 'n grap en sien hoe hy lag vir die grap.

Stap 7: Wat is volgende?

Ewon stop nie hier nie. Ewon het nou 'n manier om emosies op te spoor en te wys, maar ons kan dit baie meer doen. Dis net die begin.

In die komende opdatering werk ons aan hoe om dit te maak

  • Ewon ontdek gesigte en volg u gesig en beweeg saam met u gesig.
  • Ons sal klankeffekte byvoeg om 'n ekstra diepte aan die karakter te gee.
  • Voeg mobiliteit by sodat Ewon saam met u kan beweeg.

Opmerking: weens die huidige situasie is dit baie moeilik om onderdele vir die projek te kry. Dit het my ontwerp en funksionaliteit verander, gegewe die gedagtes wat ek in my voorraad gehad het. Maar sodra ek al die dele in die hande kry, werk die bogenoemde projek nie by nie.

Opdaterings:

  • 'N Paar veranderinge aan die kode aangebring, en die dopskrif is verwyder.
  • Bygevoeg 'n reghoekige liggaam vir EWON.

Aanbeveel: