اینترنت اشیاء
اینترنت اشیاء یا iOT (Internet of things) یک واژه ای است که از دهه 90 میلادی مطرح بوده ولی تقریبا می توانیم شروع فراگیری آن را از 2010 به بعد در نظر بگیریم، هدف اصلی ioT این است که بتوان هر شیء را به اینترنت متصل کرد و یک اکو سیستم تشکیل داد که بتوان در آن از اتوماسیون، مانیتورینگ و هوش مصنوعی بهره برد.
شاید تا 10 سال پیش اگر توی فیلم ها می دیدیم که ماشین ها به انسان سلطه پیدا می کنند فقط برامون یک فیلم بود و شاید این اتفاق رو تا چند صد سال آینده غیر ممکن می دیدیم، اما در عرض چند سال شاهد این بودیم که هر روز یه چیزی به اینترنت وصل شد، ابتدا لپ تاپ ها و گوشی های موبایل بعد تلویزیون ، یخچال، لباسشویی، ماکروویو، لامپ، سیستم صوتی، کلید و پریز،سیستم تهویه، قفل و دزدگیر و دوربین و … همینطور رفته رفته تعداد این وسایل داره زیاد میشه، اصلا یک رغابتی شده برای شرکت ها که هر شرکتی که بتونه خدمات ioT بهتری ارائه بده برنده بازار باشه.
کلا بخوام بگم ioT چطور اتفاق میفته اینطوریه که دستگاه مورد نظر با یک طراحی مدار و یک میکروکنترلر ساخته می شه تا اینجاش رو نمی گن اینترنت اشیاء ، اون قسمتی که این دستگاه رو به شبکه وای فای یا شبکه تلفن همراه یا هرچیز دیگه ای که ارتباط این دستگاه رو برقرار کنه وصل می کنه بعلاوه اون سروری که این ارتباط رو کنترل میکنه و اون تجهیزاتی که دست کاربر هست برای کنترل و مانیتورینگ آن دستگاه می گیم اینترنت اشیاء.
ما یک برقرار کننده ارتباط می خواهیم که معمولا یک ماژول هست که ماژول های معروف و متداول بازار به شرح زیر است:
SIM800,SIM900
ساده ترین راه برقراری ارتباط، پیامک هست که ماژول SIM800 این کارو به راحتی برای شما انجام می دهد، این ماژول با پرتکل هایی مثل یوزارت به میکرو متصل می شود و با دستور گرفتن از میکرو پیامی را که از سمت میکرو به آن رسیده توسط شبکه مخابراتی و سیم کارت ارسال می نماید و از خود اختیاری ندارد و فقط دستورات میکرو را اجرا می نماید، مدل های مختلف این ماژول در بازار وجود دارد که کارهای جانبی دیگری را مانند دریافت موقعیت مکانی با GPS داخلی خود ماژول ،برقراری تماس صوتی، برقراری ارتباط اینترنتی از طریق GPRS ،بلوتوث و.. را انجام می دهد، SIM900 مدل قدیمی تر SIM800 است.
ESP8266
این ماژول یک ماژول بسیار قدرتمند و با قیمت مناسب است که ارتباط دستگاه با شبکه وای فای را برقرار می کند این ماژول علاوه بر اینکه می تواند از میکرو دستور بگیرد، خود نیز دارای پردازنده و حافظه داخلی در حد چند مگابایت و فرکانس 80 مگاهرتز می باشد که با داشتن واحد های جانبی مانند USART,SPI,I2C,PWM,ADC و چند پایه ورودی و خروجی میتواند بدون نیاز به میکرو ارسال و دریافت پیام را انجام دهد و حتی خود نقش یک میکرو را بازی کند و کنترل مدار را هم به عهده بگیرد، البته واحد های داخلی و دسترسی برنامه نویسی در این ماژول ها به گونه ای نیست که هر کاری بتوان با واحد های جانبی انجام داد و فقط برای استفره روتین و عادی می باشند.
ESP32
این ماژول یک نسخه پیشرفته ESP8266 می باشد که با معماری 32 بیتی ساخته شده است و مقادیر منابع آن افزایش پیدا کرده است و با قرار دادن ماژول های متنوع دیگری مانند:
DAC,Touch Sensing,CAN و دیگر ماژول ها سعی شده است که آن را از بکار بردن میکرو در کنارش کاملا بی نیاز نماید، اما باز هم این ماژول ها دسترسی عمومی و محدودی از واحد های میکروکنترلری را به شما می دهد.
می توانند به شبکه نقطه اتصال یا یک GateWay متصل گردند به یکدیگر هم برای تبادل داده می توانند متصل شوند که در نتیجه ارتباط بسیار بهتری شکل خواهد گرفت؛ بسیاری از این ماژول ها میکروکنترلر داخلی دارند و بی نیاز از میکرو خارجی می باشند حتی بعضی از مدلهای زیگبی دارای میکروکنترلر با هسته ARM می باشند.
LoRa
لورا هم یک پروتکل ارتباطی است که ماژول های مختلفی با استفاده از این پروتکل ساخته شده است، لورا یک ارتباط با مسافت طولانی تر از ZigBee همراه با مصرف انرژی بسیار پایین را فراهم می کند تمامی نود ها با اتصال به یک GateWay به مودم متصل شده و با شبکه اینترنت ارتباط برقرار می کنند، این ماژول ها قابلیت های یک میکرو کنترلر ساده را نیز دارند.
Tuya
تویا یک پرتکل چینی است که که از طریق بستر وای فای، بلوتوث، زیگبی ارتباط بین نود ها را برقرار میکند و با ارائه یک پایگاه داده ابری ،خدمات نرم افزاری و اپلیکیشن موبایل ، پیاده سازی یک شبکه ioT را بسیار ساده کرده است، مانند دیگر ماژول های مخابراتی این ماژول نیز قابلیت های یک میکروکنترلر ساده را نیز دارد.
تعداد پروتکل ها و ماژول ارتباطی در زمینه فناوری ioT بسیار بالاست و رفته رفته با همه آن ها آشنا خواهیم شد.
همان طور که مشاهده نمودید کار در زمینه اینترنت اشیاء نیازمند یادگیری طراحی مدار و طراحی بورد و و در برخی موارد میکروکنترلر و یک زبان برنامه نویسی که غالبا C یا C++ و یا پایتون برای برنامه نویسی خود ماژول های مخابراتی می باشد که معمولا برنامه نویسی راحت تری نسبت به میکروکنترلر دارند اما پیاده سازی پروتکل های ارتباطی از طریق برنامه نویسی در این ماژول ها مقدار سخت و زمان بر است،
از طرف دیگر ایجاد یک شبکه اینترنت اشیا در مقیاس گسترده نیاز به پیاده سازی یک سرور دارد که علاوه بر ایجاد یک سرور فیزیکی نیاز به برنامه نویسی سمت سرور و در نهایت برای ارائه خدمات مناسب نیاز به طراحی یک اپلیکیشن موبایل برای کنترل و مانیتورینگ توسط کاربر داریم که با توجه به این توضیحات همیشه برای انجام یک پروژه ioT نیاز به یک تیم بزرگ و سرمایه گذاری کلان داریم .