Мазмұны:
- 1 -қадам: Ewon үшін қажет бөлшектер
- 2 -қадам: Эвон мен бағдарламалауды түсіну
- 3 -қадам: денені басып шығару
- 4 -қадам: Эвонды біріктіру
- 5 -қадам: Эвонды қосу
- 6 -қадам: Эйвон! Сен мені ести аласың ба?
- 7 -қадам: Енді не болады?
Бейне: EWON Raspberry Pi қуатты үй роботы: 7 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:23
SharathnaikSharathnaik.com Автордың басқа мәліметтерін орындаңыз:
Туралы: Инженерия және дизайн sharathnaik туралы толығырақ »
Мен жақында қазіргі жағдайға байланысты Netflix-тің көптеген серияларын тамашаладым, бәріңіз амансыздар деп үміттенемін және Қара айна 5 маусымының шыққанын көрдім. Антология сериясы адамдардың жеке өмірі мен технология олардың мінез -құлқын қалай өзгертетіні туралы.
Менің назарымды аударған эпизодтардың бірі - Рэйчел, Джек және Эшли Тоо. Бұл серияның басты кейіпкерлерінің бірі - Эшли О есімді үй роботы, оның айналасында көптеген кейіпкерлер бар, мен өзім ойладым, мен оны жасауым керек деп ойлаймын, егер бұл болмаса, бағдарламалауды бастау жақсы жоба. Мен оны әзілдеріме күлетін етіп бағдарламалай аламын.!
Эвон деген не / ол кім? Ол не істей алады?
Сондықтан мен осы жобамен жұмыс жасамас бұрын, мен ұстанатын негізгі ережелерді белгіледім. Бұл жоба болуы керек еді
- Барлығына сынап көру оңай
- Сүйкімді болу ғана емес, сонымен қатар пайдалы болу үшін сөреде қалмайды
- Жаңа мүмкіндіктерді қосуды жалғастыру үшін модульдік.
Бұл ережені орнатқаннан кейін мен Google Assistant SDK қолдануды шештім. Бұл SDK мен іздеген көптеген мүмкіндіктерді ұсынады және егер сіз Ewon -дан жалықсаңыз, такси оны әрқашан Google Home құрылғысы ретінде пайдаланады және Google үйінің жұмысын жасайды.
Эвон не істейтіні - Google көмекшісіне кейіпкер қосу. Бұл эмоцияны көрсетеді және пайдаланушының айтқанына жауап береді. Енді сіз естіген дауыс ғана емес, сонымен бірге қалай әрекет ету керектігін де көре аласыз.
ЕСКЕРТПЕ: Бұл нұсқаулық әзірленуде. Мен жақын арада барлық тиісті файлдарды жүктеймін. Рақмет сізге
1 -қадам: Ewon үшін қажет бөлшектер
ЭЛЕКТРОНИКА
- Таңқурай PI
- Серво SG90 (x4)
- Servo MG995 - стандартты (x2)
- PCA9685 16 каналды сервистік драйвер
- USB дыбыстық картасы
- Микрофон
- Динамиктер (кез келген кішкентай спикер осылай жасайды)
- Әйелдер мен әйелдердің түйреуіш қосқыштары
- Нан тақтасы
- Nextion дисплейі
БАСТАУШЫЛАР ЖӘНЕ МҰЙЫНШЫЛАР
- М3*10мм (x10)
- М3*8мм (x10)
- M3 жаңғақтар (x20)
-
Мойынтірек
- OD: 15мм ID: 6мм Ені: 5мм (x2)
- OD: 22мм ID: 8мм Ені: 7мм (x2)
БАСҚА МАТЕРИАЛДАР
-
Үзіліс
- 40 мм (x4)
- 30 мм (x4)
ҚҰРАЛДАР
3D принтері
2 -қадам: Эвон мен бағдарламалауды түсіну
Бағдарламалау аспектісін бастамас бұрын, Ewon схемасының блок -схемасын қысқаша түсіндіруге рұқсат етіңіз.
RPI (Raspberry pi) - жүйенің миы. Сервисті RPI басқаратын сервистік драйвер басқарады. Дисплей RPI басқарады, эмоцияларды көрсету үшін сериялық байланыспен, ақырында микрофон мен динамиктер Ewon -мен сөйлесу үшін қолданылады. Енді біз Ewon бағдарламалауды бастайтын нәрсені білеміз.
Google көмекшісі SDK орнату
Мен Google Assistant -ті пайдалануды жоспарлаған екі себебін түсіндірейін:
- Мен Эвонның көңілді робот қана емес, сонымен қатар пайдалы болғанын қалаймын. Google Assistant SDK -те Ewon функционалдығын арттыру үшін пайдалануға болатын көптеген ресурстар бар.
- Сондай-ақ, Эвонға алдын ала анықталған жауаптармен сөйлесу мүмкіндігін беру үшін Google мен диалог ағынындағы әрекеттерді қолдануға болады. Әзірге біз тек негізгі SDK -ге назар аударамыз.
Google көмекшісі SDK орнатудан бастайық. Бұл қиын болмауы керек, себебі RPI -де Google Assistant SDK орнатуға көмектесетін көптеген ресурстар бар. Сіз бұл оқулықты орындауға болады:
Оқулық:
Жоғарыда көрсетілген процесс аяқталғаннан кейін сіз пернетақтадағы enter батырмасын шертіп, көмекшімен сөйлесуіңіз керек. Бұл Google Assistant SDK орнату туралы.
Мен оны қалай атауым керек? Эвон?
Hey Google! Бұл Google көмекшісімен сөйлесуді бастау үшін қолданылған нәрсе, өкінішке орай, google басқа таңдамалы сөзді қолдануға рұқсат бермейді. Келіңіздер, мұны қалай өзгертуге болатынын қарастырайық, осылайша біреу Ewon -ға қоңырау шалғанда Google көмекшісі іске қосылады.
Snowboy: нақты уақыт режимінде Raspberry Pi, (Ubuntu) Linux және Mac OS X үйлесімді кіріктірілген ыстық сөзді анықтайтын қозғалтқыш.
Ыстық сөз (сондай -ақ ояту сөзі немесе триггер сөзі деп аталады) - бұл компьютер басқа әрекеттерді бастау үшін сигнал ретінде үнемі тыңдайтын кілт сөз немесе фразеологизм.
Snowboy -ды RPI -ге орнатудан бастайық. Snowboy орнату үшін Assistant SDK орнатқандай виртуалды ортаны қосуды ұмытпаңыз. Осыдан бастап біз орнататын барлық нәрсе виртуалды ортада орнатылуы керек. Snowboy -ды орнату қиын болуы мүмкін, бірақ бұл сілтеме оны еш қиындықсыз орнатуға көмектеседі. Сілтеме:
Міне, жоғарыда көрсетілген сілтеме шатастыратын болса немесе орнату сәтсіз болса, орнату процесі қысқартылды.
$ [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 $ $ sudo] python setup.py орнатады
Орнатылғаннан кейін демонстрациялық файлды іске қосыңыз [қалтадан табылған - snowboy/Examples/Python3/], бәрі жақсы жұмыс істейтінін білу үшін.
Ескерту: сіз роботтың атауын оңай өзгерте аласыз. Сіз тек https://snowboy.kitt.ai/ сайтына кіріп, арнайы жылдам сөзді үйретіп, содан кейін сол ыстық сөзді ewon.pmdl қалтасына орналастыруыңыз керек.
Эвон эмоцияларды түсіне алады ма?
Енді Эвонның есімі бар болса, мен оны робот деп емес, Эвонды қолданамын. Жарайды, эмоциялар, қысқа жауаптар жоқ, Эвон эмоцияларды түсіне алмайды, сондықтан біз бұл жерде Эвонға эмоцияны сөйлеуде кілт сөздерді қолдана отырып анықтап, содан кейін онымен байланысты сәйкес мимиканы ойнауға мәжбүр ету.
Бұған қол жеткізу үшін мен жасаған нәрсе - сезімге талдау жасаудың қарапайым сценарийі. 6 түрлі эмоциялар класы бар.
Бақытты, қайғылы, ашуланшақ, қорқыныш, жиіркеніш және тосын сый. Бұл эмоциялардың негізгі сыныптары және олардың әрқайсысында эмоцияға байланысты кілт сөздердің тізімі бар. (мысалы, жақсы, жақсы, қуанышты, барлығы бақытты эмоцияға түседі).
Сонымен, біз эмоциялар класында кез келген кілт сөздерді айтқан кезде сәйкес эмоция іске қосылады. Сондықтан «Эйвон!» және Эвонның сөйлеуін күтіңіз, мен «Бүгін жақсы күн!» деп айтуды жалғастырамын, ол «Керемет» кілт сөзін алады және «Бақытты» эмоциясын тудырады, ол Бақытты бет әлпетін іске қосады.
Бұл құлақтар Эвонға тиді ме?
Келесі қадам - тиісті эмоцияны қолдану үшін эмоцияны қолдану. Эвонмен бет әлпеті байқалады, бірақ құлақ пен мойынды серво көмегімен жылжытады және көз қозғалысын өзгерту үшін дисплейді өзгертеді.
Біріншіден, сервистер, мұны іске қосу өте оңай, сіз осы оқулықты қолдана отырып, Adafruit серво кітапханасын орната аласыз. Сілтеме:
Содан кейін біз барлық серверлер үшін максималды және минималды мәнді тағайындаймыз. Бұл әр серводы қолмен жылжыту және оның шектерін тексеру арқылы жүзеге асады. Сіз мұны Эвонды құрастырғаннан кейін жасай аласыз.
Эвонға арналған көздер
Көз үшін мен Nextion дисплейін қолданамын, онда төмендегі суреттер бар.
Бұл мен фотошопта жасаған суреттер тізбегі, ол кезекпен ойнағанда анимация жасайды. Ұқсас реттілік барлық эмоциялар үшін құрылды. Енді кез келген эмоцияны көрсету үшін анимацияны құрайтын белгілі бір суреттер тізбегін шақыру жеткілікті. Файлдар 'Файлдарды көрсету' қалтасында, төмендегі жүктеу сілтемесі.
Ақырында
Бақытты эмоция сценарий арқылы қозғалса, мұның бәрін қосқанда бақытты функция шақырылады, ал серво қазірдің өзінде орнатылған бұрыштарға ауысады және дисплей бақытты көз анимациясын ойнайды. Осылайша біз адамның эмоциясын «түсінуге» қол жеткіземіз. Бұл әдіс ең жақсы емес және кейде кілт сөздер алдын ала анықталғандай эмоцияға енбейтін кездер болады, бірақ әзірше бұл жеткілікті түрде жақсы жұмыс істейді және анықтаудың дәлдігін арттыру үшін сіз әрқашан кілт сөздерді қосуға болады. Бұдан басқа, бұл жақсы нәтиже алу үшін Paralleldots Emotion талдау моделі сияқты әлдеқайда дайын эмоцияларды талдау моделімен ауыстырылуы мүмкін. Бірақ мен оны сынап көргенде, Эвонның реакциясын баяулататын көптеген кідірістер болды. Мүмкін, Ewon 2.0 нұсқасында осындай нәрсе болуы мүмкін.
Бұл EWON -ды іске қосуға қажетті барлық файлдарға СІЛТЕМЕ. Файлды жүктеп алып, келесі қадамдарды орындаңыз:
- Осы қалтаны (Ewon) файлды үйден шығарыңыз/pi/
- Main.py файлына құрылғы идентификаторы мен үлгі идентификаторын қосыңыз. Идентификатор Google көмекшісі SDK орнату кезінде алынады.
- Пәрмен жолын ашып, келесі пәрмендердің көзін іске қосыңыз:
env/bin/activatepython main.py модельдері/Ewon.pmdl
3 -қадам: денені басып шығару
Сіз 3D файлдарды мына жерден таба аласыз:
Енді біз барлығымыз Эвонның миымен оның денесін басып шығаруға дайынбыз. Басып шығарылатын 18 бірегей бөлік бар, олардың көпшілігі өте кішкентай, жалпы басып шығару уақыты шамамен 15-20 сағатты құрайды. (жағдайларды қоспағанда).
Мен 50% толтырылатын және қабат биіктігі 2 мм ақ PLA қолдандым. Қажет болса, бұл мәндерді өзгертуге болады, ол жақсы жұмыс істеуі керек, бірақ беріктігі үшін кішкене бөліктерде 100% толтыру бар екеніне көз жеткізіңіз.
Файлдар басып шығарылғаннан кейін сіз зығыр қағазды немесе қолмен жұмыс істейтін файлды қолдана аласыз және басып шығарылған бөліктерді, әсіресе бөліктер бір -бірінен өтетін сілтемелерді тазалай аласыз. Буындарды тегістеу механизмді тегіс етеді және сервоға аз қарсылық береді. Бұл процесс сіз қалағанша созылуы мүмкін, себебі басып шығарылған бөлшектерді мінсіз етіп көрсету үшін адасып кетуге болады.
Қосымша ескертулер: 3мм биттік көмегімен 3D басып шығарылған бөліктердегі тесіктерді қайта бұрғылауға болады. Барлық тесіктердің өлшемдері бірдей. Бұл гайкаларды бұрау кезінде құрастыруды жеңілдетеді.
4 -қадам: Эвонды біріктіру
Құрастыруды бастамас бұрын басып шығарылған бөліктерге аздаған өзгертулер қажет. Серво сілтемесі деп аталатын файлдарға сервомен бірге жеткізілетін серво сілтемелері орнатылуы керек, бұл 3d басылған сілтемелерді сервоға жақсы қосуға мүмкіндік береді.
Эвонның жиналысы тікелей алға қарай жүруі керек. Мен сізге ілесуге болатын суреттерді қостым.
Қосымша ескертулер: Бұрандалар мен бұрандалардың ешқайсысын қатайтпаңыз, себебі бұл басып шығарылған бөліктерді сындыруы және тозуы мүмкін.
5 -қадам: Эвонды қосу
Біз Эвонды өмірге әкелудің соңғы сатысында тұрмыз. Міне, қосылымды көрсететін суреттермен бірге компоненттердің қосылу схемасы.
- Серво драйвері RPI SDA және SCL болып табылатын I2C түйреуіштеріне қосылады.
- Дисплей RPI RX және TX түйреуіштеріне қосылған
- Микрофон мен динамиктер USB порты арқылы RPI -ге қосылған USB дыбыс картасына қосылған.
Ескерту: RPI қысқартудан абай болыңыз. Барлық қосылымдарды екі рет тексеріңіз және қате жасамағаныңызға көз жеткізіңіз. Динамик, серво драйвері және дисплей болып табылатын барлық керек -жарақтар 5В бөлек батареямен жұмыс істейді және Raspberry Pi 5v желісін пайдаланбайды. Raspberry pi тек керек -жарақтарға деректерді жіберу үшін қолданылады, бірақ оларды қосу үшін емес.
6 -қадам: Эйвон! Сен мені ести аласың ба?
Сондықтан біз барлық керек -жарақтарды қосып, барлық қажетті кітапханаларды орнаттық. Сіз Ewon -ды қабық сценарийін іске қосу арқылы бастай аласыз./run Ewon.sh, бірақ бұл.sh сценарийі не? Эвон әртүрлі сценарийлері бар көптеген кітапханаларды пайдаланады (Google көмекшісі SDK, Snowboy, Adafruit және т. Барлық сценарийлер тиісті қалталарға орналастырылады. (Біз барлық файлдарды бір жолмен жылжыта аламыз және барлық сценарийлерді реттей аламыз, бірақ қазіргі уақытта кейбір кітапханалар бастапқы файлдарды жылжытуға рұқсат бермейді, сондықтан оларды әзірге өз орындарында сақтаймыз).sh бұл барлық сценарийлерді әр жерден бір -бірлеп іске қосатын қабық сценарийлері, сондықтан әр жерге қолмен барып, сценарийлерді іске қосудың қажеті жоқ. Бұл барлық командаларды басқаруды жеңілдетеді.
Қабық сценарийін іске қосқаннан кейін «Эйвон!» Деп айтыңыз. және сен Эвонның сені тыңдай бастағанын көруің керек. Енді сіз Ewon -ды google көмекшісі ретінде қолдана аласыз және онымен сөйлесе аласыз, сіз Ewon -дың сөйлеген сөздеріңіздің өзгеретінін көре аласыз. «Эй Эйвон! Мен бүгін қайғырып тұрмын «және сен Эвонның сенімен бірге мұңайғанын көресің. Эвоннан әзіл сұраңыз және оның әзілге күлетінін көріңіз.
7 -қадам: Енді не болады?
Эвон мұнымен тоқтамайды. Эвонның эмоцияларды анықтау мен көрсету әдісі бар, бірақ біз одан да көп нәрсені жасай аламыз. Бұл тек бастамасы.
Алдағы жаңартуда біз оны қалай жасау керектігі туралы жұмыс жасаймыз
- Эвон беттерді анықтап, бетіңізді қадағалап, бетіңізбен бірге қозғалады.
- Біз кейіпкерге қосымша тереңдік беру үшін дыбыстық эффектілер қосамыз.
- Эвон сізбен бірге жүруі үшін ұтқырлықты қосыңыз.
Ескерту: Қазіргі жағдайға байланысты жобаның бөлшектерін алу өте қиынға соқты. Бұл менің инвентарьдағы ойларымды ескере отырып, дизайн мен функционалдылықты өзгертуге мәжбүр етті. Бірақ мен барлық бөліктерге қол жеткізе салысымен жоғарыдағы жобаны жаңартамын.
Жаңартулар:
- Кодқа кейбір өзгерістер енгізілді, қабық сценарийі жойылды.
- EWON үшін тікбұрышты корпус қосылды.
Ұсынылған:
Arduino және Raspberry Pi қуатты жануарларды бақылау жүйесі: 19 қадам (суреттермен)
Arduino және Raspberry Pi қуатты жануарларды бақылау жүйесі: Жақында демалыста біз Beagle үй жануарымен байланыс жоқ екенін түсіндік. Кейбір зерттеулерден кейін біз үй жануарларын бақылауға және олармен сөйлесуге мүмкіндік беретін статикалық камерасы бар өнімдерді таптық. Бұл жүйелердің белгілі бір артықшылықтары болды
Қуаныш роботы (Robô Da Alegria) - Ашық бастапқы коды 3D басып шығарылған, Arduino қуатты робот!: 18 қадам (суреттермен)
Қуаныш роботы (Robô Da Alegria) - Ашық бастапқы коды 3D басып шығарылған, Arduino қуатты робот!: Instructables Wheels байқауының бірінші жүлдесі, Instructables Arduino байқауының екінші жүлдесі және Design for Kids Challenge турнирінің жүлдегері. Бізге дауыс бергендердің барлығына рахмет !!! Барлық жерге роботтар келеді. Өнеркәсіптік қосымшалардан сізге
Қуатты металл роботы бар резервуарды қалай құруға болады: 6 қадам (суреттермен)
Қуатты металл RC роботын қалай құруға болады: жақсы достар! Сонымен, мен қызықты болатын қандай да бір жоба туралы ойладым және мен, әрине, металдан жасалған белгіге цистерна (ғарышта жүзу) салуды шештім. 100% Менің құрылысым жоғары сапалы және дәл, көптеген бөліктер
Май роботы: экзистенциалды дағдарысы бар Arduino роботы: 6 қадам (суреттермен)
Сары май роботы: экзистенциалды дағдарысы бар Arduino роботы: Бұл жоба «Рик пен Морти» анимациялық сериясына негізделген. Эпизодтардың бірінде Рик робот жасайды, оның жалғыз мақсаты - май әкелу. Брюсфейдің (Брюссель инженерлік факультетінің) студенттері ретінде бізде механикаға тапсырма бар
[Arduino роботы] Роботты қалай түсіруге болады - Бас бармақ роботы - Серво моторы - Бастапқы код: 26 қадам (суреттермен)
[Arduino роботы] Роботты қалай түсіруге болады | Бас бармақ роботы | Серво моторы | Бастапқы код: Бас бармақ роботы. MG90S сервоқозғалтқышының потенциометрі қолданылды. Бұл өте көңілді және оңай! Код өте қарапайым. Бұл шамамен 30 жол. Бұл қозғалысты түсіруге ұқсайды. Кез келген сұрақ немесе пікір қалдырыңыз! [Нұсқаулық] Бастапқы код https: //github.c