Cuprins:
- Pasul 1: Backup prin WiFi și MQTT
- Pasul 2: Telecomanda / expeditorul
- Pasul 3: Receptorul - Hardware (esp8266 și Raspberry Pi)
- Pasul 4: Receptorul - Software (Serial, Node Red, MQTT)
Video: ESP-NOW Home Automation Esp8266 Raspberry Pi MQTT: 4 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
În acest Instructable vă arăt cum am folosit ESP-ACUM în automatizarea casei mele. În schemă puteți vedea fluxurile de comunicare
Iti arat:
- cum funcționează expeditorul
- cum funcționează receptorul
- cum funcționează comunicarea în serie cu un Raspberry Pi
Nu arăt cum funcționează MQTT și automatizarea casei mele, puteți găsi alte instrucțiuni bune pentru asta.
Credite: Acest instructable a fost inspirat din:
Video # 172 de Andreas Spiess
www.esploradores.com/practica-6-conexion-es…
Pasul 1: Backup prin WiFi și MQTT
Am aflat că ESP-ACUM este extrem de rapid și destul de fiabil, dar uneori eșuează. În programul meu am adăugat o copie de rezervă prin WiFi normal și conexiune MQTT.
Pasul 2: Telecomanda / expeditorul
În prima schemă vedeți cum funcționează programul expeditorului:
- Esp8266 pornește de la pornire sau de la resetare
- ESP-ACUM este inițializat
- Modulul trimite ESP-ACUM pentru un timp definit
-
Modulul verifică dacă mesajul ESP-ACUM a fost primit de către receptor într-o funcție de apel invers.
- Dacă a fost primit mesajul ESP-ACUM, modulul intră într-un somn adânc de putere redusă
- Dacă mesajul ESP-NOW nu a fost primit, modulul pornește o conexiune WiFi și o conexiune MQTT ca o conexiune de rezervă.
Programul pentru expeditor este în Github (Master_sender.ino). Programele transmit atât subiectul, cât și mesajul pentru automatizarea casei MQTT într-un singur mesaj ESP-ACUM combinat, combinat la semnul „&” pentru o împărțire ușoară la receptor.
Am făcut două telecomenzi / expeditori diferiți:
Expeditor 1: Esp8266 este în somn profund și este activat printr-o resetare. Ledul din buton se aprinde și se estompează când modulul este terminat. Dacă tensiunea bateriei este scăzută, ledul clipește. Dacă ESP-NOW a eșuat, ledul clipește înainte de a trece la conexiunile WiFi / MQTT. Esp8266 este alimentat de la o baterie LiPo cu un regulator de tensiune HT7333 la 3,3V
Expeditor 2: Esp8266 este oprit și este alimentat prin apăsarea butonului. În mod normal, conexiunea ESP-ACUM se face după ce butonul „face clic”. Esp8266 este alimentat direct de la o baterie LiPo. Nu știu dacă dispozitivul esp8266 este deteriorat de tensiunea ridicată a unei baterii complet încărcate (până la 4,2 V) atunci când este alimentat la doar câțiva 100 ms. Este mai mare decât specificațiile (3,0 - 3,6V).
Notă: dacă bateria este descărcată, ESP-ACUM nu reușește.
Pasul 3: Receptorul - Hardware (esp8266 și Raspberry Pi)
Descrierea receptorului este împărțită în două părți:
- Hardware
- Software
Hardware-ul
Receptorul esp-01 este conectat la Raspberry Pi Zero, care rulează sistemul meu de automatizare la domiciliu (Openhab2) și Node Red.
În schemă sunt prezentate conexiunile simple:
- RX-ul esp-01 la TX al RasPi
- TX de la esp-01 la RX de RasPi
- GND la GND
- Esp-01 VCC este alimentat de pinul de 3,3V al Raspi
- Pe sp-01 atât RST cât și CH_PD sunt ridicate.
Am făcut un conector de interfață pentru a-l monta cu ușurință
Într-o singură imagine puteți vedea conexiunile mele de cablu la Raspberry Pi 3 (care are același pinout, dar am folosit un alt pin de 3,3V pentru a mă conecta la CH_PD).
Esp-01 a fost programat așa cum s-a arătat în celălalt instructabil al meu (vezi pasul 3).
Pasul 4: Receptorul - Software (Serial, Node Red, MQTT)
Program pe esp8266
Programul pentru receptorul esp-01 se află în Github (Master_sender.ino). Programul este foarte simplu, imprimă mesajul ESP-NOW primit pe portul Serial pe Raspberry Pi.
Port serial
Pe Raspberry Pi, trebuie să activați portul serial (pe raspbian, executați „sudo raspi-config”) pentru o comunicare serială normală.
Numele portului serial este:
- Raspberry Pi Zero: / dev / ttyAMA0
- Raspberry Pi 3: / dev / ttyS0
Puteți verifica portul serial executând 'dmesg | grep tty 'sau' ls / dev '
Nod roșu
În Node Red, selectați intrarea serială Node și configurați portul serial (consultați imaginile atașate). Rețineți viteza de transmisie a conexiunii seriale, aceasta trebuie să se potrivească cu viteza de transmisie programată în esp8266.
Ieșirea nodului serial este transformată de un nod funcțional care împarte mesajul la semnul „&” și setează msg.topic și msg.payload. Ieșirea funcției este condusă către nodul de ieșire mqtt care trimite mesajul către serverul MQTT. Rețineți că câmpul subiect al nodului mqtt este gol, deoarece subiectul este setat în mesaj.
Recomandat:
Home Automation WiFi Light Switch cu ESP-01 și modul de releu cu buton: 7 pași
Home Automation WiFi Light Switch cu ESP-01 și modul de releu cu buton: Apoi, în instrucțiunile anterioare am programat un ESP-01 cu Tasmota folosind un ESP Flasher și am conectat ESP-01 la rețelele noastre wifi. Acum putem începe programarea acestuia pentru a porni / opri un întrerupător de lumină folosind WiFi sau butonul de apăsare. Pentru lucru electric
Home Automation folosind MQTT și ESP8266: 6 pași
Home Automation folosind MQTT și ESP8266: În zilele noastre, Home Automation este o tendință și o eră emergentă a IoT (Internet of Things). Toată lumea încearcă să automatizeze acasă într-un fel, care poate fi controlat de la distanță sau manual. Și ceea ce le face viața mai ușoară. Există tehnici de control al omului
Detector de alarmă de incendiu minuscul Esp8266 MQTT IFTTT Home Automation: 4 pași
Detector de alarmă de incendiu Tiny Esp8266 MQTT IFTTT Home Automation: Am vrut să detectez dacă sistemul meu de detectare a fumului de acasă este în alarmă. Am acasă opt detectoare de fum și sunt interconectate. Dacă un detector de fum este în alarmă, celălalt primește un semnal prin firul de semnal de interconectare. Senzorul meu citește
Noțiuni introductive despre Esp 8266 Esp-01 cu Arduino IDE - Instalarea plăcilor Esp în Arduino Ide și programarea Esp: 4 pași
Noțiuni introductive despre Esp 8266 Esp-01 cu Arduino IDE | Instalarea plăcilor Esp în Arduino Ide și programarea Esp: În acest instructables vom învăța cum să instalați plăci esp8266 în Arduino IDE și cum să programați esp-01 și să încărcați codul în acesta. aceasta și majoritatea oamenilor se confruntă cu probleme
Sonoff B1 Firmware Home Automation Openhab Google Home: 3 pași
Sonoff B1 Firmware Home Automation Openhab Google Home: Îmi place foarte mult firmware-ul Tasmota pentru comutatoarele mele Sonoff. Dar a nu a fost foarte fericit cu firmware-ul Tasmota de pe Sonoff-B1. Nu am reușit pe deplin să-l integrez în Openhab și să-l controlez prin Google Home. Prin urmare, am scris propria mea firmă