
Բովանդակություն:
- Քայլ 1. Շրջանների ակնարկ
- Քայլ 2: Sonoff RetroMods
- Քայլ 3. Շինարարության և հավաքման մանրամասները
- Քայլ 4: Sonoff ծրագրավորման ադապտեր
- Քայլ 5: Softwareրագրային ապահովման համակարգի ակնարկ
- Քայլ 6: Softwareրագրաշարի ակնարկ
- Քայլ 7: OpenHAB կազմաձևում
- Քայլ 8: Փորձարկեք ձեր IoT սարքը
- Քայլ 9: Եզրակացություն
- Քայլ 10: Օգտագործված հղումներ
2025 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2025-01-23 14:48

Հրաժարում
ԿԱՐԴԱԼ ԱՅՍ ԱՌԱԻՆ
Այս Ուղեցույցում մանրամասն նկարագրված է մի ծրագիր, որն օգտագործում է էլեկտրական ցանց (այս դեպքում ՝ UK 240VAC RMS), մինչդեռ ամեն ինչ արվել է անվտանգ պրակտիկայի և նախագծման լավ սկզբունքների կիրառման համար, միշտ կա պոտենցիալ մահացու էլեկտրական ցնցման վտանգ, երբ աշխատում են այս մատակարարման լարման հետ և որը հեղինակը չի կարող ընդունել որևէ պատասխանատվություն, եթե դրա բովանդակությանը հետևելիս տեղի է ունենում անձնական վնասվածք կամ գույքի վնաս: Հետևաբար, դուք պատրաստում եք այս նախագիծը ձեր ռիսկով:
Նախաբան
Այս հոդվածը, որը 9 -րդն է տնային ավտոմատացման շարքում, փաստում է, թե ինչպես կարելի է Sonoff 10A IoT ցանցի վերահսկիչ ստեղծել և ինտեգրել տան ավտոմատացման գոյություն ունեցող համակարգում, ներառյալ բոլոր անհրաժեշտ ծրագրակազմը `ներքին միջավայրում հաջող տեղակայման հնարավորություն տալու համար:
Ներածություն
Ինչպես նշվեց վերևում, սույն հրահանգը մանրամասն նկարագրում է, թե ինչպես կարելի է պատրաստել և ինտեգրել IoT ցանցի վերահսկիչ ՝ օգտագործելով Sonead 10A- ն iTead- ից: Սարքն ինքնին մեջբերված է, որ գնահատվել է 10 amps @ 90 ~ 250VAC, սակայն այս իրականացումը այն նվազեցնում է 5 amps- ի մակարդակին միաձուլված խրոցակի միջոցով ՝ ապահովելով ներքին Մեծ Բրիտանիայի 240VAC RMS հիմնական մատակարարումը:
Դիզայնի մեթոդաբանությունը անթերի ինտեգրվում է MQTT/OpenHAB- ի վրա հիմնված IoT ցանցին, որը մանրամասն նկարագրված է այս շարքում `տան ավտոմատացման շենքի վրա` այստեղից վերցված վերօգտագործված ծածկագրի հիման վրա: Այն կարող է նաև կարգավորել IoT ցանցի որևէ տարրի կորուստը և լիովին ունակ է ինքնուրույն շահագործման: Չնայած ինքնուրույն ռեժիմում, սարքի վերահսկողությունը ձեռք է բերվում պարզապես սեղմելով պարիսպի վերևում գտնվող կառավարման կոճակը, որը միացնում է մատակարարման հետագա ելքը:
Sonoff սարքի այս տեղական վերահսկողությունը միացնելու համար GPIO14- ը դուրս է բերվում պատյանից և օգտագործվում է որպես ձգան մուտքագրում: Անվտանգությունն ապահովելու համար այս մուտքագրումը սնվում է օպտո-միակցիչի միջոցով և տեղադրվում է պլաստիկ պատյանում այնպես, որ օպերատորը ոչ մի անգամ չի ենթարկվում ցանցի սնուցման լարման:
Ի վերջո, արձակը նաև նախանշում է, թե ինչպես կարելի է վերախմբագրել ESP8266 սարքը Sonoff 10A- ում Arduino IDE- ի միջոցով և տալիս է սարքի ամբողջական միացման մանրամասները, որոնք կարող են օգտագործվել թիրախային ծածկագրի հուսալի ծրագրավորման համար:
Ի՞նչ մասեր են ինձ պետք:
Sonoff Mains Controller
- 1 զեղչ Sonoff 10A այստեղ
- 1 անջատված 7805L 5 վ լարման կարգավորիչ այստեղ
- 1 զեղչ 240/6VAC 1.5VA տրանսֆորմատոր այստեղ
- 2 -ից 0.1 կերամիկական կոնդենսատորներ այստեղ
- 1 զեղչ 1000uF @25v էլեկտրոլիտիկ կոնդենսատոր այստեղ
- 1 անջատված կամրջի ուղղիչ 2W01 այստեղ
- 2 անջատված 4K7 դիմադրություն այստեղ
- 1 անջատված 330R դիմադրիչ այստեղ
- 1 զեղչ SPST կոճակ այստեղ
- 1 զեղչ Mulitcomp BM12W ABS պարիսպն այստեղ
- 1 զեղչ TIL111 օպտո-միակցիչ այստեղ
- 1 անջատված 3-ճանապարհային տերմինալային բլոկ այստեղ
- 1 անջատ 2-Way կոդավորված molex միակցիչ այստեղ/այստեղ
- 3 ճանապարհով կոդավորված molex միակցիչ այստեղ/այստեղ
- 1 անջատ 5-Way կոդավորված molex միակցիչ այստեղ/այստեղ
- 1 անջատ 5-Way molex կապում այստեղ
- 1 զեղչ Winbond SPI Flash (W25Q32FVSIG) այստեղ
- 1 անջատված ապահովիչ 20 մմ + գլխարկ այստեղ
- 1 անջատված 20 մմ արագ հարված 500 մԱ ապահովիչ այստեղ
- 2 պոլիամիդ մալուխային գեղձեր այստեղ
- 1 անջատված UK Mains plug (BS1363/A) այստեղ
- Միացյալ Թագավորության հիմնական վարդակից (BS1363/A) այստեղ
- 7 անջատված M3 16 մմ CS նեյլոնե պտուտակներ, (ներառյալ 10 անջատված ընկույզներ) այստեղ/այստեղ
- 2 անջատված Zip կապեր այստեղ
- 1 veroboard (0.1 "սկիպիդար) այստեղ
- 1 զեղչ Տարբեր երկարություններ 22swg պահածոյացված պղնձե մետաղալարեր այստեղ
- 1M 3M White UK հիմնական ցանցից այստեղ
- 10 զեղչ Molex վարդակից սեղմում է այստեղ
Sonoff ծրագրավորող
- 1 անջատված LD33CV 3v3 լարման կարգավորիչ այստեղ
- 1 զեղչ TO-220 տաքացուցիչ այստեղ
- 1 զեղչ Heatsink մածուկ այստեղ
- 1u 10uF @16v Էլեկտրոլիտիկ կոնդենսատոր այստեղ
- 1 -ից 0.1 կերամիկական կոնդենսատոր այստեղ
- 1 զեղչ SPDT կոճակ այստեղ
- 1 անջատված 4K7 դիմադրություն այստեղ
- 1 անջատ 2-Way կոդավորված molex միակցիչ այստեղ/այստեղ
- 3 ճանապարհով կոդավորված molex միակցիչ այստեղ/այստեղ
- 5 զեղչ Molex վարդակից սեղմում է այստեղ
- 1 անջատ 6-Way molex վարդակից այստեղ
- 1 զեղչ SPST կոճակ այստեղ
- 1 անջատված 2.1 մմ հոսանքի հոսանքի վարդակից այստեղ
- 1 veroboard (0.1 "սկիպիդար) այստեղ
- 1 անջատված USB սերիական ադապտեր (FTDI) այստեղ
Ինչ ծրագրային ապահովման կարիք ունեմ:
- Arduino IDE 1.6.9 այստեղ
- Arduino IDE- ն կազմաձևված է ESP8266 ծրագիրը ծրագրավորելու համար: Տես այստեղ; Arduino IDE- ի կարգավորում ՝ ESP8266-01 ծրագիրը ծրագրավորելու համար
Ի՞նչ գործիքների կարիք ունեմ:
- Sոդման երկաթ,
- Հորատում և տարբեր բիթեր (ներառյալ մալուխային խցուկների համար աստիճանական անցքերի կտրիչ և կառավարման կոճակ),
- Պտուտակահան (տարբեր),
- Կարգավորվող բանալիներ (երկուսը անջատված, ծնոտի լայնությունը> 25 մմ, մալուխային գեղձերի համար),
- Ֆայլեր (տարբեր),
- Ամուր փոխնակ,
- Ջերմային հրացան,
- DMM (ցանկալի է CAT IV):
Ի՞նչ հմտություններ են ինձ պետք:
- Էլեկտրոնիկայի և տան էլեկտրական անվտանգության/դիզայնի/էլեկտրագծերի և այլնի լավ տիրապետում,
- Arduino- ի և դրա IDE- ի իմացություն,
- Պատրաստման լավ հմտություններ (զոդման, փակցնելու, հորատման և այլն),
- Որոշ համբերություն,
- Որոշակի պատկերացում ձեր տան ցանցի մասին:
Coveredածկված թեմաներ
- Ներածություն
- Շրջանի ակնարկ
- Sonoff RetroMods
- Շինարարության և հավաքման մանրամասներ
- Sonoff ծրագրավորման ադապտեր
- Softwareրագրային ապահովման համակարգի ակնարկ
- Softwareրագրային ապահովման ակնարկ
- OpenHAB կոնֆիգուրացիա
- Փորձարկելով ձեր IoT սարքը
- Եզրակացություն
- Օգտագործված հղումներ
Սերիայի հղումներ
Մաս 8 -ին ՝ WiFi IoT ջերմաստիճանի և խոնավության տվիչ: Մաս ՝ 8 ՏՏ, Տան ավտոմատացում
Մաս 10 -ին. IR հեռակառավարում IoT- ի միջոցով: Մաս 10 IoT, Տան ավտոմատացում
Քայլ 1. Շրջանների ակնարկ




Ակնարկ
Ինչպես նշվեց վերևի ներածության մեջ, որպեսզի կարողանայի միացնել և անջատել ցանցի վերահսկիչը, անհրաժեշտ էր Sonoff- ի ներկառուցված ESP8266- ի մուտքագրում: Նման արտաքին մուտքի ներդրումը պահանջում է, որ Sonoff ABS- ի պարիսպը խախտվի և, հետևաբար, ստեղծի պոտենցիալ հարվածի վտանգ: Դա հաղթահարելու համար ես օգտագործեցի օպտիկական մեկուսացում այնպիսին, որ ցանցի վերահսկիչի համակարգի պարիսպից դուրս ցանցի հոսանքի ազդեցության հնարավորություն չլինի:
Հետևյալը օպտո-մեկուսացման սխեմաների նկարագրությունն է (նկար 1-ում վերևում):
Շրջանի մանրամասները
Օպտո-մեկուսացման միացումն իր մատակարարումը ստանում է անմիջապես միավորին կիրառվող ցանցից: 240VAC RMS- ը կիրառվում է ST1- ի անջատիչ/մեկուսիչ տրանսֆորմատորի համար J1 a pheonix contact MKDSN2, 5/3-5.08 polyamide 3-Way տերմինալով, որը գնահատված է 16A- ում 400V- ում, կարող է կրել 2.5 մմ (քառակուսի) CSA և F1 մալուխ ՝ 500 մԱ 20 մմ արագ հարվածային ապահովիչ: TR1- ի երկրորդային ոլորունների վրա հասանելի 6VAC- ը լիարժեք ալիք է `ուղղված B1 դիոդային կամրջով:
Այս լիարժեք ալիքի ուղղված ելքը այնուհետև կայունացվում և կարգավորվում է C1, C2 C3, R3 և IC1- ի կողմից 7805L շարքի շանթ կարգավորիչով ՝ տալով լավ, մաքուր 5 վ մատակարարման ռելս:
5 վ երկաթուղին այնուհետև օգտագործվում է OK1- ի TIL111 օպտո-մեկուսիչի մուտքը վերահսկելու համար J3- ով միացված արտաքին SPST կոճակի միջոցով: TIL111- ի ելքը զուգակցված է Sonoff GPIO14 մուտքի հետ R2- ի միջոցով 4K7 ձգվող դիմադրության միջոցով: Այսպիսով, ավելի լավ է, քան 340V մեկուսացումը (այսինքն ՝ առավելագույն լարման = (240VAC*sqroot (2))):
Քայլ 2: Sonoff RetroMods



Sonoff 10A սարքը ինտեգրելու համար անհրաժեշտ է կատարել որոշ հետադարձ փոփոխություններ:
Առաջինն այն է, որ ավելացվի 5 ուղղությամբ 0.1 դյույմանոց մոլեքսի միակցիչ, ինչպես ցույց է տրված վերևում ՝ նկար 1-ում: Սա թույլ է տալիս մուտք գործել Sonoff- ի GPIO14- ին, երբ պաշտպանիչ ծածկը փոխարինվի, ինչպես վերը նշված 2-րդ և 3-րդ նկարներում:
Թեև վերևում ցույց չի տրված, ես նաև դուրս բերեցի սերիական TX/RX տողեր ՝ տեղում ծրագրավորումը թույլատրելու համար (տե՛ս վերևում ՝ 1-ին քայլում ՝ SK1..3 մալուխային զրահը):
Երկրորդ փոփոխությունն այն է, որ SPI Flash սարքի չափը կանխադրված 1 ՄԲ -ից հասցվի 4 ՄԲ -ի, ինչը թույլ կտա բավարար տարածք տրամադրել IoT վեբ սերվերի ֆայլերին SPIFFS- ում պահելու համար:
Ես գնել եմ SMD SPI ֆլեշ սարքը (W25Q32FVSIG) Ebay- ից այստեղ
Ֆլեշը փոխարինելու համար ես ժամանակավորապես հեռացրեցի Sonoff LED- ն, ինչպես նկար 4 -ում, որպեսզի ավելի լավ մուտք ունենամ SMD սարքին: Ֆլեշը զոդելու համար ես օգտագործեցի ջերմային ատրճանակ, ինչպես ցույց է տրված վերևում 5-րդ նկարում: Այնուհետև կրկին զոդեք համապատասխանաբար 4 ՄԲ բայթը և LED- ը (նկար 6):
Քայլ 3. Շինարարության և հավաքման մանրամասները




Ես ցանցի կարգավորիչը փակեցի Mulitcomp BM12W ABS տուփի մեջ (նկ. 1 վերև): Այս պարիսպն ունի մեկուսացված պղնձե M3 ներդիրներ, որոնք թույլ են տալիս բազմակի մուտք գործել միավոր ՝ առանց վնասելու ամրացվող թելերը, որպեսզի անհրաժեշտության դեպքում ներքին ապահովիչը փոխարինվի կամ ժամանակի ընթացքում կատարվի ներքին զննում (նույնը չի կարելի ասել Sonoff սարքի համար, որը արդյունավետ կերպով փակվում է միայն մեկ անգամ ՝ օգտագործելով ինքնամեկուսիչ սարքեր):
Մատակարարման մալուխի հիմնական լարվածության թեթևացումը ձեռք է բերվել M16 նեյլոնե/պոլիամիդ 6/6 սպիտակ մալուխային գեղձի միջոցով, որն ապահովում է OD Min/Max 5 մմ/10 մմ մալուխը:
Երկրորդային լարվածության թեթևացումը մալուխի վրա տեղադրված մեկ ամրակապի միջոցով էր, եթե ավելորդ լարվածություն գործադրվեր, և մալուխային գեղձը խափանվեր, կայծակապը կպահի մալուխը տեղում:
Մալուխային խցուկներին տեղավորելու և Sonoff- ի և օպտո-մեկուսացման էլեկտրոնիկայի տեղադրման համար բավարար տարածք տրամադրելու համար ես հանեցի ներքին PCB- ի ամրացման կողերը, ինչպես ցույց է տրված վերևում (նկար 2):
Ամբողջ էլեկտրոնիկան ապահով կերպով ամրացված էր M3 նեյլոնե CS պտուտակների միջոցով `ապահովելու համար պատյանների արտաքին մասի մեկուսացումը: Օպտո-մեկուսացման էլեկտրոնիկան տեղադրվում է ամրացման 5 կետով `ձայնային մեխանիկական ուժը ապահովելու դեպքում, եթե սարքը գցվի` դրանով իսկ կանխելով մեկուսիչ տրանսֆորմատորի զանգվածի ճեղքումը տախտակի միացումից:
Սարքավորմանը մատակարարումը կատարվել է Միացյալ Թագավորության ստանդարտ գույնով ծածկված սպիտակ 3 միջուկով `PVC- ով մեկուսացված ցանցի բազմաշերտ (32/0.2 մմ քառ.) Մալուխ 1 մմ (քառ.) CSA: 7.2 մմ OD- ով, որը կարող է կրել 10A:
Սարքավորումը միացված էր Մեծ Բրիտանիայի հիմնական ցանցին (240VAC RMS) `ստանդարտ 3 փին անվտանգության խրոցակի (BS 1363/A) միջոցով: Խրոցը միացվել է 5 Ա -ում:
Օպտո-մեկուսացման միացման ցանցի միացման բոլոր մալուխները միացված էին pheonix contact MKDSN2, 5/3-5.08 պոլիամիդային տերմինալների միջոցով, 16A- ում, 400V- ով, որոնք ունակ են 2.5 մմ (քառակուսի) CSA մալուխ կրել, դրանով իսկ ապահովելով երկու մալուխների մեծ հզորություն: յուրաքանչյուր պաշտոն:
Noանցի մալուխներ չփաթաթված էին, պարզապես ոլորված էին, որպեսզի կանխեն միջուկների ցրվելը միակցիչի բլոկի մեջ մտնելուց առաջ: Maանցի մալուխների թիթեղացումը վտանգավոր պրակտիկա է, քանի որ ժամանակի ընթացքում զոդումը «հանգստանում է», ինչը հանգեցնում է մալուխի կորստի միակցիչի բլոկում:
Նշում:
- OD = Արտաքին տրամագիծ:
- VAC = Վոլտ փոփոխական հոսանք
- RMS = Արմատի միջին հրապարակ
- CSA = Միջգերատեսչական տարածք
- CS = Counter Sunk
Քայլ 4: Sonoff ծրագրավորման ադապտեր




Գոյություն ունի երկու ասպեկտ, որոնք պետք է հաշվի առնել Arduino IDE- ի միջոցով Sonoff 10A- ի վերակազմակերպման ժամանակ.
- Կարգավորեք ձեր Arduino IDE- ն ՝ ESP8266- ը ծրագրավորելու համար,
- Սարքավորման ծրագրավորման ակտն ինքնին:
Կարգավորեք ձեր Arduino IDE- ն ՝ ESP8266 ծրագիրը ծրագրավորելու համար
Ձեր Ardino IDE- ն կազմաձևելու համար հետևեք այստեղ տրված հրահանգներին: Arduino IDE- ի կարգավորում ESP8266-01 ծրագրավորման համար
Սարքավորման ծրագրավորում
Սա բազմաքայլ գործընթաց է, ինչպես ESP8266- ի դեպքում: Այստեղ Sonoff- ի հզորությունը կիրառվում է տախտակի վրա արտաքին կայունացված 3v3 DC հոսանքի միջոցով և ՈՉ ցանցից: USB- ին սերիական սարք կպահանջվի ՝ Sonoff- ին և դրանից տվյալները ուղարկելու և ստանալու համար: Միացրեք TX- ը և RX- ը, ինչպես ցույց է տրված նկար 2 -ում և 4 -ում:
Programրագրավորման քայլեր (ընդհանուր)
- Նախ համոզվեք, որ Sonoff- ի նկատմամբ արտաքին ցանցային էներգիա չի կիրառվում,
- Սեղմեք և պահեք Sonoff սարքի կոճակը: (նկար 1 վերևում, նշվում է կրկին բռնկման կոճակը),
- Կիրառեք արտաքին DC 3v3 մատակարարումը կապում 1 -ին (նկար 2 վերը),
- Ազատեք Sonoff կոճակը,
- Այժմ սարքը կարող է սովորական ծրագրով ծրագրավորվել Arduino IDE- ի միջոցով:
Ամեն ինչ մի փոքր ավելի հեշտ դարձնելու համար ես ստեղծեցի վերը նշված ծրագրավորման սարքը (նկարներ 3 և 4), որոնք միանում էին Sonoff- ին SK1… 3 մալուխային կապով (ինչպես նկարագրված է այս հրահանգելիք Քայլ 1 -ում): Սա թույլ տվեց ավելի հեշտ ծրագրավորել ESP8266- ը: Այն նաև տրամադրեց GPIO14- ի փորձարկման միջոց ՝ որպես մուտքագրում R1 և 4K7 ձգվող դիմադրիչի և S1 կոճակի միջոցով:
Օգտագործելով վերը նշված ծրագրավորման սարքը (նկարներ 3 և 4) Programրագրավորման քայլերն են ՝
- Սեղմեք և պահեք Sonoff- ի վրա կրկին բռնկման կոճակը,
- Ulարկերեք 3v3 մատակարարումը ՝ սեղմելով S2- ը,
- Ազատեք նորից բռնկման կոճակը,
- Այժմ սարքը կարող է ծրագրավորվել:
ՆՇՈՄ - ARԳՈՇԱՈՄ
ՈՉ մի դեպքում Սնոֆի վերակազմակերպման գործունեության ընթացքում հոսանքը պետք է մատակարարվի ցանցի միջոցով:
Քայլ 5: Softwareրագրային ապահովման համակարգի ակնարկ


Այս IoT ցանցի վերահսկիչ սարքը մեծ մասամբ պարունակում է ծրագրաշարի նույն վեց հիմնական բաղադրիչները, ինչպես Instructable WiFi IoT ջերմաստիճանի և խոնավության ցուցիչում: Մաս ՝ 8 IoT, Տան ավտոմատացում և ցուցադրված է վերը 1 -ի նկարում ՝ որոշ անհատականացումներով:
SPIFFS
Սա (արդիականացված է մինչև 4 ՄԲայթ) ներսից SPI Flash Filing System և օգտագործվում է հետևյալ տեղեկությունները պահելու համար (տե՛ս նկար 2 վերը);
- Սրբապատկերներ և «Mains Controller Configuration Home Page» html SPIFFS- ի նոր բովանդակություն վերագրանցելու կամ վերբեռնելու անհրաժեշտությունը:
- Անվտանգության տեղեկատվություն. Սա պարունակում է այն տեղեկությունները, որոնք օգտագործվում են IoT սարքի գործարկման ժամանակ ՝ ձեր IoT WiFi ցանցին և MQTT բրոքերին միանալու համար: «Mains Controller Configuration Home Page» - ի միջոցով ներկայացված տեղեկատվությունը գրված է այս ֆայլում («secvals.txt»):
Նշում. Սարքը նախապես կարգավորելու համար տե՛ս այստեղ ՝ Arduino IDE- ի հետ SPIFFS- ի օգտագործման ամբողջական մանրամասների համար:
mDNS սերվեր
Այս գործառույթը կոչվում է, երբ IoT սարքը չի կարողանում միանալ ձեր WiFi ցանցին որպես WiFi կայան և փոխարենը դարձել է WiFi մուտքի կետ, որը նման է ներքին WiFi երթուղիչին: Նման երթուղղիչի դեպքում դուք սովորաբար միանում եք դրան ՝ մուտքագրելով 192.168.1.1 -ի պես IP հասցեն (սովորաբար տպվում է տուփին ամրացված պիտակի վրա) անմիջապես ձեր դիտարկիչի URL- ի սանդղակում, որից հետո մուտքագրման էջ կստանաք: օգտվողի անունը և գաղտնաբառը, որը թույլ կտա ձեզ կարգավորել սարքը: AP ռեժիմում ESP8266- ի համար (Մուտքի կետի ռեժիմ) սարքը կանխադրված է 192.168.4.1 IP հասցեով, սակայն mDNS սերվերի հետ աշխատելու դեպքում միայն դիտարկիչի URL- ի սանդղակում պետք է մուտքագրել «MAINSCON.local» մարդասիրական անունը: 'Հիմնական վերահսկիչի կազմաձևման գլխավոր էջ':
MQTT հաճախորդ
MQTT հաճախորդը ապահովում է բոլոր անհրաժեշտ գործառույթները. միացեք ձեր IoT ցանցի MQTT բրոքերին, բաժանորդագրվեք ձեր ընտրած թեմաներին և հրապարակեք բեռնվածություն տվյալ թեմային: Մի խոսքով, այն ապահովում է IoT- ի հիմնական գործառույթները:
HTTP վեբ սերվեր
Ինչպես նշվեց վերևում, եթե IoT սարքն ի վիճակի չէ միանալ WiFi ցանցին, որի SSID, P/W և այլն սահմանված են SPIFFS- ում պահվող անվտանգության տեղեկատվության ֆայլում, սարքը կդառնա Access Point: Մուտքի կետի կողմից տրամադրված WiFi ցանցին միանալուց հետո, HTTP վեբ սերվերի առկայությունը թույլ է տալիս ուղղակիորեն միանալ սարքին և փոխել դրա կազմաձևը ՝ օգտագործելով HTTP վեբ զննարկչի միջոցով, որի նպատակն է ծառայել «Հիմնական վերահսկիչի կոնֆիգուրացիային» Գլխավոր էջի վեբ էջ, որը նույնպես պահվում է SPIFFS- ում:
WiFi կայան
Այս գործառույթը IoT սարքին տալիս է ներքին WiFi ցանցին միանալու հնարավորություն ՝ օգտագործելով Անվտանգության տեղեկատվության ֆայլում պարամետրերը, առանց դրա ձեր IoT սարքը չի կարողանա բաժանորդագրվել/հրապարակել MQTT բրոքերին
WiFi մուտքի կետ
WiFi մուտքի կետ դառնալու հնարավորությունն այն միջոցն է, որով IoT սարքը թույլ է տալիս միանալ դրան և կատարել կոնֆիգուրացիայի փոփոխություններ WiFi կայանի և դիտարկիչի միջոցով (օրինակ ՝ Safari- ն Apple iPad- ում): Այս մուտքի կետը հեռարձակում է SSID = "MAINSCON" + IoT սարքի MAC հասցեի վերջին 6 թվանշանները: Այս փակ ցանցի գաղտնաբառը երևակայությամբ կոչվում է «PASSWORD»:
Քայլ 6: Softwareրագրաշարի ակնարկ




Այս աղբյուրի կոդը հաջողությամբ կազմելու համար ձեզ հարկավոր կլինեն հետևյալ լրացուցիչ գրադարանները.
PubSubClient.h
- Հեղինակ ՝ Նիկ Օ'Լիրի
- Նպատակը. Սարքին հնարավորություն է տալիս տվյալ բրոքերի հետ հրապարակել կամ բաժանորդագրվել MQTT թեմաներին
- Սկսած ՝
Վերադարձ 2. ժ
- Հեղինակ ՝ Թոմաս Օ Ֆրեդերիկս
- Նպատակը. Putրագրային ապահովման մեջ մուտքային անջատիչի դե-ցատկում
- Սկսած ՝
Կոդի ակնարկ
Theրագիրը օգտագործում է պետական մեքենան, ինչպես ցույց է տրված վերևում 1-ին նկարում (ստորև բերված աղբյուրի ամբողջական պատճենը): Գոյություն ունի 5 հիմնական վիճակ հետևյալ կերպ.
-
INIT
Այս նախաստորագրման վիճակը առաջին վիճակն է, որը մտել է հոսանքի անջատումից հետո:
-
ՈՉ
Այս վիճակը մուտքագրվում է, եթե միացնելուց հետո անվավեր կամ բացակայող secvals.txt ֆայլը հայտնաբերվի
-
ՍՊԱՍՈՄ Ք. W
Այս վիճակը անցողիկ է, մուտքագրվում է մինչ WiFi ցանցի կապ չկա
-
Սպասող MQTT
Այս վիճակը անցողիկ է, մուտքագրվում է WiFi ցանցի միացումից հետո, և մինչդեռ որևէ կապ չկա այդ ցանցի MQTT բրոքերի հետ:
-
ԱԿՏԻՎ
Սա սովորական գործառնական վիճակն է, որը մուտքագրվում է ինչպես WiFi ցանցի, այնպես էլ MQTT բրոքերային կապի հաստատումից հետո: Այս վիճակի ընթացքում Mains Controller- ը կհրապարակի MQTT բրոքերին և կստանա հրամաններ բաժանորդագրված թեմաների միջոցով:
Նահանգների միջև անցումները վերահսկող իրադարձությունները նկարագրված են վերը նշված 1 -ին նկարում: Նահանգների միջև անցումները կարգավորվում են նաև SecVals- ի հետևյալ պարամետրերով.
- 1 -ին MQTT բրոքերի IP հասցեն: Կետավոր տասնորդական տեսքով AAA. BBB. CCC. DDD
- 2 -րդ MQTT բրոքերային նավահանգիստ: Ամբողջական տեսքով:
- 3 -րդ MQTT բրոքերային կապը փորձում է կատարել STA ռեժիմից AP ռեժիմի անցնելուց առաջ: Ամբողջական տեսքով:
- 4 -րդ WiFi ցանցի SSID: Ազատ տեքստով:
- WiFi ցանցի 5 -րդ գաղտնաբառ: Ազատ տեքստով:
Ինչպես նշվեց վերևում, եթե IoT սարքն ի վիճակի չէ որպես WiFi կայան միանալ WiFi ցանցին, որի SSID- ը և P/W- ն սահմանված են secvals- ում: SPIFFS- ում պահվող տեքստը սարքը կդառնա Access Point: Այս մուտքի կետին միանալուց հետո այն կծառայի «Mains Controller Configuration Home Page» - ի վրա, ինչպես ցույց է տրված վերևում ՝ 2 -րդ նկարում (մուտքագրելով «MAINSCON.local» կամ 192.168.4.1 ձեր դիտարկիչների URL հասցեների բարում): Այս գլխավոր էջը թույլ է տալիս ցանցի վերահսկիչի վերակազմավորում HTTP բրաուզերի միջոցով:
MQTT Թեմայի անվանման կոնվենցիա
Վերոնշյալ 3 -րդ նկարում նկարագրված է MQTT թեմաների համար օգտագործվող անվանման պայմանագիրը և համահունչ է իմ ավելի վաղ Instructable- ում օգտագործված օրինակին (այստեղ Քայլ 5):
MQTT Այս IoT սարքի օգտագործած թեմաները
Հստակության համար ես փաստաթղթավորել եմ (նկար 4) այն թեմաները և հարակից հաղորդագրությունների հաջորդականությունները, որոնք այս սարքը հրապարակում/բաժանորդագրվում է: Նկարը նաև պատկերում է պարիսպի արտաքին մասի սպիտակ կառավարման կոճակի հետ փոխազդեցությունը (չնայած հեգնանքով, կոճակը կարմիր գույնով է ցուցադրվում):
Հեռավոր կազմաձևման հասանելիություն, մինչդեռ այն գտնվում է ԱԿՏԻՎ վիճակում
MQTT բրոքերին միանալուց հետո հնարավոր է հեռակա կարգավորել սարքի անվտանգության պարամետրերը ՝ MQTT թեմայի հրապարակումների միջոցով: Առնչվող ֆայլը secvals.txt- ում բաց է միայն գրելու հասանելիությունը:
Օգտվողի վրիպազերծում
Բեռնման հաջորդականության ընթացքում Sonoff սարքը տանում է հետևյալ վրիպազերծման հետադարձ կապը, չնայած հարկ է նշել, որ դա տեսնելու համար հարկավոր է հանել ծածկը և միացնել սխեմաները, ուստի դա խորհուրդ է տրվում անել միայն ծածկագիրը մշակելիս և սարքը միացնելիս: 3v3 մատակարարմամբ;
- 1 Կարճ բռնկում. Ոչ մի կազմաձևման ֆայլ, որը գտնվում է SPIFFS- ում (secvals.txt),
- 2 Կարճ բռնկում. IoT սարքը փորձում է միանալ WiFi ցանցին,
- Շարունակական լուսավորություն. Sonoff IoT սարքը փորձում է միանալ MQTT բրոքերին,
- Անջատված է. Սարքն ակտիվ է և միացված է MQTT բրոքերին:
Նշում 1. «Հիմնական վերահսկիչի կազմաձևման հիմնական էջը» չի օգտագործում ապահով վարդակներ, ուստի ապավինում է ձեր ցանցի անվտանգ լինելուն:
Նշում 2. IoT բազմաթիվ սարքեր ծրագրավորելու համար MQTT տողը կպահանջի խմբագրում ՝ նախքան յուրաքանչյուր սարքում ներբեռնելը: Դա պայմանավորված է նրանով, որ ցանցի վերահսկիչի id համարը ներդրված է MQTT թեմայի տողում: այսինքն. հրապարակված ծրագրաշարում ես ընտրել եմ 100 արժեքը ՝ «WFD/MainsCont/100/Relay/Command/1», և իմ 2 սարքերի համար դրանք համապատասխանաբար համարակալված են 1 և 2:
- 'WFD/MainsCont/1/փոխանցում/հրաման/1'
- 'WFD/MainsCont/2/փոխանցում/հրաման/1'
Noteանոթագրություն 3. Ակտիվության դեպքում IoT ծրագրաշարը ամբողջականության համար թույլ է տալիս վերահսկել Sonoff LED- ը և հրապարակել կրկին բռնկման կոճակի կարգավիճակը: Թեև դրանք արժեք են ներկայացնում միայն վրիպազերծման գործընթացի ընթացքում, քանի որ բնականոն աշխատանքի ընթացքում ոչ մեկը չի ենթարկվում օգտագործողին:
Քայլ 7: OpenHAB կազմաձևում



Փորձարկման նպատակով ես որոշեցի մտայնորեն տեղակայել երկու հիմնական վերահսկիչ իմ տան «Հյուրասենյակում»: Այս OpenHAB էջին կարելի է հասնել կայքի հիմնական էջի միջոցով, ինչպես նկար 1 -ում:
Ես փոփոխեցի OpenHAB.sitemap կոնֆիգուրացիան, որը տրված էր իմ ավելի վաղ Instructable- ում (այստեղ) և ավելացրել էի առանձին գրառումներ 'Mains Controller 1' և 'Mains Controller 2' (նկ. 2 վերև): Ես նաև ավելացրեցի գրառումներ (Ննջասենյակի հիմնական բովանդակություն ՝ 1 և 2) ՝ RSSI միտումները ցուցադրելու համար, որոնք չափվում են երկու նոր IoT սարքերի ընդունիչում (նկար 3):
Վերջապես. 2 -րդ նկարը բերում է MC1 ակտիվ և MC2 անգործուն օրինակ:
Նշում 1. Եթե վստահ չեք, թե ինչպես օգտագործել OpenHAB- ը, տե՛ս այստեղ ՝ OpenHAB- ի կարգավորում և կարգավորում: Մաս 6: IoT, տան ավտոմատացում '
Նշում 2. Փոփոխված կայքի քարտեզի, կանոնների և տարրերի ֆայլերի, սրբապատկերների և այլնի պատճենը տրվում է ստորև բերված zip ֆայլում:
Նշում 3. RSSI = Ստացված ազդանշանի ուժի ցուցում: Սա չափիչ է, թե որքանով է IoT սարքը կարող տեսնել ձեր WiFi ցանցը:
Քայլ 8: Փորձարկեք ձեր IoT սարքը



Ինչպես նկարագրված է Instructable WiFi IoT ջերմաստիճանի և խոնավության ցուցիչում: Մաս ՝ 8 IoT, Տան ավտոմատացում Քայլ 7, IoT սարքի նախնական փորձարկումն իրականացվել է MQTT Spy- ի միջոցով MQTT միացման միջոցով (ինչպես համակարգի վերևում ՝ նկար 1-ում), լուսադիոդային ելքի մոնիտորինգ, կոճակների մուտքեր (երկուսն էլ ՝ Sonoff- ի վերալիցքավորման կոճակը և սպիտակ արտաքին կոճակը) և կարգաբերել երթևեկությունը սերիական ինտերֆեյսի վրա: Սա ինձ թույլ տվեց օգտվել առկա բոլոր բաժանորդագրված թեմաներից և ստուգել հրապարակված պատասխանները: Չնայած կրկին, սա ձեռքով էր իրականացվում և ժամանակատար էր, չնայած այն հնարավորություն էր տալիս 100% -ով լուսաբանել հաղորդագրությունների/թեմայի հրապարակումները:
Քանի որ հիմնական ծրագրակազմի պետական մեքենան (Քայլ 6 վերը) ժառանգվել է ավելի վաղ Instructable- ից (Մաս 8), բացի ողջամտությունից, ծրագրակազմը կարող էր միանալ WiFi N/W և MQTT բրոքերին, ենթադրվում էր, որ այն ճիշտ է գործում:
Համակարգի մակարդակի ամբողջական փորձարկումն այնուհետև ավարտվեց ցանցի վերահսկիչի և IoT ենթակառուցվածքի միջոցով (կրկին նկար 1) այս անգամ OpenHAB- ի միջոցով `IoT սարքի հետ փոխազդեցությունը վերահսկելու համար: IoT ապարատային սարքավորումները և տեղադրված բեռը կարելի է տեսնել վերը նշված 2 -րդ նկարում:
Տեսանյութը տալիս է համակարգի թեստերի ամբողջական մանրամասները և հստակ ցույց է տալիս, որ համաժամացումը պահպանվում է OpenHAB սարքերի (PC/Chrome և iPad/OpenHAB APP) միջև իրական ժամանակում: Այն նաև ցույց է տալիս MQTTSpy- ի միջոցով հիմնական վերահսկիչներին ուղիղ հաղորդագրություններ (տե՛ս այստեղ ՝ MQTT բրոքեր ստեղծելու լրացուցիչ մանրամասների համար: Մաս 2. IoT, տան ավտոմատացում) և OpenHAB պոչային համակարգի տեղեկամատյան ազնվամորու pi սերվերից ՝ PuTTY SSH միացման միջոցով (տե՛ս այստեղ մանրամասներ OpenHAB- ի կարգավորում և կարգավորում: Մաս 6. IoT, տան ավտոմատացում):
Նշում. Վրիպազերծման երթևեկը կազմվել է ծրագրաշարի վերջին թողարկման համար:
Քայլ 9: Եզրակացություն
Գեներալ
Նախագիծը համեմատաբար հեշտ էր ավարտել և լավ աշխատեց: Ներկառուցված ծրագրաշարը հեշտ էր արտադրել ՝ հանդիսանալով այս շարքի 8 -րդ մասի ջերմաստիճանի և խոնավության տվիչների համար օգտագործվող ծածկագրի կրճատված տարբերակը:
Սկզբում ես մտադիր էի ձեռք բերել միայն սպիտակ բաղադրամասեր `զուտ իրենց գեղագիտական որակի համար: Ես դրան հասա բոլորում, բացի կառավարման կոճակից, փորձեք որքան կարող էի, ես չկարողացա լավ/էժան ամբողջովին սպիտակ կոճակ բերել:
Sonoff 10A սարք
Ստորև թվարկել եմ Sonoff սարքի ողջամիտ դրական և բացասական կողմերը
Կողմ
- Էժան:
- Լավ համայնքային աջակցություն:
- Կարող է վերագրանցել Arduino IDE- ի միջոցով:
Մինուսներ
- Անշուք պարիսպ:
- Նվազագույն մուտք/ելք (դուրս բերված օգտագործելի միակցիչների մոտ):
- Այն տաք է աշխատում իր հանգիստ վիճակում:
- Ունի ընդամենը 1 ՄԲ բայթ SPI ֆլեշ:
- Արդյո՞ք PITA- ն մեկ անգամ միացված տեղում կվերածրագրավորի:
- Sonoff- ի փորձարկման մեջ նոր ծածկագիրը միացնելիս ռելեի փակումը պրոբլեմատիկ էր `հաշվի առնելով, որ ռելեդը 5 վ է, իսկ Sonoff- ին կիրառվող մատակարարումը` 3v3: Ռելեի ակտիվացումը միայն ընկալելի է ականջի համար:
Վերաբերում է
- Այն չի փոխում չեզոք գիծը: Օգտագործում է SPST ռելե:
- Միաձուլված չէ
- Վատ մալուխային լարվածության թեթևացում:
- PCB- ն ապահովված չէ Sonoff- ի պատյանում:
Մեկնաբանություն ինժեներական նախագծման վերաբերյալ
Հաշվի առնելով, որ այս IoT սարքը պետք է օգտագործվեր Մեծ Բրիտանիայի հիմնական ցանցը փոխելու համար (240VAC RMS) Ես հետևել եմ ինչպես մեխանիկական, այնպես էլ էլեկտրական նախագծման լավ պրակտիկային և ապահովել եմ ցնցումների վտանգը նվազագույնի հասցնելով ՝ չբացահայտելով ոչ մի էլեկտրական հաղորդիչ նյութ, բոլոր բաղադրիչների ճշգրտման, վարկանիշի նվազեցման: ելքային ծանրաբեռնվածություն, ապահովիչների պաշտպանություն ինչպես ցանցի վերահսկիչին, այնպես էլ օպտո-համակցված ենթահամակարգին, լավ անխափան հողանցման ներառումը և օպտիկական/գալվանական մեկուսացման օգտագործումը:
Հնարավոր բարելավում
Հետադարձ հայացքով օգտակար կլիներ ներառել տեսողական ցուցում, որի համաձայն հիմնական ցանցի վերահսկիչի ելքը ակտիվ էր (LED կամ նեոն): Թեև դա ամենօրյա օգտագործման խնդիր չէ, քանի որ սովորական պրակտիկա է բեռը մատակարարումից մեկուսացնելը նախքան որևէ սպասարկում իրականացնելը, կամ տեղական կառավարման կոճակի պարզ սեղմումը կփոխի ելքը այն դեպքում, երբ լամպը կարող է վառվել միացված վիճակում:
Վերջնական նշում
Եթե ցանկանում եք տեսնել ցանցի էլեկտրամատակարարման հետ կապված երկու շատ վատ օրինակներ, ստուգեք ստորև բերված հղումները: Նրանց Darwin մրցանակները շատ շուտով կհրապարակվեն, ես լիովին վստահ եմ.
- Mad Scientist Extension Cord
- Համայնքի հետադարձ կապ 03 - Էլեկտրաէներգիայի անվտանգության մտահոգություններ:
Քայլ 10: Օգտագործված հղումներ
Ես օգտագործել եմ հետևյալ աղբյուրները `այս Instructable- ը համատեղելու համար.
PubSubClient.h
- Հեղինակ ՝ Նիկ Օ'Լիրի
- Նպատակը. Սարքին հնարավորություն է տալիս տվյալ բրոքերի հետ հրապարակել կամ բաժանորդագրվել MQTT թեմաներին
- Սկսած ՝
Վերադարձ 2. ժ
- Հեղինակ ՝ Թոմաս Օ Ֆրեդերիկս
- Նպատակը. Putրագրային ապահովման մեջ մուտքային անջատիչի դե-ցատկում
- Սկսած ՝
SPIFFS
https://esp8266.github.io/Arduino/versions/2.0.0/do…
Sonoff ֆլեշի արդիականացում
- https://www.andremiller.net/content/upgrading-sonof…
- https://tech.scargill.net/32mb-esp01/
- https://www.andremiller.net/content/upgrading-sonof…
Sonoff սխեմայի դիագրամ
https://www.itead.cc/wiki/images/6/6b/Sonoff_schmatic.pdf
USB UART մոդուլ (aka. FTDI)
https://www.ebay.co.uk/itm/6Pin-USB-2-0-to-TTL-UART-Module-Converter-CP2102-STC-Replace-FT232-CF-/272249732398?epid=503069058&hash=item3f6359: g: QVUAAOSw71BXP92B
Դարվինի մրցանակներ (թեթև օգնություն)
https://www.darwinawards.com/
TIL111 Օպտո-մեկուսիչ տվյալների թերթիկ
Խորհուրդ ենք տալիս:
Ինչպես կատարել IoT- ի վրա հիմնված տան ավտոմատացում NodeMCU սենսորների կառավարման ռելեի միջոցով. 14 քայլ (նկարներով)

Ինչպես կատարել IoT- ի վրա հիմնված տան ավտոմատացում NodeMCU սենսորների կառավարման ռելեի միջոցով. IoT- ի վրա հիմնված այս նախագծում ես Blynk- ով և NodeMCU կառավարման ռելեի մոդուլով իրական տնային ավտոմատացում իրական ժամանակի հետադարձ կապով: Ձեռնարկի ռեժիմում այս ռելեի մոդուլը կարող է կառավարվել բջջայինից կամ սմարթֆոնից և, ձեռքով անջատիչից: Ավտոմատ ռեժիմում այս սարսափը
Տան ավտոմատացում ՝ օգտագործելով Raspberry Pi Matrix Voice և Snips (Մաս 2). 8 քայլ

Տնային ավտոմատացում ՝ օգտագործելով Raspberry Pi Matrix Ձայնը և Snips (Մաս 2). Տան ավտոմատացման թարմացում Raspberry Pi Matrix Ձայնի և Snips- ի միջոցով: Այս PWM- ն օգտագործվում է արտաքին LED- ների և Servo շարժիչների վերահսկման համար 1-ին մասում տրված բոլոր մանրամասները https://www.instructables.com/id/Controlling-Light
Retro խոսքի սինթեզ: Մաս ՝ 12 IoT, տան ավտոմատացում ՝ 12 քայլ (նկարներով)

Retro խոսքի սինթեզ: Մաս ՝ 12 IoT, տնային ավտոմատացում. Այս հոդվածը 12 -րդն է տնային ավտոմատացման վերաբերյալ ցուցումների շարքում, որոնք փաստում են, թե ինչպես կարելի է ստեղծել և ինտեգրել IoT Retro խոսքի սինթեզի սարք գոյություն ունեցող տան ավտոմատացման համակարգում, ներառյալ բոլոր անհրաժեշտ ծրագրային գործառույթները, որոնք հնարավորություն են տալիս
[Տան ավտոմատացում] Վերահսկիչ ռելեներ ամենուրից ESP8266 + Blynk- ի միջոցով. 4 քայլ
![[Տան ավտոմատացում] Վերահսկիչ ռելեներ ամենուրից ESP8266 + Blynk- ի միջոցով. 4 քայլ [Տան ավտոմատացում] Վերահսկիչ ռելեներ ամենուրից ESP8266 + Blynk- ի միջոցով. 4 քայլ](https://i.howwhatproduce.com/images/006/image-16347-42-j.webp)
[Տնային ավտոմատացում] ESP8266 + Blynk- ի միջոցով ամենուրեք տեղադրվող կառավարման ռելեներ. Տան ավտոմատացում կատարելու բազմաթիվ եղանակներ կան, ոմանք `բարդ, ոմանք` հեշտ: Հարմարավետության համար դիզայնը միակողմանի PCB էր, այնպես որ կարող եք կատարել ձեր վաճառքով
WiFi IoT ջերմաստիճանի և խոնավության ցուցիչ: Մաս ՝ 8 ՏՏ, Տան ավտոմատացում ՝ 9 Քայլ

WiFi IoT ջերմաստիճանի և խոնավության ցուցիչ: Մաս ՝ 8 IoT, Տնային ավտոմատացում. Նախաբան Այս հոդվածը փաստում է ավելի վաղ Instructable- ի գործնական կոպտությունը և հետագա զարգացումը. «Կավատացնել» ձեր առաջին IoT WiFi սարքը: Մաս 4: IoT, տան ավտոմատացում, ներառյալ բոլոր անհրաժեշտ ծրագրային գործառույթները `հաջողությունը միացնելու համար