Mapulogalamu owonera a Sonoff Basic

Mapulogalamu owonera a Sonoff Basic
Nkhani yokhudzana ndi momwe mungapangire chowongolera chanzeru kuchokera ku chipangizo chotsika mtengo cha China. Chipangizo choterocho chidzagwiritsidwa ntchito popanga makina apanyumba komanso ngati makalasi othandiza mu sayansi yamakompyuta.
Mwachidziwitso, mwachisawawa pulogalamu ya Sonoff Basic imagwira ntchito ndi foni yam'manja kudzera pamtambo waku China; pambuyo posinthidwa, kulumikizana kwina konse ndi chipangizochi kutheka mumsakatuli.

Gawo I. Kulumikiza Sonoff ku ntchito ya MGT24

Gawo 1: Pangani gulu lowongolera

Lembani patsamba mgt24 (ngati simunalembetse kale) ndikulowetsani pogwiritsa ntchito akaunti yanu.
Lowani muakauntiMapulogalamu owonera a Sonoff Basic

Kuti mupange gulu lowongolera la chipangizo chatsopano, dinani batani "+".
Chitsanzo cha kupanga guluMapulogalamu owonera a Sonoff Basic

Gululo likapangidwa, liziwoneka pamndandanda wamapanelo anu.

Pagawo la "Setup" la gulu lomwe lapangidwa, pezani magawo a "ID ya Chipangizo" ndi "Authorization Key"; m'tsogolomu, chidziwitsochi chidzafunika mukakhazikitsa chipangizo cha Sonoff.
Chitsanzo cha tabuMapulogalamu owonera a Sonoff Basic

Gawo 2. Reflash chipangizo

Kugwiritsa ntchito XTCOM_UTIL download firmware Malingaliro a kampani Sonoff Basic PLC ku chipangizochi, mufunika chosinthira cha USB-TTL. Pano Bukuli ΠΈ Kanema malangizo.

Gawo 3. Chipangizo khwekhwe

Ikani mphamvu pa chipangizocho, nyali ya LED ikayatsa, dinani batani ndikuigwira mpaka kuwala kwa LED kutayamba kuwunikira nthawi ndi nthawi.
Pakadali pano, netiweki yatsopano ya Wi-Fi yotchedwa "PLC Sonoff Basic" iwonekera, lumikizani kompyuta yanu ku netiweki iyi.
Kufotokozera kwa chiwonetsero cha LED

Chizindikiro cha LED
Mkhalidwe wa Chipangizo

kuthwanima kawiri kawiri
palibe kulumikizana ndi rauta

imawala mosalekeza
kugwirizana kwakhazikitsidwa ndi rauta

nthawi ndi nthawi yunifolomu kuthwanima
Wi-Fi access point mode

kuzimitsidwa
Palibe magetsi

Tsegulani msakatuli wapaintaneti ndikulowetsa mawu akuti "192.168.4.1" mu bar ya adilesi, pitani patsamba la zoikamo za netiweki.

Lembani minda motere:

  • "Dzina la netiweki" ndi "Achinsinsi" (kulumikiza chipangizo ndi rauta yanu ya wi-fi).
  • "Chidziwitso cha Chipangizo" ndi "Kiyi yovomerezeka" (kuvomereza chipangizocho pa ntchito ya MGT24).

Chitsanzo chokhazikitsa magawo a network networkMapulogalamu owonera a Sonoff Basic

Sungani zoikamo ndikuyambitsanso chipangizocho.
ndi Kanema malangizo.

Gawo 4. Kulumikiza masensa (ngati mukufuna)

Firmware yamakono imathandizira mpaka masensa anayi a ds18b20. Pano Kanema malangizo kukhazikitsa masensa. Mwachiwonekere, sitepe iyi idzakhala yovuta kwambiri, chifukwa idzafuna mikono yowongoka ndi chitsulo chosungunuka.

Gawo II. Mapulogalamu owonera

Gawo 1: Pangani Scripts

Amagwiritsidwa ntchito ngati malo opangira mapulogalamu Mojinga, chilengedwe ndi chosavuta kuphunzira, kotero simukusowa kukhala wolemba mapulogalamu kuti mupange zolemba zosavuta.

Ndinawonjezera midadada yapadera yolembera ndi kuwerenga magawo a chipangizo. Gawo lililonse limafikiridwa ndi dzina. Pazida zakutali, mayina apawiri amagwiritsidwa ntchito: "parameter@device".
Mndandanda wazomwe mungasankheMapulogalamu owonera a Sonoff Basic

Chitsanzo cha kuyatsa ndi kuzimitsa katundu (1Hz):
Mapulogalamu owonera a Sonoff Basic

Chitsanzo cha script yogwirizanitsa ntchito ya zipangizo ziwiri zosiyana. Mwakutero, kubweza kwa chipangizo chandamale kumabwereza magwiridwe antchito a chipangizo chakutali.
Mapulogalamu owonera a Sonoff Basic

Zochitika za thermostat (popanda hysteresis):
Mapulogalamu owonera a Sonoff Basic

Kuti mupange zolemba zovuta kwambiri, mutha kugwiritsa ntchito zosinthika, malupu, ntchito (ndi zotsutsana) ndi zomanga zina. Sindifotokoza izi mwatsatanetsatane apa; pali zambiri paukonde. maphunziro a Blockly.

Gawo 2: Dongosolo la Scripts

