Cuprins:

Cum se folosește MQTT cu Raspberry Pi și ESP8266 / sonoff: 4 pași
Cum se folosește MQTT cu Raspberry Pi și ESP8266 / sonoff: 4 pași

Video: Cum se folosește MQTT cu Raspberry Pi și ESP8266 / sonoff: 4 pași

Video: Cum se folosește MQTT cu Raspberry Pi și ESP8266 / sonoff: 4 pași
Video: Kiosk mode Bruteforce Evasion with Flipper Zero 2024, Iulie
Anonim
Cum se folosește MQTT cu Raspberry Pi și ESP8266 / sonoff
Cum se folosește MQTT cu Raspberry Pi și ESP8266 / sonoff

Buna tuturor!

Astăzi vă voi arăta cum să configurați un comutator de releu sonoff bazat pe raspberry pi și ESP8266 pentru a vă controla aparatele electrocasnice de oriunde din lume.

La sfârșitul acestei instrucțiuni, dacă ați urmat cu atenție instrucțiunile mele, veți putea controla oricare dintre aparatele dvs. de uz casnic de la terminalul Raspberry Pi sau utilizând shell-ul Python.

Așadar, pregătiți-vă să vă creați propriul controler de dispozitiv Sonoff Wifi bazat pe MQTT și Rpi!

Înainte de a începe acest instructable, aș dori să menționez câteva lucruri foarte importante,

  1. Comutatorul de releu sonoff wifi vine cu propriul firmware de control. după ce îl reprogramați, firmware-ul original este șters definitiv. Deci, asigurați-vă de asta.
  2. Comutatorul de releu sonoff wifi este alimentat direct prin tensiune de 230V AC, deci dacă nu sunteți expertul în manipularea unor astfel de tensiuni ridicate, luați ajutor de la părinți sau de la o persoană expertă.
  3. Comutatorul de releu sonoff wifi se bazează pur și simplu pe chipset-ul wifi esp8266-01, care este un cip de 3,3V, dacă aplicați accidental 5V pinului său + V îl veți deteriora cu siguranță.
  4. Aici, pentru acest lucru instructiv, am considerat că aveți setul dvs. de raspberry pi și WiFi activat cu adresa IP pentru a rula comenzile mosquitto și MQTT în Terminal

** Dacă sunteți gata cu toți cei 4 pași de mai sus, sunteți bine să mergeți !!

Pasul 1: Introducere + Consumabile

Introducere + Consumabile
Introducere + Consumabile
Introducere + Consumabile
Introducere + Consumabile

Buna baieti! astăzi vom construi un proiect foarte interesant. Aici, în acest proiect, vom controla dispozitivele noastre de acasă, cum ar fi lampa de curent alternativ, utilizând brokerul MQTT.

Notă: Acesta este un proiect IOT, prin urmare vă puteți controla dispozitivul de curent alternativ de oriunde din lume

MQTT (Massage Que Telemetry Transport) este un protocol simplu de încărcare utilă utilizat într-o veritate de proiecte Web. Facebook Messenger folosește, de asemenea, protocolul MQTT. suficient de introducere permite să începem cu Project.

De ce avem nevoie pentru acest proiect?

1) Conexiune Wifi activă (de preferință router)

2) Modelul Raspberry Pi3 care are activat wifi.

3) Comutator Sonoff Wifi IOT cu 10A 220V

4) Unele fire de conectare

5) Cabluri jumper

6) Convertor CP2102 USB la TTL

  • Notă: pentru acest proiect, trebuie să aveți toate configurările de raspberry pi fie cu conexiunea tastaturii monitorului, fie în modul fără cap cu laptopul (conexiune VNC)
  • dacă nu aveți raspberry pi configurat cu modul monitor sau fără cap, trebuie să urmați celălalt tutorial despre cum să conectați raspberry pi în modul fără cap.

Pasul 2: Configurarea Raspberry Pi

Configurarea Raspberry Pi
Configurarea Raspberry Pi

În acest pas, vom configura pi de zmeură pentru proiect.

în acest tutorial, folosim sonoff ESP8266 ca client și raspberry pi ca broker mosquitto.

  1. deschideți terminalul raspberry pi și tastați

    1. sudo apt-get update
    2. sudo apt-get upgrade Odată ce raspberry Pi dvs. este actualizat cu cel mai recent firmware, sunteți bine să mergeți cu orice proiect pe pi
  2. Acum tastați următoarele comenzi pentru a instala Mosquitto

    1. wget
    2. sudo apt-key adăugați 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 install mosquitto-clients
  3. Odată ce ați urmat cu succes toate instrucțiunile de mai sus, aveți mașina pregătită cu brokerul mosquitto configurat și sunteți gata pentru următorul pas.
  4. Din nou în terminalul dvs. tastați următoarele comenzi:
    1. sudo pip instala paho-mqtt
    2. sudo pip3 instalează paho-mqtt
  5. Acum, pentru a verifica dacă clientul dvs. mosquitto este instalat cu succes sau nu, deschideți shell-ul python2 sau python3 și tastați următoarea comandă

    1. import paho.mqtt.client
    2. acest lucru nu ar trebui să returneze nimic. dacă returnează orice linie sau eroare, verificați din nou pașii de mai sus și urmați din nou pașii cu atenție.
  6. Acum, partea dvs. Raspberry Pi este aproape terminată și sunteți bine să alegeți partea Sonoff și Arduino acum

Pasul 3: Configurarea dispozitivului Sonoff Esp8266 pentru MQTT

Configurarea dispozitivului Sonoff Esp8266 pentru MQTT
Configurarea dispozitivului Sonoff Esp8266 pentru MQTT
Configurarea dispozitivului Sonoff Esp8266 pentru MQTT
Configurarea dispozitivului Sonoff Esp8266 pentru MQTT
Configurarea dispozitivului Sonoff Esp8266 pentru MQTT
Configurarea dispozitivului Sonoff Esp8266 pentru MQTT

Acum, în acest pas, vom configura dispozitivul nostru client, care este Sonoff.

sonoff este un dispozitiv de automatizare a rețelei Wi-Fi care vine cu firmware preinstalat pentru automatizare de rețea bazată pe Wi-Fi și aplicație Android / iOS pentru a controla aparatele prin intermediul rețelei wifi.

Iată acum un simplu hack pentru a-l reprograma așa cum dorim. odată reprogramat cu Arduino ide, veți pierde firmware-ul original preinstalat pe sonoff.

  1. mai întâi, deschideți dispozitivul sonoff cu atenție și căutați pinouturile afișate în imagine PERICOL: dispozitivul sonoff funcționează pe CA direct de 220V, trebuie să îl deconectați mai întâi înainte de deschidere sau programare.
  2. Acum vedeți imaginea de mai jos pentru pinout-ul său, pe partea inferioară a PCB-ului există un cip esp8266 pe care îl găsiți similar cu modulul dvs. esp8266-01.
  3. Acum deschideți IDE-ul Arduino și adăugați bibliotecile Zip necesare. PUBSUB_client Library
  4. De asemenea, trebuie să aveți placa esp8266 adăugată la ideea dvs. Arduino. dacă nu este deja adăugat, urmați pașii

    1. Deschideți ID-ul Arduino și faceți clic pe „Fișier -> Preferințe”.
    2. „https://arduino.esp8266.com/stable/package_esp8266com_index.json”
    3. În „Adresele administratorului de panouri suplimentare” adăugați acest link de mai sus și faceți clic pe „OK”
    4. Mergeți la „Tools -> Board -> Boards Manager”, tastați „ESP8266” și instalați-l.
    5. Mergeți din nou la „Instrumente -> Placă” și selectați „Modul ESP8266 generic”.
    6. Acum ați adăugat cu succes placa la ID-ul dvs. Arduino.
  5. Acum trebuie să lipiți un conector feminin pe dispozitivul sonoff așa cum se arată într-o imagine.
  6. Acum luați placa USB către TTL CP2102 sau FTDI și efectuați următoarea conexiune conform imaginii de mai sus.

    1. RX de FTDI la TX de Sonoff
    2. TX de FTDI la RX de Sonoff
    3. GND din FTDI până la GND din Sonoff
    4. 3,3V FTDI până la 3,3V Sonoff
  7. NOTĂ: Asigurați-vă că nu furnizați placa sonoff cu 5V. este compatibil cu 3,3V dacă conectați 5V la pinul său de alimentare, puteți arde dispozitivul sonoff. prin urmare, utilizați mai bine doar sursa de 3.3v a plăcii FTDI.
  8. acum faceți conexiunea așa cum se arată într-o imagine.
  9. Unul dintre voi ați terminat cu pașii de mai sus. conectați-vă FTDI / USB la placa TTL la laptop / PC și deschideți Arduino IDE.
  10. Copiați codul.

11. Acum selectați portul COM adecvat din meniul Instrumente și selectați dispozitivul ca dispozitiv generic ESP8266. Acum apăsați butonul de încărcare. Va dura aproximativ un minut sau mai puțin pentru a încărca codul în cipul esp8266 al dispozitivului sonoff.

12. Acum sunteți pregătiți cu programarea sonoff și Arduino. și acum ar trebui să vedeți ledul de pe placa sonoff clipind // așa cum am scris de 5 ori clipind la început.

13. Ești bine să treci la pasul următor.

Pasul 4: Controlați-vă Sonoff de pe web

Controlați-vă Sonoff de pe web
Controlați-vă Sonoff de pe web

Acum, acesta este ultimul pas către proiectul nostru.

  1. acum deschideți conexiunea desktop VNC la distanță de raspberry pi introducând adresa IP pentru Pi
  2. acum deschideți terminalul și începeți să tastați următoarele comenzi
  3. aici condus este subiect și "0" este sarcina utilă
  4. schimbați adresa IP din comandă cu adresa IP Rpi
  5. Și în loc de „0” scrieți „1” care va porni releul pe comutatorul sonoff wifi.

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

Instrucțiunile de mai sus vă vor opri releul.

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

Această instrucțiune va porni releul.

Acum ați terminat cu controlul sonoff-ului dvs. de la terminalul Rpi.

puteți verifica conectând comutatorul wifi sonoff la o altă rețea wifi și raspberry pi la o conexiune wifi diferită. Ar trebui să puteți controla releul de oriunde din lume.

Acum, chiar mai departe, doriți să testați automat ON / OFF pentru sonoff, am scris un mic script Python

care trimite primul „1” și după 6 secunde trimite „0” și acest proces se repetă într-o buclă.

import paho.mqtt.publish ca timp de importare

În timp ce este adevărat:

print ("Trimiterea 1 …") publish.single ("ledStatus", "1", hostname = "IP-ul brokerului tău") time.sleep (6) print ("Trimiterea 0 …") publish.single ("ledStatus", "0", hostname = "IP-ul brokerului tău") time.sleep (3)

Codul de mai sus pur și simplu pornește și oprește releul de pe comutatorul de releu sonoff wifi.

nu uitați să înlocuiți adresa IP a RaspberryPi în codul python de mai sus. acum rulați acest script făcând clic pe opțiunea Rulați modulul și ar trebui să vedeți pe shell

trimiterea „1”..

trimiterea „0”..

trimitând „1”.. așa ceva.

Gata pentru acest instructabil. ne vedem data viitoare cu una nouă.

Pa!!!!

și nu uitați să urmați și să împărtășiți acest instructable și să-l încercați pe cont propriu!

orice îndoieli postate în secțiunea de comentarii sunt binevenite!

Recomandat: