فهرست مطالب:

ربات خانگی EWON Raspberry Pi: 7 Step (همراه با تصاویر)
ربات خانگی EWON Raspberry Pi: 7 Step (همراه با تصاویر)

تصویری: ربات خانگی EWON Raspberry Pi: 7 Step (همراه با تصاویر)

تصویری: ربات خانگی EWON Raspberry Pi: 7 Step (همراه با تصاویر)
تصویری: بهترین ربات‌های شخصی دنیا! 2024, جولای
Anonim
ربات خانگی EWON Raspberry Pi Powered
ربات خانگی EWON Raspberry Pi Powered
ربات خانگی EWON Raspberry Pi Powered
ربات خانگی EWON Raspberry Pi Powered
ربات خانگی EWON Raspberry Pi Powered
ربات خانگی EWON Raspberry Pi Powered

توسط sharathnaikSharathnaik.com بیشتر توسط نویسنده دنبال کنید:

تجسم کننده قلب | ضربان قلب خود را ببینید
تجسم کننده قلب | ضربان قلب خود را ببینید
تجسم کننده قلب | ضربان قلب خود را ببینید
تجسم کننده قلب | ضربان قلب خود را ببینید
DIY- نوت بوک جیبی جین (با تصاویر)
DIY- نوت بوک جیبی جین (با تصاویر)
DIY- نوت بوک جیبی جین (با تصاویر)
DIY- نوت بوک جیبی جین (با تصاویر)
PUPPI
PUPPI
PUPPI
PUPPI

درباره: مهندسی و طراحی بیشتر درباره sharathnaik »

به تازگی با توجه به شرایط فعلی خود را در حال تماشای زیاد سریال های Netflix دیدم ، امیدوارم همگی در سلامت باشید و دیدم که فصل 5 سریال Black Mirror منتشر شد. مجموعه ای گلچین که حول محور گروهی از زندگی شخصی افراد و نحوه دستکاری فناوری در رفتار آنها می چرخد.

و یکی از قسمت هایی که توجه من را به خود جلب کرد ، راشل ، جک و اشلی تو بود. یکی از شخصیت های اصلی این مجموعه یک ربات خانگی به نام Ashley O است و آن ربات شخصیت های زیادی در اطراف خود دارد و من خودم فکر کردم باید یکی از آنها را بسازم ، این یک پروژه خوب برای شروع برنامه نویسی است اگر نه آن زمان حداقل من می توانم آن را طوری برنامه ریزی کنم که به شوخی های من بخندد.!

اوون / چه کسی است؟ چه کاری می تواند انجام دهد؟

بنابراین قبل از شروع به کار روی این پروژه ، برخی از قوانین اساسی را که باید رعایت شود ، تعیین کردم. این پروژه باید باشد

  • امتحان کردن برای همه آسان است
  • نه تنها در مورد ناز بودن بلکه مفید است تا در قفسه به پایان نرسد
  • ماژولار ، به طوری که می توانید به افزودن ویژگی های جدید ادامه دهید.

پس از تنظیم این قانون ، تصمیم گرفتم از SDK دستیار Google استفاده کنم. این SDK ویژگی های زیادی را که من به دنبال آن بودم ارائه می دهد و اگر از Ewon خسته شدید ، همیشه از آن به عنوان یک دستگاه Google Home استفاده کنید و همان کاری را که خانه Google انجام می دهد انجام دهید.

کاری که اوون انجام می دهد اضافه کردن یک شخصیت به دستیار Google است. این نشان دهنده احساسات و واکنش به گفته های کاربر است. در حال حاضر این فقط صدایی نیست که می شنوید ، بلکه می توانید نحوه واکنش نشان دهید.

توجه: این دستورالعمل در حال توسعه است. به زودی همه فایلهای مربوطه را بارگذاری می کنم. متشکرم

مرحله 1: قطعات مورد نیاز برای Ewon

الکترونیک

  • تمشک PI
  • سروو SG90 (x4)
  • Servo MG995 - استاندارد (x2)
  • سروای درایور 16 کاناله PCA9685
  • کارت صدا USB
  • میکروفون
  • بلندگوها (هر بلندگوی کوچکی انجام می دهد ، چیزی شبیه به این)
  • اتصالات هدر پین زنانه و مردانه
  • تخته نان
  • Nextion Display

بسترها و بلبرینگ ها

  • M3*10 میلی متر (x10)
  • M3*8 میلی متر (x10)
  • M3 مهره (x20)
  • یاتاقان

    • OD: 15 میلی متر شناسه: 6 میلی متر عرض: 5 میلی متر (x2)
    • OD: 22 میلی متر شناسه: 8 میلی متر عرض: 7 میلی متر (x2)

مواد دیگر

  • بن بست

    • 40 میلی متر (x4)
    • 30 میلی متر (x4)

ابزارها

چاپگر سه بعدی

مرحله 2: درک Ewon و برنامه نویسی

آشنایی با Ewon و برنامه نویسی
آشنایی با Ewon و برنامه نویسی
آشنایی با Ewon و برنامه نویسی
آشنایی با Ewon و برنامه نویسی
آشنایی با Ewon و برنامه نویسی
آشنایی با Ewon و برنامه نویسی

قبل از شروع به برنامه نویسی ، اجازه دهید به طور خلاصه نمودار بلوک مدار Ewon را توضیح دهم.

RPI (Raspberry pi) مغز سیستم است. درایور سرو که توسط RPI کنترل می شود سروو را هدایت می کند. صفحه نمایش توسط RPI با ارتباط سریال برای نشان دادن احساسات و در نهایت ، میکروفون و بلندگوها برای ارتباط با Ewon کنترل می شود. اکنون که می دانیم سخت افزار چه کاری انجام می دهد ، بیایید برنامه نویسی Ewon را شروع کنیم.

نصب SDK دستیار Google

اجازه دهید دو دلیل را برای برنامه ریزی من برای استفاده از Google Assistant توضیح دهم:

  • من می خواستم Ewon نه تنها یک ربات سرگرم کننده بلکه یک ربات مفید نیز باشد. Google Assistant SDK در حال حاضر دارای منابع زیادی است که می توانید از آنها برای افزایش عملکرد Ewon استفاده کنید.
  • همچنین می توانید از اقدامات در google و جریان گفتگو استفاده کنید تا به Ewon توانایی چت با پاسخ های از پیش تعریف شده را بدهد. در حال حاضر ، ما فقط بر SDK اصلی تمرکز می کنیم.

بیایید با نصب Google SDK دستیار شروع کنیم. این نباید سخت باشد زیرا منابع زیادی برای کمک به شما در راه اندازی SDK دستیار Google در RPI وجود دارد. شما می توانید این آموزش را به همراه موارد زیر دنبال کنید:

آموزش:

پس از پایان فرآیند فوق ، باید بتوانید روی صفحه کلید Enter کلیک کرده و با دستیار صحبت کنید. این همه در مورد نصب SDK دستیار 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 $ $ cd.. /.. $ python3 setup.py build $ [sudo] python setup.py install

پس از نصب ، فایل نمایشی [موجود در پوشه - snowboy/samples/Python3/] را اجرا کنید تا ببینید آیا همه چیز به درستی کار می کند.

توجه: به راحتی می توانید نام ربات خود را به چیز دیگری نیز تغییر دهید. تنها کاری که باید انجام دهید این است که به https://snowboy.kitt.ai/ بروید و یک کلمه کلیدی سفارشی را آموزش دهید و سپس آن کلمه داغ را در همان پوشه ewon.pmdl قرار دهید.

آیا ایون می تواند احساسات را درک کند؟

اکنون که Ewon نامی دارد ، به جای اینکه آن را ربات بنامم ، از Ewon استفاده می کنم. بسیار خوب ، احساسات کوتاه ، نه ، اوون نمی تواند احساسات را درک کند ، بنابراین آنچه ما در اینجا انجام می دهیم این است که اوون با استفاده از کلمات کلیدی احساسات را در گفتار ما تشخیص دهد و سپس بیان مربوط به صورت مربوط به آن را پخش کند.

برای دستیابی به این هدف ، یک اسکریپت ساده تحلیل احساسات است. 6 کلاس احساسات مختلف وجود دارد.

تصویر
تصویر

شاد ، غمگین ، خشم ، ترس ، انزجار و تعجب. اینها کلاس های اصلی احساسات هستند و هر یک از آنها لیستی از کلمات کلیدی مرتبط با احساسات را دارند. (برای مثال خوب ، خوب ، هیجان زده ، همه تحت احساسات شادی قرار می گیرند).

بنابراین هر زمان که ما هر یک از کلمات کلیدی را در کلاس احساسات می گوییم ، احساس مربوطه ایجاد می شود. بنابراین وقتی می گویید "هی اوون!" و منتظر بمانید تا ایون صحبت کند و من همچنان می گویم "امروز روز خوبی است!" ، کلمه کلیدی "خوب" را انتخاب می کند و احساسات مربوط به "شاد" را برمی انگیزد که باعث بیان چهره برای شاد می شود.

آیا این گوشها روی Ewon هستند؟

گام بعدی استفاده از احساسات برانگیخته برای اجرای حالت مربوطه است. در مورد Ewon ، حالت چهره قابل توجه است اما حرکت گوش و گردن با استفاده از سروو و تغییر صفحه نمایش برای تغییر حرکات چشم.

ابتدا ، سرویس ها ، برای اجرای این کار بسیار آسان است می توانید این آموزش را برای راه اندازی کتابخانه سرو Adafruit دنبال کنید. پیوند:

تصویر
تصویر

سپس حداکثر و حداقل مقدار را برای همه سروها اختصاص می دهیم. این کار با جابجایی دستی هر سروو و بررسی محدودیت های آن انجام می شود. هنگامی که Ewon را مونتاژ کردید می توانید این کار را انجام دهید.

چشم به دنبال اوون

برای چشم ها ، من از صفحه نمایش Nextion استفاده می کنم که دارای دسته ای از تصاویر مانند تصویر زیر است.

تصویر
تصویر

این دنباله ای از تصاویری است که من در فتوشاپ طراحی کرده ام و وقتی به صورت متوالی پخش شوند یک انیمیشن می سازد. دنباله ای مشابه برای همه احساسات ایجاد شد. اکنون برای نمایش هرگونه احساسی تنها کاری که باید انجام دهید این است که دنباله تصویر خاصی را که انیمیشن را تشکیل می دهد فراخوانی کنید. فایلها داخل پوشه "نمایش فایلها" هستند ، پیوند بارگیری در زیر.

سرانجام

وقتی همه احساسات شاد توسط اسکریپت ایجاد می شود ، همه چیز را کنار هم قرار می دهیم ، تابع شاد خوانده می شود و سروو به زوایای تنظیم شده حرکت می کند و انیمیشن چشم شاد را نمایش می دهد. بنابراین اینگونه است که ما به "درک" احساسات انسانی دست می یابیم. این روش بهترین نیست و مواقعی وجود دارد که کلمات کلیدی همان احساسی را که از قبل تعریف شده است ندارند ، اما در حال حاضر ، این به اندازه کافی خوب کار می کند و شما همیشه می توانید کلمات کلیدی بیشتری را برای افزایش دقت تشخیص اضافه کنید. بعلاوه ، می توان آن را با یک مدل تجزیه و تحلیل احساسات بسیار تر مانند مدل تجزیه و تحلیل Paralleldots جایگزین کرد تا نتایج بهتری به دست آورد. اما وقتی آن را امتحان کردم تاخیرهای زیادی وجود داشت که باعث می شد اوون کندتر واکنش نشان دهد. شاید Ewon نسخه 2.0 چیزی شبیه به این داشته باشد.

این پیوند به تمام فایل های مورد نیاز برای اجرای EWON است. فایل را بارگیری کرده و مراحل زیر را دنبال کنید:

  • فایل را از حالت فشرده خارج کنید و این پوشه (Ewon) را در خانه قرار دهید/pi/
  • شناسه دستگاه و شناسه مدل را در فایل main.py اضافه کنید. شناسه هنگام نصب SDK دستیار Google به دست می آید.
  • خط فرمان را باز کرده و منبع دستورات زیر را اجرا کنید:

source env/bin/activpython main.py models/Ewon.pmdl

مرحله 3: چاپ بدنه

فایلهای سه بعدی را می توانید در اینجا پیدا کنید:

اکنون که همه ما با مغز Ewon وقت داریم که بدن خود را چاپ کنیم. 18 قسمت منحصر به فرد برای چاپ وجود دارد ، اکثر آنها بسیار کوچک هستند ، و زمان کل چاپ آنها حدود 15-20 ساعت است. (به استثنای موارد).

من از PLA سفید با 50٪ پر کردن و ارتفاع لایه 2 میلی متر استفاده کردم. در صورت نیاز می توانید این مقادیر را تغییر دهید ، اما باید خوب کار کند ، اما مطمئن شوید که قطعات کوچک 100 inf پر شده اند.

پس از چاپ فایل ها ، می توانید از کاغذ سنباده یا یک فایل دستی استفاده کنید و قسمت های چاپ شده را بویژه پیوندهایی که قطعات روی هم قرار می گیرند ، پاک کنید. صاف شدن مفاصل باعث صاف شدن مکانیسم و مقاومت کمتر در برابر سروو می شود. این روند می تواند تا زمانی که شما می خواهید طول بکشد ، زیرا کسی می تواند در تلاش برای جلوه دادن کامل قطعات چاپ شده گم شود.

نکات اضافی: می توانید با استفاده از یک بیت 3 میلی متری سوراخ های قسمت های چاپ سه بعدی را دوباره سوراخ کنید. همه سوراخ ها دارای ابعاد یکسانی هستند. این کار هنگام پیچاندن مهره ها بعداً در مونتاژ ، کار را راحت تر می کند.

مرحله 4: جمع آوری Ewon با هم

کنار هم قرار دادن اوون
کنار هم قرار دادن اوون
کنار هم قرار دادن اوون
کنار هم قرار دادن اوون
کنار هم قرار دادن اوون
کنار هم قرار دادن اوون
کنار هم قرار دادن اوون
کنار هم قرار دادن اوون

قبل از شروع مونتاژ ، تغییرات کمی در قطعات چاپ شده مورد نیاز است. فایلهایی که سروو پیوند نامیده می شوند باید دارای پیوندهای سروو باشند که همراه سروو هستند ، این باعث می شود پیوندهای چاپ سه بعدی به خوبی با سروو ارتباط برقرار کنند.

مونتاژ Ewon باید مستقیماً رو به جلو باشد. تصاویری را ضمیمه کرده ام که در ادامه با آنها همراه باشید.

نکات اضافی: اطمینان حاصل کنید که هیچ یک از پیچ و مهره ها را بیش از حد سفت نکنید زیرا ممکن است قطعات چاپ شده شکسته و ساییده شوند.

مرحله 5: سیم کشی Ewon

سیم کشی Ewon
سیم کشی Ewon
سیم کشی Ewon
سیم کشی Ewon
سیم کشی Ewon
سیم کشی Ewon

ما در آخرین مرحله هستیم تا اوون را زنده کند. در اینجا نمودار سیم کشی قطعات به همراه تصاویر نشان دهنده اتصال است.

  • درایور سرو به پین های I2C متصل است که SDA و SCL RPI هستند.
  • صفحه نمایش به پایه های RX و TX RPI متصل است
  • میکروفون و بلندگوها به کارت صدا USB متصل هستند که از طریق درگاه USB به RPI متصل می شود.

هشدار: مراقب باشید که RPI خود را کوتاه نکنید. لطفاً همه اتصالات خود را دوبار بررسی کنید و مطمئن شوید که هیچ اشتباهی انجام نداده اید. تمام لوازم جانبی که بلندگو ، درایور سروو و صفحه نمایش هستند از باتری 5 ولت جداگانه تغذیه می کنند و از خط رزبری پای 5 وات استفاده نمی کنند. Raspberry pi فقط برای ارسال داده به لوازم جانبی استفاده می شود اما نه برای تغذیه آنها.

مرحله ششم: هی ایون! آیا می توانی مرا بشنوی؟

هی ایون! آیا می توانی مرا بشنوی؟
هی ایون! آیا می توانی مرا بشنوی؟

بنابراین ما همه لوازم جانبی خود را وصل کرده و همه کتابخانه های لازم را نصب کرده ایم. شما می توانید Ewon را با اجرای اسکریپت پوسته با استفاده از./run Ewon.sh شروع کنید اما این اسکریپت.sh چیست؟ Ewon از کتابخانه های مختلف با اسکریپت های مختلف (دستیار Google SDK ، Snowboy ، Adafruit و غیره) استفاده می کند. همه اسکریپت ها در پوشه های مربوطه قرار می گیرند. (ما می توانیم همه پرونده ها را در یک مسیر حرکت دهیم و همه اسکریپت ها را سازماندهی کنیم اما در حال حاضر ، برخی از کتابخانه ها اجازه جابجایی فایل های منبع را نمی دهند ، بنابراین ، در حال حاضر ، آنها را فقط در مکان های مربوطه خود نگه می داریم).sh اسکریپت های پوسته است که همه این اسکریپت ها را یک به یک از هر مکان اجرا می کند ، بنابراین نیازی نیست که به صورت دستی به هر مکان بروید و اسکریپت ها را اجرا کنید. این امر باعث سهولت در مدیریت همه دستورات می شود.

پس از اجرای اسکریپت پوسته ، فقط بگویید "Hey Ewon!" و باید ببینید ایون شروع به گوش دادن به شما می کند. اکنون می توانید از Ewon به عنوان دستیار گوگل استفاده کنید و با آن صحبت کنید و می توانید اوون را در حال تغییر عبارات از آنچه می گویید ، مشاهده کنید. چیزی شبیه به "Hey Ewon!" من امروز غمگین هستم "و شما می توانید اوون را با شما ناراحت ببینید. از اوون جوک بخواهید و ببینید که به شوخی می خندد.

مرحله 7: بعدی چیست؟

ایون اینجا متوقف نمی شود. اوون در حال حاضر راهی برای تشخیص و نشان دادن احساسات دارد ، اما ما می توانیم کارهای بیشتری انجام دهیم. این تازه شروع کار است.

در به روز رسانی آینده ، ما در مورد نحوه ساخت کار خواهیم کرد

  • Ewon چهره ها را تشخیص می دهد و چهره شما را ردیابی می کند و همراه با چهره شما حرکت می کند.
  • ما جلوه های صوتی را اضافه می کنیم تا عمق بیشتری به شخصیت بدهید.
  • تحرک را اضافه کنید تا Ewon بتواند همراه شما حرکت کند.

توجه: با توجه به شرایط فعلی ، تهیه قطعات برای پروژه بسیار مشکل شده است. این باعث شد طراحی و عملکرد را با توجه به تفکراتی که در موجودی خود داشتم تغییر دهم. اما به محض اینکه تمام قسمت ها را در دست بگیرم ، پروژه فوق را به روز می کنم.

به روز رسانی:

  • برخی تغییرات را در کد ایجاد کرد ، اسکریپت پوسته را حذف کرد.
  • یک بدنه مستطیلی برای EWON اضافه شد.

توصیه شده: