Kazalo:
- 1. korak: potrebni deli / montaža
- 2. korak: Nalaganje kode in testiranje
- 3. korak: Spremembe OpenHAB
Video: Temperatura HRV za OpenHAB prek ESP8266 (primer serijske kode!): 3 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:09
HRV - brezžično do OpenHAB
Ta navodila so posebej namenjena tistim, ki imajo sistem HRV (prezračevanje z recirkulacijo ogrevanja) - čeprav so lahko deli vezja, odprta konfiguracija ali koda Arduino (na primer branje serijskih podatkov TTL) primerni za vaše lastne projekte ali pa dobro služijo učenju. Predvideva, da razumno poznate Arduino IDE in kaj je čip ESP8266.
Uvod
V nadaljevanju je opisano, kako zgraditi ESP8266, ki se poveže s sistemom HRV in pošlje OpenHAB sporočilom strešno in hišno temperaturo, temperaturo nadzorne plošče in hitrost ventilatorja prek sporočil MQTT. To je zasnovano za delo s ploščo ESP8266-01 (čeprav bi morala delovati s katero koli različico ESP8266 3.3V) Če imate podoben sistem tipa HRV od nadomestnega prodajalca, boste morali ugotoviti, ali se podatki pošiljajo kot serijski TTL in če so, v kakšni strukturi so podatki poslani.
OpenHAB in Mosquitto
Koda ESP8266 je bila napisana posebej za delo z OpenHAB (odprtokodna programska oprema za avtomatizacijo doma) in posrednikom MQTT, kot je Mosquitto (protokol za naročanje/objavo sporočil, ki je lahek in odličen za komunikacijo med napravami) akronimi vas prestrašijo, saj so zelo preprosti za uporabo, ko spoznate, kako delujejo. OpenHAB uporabljam na računalniku NTC C. H. I. P (računalnik za 9 USD), vendar veliko ljudi uporablja Raspberry Pi ali podobno. Ta vadnica predvideva, da ste implementirali OpenHAB (če potrebujete pomoč pri nastavitvi OpenHAB -a, sledite temu odličnemu članku s spletnega mesta makeuseof) Prav tako morate prenesti in namestiti Mosquitto (posrednik MQTT) in z njim povezano OpenHAB. To lahko namestite drugje v svojem omrežju, vendar večina ljudi to preprosto namesti na isti računalnik kot OpenHAB, da bo preprosto.
Če želite namestiti Mosquitto, po tej povezavi izberite vrsto naprave, ki jo uporabljate, in sledite navodilom. Ker C. H. I. P izvaja Debian (Jessie), lahko sledite navodilom Raspberry Pi, če uporabljate C. H. I. P za napravo za domačo avtomatizacijo (upoštevajte tudi, da je najbolje, da CHIP znova zaženete za zagon iz CLI. Za to so navodila)
Ko zaženete OpenHAB in Mosquitto, morate pripraviti Arduino IDE za ESP8266 in kodo. Najprej morate dodati knjižnico "PubSubClient". V Arduino IDE v meniju pojdite na Sketch, Include Library, Manage Libraries. V iskalno polje za filter vnesite PubSubClient, označite rezultat iskanja in kliknite Namesti (v času pisanja je najnovejša različica 2.6.0) v Arduino IDE je treba dodati tudi ploščo ESP8266, kar lahko storite po naslednjih navodilih
Kaj mi to daje?
Kot smo že omenili, vam bo ta projekt omogočil ogled strehe nadzorne plošče HRV, hiše, temperature nadzorne plošče in hitrosti ventilatorja v grafičnem vmesniku OpenHAB (v realnem času!) Slike prikazujejo, kako izgleda z mojega iPhone -a, in grafi, ki jih vidite bo pri vrtanju v različne temperature.
Če želite dobiti grafikone, boste morali namestiti in konfigurirati tudi vezavo RRD4J (to je zelo preprosto) To vam bo omogočilo, da kliknete bodisi »Hiša« ali »Streha« in si ogledate zgodovino temperatur HRV za vsako v preteklosti uro, dan ali teden (ali dlje, če spremenite konfiguracijo, ki ustreza) Prikazane slike so v celzijih in očitno je zima na južni polobli, ko sem to naredil!
Poleg tega sem ustvaril pogled OpenHAB, ki prikazuje primerjavo med zunanjo temperaturo (ki jo ponuja dodatek za vezavo vremena, v mojem primeru z uporabo Wundergrounda) in temperaturo strehe in hiše s klikom na možnost »Nadzor« (slika prikazuje graf z hiša, streha in zunanja temperatura). Te podatke nameravam uporabiti v pravilih za vklop ogrevalnih naprav po potrebi. Preprosto dodajte element Vreme v URL slike v datoteki zemljevida mesta in ga vključite v isti graf (npr.:… items = houseTemp, roofTemp, weatherTemp…)
1. korak: potrebni deli / montaža
Potrebovali boste naslednje dele
- Razcepnik RJ11 (ta razdeli signal iz krmilnika na strehi, na nadzorno ploščo in ESP8266)
- Nekaj trakovnega kabla in vtiča RJ11 (za vodenje žic od razdelilnika do ESP8266)
- ESP8266-01 (ostale različice 3,3 V bi morale delovati)
- Pretvornik logične ravni TTL (za spreminjanje podatkov s 5V na> 3.3V)
- AMS1117 3.3V regulator napetosti 3.3V (ali podoben, za spreminjanje napetosti iz HRV 5V -> 3.3V na napajanje ESP8266)
- 1N5817 schottky dioda (iz nekega razloga je to pomagalo ustaviti ponastavitev nadzorne plošče HRV pri vklopu ESP)
- 10K ohmski upor (upogibni upor med 3.3 napetostnim regulatorjem in ESP CH_PD)
- 10V 10uF kondenzator (ali podoben, za izravnavo in stabilizacijo vhodne moči iz HRV)
- 10V 1uF kondenzator (ali podoben, za izravnavo in stabilizacijo izhodne moči na ESP)
- Izbirni drsni gumb za programiranje ESP (sicer morate za programiranje ročno povleči GPIO0 v GND)
- Adapter FTDI (za programiranje ESP pretvori USB v serijski)
Sestavite v skladu s shemo
Slika matične plošče prikazuje, kako je treba sestaviti dele. Upoštevajte, da se s stropnega kabla iz krmilne enote HRV v stropu spusti 6 zatičev:
Zatiči 1 in 6 sta 5V VCC
Zatiči 2 in 5 sta GND
Zatiči 3 in 4 sta Data.
Uporabljati morate samo zatiče 1, 2, 3 in 6 (1 in 6 moči VCC ESP8266 in visoko stran logičnega pretvornika TTL, 2 sta skupni točki, 3 pa za branje serijskih podatkov TTL)
Razdelilnik, ki ga potrebujete, bo samo cepilnik RJ11, samo poskrbite, da bo to cepilnik, kjer so zatiči naravnost (npr.: pin 1 gre na pin 1, pin 2 na pin 2 itd.) Upoštevajte, da dodatni ženski zatiči (kot prikazane na slikah) so za priključitev FTDI za poznejše reprogramiranje ESP, prikazano stikalo pa ga preklopi v način "programiranja". Ti so neobvezni, vendar priporočljivi (npr.: če spremenite geslo za WiFi, ker sta dostopna točka WiFi in geslo težko programirani v kodo, ki ju boste morali naložiti, ko bo vgrajen vaš ESP8266)
2. korak: Nalaganje kode in testiranje
Spremembe kode
Nadomestna povezava za prenos do kode Arduino TUKAJ
Odprite v Arduino IDE, preverite, ali je nameščena plošča ESP in PubSubClient ter da ste izbrali ploščo ESP8266 (orodja, plošča, generična plošča ESP8266) Uredite kodo ter spremenite ime in geslo dostopne točke WiFi ter naslov IP svojega posrednika MQTT (to je edino, kar morate spremeniti), kot je prikazano spodaj. Kliknite gumb »Preveri«, da zagotovite, da je v redu, nato pa preverite, ali so izbrana pravilna vrata COM (Orodja, Vrata) in kodo naložite v svoj ESP8266. Obstaja veliko člankov o tem, kako to narediti, kolesa tukaj ne bom znova izumil.
// Wifi
const char* ssid = "your_wifi_ssid_here"; const char* geslo = "your_wifi_password_ tukaj"; // IP -naslov posrednika MQTT MQTT_SERVER (192, 168, 222, 254);
Testiranje MQTT
Za testiranje lahko pustite priključen adapter FTDI in odprete serijski monitor v Arduino IDE, prikazana bi morala biti sporočila, ki natisnejo podatke o temperaturi v konzoli. Če morate odpraviti težave pri dohodnih sporočilih MQTT iz ESP8266 pri posredniku MQTT, na strežniku Mosquitto izvedite enega od naslednjih ukazov, da se naročite na dohodna sporočila:
mosquitto_sub -d -t openhab/hrv/status
Morali bi videti vhodna OBJAVNA sporočila, ki prihajajo iz ESP8266 vsakih 30 sekund s številko "1" (kar pomeni "živ sem") Če vidite konstantne "0" (ali sploh nič), potem ni komunikacije. Ko vidite, da prihaja številka 1, to pomeni, da ESP8266 komunicira s posrednikom MQTT (poiščite "Zadnja volja in zaveza MQTT" za več informacij o tem, kako to deluje, ali si oglejte ta res dober vnos v blog)
Zdaj lahko spremljate podatke o temperaturi in hitrosti ventilatorja, naročite se na eno od naslednjih. Upoštevajte pa, da koda pošilja podatke o temperaturi le, če so se kateri koli podatki spremenili. Spremlja zadnjo temperaturo, hitrost ventilatorja itd., Ki so bili poslani, zato morda ne boste videli informacij, ki prihajajo takoj.
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
Namig: naročite se na zgornjo temperaturo nadzorne plošče, nato pritisnite gumb za temperaturo na sami nadzorni plošči in videli boste, da prihaja nova nastavitev temperature.
Ko začnete to spajkati, se PCB velikosti 3 cm x 7 cm lepo prilega v škatlo za izpiranje za nadzorno ploščo HRV. Priporočam, da to storite le, če gre za plastično škatlo za izpiranje, saj lahko kovinska škatla moti signale Wifi ali morda prekine povezave na plošči tiskanega vezja. Druga možnost je, da natisnete plastično 3D ohišje za namestitev plošče.
3. korak: Spremembe OpenHAB
Konfiguracija OpenHAB
Potrebne spremembe OpenHAB so naslednje:
datoteka 'items':
/* HRVNumber hrvStatus "Status HRV [MAP (status.map):%d]" (gHRV) {mqtt = "<[mqttbroker: openhab/hrv/status: stanje: privzeto]"} Številka houseTemp "Hiša [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/housetemp: stanje: privzeto] "} Številka houseTemp_Chart_Period" Obdobje grafikona "Število roofTemp" Streha [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/rooftemp: state: default] "} Število roofTemp_Chart_Period" Obdobje grafikona "Število controlTemp" Nadzor [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/controltemp: stanje: privzeto] "} Niz hitrosti ventilatorja" Hitrost ventilatorja [%s] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/fanspeed: state: default] "}*/
datoteka »zemljevid mesta«:
Oznaka okvirja = "Temperatura HRV" {Besedilni element = roofTemp {Okvir {Preklop element = roofTemp_Chart_Period label = "Obdobje" preslikave = [0 = "Ura", 1 = "Dan", 2 = "Teden"] Url slike = "https:// localhost: 8080/rrdchart-p.webp
Priložene so dodatne ikone za OpenHAB (desni klik in shranjevanje slik)
Shranite te datoteke v mapo.. / OpenHAB Home / webapps / images na strežniku OpenHAB
Priporočena:
Sobna temperatura prek interneta z BLYNK ESP8266 & DHT11: 5 korakov (s slikami)
Sobna temperatura prek interneta Z BLYNK ESP8266 in DHT11: Pozdravljeni, danes bomo izdelali monitor sobne temperature, ki ga lahko uporabljamo za spremljanje naše sobe od koder koli na svetu, za to pa bomo uporabili ploščico BLYNK IoT, ki jo bomo uporabili DHT11 za odčitavanje sobne temperature bomo uporabili ESP8266 za
Obvestilo o zvonjenju pri vratih za osebe z okvaro sluha prek avtomatizacije doma (ESP-zdaj, MQTT, Openhab): 3 koraki
Obvestilo o vratnem zvoncu za slušno prizadete prek avtomatizacije doma (ESP-zdaj, MQTT, Openhab): V tem navodilu vam pokažem, kako sem svoj običajni zvonec za vrata vključil v domačo avtomatizacijo. Ta rešitev je zelo primerna za osebe z okvaro sluha.V mojem primeru jo uporabljam za obveščanje, če je soba zasedena in hrupna na rojstnodnevni zabavi otrok. JAZ
Nadzorujte naprave prek interneta prek brskalnika. (IoT): 6 korakov
Nadzorujte naprave prek interneta prek brskalnika. (IoT): V tem navodilu vam bom pokazal, kako lahko prek spletnega brskalnika nadzirate naprave, kot so LED, releji, motorji itd. Do kontrol lahko varno dostopate prek katere koli naprave. Spletna platforma, ki sem jo uporabil tukaj, je RemoteMe.org obiščite
Zaslon za zaustavitev serijske matrice: 3 koraki
Zaslon za zaustavitev matrične serije: Vedno sovražim dolgočasno staro zaporedje zaustavitve v računalniku, zato sem naredil to preprosto paketno datoteko, da bo postala precej hladnejša! (To je moj prvi Instructable, zato me prosim olajšajte.) S tem kul zapiranjem matričnega stila lahko navdušite svoje prijatelje
Prenos datotek prek vašega LAN -a prek BitTorrenta: 6 korakov
Prenos datotek prek vašega LAN -a prek BitTorrenta: Včasih boste morda morali prenesti datoteke po omrežju na več računalnikov. Čeprav bi ga lahko postavili na bliskovni pogon ali CD/DVD, bi morali v vsak računalnik kopirati datoteke, zato lahko traja nekaj časa, da vse datoteke kopirate (zlasti z