Zolemba zimayenda mosalekeza, ndipo zikangofika kumapeto, zimayambiranso. Pankhaniyi, pali midadada iwiri yomwe ingathe kuyimitsa kwakanthawi script, "kuchedwa" ndi "kupuma".
"Kuchedwa" block imagwiritsidwa ntchito kuchedwa kwa millisecond kapena microsecond. Chida ichi chimasunga nthawi yayitali, kutsekereza kugwiritsa ntchito chipangizo chonsecho.
Chotchinga cha "pause" chimagwiritsidwa ntchito kuchedwa kwachiwiri (kapena kuchepera), ndipo sichimalepheretsa kuchitidwa kwa njira zina mu chipangizocho.
Ngati script palokha ili ndi loop yopanda malire, yomwe thupi lake lilibe "pause", womasulirayo amangoyambitsa kupuma pang'ono.
Ngati malo okumbukira atha, womasulira adzasiya kugwiritsa ntchito mawu osowa mphamvu (samalani ndi ntchito zobwerezabwereza).

Khwerero 3: Kuthetsa Malemba

Kuti mukonze zolakwika zomwe zidakwezedwa kale mu chipangizocho, mutha kuyendetsa pulogalamu yotsata pang'onopang'ono. Izi zikhoza kukhala zothandiza kwambiri pamene khalidwe la script lidzakhala losiyana ndi zomwe wolembayo ankafuna. Pamenepa, kufufuza kumathandiza wolemba kuti apeze mwamsanga gwero la vuto ndi kukonza zolakwika mu script.

Zochitika zowerengera factorial mu debug mode:
Mapulogalamu owonera a Sonoff Basic

Chida chowongolera ndi chophweka kwambiri ndipo chimakhala ndi mabatani akuluakulu atatu: "kuyamba", "sitepe imodzi patsogolo" ndi "imitsani" (tisaiwalenso za "lowani" ndi "kutuluka" njira yowonongeka). Kuphatikiza pakutsata pang'onopang'ono, mutha kukhazikitsa malo opumira pa chipika chilichonse (podina pa block).
Kuti muwonetse mayendedwe aposachedwa (zoseweretsa, ma relay) mu polojekiti, gwiritsani ntchito block "print".
ndi mwachidule kanema za kugwiritsa ntchito debugger.

Gawo lachidwi. Kodi pansi pa hood ndi chiyani?

Kuti zolembazo zigwire ntchito pa chipangizo chomwe mukufuna, womasulira wa bytecode ndi assembler wokhala ndi malangizo 38 adapangidwa. Khodi yoyambira ya Blockly ili ndi makina apadera opangira ma code omwe amasintha midadada yowoneka kukhala malangizo amsonkhano. Pambuyo pake, pulogalamu yophatikizira iyi imasinthidwa kukhala bytecode ndikusamutsidwa ku chipangizocho kuti aphedwe.
Kapangidwe ka makina owoneka bwinowa ndi osavuta ndipo palibe chifukwa chofotokozera; pa intaneti mupeza zolemba zambiri zopanga makina osavuta kwambiri.
Nthawi zambiri ndimagawira ma byte 1000 pagulu la makina anga enieni, omwe ndikwanira kusungitsa. Zoonadi, zobwerezabwereza zakuya zimatha kuthera mulu uliwonse, koma sizingatheke kuti zigwiritsidwe ntchito.

Zotsatira za bytecode ndizophatikizana. Mwachitsanzo, bytecode powerengera factorial yomweyo ndi ma byte 49 okha. Ili ndiye mawonekedwe ake:
Mapulogalamu owonera a Sonoff Basic

Ndipo iyi ndi pulogalamu yake yosonkhanitsa:

shift -1
ldi 10
call factorial, 1
print
exit
:factorial
ld_arg 0
ldi 1
gt
je 8
ld_arg 0
ld_arg 0
ldi 1
sub
call factorial, 1
mul
ret
ldi 1
ret

Ngati mawonekedwe oyimira msonkhano alibe phindu lililonse, ndiye kuti tabu ya "javascrit", m'malo mwake, imapereka mawonekedwe odziwika bwino kuposa midadada yowoneka:

function factorial(num) {
  if (num > 1) {
    return num + factorial(num - 1);
  }
  return 1;
}

window.alert(factorial(10));

Zokhudza magwiridwe antchito. Nditathamanga cholembera chosavuta kwambiri, ndidapeza mawonekedwe a 47 kHz square pawindo la oscilloscope (pa liwiro la wotchi ya 80 MHz).
Mapulogalamu owonera a Sonoff BasicMapulogalamu owonera a Sonoff Basic
Ndikuganiza kuti izi ndi zotsatira zabwino, osachepera liwiro ili pafupifupi kakhumi mofulumira kuposa Lua ΠΈ Espruino.

Gawo lotsiriza

Mwachidule, ndikunena kuti kugwiritsa ntchito zolembera kumatilola kuti tisamangopanga malingaliro ogwiritsira ntchito chipangizo chosiyana, komanso zimapangitsa kuti zitheke kulumikiza zida zingapo munjira imodzi, pomwe zida zina zimakhudza machitidwe a ena.
Ndikuwonanso kuti njira yosankhidwa yosungira zolemba (mwachindunji pazida zokha, osati pa seva) imathandizira kusintha kwa zida zomwe zikugwira ntchito kale ku seva ina, mwachitsanzo ku Raspberry wakunyumba, apa. Bukuli.

Ndizo zonse, ndikhala wokondwa kumva upangiri ndikudzudzula kolimbikitsa.

Source: www.habr.com

Kuwonjezera ndemanga