ShIoTiny: noodhka, xidhiidhada iyo dhacdooyinka ama sifooyinka barnaamijyada sawirida

ShIoTiny: noodhka, xidhiidhada iyo dhacdooyinka ama sifooyinka barnaamijyada sawirida

Qodobbada ugu muhiimsan ama waxa maqaalkani ku saabsan yahay

Mawduuca maqaalku waa barnaamij PLC muuqaal ah ShioTiny guriga smart ee halkan lagu sharaxay: ShIoTiny: Automation yar, Internet of things ama "lix bilood ka hor fasaxa".

Aad u kooban fikradaha sida guntiinno, isgaarsiinta, dhacdooyinka, iyo sidoo kale sifooyinka soo dejinta iyo fulinta barnaamij muuqaal ah ESP8266, kaas oo ah saldhigga PLC ShioTiny.

Hordhac ama dhowr su'aalood oo urureed

Maqaalkii hore ee ku saabsan horumarkayga, waxaan bixiyay dulmar kooban oo ku saabsan awoodaha maamulaha ShioTiny.

Si la yaab leh, dadweynuhu waxay muujiyeen xiiso xoog leh waxayna i waydiiyeen su'aalo aad u badan. Qaar ka mid ah asxaabta xitaa waxay isla markiiba ii soo bandhigeen inay iga iibsadaan kontaroolaha. Maya, kama soo horjeedo in aan helo lacag yar, laakiin damiirkaygu iima ogola in aan iibiyo wax weli aad u cayriin marka la eego software-ka.

Sidaa darteed, waxaan dhejiyay binaries firmware iyo jaantuska aaladda GitHub: firmware + tilmaamaha ugu gaaban + jaantus + tusaalooyin.

Hadda qof kastaa wuu iftiimin karaa ESP-07 oo wuu la ciyaari karaa firmware-ka laftiisa. Haddii qof runtii rabo isla guddiga sida sawirka, markaa waxaan haystaa dhowr iyaga ka mid ah. Ku qor email ahaan [emailka waa la ilaaliyay]. Laakiin, sida Ogurtsov aan la ilaawi karin ayaa dhihi jiray: "Waxba kama mas'uul ah!"

Haddaba, aan gaadhno dulucda: waa maxay"guntin"(node) iyo"dhacdo"? Sidee barnaamijka loo fuliyay?

Sida caadiga ah, aan ku bilowno sida ay u kala horreeyaan: soo dejinta barnaamijka.

Sida barnaamijka loo raray

Aan ku bilowno waxa dhaca marka aan riixno badhan Upload in editor ElDraw iyo barnaamijkeena wareegga, oo ka kooban afar geesood oo qurux badan, ayaa u duulaya qalabka.

Marka hore, iyada oo ku saleysan jaantuska aan sawirnay, sharraxaaddiisa qaab qoraal ah ayaa la dhisay.
Marka labaad, waxay hubinaysaa in dhammaan gelinta noodhka ay ku xidhan yihiin wax soo saarka. Waa in aanay jirin albaabo β€œka laadlaadsan”. Haddii gelinta noocaas ah la ogaado, wareegga laguma shubi doono ShioTiny, tafatiruhuna wuxuu soo bandhigi doonaa digniin u dhiganta.

Haddii wax waliba si fiican u dhaceen, tifaftiruhu wuxuu u soo dirayaa sharaxaad qoraal ah ee wareegga hal noode marba ShIoTiny. Dabcan, wareegga jira ee ShioTiny ayaa marka hore meesha laga saaray. Tilmaanta qoraalka ee ka soo baxday waxa lagu kaydiyaa xusuusta FLASH.

By habka, haddii aad rabto in aad ka saarto wareegga ka qalab, ka dibna si fudud u shubi wareeg madhan waxa ku jira (oo aan ku jirin element hal noode).

Marka barnaamijka wareegga oo dhan lagu shubo ShIoTiny PLC, wuxuu bilaabayaa inuu "fuliyo". Waxa loola jeedaa?

Ogsoonow in hababka lagu soo dejiyo wareegga xusuusta FLASH marka korontadu shideyso iyo marka wareegga laga helayo tifaftiraha ay isku mid yihiin.

Marka hore, walxaha noode ah ayaa la abuuray iyadoo lagu saleynayo sharraxaaddooda.
Kadibna xiriir ayaa la sameeyaa inta u dhaxaysa qanjidhada. Taasi waa, isku-xidhka wax-soo-saarka ee wax-soo-saarka iyo wax-soo-saarka ayaa la soo saarayaa.

Oo kaliya ka dib waxaas oo dhan ka dib wareegga fulinta barnaamijka ugu weyn ayaa bilaabmaya.

Waxaan qoray waqti dheer, laakiin habka oo dhan - laga bilaabo "loading" wareegga laga bilaabo xusuusta FLASH ilaa bilawga wareegga ugu weyn - waxay qaadataa qayb ka mid ah ilbiriqsi wareeg ah oo ah 60-80 qanjidhada.

Sidee buu u shaqeeyaa loop-ka ugu weyn? Aad u fudud. Marka hore waxa uu sugayaa soo bixista dhacdooyinka nadaxda qaarkeed, ka dibna waxay habaysaa dhacdadaas. Iyo wixii la mid ah oo aan dhammaanayn. Hagaag, ama ilaa ay soo geliyaan nidaam cusub ShioTiny.

Dhowr jeer oo hore ayaan soo sheegay waxyaabo ay ka mid yihiin dhacdooyinka, guntiinno ΠΈ isgaarsiinta. Laakiin waa maxay tani marka laga eego dhinaca software-ka? Maanta ayaan ka hadli doonaa arrintan.

Nodes, xidhiidhada iyo dhacdooyinka

Kaliya fiiri tusaalooyinka barnaamijyada wareegyada ee ShioTinysi loo fahmo in jaantusku ka kooban yahay laba qaybood oo kaliya - nood (ama curiye) iyo xidhiidhada ka dhexeeya.

Knot, laakiin haa ama curiyaha wareegga waa matalaad toos ah oo qaar ka mid ah ficil ka badan xogta. Tani waxay noqon kartaa hawl xisaabeed, hawlgal macquul ah, ama qalliin kasta oo maskaxdeena ku soo dhaca. Waxa ugu muhiimsan waa in noodu leeyahay meel laga soo galo iyo bixid.

Π’Ρ…ΠΎΠ΄ - waa meesha ay noodu ka hesho xogta. Sawirada la geliyo waa dhibco had iyo jeer ku yaal dhinaca bidix ee noodhka.

Ka bax - waa meesha lagu soo saaro natiijada hawlgalka node. Sawirada soo-saarku waa dhibco had iyo jeer ku yaal dhinaca midig ee noodhka.

Qaar ka mid ah qanjidhada ma laha wax-soo-galin noodhadhka noocan oo kale ah waxay dhaliyaan natiijada gudaha. Tusaale ahaan, qanjidhada joogtada ah ama qanjidhada dareeraha: uma baahna xogta qanjidhada kale si ay u soo sheegaan natiijada.

Noodsyada kale, liddi ku ah, ma laha wax soo saar. Kuwani waa noodhadh muujinaya, tusaale ahaan, kiciyayaasha (relays ama wax la mid ah). Way aqbalaan xogta laakiin ma keenaan natiijo xisaabeed oo diyaar u ah noodhadhka kale.

Intaa waxaa dheer, waxaa sidoo kale jira noode faallooyin gaar ah. Waxba ma qabato, ma lahan wax-soo-saar ama wax-soo-saar. Ujeeddadeedu waa inay noqoto sharraxaadda jaantuska.

Maxaa dhacay "dhacdo? Dhacdada waa soo ifbaxa xogta cusub ee nood kasta. Tusaale ahaan, dhacdooyinka waxaa ka mid ah: isbeddel ku yimaada xaaladda gelinta (node Input), helitaanka xogta qalab kale (nodes MQTT ΠΈ UDP), dhicitaanka waqti cayiman (nodes saacad ΠΈ Dib u dhac) iyo wixi la mida.

Maxay yihiin dhacdooyinka? Haa, si loo go'aamiyo noodhka xogta cusubi kacday iyo gobolada loo baahan yahay in la beddelo ee la xidhiidha helitaanka xog cusub. Munaasabadda, sida ay ahayd, "waxay ku dhaaftaa" silsiladaha qanjidhada ilaa ay ka gudubto dhammaan noodhka kuwaas oo gobolkoodu u baahan yahay in la hubiyo oo la beddelo.

Dhammaan qanjidhada waxaa loo qaybin karaa laba qaybood.
Aynu wacno noodhka dhalin kara dhacdooyinka"qanjidhada firfircoon".
Waxaan u yeeri doonaa noodhadhka aan dhalin karin dhacdooyinka "noodh dadban".

Marka qanjidhku uu soo saaro dhacdo (taas oo ah, xog cusub ayaa ka soo baxda soo saarkeeda), ka dibna xaaladda guud ee dhammaan silsiladaha noodyada ee ku xiran wax soo saarka qanjidhada dhacdada ayaa isbeddelaya.

Si loo caddeeyo, tixgeli tusaalaha shaxanka.

ShIoTiny: noodhka, xidhiidhada iyo dhacdooyinka ama sifooyinka barnaamijyada sawirida

Noodlada firfircoon halkan waa Input1, Input2 iyo Input3. Noodhyada soo hadhay waa dadban. Aynu ka fiirsanno waxa dhacaya marka mid ama mid kale la xiro. Si loo fududeeyo, natiijooyinka waxaa lagu soo koobay shax.

ShIoTiny: noodhka, xidhiidhada iyo dhacdooyinka ama sifooyinka barnaamijyada sawirida

Sida aad arki karto, marka ay dhacdo dhacdo, silsilad ayaa la dhisay laga bilaabo marinka isha ee dhacdada ilaa qandhada dhamaadka. Xaaladda qanjidhadaas aan ku dhicin silsiladda isma beddelayso.

Su'aal sharci ah ayaa soo baxda: maxaa dhacaya haddii laba ama xitaa dhowr dhacdo ay isku mar dhacaan?

Anigoo ah qof jecel shaqada Gleb Anfilov, waxaan isku dayaa inaan u diro su'aal cajiib ah buugiisa "Ka baxso yaababka." Kani waa "aragti isku-dhafan oo loogu talagalay kuwa yaryar", taas oo si fiican u sharraxaysa waxa "isku-dhafka ah" macnaheedu yahay iyo sida loola noolaado.

Laakiin dhab ahaantii wax walba waa ka fudud yihiin: marka laba ama xitaa dhowr dhacdo ay dhacaan, dhammaan silsiladaha laga soo bilaabo il kasta oo dhacdo ayaa si isdaba joog ah loo dhisay oo loo farsameeyaa markeeda, mana jiraan wax mucjiso ah.

Su'aasha soo socota ee dhammaystiran ee sharciga ah ee ka timaada akhristaha xiisaha leh ayaa ah maxaa dhacaya haddii qanjidhada lagu xiro giraan? Ama, sida ay ku yidhaahdaan nimankan xariif ah ee idinka mid ah, soo bandhig jawaab celin. Taasi waa, ku xidh wax-soo-saarka mid ka mid ah qanjidhada iyo gelinta qanjidhada hore si xaaladda wax-soo-saarka ee noodhkani u saamayso xaaladda wax-gelinta. Tifaftiruhu kuma oggolaan doono inaad si toos ah ugu xidhid wax-soo-saarka qanjirada iyo geliddeeda. ElDraw. Laakiin si dadban, sida shaxanka hoose, tan waa la samayn karaa.

Haddaba maxaa dhici doona kiiskan? Jawaabtu waxay noqon doontaa mid aad u "huran": iyadoo ku xidhan noodhka. Aynu eegno tusaalaha shaxanka.

ShIoTiny: noodhka, xidhiidhada iyo dhacdooyinka ama sifooyinka barnaamijyada sawirida

Marka ay xidhidhiyaha wax soo galinta ee Input1 furmaan, qaybta sare ee qanjirada A waa 0. Wax soo saarka noode A waa 0. Soo saarida qanjidhada B waa 1. Iyo, ugu dambeyntii, gelinta hoose ee noode A waa 1. Wax walba waa XNUMX. cad. Iyo kuwa aan caddayn, hoos ka eeg sharraxaadda sida "IYO" iyo "MAYA" u shaqeeyaan.

Hadda waxaan xireynaa xiriirada gelinta 1, taas oo ah, waxaan ku dabaqeynaa mid ka mid ah gelinta sare ee noode A. Kuwa aqoonta u leh qalabka elektiroonigga ah waxay og yihiin in dhab ahaantii aan heli doono wareegga koronto-dhaliyaha caadiga ah iyadoo la adeegsanayo walxaha macquulka ah. Aragti ahaan, wareegga noocan oo kale ah waa inuu si aan dhammaad lahayn u soo saaraa taxanaha 1-0-1-0-1-0… marka la soo saaro walxaha A iyo B. iyo 0-1-0-1-0-1-…. Ka dib oo dhan, dhacdadu waa inay si joogto ah u beddeshaa xaaladda qanjidhada A iyo B, oo ku socota goobada 2-3-2-3-...!

Laakiin dhab ahaantii tani ma dhacdo. Wareeggu wuxuu ku dhici doonaa xaalad aan kala sooc lahayn - ama gudbintu waxay ahaan doontaa shid ama damin, ama laga yaabee in yar oo buuq ah oo shid ama dami dhowr jeer oo isku xigta. Dhammaan waxay ku xiran tahay cimilada cirifka koonfureed ee Mars. Waana sababta ay tani u dhacdo.

Dhacdo ka timid node Input1 waxay beddeshaa xaalada noode A, ka dibna budada B, iyo wixii la mid ah goobada dhowr jeer. Barnaamijku waxa uu ogaanayaa "looping" ee dhacdada oo si qasab ah u joojiyo carnival-kan. Taas ka dib, isbeddelada ku dhaca qanjidhada A iyo B waa la xannibaa ilaa ay dhacdo cusub dhacdo. Waqtiga uu barnaamijku go'aaminayo "jooji wareegyada wareegyada!" - guud ahaan, waxay kuxirantahay arrimo badan waxaana loo qaadan karaa random.

Ka digtoonow marka guntimaha lagu xidho giraanta - saamayntu had iyo jeer ma muuqan doonto! Hayso fikrad wanaagsan waxa iyo sababta aad u samaynayso!

Wali suurtagal ma tahay in koronto-dhaliye lagu dhiso noodhka noo diyaarsan? Haa, waad awoodaa! Laakiin tani waxay u baahan tahay noode dhalin kara dhacdooyinka laftiisa. Oo waxaa jira noode noocan oo kale ah - tani waa "khadka dib u dhigista". Aynu aragno sida koronto-dhaliye leh muddo 6 ilbiriqsi ah u shaqeeyo shaxanka hoose.

ShIoTiny: noodhka, xidhiidhada iyo dhacdooyinka ama sifooyinka barnaamijyada sawirida

Qodobka ugu muhiimsan ee koronto-dhaliye waa noode A - khadka daahitaanka. Haddii aad beddesho xaaladda galitaanka khadka daahitaanka 0 ilaa 1, markaa 1 kama soo muuqan doono wax soo saarka isla markaaba, laakiin kaliya ka dib waqti cayiman. Xaaladeena waa 3 ilbiriqsi. Si la mid ah, haddii aad beddesho xaaladda galitaanka ee xariiqda daahitaanka laga bilaabo 1 ilaa 0, markaa 0 ee wax soo saarka ayaa soo muuqan doona 3 ilbiriqsi isku mid ah ka dib. Waqtiga daahitaanka waxaa lagu dejiyay tobnaad ee ilbiriqsi. Taasi waa, qiimaha 30 macnaheedu waa 3 ilbiriqsi.

Sifada gaarka ah ee xariiqda daahitaanka ayaa ah in ay dhaliso dhacdo ka dib wakhtiga daahitaanku uu dhacay.

Aynu ka soo qaadno in markii hore wax soo saarka khadka daahitaanka uu ahaa 0. Ka dib markii la dhaafo noodhka B - beddelka - tani 0 waxay isu beddeshaa 1 waxayna aadaysaa gelinta khadka daahitaanka. Waxba ma dhacaan isla markiiba. Marka la soo saaro khadka daahitaanka, waxay ahaan doontaa 0, laakiin tirinta wakhtiga daahitaanka ayaa bilaabmaya. 3 ilbiriqsi dhaaf Kadibna khadka daahitaanka ayaa abuura dhacdo. Marka la soo saaro waxa ay u muuqataa 1. Cutubkani, ka dib marka uu soo maro noode B - rodol - wuxuu u beddelaa 0 oo wuxuu tagaa gelinta khadka daahitaanka. 3 ilbiriqsi oo kale ayaa dhaaftay... howshana waa soo noqnoqoneysaa. Taasi waa, 3-dii ilbiriqsi kasta xaaladda soo-saarka xariiqda dib-u-dhacku waxay isbedeshaa 0 ilaa 1 ka dibna laga bilaabo 1 ilaa 0. Relay-ga ayaa riixaya. Dab-dhaliye ayaa shaqaynaya. Waqtiga garaaca garaaca wadnaha waa 6 ilbiriqsi (3 ilbiriqsi marka la soo saaro eber iyo 3 ilbiriqsi marka la soo saaro kow).

Laakiin, wareegyada dhabta ah, badanaa looma baahna in la isticmaalo tusaalahan. Waxa jira noodhadh waqti-xireyaal gaar ah oo si fiican oo aan lahayn caawimo dibadda ah dhalinaysa isku xigxiga garaaca wadnaha oo leh muddo cayiman. Muddada "eber" iyo "hal" ee garaacyadan waxay la mid tahay kala badh muddada.

Si aad u dejiso falalka xilliyeedka ah, isticmaal noodhadhka wakhtiga.

Waxaan ogsoonahay in calaamadaha dhijitaalka ah ee noocaas ah, halkaasoo muddada "eber" iyo "hal" ay siman yihiin, loo yaqaan "meander".

Waxaan rajeynayaa inaan caddeeyey su'aasha wax yar oo ku saabsan sida dhacdooyinka loogu faafiyo noodaha dhexdooda iyo waxa aan la samayn karin?

Gabagabo iyo tixraacyo

Maqaalku wuxuu noqday mid gaaban, laakiin maqaalkani wuxuu jawaab u yahay su'aalaha soo baxay ee ku saabsan noodhka iyo dhacdooyinka.

Marka uu firmware-ku soo baxo oo ay soo baxaan tusaalooyin cusub, waxaan wax ka qori doonaa sida barnaamijka loo sameeyo ShioTiny maqaallo yaryar ilaa iyo inta ay noqon doonto mid xiiso leh dadka.

Sidii hore, jaantuska, firmware-ka, tusaalooyinka, sharaxaada qaybaha iyo wax walba inta kale waa halkaan.

Su'aalo, talooyin, dhaleecayn - tag halkan: [emailka waa la ilaaliyay]

Source: www.habr.com

Add a comment