آردوینو آموزش آردوینو اینترنت اشیا IOT اینترنت اشیاء تئوریک اینترنت اشیاء عملی

آموزش راه اندازی برد اینترنت اشیاء NodeMCU تراشه ESP32 در آردوینو

ESP32-Nodemcu-arduino-ide-Digispark
نوشته شده توسط اروند طباطبایی

برد NodeMCU یکی از پرمصرف ترین بردهای امبدد در زمینه اینترنت اشیاء IOT می‌باشد. خصوصا اینکه در ساختار اصلی این برد از تراشه ESP32 استفاده شده است. نسل جدید تراشه ESP در ابعاد ۴۸ نانو متری با راندمان و مصرف انرژی بهینه‌تر معرفی شده است. نام این تراشه ESP32 می‌باشد. تراشه ESP32 علاوه بر وای فای از بلوتوث نسل ۴ هم پشتیبانی می‌کند. ابعاد این برد با برد NodeMCU دقیقا یکسان است. دانستن یک نکته حائز اهمیت است. این نوع برد در دو مدل ارایه میشود یکی دارای ۳۰ پایه GPIO و دیگری دارای ۳۴ پایه GPIO می‌باشد. مدل Node MCU ESP32 که من در این آموزش از آن استفاده می‌کنم، ۳۰ پایه دارد. در ادامه مجموعه آموزش‌های برد ESP32 با مرجع تخصصی اینترنت اشیاء دیجی اسپارک همراه باشید.

 

شروع نصب برد NodeMCU نرم افزار آردوینو

همانطور که میدانید در نرم افزار آردوینو یا همان Arduino IDE امکان انتخاب انواع بردهای مختلف وجود دارد. از آنجایی که این جامعه اوپن سورس می‌باشد؛ معمولا اکثر بردهای پر مصرف قابلیت ارتباط با این نرم افزار سبک و ساده را دارند. برای شروع اگر نرم افزار آردوینو را ندارید، از منبع اصلی یعنی وب سایت آردوینو Arduino دانلود کنید. سپس نیاز به نرم افزار گیت Git دارید. برای دانلود گیت Git از سایت اصلی استفاده می‌کنیم. مراحل دانلود گیت ساده است، کافیست فایل Auto Run را باز کنید و مراحل را به صورت Next Next تا انتها پیش بروید. سپس نرم افزار گیت Git نصب می‌شود. حالا می‌توانید نرم افزار را راه اندازی کنید. پس از راه اندازی نرم افزار Git GUI محیط زیر را مشاهده می‌کنید.

نصب GIT در ویندوز جهت راه اندازی ماژول ESP32 -دیجی اسپارک

 

سپس گزینه دوم Clone Existing Repository را انتخاب می‌کنیم. پنجره زیر باز می‌شود.

نصب GIT در ویندوز جهت راه اندازی ماژول ESP32 -دیجی اسپارک

 

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

 

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

 

نکته: آدرس قسمت تارگت باید همان آدرسی باشد که نرم افزار آردوینو در سیستم شما نصب شده است. در سیستم من در درایو C نصب شده است. اگر این مسیر را درست انتخاب نکنید، نوع برد در قسمت بردهای نرم افزار آردوینو Arduino اضافه نخواهد شد.

نصب-GIT-در-ویندوز-جهت--راه-اندازی-ماژول-ESP32--دیجی-اسپارک

 

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

C:/Users/[YOUR_USER_NAME]/Documents/Arduino/hardware/espressif/esp32/tools

نصب-GIT-در-ویندوز-جهت-راه-اندازی-ماژول--ESP32---دیجی-اسپارک

 

پس از انجام این مراحل، چنانچه نرم افزار آردوینو Aruino IDE را باز کنید، در منو Tools > Board گزینه‌هایی اضافه خواهد شد. که یکی از این گزینه‌ها NodeMCU 32ُ می‌باشد. با انتخاب این گزینه می‌توانید کدهای مربوطه را آپلود کنید. یک نمونه کد سبک جهت بدست آوردن ID تراشه ESP32 در ادامه قرار داده‌ام. با کپی و آپلود آن روی برد می‌توانید از طریق سریال مانیتور نرم افزار آردوینو آی دی تراشه را بدست آورید.

نمونه کد ESP32 ChipID:

نصب-GIT-در-ویندوز-جهت-راه-اندازی-ماژول--ESP32دیجی-اسپارک

 

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

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

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

اروند طباطبایی

بنیانگذار دیجی اسپارک: اولین مرجع تخصصی امبدد سیستم به زبان فارسی / کارشناس سئو و تولید محتوا

هرچه می آموزم میبینم که خیلی کم آموختم. در حال حاضر مدیریت تولید مقطع کارشناسی ارشد هستم. علاقه به رباتیک و تکنولوژی دارم. امیدوارم بتونم دانشی را که آموخته‌ام، به روش‌های مختلفی به کاربران علاقمند منتقل کنم.

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

۳۲ دیدگاه

    • با سلام
      ضمن تشکر از توجه شما، توضیحات در این مورد زیاد است. سوال شما خیلی کلی است و نمیتوان پاسخ مناسبی برای آن ارایه کرد. ولی در حالت کلی تراشه ESP32 علاوه بر وای فای از بلوتوث هم پشتیبانی میکند. خصوصا اینکه دارای مصرف انرژی بهینه و اصلاح شده می‌باشد. بردهای مختلفی با این تراشه توسعه و تولید شده است. که در این آموزش از مدل Node MCU با تراشه ESP32 استفاده شده است.

  • باسلام و خسته نباشید.

    میخواستم بدونم وقتی برد ولتاژ ۳٫۳v میده و من یک رله دارم که ۵ ولت VCC لازم داره، چطوری باید ولتاژ این رله رو از همین برد بگیرم ؟ از ESP-12 هم استفاده میکنم.

        • سلام مجدد
          برای چنین بردی پیشنهاد میشود از ماژول رله ۳٫۳ ولت استفاده شود ویا اینکه از مبدل افزاینده استفاده کنید. البته بنده هیچ کدام از این روش‌ها را تست نکرده‌ام و اگر دوستان دیگری پاسخ بهتری دارند، لطفا ارسال کنند.

            • یعنی منظورم این که خارج از برد یک ولتاژ ۵ ولت بگیریم بجای این که یک افزاینده به کار بگیریم و این ولتاژ رو به پایه ترانزیستور متصل کنیم و اون یکی پایه رو به رله

              • این موضوع به صورت تئوریک درست به نظر میرسد، بنده به صورت عملی تست نکرده‌ام، باید منتظر پاسخ دوستانی که عملی کارکرده اند باشیم.

        • سلام داداش
          یه ترانزیستور بزار به بیس ترانزیستور ۳٫۳ رو بده ازامیتر و کلکتور هم میشن مثل یه کلید به بیس که ۳٫۳ وصل شد امیتر به کلکتور راه میده تا هر ولتاژ هم که بخوای جواب میده البته ۵ ولت رو قطعان جواب میده راستی یه مقاومتم بزار که جریان یهو ترانزیستورتو نترکونه

  • با سلام . آیا با این برد و برد wemos mini 1 می توان بصورت مستقیم به گوشی اندرویدی متصل شد؟
    چون دیدم با این دو برد تمام آموزشایی گذاشتید اینترنت وصل میشن.
    با تشکر.

  • با سلام
    من این مراحل رو روی نسخه ۱٫۸٫۵ اجرا کردم ولی node mcu 32 اضافه نشد.
    مشخصات mcu:
    Esp-32s
    V1.1 1 1010
    NodeMCU ESP-32S specifications:

    Wireless Module – ESP-WROOM-32 with Espressig ESP32 dual core processor with 802.11 b/g/n WiFi and Bluetooth 4.0 LE
    Expansion – ۲x 19 pin headers with GPIOs, Analog inputs (ADC), UART, I2C, VP/VN, etc…; breadboard compatible
    USB – ۱x micro USB port for power and programming
    Misc – BOOT and EN buttons, red (power) and blue (GPIO2) LEDs
    Power Supply – ۵V via USB or Vin pin
    Dimensions – ۵۱٫۴ x 28.3 mm

    • با سلام
      ضمن تشکر از توجه شما و عذرخواهی بابت تاخیر در پاسخ گویی، به دنبال راه مناسبی برای این موضوع بودم، تا پاسخ درستی ارسال کرده باشم. در این خصوص پس از اتصال برد Nodemcu به وای فای یک آی پی در شبکه لوکال دریافت می‌کند. در این خصوص میتوانید با چند خط کد زیر، آی پی اختصاص یافته به برد را تغییر دهید و همیشه به صورت استاتیک در شبکه لوکال تبدیل کنید. البته در این خصوص تنظیمات DHCP مودم هم باید انجام دهید.
      IPAddress ip(192, 168, 1, xx); // where xx is the desired IP Address
      IPAddress gateway(192, 168, 1, 1); // set gateway to match your network
      Serial.print(F(“Setting static ip to : “));
      Serial.println(ip);
      IPAddress subnet(255, 255, 255, 0); // set subnet mask to match your
      network
      WiFi.config(ip, gateway, subnet);

      اگر رنج آی پی شما با این متفاوت است، میتوانید تغییر دهید.

      • بسیار عالی بود IP رو عوض کردم الان فقط نمیدونم چطور شماره Port به nodemcu اختصاص بدم. چونکه من میخوام با دستور socket.connect در بیسیک فور اندروید به nodemcu وصل شم و در این دستور باید شماره پورت nodemcu رو وارد کنم

  • با سلام
    تو لیست من NodeMCU_32S موجود میباشد و با انتخاب همون و ۸۰Mhz , 115200 , or 921600 با خطای
    A fatal error occurred: Timed out waiting for packet header مواجه میشم
    پورت رو از COM5 به COM9 تفییر دادم اما مشکل حل نشد

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