Lytko ṣọkan

Ni akoko diẹ sẹyin a ṣafihan rẹ smart thermostat. Nkan yii ni akọkọ ti pinnu bi iṣafihan ti famuwia ati eto iṣakoso rẹ. Ṣugbọn lati le ṣalaye ọgbọn ti thermostat ati ohun ti a ṣe, o jẹ dandan lati ṣe ilana gbogbo imọran ni apapọ.

Lytko ṣọkan

Nipa adaṣe

Ni aṣa, gbogbo adaṣe le pin si awọn ẹka mẹta:
Ẹka 1 - lọtọ "smati" awọn ẹrọ. O ra awọn gilobu ina, awọn ikoko teapots, ati bẹbẹ lọ lati ọdọ awọn olupese oriṣiriṣi. Aleebu: Ẹrọ kọọkan n gbooro awọn agbara ati mu itunu pọ si. Konsi: Olupese tuntun kọọkan nilo ohun elo tirẹ. Awọn ilana ti awọn ẹrọ lati oriṣiriṣi awọn aṣelọpọ nigbagbogbo ko ni ibamu pẹlu ara wọn.

Ẹka 2 - fifi sori ẹrọ ti PC kan-ọkọ tabi x86 ibaramu. Eyi yọkuro awọn ihamọ lori agbara iširo, ati MajorDoMo tabi eyikeyi pinpin olupin miiran fun iṣakoso ile ọlọgbọn ti fi sori ẹrọ lori ẹrọ yii. Nitorinaa, awọn ẹrọ lati ọdọ ọpọlọpọ awọn aṣelọpọ ti sopọ ni aaye alaye kan. Awon. ti ara rẹ Server fun a smati ile han. Aleebu: ibamu labẹ ile-iṣẹ kan, eyiti o pese awọn agbara iṣakoso imudara. Konsi: ti olupin ba kuna, gbogbo eto yoo pada si ipele 1, i.e. di pipin tabi di asan.

Ẹka 3 - julọ ogbontarigi aṣayan. Ni ipele titunṣe, gbogbo awọn ibaraẹnisọrọ ti wa ni gbe ati gbogbo awọn ọna šiše ti wa ni pidánpidán. Aleebu: ohun gbogbo ni a mu wa si pipe lẹhinna ile naa di ọlọgbọn gaan. Awọn alailanfani: gbowolori pupọ ni akawe si awọn ẹka 1 ati 2, iwulo lati ronu nipasẹ ohun gbogbo ni ilosiwaju ati ṣe akiyesi gbogbo awọn alaye kekere.

Pupọ julọ awọn olumulo yan aṣayan ọkan lẹhinna lọ laisiyonu si aṣayan meji. Ati lẹhinna awọn ti o duro julọ de ọdọ aṣayan 3.

Ṣugbọn aṣayan kan wa ti o le pe ni eto pinpin: ẹrọ kọọkan yoo jẹ olupin ati alabara kan. Ni pataki, eyi jẹ igbiyanju lati mu ati darapọ aṣayan 1 ati aṣayan 2. Mu gbogbo awọn anfani wọn ki o yọkuro awọn konsi, lati yẹ itumọ goolu naa.

Boya ẹnikan yoo sọ pe iru aṣayan ti tẹlẹ ti ni idagbasoke. Ṣugbọn iru awọn ipinnu wa ni idojukọ dín; fun eniyan savvy ni siseto. Ibi-afẹde wa ni lati dinku idena si titẹsi sinu iru awọn ọna ṣiṣe ti a pin, mejeeji ni irisi awọn ẹrọ ipari ati ni irisi awọn ẹrọ ti o wa tẹlẹ sinu eto wa. Ninu ọran ti thermostat, olumulo kan yọkuro thermostat atijọ rẹ, fi ẹrọ ọlọgbọn kan sori ẹrọ, o si so awọn sensosi ti o wa tẹlẹ pọ si. Laisi awọn igbesẹ afikun eyikeyi.

Jẹ ki a wo isọpọ sinu eto wa nipa lilo apẹẹrẹ.

Jẹ ki a fojuinu pe a ni awọn modulu Sonoff 8 lori nẹtiwọọki wa. Fun diẹ ninu awọn olumulo, iṣakoso nipasẹ Sonoff awọsanma (ẹka 1) yoo to. Diẹ ninu yoo bẹrẹ lilo famuwia ẹni-kẹta ati pe yoo lọ laisiyonu sinu ẹka 2. Pupọ ti famuwia ẹnikẹta ṣiṣẹ lori ipilẹ kanna: gbigbe data si olupin MQTT kan. OpenHub, Majordomo tabi eyikeyi miiran sin idi kan - lati ṣopọ awọn ẹrọ iyatọ sinu aaye alaye kan ti o wa boya lori Intanẹẹti tabi lori nẹtiwọki agbegbe kan. Nitorinaa, wiwa olupin jẹ dandan. Eyi ni ibiti iṣoro akọkọ ti dide - ti olupin ba kuna, gbogbo eto ma duro ṣiṣẹ ni aifọwọyi. Lati ṣe idiwọ eyi, awọn ọna ṣiṣe di eka sii, awọn ọna iṣakoso afọwọṣe ni a ṣafikun pe adaṣe adaṣe ni iṣẹlẹ ti ikuna Server.

A mu ọna ti o yatọ, nibiti ẹrọ kọọkan jẹ ti ara ẹni. Bayi, awọn Server ko ni mu a decisive ipa, sugbon nikan faagun awọn iṣẹ-.

Jẹ ká pada si ero ṣàdánwò. Jẹ ki a mu kanna 8 Sonoff modulu lẹẹkansi ki o si fi Lytko famuwia ninu wọn. Gbogbo awọn famuwia Lytko ni iṣẹ naa SSDP. SSDP jẹ ilana nẹtiwọọki ti o da lori suite Ilana Intanẹẹti fun ipolowo ati iṣawari awọn iṣẹ nẹtiwọọki. Idahun si ibeere le jẹ boya boṣewa tabi gbooro. Ni afikun si awọn iṣẹ boṣewa, a wa ninu idahun yii ṣiṣẹda atokọ ti awọn ẹrọ lori nẹtiwọọki. Bayi, awọn ẹrọ ara wọn ri kọọkan miiran, ati kọọkan ti wọn yoo ni iru akojọ kan. Apẹẹrẹ SSDP:

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

Gẹgẹbi o ti le rii lati apẹẹrẹ, atokọ naa pẹlu awọn ids ẹrọ, adiresi IP lori nẹtiwọọki, iru ẹyọkan (ninu ọran wa, thermostat orisun orisun Sonoff). A ṣe imudojuiwọn atokọ yii lẹẹkan ni gbogbo iṣẹju meji (akoko yii to lati dahun si awọn ayipada agbara ni nọmba awọn ẹrọ lori nẹtiwọọki). Ni ọna yii, a tọpa awọn ẹrọ ti a ṣafikun, yipada, ati alaabo laisi igbese olumulo eyikeyi. A fi atokọ yii ranṣẹ si ẹrọ aṣawakiri tabi ohun elo alagbeka, ati pe iwe afọwọkọ funrararẹ ṣe agbekalẹ oju-iwe kan pẹlu nọmba awọn bulọọki ti a fun. Bulọọki kọọkan ni ibamu si ẹrọ kan / sensọ / oludari. Ni oju, atokọ naa dabi eyi:

Lytko ṣọkan

Ṣugbọn kini ti awọn sensọ redio miiran ba sopọ si esp8266/esp32 nipasẹ cc2530 (ZigBee) tabi nrf24 (MySensors)?

Nipa awọn iṣẹ akanṣe

Nibẹ ni o wa orisirisi pin awọn ọna šiše lori oja. Eto wa gba ọ laaye lati ṣepọ pẹlu awọn olokiki julọ.

Ni isalẹ wa awọn iṣẹ akanṣe ti o jẹ ọna kan tabi omiiran ti n gbiyanju lati yi ipo pada pẹlu aiṣedeede ti awọn olupese oriṣiriṣi pẹlu ara wọn. Eyi ni, fun apẹẹrẹ, SLS ẹnu-ọna, Awọn sensọ mi tabi ZESP32. ZigBee2MQTT ti so mọ olupin MQTT, nitorina ko dara fun apẹẹrẹ.

Aṣayan kan fun imuse MySensors jẹ ẹnu-ọna ti o da lori ESP8266. Awọn apẹẹrẹ ti o ku wa lori ESP32. Ati ninu wọn o le ṣe ilana ilana ṣiṣe wa ti wiwa ati ṣiṣẹda atokọ ti awọn ẹrọ.

Jẹ ki a ṣe idanwo ero miiran. A ni ẹnu-ọna ZESP32 tabi ẹnu-ọna SLS, tabi MySensors. Bawo ni wọn ṣe le ṣe idapo ni aaye alaye kan? A yoo ṣafikun iwe-ikawe ilana Ilana SSDP si awọn iṣẹ boṣewa ti awọn ẹnu-ọna wọnyi. Nigbati o ba n wọle si oludari yii nipasẹ SSDP, yoo ṣafikun atokọ ti awọn ẹrọ ti o sopọ si idahun boṣewa. Da lori alaye yii, ẹrọ aṣawakiri yoo ṣe agbekalẹ oju-iwe kan. Ni gbogbogbo o yoo dabi eyi:

Lytko ṣọkan
Oju-iwe ayelujara ni wiwo

Lytko ṣọkan
PWA elo

"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"
}

Awọn apẹẹrẹ fihan wipe awọn ẹrọ ti wa ni afikun ominira ti kọọkan miiran. Awọn thermostats 3 pẹlu awọn adirẹsi IP tiwọn ati awọn sensọ oriṣiriṣi 5 pẹlu awọn ID alailẹgbẹ ti sopọ. Ti sensọ ba ti sopọ si nẹtiwọọki Wi-Fi, yoo ni IP tirẹ; ti o ba ti sopọ si ẹnu-ọna, lẹhinna adiresi IP ẹrọ naa yoo jẹ adiresi IP ẹnu-ọna.

A lo WebSocket lati ṣe ibasọrọ pẹlu awọn ẹrọ. Eyi n gba ọ laaye lati dinku awọn idiyele orisun ni akawe lati gba awọn ibeere ati gba alaye ni agbara nigba asopọ tabi iyipada.

Awọn data ti wa ni ya taara lati awọn ẹrọ si eyi ti awọn Àkọsílẹ je ti, bypassing awọn olupin. Nitorinaa, ti eyikeyi awọn ẹrọ ba kuna, eto naa tẹsiwaju lati ṣiṣẹ. Ni wiwo wẹẹbu kan ko ṣe afihan ẹrọ ti o padanu lati atokọ naa. Ṣugbọn ifihan agbara kan nipa pipadanu, ti o ba jẹ dandan, yoo wa ni irisi ifitonileti ninu ohun elo olumulo.

Igbiyanju akọkọ lati ṣe imuse ọna yii jẹ ohun elo PWA kan. Eyi n gba ọ laaye lati tọju ipilẹ bulọọki lori ẹrọ olumulo ati beere nikan data pataki. Ṣugbọn nitori awọn ẹya ara ẹrọ ti eto, aṣayan yii ko pe. Ati pe ọna kan nikan ni o wa - ohun elo abinibi fun Android ati IOS, eyiti o wa labẹ idagbasoke lọwọlọwọ. Nipa aiyipada, ohun elo naa yoo ṣiṣẹ nikan lori nẹtiwọọki inu. Ti o ba jẹ dandan, o le gbe ohun gbogbo lọ si iṣakoso ita. Nitorinaa, nigbati olumulo ba lọ kuro ni nẹtiwọọki agbegbe, ohun elo naa yipada laifọwọyi si awọsanma.

Iṣakoso ita - pipe išẹpo ti oju-iwe naa. Nigbati oju-iwe naa ba ti muu ṣiṣẹ, olumulo le wọle si olupin naa ki o ṣakoso awọn ẹrọ nipasẹ akọọlẹ ti ara ẹni. Nitorinaa, Olupin naa gbooro iṣẹ ṣiṣe rẹ, gbigba ọ laaye lati ṣakoso awọn ẹrọ lakoko ita ile, ati pe a ko so mọ ifiranšẹ ibudo tabi IP igbẹhin.

Nitorinaa, aṣayan ti o wa loke ko ni awọn alailanfani ti ọna olupin, ati pe o tun ni nọmba awọn anfani ni irisi irọrun ni sisopọ awọn ẹrọ tuntun.

Nipa thermostat

Jẹ ki a wo eto iṣakoso nipa lilo thermostat wa bi apẹẹrẹ.

Pese:

  1. Iṣakoso iwọn otutu fun thermostat kọọkan (ti o han bi bulọọki lọtọ);
  2. Ṣiṣeto iṣeto iṣẹ thermostat (owurọ, ọsan, irọlẹ, alẹ);
  3. Yiyan nẹtiwọọki Wi-Fi ati sisopọ ẹrọ kan si;
  4. Nmu ẹrọ naa pọ si "lori afẹfẹ";
  5. Ṣiṣeto MQTT;
  6. Tunto nẹtiwọki si eyiti ẹrọ naa ti sopọ.

Lytko ṣọkan

Ni afikun si iṣakoso nipasẹ wiwo oju opo wẹẹbu, a pese ẹya Ayebaye - nipa tite lori ifihan. Atẹle Nextion NX3224T024 2.4-inch wa lori ọkọ. Yiyan naa ṣubu lori rẹ nitori irọrun ti ṣiṣẹ pẹlu ẹrọ naa. Ṣugbọn a n ṣe agbekalẹ atẹle tiwa ti o da lori STM32. Iṣẹ-ṣiṣe rẹ ko buru ju ti Nextion, ṣugbọn yoo jẹ iye owo diẹ, eyi ti yoo ni ipa ti o dara lori iye owo ikẹhin ti ẹrọ naa.

Lytko ṣọkan

Bii eyikeyi iboju ti o bọwọ fun ara ẹni, Nextion wa le:

  • ṣeto iwọn otutu ti olumulo nilo (lilo awọn bọtini ni apa ọtun);
  • tan-an ati pa ipo iṣẹ ṣiṣe eto (bọtini H);
  • iṣiṣẹ iṣipopada ifihan (ọfa ni apa osi);
  • ni aabo ọmọde (awọn titẹ ti ara ti dina titi ti titiipa yoo yọ kuro);
  • han WiFi ifihan agbara.

Ni afikun, lilo atẹle o le:

  • yan iru sensọ ti a fi sori ẹrọ nipasẹ olumulo;
  • ṣakoso ẹya titiipa ọmọ;
  • imudojuiwọn famuwia.

Lytko ṣọkan

Nipa titẹ lori igi WiFi, olumulo yoo wa alaye nipa nẹtiwọọki ti a ti sopọ. A lo koodu QR lati so ẹrọ pọ ni HomeKit famuwia.

Lytko ṣọkan

Ririnkiri ti ṣiṣẹ pẹlu ifihan:

Lytko ṣọkan

A ti ni idagbasoke demo iwe pẹlu mẹta ti sopọ thermostats.

O le beere, "Kini pataki nipa thermostat rẹ?" Bayi lori ọja ọpọlọpọ awọn thermostats wa pẹlu iṣẹ Wi-Fi, iṣẹ ṣiṣe eto, ati iṣakoso ifọwọkan. Ati awọn alara ti kọ awọn modulu lati ṣe ajọṣepọ pẹlu awọn eto ile ọlọgbọn olokiki julọ (Majordomo, HomeAssistant, ati bẹbẹ lọ).

Wa thermostat ni ibamu pẹlu iru awọn ọna šiše ati ki o ni gbogbo awọn ti awọn loke. Ṣugbọn ẹya pataki ni pe iwọn otutu ti wa ni ilọsiwaju nigbagbogbo, o ṣeun si irọrun ti eto naa. Pẹlu imudojuiwọn kọọkan iṣẹ-ṣiṣe yoo faagun. Si ọna boṣewa ti iṣakoso eto (ni ibamu si iṣeto), a yoo ṣafikun ọkan ti o ni adaṣe. Ohun elo naa gba ọ laaye lati gba agbegbe agbegbe olumulo. Ṣeun si eyi, eto naa yoo yi awọn ipo iṣẹ pada ni agbara da lori ipo rẹ. Ati module oju ojo yoo gba ọ laaye lati ṣe deede si awọn ipo oju ojo.

Ati expandability. Ẹnikẹni le ropo wọn tẹlẹ mora thermostat pẹlu tiwa. Pẹlu pọọku akitiyan. A ti yan 5 ti awọn sensọ olokiki julọ lori ọja ati ṣafikun atilẹyin fun wọn. Ṣugbọn paapaa ti sensọ ba ni awọn abuda iyasọtọ, olumulo yoo ni anfani lati so pọ mọ thermostat wa. Lati ṣe eyi, iwọ yoo nilo lati ṣe calibrate thermostat lati ṣiṣẹ pẹlu sensọ kan pato. A yoo pese awọn itọnisọna.

Nigbati o ba n sopọ thermostat tabi eyikeyi ẹrọ miiran, nigbakanna yoo han nibi gbogbo: mejeeji ni wiwo wẹẹbu ati ninu ohun elo PWA. Ṣafikun ẹrọ kan waye laifọwọyi: o kan nilo lati so pọ si nẹtiwọọki Wi-Fi.

Eto wa ko nilo olupin, ati pe ti o ba kuna, ko yipada si elegede. Paapa ti ọkan ninu awọn paati ba kuna, eto naa ko bẹrẹ lati ṣiṣẹ ni oju iṣẹlẹ pajawiri. Awọn oludari, awọn sensosi, awọn ẹrọ - ipin kọọkan jẹ olupin mejeeji ati alabara kan, nitorinaa adase patapata.

Fun awọn ti o nifẹ si, awọn nẹtiwọọki awujọ wa: Telegram, Instagram, Awọn iroyin Telegram, VK, Facebook.

Mail: [imeeli ni idaabobo]

PS A ko gba ọ niyanju lati fi olupin naa silẹ. A tun ṣe atilẹyin olupin MQTT ati ni awọsanma tiwa. Ibi-afẹde wa ni lati mu iduroṣinṣin ati igbẹkẹle ti eto naa wa si gbogbo ipele tuntun. Ki awọn Server ni ko kan ko lagbara ojuami, ṣugbọn complements awọn iṣẹ-ṣiṣe ki o si mu ki awọn eto diẹ rọrun.

orisun: www.habr.com

Fi ọrọìwòye kun