Բովանդակություն:
- Քայլ 1: Ինչպես է աշխատում թերմոստատը
- Քայլ 2. Sonoff Basic Ready- ի պատրաստում
- Քայլ 3: NodeRED
- Քայլ 4: Եզրակացություն
Video: NEST Ձեր հին թերմոստատը. 4 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Իմ տան ջեռուցման համակարգը, հավանաբար, նույնքան հին է, որքան ինքը: Այն մոտ 30 տարեկան է, ինչը լավ է տնային տարիների առումով, բայց բավականին խրված է սառցե դարաշրջանում, քանի որ դա վերաբերում է տեխնոլոգիային: Առևտրային լուծումների 2 հիմնական խնդիր կա.
- արգելող գնագոյացում
- ապրանքը որպես ծառայություն
Մենք բոլորս հիշում ենք, թե ինչ կատարվեց Revolv- ի հետ, և ես այնքան էլ չեմ ցանկանում, որ դա ինձ հետ պատահի ձմռան կեսին: Հաշվի առնելով դա ՝ ես ձեզ ներկայացնում եմ անհավատալիորեն կասկածելի տեսք ունեցող, բայց գործառնական NEST-Alike կարգավորիչ ՝ ձեր հին թերմոստատի համար: Մի անհանգստացեք, ես պլանավորում եմ շատ ավելի լավ պարիսպ, որը շուտով կավելացվի:
Հատկություններ:
- գոյություն ունեցող թերմոստատ օգտագործելու ունակություն (այն դեպքում, երբ կինը հառաչում է դրա մասին)
- հեռավոր մուտք
- AWAY ռեժիմ
- օպտիմալ ջերմաստիճանի ցուցիչ
- Աշխատում է Alexa- ի հետ
Շուտով (թարմացումների համար ստուգեք այստեղ)
- Google Home
- Google Օրացույց
- Բազմակի սենսորներ
- Ռադիատորի հսկողություն
- IFTT ինտեգրումներ
- Առաջադրանքների աջակցություն
- HTTP հարցումներ
- Շատ ավելի գեղեցիկ տեսքով պարիսպ
Քայլ 1: Ինչպես է աշխատում թերմոստատը
Թերմոստատը, ամենայն հավանականությամբ, միացված է Բարձր լարման: Մի փորձեք որևէ բան անել, քանի դեռ չեք համոզվել, որ միացումն անջատված է: Դուք կարող եք վնասել ինքներդ ձեզ և վնասել միացված սարքավորումները: Ձեր անվտանգությունը երաշխավորելու համար խորհրդակցեք որակավորված էլեկտրիկի հետ:
Honeywell- ի թերմոստատը պատի վրա տեղադրված սարք է, որն աշխատում է ցանցից (Sonoff- ի հիմունքներին անհրաժեշտ է նվազագույնը 90 Վ, իմ միացումն ունի 230 Վ): Տուփը միացված է հիմնական կառավարման միավորին (որն ավելի առաջադեմ տուփ է) և այն ազդանշան է ուղարկում, երբ ջերմաստիճանը թիրախային մակարդակից ցածր է: Թեև ձեր միավորը կարող է տարբեր լինել, բայց ամենայն հավանականությամբ սկզբունքը նույնն է: Եթե ունեք 3 լար և պատին ամրացված միավորի միջև ռադիոկապ չկա, սա ձեզ համար ձեռնարկն է:
Ես գիտեմ, թե ինչպես են եռալարերի ջերմաչափերը գործում սկզբունքորեն, ինչը չխանգարեց ինձ ապահովիչը փչել ՝ պատահաբար կարճացնելով 2 լար: Ես ունեմ միավորի հետ կապված 3 լար (4 -րդը երկիրն է): Իմ Honeywell թերմոստատը անլար չէ, այնպես որ ազդանշանը փոխելու համար կարող եմ օգտագործել Sonoff Basic- ը: It’sամանակն է այն առանձնացնել և տեսնել, թե ինչպես է ազդանշանը ուղարկվում սարքին: Ավելի սերտ ստուգումից հետո տերմինալը միացված է հետևյալ կերպ.
- (կապույտ) - գետնին
- (դեղին) - ազդանշան, երբ բարձր է քաշվում, ջեռուցումը միացված է
- չի օգտագործվում
- (կարմիր) - ազդանշանը բարձր քաշելու համար օգտագործվող կենդանի մետաղալարեր
Նպատակիս հասնելու համար ես պետք է կարճացնեմ ազդանշանային հաղորդալարով կենդանի մետաղալարը, երբ ուզում եմ, որ ջեռուցումս միացված լինի: Եթե դուք ունեք նմանատիպ միացված թերմոստատ, ապա հաջողակ եք, քանի որ Sonoff Basic- ը բավական կլինի հնարքը կատարելու համար:
Քայլ 2. Sonoff Basic Ready- ի պատրաստում
Նախքան լարերը միացնելը, մենք պետք է խառնուրդին ավելացնենք ջերմաստիճանի տվիչ (DHT11): Համոզվեք, որ Tasmota- ի որոնվածը շողացել է ձեր Sonoff սարքի վրա (այստեղ ես ունեմ փայլուն հիանալի ուղեցույց), և ձեր Tasmota- ով միացված Sonoff- ը ճիշտ կազմաձևված է (նաև իմ կողմից արդեն լուսաբանված): Այժմ ձեզ մնում է միայն DHT11 սենսորը միացնել Sonoff- ին և կարգավորել այն ջերմաստիճանի հաշվետվությունների համար:
DHT11- ը գալիս է 3 կապակցված լարով. Ազդանշան - GPIO14Vcc - 3.3VGND - GND
Ես անցք բացեցի, ինձ չի անհանգստացնում, թե ինչ տեսք ունի այն այժմ, ինձ անհրաժեշտ է միայն հայեցակարգի և վավերացման ապացույցը: Երբ 3D տպիչս գա, ես գեղեցիկ և փայլուն պատյան կդարձնեմ: Ես լրացուցիչ ուշադրություն դարձրի, թե ինչպես եմ միացնում Sonoff- ը, քանի որ պետք է համոզվեմ, որ կենդանի լարը միանում է Sonoff սարքի մյուս ծայրում գտնվող ազդանշանային լարին: Honeywell- ի միավորն ունի ներսում կառուցված բեռի դիմադրություն (R), որը սահմանափակում է հոսանքը: Մինչ միացումը պաշտպանված է 3A ապահովիչով, խելամիտ է լրացուցիչ պաշտպանության համար նույն դիմադրությանը համապատասխանելը: Երբ լարերը պատրաստ էի, ժամանակն էր անջատել հիմնական հոսանքը և հետ վերադարձնել Սոնոֆին:
Sonoff Tasmota - Honeywell ջերմաստիճան
INPUT Live - 4 -րդ տերմինալն ուղիղ եթերում
INPUT GND - 1 -ին տերմինալ GND
ԵԼՔ ազդանշան - 2 -րդ տերմինալային ազդանշան
Ես նախկինում նշեցի, որ առայժմ չեմ շեշտի դրա արտաքին տեսքի վրա: Կինը համոզված է, և ես կարող եմ կենտրոնանալ ֆունկցիոնալության և կատարված սխալների մաքրման վրա: Լավն այն է, որ օրիգինալ թերմոստատը դեռ աշխատում է: Եթե ես բացեմ այն, ապա այն կանցնի Sonoff Tasmota- ի վրա հիմնված մեկին: Սա պետք է հիանալի պահուստ լինի ցանկացած անսպասելի իրադարձության համար:
Քայլ 3: NodeRED
Խնդրում ենք նկատի ունենալ, որ տեսանյութը կարող է պարունակել ավելի հին NodeRed հղումներ, ես անընդհատ աշխատում եմ դիզայնի բարելավման վրա: Սրանք փոքր փոփոխություններ են, և հոդվածի ֆայլերը արդիական են:
Այս դիզայնին հանդիպեցի առցանց: Այն հիանալի տեսք ունի, սակայն մանրազնին ստուգման արդյունքում վիջեթն իսկապես հարմար չէ NodeRED- ի համար: Այն սահմանելու համար անհրաժեշտ է 5 բեռնվածություն, ինչը պարզապես այն չէ, թե ինչպես է աշխատում հանգույցների նման դիզայնը: Ինձ որոշ ժամանակ պահանջվեց ՝ գտնելու այդ տեղեկատվությունը փոխանցելու լավագույն միջոցը ՝ վիջեթը թարմացնելու և այն ֆունկցիոնալ պահելու համար: Վստահ եմ, որ ժամանակի ընթացքում ավելի շատ ժամանակ կծախսեմ դիզայնի վրա, որպեսզի կարողանամ մղել բոլոր անհրաժեշտ թարմացումները մեկ msg օբյեկտի միջոցով: Առայժմ դա այն է, ինչ կա:
Երմաստիճանի հոսք
DHT11- ը յուրաքանչյուր X վայրկյանը մեկ հայտնում է NodeRED սերվերին: Ես ավելացրեցի այս հաճախականությունը Tasmota- ի վահանակի միջոցով: Պարզապես գործարկեք հրամանը `հաճախականությունը վայրկյանում սահմանելու համար.
TelePeriod Հեռաչափության ժամանակահատվածը սահմանեք 10 -ից 3600 վայրկյան
Դա արվում է հիմնականում թեստերի համար, քանի որ ես չեմ ուզում րոպեներով սպասել ՝ տեսնելու, թե արդյոք իմ վրիպակների շտկումները աշխատեցին: Հաճախականությունը բարձր պահելը կհանգեցնի ջեռուցման ավելի հաճախակի կրակմանը ավելի կարճ ժամանակահատվածների համար, ուստի զերծ մնացեք այն 10 վայրկյան սահմանելուց, այլ ոչ թե փորձարկման նպատակով: MQTT հանգույցը քաշում է տվյալները ՝
sonoff/tele/SENSOR
և պահում է ամենաօգտակար տվյալները հետևյալ օբյեկտներում.
msg.payload. DHT11. Temperature msg.payload. DHT11. Humidity
Սխալները սահմանափակելու համար ես ավելացրեցի հարթ հանգույցը միջին արդյունքներին և թարմացրեցի հոսքի փոփոխականը ՝ NodeRED:
Ֆունկցիոնալ հանգույց - Թարմացրեք «TempAmbient» - ը
flow.set ('TempAmbient', msg.payload. DHT11. Temperature); վերադարձել msg;
Վիջեթի թարմացում
Ես որոշեցի, որ 5 վայրկյանը լավ թարմացման արագություն է, ուստի ես այս հաճախականությամբ առաջ եմ մղում բոլոր անհրաժեշտ արժեքները: Բացառություն է միայն սահիկը, որն ակնհայտ պատճառով ակնթարթորեն արձագանքում է:
Յուրաքանչյուր համապատասխան հանգույց ուղարկում է բեռնվածությունը ՝ վերագրված թեմայով բույնի նման վիջեթին:
- գույն (ջեռուցում | հովացում*| անջատված և hvac_state)
- տերև (ճշմարիտ | կեղծ և տերև ունի)
- հեռու (ճշմարիտ | կեղծ և հեռու)
- Շրջակա միջավայրի ջերմաստիճանը (համարը և շրջակա ջերմաստիճանը)
- Թիրախային ջերմաստիճան (համար և թիրախային ջերմաստիճան)
*չի օգտագործվում
NodeRED: Ֆունկցիայի հանգույց - widget- ի թարմացում
գույնը
x = flow.get ('TempTarget'); // targetz = flow.get ('TempAmbient'); // շրջապատող
եթե (z = x) {
flow.set («ջեռուցման պետություն», «անջատված»); flow.set («ջեռուցման անջատիչ», «OFF»); } msg.payload = z; msg.topic = "ambient_temperature"; վերադարձնել msg;
տերեւ
x = flow.get ('TempAmbient'); if (x> 17 && x <23) {flow.set («տերև», ճշմարիտ); msg.payload = true; msg.topic = "ունի_թերթ"; վերադարձնել msg; } else {flow.set («տերև», կեղծ); msg.payload = false; msg.topic = "ունի_թերթ"; վերադարձնել msg; }
Գույնը գերազանցում է
x = flow.get («հեռու»); if (x === true) {msg.topic = "hvac_state"; msg.payload = "անջատված"; վերադարձնել msg; }
msg.topic = "hvac_state";
msg.payload = flow.get ('ջեռուցման պետություն');
վերադարձնել msg;
Հեռու
x = flow.get («հեռու»); if (x === true) {flow.set ('ջեռուցման անջատիչ', "OFF"); flow.set («ջեռուցման պետություն», «անջատված»); }
msg.topic = "հեռու";
msg.payload = flow.get ('հեռու'); վերադարձնել msg;
Թիրախային ջերմաստիճան
if (msg.topic === "թարմացում") {msg.topic = "target_temperature"; msg.payload = flow.get ('TempTarget'); վերադարձնել msg; }
եթե (msg.command === "SetTargetTemperatureRequest") {
flow.set («հեռու», կեղծ); msg.topic = "նպատակային_ ջերմաստիճան"; flow.set ('TempTarget', msg.payload); }
if (msg.topic === "slider") {
flow.set («հեռու», կեղծ); msg.topic = "նպատակային_ ջերմաստիճան"; flow.set ('TempTarget', msg.payload); }
եթե (msg.command === "GetTemperatureReadingRequest") {}
վերադարձնել msg;
Ինչպես տեսնում եք, ես հրաժարվեցի հոսքի փոփոխականներից, այնպես որ կարող էի ցանկացած պահի հիշել արժեքը: Ես ունեմ վրիպազերծման հոսք, որը հիմնականում կարդում է բոլոր պահված արժեքները:
- «TempAmbinet» - պահում է ընթացիկ ջերմաստիճանը
- «TempTarget» - պահում է ջերմաստիճանի թիրախային արժեքը
- «Տերև» - անհրաժեշտության դեպքում ցուցադրում է տերևը
- «Հեռու» - անհրաժեշտության դեպքում ցուցադրում է հեռավորության կարգավիճակը
- «Ջեռուցման պետություն» - փոխում է էկրանի գույնը
- «Ջեռուցման անջատիչ» - վերահսկում է ռելեի վիճակը:
Խնդիրն այն էր, որ իրականում համոզվենք, որ տեղեկատվությունը թարմացվում է «թարմացման» դեպքում և երբ պահանջվում է այլ միջոցներով (Alexa և այլն): Ահա թե ինչու JavaScript- ում կտեսնեք տարբեր պայմաններ: Ամեն անգամ, երբ արժեքները թարմացվում են, ուղարկվում են հոսքի փոփոխականին և widget- ը թարմացվում է:
Սահող
Փորձարկումների արդյունքում պարզվեց, որ անհրաժեշտ է սահնակի լրացուցիչ թարմացում (սահողն առաջ է մղում նպատակային ջերմաստիճանը): Սահողն ուղարկում է բեռը (համարը) համապատասխան թեմայով «սահող», երբ այն տեղափոխվում է: Այս ամենից բացի, ես ուզում եմ, որ սլայդն ընկնի ճիշտ դիրքի վրա, եթե առկա են բազմաթիվ վեբ ինտերֆեյսեր: Դա անելու համար յուրաքանչյուր 5 վրկ ես պարզապես թարմացնում եմ սահիչի դիրքը ընթացիկ նպատակային ջերմաստիճանի:
NodeRED: Ֆունկցիայի հանգույց - Թարմացնել սահող '
msg.payload = flow.get ('TempTarget'); վերադարձնել msg;
Ռելե հսկողություն
Ռելեի վերահսկիչը պարզ է, այն տանում է (առայժմ) երկու մուտք: Alexa's true | false և փոխազդեցությունը, որը հաջորդում է «ջեռուցման անջատիչ» հոսքի փոփոխականի թարմացմանը: Ակնթարթային գործողությունների կարիք չկա, ուստի պարզության համար այն աշխատում է նույն 5 վրկ թարմացման հաճախականությամբ, ինչ մնացած հոսքը:
Ռելեը միացված է MQTT- ի միջոցով: Հանգույցը տեղադրում է ON | OFF հրամաններ թեմային.
sonoff/cmnd/POWER1
Ֆունկցիայի հանգույցն ընդունում է Alexa- ի ճշմարիտ | կեղծը և նաև փոխում է մուտքի վիճակը ըստ «heatSwitch» հոսքի փոփոխականի:
NodeRED: Ֆունկցիայի հանգույց - կառավարման ռելե '
if (msg.command === "TurnOffRequest") {msg.payload = "OFF"; վերադարձնել msg; }
եթե (msg.command === "TurnOnRequest") {
msg.payload = "ՄԻԱՎԱ"; flow.set («TempTarget», 21); վերադարձնել msg; } if (msg.topic === "թարմացում") {msg.payload = flow.get ('ջեռուցման անջատիչ'); } վերադարձ msg;
Alexa ինտեգրում
Սա առաջին սարքն է, որը ես ստիպված էի անջատել «ավտոմատ ճանաչումը»: Պատասխան ավտոմատ կերպով ենթադրելու փոխարեն ես ստեղծել եմ մեկը, քանի որ ցանկանում եմ սահմանված ջերմաստիճանը հարցնելու ունակություն: Սկզբունքորեն, msg.payload = true | false ցույց է տալիս, որ հարցումը հաջողված է, և մնացած օրինակները կատարում են այստեղ: Եթե դուք նորեկ եք Alexa- ում և NodeRed- ում, անպայման կարդացեք սա:
Ես որոշեցի առանձին փոխանցել շնորհակալագրերը (գիտեմ, որ սա լավագույն միջոցը չէ), որպեսզի կարողանամ մի փոքր ավելի լավ վերահսկել այդ ամենը: Responseիշտ յուրաքանչյուր պատասխան պետք է տրվի հրամանատարական շղթայի վերջում: Իմը վտանգում է չվերադառնալ սխալները, եթե դրանք տեղի ունենան: Նկատի ունեցեք, որ հետևողական լինելու համար ես միայն թարմացնում եմ փոփոխականները, իսկ թարմացման օղակը ՝ նոր արժեքները մղում դեպի վիջեթ:
NodeRED. Ֆունկցիայի հանգույց - Գործընթաց Alexa- ի պատասխանների '
// Ո՞րն է թերմոստատի նպատակային ջերմաստիճանը (msg.command === "GetTemperatureReadingRequest") {x = flow.get ('TempTarget'); msg.extra = {"temperatureReading": {"value": x}, "applianceResponseTimestamp": new Date (). toISOString ()}; msg.payload = true; վերադարձնել msg; } // Setերմաստիճանը սահմանել (ոչ ցածր, քան 10 կամ 30 -ից բարձր), եթե (msg.command === "SetTargetTemperatureRequest") {if (msg.payload 30) {var range = {min: 10.0, max: 30.0} msg.payload = false; msg.extra = միջակայք; } else {msg.extra = {targetTemperature: {value: msg.payload}}; msg.payload = true; } վերադարձ msg; } // Միացնել այն, եթե (msg.command === "TurnOnRequest") {msg.payload = true; flow.set («հեռու», կեղծ); flow.set («TempTarget», 21); վերադարձնել msg; } // Անջատել, եթե (msg.command === "TurnOffRequest") {msg.payload = true; flow.set («հեռու», ճշմարիտ); վերադարձնել msg;
Քայլ 4: Եզրակացություն
Եթե NodeRED- ի կառավարման վահանակը բաց թողնեք WAN- ի վրա, ջեռուցման ամբողջ համակարգը կարող է կառավարվել հեռակա կարգով: Ես խորհուրդ կտայի ձեզ կարդալ հետևյալ հոդվածները ՝ NodeRED և NodeRED անվտանգությամբ արագանալու համար:
- NodeRED սկսնակների համար
- NodeRED անվտանգություն
Բացի այդ, եթե ցանկանում եք տեղեկանալ այս նախագծի թարմացումների մասին, մտածեք հետևել ինձ ձեր նախընտրած հարթակում.
- Facebo լավ
- Twi tter
- YouTu be
Եվ եթե ձեզ դուր է գալիս ինձ համար սուրճ գնելը կամ ինձ ավելի շարունակական կերպով աջակցելը.
- Paypal
- Պատրեոն
Հուսով եմ, որ ձեզ դուր եկավ նախագիծը:
Խորհուրդ ենք տալիս:
Փոխարկեք ձեր հին նոութբուքի մարտկոցը Power Bank- ի ՝ 4 քայլ (նկարներով)
Փոխարկեք ձեր հին նոութբուքի մարտկոցը Power Bank- ի: Այս նախագծում ես ձեզ ցույց կտամ, թե ինչպես կարելի է հին նոութբուքից մարտկոցը վերածել հզորության բանկի, որը մեկ լիցքավորմամբ կարող է սովորական հեռախոսը լիցքավորել 4 -ից 5 անգամ: Եկեք սկսենք
Օգտագործեք հին հեռախոսը և հին բարձրախոսները որպես STEREO: 4 քայլ
Վերօգտագործեք հին հեռախոսը և հին բարձրախոսները ՝ որպես STEREO. Մի զույգ հին բարձրախոս և հին սմարթֆոն վերածեք ստերեո տեղադրման `ռադիոյով, mp3 նվագարկմամբ podcast- ներով և ինտերնետային ռադիոյով` օգտագործելով մի քանի ընդհանուր բաղադրիչ, որոնց ընդհանուր արժեքը 5 եվրոյից պակաս է: Այսպիսով, մենք ունենք 5-10 տարեկան խելացի այս հավաքածուն
ԻՇԽԱՆՈԹՅՈ MՆ ՍՏԵԵԼՈ O ՁԵՐ ՀԻՆ LAPTOP մարտկոցը. 9 քայլ (նկարներով)
ՎԵՐԱԴԱՌՆԵԼ ՁԵՐ ՀԻՆ LAPTOP մարտկոցը ՝ POWER BANK. հիասթափություն, ես փոխարինեցի մարտկոցը և պահեցի մեռած մարտկոցը (ըստ իմ
Փոխարկեք ձեր հին հեռախոսը հեռակա անջատիչին. 7 քայլ (նկարներով)
Փոխարկեք ձեր հին հեռախոսը հեռակա անջատիչ. Երբևէ մտածե՞լ եք, թե ինչ անել ձեր հին հիմնական հեռախոսների հետ: Սմարթֆոնի հայտնվելը վերջին տասնամյակում բոլոր հիմնական հեռախոսները հնացրեց: Չնայած նրանք ունեին լավ մարտկոցի կյանք և պատշաճ տեսք, նրանք ավելի քիչ են, քան համեմատած մեծ սմարթֆոնների հետ, որոնք ունեն մեծ հզորություն
Վերամշակեք ձեր հին պղտոր անջատիչը որպես փոփոխվող ջերմաստիճանի վերահսկիչ ձեր եռակցման համար. 7 քայլ
Վերամշակել ձեր հին լուսամփոփը որպես փոփոխվող ջերմաստիճանի վերահսկիչ ձեր եռակցման համար. Ես տեսել եմ բազմաթիվ պրոֆեսիոնալ փոփոխական ջերմաստիճանի հսկիչներ զոդման համար, բայց չափազանց թանկ: Այսպիսով, ես մեկը պատրաստում եմ հին պղտոր անջատիչից, վարդակից, բանդայի ափսեից և խրոցակից, որոնք արդեն աղբ էին և մի քանի հին PVC անջատիչ տուփից, որոնք գալիս էին դրա հետ և այլն