Përmbajtje:

Temperatura HRV në OpenHAB përmes ESP8266 (Shembull Kodi Serial!): 3 hapa
Temperatura HRV në OpenHAB përmes ESP8266 (Shembull Kodi Serial!): 3 hapa

Video: Temperatura HRV në OpenHAB përmes ESP8266 (Shembull Kodi Serial!): 3 hapa

Video: Temperatura HRV në OpenHAB përmes ESP8266 (Shembull Kodi Serial!): 3 hapa
Video: test du Xiaomi Mi Flower capteur pour que les plantes crèvent pas 2024, Korrik
Anonim
Temperatura HRV në OpenHAB përmes ESP8266 (Shembull i Kodit Serial!)
Temperatura HRV në OpenHAB përmes ESP8266 (Shembull i Kodit Serial!)
Temperatura HRV në OpenHAB përmes ESP8266 (Shembull i Kodit Serial!)
Temperatura HRV në OpenHAB përmes ESP8266 (Shembull i Kodit Serial!)
Temperatura HRV në OpenHAB përmes ESP8266 (Shembull i Kodit Serial!)
Temperatura HRV në OpenHAB përmes ESP8266 (Shembull i Kodit Serial!)

HRV - Me valë për OpenHAB

Ky udhëzues është veçanërisht për ata që kanë një sistem HRV (ventilimi i qarkullimit të ngrohjes) - megjithëse pjesë të bordit të qarkut, konfigurimit të hapjes ose kodit Arduino (të tilla si leximi i të dhënave seriale TTL) mund të jenë të dobishme për projektet tuaja ose të shërbejnë mirë për të mësuar. Supozon se keni një njohuri të arsyeshme për Arduino IDE dhe çfarë është një çip ESP8266.

Prezantimi

Më poshtë përshkruhet se si të ndërtohet një ESP8266 që lidhet me një sistem HRV dhe dërgon temperaturat e çatisë dhe shtëpisë, temperaturën e panelit të kontrollit dhe shpejtësinë e ventilatorit përmes mesazheve MQTT në OpenHAB. Kjo është krijuar për të punuar me një tabelë ESP8266-01 (megjithëse duhet të punojë me çdo version ESP8266 3.3V) Nëse keni një sistem të ngjashëm të tipit HRV nga një shitës alternativ, do t'ju duhet të përcaktoni nëse të dhënat dërgohen si seriale TTL dhe nëse po, çfarë strukture dërgohen të dhënat.

OpenHAB dhe Mosquitto

Kodi ESP8266 është shkruar posaçërisht për të punuar me OpenHAB (softuer të automatizimit të shtëpisë me burim të hapur) dhe një ndërmjetës MQTT siç është Mosquitto (një protokoll tipi i abonimit/publikimit të mesazheve që është i lehtë dhe i shkëlqyeshëm për komunikimin midis pajisjeve) Mos lejoni emrat ose akronimet ju trembin, ato janë me të vërtetë mjaft të thjeshta për t'u përdorur sapo të njihni se si funksionojnë. Unë përdor OpenHAB në një kompjuter NTC C. H. I. P (9 dollarë amerikanë) megjithatë shumë njerëz përdorin një Raspberry Pi ose të ngjashme. Ky tutorial supozon se keni zbatuar OpenHAB (nëse keni nevojë për ndihmë në krijimin e OpenHAB, ndiqni këtë artikull të shkëlqyeshëm nga krijimi i faqes në internet) Ju gjithashtu duhet të shkarkoni dhe instaloni Mosquitto (ndërmjetësi MQTT) dhe lidhjen e lidhur me OpenHAB. Mund ta instaloni diku tjetër në rrjetin tuaj, megjithatë shumica e njerëzve thjesht e instalojnë këtë në të njëjtën makinë me OpenHAB për ta mbajtur të thjeshtë.

Për të instaluar Mosquitto, duke ndjekur këtë lidhje pastaj zgjidhni llojin e pajisjes që po përdorni dhe ndiqni udhëzimet. Për shkak se C. H. I. P drejton Debian (Jessie), ju mund të ndiqni udhëzimet e Raspberry Pi nëse jeni duke përdorur C. H. I. P për pajisjen tuaj të Automatizimit të Shtëpisë (gjithashtu vini re, është më mirë të rikonfiguroni CHIP për të nisur nga CLI. Ka udhëzime për këtë këtu)

Pasi të keni hapur OpenHAB dhe Mosquitto, duhet të përgatitni Arduino IDE për ESP8266 dhe kodin. Së pari, duhet të shtoni bibliotekën "PubSubClient". Në Arduino IDE, nga menyja te Sketch, Include Library, Manage Bibliotekat Në kutinë e kërkimit të filtrit, shkruani PubSubClient pastaj nënvizoni rezultatin e kërkimit dhe klikoni tek Install (në kohën e shkrimit, versioni i fundit është 2.6.0) gjithashtu duhet të shtoni bordin ESP8266 në Arduino IDE i cili mund të bëhet duke ndjekur udhëzimet këtu

Cfare me jep kjo?

Siç u tha më herët, ky projekt do t'ju lejojë të shikoni çatinë tuaj të panelit të kontrollit HRV, shtëpinë, temperaturat e panelit të kontrollit dhe shpejtësinë e ventilatorit në OpenHAB GUI (në kohë reale!) Imazhet tregojnë se si duket nga iPhone im, plus grafikët që keni do të arrihet duke u shpuar në temperatura të ndryshme.

Për të marrë grafikët, do t'ju duhet gjithashtu të instaloni dhe konfiguroni lidhjen RRD4J (kjo është shumë e drejtë përpara) Kjo do t'ju lejojë të klikoni ose në "House" ose "Roof" dhe të merrni një histori të temperaturave HRV për secilën gjatë së kaluarës orë, ditë ose javë (ose më gjatë, nëse ndryshoni konfigurimin që i përshtatet) Imazhet e paraqitura janë në celsius, dhe qartë është dimri i tij në hemisferën jugore kur e bëra këtë!

Për më tepër, unë krijova një pamje OpenHAB që tregon një krahasim midis temperaturës së jashtme (e siguruar nga shtesa e detyrueshme e motit, në rastin tim duke përdorur Wunderground) kundrejt temperaturës së çatisë dhe shtëpisë duke klikuar në opsionin "Kontrolli" (fotografia tregon grafikun me shtëpia, kulmi dhe temperatura e jashtme e vizatuar). Unë planifikoj t'i përdor këto të dhëna në rregulla për të ndezur pajisjet e ngrohjes sipas kërkesës. Thjesht shtoni artikullin Moti në URL -në tuaj të Imazhit në skedarin e faqes dhe përfshini këtë në të njëjtin grafik (p.sh.:… artikuj = houseTemp, roofTemp, weatherTemp…)

Hapi 1: Pjesët e nevojshme / Montimi

Pjesët e nevojshme / Montimi
Pjesët e nevojshme / Montimi
Pjesët e nevojshme / Montimi
Pjesët e nevojshme / Montimi
Pjesët e nevojshme / Montimi
Pjesët e nevojshme / Montimi

Ju do të keni nevojë për pjesët e mëposhtme

  • Një ndarës RJ11 (kjo ndan sinjalin nga kontrolluesi në çati, në panelin e kontrollit dhe ESP8266)
  • Disa kabllo fjongo dhe një prizë RJ11 (për të drejtuar telat nga ndarësi në ESP8266)
  • ESP8266-01 (versionet e tjera 3.3V duhet të funksionojnë)
  • Konvertuesi i nivelit logjik TTL (për të ndryshuar të dhënat nga 5V -> 3.3V)
  • AMS1117 rregullatori i tensionit 3.3V (ose i ngjashëm, për të ndryshuar tensionin nga HRV 5V -> 3.3V në fuqinë ESP8266)
  • Dioda schottky 1N5817 (për disa arsye kjo ndihmoi në ndalimin e rivendosjes së panelit të kontrollit HRV në ndezjen e ESP)
  • Rezistencë 10K ohm (rezistencë tërheqëse midis 3.3 Rregullatorit të Tensionit dhe ESP CH_PD)
  • Kondensator 10V 10uF (ose i ngjashëm, për të zbutur dhe stabilizuar fuqinë hyrëse nga HRV)
  • Kondensator 10V 1uF (ose i ngjashëm, për të zbutur dhe stabilizuar fuqinë dalëse në ESP)
  • Butoni rrëshqitës opsional për të programuar ESP (përndryshe, duhet të tërhiqni manualisht GPIO0 në GND për të programuar)
  • Një përshtatës FTDI (për të programuar ESP, konverton USB në serial)

Mblidhni sipas Skemës

Imazhi i bordit të bukës tregon se si duhet të mblidhen pjesët. Vini re se ka 6 kunja që zbresin nga kablloja e shiritit nga njësia e kontrolluesit HRV në tavan:

Kunjat 1 dhe 6 janë 5V VCC

Kunjat 2 dhe 5 janë GND

Kunjat 3 dhe 4 janë të dhëna.

Ju vetëm duhet të përdorni kunjat 1, 2, 3 dhe 6 (1 dhe 6 fuqi VCC ESP8266 dhe ana e lartë e konvertuesit logjik TTL, 2 është një bazë e përbashkët dhe 3 është për leximin e të dhënave seriale TTL)

Ndarësi që ju nevojitet do të jetë thjesht një ndarës RJ11, vetëm sigurohuni që ai të jetë një ndarës ku kunjat janë drejtpërsëdrejti (p.sh.: kunja 1 shkon te kunja 1, kunja 2 te kunja 2 e kështu me radhë) Vini re se kunjat shtesë femra (si treguar në imazhe) janë për lidhjen e një FTDI për riprogramimin e ESP më vonë, dhe çelësi i treguar e vendos atë në modalitetin "programim". Këto janë opsionale, por rekomandohen (p.sh.: nëse ndryshoni fjalëkalimin tuaj WiFi pasi AP dhe fjalëkalimi WiFi janë programuar fort në kod, të cilin do t'ju duhet ta ngarkoni pasi të jetë ndërtuar ESP8266)

Hapi 2: Ngarkimi i Kodit dhe Testimi

Ngarkimi i Kodit dhe Testimi
Ngarkimi i Kodit dhe Testimi
Ngarkimi i Kodit dhe Testimi
Ngarkimi i Kodit dhe Testimi
Ngarkimi i Kodit dhe Testimi
Ngarkimi i Kodit dhe Testimi
Ngarkimi i Kodit dhe Testimi
Ngarkimi i Kodit dhe Testimi

Ndryshimet e Kodit

Lidhja alternative e shkarkimit të kodit Arduino KTU

Hapeni në Arduino IDE, sigurohuni që bordi ESP të jetë i instaluar si dhe PubSubClient dhe se keni zgjedhur tabelën ESP8266 (Tools, Board, Generic ESP8266 Board) Ndryshoni kodin dhe ndryshoni emrin dhe fjalëkalimin e WiFi AP dhe adresën IP të ndërmjetësi juaj MQTT (këto janë të vetmet gjëra që ju duhet të ndryshoni) siç tregohet më poshtë. Klikoni butonin 'Verifiko' për t'u siguruar që përpilohet mirë, pastaj sigurohuni që është zgjedhur porta e saktë COM (Tools, Port) dhe ngarkoni kodin në ESP8266 tuaj. Ka shumë artikuj rreth asaj se si ta bëni këtë, unë nuk do të rizbuloj timonin këtu.

// Wifi

const char* ssid = "your_wifi_ssid_here"; const char* fjalëkalim = "your_wifi_password_here"; // MQTT Broker IPAddress MQTT_SERVER (192, 168, 222, 254);

Testimi MQTT

Për testimin, mund ta lini përshtatësin tuaj FTDI të lidhur dhe të hapni Monitorin Serial në Arduino IDE, duhet të shihni mesazhe që shtypin informacionin e temperaturës në tastierë. Nëse keni nevojë për të zgjidhur probleme mesazhet MQTT në hyrje nga ESP8266 tek ndërmjetësi juaj MQTT, atëherë në serverin Mosquitto ekzekutoni një nga komandat e mëposhtme për t'u abonuar në mesazhet hyrëse:

mosquitto_sub -d -t openhab/hrv/status

Ju duhet të shihni mesazhe PUBLISHE hyrëse që vijnë nga ESP8266 çdo 30 sekonda ose më shumë me numrin "1" (që do të thotë "Unë jam gjallë") Nëse shihni "0" të vazhdueshëm (ose asgjë fare) atëherë nuk ka komunikim. Sapo të shihni numrin 1 që vjen, atëherë do të thotë që ESP8266 po komunikon me ndërmjetësin MQTT (kërkoni "MQTT Vullneti dhe Testamenti i Fundit" për më shumë informacion se si funksionon kjo, ose shihni këtë hyrje vërtet të mirë në blog)

Tani mund të gjurmoni të dhënat e temperaturës dhe shpejtësisë së ventilatorit, regjistrohuni në njërën nga sa vijon. Sidoqoftë, vini re se kodi dërgon të dhënat e temperaturës vetëm nëse ndonjë e dhënë ka ndryshuar. Ai mban gjurmët e të dhënave të temperaturës së fundit, shpejtësisë së ventilatorit etj. Që janë dërguar, kështu që ju mund të mos shihni informacione që vijnë menjëherë.

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

Këshillë: regjistrohuni në temperaturën e panelit të kontrollit më lart, pastaj shtypni butonin e temperaturës në vetë panelin e kontrollit ju duhet të shihni që cilësimi i ri i temperaturës të hyjë.

Kur të arrini ta bashkoni këtë, një PCB 3cm x 7cm përshtatet mirë në kutinë e larjes prapa Panelit të Kontrollit HRV. Unë do të rekomandoja ta bënit këtë vetëm nëse është një kuti plastike e skuqur pasi një kuti metalike mund të ndërhyjë në sinjalet Wifi ose ndoshta lidhjet e shkurtuara në bordin e PCB. Përndryshe, mund të printoni një kuti plastike 3D për të montuar tabelën.

Hapi 3: Ndryshimet OpenHAB

Konfigurimi OpenHAB

Ndryshimet e kërkuara të OpenHAB janë si më poshtë:

skedari 'artikuj':

/* HRVNumri hrvStatus "HRV Status [MAP (status.map):%d]" (gHRV) {mqtt = "<[mqttbroker: openhab/hrv/status: state: default]"} Numri i shtëpisëTemp "Shtëpi [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/housetemp: state: default] "} Numri i shtëpisëTemp_Chart_Periudha" Periudha e grafikut "Numri i kulmitTemp" Kulmi [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/rooftemp: state: default] "} Numri i kulmitTemp_Chart_Periudha" Periudha e grafikut "Numri i kontrollitTemp" Kontrolli [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/controltemp gjendja: parazgjedhje] "} String fanSpeed" Shpejtësia e ventilatorit [%s] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/fanspeed: state: default] "}*/

skedari 'sitemap':

Etiketa e kornizës = "Temperatura HRV" {Artikulli i tekstit = çatiaTemp {Korniza {Ndërroni artikullin = çatinëTemp_Chart_Period label = "Periudha" përputhet = [0 = "Ora", 1 = "Dita", 2 = "Java"] Url imazhi = "https:// localhost: 8080/rrdchart-p.webp

Përfshihen ikona shtesë për OpenHAB (kliko me të djathtën dhe ruaj imazhet)

Ruani këto skedarë në dosjen.. / OpenHAB Home / webapps / images në serverin tuaj OpenHAB

Recommended: