Tartalomjegyzék:

HRV hőmérséklet OpenHAB -ra az ESP8266 -on keresztül (Példa a sorozatkódra!): 3 lépés
HRV hőmérséklet OpenHAB -ra az ESP8266 -on keresztül (Példa a sorozatkódra!): 3 lépés

Videó: HRV hőmérséklet OpenHAB -ra az ESP8266 -on keresztül (Példa a sorozatkódra!): 3 lépés

Videó: HRV hőmérséklet OpenHAB -ra az ESP8266 -on keresztül (Példa a sorozatkódra!): 3 lépés
Videó: Masih Ada yang Bingung, Ini Arti Lampu Indikator Suhu Mesin Warna Merah dan Biru 2024, November
Anonim
HRV hőmérséklet OpenHAB -ra az ESP8266 -on keresztül (Példa soros kódra!)
HRV hőmérséklet OpenHAB -ra az ESP8266 -on keresztül (Példa soros kódra!)
HRV hőmérséklet OpenHAB -ra az ESP8266 -on keresztül (Példa soros kódra!)
HRV hőmérséklet OpenHAB -ra az ESP8266 -on keresztül (Példa soros kódra!)
HRV hőmérséklet OpenHAB -ra az ESP8266 -on keresztül (Példa soros kódra!)
HRV hőmérséklet OpenHAB -ra az ESP8266 -on keresztül (Példa soros kódra!)

HRV - Vezeték nélküli az OpenHAB -hoz

Ez az oktatóanyag kifejezetten azoknak szól, akik HRV (fűtési recirkulációs szellőztető) rendszerrel rendelkeznek - bár az áramköri lap egyes részei, az openhab konfiguráció vagy az Arduino kód (például a TTL soros adatok olvasása) hasznosak lehetnek saját projektjeihez, vagy jól szolgálhatnak a tanuláshoz. Feltételezi, hogy ésszerű ismeretekkel rendelkezik az Arduino IDE -ről és az ESP8266 chipről.

Bevezetés

Az alábbiakban bemutatjuk, hogyan kell felépíteni egy ESP8266 -ot, amely HRV -rendszerhez csatlakozik, és a tető- és házhőmérsékletet, a központ hőmérsékletét és a ventilátor sebességét MQTT üzeneteken keresztül elküldi az OpenHAB -nak. Ezt az ESP8266-01 kártyával való használatra tervezték (bár minden ESP8266 3.3V verzióval együtt kell működnie) Ha hasonló HRV típusú rendszerrel rendelkezik egy másik szállítótól, akkor meg kell határoznia, hogy az adatokat TTL sorosként küldi-e, és ha igen, milyen struktúrában küldik az adatokat.

OpenHAB és Mosquitto

Az ESP8266 kódot kifejezetten az OpenHAB (nyílt forráskódú otthoni automatizáló szoftver) és egy MQTT -bróker, például a Mosquitto (egy üzenetküldési előfizetés/közzététel típusú protokoll, amely könnyű és nagyszerű az eszközök közötti kommunikációhoz) együttműködésére írták. a betűszavak megijesztenek, valóban nagyon egyszerű használni őket, ha megismered működésüket. OpenHAB -ot használok egy NTC C. H. I. P -n (US $ 9 számítógép), bár sokan Raspberry Pi -t vagy hasonlót használnak. Ez az oktatóanyag feltételezi, hogy megvalósította az OpenHAB -ot (ha segítségre van szüksége az OpenHAB beállításához, kövesse ezt a kiváló cikket a makeuseof webhelyről). Töltse le és telepítse a Mosquitto -t (MQTT broker) és a kapcsolódó OpenHAB -kötést. Telepítheti ezt máshová a hálózatán, azonban a legtöbb ember egyszerűen telepíti ugyanahhoz a géphez, mint az OpenHAB, hogy egyszerű legyen.

A Mosquitto telepítéséhez kövesse ezt a linket, majd válassza ki a használt eszköz típusát, és kövesse az utasításokat. Mivel a C. H. I. P a Debian (Jessie) rendszert futtatja, követheti a Raspberry Pi utasításait, ha C. H. I. P -t használ az otthoni automatizálási eszközéhez (vegye figyelembe azt is, hogy a legjobb, ha újrakonfigurálja a CHIP -et a CLI -ből való indításhoz. Erre vonatkozó utasítások itt találhatók)

Ha már fut az OpenHAB és a Mosquitto, elő kell készítenie az Arduino IDE -t az ESP8266 -hoz és a kódhoz. Először hozzá kell adnia a "PubSubClient" könyvtárat. Az Arduino IDE menüjében válassza a Vázlat, Könyvtár bevonása, Könyvtárak kezelése menüpontot. A szűrő keresőmezőjébe írja be a PubSubClient parancsot, majd jelölje ki a keresési eredményt, majd kattintson a Telepítés gombra (íráskor a legújabb verzió 2.6.0). hozzá kell adnia az ESP8266 kártyát is az Arduino IDE -hez, amit az itt található utasítások követésével lehet elvégezni

Mit ad ez nekem?

Amint korábban említettük, ez a projekt lehetővé teszi, hogy megtekinthesse a HRV vezérlőpanel tetőjét, házát, a központ hőmérsékletét és a ventilátor sebességét az OpenHAB grafikus felhasználói felületén (valós időben!) A képek azt mutatják, hogy néz ki az iPhone -ról, valamint a a különböző hőmérsékletekre való fúrással.

A grafikonok megtekintéséhez telepítenie és konfigurálnia kell az RRD4J kötést is (ez nagyon egyenes irányú) Ez lehetővé teszi, hogy rákattintson a "Ház" vagy a "Tető" elemre, és lekérje a HRV hőmérsékleti előzményeit mindegyikhez az elmúlt időszakban óra, nap vagy hét (vagy tovább, ha módosítja a konfigurációt, hogy megfeleljen) A bemutatott képek Celsius -fokban vannak megadva, és egyértelműen a tél a déli féltekén, amikor ezt készítettem!

Ezenkívül létrehoztam egy OpenHAB nézetet, amely összehasonlítja a külső hőmérsékletet (amelyet az Időjárás-kötő kiegészítő biztosít, az én esetemben a Wundergroundot használom) a tető és a ház hőmérséklete között a "Vezérlés" lehetőségre kattintva (a képen a grafikon látható ház, tető és külső hőmérséklet ábrázolva). Tervezem, hogy ezeket az adatokat felhasználom a szabályokban a fűtőberendezések szükség szerinti bekapcsolásához. Egyszerűen adja hozzá az Időjárás elemet a kép URL -jéhez a webhelytérkép -fájlban, és írja be ezt ugyanazon a grafikonon (pl.:… Items = houseTemp, roofTemp, weatherTemp…)

1. lépés: Szükséges alkatrészek / összeszerelés

Szükséges alkatrészek / összeszerelés
Szükséges alkatrészek / összeszerelés
Szükséges alkatrészek / összeszerelés
Szükséges alkatrészek / összeszerelés
Szükséges alkatrészek / összeszerelés
Szükséges alkatrészek / összeszerelés

Szüksége lesz a következő alkatrészekre

  • RJ11 elosztó (ez felosztja a tetőn lévő vezérlő, a központ és az ESP8266 jelét)
  • Néhány szalagkábel és egy RJ11 dugó (vezetékek futtatásához az elosztótól az ESP8266 -ig)
  • ESP8266-01 (a többi 3.3V-os verziónak működnie kell)
  • TTL logikai szintű konverter (5V -> 3.3V adatok megváltoztatásához)
  • AMS1117 3.3V -os feszültségszabályozó (vagy hasonló, a feszültség HRV 5V -ról -> 3.3V -ról az ESP8266 -ra történő váltására)
  • 1N5817 schottky dióda (valamilyen oknál fogva ez megakadályozta a HRV központ visszaállítását az ESP bekapcsolásakor)
  • 10K ohmos ellenállás (felhúzó ellenállás a 3.3 feszültségszabályozó és az ESP CH_PD között)
  • 10V 10uF kondenzátor (vagy hasonló, a HRV bejövő áram kiegyenlítésére és stabilizálására)
  • 10V 1uF kondenzátor (vagy hasonló, hogy kiegyenlítse és stabilizálja a kimenő áramot az ESP -hez)
  • Opcionális csúsztatógomb az ESP programozásához (különben manuálisan kell húzni a GPIO0 -t a GND -hez a programozáshoz)
  • FTDI adapter (az ESP programozásához USB -t sorosra alakít)

Szerelje össze a vázlat szerint

A kenyértábla képe mutatja az alkatrészek összeszerelésének módját. Vegye figyelembe, hogy a mennyezeten lévő HRV vezérlőegység szalagkábeléről 6 csap leereszkedik:

Az 1. és 6. csap 5V VCC

A 2. és 5. csap GND

A 3. és 4. csap adat.

Csak az 1., 2., 3. és 6. tüskét kell használnia (az 1 és 6 VCC táplálja az ESP8266 -at és a TTL logikai konverter magas oldalát, a 2 közös pont, a 3 pedig a TTL soros adatok olvasásához)

Az elosztó, amire szüksége van, csak egy RJ11 osztó lesz, csak győződjön meg arról, hogy egy olyan osztó, ahol a csapok egyenesen vannak (pl.: Az 1 -es tű az 1 -es tűhöz, a 2 -es tű a 2 -eshez és így tovább) Vegye figyelembe, hogy az extra női csapok (pl. a képeken látható) FTDI csatlakoztatására szolgál az ESP későbbi átprogramozásához, és a bemutatott kapcsoló "programozási" módba állítja. Ezek opcionálisak, de ajánlottak (pl.: ha megváltoztatja a WiFi jelszavát, mivel a WiFi AP és a jelszó be van programozva a kódba, amelyet fel kell töltenie az ESP8266 felépítése után)

2. lépés: A kód feltöltése és tesztelése

Feltöltési kód és tesztelés
Feltöltési kód és tesztelés
Feltöltési kód és tesztelés
Feltöltési kód és tesztelés
Feltöltési kód és tesztelés
Feltöltési kód és tesztelés
Feltöltési kód és tesztelés
Feltöltési kód és tesztelés

Kódváltozások

Alternatív letöltési link az Arduino kódhoz ITT

Nyissa meg az Arduino IDE -t, győződjön meg arról, hogy az ESP kártya és a PubSubClient is telepítve van, és hogy kiválasztotta az ESP8266 táblát (Eszközök, tábla, általános ESP8266 kártya). Szerkessze a kódot, és változtassa meg a WiFi AP nevét és jelszavát, valamint a az MQTT brókerét (csak ezeken kell változtatnia) az alábbiak szerint. Kattintson az „Ellenőrzés” gombra, és győződjön meg arról, hogy a fordítás rendben van, majd győződjön meg arról, hogy a megfelelő COM -port van kiválasztva (Eszközök, Port), és töltse fel a kódot az ESP8266 készülékre. Rengeteg cikk található arról, hogyan kell ezt megtenni, nem fogom itt feltalálni a kereket.

// Wifi

const char* ssid = "saját_wifi_szolida_ideje"; const char* password = "saját_wifi_jelszó_ideje"; // MQTT Broker IPAddress MQTT_SERVER (192, 168, 222, 254);

MQTT tesztelés

A teszteléshez hagyhatja az FTDI adaptert csatlakoztatva, és nyissa meg a soros monitort az Arduino IDE -ben. A konzolon a hőmérséklet -információkat nyomtató üzeneteket kell látnia. Ha hibaelhárítani kell az ESP8266 -ból az MQTT -közvetítőhöz érkező bejövő MQTT -üzeneteket, akkor a Mosquitto -kiszolgálón futtassa az alábbi parancsok egyikét a beérkező üzenetek előfizetéséhez:

mosquitto_sub -d -t openhab/hrv/status

Látnia kell a bejövő PUBLISH üzeneteket, amelyek körülbelül 30 másodpercenként érkeznek az ESP8266 -ból, "1" számmal (azaz "élek"). Ha állandó "0 -t" lát (vagy egyáltalán semmit), akkor nincs kommunikáció. Ha látja, hogy az 1 -es szám bejön, az azt jelenti, hogy az ESP8266 kommunikál az MQTT brókerrel (keresse az "MQTT Last Will and Testament" -t, ha további információra van szüksége ennek működéséről, vagy nézze meg ezt az igazán jó blogbejegyzést)

Most már nyomon követheti a hőmérsékletet és a ventilátor sebességét, iratkozzon fel az alábbiak egyikére. Ne feledje azonban, hogy a kód csak akkor küldi el a hőmérséklet adatokat, ha bármilyen adat megváltozott. Nyomon követi a legutóbb elküldött hőmérsékletet, ventilátor sebességét stb., Így előfordulhat, hogy nem látja azonnal az információkat.

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

Tipp: iratkozzon fel a vezérlőpult fenti hőmérsékletére, majd nyomja meg a hőmérséklet gombot a vezérlőpulton, és megjelenik az új hőmérséklet -beállítás.

Amikor elkezdi forrasztani, egy 3 cm x 7 cm -es PCB szépen elfér a HRV vezérlőpult mögötti öblítő dobozban. Csak akkor javaslom ezt, ha műanyag öblítő dobozról van szó, mivel a fémdoboz zavarhatja a Wifi jeleket, vagy esetleg lezárhatja a csatlakozásokat a NYÁK -kártyán. Alternatív megoldásként kinyomtathat egy műanyag 3D -tokot a tábla rögzítéséhez.

3. lépés: OpenHAB módosítások

OpenHAB konfiguráció

A szükséges OpenHAB módosítások a következők:

"items" fájl:

/* HRVNumber hrvStatus "HRV Status [MAP (status.map):%d]" (gHRV) {mqtt = "<[mqttbroker: openhab/hrv/status: state: default]"} Szám houseTemp "House [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/housetemp: state: default] "} Ház houseTemp_Chart_Period" Chart Period "Number roofTemp" Roof [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/rooftemp: state: default] "} Number roofTemp_Chart_Period" Chart Period "Number controlTemp" Control [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/controltemp: state: default] "} String fanSpeed" Ventilátor sebessége [%s] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/fanspeed: state: default] "}*/

"webhelytérkép" fájl:

Frame label = "HRV Temperature" {Text item = roofTemp {Frame {Switch item = roofTemp_Chart_Period label = "Period" leképezések = [0 = "Óra", 1 = "Nap", 2 = "Hét"] Kép url = "https:// localhost: 8080/rrdchart-p.webp

Az OpenHAB további ikonjai is szerepelnek (kattintson jobb gombbal és mentse a képeket)

Mentse ezeket a fájlokat az OpenHAB szerver.. / OpenHAB Home / webapps / images mappájába

Ajánlott: