پس از انتخاب میکروکنترلر قدم بعدی انتخاب Thing است. Thing مجموعه ای از متغیرها Varibale, انتخاب نوع برد برای شروع پروژه و تنظیمات وای فای WIFI است. در این بخش پس از شناسایی سخت افزار Device برای برد متغیر سنسورهای متصل و سپس تنظیمات نوع داده را انجام میدهیم. به عبارتی عملیات ایجاد Things را انجام میدهیم. در ادامه با مرجع تخصصی پلتفرم اینترنت اشیا Arduino IOT Cloud به زبان فارسی، دیجی اسپارک همراه باشید.
ایجاد Things در پلتفرم
در پلتفرم اینترنت اشیا Arduino IoT پس از انتخاب دیوایس Device قدم بعدی ورود به صفحه Things است. پس از کلیک بر روی Things صفحه ی زیر نمایش داده میشود. مراحل زیر برای ایجاد Things بایستی دنبال شوند.
- نمایش Variable
- ساخت یک متغیر جدید
- انتخاب سخت افزار از قبل ساخته شده
- تغییرات سخت افزار
- اتصال به شبکه وای فای
قدم اول ساخت یک متغیر برای سخت افزار است. اما کمی عمیق تر نگاه کنیم. برای کدنویسی یک سخت افزار اولین قدم در برنامه مشخص کردن ورودی و خروجی ها یا همان دیوایس های متصل به میکروکنترلر است. مانند انواع سنسورها دما رطوبت، تشخیص رنگ، فشار سنج، رطوبت خاک، شدت نور و سنسورهای گازی و … که هر کدام با یک اسم مشخص و منحصر به فرد در کد برنامه معرفی میشوند. هدف نهایی ما از برنامه نویسی دریافت داده، پردازش داده و دریافت خروجی است. پس داده ها حرف اول را میزنند. تا زمانی که نتوانیم داده ها و نوع داده ها را در برنامه به درستی مشخص و از هم تفکیک کنیم، عملا مابقی اجرای پروژه با مشکل رو به رو خواهد شد. در برنامه نویسی این بخش را متغیرها Variables میشناسیم. داده ها در برنامه ها مشخص شده و سپس بایستی نوع داده را هم مشخص کنیم. به عنوان مثال برای معرفی سنسور دما رطوبت DHT11 نیاز به تعریف دو متغیر در برنامه داریم. یکی دما Temperature و دیگری رطوبت Humidity. این سنسور این دو دیتا را به صورت مجزا در اختیار ما قرار میدهد. سپس بایستی مشخص کنیم، عددی که به عنوان خروجی پردازش شده دریافت میکنیم، از چه نوعی باشد. عدد صحیح باشد؟ مانند ۲۲ درجه سانتی گراد، یا عدد اعشاری باشد مانند ۲۲٫۵ درجه سانتی گراد. این مورد توسط ما انجام شده و قابل تغییر خواهد بود. اما چه ارتباطی با Arduino IOT Cloud دارد؟
در صفحه ی تنظیم Things اولین بخش Add Variable است. در این بخش بایستی سخت افزارهایی که به میکروکنترلر متصل کرده ایم را به صورت متغیرهای منحصر به فرد همراه با نوع داده مشخص کنیم. داده int, float, bool و… همگی در این بخش قابل انتخاب است. انتخاب اسم برای متغیر هم دلخواه است. با انتخاب متغیرها، برای هر متغیر در سرویس ابری آردوینو به صورت اتوماتیک متغیر ساخته شده و سپس مجدد به صورت اتوماتیک در کد Sketch برنامه نوشته میشود! بله برنامه نویسی در این بخش به صورت آنلاین و اتوماتیک صورت میگیرد. به ازای تعریف هر متغیر در این بخش، در فضای ابری Cloud آردوینو یک متغیر در کد برنامه ساخته شده و یک تابع سفارسی Custom Function به صورت اختصاصی پس از حلقه Loop در برنامه Sketch اضافه میشود. قدرت Arduino IOT Cloud در این بخش است که آن را نسبت به سایر پلتفرم ها متمایز کرده است. برای تست بر روی Add Variable کلیک کنید.
- در این بخش یک اسم برای متغیر انتخاب کنید.
- نوع داده متغیر را مشخص کنید.
- پس از انتخاب گزینه ۱ و ۲ گزینه ۳ به صورت اتوماتیک متغیر و نوع داده را نمایش میدهد.
- نوع متغیر را مشخص کنید که به صورن خواندن و یا خواندن و نوشتن باشد.
- وضعیت تغییر و به روز رسانی داده متغیر را مشخص کنید که با هر تغییر وضعیت به روزرسانی شود و یا به صورت دوره ای؟
- سپس بر روی Add Variable کلیک کنید.
برای تست یک متغیر برای یک ال ای دی LED در نقش Read&Write معرفی میکنیم.
در سری آموزش های بعدی Arduino IOT Cloud در قالب پروژه این بخش را تمرین خواهیم کرد.
انتخاب برد در بخش Associated Device
در این بخش میکروکنترلری که در آموزش قبل ساخته ایم را در Thing انتخاب میکنیم. مشخص میکنیم پروژه قرار است روی چه بردی پیاده سازی شود. در بخش Device ما دو برد را به صورت مجزا تعریف کردیم. یک برد آردوینو Arduino NANO 33 IOT و دیگری برد وای فای NodeMCU ESP8266 که با اسم دلخواه مشخص شده اند. در این بخش یکی از بردهایی که میخواهید سنسورها را به آن اتصال دهید انتخاب کنید. دقت داشته باشید فقط و فقط برای هر Thing یک برد میتوانید انتخاب کنید و یک پروژه مجزا خواهد بود که تمامی تنظیمات و آپلود کدها بر روی همین برد انجام خواهد شد. بر روی Select Device کلیک کنید.
پس از کلیک روی گزینه انتخاب سخت افزار، صفحه زیر نمایش داده خواهد شد.
سخت افزار Device تعریف شده در این بخش توسط من، برد وای فای NodeMCU ESP8266 است. سخت افزار مورد نظر را انتخاب و بر روی Associate کلیک کنید.
با انتخاب Change , Detach به ترتیب برد را تغییر و یا در لحظه از این لیست حذف میکنید. همانطور که در تصویر مشخص است آی دی ID و نوع برد Type و وضعیت برد Status مشخص شده است. تا زمانی که به شبکه وای فای WIFI متصل نشده اید، این Status به صورت Offline خواهد بود. پس از اتصال به شبکه بایستی به Online تغییر وضعیت دهد.
بخش Network اتصال به شبکه
بخش نهایی در پلتفرم Arduino Cloud برای ایجاد Things اتصال به شبکه وای فای Wifi است. برای اینکار بایستی نام SSID وای فای مورد استفاده، پسورد Password وای فای مورد استفاده و کد امنیتی Secret Key سخت افزار را انتخاب کنید. Secret Key در مرحله اول Device به صورت فایل دانلودی نمایش داده شد و پیشنهاد شد آن را دانلود و کپی داشته باشید.
دقت داشته باشید از همان اطلاعات اینترنتی که مرورگر و حتی نسخه اپلیکیشن قرار است با آن ارتباط داشته باشد را وارد کنید. نام و پسورد را به درستی وارد کنید. کد امنیتی سخت افزار را حتما به صورت جداگانه ذخیره داشته باشید. سپس بر روی Save کلیک کنید. در این مرحله بایستی پیغام Online برای سخت افزار را مشاهده کنید.
لوازم مورد نیاز
چنانچه در مراحل راه اندازی با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریعترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود دارند میتوانید از همین طریق اطلاع رسانی کنید.
با سلام
برای هر سنسوری که به برد وصل میکنیم باید یک thing تعریف بشه آیا
با سلام
منظور از thing برد است. مثلا یک برد Nodemcu و یک برد Nano 33 iot در بخش things ایجاد میکنید.
سلام وقت بخیر
برای متغیر ورودی و خروجی را چطور مشخص میکنیم؟
با سلام
در بخش اول در قسمت variable permission توسط read&write , readonly مشخص میکنیم چه وضعیتی دارد.
سلام
قابلیت تعریف چندین ال ای دی وجود دارد>
با سلام
در هر thing در اکانت رایگان فقط مجاز به استفاده از ۵ متغیر varibale هستید.
سلام خانم مهندس برای من دیوایسم به اینترنت وصل CONNECT نمیشه باید چیکار کنم ؟
با سلام
این موارد به صورت لحظه ای است، اگر از اطلاعات وارد شدن شبکه مطمئن هستید، بایستی صبر کنید تا به شبکه وصل شود.
با سلام
آیا خرید اکانت برای دسترسی بیشتر را پیشنهاد میکنید؟
با سلام
بله با توجه به اینکه این پلتفرم امکان کنترل به غیر از مانیتورینگ را دارد، پیشنهاد میکنم.
سلام خانم مهندس اکر بخوایم متغیر رشته باشه مثلا یک پیغام باشه باید چیکار کنیم ؟
با سلام
در این خصوص بایستی از داده String استفاده کنید. در بخش های بعدی این مورد را آموزش خواهم داد.
سلام
طبق تستی که داشتم سرعت esp32 از Esp8266 در این پلتفرم برای اتصال به شبکه بیشتر است
با سلام
بله طبیعتا سرعت esp32 از Esp8266 بیشتر خواهد بود.
سپاس از همراهی شما کاربر گرامی
سلام خانم مهندس
برای خرید برد مناسب این پلتفرم لطفا راهنمایی کنید.
با سلام
از برد NodeMCU , ESP32, Arduino NANO 33 IOT , Arduino NANO RP2040 میتوانید استفاده کنید.
در اکانت های رایگان چند thing میشه ساخت؟
با سلام
۵ thing میتوانید ایجاد کنید.
سلام مهندس منظور از onchange , periodically چیه؟
با سلام
برای خروجی یا وروذی میتوانید وضعیت آپدیت داده های دریافتی و ارسالی را مشخص کنید که به صورت تغییر در لحظه onchange و یا با زمانبندی Peroidically باشد.
سلام
برای سنسور ds18b20 در بخش Variable باید Readonly انتخاب شود
با سلام
اگر فقط بخواهید داده را بخوانید حتما گزینه Read-only را انتخاب کنید.
سلام خانم مهندس بلورچیان
آیا با هر بار خارج شدن برد و تغییر پورت باید از اول دیوایس تعریف کنیم؟
با سلام
خیر نیازی به اینکار نیست و تا زمانی که حذف نکنید، تغییر نخواهد کرد.
سلام
لطفا arduino iot cloud را با esp32 هم اجرا کنید
با سلام
چشم اما تمامی این کدها با برد ESP32 هم قابل اجرا است و تفاوتی ندارد.
با سلام
با داده int هم به درستی کار میکند. برای دوستانی که سوال پرسیده بودند
با سلام
کاربر گرامی از اینکه نظر و تجربه ی خود را با دیگر کاربران به اشتراک میگذارید، صمیمانه سپاسگزاریم.
با سلام .
نوشته شده که “دقت داشته باشید از همان اطلاعات اینترنتی که مرورگر و حتی نسخه اپلیکیشن قرار است با آن ارتباط داشته باشد را وارد کنید.” یعنی باید سیستم و برد در یک شبکه وای فای باشند. اگر اینطور باشه دسترسی ریموت امکان پذیر نخواهد بود. ممنون میشم راهنمایی بفرمایید.
با سلام
از آی پی ثابت استاتیک استفاده کنید.