آموزش Espآموزش آردوینوآموزش اینترنت اشیا

کار با سرویس ابری اینترنت اشیا آردوینو Arduino Cloud IoT

در سال 2019 ، Arduino بخش Arduino Cloud IoT را معرفی کرد که یک راه حل عالی برای کمک به علاقه مندان و متخصصان اینترنت اشیا در ساخت آسان پروژه ها است. Arduino IoT Cloud با ترکیب سخت افزار، سیستم عامل، سرویس ابری و پشتیبانی یک راه حل ساده و حرفه ای برای پروژه های اینترنت اشیا ایجاد میکند. پلتفرم IoT آردوینو کاربران را قادر میسازد داده ها را از حسگر های خود جمع آوری کنند، نمودار ایجاد کنند و داده ها را تحلیل کنند، Event های مختلف ایجاد کنند و دستگاه های خود را به صورت اینترنتی کنترل کنند.

در این آموزش ، ما قصد داریم NodeMCU-ESP8266 را با Arduino Cloud IoT راه اندازی کنیم. برای تست کردن ، داده های حسگر DHT11 را از صفحه به محیط ابری ارسال می کنیم و یک سوئیچ تنظیم می کنیم که می تواند LED متصل به NodeMCU را کنترل کند.

کار با سرویس ابری اینترنت اشیا آردوینو

ویژگی های IoT Cloud Arduino

پلت فرم Arduino Cloud IoT کاربران را قادر می سازد تا به طور مستقیم در مرورگر خود کد بنویسند ، کامپایل و بارگذاری کنند ، دستگاه های اینترنت اشیا خود را به یکدیگر متصل کنند و داشبورد های مختلف ایجاد کنند. تمام ویژگی های Arduino Cloud IoT در زیر ذکر شده است:

برای یادگیری آردوینو (برنامه نویسی، ساخت ربات، ارتباط با اندروید) روی دوره آموزش آردوینو کلیک کنید.
برای یادگیری کامل الکترونیک روی دوره آموزش الکترونیک کلیک کنید.
  • کد ایجاد شده به صورت خودکار: Arduino Cloud IoT با توجه به متغیرهایی که کاربر هنگام تنظیم Thing تعریف می کند ، بطور خودکار طرحی را ایجاد می کند ، بنابراین موانع را برای کاربران تازه وارد برطرف میکند.
  • پردازش پلاگین و بازی: با استفاده از پلت فرم IoT Arduino cloud ، می توانید کدها را بنویسید ، کامپایل و بارگذاری کنید مستقیماً از مرورگر خود دستگاه های اینترنت اشیا خود را بهم متصل کنید و داشبوردهای مختلف بسازید. بنابراین ، برای برنامه نویسی سخت افزار نیازی به انتقال به Arduino IDE نیست.
  • داشبورد موبایل «On-the-go»: این امکان را برای کاربران فراهم می کند تا با استفاده از ابزارک های قابل دسترسی ، از هرجای دیگر به داده های کنترل شده ، کنترل داده ها و کنترل سنسور از راه دور بپردازند.
  • ادغام با سایر سیستم عامل ها: Arduino Cloud IoT می تواند با آمازون الکسا ، Google Sheets ، IFTTT و ZAPIER تلفیق شود که به کاربران امکان می دهد تا دستگاه ها را با استفاده از صوت ، صفحات گسترده ، پایگاه داده و هشدارهای خودکار با استفاده از webhooks ها برنامه ریزی و مدیریت کنند. این پلتفرم همچنین توسعه دهندگان را قادر می سازد تا با استفاده از Arduino IoT API ، برنامه های سفارشی ایجاد کنند.

با تمام این ویژگی ها ، Arduino Cloud IoT محدودیت هایی دارد. یکی از آنها این است که فقط با برخی از برد های Arduino و ESP کار می کند. تمام برد های پشتیبانی شده در زیر لیست شده اند:

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

  • Arduino NANO 33 IoT
  • Arduino MKR Wi-Fi 1010
  • Arduino MKR WAN 1310
  • Arduino MKR WAN 1300
  • Arduino MKR NB 1500
  • Arduino MKR GSM 1400
  • Arduino MKR1000
  • Arduino Portenta H7 (M7 core)
  • Arduino Nano RP2040 Connect

ESP و دیگر برد ها

  • ESP8266
  • ESP32
  • Pelion
  • Generic LoRa

با استفاده از پلن رایگان Arduino Cloud IoT ، کاربران می توانند فقط دو دستگاه به آن اضافه کنند و این پلن زمان جمع آوری 200 ثانیه در روز را فراهم می کند. بنابراین ، اگر می خواهید بیش از دو دستگاه را به هم متصل کنید ، باید یک پلن بخرید. در حال حاضر ، آردوینو چهار پلن مختلف با ویژگی ها و قیمت های مختلف ارائه می دهد. همه پلن ها در تصویر زیر خلاصه شده است:

ویژگی های IoT Cloud Arduino

مدار اتصال ESP8266 به Arduino Cloud IoT

شماتیک مدار برای ارسال داده های حسگر DHT11 به سرویس ابری آردوینو IoT در زیر آورده شده است.

مدار اتصال ESP8266 به Arduino Cloud IoT

اتصالات بسیار ساده هستند. سنسور DHT11 از طریق پین 5 ولت و GND برد NodeMCU تغذیه می شود. پین داده DHT11 به D0 برد NodeMCU و پایه مثبت LED به پایه D7 برد NodeMCU متصل است.

مدار کار با سرویس ابری اینترنت اشیا آردوینو

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

  • NodeMCU ESP8266
  • سنسور DHT11
  • LED (5 میلی متر)

تنظیم Arduino Cloud IoT

اکنون که ما سخت افزار مورد نیاز را وصل کردیم ، بیایید Arduino Cloud IoT را برای ESP8266 راه اندازی کنیم. برای این کار وارد حساب Arduino خود شوید. اگر قبلاً حساب کاربری ندارید ، به Arduino Cloud IoT بروید و یک حساب ایجاد کنید.

مرحله 1: پس از اتمام تنظیمات حساب ، ما دستگاه جدیدی به عنوان مثال NodeMCU را به Arduino Cloud IoT اضافه خواهیم کرد. در cloud، به صفحه”Devices” بروید. سپس ، بر روی دکمه “Add device” کلیک کنید.

Add device

سپس ، روی “Set up a 3rd party device” کلیک کنید.

Set up a 3rd party device

همچنین اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید

در مرحله بعدی ، ما باید صفحه توسعه را انتخاب کنیم که از آن استفاده می کنیم. ابتدا ESP8266 را انتخاب کرده و سپس از منوی کشویی NodeMCU1.0 را انتخاب کنید.

در مرحله بعدی ، نام دستگاه را مطابق پروژه خود تغییر دهید و روی next کلیک کنید. پنجره ای با شناسه دستگاه و secret key برای آن دستگاه ظاهر می شود. می توانید آن را یادداشت کنید یا روی downlaod PDF” کلیک کنید تا جزئیات را در سیستم خود ذخیره کنید. لطفا توجه داشته باشید که secret key قابل بازیابی نیست.

سپس روی گزینه CONTINUE کلیک کنید تا دستگاه اضافه شود.

مرحله 2: بعد از افزودن دستگاه ، مرحله بعدی ایجاد یک thing است. بنابراین به برگه “things” بروید و بر روی “create thing” کلیک کنید.

اکنون ، در تب Things ، سه گزینه برای پیکربندی (متغیرها ، دستگاه و شبکه) داریم. ابتدا دستگاه خود را با Thing خود پیوند می دهیم. این کار را می توان با کلیک بر روی دکمه نماد پیوند در بخش “devices” انجام داد. با این کار پنجره ای باز می شود ، دستگاهی که اخیراً ایجاد کرده اید باید برای انتخاب در آن موجود باشد.

حالا دستگاه متصل است ، ما باید برخی از متغیرها را که در کد استفاده می شود اضافه کنیم. روی دکمه “Add variable” کلیک کنید. با این کار پنجره ای باز می شود که باید اطلاعات متغیر را پر کنید. در اینجا ، ما سه متغیر ایجاد خواهیم کرد که یکی از آنها برای LED و دو مورد برای ذخیره مقادیر دما و رطوبت استفاده می شود.

بیایید ابتدا led_switch را ایجاد کنیم. نوع داده int است ، permission به صورت read-only است و update policy در حالت On change است. پس از اتمام ، بر روی دکمه “Add variable” کلیک کنید.

به همین ترتیب ، متغیرهای “temperature” و “humidity” را اضافه کنید. نوع داده برای این متغیرها float است ، permission به صورت read & write است و update policy در حالت on change است.

اکنون ، در مرحله بعدی ، باید اطلاعات Wi-Fi را وارد کرده و secter key را تنظیم کنیم. برای این کار بر روی دکمه “Configure” در “Network Section” کلیک کنید. اطلاعات را وارد کنید و سپس روی “save” کلیک کنید.

مرحله 3: اکنون که دستگاه و متغیرها را اضافه کردیم ، می توانیم به مرحله بعدی برویم که ایجاد داشبورد است. برای این منظور ، به برگه ‘Dashboard’ بروید و روی دکمه ‘Build Dashboard’ کلیک کنید.

برای افزودن widget ها روی داشبورد ، روی نماد مداد در گوشه بالا سمت راست کلیک کنید ، روی دکمه “add” کلیک کنید و سپس به “things” بروید و thing را انتخاب کنید. سپس تمام متغیرها را انتخاب کرده و بر روی “add widget” کلیک کنید.

صفحه دسکتاپ نهایی به این شکل خواهد بود:

برنامه نویسی NodeMCU برای ارسال داده به Cloud

اکنون کار ما با راه اندازی Arduino Cloud IoT تمام شده است ، مرحله بعدی برنامه نویسی NodeMCU برای خواندن داده ها از DHT11 و ارسال آن به Arduino Cloud است. برای انجام این کار ، باید به برگه “Sketch” برویم.

وقتی متغیری را در Things اضافه می کنید ، Sketch روی cloud با توجه به متغیرها به طور خودکار به روز می شود. بنابراین ، بیشتر کد در حال حاضر نوشته شده است و ما فقط باید برخی از خطوط را برای سنسور DHT11 اضافه کنیم. کد کامل در فایل انتهای صفحه آورده شده است.

وقتی کد آماده شد ، Board و Port را انتخاب کنید و دکمه بارگذاری را در گوشه بالا سمت چپ فشار دهید.

با این کار اکنون می توانید LED را کنترل کرده و داده های حسگر DHT11 را با استفاده از پلت فرم Arduino Cloud IoT کنترل کنید.

موارد موجود در فایل : سورس کامل

دانلود فایل های پروژه

برای مشاهده توضیحات روی دوره مورد نظر کلیک کنید.

برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام آیرنکس عضو شوید.

تصویر از محمد رحیمی

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید) سعی میکنم تمام نظرات را پاسخ دهم.

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *