فهرست مطالب:

نحوه استفاده از MQTT با Raspberry Pi و ESP8266/sonoff: 4 مرحله
نحوه استفاده از MQTT با Raspberry Pi و ESP8266/sonoff: 4 مرحله

تصویری: نحوه استفاده از MQTT با Raspberry Pi و ESP8266/sonoff: 4 مرحله

تصویری: نحوه استفاده از MQTT با Raspberry Pi و ESP8266/sonoff: 4 مرحله
تصویری: ماژول esp8266 | آموزش مقدماتی ماژول وای فای esp8266 | PART 3 2024, جولای
Anonim
نحوه استفاده از MQTT با Raspberry Pi و ESP8266/sonoff
نحوه استفاده از MQTT با Raspberry Pi و ESP8266/sonoff

سلام به همگی!

امروز من قصد دارم به شما نشان دهم که چگونه یک رله سوئیچ wifi raspberry pi و ESP8266 را برای کنترل لوازم خانگی خود در هر نقطه از جهان پیکربندی کنید.

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

بنابراین آماده شوید تا کنترلر دستگاه Sonoff Wifi Device MQTT و Rpi خود را بسازید!

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

  1. سوئیچ رله وای فای sonoff با سیستم عامل کنترل خود همراه است. پس از برنامه ریزی مجدد ، سیستم عامل اصلی برای همیشه پاک می شود. پس از آن مطمئن شوید.
  2. سوئیچ رله وای فای sonoff مستقیماً از طریق ولتاژ 230 ولت AC تغذیه می شود ، بنابراین اگر متخصص در کار با چنین ولتاژهای بالا نیستید ، از والدین یا شخص متخصص خود کمک بگیرید.
  3. سوئیچ رله sonoff وای فای به سادگی در اطراف چیپست وای فای esp8266-01 قرار دارد که یک تراشه 3.3 ولت است ، اگر به طور تصادفی 5 ولت را به پین +V آن وارد کنید ، مطمئناً به آن آسیب می رسانید.
  4. در اینجا برای این دستورالعمل ، من در نظر گرفته ام که شما تمشک pi خود را به طور کامل تنظیم کرده و وای فای را با آدرس IP فعال کرده اید تا دستورات پشه و MQTT را در ترمینال اجرا کنید.

** اگر با تمام 4 مرحله بالا آماده هستید ، خوب است بروید !!

مرحله 1: مقدمه + لوازم

مقدمه + لوازم
مقدمه + لوازم
مقدمه + لوازم
مقدمه + لوازم

سلام بچه ها! امروز ما قصد داریم یک پروژه بسیار جالب بسازیم. در اینجا در این پروژه ، ما قصد داریم دستگاه های خانگی خود مانند لامپ AC را با استفاده از کارگزار MQTT کنترل کنیم.

توجه: این یک پروژه IOT است بنابراین می توانید دستگاه AC خود را از هر نقطه در جهان کنترل کنید

MQTT (Massage Que Telemetry Transport) یک پروتکل انتقال بار ساده است که در صحت پروژه های وب استفاده می شود. پیام رسان فیس بوک همچنین از پروتکل MQTT استفاده می کند. به اندازه کافی مقدمه اجازه دهید با Project شروع کنیم.

برای این پروژه به چه چیزی نیاز داریم؟

1) اتصال Wifi فعال (ترجیحاً روتر)

2) مدل Raspberry Pi3 که وای فای روی آن فعال شده است.

3) سوئیچ Sonoff Wifi IOT با 10A 220V

4) برخی از سیم های اتصال دهنده

5) کابل های بلوز

6) مبدل USB به TTL CP2102

  • توجه: برای این پروژه ، شما باید تمشک pi را به طور کامل با اتصال صفحه کلید مانیتور یا در حالت بدون سر با لپ تاپ خود (اتصال VNC) داشته باشید.
  • اگر تمشک پای را با حالت مانیتور یا بدون سر راه ندارید ، باید از آموزش دیگر من در مورد نحوه اتصال تمشک پی در حالت بدون سر استفاده کنید.

مرحله 2: راه اندازی رزبری پای

راه اندازی رزبری پای
راه اندازی رزبری پای

در این مرحله ، ما تمشک pi خود را برای پروژه تنظیم می کنیم.

در این آموزش ، ما از sonoff ESP8266 به عنوان مشتری و raspberry pi به عنوان کارگزار پشه استفاده می کنیم.

  1. پایانه تمشک pi خود را باز کرده و تایپ کنید

    1. sudo apt-get update
    2. sudo apt-get upgrade هنگامی که تمشک Pi شما با آخرین سیستم عامل به روز می شود ، خوب است با هر پروژه ای در pi خود پیش بروید
  2. حالا دستورات زیر را برای نصب Mosquitto تایپ کنید

    1. wget
    2. sudo apt-key اضافه کردن mosquitto-repo.gpg.key
    3. cd /etc/apt/sources.list.d/
    4. sudo wget
    5. sudo -i
    6. apt-get update
    7. apt-get install mosquitto
    8. apt-get mosquitto-client را نصب کنید
  3. پس از پیروی کامل از تمام دستورالعمل های بالا ، دستگاه خود را با کارگزار پشه آماده کرده اید و آماده مرحله بعدی هستید.
  4. دوباره دستورات زیر را در ترمینال خود تایپ کنید:
    1. sudo pip paho-mqtt را نصب کنید
    2. sudo pip3 paho-mqtt را نصب کنید
  5. اکنون به منظور بررسی اینکه آیا گیرنده پشه شما با موفقیت نصب شده است یا پوسته python2 یا python3 را باز نکرده و دستور زیر را تایپ کنید

    1. وارد کردن مشتری paho.mqtt.client
    2. این نباید چیزی را برگرداند در صورت بازگرداندن خط یا خطا ، مراحل بالا را دوباره بررسی کنید و مراحل را یکبار دیگر با دقت دنبال کنید.
  6. اکنون قسمت Raspberry Pi شما تقریباً تمام شده است و اکنون خوب است که به سراغ قسمت Sonoff و Arduino بروید

مرحله 3: تنظیم دستگاه Sonoff Esp8266 برای MQTT

راه اندازی دستگاه Sonoff Esp8266 برای MQTT
راه اندازی دستگاه Sonoff Esp8266 برای MQTT
راه اندازی دستگاه Sonoff Esp8266 برای MQTT
راه اندازی دستگاه Sonoff Esp8266 برای MQTT
راه اندازی دستگاه Sonoff Esp8266 برای MQTT
راه اندازی دستگاه Sonoff Esp8266 برای MQTT

در این مرحله ، ما دستگاه مشتری خود را که Sonoff است راه اندازی می کنیم.

sonoff یک دستگاه اتوماسیون خانگی wifi است که با سیستم عامل از پیش نصب شده برای اتوماسیون خانگی مبتنی بر wifi و برنامه android/ios برای کنترل وسایل بر روی wifi همراه است.

در اینجا یک هک ساده برای برنامه ریزی مجدد آن به روشی که ما می خواهیم وجود دارد. پس از برنامه ریزی مجدد با Arduino ide ، سیستم عامل اصلی که از قبل در sonoff نصب شده بود را از دست خواهید داد.

  1. ابتدا ، دستگاه sonoff خود را با دقت باز کنید و مراقب پین های نشان داده شده در تصویر باشید DANGER: دستگاه sonoff روی 220 ولت مستقیم مستقیم کار می کند ، قبل از باز کردن یا برنامه نویسی باید ابتدا آن را وصل کنید.
  2. حالا تصویر زیر را برای pinout آن ببینید ، در قسمت زیرین PCB یک تراشه esp8266 وجود دارد که مشابه ماژول esp8266-01 خود می بینید.
  3. حالا Arduino IDE را باز کرده و کتابخانه های Zip لازم را اضافه کنید. PUBSUB_client Library
  4. همچنین ، باید برد esp8266 را به آردوینو ایده خود اضافه کنید. اگر قبلاً اضافه نشده است مراحل را دنبال کنید

    1. Arduino IDE خود را باز کرده و روی "File -> Preferences" کلیک کنید.
    2. "https://arduino.esp8266.com/stable/package_esp8266com_index.json"
    3. در "آدرس های اضافی مدیران هیئت مدیره" این پیوند بالا را اضافه کنید و روی "OK" کلیک کنید
    4. به "Tools -> Board -> Boards Manager" بروید ، "ESP8266" را تایپ کرده و آن را نصب کنید.
    5. دوباره به "Tools -> Board" بروید و "Generic ESP8266 Module" را انتخاب کنید.
    6. اکنون شما با موفقیت برد را به Arduino IDE خود اضافه کرده اید.
  5. اکنون باید یک کانکتور زن را به دستگاه sonoff لحیم کنید ، همانطور که در تصویر نشان داده شده است.
  6. حالا USB را به برد TTL CP2102 یا FTDI ببرید و مطابق تصویر نشان داده شده در بالا ، اتصال زیر را انجام دهید.

    1. RX از FTDI تا TX از Sonoff
    2. TX از FTDI تا RX از Sonoff
    3. GND از FTDI به GND از Sonoff
    4. 3.3V FTDI تا 3.3V Sonoff
  7. توجه: مطمئن شوید که تابلوی sonoff را با 5 ولت تامین نمی کنید. اگر 5 ولت را به پین برق متصل کنید ، 3.3 ولت سازگار است ، ممکن است دستگاه sonoff خود را بسوزانید. بنابراین بهتر است فقط از منبع 3.3 ولت برد FTDI استفاده کنید.
  8. اکنون اتصال را همانطور که در تصویر نشان داده شده ایجاد کنید.
  9. یکی شما با مراحل بالا انجام شده است. FTDI/USB خود را به برد TTL به لپ تاپ/کامپیوتر متصل کرده و Arduino IDE را باز کنید.
  10. کد را کپی کنید.

11. اکنون از منوی Tools پورت COM مناسب را انتخاب کرده و دستگاه را به عنوان یک دستگاه ESP8266 عمومی انتخاب کنید. حالا دکمه بارگذاری را فشار دهید. بارگذاری کد در تراشه esp8266 دستگاه sonoff حدود یک دقیقه یا کمتر طول می کشد.

12. اکنون همه شما با برنامه نویسی sonoff و آردوینو آماده هستید. و اکنون باید led را در صفحه sonoff چشمک بزنید // همانطور که در ابتدا 5 بار پلک زدیم.

13. خوب است که به مرحله بعدی بروید.

مرحله 4: Sonoff خود را از وب کنترل کنید

Sonoff خود را از وب کنترل کنید
Sonoff خود را از وب کنترل کنید

اکنون ، این آخرین مرحله برای پروژه ما است.

  1. اکنون با وارد کردن آدرس IP Pi خود ، اتصال دسکتاپ از راه دور VNC رزبری پای خود را باز کنید
  2. اکنون ترمینال را باز کرده و دستورات زیر را تایپ کنید
  3. در اینجا led موضوع است و "0" بار است
  4. آدرس IP دستور را با آدرس IP Rpi خود تغییر دهید
  5. و به جای "0" ، "1" را بنویسید که رله شما را در سوئیچ وای فای sonoff روشن می کند.

mosquitto_pub -h 192.168.0.104 -t led -m "0"

دستورالعمل بالا رله شما را خاموش می کند.

mosquitto_pub -h 192.168.0.104 -t led -m "1"

این دستور رله شما را روشن می کند.

اکنون با کنترل sonoff خود از ترمینال Rpi به پایان رسیده اید.

شما می توانید با اتصال سوئیچ sonoff wifi به شبکه wifi متفاوت و رزبری pi به اتصال wifi متفاوت را بررسی کنید. شما باید بتوانید رله را از هر نقطه در جهان کنترل کنید.

حالا حتی بیشتر می خواهید ON/OFF sonoff خود را آزمایش کنید ، من یک اسکریپت پایتون کوچک نوشته ام

که ابتدا "1" را ارسال می کند و پس از 6 ثانیه "0" را ارسال می کند و این روند در یک حلقه تکرار می شود.

واردات paho.mqtt.publish بعنوان زمان انتشار

در حالی که درست است:

print ("ارسال 1 …") publik.single ("ledStatus"، "1"، hostname = "IP کارگزار شما") time.sleep (6) print ("ارسال 0 …") publik.single ("ledStatus"، "0" ، hostname = "IP کارگزار شما") time.sleep (3)

کد بالا به سادگی رله را روی کلید رله sonoff wifi روشن و خاموش می کند.

فراموش نکنید که آدرس IP RaspberryPi خود را در کد پایتون بالا جایگزین کنید. اکنون این اسکریپت را با کلیک روی گزینه run module اجرا کنید و باید روی shell مشاهده کنید

ارسال "1"..

ارسال "0"..

ارسال "1".. چیزی شبیه به این.

این برای این دستورالعمل است. دفعه بعد با یکی جدید میبینمت

خدا حافظ!!!!

فراموش نکنید که این دستورالعمل را دنبال کرده و به اشتراک بگذارید و آن را به تنهایی امتحان کنید!

هر گونه شک و تردید در بخش نظرات خوش آمدید!

توصیه شده: