چند روز پیش توی توییتر با آرش حاتمی صحبتی بود که نتیجه به ارجاع به پست وبلاگی از خودش شد که در اون در مورد مانیتورینگ اتاق سرور که ساخته بود توضیح داده بود.
https://arash-hatami.ir/iot-monitoring/
راه حل خوبی را برای شرایط موجودی که داشت گفته بود، در کنار اون من تصمیم گرفتم روش مقداری متفاوت را برای کسی که الزاما برنامه نویسی بلد نیست و نیاز به همچین سیستمی دارد بنویسم.
امیدوارم این مقدمه ای باشد بر مطالبی در زمینه IoT و هوشمندسازی خانه و در آینده بیشتر بنویسم.
برای مانیتورینگ ما به چند بخش نیاز داریم :
ابزاری برای مشاهده اطلاعات و ...
برای سنسور انتخاب های مختلفی داریم از سنسور DHT11 و DHT22 یا همان AM2302 تا سنسور DS18B2 ، هر کدام از سنسور ها با توجه به نیاز و شرایطی که دارند انتخاب شوند.
مورد بعد یک میکروکنترلر برای ارتباط با این سنسور ها است من هم مثل آرش از ماژول های بر پایه ESP8266 استفاده کردم که انتخاب خودم برای این موضوع wemos D1 mini بود.( به دلیل ابعاد و ماژول های آماده برای wemos که در شکل کاملا مشخص است)
ولی برای برنامه ریزی آن خودم دست به کد نشدم هرچند نمونه کد های زیادی از آن برای Arduino موجود است ولی یکی از برنامه های توسعه داده شده بر پایه ESP8266 که خیلی خیلی خوب عمل میکند و امکانات بسیار خوبی در اختیار شما قرار میدهد Tasmota است.
اگر این فریم ور را روی برد خود نصب کنید به راحتی می توانید با استفاده از محیط تحت وب آن ماژول ها را تنظیم نمایید.
برای پروتکل ارتباطی انتخاب و پیشنهاد من MQTT است.
برای جمع آوری اطلاعات و تحلیل و ... یکی از ابزار های بسیار خوبی که در اختیار شما است و میتوانید از آنها استفاده کنید Node-RED است.
با استفاده از Node-RED شما با اتصال نود های مختلف و ایجاد فلو ساده به نتیجه دلخواه خود برسید.
همچنین اگر اینترفیس ساده تحت وب مد نظر شما است آن را نیز برایتان به راحتی فراهم میکند.
برای ذخیره سازی اطلاعات از دیتابیس InfluxDB استفاده کردم.
برای نمایش اطلاعات هم از Grafana که ابزاری کامل و مناسب برای این گونه کارها است.
نصب و کار کردن با موارد بالا بسیار ساده است ولی در آینده به تفصیل در مورد نصب و راه اندازی آنها توضیح خواهم داد.