Obsah:
Video: Teplota HRV na OpenHAB přes ESP8266 (příklad sériového kódu!): 3 kroky
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:25
HRV - Wireless to OpenHAB
Tento návod je speciálně pro ty, kteří mají systém HRV (recirkulační ventilace s topením) - ačkoli části obvodové desky, konfigurace openhab nebo kód Arduino (například čtení sériových dat TTL) mohou být užitečné pro vaše vlastní projekty nebo mohou dobře sloužit pro učení. Předpokládá to, že máte rozumné znalosti o Arduino IDE a o tom, co je čip ESP8266.
Úvod
Následující část popisuje, jak vytvořit ESP8266, který se připojuje k systému HRV a odesílá do systému OpenHAB teploty střechy a domu, teplotu ovládacího panelu a rychlost ventilátoru prostřednictvím zpráv MQTT. Toto je navrženo tak, aby fungovalo s deskou ESP8266-01 (i když by mělo fungovat s jakoukoli verzí ESP8266 3.3V) Pokud máte podobný systém typu HRV od jiného dodavatele, budete muset určit, zda jsou data odesílána jako sériová TTL a pokud ano, v jaké struktuře jsou data odesílána.
OpenHAB a Mosquitto
Kód ESP8266 byl napsán speciálně pro práci s OpenHAB (open source software pro domácí automatizaci) a brokerem MQTT, jako je Mosquitto (protokol typu přihlášení k odběru/publikování, který je lehký a skvělý pro komunikaci mezi zařízeními). zkratky vás děsí, jejich použití je opravdu velmi jednoduché, jakmile se seznámíte s jejich fungováním. Používám OpenHAB na NTC C. H. I. P (počítač za 9 USD), nicméně mnoho lidí používá Raspberry Pi nebo podobné. Tento tutoriál předpokládá, že jste implementovali OpenHAB (pokud potřebujete pomoc s nastavením OpenHAB, postupujte podle tohoto skvělého článku z webu makeuseof) Také si musíte stáhnout a nainstalovat Mosquitto (broker MQTT) a související vazbu OpenHAB. Můžete to nainstalovat jinde ve vaší síti, ale většina lidí to prostě instaluje na stejný počítač jako OpenHAB, aby to bylo jednoduché.
Chcete -li nainstalovat Mosquitto, pomocí tohoto odkazu vyberte typ zařízení, které používáte, a postupujte podle pokynů. Protože C. H. I. P provozuje Debian (Jessie), můžete se řídit pokyny pro Raspberry Pi, pokud používáte C. H. I. P pro vaše zařízení domácí automatizace (také si všimněte, že je nejlepší překonfigurovat CHIP, aby se spustil z CLI. Pokyny k tomu jsou zde)
Jakmile spustíte OpenHAB a Mosquitto, musíte připravit Arduino IDE pro ESP8266 a kód. Nejprve musíte přidat knihovnu "PubSubClient". V Arduino IDE v nabídce přejděte na Skica, Zahrnout knihovnu, Spravovat knihovny Do vyhledávacího pole filtru zadejte PubSubClient, poté zvýrazněte výsledek hledání a klikněte na Instalovat (v době psaní je nejnovější verze 2.6.0). také je třeba přidat desku ESP8266 do Arduino IDE, což lze provést podle následujících pokynů
Co mi to dá?
Jak již bylo uvedeno dříve, tento projekt vám umožní zobrazit si střechu, dům, teploty ovládacího panelu a rychlost ventilátoru v grafickém rozhraní OpenHAB (v reálném čase!). Obrázky ukazují, jak to vypadá z mého iPhone, plus grafy, které se dostanete vrtáním dolů do různých teplot.
Chcete -li získat grafy, budete muset také nainstalovat a konfigurovat vazbu RRD4J (to je velmi přímočaré). To vám umožní kliknout buď na „Dům“nebo „Střecha“a získat historii teplot HRV pro každý z nich v minulosti hodina, den nebo týden (nebo déle, pokud změníte konfiguraci tak, aby vyhovovala) Zobrazené obrázky jsou v stupních Celsia a jasně, když jsem to udělal, zima na jižní polokouli!
Navíc jsem vytvořil zobrazení OpenHAB, které ukazuje srovnání mezi venkovní teplotou (poskytovanou doplňkem Weather binding, v mém případě pomocí Wundergroundu) a teplotou střechy a domu kliknutím na možnost 'Ovládat' (obrázek ukazuje graf s vykreslení domu, střechy a venkovní teploty). Plánuji použít tato data v pravidlech k zapnutí topných zařízení podle potřeby. Jednoduše přidejte položku Počasí na adresu URL obrázku v souboru mapy webu a zahrňte ji do stejného grafu (např.:… items = houseTemp, roofTemp, weatherTemp…)
Krok 1: Potřebné díly / montáž
Budete potřebovat následující díly
- Rozbočovač RJ11 (ten rozděluje signál z ovladače na střeše, na ovládací panel a ESP8266)
- Nějaký plochý kabel a zástrčka RJ11 (pro vedení vodičů z rozdělovače na ESP8266)
- ESP8266-01 (ostatní verze 3,3 V by měly fungovat)
- Převodník logické úrovně TTL (pro změnu dat z 5V -> 3,3V)
- AMS1117 3,3 V regulátor napětí (nebo podobný, pro změnu napětí z HRV 5V -> 3,3V na napájení ESP8266)
- 1N5817 schottky dioda (z nějakého důvodu to pomohlo zastavit resetování ovládacího panelu HRV při zapnutí ESP)
- Rezistor 10K ohmů (pullup odpor mezi regulátorem napětí 3,3 a ESP CH_PD)
- 10V 10uF kondenzátor (nebo podobný, pro vyhlazení a stabilizaci příchozí energie z HRV)
- 10V 1uF kondenzátor (nebo podobný, pro vyhlazení a stabilizaci odchozí energie do ESP)
- Volitelné posuvné tlačítko pro programování ESP (v opačném případě je třeba programově přetáhnout GPIO0 na GND ručně)
- Adaptér FTDI (k programování ESP, převádí USB na sériový)
Sestavte podle schématu
Obrázek prkénka ukazuje, jak by měly být součásti sestaveny. Všimněte si, že na plochý kabel z řídicí jednotky HRV ve stropě sestupuje 6 kolíků:
Piny 1 a 6 jsou 5V VCC
Piny 2 a 5 jsou GND
Piny 3 a 4 jsou Data.
Stačí použít piny 1, 2, 3 a 6 (1 a 6 VCC napájí ESP8266 a vyšší stranu logického převodníku TTL, 2 je společný základ a 3 je pro čtení sériových dat TTL)
Potřebný rozbočovač bude jen rozdělovač RJ11, jen se ujistěte, že je rozdělovačem, kde jsou kolíky rovné (např.: kolík 1 jde na kolík 1, kolík 2 na kolík 2 atd.) Všimněte si, že další ženské kolíky (jako zobrazené na obrázcích) jsou pro připojení FTDI pro pozdější přeprogramování ESP a zobrazený přepínač jej přepne do režimu „programování“. Ty jsou volitelné, ale doporučené (např.: pokud změníte heslo k WiFi, protože přístupový bod WiFi a heslo jsou naprogramovány v kódu, který budete muset nahrát, jakmile bude váš ESP8266 sestaven)
Krok 2: Nahrání kódu a testování
Změny kódu
Alternativní odkaz ke stažení na kód Arduino ZDE
Otevřete v Arduino IDE, ujistěte se, že je nainstalována deska ESP i PubSubClient a že jste vybrali desku ESP8266 (Tools, Board, Generic ESP8266 Board) Upravte kód a změňte název a heslo WiFi AP a IP adresu váš makléř MQTT (to jsou jediné věci, které byste měli změnit), jak je uvedeno níže. Klikněte na tlačítko 'Ověřit', abyste se ujistili, že je kompilace v pořádku, pak se ujistěte, že je vybrán správný COM port (Nástroje, Port) a nahrajte kód do svého ESP8266. Existuje spousta článků o tom, jak to udělat, tady znovu neobjevím kolo.
// Wifi
const char* ssid = "your_wifi_ssid_here"; const char* heslo = "vaše_wifi_password_here"; // Adresa IP makléře MQTT MQTT_SERVER (192, 168, 222, 254);
Testování MQTT
Pro testování můžete nechat adaptér FTDI připojený a otevřít sériový monitor v Arduino IDE, v konzole byste měli vidět zprávy s tiskem informací o teplotě. Pokud potřebujete řešit problémy s příchozími zprávami MQTT z ESP8266 vašemu makléři MQTT, pak na serveru Mosquitto spusťte jeden z následujících příkazů k odběru příchozích zpráv:
mosquitto_sub -d -t openhab/hrv/status
Měli byste vidět příchozí zprávy PUBLISH přicházející z ESP8266 každých 30 sekund s číslem „1“(což znamená „jsem naživu“) Pokud vidíte konstantní „0“(nebo vůbec nic), pak není komunikace. Jakmile uvidíte číslo 1, které přichází, pak to znamená, že ESP8266 komunikuje s makléřem MQTT (další informace o tom, jak to funguje, hledejte v „Poslední vůli a svědectví MQTT“, nebo se podívejte na tento opravdu dobrý příspěvek na blog)
Nyní můžete sledovat údaje o teplotě a rychlosti ventilátoru, přihlaste se k odběru jednoho z následujících. Pamatujte však, že kód odesílá údaje o teplotě pouze v případě, že se některá data změnila. Sleduje poslední odeslanou teplotu, rychlost ventilátoru atd., Takže se vám nemusí zobrazovat informace přicházející okamžitě.
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
Tip: Přihlaste se k odběru teploty ovládacího panelu výše, poté stiskněte tlačítko teploty na samotném ovládacím panelu, měli byste vidět nové nastavení teploty.
Když se dostanete k pájení, PCB 3 cm x 7 cm se krásně vejde do splachovací krabice za ovládacím panelem HRV. Doporučil bych to provést pouze v případě, že se jedná o plastovou krabici, protože kovová skříňka může interferovat se signály Wifi nebo případně zkratovat připojení na desce plošných spojů. Alternativně můžete vytisknout plastové 3D pouzdro pro připevnění desky.
Krok 3: Změny OpenHAB
Konfigurace OpenHAB
Požadované změny OpenHAB jsou následující:
soubor 'items':
/* HRVNumber hrvStatus "Stav HRV [MAP (status.map):%d]" (gHRV) {mqtt = "<[mqttbroker: openhab/hrv/status: state: default]"} Number houseTemp "House [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/housetemp: state: default] "} Number 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] "} Řetězec fanSpeed" Rychlost ventilátoru [%s] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/fanspeed: state: default] "}*/
soubor „mapa webu“:
Štítek rámce = "Teplota HRV" {Textová položka = roofTemp {Rámeček {Přepnout položku = roofTemp_Chart_Period label = mapování období "= [0 =" hodina ", 1 =" den ", 2 =" týden "] URL obrázku =" https:// localhost: 8080/rrdchart-p.webp
Dodatečné ikony pro OpenHAB jsou zahrnuty (klikněte pravým tlačítkem a uložte obrázky)
Uložte tyto soubory do složky.. / OpenHAB Home / webapps / images na vašem serveru OpenHAB
Doporučuje:
Prostorová teplota přes internet s BLYNK ESP8266 a DHT11: 5 kroků (s obrázky)
Prostorová teplota přes internet S BLYNK ESP8266 a DHT11: Ahoj kluci, dnes vyrobíme monitor pokojové teploty, který můžeme použít k monitorování naší místnosti odkudkoli na světě a k tomu použijeme BLYNK IoT plateform a budeme používat DHT11 ke čtení pokojové teploty použijeme ESP8266 pro přístup
Upgradujte štít motoru pro robot SMARS Arduino - nahrání kódu přes Bluetooth: 20 kroků
Upgrade Motor Shield for SMARS Robot Arduino - Upload Code over Bluetooth: Existuje několik možností štítu motoru, které můžete použít s Arduino Uno na tomto projektu robota SMARS, velmi často pomocí Motor Shield V1 vyrobeného společností Adafruit nebo kompatibilní (klon z Číny), ale nevýhodou tohoto štítu není Blueto
Jak nahrát program nebo kód do Arduino Pro Mini pomocí kabelu sériového převodníku CH340 UART: 4 kroky
Jak nahrát program nebo kód do Arduino Pro Mini pomocí kabelu sériového převodníku CH340 UART: Sériové kabely USB TTL jsou řadou kabelů převaděče USB na sériový, které poskytují připojení mezi rozhraním USB a sériovým rozhraním UART. K dispozici je řada kabelů, které nabízejí připojení na 5 voltů, 3,3 voltů nebo uživatelem určené úrovně signálu s
HC - 06 (podřízený modul) Změna „NAME“bez použití „Monitor sériového Arduina“který „funguje snadno“: bezchybný způsob!: 3 kroky
HC - 06 (podřízený modul) Změna „NAME“bez použití „Monitor sériového Arduina“… který „funguje snadno“: Bezchybný způsob!: Po " Dlouho " zkouším změnu jména na HC - 06 (podřízený modul) pomocí " sériový monitor Arduina, bez " Úspěch ", našel jsem další snadný způsob a nyní sdílím! Bavte se kamarádi
Přenos souborů přes LAN přes BitTorrent: 6 kroků
Přenos souborů přes LAN přes BitTorrent: Někdy může být nutné přenášet soubory přes síť na několik počítačů. I když byste to mohli dát na flash disk nebo CD/DVD, museli byste na každý počítač zkopírovat soubory a zkopírování všech souborů může chvíli trvat (zejména s