Obsah:

Ako používať MQTT s Raspberry Pi a ESP8266/sonoff: 4 kroky
Ako používať MQTT s Raspberry Pi a ESP8266/sonoff: 4 kroky

Video: Ako používať MQTT s Raspberry Pi a ESP8266/sonoff: 4 kroky

Video: Ako používať MQTT s Raspberry Pi a ESP8266/sonoff: 4 kroky
Video: Как собрать ПЛК Raspberry Pi Pico || Редактор OpenPLC 2024, Júl
Anonim
Ako používať MQTT s Raspberry Pi a ESP8266/sonoff
Ako používať MQTT s Raspberry Pi a ESP8266/sonoff

Ahoj všetci!

Dnes vám ukážem, ako nakonfigurovať prepínač wifi relé Sonoff na báze Raspberry Pi a ESP8266 na ovládanie vašich domácich spotrebičov odkiaľkoľvek na svete.

Ak budete do konca tohto pokynu pozorne postupovať podľa mojich pokynov, budete môcť ovládať akékoľvek svoje domáce zariadenie z terminálu Raspberry Pi alebo pomocou python shell.

Pripravte sa teda na výrobu vlastného ovládača zariadenia Sonoff Wifi na báze MQTT a Rpi!

Predtým, ako sa pustím do tohto návodu, rád by som spomenul niekoľko veľmi dôležitých vecí,

  1. Prepínač wifi relé Sonoff sa dodáva s vlastným ovládacím firmvérom. akonáhle ho preprogramujete, pôvodný firmvér sa natrvalo vymaže. Tak sa o tom presvedč.
  2. Spínač WiFi relé Sonoff je priamo napájaný striedavým napätím 230 V, takže ak nie ste odborníkom na manipuláciu s takým vysokým napätím, využite pomoc svojich rodičov alebo odborníka.
  3. Prepínač wifi relé Sonoff je jednoducho založený na čipovej súprave esp8266-01 wifi, ktorá je čipom 3,3 V, ak omylom na jeho +V kolík priložíte 5 V, určite ho poškodíte.
  4. Tu, kvôli tomuto inštrukcii, som usúdil, že máte svoje malinové pi všetko nastavenie a wifi povolené s IP adresou na spustenie príkazov mosquitto a MQTT v termináli

** Ak ste pripravení na všetky vyššie uvedené 4 kroky, môžete ísť !!

Krok 1: Úvod + spotrebný materiál

Úvod + zásoby
Úvod + zásoby
Úvod + zásoby
Úvod + zásoby

Ahojte chlapi! dnes sa chystáme postaviť veľmi zaujímavý projekt. Tu v tomto projekte budeme ovládať naše domáce zariadenia, ako napríklad AC lampu, pomocou brokera MQTT.

Poznámka: Toto je projekt IOT, a preto môžete svoje AC zariadenie ovládať odkiaľkoľvek na svete

MQTT (Massage Que Telemetry Transport) je protokol prenosu jednoduchého užitočného zaťaženia, ktorý sa používa vo väčšine webových projektov. Facebook Messenger tiež používa protokol MQTT. dosť úvodu, začnime s Projectom.

Čo potrebujeme k tomuto projektu?

1) Aktívne pripojenie Wifi (najlepšie smerovač)

2) Model Raspberry Pi3, na ktorom je povolená sieť Wi -Fi.

3) Sonoff Wifi IOT prepínač s 10A 220V

4) Niektoré spojovacie vodiče

5) Prepojovacie káble

6) Konvertor CP2102 USB na TTL

  • Poznámka: Pre tento projekt musíte mať Raspberry Pi všetky nastavenia buď s pripojením klávesnice monitora, alebo v bezhlavom režime s prenosným počítačom (pripojenie VNC)
  • Ak nemáte Raspberry Pi všetko nastavené s monitorom alebo bezhlavým režimom, musíte postupovať podľa môjho ďalšieho tutoriálu, ako pripojiť Raspberry Pi v bezhlavom režime.

Krok 2: Nastavenie Raspberry Pi

Nastavenie Raspberry Pi
Nastavenie Raspberry Pi

V tomto kroku nastavíme naše malinové pi pre projekt.

V tomto tutoriáli používame sonoff ESP8266 ako klienta a malinový pi ako makléra komárov.

  1. otvorte svoj malinový terminál pi a napíšte

    1. sudo apt-get aktualizácia
    2. sudo apt-get upgrade Akonáhle je váš Raspberry Pi aktualizovaný najnovším firmvérom, môžete začať s akýmkoľvek projektom na vašom pi
  2. Teraz zadajte nasledujúce príkazy na inštaláciu Mosquitto

    1. wget
    2. sudo apt-key pridajte mosquitto-repo.gpg.key
    3. cd /etc/apt/sources.list.d/
    4. sudo wget
    5. sudo -i
    6. apt-get aktualizácia
    7. apt-get install mosquitto
    8. apt-get nainštalovať mosquitto-klientov
  3. Akonáhle úspešne splníte všetky vyššie uvedené pokyny, máte stroj pripravený s nastaveným maklérom komárov a ste pripravení na ďalší krok.
  4. Na termináli znova zadajte nasledujúce príkazy:
    1. sudo pip install paho-mqtt
    2. sudo pip3 nainštalujte paho-mqtt
  5. Teraz, aby ste skontrolovali, či je váš klient mosquitto úspešne nainštalovaný alebo nie, otvorte shell python2 alebo python3 a zadajte nasledujúci príkaz

    1. import paho.mqtt.client
    2. toto by nemalo vrátiť nič. ak vráti nejaký riadok alebo chybu, znova skontrolujte vyššie uvedené kroky a znova ich starostlivo postupujte.
  6. Teraz je vaša časť Raspberry Pi takmer hotová a môžete sa pustiť do časti Sonoff a Arduino

Krok 3: Nastavenie zariadenia Sonoff Esp8266 pre MQTT

Nastavenie zariadenia Sonoff Esp8266 pre MQTT
Nastavenie zariadenia Sonoff Esp8266 pre MQTT
Nastavenie zariadenia Sonoff Esp8266 pre MQTT
Nastavenie zariadenia Sonoff Esp8266 pre MQTT
Nastavenie zariadenia Sonoff Esp8266 pre MQTT
Nastavenie zariadenia Sonoff Esp8266 pre MQTT

Teraz v tomto kroku nastavíme naše klientske zariadenie, ktorým je Sonoff.

sonoff je zariadenie na domácu automatizáciu wifi, ktoré je dodávané s predinštalovaným firmvérom pre domácu automatizáciu na báze wifi a aplikáciou Android/ios na ovládanie spotrebičov cez wifi.

Teraz je tu jednoduchý hack, ktorý môžete preprogramovať tak, ako chceme. po preprogramovaní s Arduino ide stratíte pôvodný firmvér predinštalovaný na sonoff.

  1. najskôr opatrne otvorte zariadenie sonoff a dávajte pozor na vývody uvedené na obrázku NEBEZPEČENSTVO: zariadenie sonoff funguje na 220 V striedavom prúde, pred otvorením alebo programovaním ho musíte najskôr odpojiť.
  2. Teraz sa pozrite na nasledujúci obrázok s vývodom, na spodnej strane dosky plošných spojov je čip esp8266, ktorý nájdete podobne ako váš modul esp8266-01.
  3. Teraz otvorte Arduino IDE a pridajte potrebné knižnice Zip. Knižnica PUBSUB_client
  4. Tiež musíte mať do svojho Arduino ideu pridanú dosku esp8266. ak ešte nie je pridaný, postupujte podľa týchto krokov

    1. Otvorte svoje Arduino IDE a kliknite na „Súbor -> Predvoľby“.
    2. "https://arduino.esp8266.com/stable/package_esp8266com_index.json"
    3. Do „Webových adries dodatočných správcov dosiek“pridajte tento odkaz vyššie a kliknite na „OK“
    4. Prejdite na „Nástroje -> Doska -> Správca dosiek“, zadajte „ESP8266“a nainštalujte ho.
    5. Prejdite znova na „Nástroje -> Doska“a vyberte „Generický modul ESP8266“.
    6. Teraz ste úspešne pridali dosku do svojho Arduino IDE.
  5. Teraz musíte k zariadeniu sonoff spájkovať jeden ženský konektor, ako je znázornené na obrázku.
  6. Teraz vezmite dosku USB na TTL CP2102 alebo FTDI a vytvorte nasledujúce pripojenie podľa obrázku uvedeného vyššie.

    1. RX od FTDI po TX od Sonoffa
    2. TX od FTDI do RX od Sonoffa
    3. GND FTDI až GND Sonoffa
    4. 3,3 V FTDI až 3,3 V Sonoffa
  7. POZNÁMKA: Uistite sa, že dosku sonoff nedodávate s napätím 5 V. je kompatibilný s 3,3 V, ak pripojíte 5 V k napájaciemu kolíku, môžete spáliť svoje zariadenie Sonoff. preto lepšie používajte iba napájanie 3,3 V dosky FTDI.
  8. Teraz vytvorte pripojenie podľa obrázka.
  9. Jeden z nich je vykonaný pomocou vyššie uvedených krokov. pripojte svoju dosku FTDI/USB k TTL k notebooku/PC a otvorte Arduino IDE.
  10. Skopírujte kód.

11. Teraz vyberte príslušný port COM z ponuky Nástroje a vyberte zariadenie ako generické zariadenie ESP8266. Teraz kliknite na tlačidlo nahrávania. Nahranie kódu na čip esp8266 zariadenia sonoff bude trvať približne minútu alebo menej.

12. Teraz ste všetci vybavení programovaním sonoff a Arduino. a teraz by ste mali vidieť blikať LED na doske sonoff //, ako sme napísali 5 -krát blikanie na začiatku.

13. Je dobré prejsť k ďalšiemu kroku.

Krok 4: Ovládajte svoj Sonoff z webu

Ovládajte svoj Sonoff z webu
Ovládajte svoj Sonoff z webu

Toto je posledný krok k nášmu projektu.

  1. teraz otvorte pripojenie VNC k vzdialenej ploche Raspberry Pi zadaním adresy IP vášho Pi
  2. teraz otvorte terminál a začnite písať nasledujúce príkazy
  3. tu je téma a „0“je užitočné zaťaženie
  4. zmeňte IP adresu príkazom s vašou IP adresou Rpi
  5. A namiesto „0“napíšte „1“, ktoré zapne vaše relé na prepínači wifi off -off.

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

Vyššie uvedené pokyny vypnú vaše relé.

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

Tento pokyn zapne vaše relé.

Teraz ste skončili s ovládaním svojho syna z terminálu Rpi.

môžete skontrolovať pripojením prepínača wifi Sonoff k inej sieti Wi -Fi a Raspberry Pi k inému pripojeniu Wi -Fi. Relé by ste mali ovládať odkiaľkoľvek na svete.

Teraz ešte ďalej chcete otestovať ZAPNUTIE/VYPNUTIE vášho sonoffa automaticky. Napísal som malý pythonový skript

ktorý najskôr pošle „1“a po 6 sekundách pošle „0“a tento proces sa opakuje v slučke.

importujte paho.mqtt.publish ako čas importu publikovania

Kým je to pravda:

print ("Odosielam 1 …") publish.single ("ledStatus", "1", hostname = "IP vášho makléra") time.sleep (6) tlač ("Odosielam 0 …") publish.single ("ledStatus", "0", hostname = "IP vášho makléra") time.sleep (3)

Vyššie uvedený kód jednoducho zapína a vypína relé na prepínači wifi wifi sonoff.

Nezabudnite vo vyššie uvedenom kóde pythonu nahradiť IP adresu vášho RaspberryPi. teraz spustite tento skript kliknutím na možnosť spustiť modul a mali by ste vidieť na shelle

posielam "1"..

posielam "0"..

odosielanie „1“.. niečo také.

To je pre tento návod k dispozícii. vidíme sa nabudúce s novým.

Zbohom!!!!

a nezabudnite sledovať a zdieľať tento návod a vyskúšať si to na vlastnej koži!

akékoľvek pochybnosti uverejnené v sekcii komentárov sú vítané!

Odporúča: