Talaan ng mga Nilalaman:
- Hakbang 1: Paano Gumagawa ang isang Therostat
- Hakbang 2: Pagkuha ng Batayang Handa ng Sonoff
- Hakbang 3: NodeRED
- Hakbang 4: Konklusyon
Video: NEST ang iyong Lumang Therostat: 4 Hakbang (na may Mga Larawan)
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:14
Ang sistema ng pag-init sa aking bahay ay marahil kasing edad ng bahay mismo. Ito ay mga 30 taong gulang, na kung saan ay mabuti sa mga tuntunin ng mga taon ng bahay, ngunit medyo natigil sa panahon ng yelo hanggang sa pag-aalala ng teknolohiya. Mayroong 2 pangunahing mga problema sa mga solusyon sa komersyo:
- ipinagbabawal ang pagpepresyo
- produkto bilang serbisyo
Natatandaan nating lahat kung ano ang nangyari kay Revolv at hindi ako masyadong masigasig na mangyari ito sa akin sa kalagitnaan ng taglamig. Sa pag-iisip na iyon, ipinakita ko sa iyo ang hindi kapani-paniwalang kahina-hinala na hitsura ngunit gumagana na NEST-Alike controller para sa iyong lumang termostat. Huwag magalala, pinaplano ko ang isang mas mahusay na enclosure upang maidagdag sa lalong madaling panahon!
Mga Tampok:
- kakayahang gumamit ng isang mayroon nang termostat (kung sakaling umungol ang asawa tungkol dito)
- malayuang pag-access
- AWAY mode
- pinakamainam na tagapagpahiwatig ng temperatura
- Nakikipagtulungan kay Alexa
Malapit na (suriin dito para sa mga update)
- Google Home
- Google Calendar
- Maramihang Mga Sensor
- Mga kontrol sa radiador
- Mga pagsasama ng IFTT
- Suporta ng Tasker
- Mga Kahilingan sa
- Ang isang mas mahusay na naghahanap ng enclosure
Hakbang 1: Paano Gumagawa ang isang Therostat
Ang termostat ay malamang na konektado sa HIGH VOLTAGE! Huwag subukang gumawa ng anuman maliban kung natiyak mong naka-off ang circuit. Maaari mong saktan ang iyong sarili at maging sanhi ng pinsala sa mga nakakonektang kagamitan. Isaalang-alang ang pagkonsulta sa isang kwalipikadong elektrisista upang matiyak ang iyong kaligtasan
Ang termostat ng Honeywell ay isang yunit na nakakabit sa dingding, pinapatakbo ng mga pangunahing aparato (Ang mga pangunahing kaalaman ng Sonoff ay nangangailangan ng min 90V, ang aking circuit ay mayroong 230V). Ang kahon ay konektado sa pangunahing yunit ng pagkontrol (na kung saan ay isang mas advanced na kahon) at nagpapadala ito ng signal kapag bumaba ang temperatura sa ibaba ng antas ng target. Habang maaaring magkakaiba ang iyong unit, malamang na pareho ang prinsipyo. Kung mayroon kang 3 wires at walang koneksyon sa radyo sa pagitan ng unit na naka-mount sa pader - ito ang tutorial para sa iyo.
Alam ko kung paano gumagana ang mga 3-wire termostat sa isang prinsipyo, na hindi huminto sa akin sa paghihip ng isang piyus sa pamamagitan ng pag-ikli ng 2 wires nang hindi sinasadya! Mayroon akong 3 wires na konektado sa yunit (na may ika-4 na mundo). Ang aking Honeywell termostat ay hindi wireless, kaya upang ilipat ang signal, maaari kong gamitin ang Sonoff Basic. Panahon na upang paghiwalayin ito at tingnan kung paano ipinadala ang signal sa unit. Sa mas malapit na pagsisiyasat, ang terminal ay konektado sa sumusunod na paraan:
- (asul) - Lupa
- (dilaw) - signal, kapag nakuha nang mataas ang pag-init ay nakabukas
- hindi ginagamit
- (pula) - ang live na wire na ginamit upang hilahin ang signal mataas
Upang makamit ang aking layunin, kailangan kong paikliin ang live na wire gamit ang signal wire kapag nais kong i-on ang aking pagpainit. Kung mayroon kang isang katulad na konektadong termostat, swerte ka dahil ang Sonoff Basic ay sapat na upang gawin ang trick.
Hakbang 2: Pagkuha ng Batayang Handa ng Sonoff
Bago namin simulang ikonekta ang mga wire, kailangan naming magdagdag ng isang sensor ng temperatura (DHT11) sa halo. Tiyaking mayroon kang Tasmota firmware na na-flash sa iyong Sonoff device (Mayroon akong mahusay na gabay na flashing dito) at ang iyong Sonasm na pinagana ng Tasmota ay na-configure nang tama (na sakop ko rin). Ngayon, ang iyong natitira lamang ay upang ikonekta ang sensor ng DHT11 sa Sonoff at i-configure ito para sa pag-uulat ng temperatura.
Ang DHT11 ay may 3 mga pin na naka-wire: Signal - GPIO14Vcc - 3.3VGND - GND
Lumusot ako ng butas, hindi ako nababagabag sa hitsura nito ngayon, ang kailangan ko lang ay ang patunay ng konsepto at ang pagpapatunay. Gumagawa ako ng isang maganda at makintab na enclosure sa sandaling dumating ang aking 3D printer. Nagbayad ako ng labis na pansin sa kung paano ko kawad ang Sonoff, dahil kailangan kong tiyakin na ang live na kawad ay kumokonekta sa signal wire sa kabilang dulo ng aparatong Sonoff. Ang unit ng Honeywell ay may load resistor (R) na itinayo sa loob kung saan nililimitahan ang kasalukuyang. Habang ang circuit ay protektado ng 3A fuse, matalino na tumugma sa parehong paglaban para sa labis na proteksyon. Kapag handa na ang mga wire, oras na upang i-flip ang pangunahing lakas at ibalik ang Sonoff.
Sonoff Tasmota - Honeywell termostat
INPUT Live - Ika-4 na terminal Live
INPUT GND - 1st terminal GND
OUTPUT Signal - 2nd terminal Signal
Nabanggit ko dati iyon sa ngayon, hindi ako mag-stress tungkol sa mga hitsura nito. Ang asawa ay kumbinsido at maaari akong tumuon sa pagpapaandar at pag-clear ng anumang mga bug na magaganap. Ang magandang bagay ay ang orihinal na termostat ay gumagana pa rin. Kung tatalakayin ko ito, malalampasan nito ang batay sa Sonoff Tasmota. Ito ay dapat maging isang mahusay na pag-backup para sa anumang hindi inaasahang mga kaganapan.
Hakbang 3: NodeRED
Mangyaring tandaan na ang video ay maaaring maglaman ng mas matandang mga sanggunian sa NodeRed, patuloy kong ginagawa ang pagpapabuti ng disenyo. Ito ay maliliit na pagbabago at ang mga file ng artikulo ay pinapanatiling napapanahon
Natagpuan ko ang disenyo na ito sa online. Mukha itong mahusay, subalit sa pagsasara nang mabuti, ang widget ay hindi talaga angkop para sa NodeRED. Kailangan nito ng 5 mga kargamento upang maitakda, na kung saan ay hindi kung paano gumagana ang magkatulad na disenyo. Tumagal ako ng kaunting oras upang malaman ang pinakamahusay na paraan ng pagpasa sa lahat ng impormasyong iyon upang ma-update ang widget at panatilihin itong gumana. Sigurado ako sa oras na gugugol ko ng mas maraming oras sa disenyo upang maitulak ko ang lahat ng kinakailangang mga update sa isang solong msg object. Sa ngayon, ito ay kung ano ito.
Pag-agos ng temperatura
Iniulat ng DHT11 bawat X segundo pabalik sa NodeRED server. Nadagdagan ko ang dalas na ito sa pamamagitan ng console ng Tasmota. Patakbuhin lamang ang utos upang itakda ang dalas sa sec:
Itinakda ng TelePeriod ang panahon ng telemetry sa pagitan ng 10 at 3600 segundo
Ginagawa ito halos para sa mga pagsubok, dahil ayaw kong maghintay ng ilang minuto upang makita kung gumana ang aking mga pag-aayos ng bug. Ang pagpapanatili ng mataas na dalas ay magiging sanhi ng pag-iinit ng mas madalas para sa mas maikli na tagal ng panahon, kaya pigilin ang pagtatakda nito sa 10 sec para sa iba pang mga layunin sa pagsubok. Ang MQTT node ay hinihila ang data mula sa:
sonoff / tele / SENSOR
at pinapanatili ang pinaka-kapaki-pakinabang na data sa mga sumusunod na bagay:
msg.payload. DHT11. Katangian msg.payload. DHT11. Kahusayan
Upang limitahan ang mga error, idinagdag ko ang makinis na node upang average ang mga resulta at na-update ang variable ng daloy: NodeRED:
Function Node - I-update ang 'TempAmbient'
flow.set ('TempAmbient', msg.payload. DHT11. Temperatura); ibalik ang msg;
Pag-update ng Widget
Napagpasyahan kong ang 5 segundo ay isang magandang rate ng pag-refresh, samakatuwid pinipilit ko ang lahat ng kinakailangang halaga sa dalas na ito. Ang tanging pagbubukod ay ang slider, na sa halatang kadahilanan ay agad na tumutugon.
Ang bawat kaukulang node ay nagpapadala ng kargamento na may nakatalagang paksa sa widget na katulad ng pugad.
- kulay (pag-init | paglamig * | off at hvac_state)
- dahon (totoo | false & has_leaf)
- ang layo (totoo | hindi totoo at malayo)
- Ambient temp (numero at ambient_temperature)
- Target na temp (numero at target_temperature)
*hindi ginagamit
NodeRED: Function Node - Pag-update ng Widget
kulay
x = flow.get ('TempTarget'); // targetz = flow.get ('TempAmbient'); // ambient
kung (z = x) {
flow.set ('heatingState', "off"); flow.set ('pagpainitSwitch', "OFF"); } msg.payload = z; msg.topic = "ambient_temperature"; ibalik ang msg;
dahon
x = flow.get ('TempAmbient'); kung (x> 17 && x <23) {flow.set ('leaf', true); msg.payload = totoo; msg.topic = "has_leaf"; ibalik ang msg; } iba pa {flow.set ('leaf', false); msg.payload = false; msg.topic = "has_leaf"; ibalik ang msg; }
Kulay ng labis na pag-override
x = flow.get ('away'); kung (x === true) {msg.topic = "hvac_state"; msg.payload = "off"; ibalik ang msg; }
msg.topic = "hvac_state";
msg.payload = flow.get ('heatingState');
ibalik ang msg;
Palayo na
x = flow.get ('away'); kung (x === true) {flow.set ('heatSwitch', "OFF"); flow.set ('heatingState', "off"); }
msg.topic = "malayo";
msg.payload = flow.get ('away'); ibalik ang msg;
Target na Temp
kung (msg.topic === "update") {msg.topic = "target_temperature"; msg.payload = flow.get ('TempTarget'); ibalik ang msg; }
kung (msg.command === "SetTargetTemperatureRequest") {
flow.set ('away', false); msg.topic = "target_temperature"; flow.set ('TempTarget', msg.payload); }
kung (msg.topic === "slider") {
flow.set ('away', false); msg.topic = "target_temperature"; flow.set ('TempTarget', msg.payload); }
kung (msg.command === "GetTemperatureReadingRequest") {}
ibalik ang msg;
Tulad ng nakikita mo, nag-opt out ako para sa mga variable ng daloy, upang maalala ko ang halaga sa anumang naibigay na oras. Mayroon akong daloy ng pag-debug na karaniwang binabasa ang lahat ng nakaimbak na mga halaga.
- 'TempAmbinet' - nag-iimbak ng kasalukuyang temp
- Ang 'TempTarget' - humahawak sa halaga ng target na temp
- 'Dahon' - nagpapakita ng dahon kung kinakailangan
- 'Malayo' - ipinapakita ang katayuan sa malayo kung kinakailangan
- 'Pag-init ng Estado' - binabago ang kulay ng display
- Ang 'pagpainitSwitch' - kinokontrol ang estado ng relay.
Ang hamon ay upang tiyakin na ang impormasyon ay na-update sa "pag-update" at kapag hiniling sa pamamagitan ng iba pang mga paraan (Alexa, atbp). Ito ang dahilan kung bakit makikita mo ang iba't ibang mga kundisyon sa JavaScript. Sa tuwing nai-update ang mga halaga, ipinadala sa variable ng daloy at ang widget ay na-refresh.
Slider
Inihayag ng pagsubok na kailangan ng isang karagdagang pag-update ng slider (itinutulak ng slider ang target na temperatura). Ipinapadala ng Slider ang payload (numero) kasama ang nauugnay na paksang slider) kapag inilipat ito. Sa itaas nito, nais kong makarating ang slider sa tamang posisyon kung maraming mga web interface ang nasa lugar. Upang gawin ito, bawat 5 sec na-update ko lang ang posisyon ng slider sa isang kasalukuyang target na temperatura.
NodeRED: Function Node - I-update ang slider '
msg.payload = flow.get ('TempTarget'); ibalik ang msg;
Control ng relay
Ang controller ng relay ay simple, tumatagal (sa ngayon) ng dalawang mga input. Ang totoo ni Alexa | false at ang pakikipag-ugnay na sumusunod sa isang pag-update sa variable na daloy ng "pagpalit ng Pag-init". Hindi na kailangan para sa isang instant na aksyon, kaya para sa pagiging simple, tumatakbo ito sa parehong dalas ng pag-update ng 5sec tulad ng natitirang daloy.
Ang relay ay konektado sa pamamagitan ng MQTT. Nag-post ang Node ng ON | OFF na mga utos sa paksa:
sonoff / cmnd / POWER1
Tumatanggap ang function node ng totoong | mali mula sa Alexa at binabago din ang estado ng pag-input ayon sa variable ng daloy ng 'heatSwitch'.
NodeRED: Function Node - Control Relay '
kung (msg.command === "TurnOffRequest") {msg.payload = "OFF"; ibalik ang msg; }
kung (msg.command === "TurnOnRequest") {
msg.payload = "NASA"; flow.set ('TempTarget', 21); ibalik ang msg; } kung (msg.topic === "update") {msg.payload = flow.get ('pagpainitSwitch'); } ibalik ang msg;
Pagsasama ng Alexa
Ito ang unang aparato na kinailangan kong i-off ang "awtomatikong kilalanin". Sa halip na awtomatikong ipagpalagay ang isang tugon ay nakabuo ako ng isa dahil nais ko ang kakayahang magtanong sa itinakdang temperatura. Sa prinsipyo, ang msg.payload = true | false ay nagpapahiwatig kung ang kahilingan ay matagumpay, at ang mga template na matatagpuan dito ay gawin ang natitira. Kung bago ka sa Alexa at NodeRed, tiyaking basahin ito.
Napagpasyahan kong ipasa ang magkakahiwalay na mga pagkilala (alam kong hindi ito ang pinakamahusay na paraan) upang makontrol ang lahat nang medyo mabuti. Wastong ang bawat tugon ay dapat ibigay sa pagtatapos ng chain ng utos. Ang akin ay nanganganib na hindi ibalik ang mga error kung mangyari ito. Tandaan, na maging pare-pareho, ina-update ko lang ang mga variable, habang ang pag-refresh ng loop, ay tinutulak ang mga bagong halaga sa widget.
NodeRED: Function Node - Iproseso ang Mga Tugon ng Alexa '
// Ano ang targetif na temperatura ng termostat (msg.command === "GetTemperatureReadingRequest") {x = flow.get ('TempTarget'); msg.extra = {"temperaturaReading": {"halaga": x}, "applianceResponseTimestamp": bagong Petsa (). toISOString ()}; msg.payload = totoo; ibalik ang msg; } // Itakda ang temperatura sa (hindi mas mababa sa 10 o higit pa sa 30) kung (msg.command === "SetTargetTemperatureRequest") {kung (msg.payload 30) {var range = {min: 10.0, max: 30.0} msg.payload = false; msg.extra = saklaw; } iba pa {msg.extra = {targetTemperature: {halaga: msg.payload}}; msg.payload = totoo; } ibalik ang msg; } // I-on ito kung (msg.command === "TurnOnRequest") {msg.payload = true; flow.set ('away', false); flow.set ('TempTarget', 21); ibalik ang msg; } // Patayin ito kung (msg.command === "TurnOffRequest") {msg.payload = true; flow.set ('malayo', totoo); ibalik ang msg;
Hakbang 4: Konklusyon
Kung ilantad mo ang NodeRED dashboard sa WAN ang buong sistema ng pag-init ay maaaring makontrol nang malayuan. Inirerekumenda ko sa iyo na basahin ang mga sumusunod na artikulo upang makakuha ng mabilis sa seguridad ng NodeRED at NodeRED.
- NodeRED para sa mga nagsisimula
- NodeRED seguridad
Bilang karagdagan, kung nais mong magkaroon ng kaalaman tungkol sa mga pag-update sa proyektong ito - isaalang-alang ang pagsunod sa akin sa platform na iyong pinili:
- Ok naman ang Facebo
- Twi tter
- Ikaw ay magiging
At kung nais mong bilhin ako ng kape o suportahan ako sa isang mas tuloy-tuloy na paraan:
- Paypal
- Patreon
Inaasahan kong nasiyahan ka sa proyekto!
Inirerekumendang:
Gumawa ng Iyong Sariling Nakakonektang Heating Therostat at Gumawa ng Pagtipid Sa Pag-init: 53 Hakbang (na may Mga Larawan)
Gumawa ng Iyong Sariling Nakakonektang Heating Therostat at Gumawa ng Pagtipid Sa Pag-init: Ano ang layunin? Palakihin ang ginhawa sa pamamagitan ng pag-init ng iyong bahay nang eksakto kung nais mo Gumawa ng pagtipid at bawasan ang mga emissions ng greenhouse gas sa pamamagitan lamang ng pag-init ng iyong bahay kung kailangan mo Panatilihin ang kontrol sa iyong pag-init saan ka man maging maipagmalaki ginawa mo ito
Simpleng Gesture Control - Kontrolin ang Iyong Mga Laruan sa RC Gamit ang Kilusan ng Iyong Braso: 4 na Hakbang (na may Mga Larawan)
Simpleng Pagkontrol ng Kilos - Kontrolin ang Iyong Mga Laruan sa RC Gamit ang Kilusan ng Iyong Braso: Maligayang pagdating sa aking 'ible' # 45. Kamakailan lamang ay gumawa ako ng isang ganap na gumaganang bersyon ng BB8 gamit ang mga bahagi ng Lego Star Wars … ang Force Band na ginawa ni Sphero, naisip ko: " Ok, I c
HestiaPi Touch - Buksan ang Smart Therostat: 9 Mga Hakbang (na may Mga Larawan)
HestiaPi Touch - Buksan ang Smart Therostat: Tungkol sa HestiaPi Touch Ang HestiaPi Touch ay isang ganap na bukas na mapagkukunan ng matalinong termostat para sa iyong tahanan. Ang lahat ng mga digital na file at impormasyon ay magagamit sa ibaba at ang aming pangunahing website. Sa pamamagitan nito, maaari mong subaybayan ang temperatura ng iyong bahay, kamag-anak na kahalumigmigan, at atmo
Sine-save ang Iyong Mga Larawan para sa Iyong Gawain: 4 Mga Hakbang (na may Mga Larawan)
Sine-save ang Iyong Mga Larawan para sa Iyong Gawain: 1. Magbukas ng isang bagong Google doc at gamitin ang pahinang ito upang ligtas ang iyong mga larawan.2. Gumamit ng ctrl (control) at ang " c " susi upang kopyahin.3. Gumamit ng ctrl (control) at ang " v " susi upang i-paste
Lumiko ang iyong Lumang CRT Computer Monitor Sa isang Fish Tank! ! !: 11 Mga Hakbang (na may Mga Larawan)
Lumiko ang iyong Lumang CRT Computer Monitor Sa isang Fish Tank! ! !: Pinag-uusapan ang tungkol sa isang mahusay na screen saver! Kanina ko pa gustong gawin ang build na ito. Halos sa tuwing nakikita ko at lumang CRT computer monitor sa tabi ng kalsada sa araw ng basurahan iniisip ko sa sarili ko … siguraduhin na gumawa ng isang cool na hitsura ng tanke ng isda. Kaya