Hoʻolālā ʻike no Sonoff Basic

Hoʻolālā ʻike no Sonoff Basic
He ʻatikala e pili ana i ke ʻano o ka hana ʻana i kahi mea hoʻokele logic programmable mai kahi mea hana Kina. E ʻike ʻia kēlā ʻano mea hoʻohana ma ka home automation a ma ke ʻano he papa hana i ka ʻepekema kamepiula kula.
No ka hōʻike ʻana, hana ka papahana Sonoff Basic me kahi polokalamu kelepona ma o kahi lawelawe kapuaʻi Kina; ma hope o ka hoʻololi ʻana i manaʻo ʻia, hiki ke hoʻopili hou ʻia me kēia hāmeʻa ma ka polokalamu kele pūnaewele.

Mahele I. Hoʻohui iā Sonoff i ka lawelawe MGT24

KaʻAnuʻu Hana 1: E hana i kahi papa mana

E kākau inoa ma ka pūnaewele mgt24 (inā ʻaʻole i hoʻopaʻa inoa ʻia) a e komo me ka hoʻohana ʻana i kāu moʻokāki.
ʻEʻe i ka ʻōnaehanaHoʻolālā ʻike no Sonoff Basic

No ka hana ʻana i kahi papa mana no kahi mea hou, kaomi i ke pihi "+".
Ka laʻana o ka hana ʻana i kahi pāHoʻolālā ʻike no Sonoff Basic

Ke hana ʻia ka panel, e ʻike ʻia i kāu papa inoa o nā panela.

Ma ka ʻaoʻao "Setup" o ka panel i hana ʻia, e ʻimi i nā kahua "Device ID" a me "Kūpono Mana"; i ka wā e hiki mai ana, e koi ʻia kēia ʻike i ka wā e hoʻonohonoho ai i ka mea Sonoff.
Laʻana pāHoʻolālā ʻike no Sonoff Basic

KaʻAnuʻu 2. Hoʻoula hou i ka mea hana

Ke hoʻohana nei i ka pono XTCOM_UTIL hoʻoiho i ka firmware PLC Sonoff Basic i ka hāmeʻa, no kēia pono ʻoe i kahi mea hoʻololi USB-TTL. Eia manual и Aʻo wikiō.

KaʻAnuʻu 3. Hoʻonohonoho mea hana

E hoʻopili i ka mana i ka hāmeʻa, ma hope o ka hoʻomālamalama ʻana o nā kukui LED, e kaomi i ke pihi a paʻa a paʻa a hiki i ka hoʻomaka ʻana o ka LED e uila i kēlā me kēia manawa.
I kēia manawa, e puka mai ana kahi pūnaewele wi-fi hou i kapa ʻia ʻo "PLC Sonoff Basic", e hoʻopili i kāu kamepiula i kēia pūnaewele.
Ka wehewehe ʻana i ka hōʻailona LED

Hōʻike LED
Kūlana Mea Hana

ʻōpaʻa pālua manawa
ʻaʻohe pili i ka router

alohi mau
pili i hoʻokumu ʻia me ka router

ʻālohilohi ʻaʻahu like ʻole
mode wahi komo wi-fi

pio
ʻAʻohe lako mana

E wehe i kahi polokalamu kele pūnaewele a hoʻokomo i ka kikokikona "192.168.4.1" i ka pahu helu, e hele i ka ʻaoʻao hoʻonohonoho hoʻonohonoho pūnaewele.

E hoopiha i na kahua penei:

  • "Inoa pūnaewele" a me "Password" (no ka hoʻopili ʻana i ka hāmeʻa i kāu kelepona wi-fi home).
  • "Id Device" a me "Ke kī ʻae" (e ʻae i ka hāmeʻa ma ka lawelawe MGT24).

Ka laʻana o ka hoʻonohonoho ʻana i nā ʻāpana ʻupenaHoʻolālā ʻike no Sonoff Basic

E mālama i nā hoʻonohonoho a hoʻomaka hou i ka hāmeʻa.
he mea Aʻo wikiō.

KaʻAnuʻu 4. Hoʻohui i nā mea ʻike (koho)

Kākoʻo ka firmware o kēia manawa a hiki i ʻehā mau ʻike wela ds18b20. Eia Aʻo wikiō no ka hoʻokomo ʻana i nā mea ʻike. Me he mea lā, ʻo kēia ʻanuʻu ka mea paʻakikī loa, no ka mea, pono ia i nā lima pololei a me ka hao hao.

Pauku II. Hoʻolālā ʻike

KaʻAnuʻu 1: E hana i nā Scripts

Hoʻohana ʻia ma ke ʻano he papahana papahana Lulu-pale, maʻalahi ke aʻo ʻana i ke kaiapuni, no laila ʻaʻole pono ʻoe e lilo i mea polokalamu e hana i nā palapala maʻalahi.

Ua hoʻohui au i nā poloka kūikawā no ke kākau ʻana a me ka heluhelu ʻana i nā ʻāpana hāmeʻa. Loaʻa ʻia kekahi ʻāpana ma ka inoa. No nā palena o nā mea mamao, hoʻohana ʻia nā inoa hui: "parameter@device".
Ka papa inoa o nā kohoHoʻolālā ʻike no Sonoff Basic

Laʻana hiʻohiʻona no ka hoʻololi ʻana a hoʻopau i ka ukana (1Hz):
Hoʻolālā ʻike no Sonoff Basic

He laʻana o kahi hōʻailona e hoʻonohonoho ana i ka hana o ʻelua mau mea ʻokoʻa. ʻO ia hoʻi, ʻo ka relay o ka mea i manaʻo ʻia e hana hou i ka hana o ka relay o ka mea mamao.
Hoʻolālā ʻike no Sonoff Basic

Hōʻike no ka thermostat (me ka ʻole o ka hysteresis):
Hoʻolālā ʻike no Sonoff Basic

No ka hana ʻana i nā palapala paʻakikī, hiki iā ʻoe ke hoʻohana i nā mea hoʻololi, nā puka lou, nā hana (me nā hoʻopaʻapaʻa) a me nā mea hana ʻē aʻe. ʻAʻole wau e wehewehe kikoʻī i kēia mau mea āpau ma ʻaneʻi; ua nui loa ma ka ʻupena. mea hoʻonaʻauao e pili ana iā Blockly.

KaʻAnuʻu Hana 2: Hoʻonohonoho o nā Palapala

Holo mau ka palapala, a hiki i kona hopena, hoʻomaka hou. I kēia hihia, ʻelua mau poloka e hiki ke hoʻomaha iki i ka palapala, "hoʻopaneʻe" a "hoʻomaha".
Hoʻohana ʻia ka poloka "lohi" no nā lohi millisecond a i ʻole microsecond. Mālama pono kēia poloka i ka manawa manawa, ke kāohi ʻana i ka hana o ka hāmeʻa holoʻokoʻa.
Hoʻohana ʻia ka poloka "pause" no ka lua (a i ʻole ka liʻiliʻi) lohi, ʻaʻole ia e pale i ka hoʻokō ʻana i nā kaʻina hana ʻē aʻe i ka hāmeʻa.
Inā loaʻa i ka ʻatikala ponoʻī kahi loop palena ʻole, ʻaʻole i loaʻa ka "pause" i ke kino, hoʻomaka ka mea unuhi ʻōlelo i kahi hoʻomaha pōkole.
Inā pau ka waihona hoʻomanaʻo i hoʻokaʻawale ʻia, e hoʻōki ka unuhi ʻōlelo i ka hoʻokō ʻana i kahi palapala pōloli mana (e akahele me nā hana recursive).

KaʻAnuʻu Hana 3: Debugging Scripts

No ka hoʻopau ʻana i kahi palapala i hoʻouka ʻia i loko o ka hāmeʻa, hiki iā ʻoe ke holo i kahi ʻōkuhi papahana i kēlā me kēia pae. Hiki ke hoʻohana nui ʻia kēia inā ʻokoʻa ke ʻano o ka palapala mai ka mea a ka mea kākau i manaʻo ai. Ma kēia hihia, hiki i ka mea kākau ke ʻimi koke i ke kumu o ka pilikia a hoʻoponopono i ka hewa o ka palapala.

ʻO ke ʻano no ka helu ʻana i ka factorial ma ke ʻano debug:
Hoʻolālā ʻike no Sonoff Basic

He mea maʻalahi loa ka mea hana debug a loaʻa i ʻekolu mau pihi nui: "hoʻomaka", "hoʻokahi kapuaʻi i mua" a me "kū" (ʻaʻole hoʻi e poina e pili ana i ke ʻano "komo" a me ka "puka" debug mode). Ma waho aʻe o ka ʻimi ʻana i kēlā me kēia ʻanuʻu, hiki iā ʻoe ke hoʻonohonoho i kahi breakpoint ma kekahi poloka (ma ke kaomi ʻana i ka poloka).
No ka hōʻike ʻana i nā waiwai o kēia manawa o nā ʻāpana (sensors, relays) i ka nānā, e hoʻohana i ka poloka "print".
he mea wikiō ʻike e pili ana i ka hoʻohana ʻana i ka debugger.

Māhele no ka poʻe hoihoi. He aha ka mea ma lalo o ke kapa?

I mea e hana ai nā palapala ma ka mea i hoʻopaʻa ʻia, ua kūkulu ʻia kahi unuhi unuhi bytecode a me kahi hui pū me nā ʻōlelo aʻoaʻo 38. Loaʻa i ka code kumu o Blockly kahi mea hoʻomohala code kūikawā i kūkulu ʻia i loko e hoʻololi i nā poloka ʻike i nā ʻōlelo aʻoaʻo. A laila, hoʻololi ʻia kēia polokalamu assembler i bytecode a hoʻoili ʻia i ka hāmeʻa no ka hoʻokō.
He mea maʻalahi ka hoʻolālā o kēia mīkini virtual a ʻaʻohe wahi kikoʻī e wehewehe ai; ma ka Pūnaewele e ʻike ʻoe i nā ʻatikala he nui e pili ana i ka hoʻolālā ʻana i nā mīkini virtual maʻalahi.
Hoʻokaʻawale pinepine au i 1000 bytes no ka hoʻopaʻa ʻana o kaʻu mīkini virtual, i lawa ia e mālama. ʻO kaʻoiaʻiʻo, hiki i nā recursions hohonu ke hoʻopau i kekahi stack, akā ʻaʻole paha lākou e hoʻohana pono.

ʻO ka hopena bytecode he paʻakikī loa. ʻO kahi laʻana, ʻo ka bytecode no ka helu ʻana i ka factorial like he 49 bytes wale nō. ʻO kēia kona ʻano hiʻona:
Hoʻolālā ʻike no Sonoff Basic

A eia kāna polokalamu hoʻohui:

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

Inā ʻaʻohe waiwai kūpono o ke ʻano hui o ka hōʻike ʻana, a laila ʻo ka ʻaoʻao "javascrit", ma kahi ʻē aʻe, hāʻawi i kahi hiʻohiʻona maʻamau ma mua o nā poloka ʻike.

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

window.alert(factorial(10));

E pili ana i ka hana. I koʻu holo ʻana i ka hōʻailona flasher maʻalahi loa, ua loaʻa iaʻu kahi nalu square 47 kHz ma ka pale oscilloscope (ma ka wikiwiki o ka uaki ʻo 80 MHz).
Hoʻolālā ʻike no Sonoff BasicHoʻolālā ʻike no Sonoff Basic
Manaʻo wau he hopena maikaʻi kēia, ʻoi aku ka liʻiliʻi o kēia wikiwiki he ʻumi mau manawa ʻoi aku ka wikiwiki lawe и Espruino.

ʻO ka hope loa

I ka hōʻuluʻulu ʻana, e ʻōlelo wau ʻo ka hoʻohana ʻana i nā palapala e hiki ai iā mākou ke hoʻolālā wale i ka loiloi o ka hana ʻana o kahi hāmeʻa kaʻawale, akā hiki nō hoʻi ke hoʻohui i kekahi mau mea i loko o kahi mīkini hoʻokahi, kahi e hoʻohuli ai kekahi mau mea i ka ʻano o nā mea ʻē aʻe.
Hoʻomaopopo hoʻi au i ke ala i koho ʻia no ka mālama ʻana i nā palapala (pololei i loko o nā polokalamu ponoʻī, ʻaʻole ma ka server) e maʻalahi i ka hoʻololi ʻana o nā mea hana i hana ʻia i kahi kikowaena ʻē aʻe, no ka laʻana i kahi Raspberry home, ma aneʻi manual.

ʻO ia wale nō, hauʻoli wau i ka lohe ʻana i nā ʻōlelo aʻo a me nā ʻōlelo hoʻohewa.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka