ULytko uyahlanganisa

Esikhathini esidlule sakwethula i-thermostat ehlakaniphile. Lesi sihloko ekuqaleni sasihloselwe ukuboniswa kwe-firmware kanye nesistimu yokulawula. Kodwa ukuze uchaze i-logic ye-thermostat kanye nalokho esikusebenzisile, kuyadingeka ukuveza wonke umqondo uwonke.

ULytko uyahlanganisa

Mayelana ne-automation

Ngokujwayelekile, konke okuzenzakalelayo kungahlukaniswa ngezigaba ezintathu:
Isigaba 1 — hlukanisa izisetshenziswa “ezihlakaniphile”. Uthenga amalambu, izimbiza zetiye, njll. kubakhiqizi abahlukene. Izinzuzo: Idivayisi ngayinye inweba amakhono futhi yandise ukunethezeka. Ububi: Umkhiqizi omusha ngamunye udinga uhlelo lwakhe lokusebenza. Amaphrothokholi amadivaysi avela kubakhiqizi abahlukene ngokuvamile awahambelani.

Isigaba 2 - ukufakwa kwe-PC enebhodi elilodwa noma i-x86 ehambisanayo. Lokhu kususa imikhawulo emandleni ekhompiyutha, futhi i-MajorDoMo nanoma yikuphi ukusatshalaliswa kweseva yokuphatha ikhaya elihlakaniphile kufakwa kulo mshini. Ngakho, amadivayisi avela kubakhiqizi abaningi axhunywe endaweni eyodwa yolwazi. Labo. Iseva yakho yekhaya elihlakaniphile iyavela. Izinzuzo: ukuhambisana ngaphansi kwesikhungo esisodwa, esihlinzeka ngamakhono okuphatha athuthukisiwe. Ububi: uma iseva ihluleka, lonke uhlelo lubuyela esigabeni 1, i.e. iba yizicucu noma ibe yize.

Isigaba 3 - inketho eqinile kakhulu. Esigabeni sokulungisa, konke ukuxhumana kuyabekwa futhi zonke izinhlelo ziyaphindwa. Izinzuzo: yonke into ilethwa ekupheleleni bese indlu ihlakaniphe ngempela. Ukungalungi: kubiza kakhulu uma kuqhathaniswa nezigaba 1 no-2, isidingo sokucabanga ngakho konke kusengaphambili futhi ucabangele yonke imininingwane encane.

Abasebenzisi abaningi bakhetha inketho yokuqala bese bedlulela kokubili ngokushelelayo. Bese kuthi abaphikelela kakhulu bafinyelele inketho 3.

Kodwa kukhona inketho engabizwa ngokuthi uhlelo olusabalalisiwe: idivayisi ngayinye izoba yiseva kanye neklayenti. Ngokuyinhloko, lokhu kuwumzamo wokuthatha futhi uhlanganise inketho 1 kanye nenketho 2. Thatha zonke izinzuzo zabo futhi uqede ukubi, ukubamba incazelo yegolide.

Mhlawumbe othile uzothi inketho enjalo isivele yathuthukiswa. Kodwa izinqumo ezinjalo zigxile kancane; eyabantu abanolwazi ezinhlelweni. Umgomo wethu uwukwehlisa isithiyo sokungena kumasistimu anjalo asabalalisiwe, kokubili ngendlela yamadivayisi wokugcina kanye nangendlela yokuhlanganisa amadivayisi akhona kusistimu yethu. Endabeni ye-thermostat, umsebenzisi umane asuse i-thermostat yakhe endala, afake ehlakaniphile, futhi axhume izinzwa zakhe ezikhona kuyo. Ngaphandle kwezinyathelo ezengeziwe.

Ake sibheke ukuhlanganiswa kusistimu yethu sisebenzisa isibonelo.

Ake sicabange ukuthi sinamamojula angu-8 eSonoff kunethiwekhi yethu. Kubasebenzisi abathile, ukulawula ngefu le-Sonoff (isigaba 1) kuzokwanela. Abanye bazoqala ukusebenzisa i-firmware yenkampani yangaphandle futhi bazongena kahle esigabeni 2. Inqwaba ye-firmware yenkampani yangaphandle isebenza ngesimiso esifanayo: ukudlulisa idatha kuseva ye-MQTT. I-OpenHub, i-Majordomo nanoma iyiphi enye isebenzela injongo eyodwa - ukuhlanganisa amadivayisi ahlukene abe endaweni eyodwa yolwazi etholakala ku-inthanethi noma kunethiwekhi yendawo. Ngakho-ke, ukuba khona Kweseva kuyisibopho. Yilapho kuphakama inkinga enkulu - uma Iseva yehluleka, lonke uhlelo luyayeka ukusebenza ngokuzenzakalelayo. Ukuze uvimbele lokhu, amasistimu aba yinkimbinkimbi kakhulu, izindlela zokulawula ezenziwa ngesandla ziyengezwa eziphindaphinda i-automation uma kwenzeka Iseva yehluleka.

Sithathe indlela ehlukile, lapho idivayisi ngayinye ikwazi ukuzimela. Ngakho, Iseva ayidlali indima ewujuqu, kodwa yandisa kuphela ukusebenza.

Ake sibuyele ekuhlolweni komcabango. Masiphinde sithathe amamojula angu-8 eSonoff afanayo futhi futhi sifake i-Lytko firmware kuwo. Wonke ama-firmware e-Lytko anomsebenzi I-SSDP. I-SSDP iyiphrothokholi yenethiwekhi esuselwe kuhlelo lwephrothokholi ye-inthanethi yokukhangisa nokutholwa kwamasevisi enethiwekhi. Impendulo yesicelo ingaba ejwayelekile noma inwetshwe. Ngaphezu kwemisebenzi ejwayelekile, kule mpendulo sifake ukudalwa kohlu lwamadivayisi kunethiwekhi. Ngakho-ke, amadivaysi ngokwawo atholana, futhi ngamunye wabo uzoba nohlu olunjalo. Isibonelo seshidi le-SSDP:

"ssdpList": 
	{
		"id": 94967291,  
		"ip": "192.168.x.x",
                "type": "thermostat"
	}, 
	{
		"id": 94967282,
		"ip": "192.168.x.x",
                "type": "thermostat"
	}

Njengoba ubona esibonelweni, uhlu luhlanganisa omazisi bedivayisi, ikheli le-IP kunethiwekhi, uhlobo lweyunithi (kithi, i-thermostat esekelwe ku-Sonoff). Lolu hlu lubuyekezwa kanye njalo emizuzwini emibili (lesi sikhathi sanele ukuphendula izinguquko eziguquguqukayo enanini lamadivayisi akunethiwekhi). Ngale ndlela, silandelela amadivayisi engeziwe, ashintshiwe, futhi akhutshaziwe ngaphandle kwanoma yisiphi isenzo somsebenzisi. Lolu hlu luthunyelwa esipheqululini noma kuhlelo lokusebenza lweselula, futhi umbhalo ngokwawo ukhiqiza ikhasi elinenombolo enikeziwe yamabhulokhi. Ibhulokhi ngayinye ihambisana nedivayisi/inzwa/isilawuli esisodwa. Ngokubukeka uhlu lubukeka kanje:

ULytko uyahlanganisa

Kodwa kuthiwani uma ezinye izinzwa zomsakazo zixhunywe ku-esp8266/esp32 nge-cc2530 (ZigBee) noma i-nrf24 (MySensors)?

Mayelana namaphrojekthi

Kunamasistimu ahlukene asabalalisiwe emakethe. Isistimu yethu ikuvumela ukuthi uhlanganise nezidume kakhulu.

Ngezansi kukhona amaphrojekthi ayindlela eyodwa noma enye ezama ukuguqula isimo ngokungahambisani kwabakhiqizi abahlukene komunye nomunye. Lokhu, isibonelo, Isango le-SLS, Izinzwa zami noma I-ZESP32. I-ZigBee2MQTT iboshelwe kuseva ye-MQTT, ngakho-ke ayifanele isibonelo.

Inketho eyodwa yokusebenzisa i-MySensors isango elisuselwa ku-ESP8266. Ezinye izibonelo ziku-ESP32. Futhi kuzo ungasebenzisa isimiso sethu sokusebenza sokuthola nokudala uhlu lwamadivayisi.

Asenze esinye isilingo somcabango. Sinesango le-ZESP32 noma i-SLS Gateway, noma i-MySensors. Zingahlanganiswa kanjani endaweni eyodwa yolwazi? Sizongeza ilabhulali yephrothokholi ye-SSDP emisebenzini evamile yala masango. Uma ufinyelela lesi silawuli nge-SSDP, sizongeza uhlu lwamadivayisi axhunywe kuso ekuphenduleni okujwayelekile. Ngokusekelwe kulolu lwazi, isiphequluli sizokhiqiza ikhasi. Ngokuvamile kuzobukeka kanje:

ULytko uyahlanganisa
Isixhumi esibonakalayo sewebhu

ULytko uyahlanganisa
Isicelo se-PWA

"ssdpList": 
{
   "id": 94967291, // уникальный идентификатор устройства
   "ip": "192.168.x.x", // ip адрес в сети
   "type": "thermostat" // тип устройства
},
{
   "id": 94967292,
   "ip": "192.168.x.x",
   "type": "thermostat"
},
{
   "id": 94967293,
   "ip": "192.168.x.x",
   "type": "thermostat"
},
{  
   "id": 13587532, 
   "type": "switch"  
},
{  
   "id": 98412557, 
   "type": "smoke"
},
{  
   "id": 57995113, 
   "type": "contact_sensor"
},
{  
   "id": 74123668,
   "type": "temperature_humidity_pressure_sensor"
},
{
    "id": 74621883, 
    "type": "temperature_humidity_sensor"
}

Isibonelo sibonisa ukuthi amadivayisi angezwa ngaphandle kwamanye. Ama-thermostat angu-3 anamakheli awo e-IP kanye nezinzwa ezi-5 ezihlukene ezinama-ID ahlukile axhunyiwe. Uma inzwa ixhunywe kunethiwekhi ye-Wi-Fi, izoba ne-IP yayo; uma ixhunywe esangweni, khona-ke ikheli le-IP ledivayisi lizoba ikheli le-IP lesango.

Sisebenzisa i-WebSocket ukuxhumana namadivayisi. Lokhu kukuvumela ukuthi unciphise izindleko zensiza uma kuqhathaniswa nokuthola izicelo futhi uthole ulwazi ngokuguquguqukayo lapho uxhuma noma ushintsha.

Idatha ithathwa ngokuqondile kudivayisi lapho ibhulokhi iyingxenye yayo, ngokudlula iseva. Ngakho-ke, uma noma iyiphi yamadivayisi ehluleka, isistimu iyaqhubeka nokusebenza. I-interface yewebhu ayibonisi idivayisi engekho ohlwini. Kodwa isibonakaliso mayelana nokulahlekelwa, uma kunesidingo, sizofika ngendlela yesaziso kuhlelo lokusebenza lomsebenzisi.

Umzamo wokuqala wokusebenzisa le ndlela kwaba isicelo se-PWA. Lokhu kukuvumela ukuthi ugcine isisekelo se-block kudivayisi yomsebenzisi futhi ucele idatha edingekayo kuphela. Kodwa ngenxa yezici zesakhiwo, le nketho ayiphelele. Futhi kunendlela eyodwa kuphela yokuphuma - uhlelo lokusebenza lwendabuko lwe-Android ne-IOS, okwamanje olungaphansi kokuthuthukiswa okusebenzayo. Ngokuzenzakalelayo, uhlelo lokusebenza luzosebenza kuphela kunethiwekhi yangaphakathi. Uma kunesidingo, ungadlulisela konke ekulawuleni kwangaphandle. Ngakho-ke, lapho umsebenzisi eshiya inethiwekhi yendawo, uhlelo lokusebenza lushintshela efwini ngokuzenzakalelayo.

Ukulawula kwangaphandle - ukuphindaphinda okuphelele kwekhasi. Uma ikhasi lenziwe lasebenza, umsebenzisi angangena kuseva futhi aphathe amadivayisi nge-akhawunti yakhe yomuntu siqu. Ngakho, Iseva inweba ukusebenza kwayo, ikuvumela ukuthi uphathe amadivayisi ngenkathi ungaphandle kwekhaya, futhi ingaboshelwa ekudluliseleni ngembobo noma i-IP ezinikele.

Ngakho-ke, inketho engenhla ayinakho ukungalungi kwendlela yeseva, futhi inezinzuzo eziningi ngendlela yokuguquguquka ekuxhumeni amadivayisi amasha.

Mayelana ne-thermostat

Ake sibheke isistimu yokulawula sisebenzisa i-thermostat yethu njengesibonelo.

Kunikeziwe:

  1. Ukulawulwa kwezinga lokushisa kwe-thermostat ngayinye (kuboniswa njengebhulokhi ehlukile);
  2. Ukusetha uhlelo lokusebenza lwe-thermostat (ekuseni, ntambama, kusihlwa, ebusuku);
  3. Ukukhetha inethiwekhi ye-Wi-Fi nokuxhuma idivayisi kuyo;
  4. Ukubuyekeza idivayisi “emoyeni”;
  5. Ukusetha i-MQTT;
  6. Lungiselela inethiwekhi lapho idivayisi ixhumeke khona.

ULytko uyahlanganisa

Ngaphezu kokulawula ngesixhumi esibonakalayo sewebhu, sinikeze eyakudala - ngokuchofoza esibukweni. Kukhona imonitha ye-Nextion NX3224T024 2.4-intshi ebhodini. Ukukhetha kwawela kuye ngenxa yokulula ukusebenza nedivayisi. Kodwa sakha i-monitor yethu ngokusekelwe ku-STM32. Ukusebenza kwayo akukubi kakhulu kunalokho kwe-Nextion, kodwa kuzobiza kancane, okuzoba nomthelela omuhle ngentengo yokugcina yedivayisi.

ULytko uyahlanganisa

Njenganoma yisiphi isikrini se-thermostat esizihloniphayo, i-Nextion yethu ingakwazi:

  • setha izinga lokushisa elidingwa umsebenzisi (usebenzisa izinkinobho ezingakwesokudla);
  • vula futhi uvale imodi yokusebenza ehleliwe (inkinobho H);
  • bonisa ukusebenza kwe-relay (umcibisholo ongakwesokunxele);
  • inokuvikelwa kwengane (ukuchofoza ngokomzimba kuvinjelwe kuze kukhishwe ukukhiya);
  • ibonisa amandla esignali ye-WiFi.

Ngaphezu kwalokho, usebenzisa i-monitor ungakwazi:

  • khetha uhlobo lwenzwa olufakwe ngumsebenzisi;
  • phatha isici sokukhiya ingane;
  • buyekeza i-firmware.

ULytko uyahlanganisa

Ngokuchofoza ibha ye-WiFi, umsebenzisi uzothola ulwazi mayelana nenethiwekhi exhunyiwe. Ikhodi ye-QR isetshenziselwa ukubhanqa idivayisi ku-firmware ye-HomeKit.

ULytko uyahlanganisa

Idemo yokusebenza nesibonisi:

ULytko uyahlanganisa

Sesithuthukile ikhasi ledemo ngama-thermostat amathathu axhunyiwe.

Ungase ubuze, "Yini ekhethekile nge-thermostat yakho?" Manje emakethe kunama-thermostat amaningi anomsebenzi we-Wi-Fi, ukusebenza okuhleliwe, nokulawula ukuthinta. Futhi abashisekayo babhale amamojula ukuze basebenzisane nezinhlelo zasekhaya ezihlakaniphile (Majordomo, HomeAssistant, njll.).

I-thermostat yethu iyahambisana namasistimu anjalo futhi inakho konke okungenhla. Kodwa isici esihlukile ukuthi i-thermostat ihlale ithuthukiswa, ngenxa yokuguquguquka kwesistimu. Ngesibuyekezo ngasinye ukusebenza kuzokwanda. Endleleni evamile yokuphathwa kwesistimu (ngokweshejuli), sizofaka eguquguqukayo. Uhlelo lokusebenza likuvumela ukuthi uthole indawo yomsebenzisi. Ngenxa yalokhu, uhlelo luzoshintsha ngokushintshashintsha izindlela zokusebenza ngokuya ngendawo yalo. Futhi imojuli yesimo sezulu izokuvumela ukuthi uvumelane nezimo zezulu.

Nokunwebeka. Noma ubani angashintsha i-thermostat yakhe evamile afake eyethu. Ngomzamo omncane. Sikhethe izinzwa ezi-5 ezidume kakhulu emakethe futhi sengeze ukusekelwa kwazo. Kodwa noma ngabe inzwa inezici ezikhethekile, umsebenzisi uzokwazi ukuyixhuma ku-thermostat yethu. Ukuze wenze lokhu, uzodinga ukulinganisa i-thermostat ukuze isebenze nenzwa ethile. Sizonikeza imiyalelo.

Lapho uxhuma i-thermostat nanoma iyiphi enye idivayisi, ivela kanyekanye yonke indawo: kokubili kusixhumi esibonakalayo sewebhu nakuhlelo lwe-PWA. Ukwengeza idivayisi kwenzeka ngokuzenzakalelayo: udinga nje ukuyixhuma kunethiwekhi ye-Wi-Fi.

Uhlelo lwethu aludingi Iseva, futhi uma lwehluleka, alujiki lube ithanga. Ngisho noma enye yezingxenye ihluleka, isistimu ayiqali ukusebenza esimweni esiphuthumayo. Izilawuli, izinzwa, amadivaysi - ingxenye ngayinye iyiseva kanye neklayenti, ngakho izimele ngokuphelele.

Kulabo abanentshisekelo, amanethiwekhi ethu okuxhumana nomphakathi: yocingo, Instagram, Izindaba Zocingo, VK, Facebook.

Imeyili: [i-imeyili ivikelwe]

I-PS Asikukhuthazi ukuthi ulahle Iseva. Futhi sisekela iseva ye-MQTT futhi sinefu lethu. Umgomo wethu uwukuletha ukuzinza nokuthembeka kwesistimu ezingeni elisha ngokuphelele. Ukuze Iseva ingabi iphuzu elibuthakathaka, kodwa igcwalise ukusebenza futhi yenza uhlelo lube lula kakhulu.

Source: www.habr.com

Engeza amazwana