Lytko amagwirizanitsa

Nthawi ina yapitayo tinakudziwitsani smart thermostat. Nkhaniyi idapangidwa poyambirira ngati chiwonetsero cha firmware yake ndi kachitidwe kowongolera. Koma kuti tifotokoze malingaliro a thermostat ndi zomwe takhazikitsa, ndikofunikira kufotokozera lingaliro lonselo.

Lytko amagwirizanitsa

Za zochita zokha

Conventionally, makina onse akhoza kugawidwa m'magulu atatu:
Gulu 1 β€” patulani zida β€œzanzeru”. Mumagula mababu, tiyi, ndi zina zambiri kuchokera kwa opanga osiyanasiyana. Ubwino: Chida chilichonse chimakulitsa luso ndikuwonjezera chitonthozo. Zoyipa: Wopanga watsopano aliyense amafuna kugwiritsa ntchito kwake. Ma Protocol a zida kuchokera kwa opanga osiyanasiyana nthawi zambiri samagwirizana.

Gulu 2 - Kukhazikitsa PC yokhala ndi bolodi limodzi kapena x86 yogwirizana. Izi zimachotsa zoletsa pamagetsi apakompyuta, ndipo MajorDoMo kapena kugawa kwina kulikonse kwa seva poyang'anira nyumba yanzeru kumayikidwa pamakina awa. Choncho, zipangizo zochokera kwa opanga ambiri zimagwirizanitsidwa mu malo amodzi a chidziwitso. Iwo. Seva yanu yanyumba yanzeru imawonekera. Ubwino: Kugwirizana pansi pa likulu limodzi, lomwe limapereka luso lowongolera. Zoipa: ngati seva ikulephera, dongosolo lonse limabwerera ku siteji 1, i.e. zimagawika kapena kukhala zopanda ntchito.

Gulu 3 - njira yovuta kwambiri. Pakukonza, mauthenga onse amaikidwa ndipo machitidwe onse amabwerezedwa. Ubwino: Chilichonse chimapangidwa mwangwiro ndipo nyumbayo imakhala yanzeru kwambiri. Zoipa: zokwera mtengo kwambiri poyerekeza ndi magulu 1 ndi 2, kufunika koganizira zonse pasadakhale ndikuganiziranso pang'ono.

Ogwiritsa ntchito ambiri amasankha njira imodzi ndiyeno pitilizani kusankha ziwiri. Kenako omwe amalimbikira kwambiri amafika ku njira 3.

Koma pali njira yomwe ingatchedwe dongosolo logawidwa: chipangizo chilichonse chidzakhala seva ndi kasitomala. Kwenikweni, uku ndikuyesa kutenga ndi kuphatikiza njira 1 ndi kusankha 2. Tengani ubwino wawo wonse ndikuchotsa zoipa, kuti mugwire tanthauzo la golide.

Mwina wina anganene kuti njira yotereyi yapangidwa kale. Koma zisankho zoterozo ndizokhazikika; kwa anthu savvy mu mapulogalamu. Cholinga chathu ndikuchepetsa chotchinga cholowera m'machitidwe ogawidwa otere, monga zida zomaliza komanso kuphatikiza zida zomwe zilipo kale mu dongosolo lathu. Pankhani ya thermostat, wogwiritsa ntchito amangochotsa thermostat yake yakale, kukhazikitsa yanzeru, ndikulumikiza masensa ake omwe alipo. Popanda njira zina zowonjezera.

Tiyeni tiwone kuphatikiza mu dongosolo lathu pogwiritsa ntchito chitsanzo.

Tiyerekeze kuti tili ndi ma module 8 a Sonoff pamaneti athu. Kwa ogwiritsa ntchito ena, kuwongolera kudzera pamtambo wa Sonoff (gulu 1) kudzakhala kokwanira. Ena adzayamba kugwiritsa ntchito firmware ya chipani chachitatu ndipo adzasunthira bwino m'gulu la 2. Zambiri za firmware za gulu lachitatu zimagwira ntchito mofananamo: kutumiza deta ku seva ya MQTT. OpenHub, Majordomo kapena china chilichonse chimagwira ntchito imodzi - kugwirizanitsa zida zosiyanasiyana kukhala malo amodzi a chidziwitso omwe amapezeka pa intaneti kapena pa netiweki yakomweko. Chifukwa chake, kukhalapo kwa Seva ndikoyenera. Apa ndipamene vuto lalikulu limayamba - ngati Seva ikulephera, dongosolo lonse limasiya kugwira ntchito mokhazikika. Pofuna kupewa izi, machitidwe amakhala ovuta kwambiri, njira zowongolera pamanja zimawonjezeredwa zomwe zimabwereza zokha pakagwa Server yalephera.

Tinatenga njira yosiyana, pomwe chipangizo chilichonse chimakhala chodzidalira. Chifukwa chake, Seva sikhala ndi gawo lalikulu, koma imangokulitsa magwiridwe antchito.

Tiyeni tibwerere ku kuyesa kwa lingaliro. Tiyeni titengenso ma module 8 a Sonoff ndikuyika firmware ya Lytko mkati mwake. Ma firmware onse a Lytko ali ndi ntchito SSDP. SSDP ndi netiweki protocol yozikidwa pa Internet protocol suite yotsatsa ndikupeza ma network. Yankho la pempho likhoza kukhala lokhazikika kapena lowonjezera. Kuphatikiza pa ntchito zokhazikika, taphatikiza mu yankho ili kupanga mndandanda wa zida pamaneti. Choncho, zipangizozo zimapezana, ndipo aliyense wa iwo adzakhala ndi mndandanda wotere. Chitsanzo pepala la SSDP:

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

Monga mukuwonera pachitsanzo, mndandandawu umaphatikizapo ma ID a chipangizo, adilesi ya IP pa netiweki, mtundu wagawo (kwa ife, Sonoff-based thermostat). Mndandandawu umasinthidwa kamodzi pa mphindi ziwiri zilizonse (nthawiyi ndi yokwanira kuyankha kusintha kwakukulu kwa chiwerengero cha zipangizo pa intaneti). Mwanjira iyi, timatsata zida zomwe zawonjezeredwa, zosinthidwa, ndi kuzimitsidwa popanda wogwiritsa ntchito. Mndandandawu umatumizidwa kwa msakatuli kapena pulogalamu yam'manja, ndipo script yokha imapanga tsamba lomwe lili ndi midadada yopatsidwa. Chida chilichonse chimagwirizana ndi chipangizo chimodzi / sensa / chowongolera. Mwachiwonekere mndandanda ukuwoneka motere:

Lytko amagwirizanitsa

Koma bwanji ngati masensa ena a wailesi alumikizidwa ndi esp8266/esp32 kudzera pa cc2530 (ZigBee) kapena nrf24 (MySensors)?

Za ntchito

Pali machitidwe osiyanasiyana omwe amagawidwa pamsika. Dongosolo lathu limakulolani kuti muphatikize ndi otchuka kwambiri.

M'munsimu muli mapulojekiti omwe ali njira imodzi kapena ina kuyesa kusintha zinthu ndi kusagwirizana kwa opanga osiyanasiyana wina ndi mzake. Izi ndi mwachitsanzo, Chithunzi cha SLS, MySensors kapena Chithunzi cha ZESP32. ZigBee2MQTT imamangiriridwa ku seva ya MQTT, kotero siyoyenera mwachitsanzo.

Njira imodzi yogwiritsira ntchito MySensors ndi chipata chokhazikitsidwa ndi ESP8266. Zitsanzo zina zonse zili pa ESP32. Ndipo mwa iwo mutha kugwiritsa ntchito mfundo yathu yowunikira ndikupanga mndandanda wa zida.

Tiyeni tiyese lingaliro lina. Tili ndi chipata cha ZESP32 kapena SLS Gateway, kapena MySensors. Kodi angaphatikizidwe bwanji mu malo amodzi a chidziwitso? Tiwonjezera laibulale ya protocol ya SSDP ku ntchito zokhazikika zazipata izi. Mukapeza wolamulira uyu kudzera pa SSDP, idzawonjezera mndandanda wa zipangizo zomwe zimagwirizanitsidwa ndi zomwe zimayankhidwa. Kutengera chidziwitsochi, msakatuli apanga tsamba. M'malo mwake, zitha kuwoneka motere:

Lytko amagwirizanitsa
Mawonekedwe a intaneti

Lytko amagwirizanitsa
Pulogalamu ya 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"
}

Chitsanzo chimasonyeza kuti zipangizo zimawonjezedwa popanda wina ndi mzake. 3 ma thermostats okhala ndi ma adilesi awo a IP ndi masensa 5 osiyanasiyana okhala ndi ma ID apadera alumikizidwa. Ngati sensa imalumikizidwa ndi netiweki ya Wi-Fi, idzakhala ndi IP yake; ngati italumikizidwa pachipata, ndiye kuti adilesi ya IP ya chipangizocho idzakhala adilesi ya IP yachipata.

Timagwiritsa ntchito WebSocket kulumikizana ndi zida. Izi zimakupatsani mwayi wochepetsera mtengo wazinthu poyerekeza ndi zopempha ndikupeza zambiri mwachangu mukalumikiza kapena kusintha.

Deta imatengedwa mwachindunji kuchokera ku chipangizo chomwe chipikacho ndi chake, kudutsa seva. Choncho, ngati chipangizo chilichonse chikulephera, dongosololi likupitiriza kugwira ntchito. Mawonekedwe a intaneti samawonetsa chipangizo chomwe chikusowa pamndandanda. Koma chizindikiro chokhudza kutayika, ngati kuli kofunikira, chidzabwera ngati chidziwitso pakugwiritsa ntchito kwa wogwiritsa ntchito.

Kuyesa koyamba kugwiritsa ntchito njirayi kunali kugwiritsa ntchito PWA. Izi zimakulolani kuti musunge maziko a chipika pa chipangizo cha wosuta ndikupempha deta yofunikira yokha. Koma chifukwa cha mawonekedwe ake, njira iyi ndi yosakwanira. Ndipo pali njira imodzi yokha yotulukira - pulogalamu yachibadwidwe ya Android ndi IOS, yomwe pakali pano ikukula. Mwachikhazikitso, pulogalamuyi idzagwira ntchito pa netiweki yamkati yokha. Ngati ndi kotheka, mukhoza kusamutsa chirichonse ku ulamuliro kunja. Chifukwa chake, wogwiritsa ntchito akachoka pa netiweki yakomweko, pulogalamuyo imasinthiratu kumtambo.

Kuwongolera kwakunja - kubwereza kwathunthu kwa tsamba. Tsambalo litatsegulidwa, wogwiritsa ntchito amatha kulowa mu seva ndikuwongolera zida kudzera muakaunti yawo. Chifukwa chake, Seva imakulitsa magwiridwe antchito ake, kukulolani kuti muzitha kuyang'anira zida mukakhala kunja kwa nyumba, ndipo musamangirire kutumizira madoko kapena IP yodzipatulira.

Choncho, njira yomwe ili pamwambayi ilibe zovuta za njira ya seva, komanso ili ndi ubwino wambiri mu mawonekedwe a kusinthasintha pogwirizanitsa zipangizo zatsopano.

Za thermostat

Tiyeni tiwone dongosolo lowongolera pogwiritsa ntchito thermostat yathu monga chitsanzo.

Zaperekedwa:

  1. Kuwongolera kutentha kwa thermostat iliyonse (yowonetsedwa ngati chipika chosiyana);
  2. Kukhazikitsa ndondomeko ya ntchito ya thermostat (m'mawa, masana, madzulo, usiku);
  3. Kusankha netiweki ya Wi-Fi ndikulumikiza chipangizocho;
  4. Kusintha chipangizo "pamlengalenga";
  5. Kukhazikitsa MQTT;
  6. Konzani netiweki yomwe chipangizocho chalumikizidwa.

Lytko amagwirizanitsa

Kuphatikiza pa kuwongolera kudzera pa intaneti, tidapereka zachikale - podina pazenera. Pali chowunikira cha Nextion NX3224T024 2.4-inchi pabwalo. Chisankhocho chinagwera pa iye chifukwa chosavuta kugwira ntchito ndi chipangizocho. Koma tikupanga zowunikira zathu kutengera STM32. Magwiridwe ake sali oipitsitsa kuposa a Nextion, koma adzawononga ndalama zochepa, zomwe zidzakhala ndi zotsatira zabwino pa mtengo womaliza wa chipangizocho.

Lytko amagwirizanitsa

Monga chophimba chilichonse chodzilemekeza cha thermostat, Nextion yathu imatha:

  • khazikitsani kutentha kofunikira ndi wogwiritsa ntchito (pogwiritsa ntchito mabatani kumanja);
  • kuyatsa ndi kuzimitsa mawonekedwe opangira (batani H);
  • kuwonetsa ntchito yotumizirana (muvi kumanzere);
  • ali ndi chitetezo cha ana (kudina kwakuthupi kumatsekedwa mpaka loko itachotsedwa);
  • ikuwonetsa mphamvu ya siginecha ya WiFi.

Komanso, pogwiritsa ntchito polojekiti mungathe:

  • sankhani mtundu wa sensa yomwe imayikidwa ndi wogwiritsa ntchito;
  • kusamalira mwana loko Mbali;
  • sintha firmware.

Lytko amagwirizanitsa

Mwa kuwonekera pa WiFi bar, wosuta adzapeza zambiri za maukonde olumikizidwa. Khodi ya QR imagwiritsidwa ntchito kulumikiza chipangizocho mu firmware ya HomeKit.

Lytko amagwirizanitsa

Chiwonetsero chogwira ntchito ndi chiwonetsero:

Lytko amagwirizanitsa

Tapanga tsamba lachiwonetsero ndi ma thermostats atatu olumikizidwa.

Mutha kufunsa, "Kodi chapadera ndi chiyani pa thermostat yanu?" Tsopano pamsika pali ma thermostats ambiri okhala ndi Wi-Fi, magwiridwe antchito, komanso kuwongolera kukhudza. Ndipo okonda alemba ma module kuti azilumikizana ndi makina odziwika bwino apanyumba (Majordomo, HomeAssistant, etc.).

Thermostat yathu imagwirizana ndi machitidwe otere ndipo ali ndi zonse pamwambapa. Koma chodziwika bwino ndi chakuti thermostat imasinthidwa pafupipafupi, chifukwa cha kusinthasintha kwadongosolo. Ndi kusintha kulikonse magwiridwe antchito adzakula. Ku njira yokhazikika yoyendetsera dongosolo (malinga ndi ndandanda), tidzawonjezera yosinthika. Pulogalamuyi imakupatsani mwayi wopeza malo a wogwiritsa ntchito. Chifukwa cha izi, dongosololi lidzasintha kwambiri machitidwe ogwiritsira ntchito malingana ndi malo ake. Ndipo gawo la nyengo lidzakulolani kuti mugwirizane ndi nyengo.

Ndipo kukula. Aliyense akhoza kusintha thermostat yake yanthawi zonse ndi yathu. Ndi khama lochepa. Tasankha 5 mwa masensa otchuka kwambiri pamsika ndikuwonjezera chithandizo kwa iwo. Koma ngakhale sensa ili ndi mawonekedwe apadera, wogwiritsa ntchitoyo azitha kuyilumikiza ku thermostat yathu. Kuti muchite izi, muyenera kuyesa thermostat kuti igwire ntchito ndi sensor inayake. Tidzapereka malangizo.

Mukalumikiza thermostat kapena chipangizo china chilichonse, imawoneka nthawi imodzi paliponse: pa intaneti komanso mu pulogalamu ya PWA. Kuwonjezera chipangizo kumachitika zokha: muyenera kungochilumikiza ku netiweki ya Wi-Fi.

Dongosolo lathu silifuna Seva, ndipo ikalephera, silisintha kukhala dzungu. Ngakhale chimodzi mwa zigawozo chikalephera, dongosololi siliyamba kugwira ntchito mwadzidzidzi. Owongolera, masensa, zida - chilichonse ndi Seva komanso kasitomala, chifukwa chake chimadziyimira pawokha.

Kwa omwe ali ndi chidwi, malo athu ochezera: uthengawo, Instagram, Telegraph News, VK, Facebook.

Imelo: [imelo ndiotetezedwa]

PS Sitikulimbikitsani kuti musiye Seva. Timathandiziranso seva ya MQTT ndipo tili ndi mtambo wathu. Cholinga chathu ndikubweretsa kukhazikika ndi kudalirika kwa dongosololi pamlingo watsopano. Kotero kuti Seva si malo ofooka, koma imathandizira magwiridwe antchito ndikupanga dongosolo kukhala losavuta.

Source: www.habr.com

Kuwonjezera ndemanga