فهرست مطالب:

شروع به کار با Amazon AWS IoT و ESP8266: 21 مرحله
شروع به کار با Amazon AWS IoT و ESP8266: 21 مرحله

تصویری: شروع به کار با Amazon AWS IoT و ESP8266: 21 مرحله

تصویری: شروع به کار با Amazon AWS IoT و ESP8266: 21 مرحله
تصویری: نحوه کنترل لامپ AC با استفاده از رله با NodeMCU D1 Mini از WiFi 2024, جولای
Anonim
شروع به کار با Amazon AWS IoT و ESP8266
شروع به کار با Amazon AWS IoT و ESP8266

این پروژه به شما نحوه گرفتن ماژول ESP8266 و اتصال مستقیم آن به AWS IOT با استفاده از سیستم عامل Mongoose را نشان می دهد. Mongoose OS یک سیستم عامل منبع باز برای میکروکنترلرها است که بر اتصال ابر تأکید می کند. این برنامه توسط Cesanta ، یک شرکت نرم افزاری تعبیه شده در دوبلین توسعه یافته است و در پایان پروژه ، شما باید بتوانید دما و مقادیر رطوبت را از سنسور دمای DHT11 اندازه گیری کرده و آن را بر روی سکوی AWS IOT منتشر کنید.

برای این پروژه ، ما نیاز داریم:

board یک برد NodeMCU مبتنی بر ESP8266

sensor سنسور دما DHT 11

flash ابزار چشمک زن سیستم عامل Mongoose

cable یک کابل USB برای اتصال برد NodeMCU به کامپیوتر

 سیمهای Jumber

account حساب AWS که قصد استفاده از آن را دارید

مرحله 1: یک برد NodeMCU مبتنی بر ESP8266

یک برد NodeMCU مبتنی بر ESP8266
یک برد NodeMCU مبتنی بر ESP8266

ESP8266 نام یک میکرو کنترلر است که توسط Espressif Systems طراحی شده است. ESP8266 خود یک راه حل شبکه Wi-Fi مستقل است که به عنوان پلی از کنترلر کوچک موجود به Wi Fi ارائه می شود و همچنین قادر به اجرای برنامه های خودکار است. این ماژول دارای یک کانکتور USB داخلی و مجموعه ای غنی از پین های خروجی است. با استفاده از کابل میکرو USB ، می توانید NodeMCU devkit را به لپ تاپ خود متصل کرده و بدون مشکل مانند فلش آردوینو فلش کنید.

مشخصات

• ولتاژ: 3.3V.

• Wi-Fi Direct (P2P) ، soft-AP.

• مصرف فعلی: 10uA ~ 170mA.

• حافظه فلش قابل اتصال: حداکثر 16 مگابایت (512 هزار عادی).

• مجموعه پروتکل TCP/IP.

• پردازنده: Tensilica L106 32 بیتی.

• سرعت پردازنده: 80 ~ 160 مگاهرتز.

• RAM: 32K + 80K.

• GPIO ها: 17 (چند کاره با سایر توابع).

• آنالوگ به دیجیتال: 1 ورودی با وضوح 1024 مرحله.

• قدرت خروجی +19.5dBm در حالت 802.11b

• پشتیبانی 802.11: b/g/n.

• حداکثر اتصالات همزمان TCP: 5

مرحله 2: پین نمودار

پین نمودار
پین نمودار

مرحله 3: DHT11 - سنسور رطوبت و دما

DHT11 - سنسور رطوبت و دما
DHT11 - سنسور رطوبت و دما

DHT11 یک سنسور دیجیتال درجه حرارت و رطوبت کم هزینه است. این دستگاه از سنسور رطوبت خازنی و ترمیستور برای اندازه گیری هوای اطراف استفاده می کند و یک سیگنال دیجیتالی را روی پین داده (بدون نیاز به پین های ورودی آنالوگ) بیرون می ریزد. تنها نقطه ضعف واقعی این سنسور این است که فقط می توانید هر 2 ثانیه یکبار اطلاعات جدیدی از آن دریافت کنید

امکانات

temperature دمای کامل محدوده جبران می شود

humidity رطوبت نسبی و اندازه گیری دما

signal سیگنال دیجیتال کالیبره شده

stability ثبات برجسته بلند مدت

components اجزای اضافی مورد نیاز نیست

transmission فاصله انتقال طولانی

 مصرف برق کم

فرایند ارتباطات (تک سیم دو طرفه)

نکته جالب در این ماژول پروتکلی است که برای انتقال داده ها استفاده می شود. تمام قرائت های سنسور با استفاده از یک باس تک سیم ارسال می شود که هزینه را کاهش می دهد و فاصله را افزایش می دهد. برای ارسال داده از طریق گذرگاه ، باید نحوه انتقال داده ها را توصیف کنید تا فرستنده و گیرنده بتوانند آنچه را که یکدیگر می گویند درک کنند. این کاری است که یک پروتکل انجام می دهد. این روش نحوه انتقال داده ها را توصیف می کند. در DHT-11 گذرگاه داده 1 سیم با مقاومت به VCC کشیده می شود. بنابراین اگر هیچ اتفاقی نیفتاد ولتاژ روی گذر برابر با VCC است. قالب ارتباط را می توان به سه مرحله تقسیم کرد

1) درخواست

2) پاسخ

3) خواندن اطلاعات

مرحله 4: آشنایی با سیستم عامل Mongoose

Mongoose OS یک سیستم عامل منبع باز برای سیستم های کوچک تعبیه شده است. این دستگاه به گونه ای طراحی شده است که بر روی دستگاه هایی مانند میکرو کنترلرها ، که اغلب دارای محدودیت حافظه دهها کیلوبایت هستند ، در حالی که یک رابط برنامه نویسی را که دسترسی به API های مدرن را که معمولاً در دستگاههای قوی تر یافت می شوند ، در معرض دید قرار می دهد. دستگاهی که سیستم عامل Mongoose را اجرا می کند به عملکرد سیستم عامل مانند سیستم فایل و شبکه ، به علاوه نرم افزارهای سطح بالاتر مانند موتور جاوا اسکریپت و API های دسترسی ابر دسترسی دارد.

ابزار چشمک زن سیستم عامل Mongoose

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

to به صفحه وب بارگیری سیستم عامل Mongoose بروید و ابزار Mos را بارگیری کنید. (اما در این پروژه ، ما قصد داریم از نسخه قدیمی سیستم عامل Mongoose استفاده کنیم)

file فایل راه اندازی Mos (Mongoose OS) را اجرا کرده و جادوگر راه اندازی را دنبال کنید:

مرحله 5: جادوگر راه اندازی Mongoose

جادوگر راه اندازی Mongoose
جادوگر راه اندازی Mongoose
جادوگر راه اندازی Mongoose
جادوگر راه اندازی Mongoose
جادوگر راه اندازی Mongoose
جادوگر راه اندازی Mongoose

مرحله 6: وضعیت دستگاه - آنلاین

وضعیت دستگاه - آنلاین
وضعیت دستگاه - آنلاین

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

مرحله 7: تهیه دستگاه در AWS IOT

ارائه دستگاه در AWS IOT
ارائه دستگاه در AWS IOT

قبل از اینکه بتوانیم رویدادها را به AWS ارسال کنیم ، باید بتوانیم یک اتصال ایمن به AWS IOT ایجاد کنیم. برای این کار باید گواهینامه های AWS را به ESP ارائه دهیم. در جادوگر راه اندازی سیستم عامل Mongoose منوی Device Config را انتخاب کرده و سپس منطقه AWS مناسب و خط مشی AWS را برای محیط AWS خود انتخاب کنید. روی دکمه Provision with AWS IOT کلیک کنید. دستگاه با اطلاعات صحیح برای اتصال به سرویس AWS راه اندازی می شود. گواهینامه ها به طور خودکار نصب می شوند.

توجه داشته باشید:

کاربر می تواند منطقه AWS مناسب و سیاست AWS را انتخاب کند. در سناریوی ما ، ما منطقه AWS را به عنوان ap-southeast-1 و سیاست AWS را به عنوان mos-default انتخاب کردیم

پس از اتمام دستگاه تأمین در AWS IOT ، اکنون ماژول Wi -Fi esp8266 می تواند با AWS -IOT ارتباط برقرار کند

مرحله 8: بارگذاری نمونه کد در برد NodeMCU

بارگذاری نمونه کد در برد NodeMCU
بارگذاری نمونه کد در برد NodeMCU

پس از اجرای جادوگر راه اندازی Mongoose ، اگر روی منوی فایل های دستگاه کلیک کنید ، فایلی به نام init.js وجود دارد. در داخل آن فایل نمونه کد وجود دارد. اگر روی دکمه Save +Reboot کلیک کنید ، کد نمونه بارگیری می شود و خروجی را می توان از Device Logs مشاهده کرد

مرحله 9: شروع به کار با حساب AWS

AWS چیست؟

خدمات وب آمازون (AWS) یک ارائه دهنده خدمات ابری از آمازون است که خدمات را در قالب بلوک های ساختمان ارائه می دهد ، از این بلوک های ساختمانی می توان برای ایجاد و استقرار هر نوع برنامه در ابر استفاده کرد. این خدمات یا اجزای سازنده برای کار با یکدیگر طراحی شده اند و منجر به برنامه های پیچیده و بسیار مقیاس پذیر می شوند.

چگونه تنظیم کنیم؟

دو راه برای راه اندازی خدمات AWS وجود دارد

 استفاده از ابزار خط فرمان AWS CLI

 استفاده از رابط کاربری AWS

مرحله 10: ابزار خط فرمان AWS CLI (اختیاری)

ابتدا باید AWS CLI را نصب کنیم. AWS CLI یک ابزار خط فرمان است که دستوراتی را برای تعامل با خدمات AWS ارائه می دهد. این به شما امکان می دهد از عملکرد ارائه شده توسط کنسول مدیریت AWS از ترمینال استفاده کنید. Mongoose از این ابزار برای تهیه دستگاه IOT در AWS IOT استفاده می کند. AWS CLI به اعتبار شما نیاز دارد تا بتواند به AWS متصل شود. برای راه اندازی aws را از خط فرمان پیکربندی کرده و اطلاعات دسترسی خود (اطلاعات کاربری خود) را وارد کنید. به عبارت ساده ، می توانید از طریق یک رابط کاربری ساده و بصری مبتنی بر وب ، به خدمات وب آمازون دسترسی پیدا کرده و آنها را مدیریت کنید. اگر نگرانی شما دسترسی به برخی از ویژگی ها با استفاده از تلفن همراه است ، برنامه تلفن همراه AWS Console به شما امکان می دهد منابع را در حال حرکت سریع مشاهده کنید.

مرحله 11: خدمات وب آمازون (GUI)

خدمات وب آمازون (GUI)
خدمات وب آمازون (GUI)

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

مرحله 12: AWS IOT Core

AWS IOT Core
AWS IOT Core

پس از ورود به سیستم ، به صفحه زیر هدایت می شوید و در اینترنت چیزها هسته IOT را انتخاب کنید

مرحله 13: AWS IOT - مانیتور

AWS IOT - مانیتور
AWS IOT - مانیتور

هنگامی که هسته IOT را انتخاب کردید صفحه بالا ظاهر می شود سپس منوی تست را انتخاب کنید

مرحله 14: AWS IOT - اشتراک

AWS IOT - اشتراک
AWS IOT - اشتراک

پس از انتخاب منوی Test به اشتراکات هدایت می شوید. در موضوع اشتراک موضوع مورد نظر خود را مشخص کرده و دکمه Subscribe to topic را کلیک کنید

مرحله 15: انتشار پیام پیش فرض

انتشار پیام پیش فرض
انتشار پیام پیش فرض

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

توجه: اگر می خواهید یک کد جدید بنویسید و در برد NodeMCU بارگذاری کنید (کدی که ما می نویسیم باید در فایل منیجر دستگاه> فایل init.js بارگذاری شود ، باید نام موضوع را در کد وارد کنید. پس از وارد کردن نام موضوع ، برای انتشار خروجی ، باید از نام موضوع مشابه در بخش اشتراک ها استفاده کنید

مرحله 16: انتشار اطلاعات فشرده دکمه

انتشار اطلاعات فشرده دکمه
انتشار اطلاعات فشرده دکمه

مرحله 17: مقادیر دما و رطوبت را در بستر AWS IOT منتشر کنید

مقادیر دما و رطوبت را در بستر AWS IOT منتشر کنید
مقادیر دما و رطوبت را در بستر AWS IOT منتشر کنید

مرحله 18: وظیفه

as مدار را مطابق شکل زیر وصل کنید

OS سیستم عامل مانگوس را روی ماژول ESP8266 فلش کنید

device ارائه دستگاه در AWS IOT

code کد برنامه نویسی را در برد NodeMCU بارگذاری کنید

 خروجی را در سیاهههای مربوط به دستگاه بررسی کنید (شکل 9 را ببینید)

into وارد حساب AWS شوید

sub زیر منوی اصلی IOT را انتخاب کنید

the گزینه Test را از قسمت کلاینت MQTT انتخاب کنید

topic موضوع مربوطه را در اشتراک ها مشخص کنید

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

 اطمینان حاصل کنید که هر زمان که دکمه فلش را فشار می دهید دما و رطوبت را به عنوان پیام دریافت می کنید

توصیه شده: