ورکشاپ آموزشی - آیسی مدار
رفتن به محتوا

گجت پوشیدنی AI Pin: دستیار صوتی و تصویری هوشمند

رباتیک و هوشمندسازی
۰ نظر
۶۹ نفر
کد ۳۰۷۲

دنیای گجت‌های پوشیدنی روزبه‌روز در حال پیشرفته، و دستیارهای صوتی که همیشه همراهت باشن، دیگه فقط تو فیلم‌های علمی‌تخیلی نیستن. تو این پروژه قراره در آیسی‌مدار با هم یک "AI Pin" اختصاصی و دست‌ساز بسازیم. این دستگاه یک گجت پوشیدنی کوچکه که روی لباست نصب می‌شه و به کمک هوش مصنوعی، می‌تونه صداها رو بشنوه، حرف بزنه و حتی محیط اطراف و اشیاء رو ببینه!

مغز متفکر این پروژه برد قدرتمند و فوق‌العاده جمع‌وجور XIAO ESP32-S3 Sense هست که هم قابلیت اتصال به وای‌فای رو داره و هم میکروفون و دوربین روی خودش تعبیه شده. برای این که دستیارمون بتونه باهامون حرف بزنه، از یک آمپلی‌فایر I2S (مدل MAX98357A) و یک اسپیکر مینیاتوری استفاده می‌کنیم تا صدای باکیفیت و دیجیتال رو تولید کنه. کل این سیستم با یک باتری لیتیوم پلیمری کوچیک روشن می‌مونه.

از طراحی مدار و ساخت PCB گرفته تا فلش کردن فرم‌ور و کانفیگ کردن پلتفرم ابری Xiaozhi، همه چیز رو تو این آموزش قدم‌به‌قدم با هم پیش می‌بریم. در نهایت یک قاب پرینت سه‌بعدی شده برای دستگاه می‌سازیم که با مگنت روی لباس قرار می‌گیره. آماده‌ای که دستیار هوشمند خودت رو بسازی؟ بریم سراغ قطعات!

قطعات موردنیاز

  • برد XIAO ESP32-S3 Sense (کنترلر اصلی با پشتیبانی از Wi-Fi، میکروفون و دوربین)
  • آمپلی‌فایر I2S مدل MAX98357A (برای تبدیل دیتای صوتی دیجیتال از برد S3 به صدای خروجی اسپیکر)
  • اسپیکر مینیاتوری 8 اهم 2 وات (اسپیکر باریک برای پخش صدای دستیار صوتی)
  • باتری لیتیوم پلیمر (Li-Po) 3.7 ولت (منبع تغذیه قابل حمل)
  • برد مدار چاپی (PCB) اختصاصی (یا بردبورد برای ساخت نمونه اولیه)
  • پین هدر
  • سیم‌های جامپر
  • پیچ‌های نصب و اسپیسر (Standoff)
  • قاب پرینت سه‌بعدی شده
  • توری یا محفظه باز برای اسپیکر
  • محفظه باز برای میکروفون
مرحله ۱

طراحی مدار و مونتاژ قطعات روی PCB

اتصالات مدار:

بعد از این که قطعات رو آماده کردی، اولین قدم اینه که برد XIAO ESP32-S3 Sense رو به آمپلی‌فایر MAX98357A و اسپیکر متصل کنیم.

  1. ماژول MAX98357A با استفاده از رابط صوتی I2S با ESP32-S3 ارتباط برقرار می‌کنه. این پروتکل به ما اجازه می‌ده تا صدای دیجیتال رو با کیفیت خیلی بالا برای دستیار صوتی پخش کنیم.
  2. تمام قطعات رو دقیقا مطابق نقشه سیم‌کشی که بالا قرار داده شده وصل کن و قبل از این که سراغ ساخت PCB بری، مدار رو روی بردبورد تست کن. این تست اولیه بهت اطمینان می‌ده که میکروفون، اسپیکر، آمپلی‌فایر و اتصالات تغذیه همگی بی‌نقص کار می‌کنن.
  3. وقتی نمونه اولیه‌ات جواب داد و کار کرد، پروژه رو به فاز طراحی مدار چاپی (PCB) اختصاصی منتقل کردیم تا دستگاه تا جای ممکن جمع‌وجور بشه و برای پوشیدن روی لباس مناسب باشه.

چیدمان و طراحی PCB:

برای این که اندازه کلی گجت AI Pin رو به حداقل برسونیم، این استراتژی رو پیاده کردیم:

  1. برد XIAO ESP32-S3 Sense روی قسمت بالایی PCB قرار می‌گیره.
  2. ماژول آمپلی‌فایر و قطعات جانبی روی سطح پایینی برد نصب می‌شن.
  3. اسپیکر هم به صورت ساندویچی، دقیقا بین PCB و ماژول آمپلی‌فایر قرار می‌گیره.

این طراحی "ساندویچی" کمک کرد ضخامت نهایی دستگاه به شدت کم بشه و در عین حال فضای کافی برای قرارگیری باتری داخل قاب باقی بمونه. بعد از بررسی مجدد اتصالات و ترک‌های مدار، فایل‌های گربر (Gerber) تولید شدن تا برای تولید به کارخانه ارسال بشن.

تولید مدار چاپی:

فایل‌های گربر برای شرکت NEXTPCB ارسال شد. این شرکت خدمات مختلفی مثل مونتاژ قطعات، بردهای چندلایه و بردهای منعطف رو ارائه می‌ده.

  1. خدمات ساخت نمونه اولیه PCB
  2. مونتاژ کامل قطعات روی برد (PCBA)
  3. ساخت بردهای چندلایه
  4. پشتیبانی از بردهای HDI
  5. خدمات تولید بردهای منعطف (Flexible) و صلب-منعطف (Rigid-flex)
  6. راهکارهای مونتاژ سطحی (SMT)

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

وقتی بردها به دستم رسید، فرآیند مونتاژ رو شروع کردم؛ اول قطعات نصب سطحی (SMD) لحیم شدن و بعد از اون، قطعات دیپ (DIP) و پایه‌دار رو مونتاژ کردم.

مونتاژ قطعات SMD:

  1. اول با استفاده از شابلون (استنسیل) که همراه بردها سفارش داده بودم، خمیر قلع رو روی پدهای PCB پخش کردم.
  2. بعد از زدن خمیر قلع، تمام قطعات SMD از جمله خود ماژول XIAO ESP32-S3 Sense رو یکی‌یکی و با دقت روی پدها قرار دادم.
  3. وقتی همه قطعات دقیقا سر جاشون تنظیم شدن، برد رو روی هیت‌پلیت (Hot Plate) گذاشتم تا خمیر قلع ذوب بشه و قطعات لحیم بشن.

مونتاژ قطعات دیپ (DIP):

  1. بعد از تموم شدن کار قطعات SMD، رفتم سراغ قطعات پایه‌داری که باید از داخل سوراخ‌های برد رد می‌شدن.
  2. اول اسپیکر رو مستقیم روی PCB نصب کردم. بعد از اون، ماژول آمپلی‌فایر MAX98357A رو دقیقا بالای اسپیکر قرار دادم و پایه‌هاش رو لحیم کردم.
  3. این چیدمان روی هم، سایز نهایی دستگاه رو به حداقل رسوند و فضای داخلی قاب رو برای باتری خالی نگه داشت.
  4. با تکمیل شدن لحیم‌کاری‌ها، بخش سخت‌افزار پروژه رسما تموم شد و دستگاه برای فلش کردن فرم‌ور و قرار گرفتن تو قاب آماده شد.
مرحله ۲

فلش کردن (آپلود) فرم‌ور روی برد

در این پروژه برای آپلود فایل‌های باینری (Binary Files) مورد نیاز روی میکروکنترلر، از نرم‌افزار ESP Flash Download Tool استفاده می‌کنیم.

1. دانلود نرم‌افزار Flash Tool:

اول از همه، نرم‌افزار ESP Flash Download Tool رو برای سیستم‌عامل ویندوز دانلود کن. این برنامه وظیفه انتقال فایل‌های فرم‌ور به برد XIAO ESP32-S3 Sense رو بر عهده داره. (نکته: نرم‌افزاری که تو این آموزش استفاده شده، فقط نسخه ویندوزی داره). بعد از دانلود، فایل ZIP رو از حالت فشرده خارج کن و برنامه رو اجرا کن.

2. تنظیمات اولیه نرم‌افزار:

وقتی برنامه باز می‌شه، صفحه انتخاب چیپ رو می‌بینی. تنظیمات رو دقیقا به این شکل وارد کن:

  1. مدل چیپ (Chip Type): ESP32-S3
  2. حالت کاری (WorkMode): Develop
  3. نحوه بارگذاری (LoadMode): UART

بعد از انتخاب گزینه‌ها، روی OK کلیک کن.

3. دانلود فایل‌های فرم‌ور:

حالا باید فایل‌های باینری (.bin) پروژه رو از مخزن (Repository) مربوطه در گیت‌هاب دانلود کنی. این پکیج شامل فایل‌های زیر می‌شه:

  1. xiao.bin

قبل از ادامه کار، این فایل‌ها رو هم اکسترکت کن.

4. انتخاب فایل‌های باینری و تعیین آدرس حافظه:

تو محیط نرم‌افزار Flash Download Tool، فایل‌های bin. که دانلود کردی رو یکی‌یکی انتخاب کن و آدرس مربوط به هرکدوم رو روبه‌روش وارد کن:

  1. فایل bootloader.bin با آدرس 0x0
  2. فایل xiaozhi.bin با آدرس 0x20000
  3. فایل partition-table.bin با آدرس 0x8000
  4. فایل ota-data-initial.bin با آدرس 0xd000
  5. فایل generated-assets.bin با آدرس 0x600000

مطمئن شو که تیک کنار همه فایل‌های انتخاب‌شده زده شده باشه. همچنین پورت COM مربوط به برد ESP32-S3 رو هم به درستی انتخاب کن.

5. پاک کردن فرم‌ور قبلی (Erase):

قبل از آپلود فایل‌های جدید، حتما روی دکمه Erase کلیک کن تا تمام اطلاعات و فرم‌ورهای قبلی که روی برد ذخیره شده پاک بشه. صبر کن تا فرآیند Erase کاملا تموم بشه و بعد برو سراغ مرحله بعد.

6. شروع آپلود فرم‌ور:

وقتی پاک‌سازی حافظه تموم شد، روی دکمه Start کلیک کن تا فلش کردن فرم‌ور آغاز بشه. نرم‌افزار شروع می‌کنه تمام فایل‌های باینری رو روی برد بارگذاری کنه. این کار ممکنه چند دقیقه زمان ببره.

7. پایان آپلود و ریست کردن برد:

بعد از این که پیغام موفقیت‌آمیز بودن آپلود رو دیدی، دکمه Reset روی برد XIAO ESP32-S3 Sense رو فشار بده. اگر همه مراحل رو درست انجام داده باشی، دستگاه بالا میاد و بلافاصله وارد حالت پیکربندی وای‌فای می‌شه.

مرحله ۳

پیکربندی نرم‌افزاری دستگاه AI Pin

بعد از فلش کردن موفقیت‌آمیز فرم‌ور، نوبت به کانفیگ کردن گجت و متصل کردنش به شبکه وای‌فای و پلتفرم ابری Xiaozhi می‌رسه.

اتصال به شبکه وای‌فای:

1. ورود به حالت تنظیمات:

بعد از فلش شدن کدها، دستگاه رو روشن کن. پس از بوت شدن سیستم، AI Pin به صورت اتوماتیک وارد حالت کانفیگ وای‌فای می‌شه و از طریق اسپیکر این جمله رو اعلام می‌کنه: "Enter the Wi-Fi configuration mode".

2. اتصال به هات‌اسپات دستگاه:

با موبایل یا لپ‌تاپ خودت، وای‌فای رو روشن کن و به شبکه‌ای که دستگاه ساخته متصل شو. اسم این هات‌اسپات به این شکل نمایش داده می‌شه:

  1. xiaozhi

3. باز کردن پورتال تنظیمات:

معمولا بعد از اتصال به هات‌اسپات، صفحه تنظیمات به صورت خودکار تو مرورگرت باز می‌شه. اما اگر باز نشد، آدرس 192.168.4.1 رو دستی تو مرورگرت تایپ کن.

4. وارد کردن اطلاعات مودم:

در صفحه پورتال تنظیمات:

  1. نام مودم وای‌فای (SSID) خودت رو وارد کن
  2. رمز عبور مودمت رو بنویس

بعد از وارد کردن اطلاعات، دکمه Connect رو بزن. دستگاه ری‌استارت می‌شه و این بار به اینترنت خونه‌ات وصل می‌شه.

تنظیمات پلتفرم Xiaozhi:

بعد از اتصال به اینترنت، AI Pin با سرور اصلی Xiaozhi ارتباط برقرار می‌کنه.

1. دریافت کد تایید صوتی:

پس از راه‌اندازی مجدد، دستگاه یک کد تایید عددی رو از طریق اسپیکر برات می‌خونه. مثلا می‌گه: "6-7-3-8". این کد رو برای مرحله بعد یادداشت کن.

2. ورود به پلتفرم Xiaozhi:

مرورگرت رو باز کن و به آدرس xiaozhi.me برو. وارد بخش Console شو و به حساب کاربریت لاگین کن.

3. اضافه کردن دستگاه به اکانت:

در پنل کاربری:

  1. روی دکمه Add Device کلیک کن
  2. کد تاییدی که دستیار صوتی برات خوند رو وارد کن

با این کار، دستگاه رسما با اکانت تو همگام‌سازی می‌شه.

شخصی‌سازی دستیار هوشمند:

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

مواردی که می‌تونی تغییر بدی:

  1. نام دستیار
  2. زبان
  3. شخصیت و لحن
  4. تعریف نقش و وظایف دستیار
  5. استایل صحبت کردن

برای مثال می‌تونی دستیارت رو به یکی از این کاراکترها تبدیل کنی:

  1. یک دستیار خفن شبیه به Jarvis تو فیلم آیرون‌من
  2. یک دستیار متمرکز روی خانه هوشمند
  3. یک راهنمای فنی و علمی
  4. یک هم‌صحبت روزمره با لحن دوستانه

حتی می‌تونی از گزینه AI Optimize استفاده کنی تا خود هوش مصنوعی، توصیفاتی که برای شخصیتش نوشتی رو بهتر و کامل‌تر کنه. (نکته: توضیحات کاراکترت نباید بیشتر از 2000 کاراکتر بشه). بعد از انجام تنظیمات، روی Save کلیک کن.

قدم نهایی:

در آخر، دکمه Reset روی برد ESP32-S3 رو فشار بده تا دستگاه دوباره بوت بشه و تنظیمات جدیدی که روی سرور ذخیره کردی رو دریافت کنه. بعد از بالا اومدن سیستم، AI Pin شخصی و اختصاصی تو آماده استفاده است!

مرحله ۴

ساخت بدنه و قاب پرینت سه‌بعدی

برای این که ظاهر گجت AI Pin خیلی تمیز و حرفه‌ای به نظر برسه، یک قاب اختصاصی برای پرینت سه‌بعدی طراحی کردیم.

طراحی و پرینت قطعات:

  1. این قاب طوری طراحی شده که تمام قطعات داخلی رو خیلی فشرده و مرتب در خودش جا بده و در عین حال راه‌های دسترسی به اسپیکر، میکروفون، صفحه نمایش و ماژول دوربین کاملا باز و آزاد باشه.
  2. بدنه اصلی با رنگ مشکی پرینت گرفته شد و یک حلقه سفید رنگ مجزا دور لنز دوربین قرار دادیم تا ظاهر دستگاه خیلی جذاب‌تر و مینیمال بشه.

مونتاژ نهایی:

  1. بعد از پرینت قطعات، تمام سخت‌افزارها با دقت داخل کیس چیده شدن و با پیچ سر جاشون محکم شدن.
  2. به لطف طراحی خیلی فشرده روی مدار چاپی (PCB)، قطعات بدون هیچ فشاری داخل قاب جا شدن و وزن نهایی دستگاه هم به قدری سبک دراومد که برای نصب روی لباس ایده‌آله.

سیستم نصب مگنتی (آهنربایی):

  1. برای این که دستگاه راحت روی لباس نصب بشه، یک درپوش مگنتی به قسمت پشتی قاب اضافه کردیم.
  2. این سیستم اتصال مغناطیسی به AI Pin اجازه می‌ده که بدون نیاز به گیره یا بندهای آزاردهنده، خیلی محکم روی تی‌شرت یا کت بچسبه. این کار هم ظاهر گجت رو تمیزتر می‌کنه و هم استفاده روزمره ازش رو خیلی راحت‌تر می‌سازه.
مرحله ۵

تست عملکرد و قابلیت‌های دستیار

بعد از مونتاژ سخت‌افزاری و کانفیگ نرم‌افزاری، رسیدیم به جذاب‌ترین بخش کار؛ یعنی تست کردن AI Pin تو دنیای واقعی! دستگاه رو با وظایف مختلف صوتی و تصویری تست کردیم تا ببینیم هوش مصنوعیش چقدر قدرت داره.

تشخیص اشیاء (بینایی ماشین):

یکی از اولین تست‌های ما، قابلیت تشخیص اشیاء با استفاده از دوربین دستگاه بود.

  1. یک لنز دوربین عکاسی رو جلوی دستگاه گرفتیم و ازش خواستیم تشخیصش بده. دستیار به درستی لنز رو شناسایی کرد و حتی شروع کرد به دادن اطلاعات مفیدی در موردش؛ جالب این که تا حدودی متوجه محیط اطراف و بک‌گراند تصویر هم شده بود.
  2. این تست نشون داد که قابلیت پردازش تصویر یا بینایی (Vision) دستگاه چقدر قدرتمنده و می‌تونه در لحظه داده‌های بصری رو درک و تحلیل کنه.

پاسخ به سوالات اطلاعات عمومی:

در مرحله بعد، سواد عمومی دستیار هوشمندمون رو به چالش کشیدیم.

  1. در یک تست، قاب عکسی رو جلوی دوربین گرفتیم و از دستگاه خواستیم شخص داخل عکس رو معرفی کنه. هوش مصنوعی سریعا فرد رو به عنوان بنیان‌گذار رسپبری پای (Raspberry Pi) شناسایی کرد و اطلاعات کاملی درباره "ابن آپتون" (Eben Upton) بهمون داد.
  2. این تست ترکیب بی‌نظیر تشخیص تصویر و پردازش اطلاعات مبتنی بر هوش مصنوعی رو به اثبات رسوند.

کنترل خانه هوشمند و اینترنت اشیاء (IoT):

برای تست قابلیت‌های خانه هوشمند، گجت AI Pin رو به سیستم Home Assistant متصل کردیم. با دادن دستورات صوتی ساده، دستگاه تونست این کارها رو انجام بده:

  1. روشن کردن چراغ‌های استودیو با فرمان صوتی
  2. خاموش کردن چراغ‌های استودیو

این آزمایش نشون داد که AI Pin فقط یک گجت سخنگو نیست، بلکه می‌تونه با دستگاه‌های IoT تعامل داشته باشه و تجهیزات خانه هوشمند رو با صدای کاربر کنترل کنه.

نتیجه‌گیری تست‌ها:

پس از تمام این آزمایش‌ها، ثابت شد که این گجت دست‌ساز به عنوان یک دستیار پوشیدنی صوتی و تصویری، کاملا عملیاتی و قدرتمنده و این کارها رو به خوبی انجام می‌ده:

  1. تعامل صوتی بی‌نقص
  2. تشخیص اشیاء و چهره‌ها
  3. تولید پاسخ‌های هوشمندانه و دقیق بر پایه AI
  4. کنترل لوازم خانه هوشمند
  5. ارائه کمک و دستیاری در لحظه (Real-time)

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

مرحله ۶

جمع‌بندی و نتیجه‌گیری

تو این پروژه ما موفق شدیم یک دستگاه جمع‌وجور و پوشیدنی به نام AI Pin رو با استفاده از برد XIAO ESP32-S3 Sense طراحی کنیم و بسازیم. این گجت نمونه‌ای عالی از ترکیب هوش مصنوعی، اینترنت اشیاء (IoT) و سیستم‌های امبدد (توکار) بود که همگی تو یک پکیج پوشیدنی در کنار هم قرار گرفتن.

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

با طراحی یک برد مدار چاپی اختصاصی (PCB)، یک قاب شیک پرینت سه‌بعدی شده و استفاده از فرم‌ورهای کاملا متن‌باز (Open-source)، این پروژه ثابت کرد که برای داشتن گجت‌های هوشمند و پیشرفته پوشیدنی، نیازی به صرف هزینه‌های نجومی نیست و با ابزارهای ساده و در دسترس هم می‌شه تکنولوژی‌های خارق‌العاده‌ای خلق کرد.

فایل‌های پیوست

PDF Schematic-AI-Pin.pdf
ZIP AI-Pin--main.zip

تو میتونی اولین سازنده باشی!

اگه پروژه رو ساختی به اشتراک بزار و اعتبار هدیه بگیر

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

آموزش‌های مشابه

گفتگو‌های کاربران

هنوز نظری ثبت نشده؛ تو شروع کن!