Lytko yn uno

Beth amser yn ôl fe wnaethom eich cyflwyno thermostat smart. Bwriadwyd yr erthygl hon yn wreiddiol fel arddangosiad o'i cadarnwedd a'i system reoli. Ond er mwyn egluro rhesymeg y thermostat a'r hyn a weithredwyd gennym, mae angen amlinellu'r cysyniad cyfan yn ei gyfanrwydd.

Lytko yn uno

Ynglŷn ag awtomeiddio

Yn gonfensiynol, gellir rhannu'r holl awtomeiddio yn dri chategori:
Categori 1 - dyfeisiau “clyfar” ar wahân. Rydych chi'n prynu bylbiau golau, tebotau, ac ati gan weithgynhyrchwyr gwahanol. Manteision: Mae pob dyfais yn ehangu galluoedd ac yn cynyddu cysur. Anfanteision: Mae angen ei gymhwysiad ei hun ar bob gwneuthurwr newydd. Yn aml nid yw protocolau dyfeisiau gan weithgynhyrchwyr gwahanol yn gydnaws â'i gilydd.

Categori 2 — gosod cyfrifiadur un bwrdd neu x86 gydnaws. Mae hyn yn dileu cyfyngiadau ar bŵer cyfrifiadurol, ac mae MajorDoMo neu unrhyw ddosbarthiad gweinydd arall ar gyfer rheoli cartref craff wedi'i osod ar y peiriant hwn. Felly, mae dyfeisiau gan y mwyafrif o weithgynhyrchwyr wedi'u cysylltu mewn un gofod gwybodaeth. Y rhai. eich Gweinyddwr eich hun ar gyfer cartref smart yn ymddangos. Manteision: cydnawsedd o dan un ganolfan, sy'n darparu galluoedd rheoli gwell. Anfanteision: os bydd y gweinydd yn methu, bydd y system gyfan yn dychwelyd i gam 1, h.y. yn mynd yn dameidiog neu'n mynd yn ddiwerth.

Categori 3 - yr opsiwn mwyaf craidd caled. Ar y cam atgyweirio, caiff yr holl gyfathrebiadau eu gosod a chaiff pob system ei dyblygu. Manteision: daw popeth i berffeithrwydd ac yna daw'r tŷ yn wirioneddol smart. Anfanteision: hynod o ddrud o gymharu â chategorïau 1 a 2, yr angen i feddwl trwy bopeth ymlaen llaw ac ystyried pob manylyn bach.

Mae'r rhan fwyaf o ddefnyddwyr yn dewis opsiwn un ac yna'n symud ymlaen yn esmwyth i opsiwn dau. Ac yna mae'r rhai mwyaf cyson yn cyrraedd opsiwn 3.

Ond mae yna opsiwn y gellir ei alw'n system ddosranedig: bydd pob dyfais unigol yn weinydd ac yn gleient. Yn y bôn, ymgais yw hwn i gymryd a chyfuno opsiwn 1 ac opsiwn 2. Cymerwch eu holl fanteision a dileu'r anfanteision, i ddal y cymedr aur.

Efallai y bydd rhywun yn dweud bod opsiwn o'r fath eisoes wedi'i ddatblygu. Ond cul yw ffocws penderfyniadau o'r fath; i bobl sy'n gyfarwydd â rhaglennu. Ein nod yw lleihau'r rhwystr rhag mynediad i systemau gwasgaredig o'r fath, ar ffurf dyfeisiau terfynol ac ar ffurf integreiddio dyfeisiau presennol i'n system. Yn achos thermostat, mae'r defnyddiwr yn syml yn tynnu ei hen thermostat, yn gosod un smart, ac yn cysylltu ei synwyryddion presennol ag ef. Heb unrhyw gamau ychwanegol.

Gadewch i ni edrych ar integreiddio i'n system gan ddefnyddio enghraifft.

Gadewch i ni ddychmygu bod gennym ni 8 modiwl Sonoff ar ein rhwydwaith. I rai defnyddwyr, bydd rheolaeth trwy gwmwl Sonoff (categori 1) yn ddigonol. Bydd rhai yn dechrau defnyddio cadarnwedd trydydd parti a byddant yn symud yn esmwyth i gategori 2. Mae mwyafrif y cadarnwedd trydydd parti yn gweithio ar yr un egwyddor: trosglwyddo data i weinydd MQTT. Mae gan OpenHub, Majordomo neu unrhyw un arall un pwrpas - uno dyfeisiau gwahanol yn un gofod gwybodaeth sydd naill ai ar y Rhyngrwyd neu ar rwydwaith lleol. Felly, mae presenoldeb Gweinydd yn orfodol. Dyma lle mae'r brif broblem yn codi - os bydd y Gweinydd yn methu, mae'r system gyfan yn stopio gweithio'n annibynnol. Er mwyn atal hyn, mae systemau'n dod yn fwy cymhleth, ychwanegir dulliau rheoli â llaw sy'n dyblygu awtomeiddio pe bai Gweinydd yn methu.

Fe wnaethon ni gymryd llwybr gwahanol, lle mae pob dyfais yn hunangynhaliol. Felly, nid yw'r Gweinyddwr yn chwarae rhan bendant, dim ond yn ehangu'r swyddogaeth.

Gadewch i ni ddychwelyd at yr arbrawf meddwl. Gadewch i ni gymryd yr un modiwlau Sonoff 8 eto a gosod firmware Lytko ynddynt. Mae gan bob firmwares Lytko y swyddogaeth SSDP. Protocol rhwydwaith yw SSDP sy'n seiliedig ar y gyfres protocol Rhyngrwyd ar gyfer hysbysebu a darganfod gwasanaethau rhwydwaith. Gall yr ymateb i gais fod yn safonol neu'n estynedig. Yn ogystal â swyddogaethau safonol, fe wnaethom gynnwys yn yr ateb hwn greu rhestr o ddyfeisiau ar y rhwydwaith. Felly, mae'r dyfeisiau eu hunain yn dod o hyd i'w gilydd, a bydd gan bob un ohonynt restr o'r fath. Enghraifft o ddalen SSDP:

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

Fel y gallwch weld o'r enghraifft, mae'r rhestr yn cynnwys ids dyfais, cyfeiriad IP ar y rhwydwaith, math o uned (yn ein hachos ni, thermostat yn seiliedig ar Sonoff). Mae'r rhestr hon yn cael ei diweddaru unwaith bob dwy funud (mae'r cyfnod hwn yn ddigon i ymateb i newidiadau deinamig yn nifer y dyfeisiau ar y rhwydwaith). Fel hyn, rydym yn olrhain dyfeisiau sydd wedi'u hychwanegu, eu newid a'u hanalluogi heb unrhyw weithred defnyddiwr. Anfonir y rhestr hon i'r porwr neu raglen symudol, ac mae'r sgript ei hun yn cynhyrchu tudalen gyda nifer penodol o flociau. Mae pob bloc yn cyfateb i un ddyfais / synhwyrydd / rheolydd. Yn weledol mae'r rhestr yn edrych fel hyn:

Lytko yn uno

Ond beth os yw synwyryddion radio eraill wedi'u cysylltu â'r esp8266 / esp32 trwy cc2530 (ZigBee) neu nrf24 (MySensors)?

Ynglŷn â phrosiectau

Mae yna wahanol systemau gwasgaredig ar y farchnad. Mae ein system yn caniatáu ichi integreiddio â'r rhai mwyaf poblogaidd.

Isod mae prosiectau sydd un ffordd neu'r llall yn ceisio newid y sefyllfa gydag anghydnawsedd gwahanol weithgynhyrchwyr â'i gilydd. Mae hyn, er enghraifft, Porth SLS, Fy Synwyr neu ZESP32. ZigBee2MQTT wedi'i glymu i weinydd MQTT, felly nid yw'n addas ar gyfer yr enghraifft.

Un opsiwn ar gyfer gweithredu MySensors yw porth yn seiliedig ar yr ESP8266. Mae gweddill yr enghreifftiau ar ESP32. Ac ynddynt gallwch chi weithredu ein hegwyddor gweithredu o ganfod a chreu rhestr o ddyfeisiau.

Gadewch i ni wneud arbrawf meddwl arall. Mae gennym borth ZESP32 neu Borth SLS, neu MySensors. Sut gellir eu cyfuno mewn un gofod gwybodaeth? Byddwn yn ychwanegu llyfrgell protocol SSDP at swyddogaethau safonol y pyrth hyn. Wrth gyrchu'r rheolydd hwn trwy SSDP, bydd yn ychwanegu rhestr o ddyfeisiau sydd wedi'u cysylltu ag ef i'r ymateb safonol. Yn seiliedig ar y wybodaeth hon, bydd y porwr yn cynhyrchu tudalen. Yn gyffredinol, bydd yn edrych fel hyn:

Lytko yn uno
Rhyngwyneb gwe

Lytko yn uno
Cais 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"
}

Mae'r enghraifft yn dangos bod dyfeisiau'n cael eu hychwanegu'n annibynnol ar ei gilydd. Mae 3 thermostat gyda'u cyfeiriadau IP eu hunain a 5 synhwyrydd gwahanol gydag IDau unigryw wedi'u cysylltu. Os yw'r synhwyrydd wedi'i gysylltu â rhwydwaith Wi-Fi, bydd ganddo ei IP ei hun; os yw wedi'i gysylltu â phorth, yna cyfeiriad IP y ddyfais fydd cyfeiriad IP y porth.

Rydym yn defnyddio WebSocket i gyfathrebu â dyfeisiau. Mae hyn yn eich galluogi i leihau costau adnoddau o gymharu â chael ceisiadau a chael gwybodaeth yn ddeinamig wrth gysylltu neu newid.

Cymerir y data yn uniongyrchol o'r ddyfais y mae'r bloc yn perthyn iddi, gan osgoi'r gweinydd. Felly, os bydd unrhyw un o'r dyfeisiau'n methu, mae'r system yn parhau i weithredu. Nid yw'r rhyngwyneb gwe yn dangos y ddyfais sydd ar goll o'r rhestr. Ond bydd signal am y golled, os oes angen, yn dod ar ffurf hysbysiad yng nghais y defnyddiwr.

Yr ymgais gyntaf i roi’r dull hwn ar waith oedd cais PWA. Mae hyn yn caniatáu ichi storio sylfaen bloc ar ddyfais y defnyddiwr a gofyn am y data angenrheidiol yn unig. Ond oherwydd hynodion y strwythur, mae'r opsiwn hwn yn anghyflawn. A dim ond un ffordd allan sydd - cymhwysiad brodorol ar gyfer Android ac IOS, sy'n cael ei ddatblygu'n weithredol ar hyn o bryd. Yn ddiofyn, dim ond ar y rhwydwaith mewnol y bydd y rhaglen yn gweithio. Os oes angen, gallwch drosglwyddo popeth i reolaeth allanol. Felly, pan fydd y defnyddiwr yn gadael y rhwydwaith lleol, mae'r cais yn newid yn awtomatig i'r cwmwl.

Rheolaeth allanol - dyblygiad cyflawn o'r dudalen. Pan fydd y dudalen wedi'i actifadu, gall y defnyddiwr fewngofnodi i'r gweinydd a rheoli dyfeisiau trwy eu cyfrif personol. Felly, mae'r Gweinydd yn ehangu ei ymarferoldeb, gan ganiatáu i chi reoli dyfeisiau tra y tu allan i'r cartref, a pheidio â chael eich clymu i anfon ymlaen porthladd neu IP pwrpasol.

Felly, nid oes gan yr opsiwn uchod anfanteision y dull gweinydd, ac mae ganddo hefyd nifer o fanteision ar ffurf hyblygrwydd wrth gysylltu dyfeisiau newydd.

Am y thermostat

Gadewch i ni edrych ar y system reoli gan ddefnyddio ein thermostat fel enghraifft.

Ar yr amod:

  1. Rheoli tymheredd ar gyfer pob thermostat (a ddangosir fel bloc ar wahân);
  2. Gosod amserlen gweithredu'r thermostat (bore, prynhawn, nos, nos);
  3. Dewis rhwydwaith Wi-Fi a chysylltu dyfais ag ef;
  4. Diweddaru'r ddyfais “dros yr awyr”;
  5. Sefydlu MQTT;
  6. Ffurfweddu'r rhwydwaith y mae'r ddyfais wedi'i gysylltu ag ef.

Lytko yn uno

Yn ogystal â rheolaeth trwy'r rhyngwyneb gwe, fe wnaethom ddarparu'r un clasurol - trwy glicio ar yr arddangosfa. Mae monitor 3224-modfedd Nextion NX024T2.4 ar y bwrdd. Syrthiodd y dewis arno oherwydd rhwyddineb gweithio gyda'r ddyfais. Ond rydym yn datblygu ein monitor ein hunain yn seiliedig ar STM32. Nid yw ei ymarferoldeb yn waeth nag un Nextion, ond bydd yn costio llai, a fydd yn cael effaith gadarnhaol ar bris terfynol y ddyfais.

Lytko yn uno

Fel unrhyw sgrin thermostat hunan-barch, gall ein Nextion:

  • gosod y tymheredd sy'n ofynnol gan y defnyddiwr (gan ddefnyddio'r botymau ar y dde);
  • trowch ymlaen ac i ffwrdd y modd gweithredu a drefnwyd (botwm H);
  • gweithrediad ras gyfnewid arddangos (saeth ar y chwith);
  • wedi amddiffyn plant (mae cliciau corfforol yn cael eu rhwystro nes bod y clo yn cael ei dynnu);
  • yn dangos cryfder signal WiFi.

Yn ogystal, gan ddefnyddio'r monitor gallwch:

  • dewiswch y math o synhwyrydd a osodwyd gan y defnyddiwr;
  • rheoli'r nodwedd clo plant;
  • diweddaru'r firmware.

Lytko yn uno

Trwy glicio ar y bar WiFi, bydd y defnyddiwr yn darganfod gwybodaeth am y rhwydwaith cysylltiedig. Defnyddir y cod QR i baru'r ddyfais yn y firmware HomeKit.

Lytko yn uno

Demo o weithio gyda'r arddangosfa:

Lytko yn uno

Rydym wedi datblygu tudalen demo gyda thri thermostat cysylltiedig.

Efallai y byddwch chi'n gofyn, "Beth sy'n arbennig am eich thermostat?" Nawr ar y farchnad mae yna lawer o thermostatau gyda swyddogaeth Wi-Fi, gweithrediad wedi'i drefnu, a rheolaeth gyffwrdd. Ac mae gan selogion fodiwlau ysgrifenedig i ryngweithio â'r systemau cartref craff mwyaf poblogaidd (Majordomo, HomeAssistant, ac ati).

Mae ein thermostat yn gydnaws â systemau o'r fath ac mae ganddo bob un o'r uchod. Ond y nodwedd nodedig yw bod y thermostat yn cael ei wella'n gyson, diolch i hyblygrwydd y system. Gyda phob diweddariad bydd y swyddogaeth yn ehangu. I'r dull safonol o reoli system (yn ôl amserlen), byddwn yn ychwanegu un addasol. Mae'r cais yn caniatáu ichi gael geolocation y defnyddiwr. Diolch i hyn, bydd y system yn newid dulliau gweithredu yn ddeinamig yn dibynnu ar ei leoliad. A bydd y modiwl tywydd yn caniatáu ichi addasu i'r tywydd.

Ac ehangu. Gall unrhyw un newid eu thermostat confensiynol presennol gyda'n un ni. Gydag ychydig iawn o ymdrech. Rydym wedi dewis 5 o'r synwyryddion mwyaf poblogaidd ar y farchnad ac wedi ychwanegu cefnogaeth ar eu cyfer. Ond hyd yn oed os oes gan y synhwyrydd nodweddion unigryw, bydd y defnyddiwr yn gallu ei gysylltu â'n thermostat. I wneud hyn, bydd angen i chi galibro'r thermostat i weithio gyda synhwyrydd penodol. Byddwn yn darparu cyfarwyddiadau.

Wrth gysylltu thermostat neu unrhyw ddyfais arall, mae'n ymddangos ym mhobman ar yr un pryd: yn y rhyngwyneb gwe ac yn y cymhwysiad PWA. Mae ychwanegu dyfais yn digwydd yn awtomatig: does ond angen i chi ei gysylltu â'r rhwydwaith Wi-Fi.

Nid oes angen Gweinyddwr ar ein system, ac os bydd yn methu, nid yw'n troi'n bwmpen. Hyd yn oed os bydd un o'r cydrannau'n methu, nid yw'r system yn dechrau gweithredu mewn sefyllfa o argyfwng. Rheolyddion, synwyryddion, dyfeisiau - mae pob elfen yn Weinydd ac yn gleient, felly yn gwbl ymreolaethol.

I'r rhai sydd â diddordeb, mae ein rhwydweithiau cymdeithasol: Telegram, Instagram, Newyddion Telegram, VK, Facebook.

Post: [e-bost wedi'i warchod]

PS Nid ydym yn eich annog i gefnu ar y Gweinydd. Rydym hefyd yn cefnogi gweinydd MQTT ac mae gennym ein cwmwl ein hunain. Ein nod yw dod â sefydlogrwydd a dibynadwyedd y system i lefel hollol newydd. Fel nad yw'r Gweinyddwr yn bwynt gwan, ond yn ategu'r ymarferoldeb ac yn gwneud y system yn fwy cyfleus.

Ffynhonnell: hab.com

Ychwanegu sylw