فهرست مطالب:

سیستم اتوماسیون خانگی WiFi بسیار کم مصرف: 6 مرحله (همراه با تصاویر)
سیستم اتوماسیون خانگی WiFi بسیار کم مصرف: 6 مرحله (همراه با تصاویر)

تصویری: سیستم اتوماسیون خانگی WiFi بسیار کم مصرف: 6 مرحله (همراه با تصاویر)

تصویری: سیستم اتوماسیون خانگی WiFi بسیار کم مصرف: 6 مرحله (همراه با تصاویر)
تصویری: تصور دخترا از ازدواج🤣 2024, نوامبر
Anonim
سیستم اتوماسیون خانگی WiFi بسیار کم مصرف
سیستم اتوماسیون خانگی WiFi بسیار کم مصرف
سیستم اتوماسیون خانگی WiFi بسیار کم مصرف
سیستم اتوماسیون خانگی WiFi بسیار کم مصرف

در این پروژه ما نشان می دهیم که چگونه می توانید در چند مرحله یک سیستم اصلی اتوماسیون خانگی محلی ایجاد کنید. ما قصد داریم از Raspberry Pi استفاده کنیم که به عنوان یک دستگاه WiFi اصلی عمل می کند. در حالی که برای گره های پایانی ما قصد داریم از IOT Cricket برای ساخت دستگاههای WiFi باتری استفاده کنیم ، به عنوان مثال سنسور دما و آن را بدون نوشتن یک خط کد به RPi وصل کنید.

سیستم ما بر اساس پروتکل ارتباطی MQTT است که در اکثر سیستم های اتوماسیون خانگی بسیار مورد استفاده قرار می گیرد. برای راه اندازی آن ، کارگزار Mosquitto MQTT (سرور) را انتخاب کرده و آن را بر روی Raspberry Pi (مرکز مرکزی ما) نصب می کنیم.

IOT Cricket همچنین از پروتکل های HTTP (S) و MQTT پشتیبانی می کند. ما آن را پیکربندی می کنیم تا از MQTT برای ارتباط مستقیم با کارگزار RPi MQTT استفاده کنیم.

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

تدارکات:

  • Raspberry Pi (ما از ورژن 3 برای این پروژه استفاده کردیم)
  • ماژول WiFi IOT Cricket
  • نگهدارنده باتری 2xAAA
  • باتری 2xAAA

مرحله 1: MQTT چیست؟

پروتکل MQTT یک روش سبک برای انجام پیام ها با استفاده از مدل انتشار/اشتراک ایجاد می کند. این امر آن را برای پیام های اینترنت اشیاء مانند سنسورهای کم مصرف یا دستگاه های تلفن همراه مانند تلفن ها ، رایانه های جاسازی شده یا میکروکنترلرها مناسب می کند. (منبع: mosquitto.org)

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

مرحله 2: نصب MQTT Broker بر روی Raspberry Pi

برای این پروژه از یک کارگزار منبع باز Mosquitto MQTT استفاده می کنیم. سبک است و برای استفاده در همه دستگاه ها از رایانه های تک برد کم مصرف تا سرورهای کامل مناسب است.

قبل از شروع نصب ، تمرین خوبی است که ابتدا اجزای سیستم را به روز کنید:

$ sudo apt-get بروزرسانی $ sudo apt-get ارتقا دهید

بروکر Mosquitto را نصب کنید. یک ترمینال را باز کرده و دستور زیر را تایپ کنید:

$ sudo apt -get mosquitto -y را نصب کنید

پیکربندی کارگزار Mosquitto. ویرایش فایل پیکربندی:

$ sudo vi /etc/mosquitto/mosquitto.conf

و خطوط زیر را در بالا اضافه کنید:

پورت 1883allow_anonymous درست است

راه اندازی مجدد RPi برای اعمال تغییرات:

راه اندازی مجدد $ sudo

خودشه! کارگزار MQTT ما اکنون راه اندازی شده است!

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

اکنون ، ما فقط باید آدرس IP را بدست آوریم تا بتوانیم از سایر دستگاه های موجود در شبکه به کارگزار Mosquitto خود پیام ارسال کنیم:

دریافت آدرس IP:

$ hostname -I

your_RPi_IP_address (به عنوان مثال 192.168.1.10)

مرحله 3: اتصال IOT Cricket به RaspberryPi Over MQTT

اتصال IOT Cricket به RaspberryPi Over MQTT
اتصال IOT Cricket به RaspberryPi Over MQTT
اتصال IOT Cricket به RaspberryPi Over MQTT
اتصال IOT Cricket به RaspberryPi Over MQTT

در این پروژه ما از ماژول IOT Cricket WiFi برای یک سنسور ساده استفاده می کنیم تا دمای هر 30 ثانیه را به سیستم ما گزارش دهد. با باتری کار می کند تا بتوانیم آن را در هرجای خانه یا باغ بچسبانیم. بعداً می توانید از IOT Cricket برای ساخت سنسورهای مختلف باتری ، زنگ هشدار ، دکمه ها ، سوئیچ ها و اتصال آنها به دلال RPi MQTT خارج از جعبه استفاده کنید.

در مرحله اول باتری ها را به کریکت وصل کنید.

کریکت دارای سنسور دما است. ما فقط باید آن را پیکربندی کنیم تا با تنظیم آدرس IP RPi مقدار دما را به کارگزار MQTT ما ارسال کند. برای انجام این کار پنل پیکربندی Cricket را باز کنید (مراحل را اینجا ببینید) و تنظیمات زیر را اعمال کنید (همانطور که در تصویر زیر نشان داده شده است ، لطفا آدرس IP را در کادر "url" به RPi خود تنظیم کنید)

اکنون می توانیم از حالت پیکربندی خارج شویم. دستگاه آماده است! کریکت در حال ارسال داده ها به کارگزار MQTT ما هر 30 ثانیه است.

مرحله 4: پیامهای MQTT را بازرسی کنید

پیام های MQTT را بررسی کنید
پیام های MQTT را بررسی کنید

برای مشاهده / دریافت پیام های ارسال شده به کارگزار MQTT ما می توانیم از ابزارهای مختلف استفاده کنیم.

ساده ترین آنها ممکن است ابزار خط فرمان mosquitto_sub باشد. ما می توانیم آن را روی هر رایانه ای در شبکه خود یا روی RPi خود با این دستور نصب کنیم:

$ sudo apt-get install mosquitto-clients -y

اکنون می توانیم دستور زیر را برای گوش دادن به همه موضوعات و پیام های ارسال شده از طریق کارگزار MQTT خود اجرا کنیم:

$ mosquitto_sub -v -h your_RPi_IP_address -p 1883 -t '#'

… / 59A98F494C / DEVICE_NAME MyTemperatureDev / 59A98F494C / device_sn 59A98F494C / 59A98F494C / hwc_wake_up 3794 / 59A98F494C / hwc_wifi_enabled 3763 / 59A98F494C / hwc_message_sent 3664 / 59A98F494C / دمای 26.0 / 59A98F494C / io1_wake_up 0 / 59A98F494C / rtc_wake_up 1 …

موارد فوق یک نمونه خروجی از آنچه IOT Cricket برای کارگزار ما ارسال می کند ، است. در میان سایر داده هایی که می توانیم ببینیم دما وجود دارد:

/59A98F494C/دمای 26.0

زیبایی MQTT این است که به ما اجازه می دهد فقط در موضوعات مورد علاقه خود مشترک شویم. اگر می خواهیم فقط دما را دریافت کنیم ، می توانیم با استفاده از دستور زیر در موضوع /59A98F494C /temp مشترک شویم:

$ mosquitto_sub -h your_RPi_IP_address -t '/59A98F494C/temp'

…26.126.527.227.6…

مرحله 5: خلاصه

خلاصه
خلاصه

ما در این پروژه یک سخت افزار و نرم افزار ضروری را برای شروع ساخت سیستم های اتوماسیون خانگی کم مصرف ، کم مصرف و مبتنی بر WiFi نشان داده ایم. MQTT ذاتی است که باید برای سیستم های پیچیده تر مورد استفاده قرار گیرد.

اکوسیستم نرم افزار و خدمات قابل ادغام با MQTT بسیار بزرگ است! بسیاری از سیستم های عالی مانند Home Assistant ، Node RED ، Grafana و غیره وجود دارد که به شما امکان می دهد تجربه کاربری عالی از سیستم خود را بدست آورید. ما نه تنها می توانیم یک چاپ ساده از دما انجام دهیم ، بلکه می توانیم داشبورد های خوبی برای تجسم داده ها و مدیریت دستگاه های شما داشته باشیم.

اکنون که ما این زیرساخت اصلی سیستم را در اختیار داریم ، آسمان محدودیت ما در مورد سایر دستگاه های WiFi است که می توانیم با استفاده از ماژول های IOT Cricket بسازیم و به سیستم اتوماسیون خانگی خود اضافه کنیم.

ممنون که به اینجا رسیدی امیدواریم از این آموزش لذت برده باشید!

تیم Things On Edge

مرحله 6: درباره ما

Things On Edge یک شرکت مستقر در کمبریج انگلستان است. ما ماژول وای فای کریکت با باتری بسیار کم را طراحی می کنیم تا بتوانید دستگاه های الکترونیکی مختلف را به صورت واقعی در چند دقیقه به تلفن های هوشمند یا سایر خدمات اینترنتی متصل کنید. نیازی به برنامه نویسی و کد نویسی ندارد. این به شما امکان می دهد دستگاه های خود را در یک سرویس بزرگ اکوسیستم IOT روی MQTT و HTTP apis ادغام کنید.

توصیه شده: