Sadržaj:
- Korak 1: Potrebni dijelovi / Montaža
- Korak 2: Učitavanje koda i testiranje
- Korak 3: Promjene OpenHAB -a
Video: HRV temperatura za OpenHAB putem ESP8266 (Primjer serijskog koda!): 3 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:39
HRV - bežično za OpenHAB
Ovo uputstvo je posebno za one koji imaju sustav HRV (ventilacija s recirkulacijom grijanja) - iako bi dijelovi ploče, konfiguracija otvorenog prostora ili Arduino kôd (poput čitanja serijskih podataka TTL -a) mogli biti korisni za vaše vlastite projekte ili poslužiti za učenje. Pretpostavlja se da imate razumno znanje o Arduino IDE -u i što je čip ESP8266.
Uvod
U nastavku je prikazano kako izgraditi ESP8266 koji se povezuje sa HRV sustavom i šalje temperature krova i kuće, temperaturu upravljačke ploče i brzinu ventilatora putem poruka MQTT na OpenHAB. Ovo je dizajnirano za rad s pločom ESP8266-01 (iako bi trebalo raditi s bilo kojom verzijom ESP8266 3.3V) Ako imate sličan sustav tipa HRV od zamjenskog dobavljača, morat ćete utvrditi šalju li se podaci kao TTL serijski i ako je tako, u koju strukturu se podaci šalju.
OpenHAB i Mosquitto
Kôd ESP8266 napisan je posebno za rad s OpenHAB -om (softver otvorene kode za kućnu automatizaciju) i posrednikom MQTT -a poput Mosquitta (protokol za pretplatu/objavljivanje poruka koji je lagan i odličan za komunikaciju između uređaja) Nemojte dopustiti da imena ili Kratice vas plaše, doista su vrlo jednostavne za upotrebu kada upoznate kako rade. Koristim OpenHAB na NTC C. H. I. P -u (računalo od 9 USD), međutim mnogi ljudi koriste Raspberry Pi ili slično. Ovaj vodič pretpostavlja da ste implementirali OpenHAB (ako vam je potrebna pomoć pri postavljanju OpenHAB -a, slijedite ovaj izvrstan članak s makeuseof web stranice) Također morate preuzeti i instalirati Mosquitto (MQTT posrednik) i povezano OpenHAB vezivanje. Ovo možete instalirati bilo gdje drugdje u svojoj mreži, međutim većina ljudi instalira ovo samo na isti stroj kao i OpenHAB kako bi bilo jednostavno.
Da biste instalirali Mosquitto, slijedite ovu vezu, a zatim odaberite vrstu uređaja koji koristite i slijedite upute. Budući da C. H. I. P pokreće Debian (Jessie), možete slijediti upute Raspberry Pi ako koristite C. H. I. P za svoj uređaj za kućnu automatizaciju (također imajte na umu da je najbolje ponovno konfigurirati CHIP za pokretanje s CLI -ja. Ovdje postoje upute za to)
Nakon što pokrenete OpenHAB i Mosquitto, morate pripremiti Arduino IDE za ESP8266 i kod. Prvo morate dodati biblioteku "PubSubClient". U Arduino IDE -u s izbornika idite na Sketch, Include Library, Manage Libraries. U okvir za pretraživanje filtra upišite PubSubClient, a zatim označite rezultat pretraživanja i kliknite za instalaciju (u trenutku pisanja najnovija verzija je 2.6.0) također je potrebno dodati ploču ESP8266 u Arduino IDE što se može učiniti slijedeći upute ovdje
Što mi ovo daje?
Kao što je ranije rečeno, ovaj će vam projekt omogućiti pregled krova upravljačke ploče HRV -a, kuće, temperature upravljačke ploče i brzine ventilatora u OpenHAB GUI -ju (u stvarnom vremenu!) Slike prikazuju kako to izgleda s mog iPhonea, plus grafikoni koje vidite doći će bušenjem na različite temperature.
Da biste dobili grafikone, morat ćete također instalirati i konfigurirati povezivanje RRD4J (ovo je vrlo jednostavno) To će vam omogućiti da kliknete na "Kuća" ili "Krov" i dobijete povijest HRV temperatura za svaku u prošlosti sat, dan ili tjedan (ili dulje, ako promijenite konfiguraciju prema vlastitim potrebama) Prikazane slike su u Celzijusima, a jasno je i zima na južnoj hemisferi kad sam ovo napravio!
Osim toga, stvorio sam OpenHAB prikaz koji prikazuje usporedbu između vanjske temperature (koju pruža dodatak za vezivanje vremenskih uvjeta, u mom slučaju koristeći Wunderground) s temperaturom krova i kuće klikom na opciju 'Kontrola' (slika prikazuje grafikon s kuća, krov i vanjska temperatura iscrtani). Ove podatke namjeravam koristiti u pravilima za uključivanje grijaćih uređaja prema potrebi. Jednostavno dodajte stavku Vrijeme u URL slike u datoteci karte web stranice i uključite je u isti grafikon (npr.:… items = houseTemp, roofTemp, weatherTemp…)
Korak 1: Potrebni dijelovi / Montaža
Trebat će vam sljedeći dijelovi
- Razdjelnik RJ11 (ovaj razdvaja signal od kontrolera na krovu do upravljačke ploče i ESP8266)
- Neki vrpčani kabel i utikač RJ11 (za pokretanje žica od razdjelnika do ESP8266)
- ESP8266-01 (ostale 3.3V verzije bi trebale raditi)
- TTL pretvarač logičke razine (za promjenu podataka od 5 V do> 3,3 V)
- AMS1117 3.3V regulator napona (ili sličan, za promjenu napona s HRV 5V -> 3.3V na napajanje ESP8266)
- 1N5817 schottky dioda (iz nekog razloga to je pomoglo u zaustavljanju resetiranja upravljačke ploče HRV -a pri uključivanju ESP -a)
- Otpornik od 10K ohma (otpornik između 3,3 regulatora napona i ESP CH_PD)
- 10V 10uF kondenzator (ili sličan, za ujednačavanje i stabilizaciju ulazne snage iz HRV -a)
- 10V 1uF kondenzator (ili sličan, za ujednačavanje i stabilizaciju izlazne energije prema ESP -u)
- Opcijski klizni gumb za programiranje ESP -a (u protivnom morate ručno povući GPIO0 u GND za programiranje)
- FTDI adapter (za programiranje ESP -a, pretvara USB u serijski)
Sastavite prema shemi
Slika matične ploče prikazuje način na koji se dijelovi trebaju sastaviti. Imajte na umu da se 6 pinova spušta vrpčnim kabelom s jedinice kontrolera HRV -a u stropu:
Igle 1 i 6 su 5V VCC
Igle 2 i 5 su GND
Igle 3 i 4 su podaci.
Morate koristiti samo pinove 1, 2, 3 i 6 (1 i 6 VCC snage ESP8266 i visoka strana TTL logičkog pretvarača, 2 je zajedničko tlo, a 3 je za čitanje serijskih podataka TTL -a)
Razdjelnik koji vam je potreban bit će samo razdjelnik RJ11, samo provjerite je li to razdjelnik na mjestu gdje su igle ravno (npr.: pin 1 ide na pin 1, pin 2 na pin 2 i tako dalje) Imajte na umu da dodatni ženski pinovi (kao prikazane na slikama) služe za povezivanje FTDI -ja za kasnije reprogramiranje ESP -a, a prikazani prekidač stavlja ga u način "programiranja". Ove opcije su izborne, ali se preporučuju (npr.: ako promijenite svoju WiFi lozinku jer su WiFi AP i lozinka teško programirani u kôd, koji ćete morati učitati nakon što se izgradi vaš ESP8266)
Korak 2: Učitavanje koda i testiranje
Promjene koda
Alternativna veza za preuzimanje Arduino koda OVDJE
Otvorite u Arduino IDE -u, provjerite je li instalirana ESP ploča, kao i PubSubClient te jeste li odabrali ploču ESP8266 (Alati, ploča, generička ploča ESP8266) Uredite kôd i promijenite naziv i lozinku WiFi AP -a i IP adresu vašeg brokera MQTT (to su jedine stvari koje trebate promijeniti) kako je prikazano u nastavku. Pritisnite gumb 'Potvrdi' kako biste bili sigurni da je u redu, a zatim provjerite je li odabran ispravan COM port (Alati, Port) i prenesite kôd na svoj ESP8266. Ima dosta članaka o tome kako to učiniti, neću ovdje izmišljati kotač.
// Wifi
const char* ssid = "your_wifi_ssid_here"; const char* password = "your_wifi_password_here"; // MQTT posrednik IP adresaMQTT_SERVER (192, 168, 222, 254);
MQTT testiranje
Za testiranje možete ostaviti svoj FTDI adapter spojen i otvoriti serijski monitor u Arduino IDE -u, trebali biste vidjeti poruke koje ispisuju podatke o temperaturi na konzoli. Ako trebate riješiti probleme s dolaznim MQTT porukama s ESP8266 vašem MQTT posredniku, tada na poslužitelju Mosquitto pokrenite jednu od sljedećih naredbi za pretplatu na dolazne poruke:
mosquitto_sub -d -t openhab/hrv/status
Trebali biste vidjeti dolazne OBJAVNE poruke koje dolaze s ESP8266 svakih 30 -ak sekundi s brojem "1" (što znači "živ sam"). Ako vidite konstantne "0" (ili uopće ništa), onda nema komunikacije. Kada vidite da broj 1 dolazi, to znači da ESP8266 komunicira s posrednikom MQTT (potražite "Zadnja volja i zavjet MQTT -a" za više informacija o tome kako to funkcionira ili pogledajte ovaj stvarno dobar unos na blog)
Sada možete pratiti podatke o temperaturi i brzini ventilatora, pretplatite se na jedno od sljedećeg. Međutim, imajte na umu da kôd šalje podatke o temperaturi samo ako su se neki podaci promijenili. On prati posljednju temperaturu, brzinu ventilatora itd. Podatke koji su poslani, tako da možda nećete vidjeti informacije koje dolaze odmah.
mosquitto_sub -d -t openhab/hrv/rooftemp
mosquitto_sub -d -t openhab/hrv/housetemp
mosquitto_sub -d -t openhab/hrv/controltemp
mosquitto_sub -d -t openhab/hrv/fanspeed
Savjet: pretplatite se na gornju temperaturu upravljačke ploče, zatim pritisnite gumb za temperaturu na samoj upravljačkoj ploči i trebali biste vidjeti da dolazi nova postavka temperature.
Kada ovo počnete lemiti, PCB dimenzija 3 cm x 7 cm lijepo se uklapa u kutiju za ispiranje iza upravljačke ploče HRV -a. Preporučio bih to samo ako se radi o plastičnoj kutiji za ispiranje jer metalna kutija može ometati Wifi signale ili eventualno prekinuti veze na ploči PCB -a. Alternativno, možete ispisati plastično 3D kućište za ugradnju ploče.
Korak 3: Promjene OpenHAB -a
OpenHAB konfiguracija
Potrebne promjene OpenHAB -a su sljedeće:
datoteka 'items':
/* HRVNumber hrvStatus "HRV Status [MAP (status.map):%d]" (gHRV) {mqtt = "<[mqttbroker: openhab/hrv/status: state: default]"} Broj houseTemp "Kuća [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/housetemp: stanje: zadano] "} Broj houseTemp_Chart_Period" Razdoblje grafikona "Broj roofTemp" Krov [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/rooftemp: state: default] "} Broj roofTemp_Chart_Period" Razdoblje grafikona "Broj controlTemp" Kontrola [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/controltemp: stanje: zadano] "} String fanSpeed" Brzina ventilatora [%s] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/fanspeed: state: default] "}*/
datoteka "karte web stranice":
Oznaka okvira = "Temperatura HRV -a" {Tekstualna stavka = roofTemp {Okvir {Promijeni stavku = roofTemp_Chart_Period label = "Mapa razdoblja" = [0 = "Sat", 1 = "Dan", 2 = "Tjedan"] URL slike = "https:// localhost: 8080/rrdchart-p.webp
Uključene su dodatne ikone za OpenHAB (desni klik i spremanje slika)
Spremite ove datoteke u mapu.. / OpenHAB Home / webapps / images na vašem poslužitelju OpenHAB
Preporučeni:
Upravljanje Led putem aplikacije Blynk pomoću Nodemcua putem interneta: 5 koraka
Upravljanje LED -om putem aplikacije Blynk pomoću Nodemcua putem Interneta: Pozdrav svima Danas ćemo vam pokazati kako možete upravljati LED diodom pomoću pametnog telefona putem interneta
Pretvornici kodiranja serijskog koda DIY: 15 koraka
Pretvornici kodiranja serijskog koda DIY: Komunikacija sa serijskim podacima postala je sveprisutna u mnogim industrijskim aplikacijama, a postoji nekoliko pristupa za projektiranje bilo kojeg sučelja za prijenos serijskih podataka. Prikladno je koristiti jedan od standardnih protokola, npr. UART, I2C ili SPI. Osim toga
Početak rada s ESP32 CAM - Streaming videa putem ESP CAM -a putem Wi -Fi -ja. Projekt sigurnosne kamere ESP32: 8 koraka
Početak rada s ESP32 CAM | Streaming videa putem ESP CAM -a putem Wi -Fi -ja. Projekt sigurnosne kamere ESP32: Danas ćemo naučiti kako koristiti ovu novu ESP32 CAM ploču i kako je možemo kodirati i koristiti kao sigurnosnu kameru te dobiti streaming video putem WiFi -ja
Pregled serijskog monitora putem Bluetootha: 4 koraka
Pregled serijskog monitora putem Bluetootha: Ovaj projekt koristi HC -05 Bluetooth modul za zamjenu tradicionalne žičane veze koja se koristi za pregled serijskog monitora. Materijali: Arduino - https://amzn.to/2DLjxR2 Breadboard - https://amzn.to /2RYqiSK Žice za preskakanje - https://amzn.to/2RYqiSK H
Upotreba RAM-a računala za Arduino putem serijskog porta: 7 koraka
Upotreba RAM-a na računalu za Arduino putem serijskog porta: Moj prijatelj me inspirirao svojim malim Arduino projektom. Ovaj mali projekt uključuje Arduino UNO R3, koji čita podatke pomoću programa napravljenog u Arduino IDE-u poslanog na serijski port (USB-port) putem C# programa napravljenog u vizualnom studiju. Kako ovo