پایشگر آب و هوا و کنترل از طریق MQTT با نرم افزار IOT Dashboard

در این پست به بررسی نحوه ساخت یک پایشگر آب و هوا با استفاده از میکروپایتون بر ESP32 با استفاده از پروتکل ارتباطی MQTT می نماییم و داده های نمایشی را از طریق اپلیکیشن مربوطه با استفاده از ویجت های مخصوص به نمایش در می آوریم و سپس با استفاده از کلید و سویچ بورد را کنترل می نماییم.
برای درک بهتر می توانید به رپو مربوطه مراجعه نمایید:
پروتکل MQTT چیست؟
پروتکل MQTT یک پروتکل پیام رسانی ساده است که برای دستگاههای با پهنای باند کم طراحی شده است.بنابراین راه حلی مناسب برای تبادل داده بین چندین دستگاه IoT است.ارتباطات MQTT به عنوان یک سیستم انتشار و دریافت (Publish و Subscribe) کار می کند. دستگاهها پیامهایی را درباره یک موضوع خاص(Topic) منتشر میکنند.و تمامی دستگاه ها و نرم افزار هایی که بر روی تاپیک مد نظر subscribe کرده باشند توانایی دیدن پیام مربوطه را پیدا خواهند کرد. البته این تعداد از دستگاه ها می تواند 1 عدد و یا بیشتر باشد بسته به تنظیمات در نظر گرفته شده در شاخص رفتاری ACL یا Access Control List در broker مربوطه.
مفاهیم اولیه MQTT
در MQTT چند مفهوم اساسی وجود دارد که باید آنها را درک کنید:
- Publish/Subscribe
- Messages
- Topics
- Broker
بروکر (MQTT – Broker)
یک Broker عامل میانی بین ارتباطات کلاینت ها است، به طوری که هر پیام ورودی را به گیرنده های خود مرتبط می کند و کار مدیریت کاربران و پیام ها را در سطوح مختلف بر عهده دارد. بروکر ها مدل های مختلفی دارند اعم از AMQP که خاصیت های مدیریتی و کنترل ترافیک بیشتری را می تواند داشته باشد.
برو کر های متعدد برای توسعه نرم افزار های اینترنت اشیا وجود دارد که موارد زیر جزو آن ها هستند.
- Mosquitto
- Mosca
- emqttd
- EMQ X
- Emitter
ارسال و دریافت (MQTT – Publish/Subscribe)
هر عاملی که می خواهد پیامی را ارسال کند عمل publish را انجام می دهد و هر عاملی که می خواهد دریافت داده را انجام دهد می بایتس قبل از آن خود را در بروکر اضافه کرده و بر روی یک تاپیک خاص گوش فرا دهد که به آن subscribe می گویند.
پیام (MQTT – Messages)
پیام ها اطلاعاتی هستند که می خواهید بین دستگاه های خود مبادله کنید. برای مثال میتواند پیامی مانند فرمان یا دادههایی مانند قرائت سنسور باشد.
تاپیک (MQTT – Topics)
تاپیک ها مانند تانل های ارتباطی هستند که زمانی که شما در هر تاپیک ثبت می شوید اجزا دریافت پیام و یا حتی ارسال بدون ثبت نام در آن را پیدا خواهید کرد.
استفاده در MicroPython
برای اینکه بتوانید از mqtt در میکروپایتون ساتفاده نمایید کتابخانه های متعدد وجود دارد اما برای راحتی عملکرد می خواهیم از umqtt استفاده کنیم. این کتابخانه می تواند به سرعت عملکرد لازم را جهت استفاده از mqtt برای شما فراهم نماید که می توانید در لینک زیر اطلاعات مربوط به این ماژول را بیابید:
micropython-lib/micropython/umqtt.simple at master · micropython/micropython-lib (github.com)
دوره های من در مکتبخونه

آموزش شیءگرایی در پایتون
- سطح: متوسط 94% رضایت

آموزش جنگو Django
- سطح: مقدماتی 97% رضایت

آموزش جنگو پیشرفته
- سطح: پیشرفته 99% رضایت

آموزش میکروپایتون در اینترنت اشیا
- سطح: متوسط 100% رضایت
آخرین پست ها

پایشگر آب و هوا و کنترل از طریق MQTT با نرم افزار IOT Dashboard
- در این پست به بررسی نحوه ساخت یک پایشگر آب و هوا با استفاده از میکروپایتون بر ESP32 با استفاده از پروتکل ارتباطی MQTT می نماییم و داده های نمایشی…
- micro python 1402/06/11

مانیتور آب و هوا با میکروپایتون و نمایش بر روی وب سرور ESP32
- در این پست به بررسی نحوه ساخت یک وب سرور با میکروپایتون بر روی esp32 با استفاده از کتابخانه microdot خواهیم پرداخت. قطعه کد کامل پروژه را می…
- micro python 1402/06/10

شروع استفاده از micropython
- در این پست به بررسی نحوه استفاده از میکرو پایتون در اینترنت اشیا و شروع یادگیری و استافده از آن خواهیم پرداخت. در ویدئو زیر نحوه آماده سازی و استفاده…
- micro python 1402/06/05
آخرین دوره ها

آموزش Arduino
- رایگان 19 دانشجو

آموزش Kubernetes (ویژه توسعه دهنده)
- رایگان 19 دانشجو

آموزش Tkinter
- رایگان 129 دانشجو