ShIoTiny: Nóid, Naisc, agus Imeachtaí nó Gnéithe de Chlár Líníochta

ShIoTiny: Nóid, Naisc, agus Imeachtaí nó Gnéithe de Chlár Líníochta

Príomhphointí nó cad faoi a bhfuil an t-alt seo

Is é ábhar an ailt ná ríomhchlárú amhairc PLC ShIoTiny don teach cliste a bhfuil cur síos air anseo: ShIoTiny: uathoibriú beag, Idirlíon rudaí nó “sé mhí roimh laethanta saoire”.

Go hachomair coincheapa ar nós snaidhmeanna, naisc, forbairtí, chomh maith le gnéithe de chlár amhairc a luchtú agus a fhorghníomhú ar ESP8266, atá mar bhunús leis an PLC ShIoTiny.

Réamhrá nó cúpla ceist eagrúcháin

San alt roimhe seo faoi mo fhorbairt, thug mé forbhreathnú gairid ar chumais an rialaitheora ShIoTiny.

Rud aisteach go leor, léirigh an pobal suim láidir go leor agus chuir siad go leor ceisteanna orm. Thairg roinnt cairde fiú láithreach rialtóir a cheannach uaim. Níl, nílim i gcoinne beagán airgid a thuilleamh, ach ní cheadaíonn mo choinsias dom rud éigin atá fós an-amh i dtéarmaí bogearraí a dhíol.

Dá bhrí sin, phostáil mé an dénártha firmware agus léaráid gléas ar GitHub: firmware + treoracha is giorra + léaráid + samplaí.

Anois is féidir le gach duine an ESP-07 a flash agus imirt leis an bhfirmware iad féin. Más mian le duine ar bith go díreach an bord céanna agus atá sa ghrianghraf, ansin tá roinnt acu agam. Scríobh trí ríomhphost [ríomhphost faoi chosaint]. Ach, mar a déarfadh Ogurtsov dothuigthe: "Níl mé freagrach as rud ar bith!"

Mar sin, déanaimis a fháil go dtí an pointe: cad é "snaidhm" (nód) agus "imeacht"? Conas a chuirtear an clár i gcrích?

Mar is gnách, déanaimis tosú in ord: tríd an gclár a íoslódáil.

Conas a íoslódáil an clár

Tosaímid leis an méid a tharlaíonn nuair a bhrúimid cnaipe Uasluchtaigh san eagarthóir ElDraw agus cuileoga ár gciorcad clár, comhdhéanta de chearnóga áille, isteach san fheiste.

Ar an gcéad dul síos, bunaithe ar an léaráid atá tarraingthe againn, tógtar a cur síos i bhfoirm téacs.
Ar an dara dul síos, seiceálann sé an bhfuil gach ionchur nód ceangailte le haschuir. Níor cheart go mbeadh aon bealaí isteach “crochta”. Má aimsítear ionchur den sórt sin, ní dhéanfar an ciorcad a luchtú isteach i ShIoTiny, agus taispeánfaidh an t-eagarthóir rabhadh comhfhreagrach.

Má chuaigh gach rud go maith, seolann an t-eagarthóir cur síos téacs ar an gciorcad nód amháin ag an am chuig ShIoTiny. Ar ndóigh, baintear an ciorcad atá ann cheana féin ó ShIoTiny ar dtús. Stóráiltear an tuairisc téacs mar thoradh air i gcuimhne FLASH.

Dála an scéil, más mian leat ciorcad a bhaint as gléas, ansin déan ciorcad folamh a luchtú isteach ann (nach bhfuil eilimint nód amháin ann).

Nuair a bheidh an clár ciorcad iomlán lódáilte isteach sa ShIoTiny PLC, tosaíonn sé ag “forghníomhú”. Céard is brí leis?

Tabhair faoi deara go bhfuil na próisis chun ciorcad a luchtú ó chuimhne FLASH nuair a chuirtear an chumhacht ar siúl agus nuair a bhíonn ciorcad á fháil ón eagarthóir comhionann.

Gcéad dul síos, cruthaítear rudaí nód bunaithe ar a gcur síos.
Ansin déantar naisc idir nóid. Is é sin, gintear naisc aschuir le hionchuir agus ionchuir le haschuir.

Agus ach amháin tar éis seo go léir a thosaíonn timthriall forghníomhaithe an phríomhchláir.

Scríobh mé le fada an lá, ach tógann an próiseas iomlán - ó “luchtú” an chiorcaid ó chuimhne Flash go dtí tús a chur leis an bpríomhthimthriall - codán de soicind le haghaidh ciorcad de 60-80 nóid.

Conas a oibríonn an príomh-lúb? An-simplí. Ar dtús fanann sé le teacht chun cinn forbairtí ag nód éigin, ansin próiseálann an teagmhas sin. Agus mar sin de endlessly. Bhuel, nó go dtí go n-uaslódálann siad scéim nua chuig ShIoTiny.

Roinnt uaireanta cheana féin tá rudaí cosúil le luaite agam forbairtí, snaidhmeanna и naisc. Ach cad é seo ó thaobh bogearraí de? Labhróimid faoi seo inniu.

Nóid, naisc agus imeachtaí

Féach ar na samplaí de chláir chiorcaid le haghaidh ShIoTinya thuiscint nach bhfuil sa léaráid ach dhá aonán - nóid (nó dúile) agus na naisc eatarthu.

Nód, ach táeilimint chuaird Is léiriú fíorúil ar roinnt gníomhaíocht thar na sonraí. Féadfaidh sé seo a bheith ina oibríocht uimhríochta, ina oibríocht loighciúil, nó ina oibríocht ar bith a thagann chun ár n-intinn. Is é an rud is mó ná go bhfuil bealach isteach agus slí amach ag an nód.

Ionchur - is é seo an áit a fhaigheann an nód sonraí. Is iad na híomhánna ionchuir pointí atá i gcónaí ar an taobh clé den nód.

Aschur - is é seo an áit a bhfaightear toradh oibríocht an nód. Is iad na híomhánna aschuir ná pointí atá suite i gcónaí ar thaobh na láimhe deise den nód.

Níl ionchuir ag roinnt nóid. Gineann nóid den sórt sin an toradh go hinmheánach. Mar shampla, nód tairiseach nó nód braite: ní gá dóibh sonraí ó nóid eile chun an toradh a thuairisciú.

Níl aon aschur ag nóid eile, ar a mhalairt. Is nóid iad seo a thaispeánann, mar shampla, actuators (athsheachadáin nó rud éigin dá samhail). Glacann siad le sonraí ach ní ghineann siad toradh ríomhaireachtúil atá ar fáil do nóid eile.

Ina theannta sin, tá nód tráchta uathúil ann freisin. Ní dhéanann sé faic, níl aon ionchuir nó aschuir aige. Is é an cuspóir atá aige ná míniú a thabhairt ar an léaráid.

Cad a tharla "imeacht"? Imeacht is é sin teacht chun cinn sonraí nua in aon nód. Mar shampla, áirítear le teagmhais: athrú ar staid an ionchuir (nód Ionchur), sonraí a fháil ó ghléas eile (nóid MQTT и UDP), tréimhse ama sonraithe a bheith caite (nóid Timer и Moill) agus mar sin de.

Cad dó atá imeachtaí? Sea, d'fhonn a chinneadh cén nód atá sonraí nua tagtha chun cinn agus na stáit ina bhfuil gá le nóid a athrú maidir le sonraí nua a fháil. Téann an t-imeacht, mar a bhí sé, “ar feadh an tslabhra nóid go dtí go seachnaíonn sé gach nóid ar gá a staid a sheiceáil agus a athrú.

Is féidir gach nóid a roinnt ina dhá chatagóir.
Glaoimis nóid ar féidir leo imeachtaí a ghiniúint"nóid gníomhacha'.
Cuirfimid nóid nach féidir imeachtaí a ghiniúint "nóid éighníomhacha'.

Nuair a ghineann nód imeacht (is é sin le feiceáil sonraí nua ag a aschur), ansin sa chás ginearálta athraíonn staid slabhra iomlán na nóid atá ceangailte le haschur nód an ghineadóra teagmhais.

Chun é a dhéanamh soiléir, breithnigh an sampla san fhigiúr.

ShIoTiny: Nóid, Naisc, agus Imeachtaí nó Gnéithe de Chlár Líníochta

Is iad na nóid ghníomhacha anseo ná Ionchur1, Ionchur2 agus Ionchur3. Tá na nóid atá fágtha éighníomhach. Déanaimis machnamh ar cad a tharlaíonn nuair a dhúntar ionchur amháin nó eile. Ar mhaithe le caoithiúlacht, déantar achoimre ar na torthaí i dtábla.

ShIoTiny: Nóid, Naisc, agus Imeachtaí nó Gnéithe de Chlár Líníochta

Mar a fheiceann tú, nuair a tharlaíonn teagmhas, tógtar slabhra ó bhun nód an imeachta go dtí an nód deiridh. Ní athraíonn staid na nóid sin nach dtagann isteach sa slabhra.

Éiríonn ceist dhlisteanach: cad a tharlóidh má tharlaíonn dhá imeacht nó fiú roinnt imeachtaí ag an am céanna?

Mar leannán do shaothar Gleb Anfilov, tá sé de bhua agam ceistitheoir fiosrach a chur chuig a leabhar “Escape from Surprise”. Seo “teoiric na coibhneasachta do na cinn bheaga”, a mhíníonn go maith cad a chiallaíonn “comhuaineach” agus conas maireachtáil leis.

Ach tá beagnach gach rud i bhfad níos simplí: nuair a tharlaíonn dhá nó fiú roinnt imeachtaí, déantar gach slabhra ó gach foinse imeachtaí a thógáil agus a phróiseáil go seicheamhach, agus ní tharlaíonn aon mhíorúiltí.

Is é an chéad cheist eile atá go hiomlán dlisteanach ó léitheoir aisteach ná cad a tharlóidh má tá na nóid ceangailte i bhfáinne? Nó, mar a deir siad i measc na ndaoine cliste seo agatsa, tabhair aiseolas isteach. Is é sin, nasc an t-aschur ó cheann de na nóid le hionchur an nód roimhe sin ionas go mbeidh tionchar ag staid aschuir an nód seo ar staid a ionchuir. Ní cheadóidh an t-eagarthóir duit aschur nód a nascadh go díreach lena ionchur. ElDraw. Ach go hindíreach, mar atá san fhigiúr thíos, is féidir é seo a dhéanamh.

Mar sin, cad a tharlóidh sa chás seo? Beidh an freagra an-“cinnte”: ag brath ar na nóid. Breathnaímid ar an sampla san fhigiúr.

ShIoTiny: Nóid, Naisc, agus Imeachtaí nó Gnéithe de Chlár Líníochta

Nuair a bhíonn na teagmhálacha ionchuir de Input1 oscailte, is é 0 an t-ionchur uachtarach nód A. Is é an t-aschur nód A freisin 0. Is é aschur nód B ná 1. Agus, ar deireadh, is é an t-ionchur níos ísle nód A ná 1. Tá gach rud soiléir. Agus dóibh siúd nach bhfuil soiléir, féach thíos le haghaidh cur síos ar conas a oibríonn na nóid “AND” agus “NACH”.

Anois dúnann muid teagmhálacha an ionchuir Input1, is é sin, cuirimid ceann i bhfeidhm ar ionchur uachtarach nód A. Tá a fhios acu siúd atá eolach ar leictreonaic go bhfaighidh muid ciorcad gineadóir clasaiceach ag baint úsáide as eilimintí loighic. Agus go teoiriciúil, ba cheart go ndéanfadh ciorcad den sórt sin an seicheamh 1-0-1-0-1-0… ag aschur na ndúl A agus B. agus 0-1-0-1-0-1-…. Tar éis an tsaoil, ní mór don imeacht staid na nóid A agus B a athrú i gcónaí, ag rith i gciorcal 2-3-2-3-...!

Ach i ndáiríre ní tharlaíonn sé seo. Titfidh an ciorcad isteach i staid randamach - nó fanfaidh an t-athsheachadán ar siúl nó as, nó b'fhéidir beagán buzz air agus as arís agus arís eile i ndiaidh a chéile. Braitheann sé go léir ar an aimsir ag an gcuaille theas de Mars. Agus sin an fáth a tharlaíonn sé seo.

Athraíonn teagmhas ó ionchur nód1 staid nód A, ansin nód B, agus mar sin de i gciorcal arís agus arís eile. Aimsíonn an clár “lúb” an imeachta agus stopann sé an carnabhail seo go héigeantach. Tar éis seo, cuirtear bac ar athruithe ar staid na nóid A agus B go dtí go dtarlaíonn imeacht nua. An nóiméad a shocraíonn an clár “stop ag casadh i gciorcail!” - go ginearálta, braitheann sé ar go leor fachtóirí agus is féidir é a mheas randamach.

Bí cúramach agus snaidhmeanna á nascadh le fáinne - ní bheidh na héifeachtaí soiléir i gcónaí! Bíodh smaoineamh maith agat ar cad atá á dhéanamh agat agus cad chuige!

An bhfuil sé indéanta fós gineadóir a thógáil ar na nóid atá ar fáil dúinn? Is féidir leat! Ach éilíonn sé seo nód a fhéadfaidh imeachtaí a ghiniúint féin. Agus tá nód den sórt sin - is é seo an "líne moille". Feicfimid conas a oibríonn gineadóir le tréimhse 6 soicind san fhigiúr thíos.

ShIoTiny: Nóid, Naisc, agus Imeachtaí nó Gnéithe de Chlár Líníochta

Is é príomhghné an ghineadóra ná nód A - an líne moille. Má athraíonn tú staid ionchuir na líne moille ó 0 go 1, ansin ní bheidh 1 le feiceáil ag an aschur láithreach, ach amháin tar éis am sonraithe. Is é ár gcás go bhfuil sé 3 soicind. Ar an mbealach céanna, má athraíonn tú staid ionchuir na líne moille ó 1 go 0, ansin beidh 0 ag an aschur le feiceáil tar éis na 3 soicind céanna. Socraítear an t-am moille i ndeichiú cuid de shoicind. Is é sin, ciallaíonn an luach 30 3 soicind.

Gné speisialta den líne moille ná go gcruthaíonn sé imeacht tar éis don am moille dul in éag.

Glacaimid leis gurb é 0 aschur na líne moille ar dtús. Tar éis dul thar nód B - an t-inverter - casann an 0 seo isteach i 1 agus téann sé chuig ionchur na líne moille. Ní tharlaíonn aon rud ar an bpointe boise. Ag aschur na líne moille, fanfaidh sé 0, ach cuirfear tús le comhaireamh síos an ama moille. 3 soicind pas. Agus ansin gineann an líne moille imeacht. Ag a aschur tá an chuma air 1. Tar éis don aonad seo dul trí nód B - an t-inverter - casann sé isteach i 0 agus téann sé chuig ionchur na líne moille. 3 soicind eile pas a fháil... agus an próiseas arís. Is é sin, gach 3 soicind athraíonn staid an aschuir líne moille ó 0 go 1 agus ansin ó 1 go 0. Cliceáil ar an sealaíocht. Tá an gineadóir ag obair. Is é 6 shoicind an tréimhse chuisle (3 soicind ag an nialas aschuir agus 3 shoicind ag an gceann aschuir).

Ach, i gciorcaid fhíor, de ghnáth ní gá an sampla seo a úsáid. Tá nóid lasc ama speisialta ann a ghineann go foirfe agus gan cúnamh seachtrach seicheamh bíoga le tréimhse áirithe. Tá fad “nialas” agus “amháin” sna bíoga seo cothrom le leath na tréimhse.

Chun gníomhartha tréimhsiúla a shocrú, bain úsáid as nóid lasc ama.

Tugaim faoi deara go dtugtar “ meander ” ar chomharthaí digiteacha den sórt sin , áit a bhfuil fad “nialas” agus “amháin” comhionann.

Tá súil agam go bhfuil an cheist soiléirithe agam beagán faoin gcaoi a ndéantar imeachtaí a iomadú idir nóid agus cad nach bhfuil le déanamh?

Conclúid agus tagairtí

Bhí an t-alt gearr, ach is freagra é an t-alt seo ar cheisteanna a tháinig chun cinn maidir le nóid agus imeachtaí.

De réir mar a fhorbraíonn firmware agus samplaí nua le feiceáil, scríobhfaidh mé faoi conas a ríomhchlárú ShIoTiny earraí beaga chomh fada agus a bheidh sé suimiúil do dhaoine.

Mar a bhí roimhe seo, léaráid, firmware, samplaí, cur síos ar chomhpháirteanna agus gach rud tá an chuid eile anseo.

Ceisteanna, moltaí, cáineadh - téigh anseo: [ríomhphost faoi chosaint]

Foinse: will.com

Add a comment