برد هوش مصنوعی Sipeed

راه اندازی و کار با برد Maixduino بخش نهم: راه اندازی تراشه ESP32 WiFi

getting-started-with-sipeed-m1-maixduino-step-nine-esp32-wifi-digispark
نوشته شده توسط معین صابری

در سلسله آموزش های برد Maixduino، قسمت نهم را به قابلیت ارتباط وای فای و پردازنده ESP32 آن می پردازیم. همانطور که پیشتر هم گفته شد، برد Maixduino علاوه بر پردازنده قدرتمند K210، از پردازنده قدرمتمند دیگری به نام ESP32 هم بهره می برد. این پردازنده علاوه بر قابلیت برنامه نویسی، امکان اتصال به شبکه وای فای و در پی آن برقراری ارتباط از طریق اینترنت را داراست. در این آموزش به راه اندازی اولیه واحد وای فای و ارتباط آن با برد Maixduino می پردازیم. در ادامه این آموزش با مرجع تخصصی برد هوش مصنوعی Sipeed به زبان فارسی، دیجی اسپارک همراه باشید.

 


پردازنده ESP32 تعریف و کاربرد


پردازنده ESP32، یک پردازنده قدرتمند در اجرای پروژه های اینترنت اشیا به شمار می رود. این پردازنده که در حقیقت مدل توسعه یافته پردازنده ESP8266 است، از دو هسته تشکیل شده است. همچنین این پردازنده قابلیت اجرای برنامه ها با دستورات آردوینو را داراست. در کنار این قابلیت ها، این پردازنده دارای واحد LWIP جهت اجرای دستورات شبکه TCP/IP است. در کنار این، ESP32 قادر به ایجاد شبکه محلی (LOCAL) است. این پردازنده می تواند همانند یک مودم، به حالت نقطه دسترسی تعریف شود. در این حالت سایر دستگاه ها نظیر رایانه ها و تلفن های همراه می توانند به آن متصل شوند. همچنین این پردازنده می تواند به مودم ها و یا نقطه دسترسی های ایجاد شده توسط تلفن های همراه متصل شود.

پردازنده ESP32 در برد maixduino - دیجی اسپارک

 

برد Sipeed بین دو پردازنده K210 و ESP32 از طریق رابط سریال UART ارتباط برقرار می نماید. بدین ترتیب این دو پردازنده می توانند از این طریق به تبادل داده بپردازند. همچنین از آنجاییکه پردازنده ESP32 قادر به اجرای برنامه های آردوینو است، بدین ترتیب می توانیم یک برد فوق العاده قدرتمند با توانایی پردازش موازی در اختیار داشته باشیم. در کنار این، با توجه به قابلیت اتصال برد به اینترنت، پردازش AIOT را در اختیار داشته باشیم. جهت راه اندازی و کار با برد ESP32، سلسله آموزشی منتشر شده که با کلیک بر روی این لینک، قابل دسترسی است.  پس از معرفی و آشنایی با واحد WIFI، نوبت به راه اندازی و کار با آن می رسد. قسمت های بعدی مربوط به این مورد است.

 


وجود اشکال در راه اندازی واحد وای فای


جهت راه اندازی و کار با واحد وای فای، از طرف شرکت SIPEED مثال هایی در نرم افزار آردوینو ارائه شده است. برای دسترسی به این مثال ها می توانید در نرم افزار آردوینو روی منوی File، سپس Examples و پس از آن WiFiEsp را مطابق تصویر زیر انتخاب کنید.

راه اندازی وای فای esp32 - دیجی اسپارک

 

با انتخاب یکی از برنامه های نمونه، به عنوان مثال basic و پس از اجرای آن، با پیغام خطای زیر رو به رو خواهید شد.

[WiFiEsp] >>> TIMEOUT >>> [WiFiEsp] No tag found maixduino

 

جهت غلبه بر این مشکل، از روشی دیگری استفاده خواهیم کرد. در این روش علاوه بر حل مشکل، برخلاف روش ارائه شده توسط sipeed، از توان پردازشی پردازنده ESP32 هم می توان بهره برد. روش ارائه شده توسط SIPEED تنها از توان شبکه ای ESP32 استفاده می کند. در روش ارائه شده این آموزش، علاوه بر قابلیت شبکه می توانیم از توان پردازشی پردازنده ESP32(با فرکانس کلاک ۲۴۰ مگاهرتز) هم بهره ببریم. قسمت بعد مربوط به این موضوع است.

 


راه اندازی و کار با ESP32 درMaixduino


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

نصب پکیج ESP32 در نرم افزار آردوینو - دیجی اسپارک

 

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

نصب پکیج ESP32 در نرم افزار آردوینو - دیجی اسپارک

 

از آنجاییکه پیشتر لینک دانلود هسته Maixduino را درج کرده ایم، می بایست لینک جدید را با یک ویرگول از لینک قبلی جدا کنیم. لینک دانلود هسته ESP32 به صورت زیر است.

پس از این مرحله، نوبت به دانلود هسته برد ESP32 می رسد. برای این منظور، بر روی گزینه Tools آردویینو کلیک نمایید. با کلیک بر روی این گزینه، ابتدا بر روی گزینه Board و سپس Board Manager، همانطور که در تصویر مشخص شده، کلیک نمایید.مراحل نصب برد ESP32 در نرم افزار آردوینو - دیجی اسپارک

 

پس از کلیک بر روی گزینه Boards Manager، با تصویر زیر رو به رو خواهید شد. در قسمت جستجو، عبارت ESP32 را تایپ نمایید تا مطابق تصویر، این برد در مخازن آردویینو جستجو و یافت شود. مطابق تصویر، پس از اینکه برد ESP32 یافت شد، می بایست بر روی گزینه Install کلیک نمایید تا برد نصب شود.

نصب پکیج ESP32 در نرم افزار آردوینو ide - دیجی اسپارک

 

پس از نصب، در منوی Tools، بر روی گزینه Boards کلیک نمایید. پس از آن گزینه مربوط به بردهای مختلف را مشاهده می کنید. در این قسمت بر روی قسمت ESP32 BOARD وارد شوید. سپس در این قسمت برد Ai Thinker ESP32-CAM را انتخاب نمایید. این مورد را در تصویر زیر مشاهده می نمایید.

انتخاب نوع برد ESP در آردوینو IDE - دیجی اسپارک

 

  •  توجه۱: نسخه هسته نرم افزاری ماژول ESP32 استفاده شده در این آموزش برابر با ۱٫۰٫۶ است.
  • توجه۲: نسخه نرم افزار  آردوینو نصب شده برابر با ۱٫۸٫۱۷ است.

پس از نصب هسته، نوبت به اجرای یک نمونه برنامه آردوینو روی ESP32 می رسد. اما پیش از آن جهت برقراری ارتباط بین دو واحد ESP32 و Maixduino، می بایست در یکی از فایل های هسته Maixduino تغییری را ایجاد کنیم. قسمت بعدی مربوط به این موضوع است.

 


تغییر در فایل مربوط به هسته ESP32


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

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

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

 


اجرای یک نمونه برنامه آردوینو روی ESP32 برد Maixduino


پس از نصب هسته آردوینو، نوبت به اجرای یک نمونه برنامه می رسد. این برنامه خروجی تابع millis را در سریال مانیتور قرار می دهد. برای آپلود برنامه، ابتدا مطابق تصویر زیر، در منوی Tools گزینه Boards و سپس ESP32 Dev Module را انتخاب کنید.

اجرای یک نمونه برنامه آردوینو روی ESP32 برد Maixduino - دیجی اسپارک

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

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

 


ارتباط بین ESP32 و Maixduino


در این قسمت به بررسی برقراری ارتباط بین دو واحد ESP32 و K210 می پردازیم. توجه داشته باشید که پردازنده K210 و ESP32 از طریق واحد UART با یکدیگر در ارتباط هستند. این ارتباط از طریق Serial شماره یک پردازنده K210 با سریال پردازنده ESP32 برقرار می گردد. در زیر برنامه مربوط به ESP32 را مشاهده می کنید. این برنامه کاراکتر a را به K210 ارسال می کند. این برنامه را روی ESP32 آپلود کنید.

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

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

 


اشکالات متداول حین آپلود برنامه روی ESP32


ممکن است در هنگام آپلود برنامه روی برد ESP با اشکالاتی رو به رو شوید. یکی از مهم ترین اشکالات، خطا در آپلود برنامه است. این خطا با عبارت زیر نمایش داده می شود.

esp32 time out waiting for packet header

 

 این خطا به دلیل ارسال داده ها از سمت K210 به ESP32 و یا اشغال بودن پورت سریال ESP32 است. برای حل این مشکل، پیش از آپلود برنامه روی ESP32، دکمه RESET برد Maixduino را تا اتمام آپلود برنامه روی ESP32 نگاه دارید.

 


لوازم مورد نیاز


بردهای مبتنی بر هوش مصنوعی Sipeed

برد Maixduino

 


 جمع بندی


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

 

چنانچه هرگونه ابهامی در مطالب درج شده وجود دارد، می توانید با ثبت نظر در انتهای همین پست سوال خود را بپرسید. تاکنون در دیجی اسپارک بیش از ۲۶ هزار سوال و پاسخ ثبت شده است؛ پس نظرات بی جواب نمی مانند! همچنین اگر ایراد و یا اشکالی در مطالب درج شده وجود دارد، لطفا آن را با ثبت نظر، مطرح کنید. همچنین اگر مشکلی در کدها وجود داشته و یا اجرا نمی شوند، مورد را حتما در انتهای همین آموزش مطرح نمایید. نظرات شما برای ما بسیار ارزشمند هسنند!! 

 

درباره نویسنده

معین صابری

کارشناسی ارشد رشته معماری سیستم های کامپیوتری

مالي که ز تو کس نستاند، علم است
حرزي که تو را به حق رساند، علم است
جز علم طلب مکن تو اندر عالم
چيزي که تو را ز غم رهاند، علم است
(شیخ بهایی)

تبادل نظر و رفع عیب با ثبت دیدگاه

۱ دیدگاه

  • سلام و خسته نباشین. برای بنده چند پوشه داخل پوشه وریانت بود فایلی که باید اصلاح شه داخل پوشه sipeed_maixduino قرار داشت