Otu akụkọ gbasara otu esi emepụta njikwa mgbagha mmemme site na ngwaọrụ China dị ọnụ ala. Ngwa dị otú ahụ ga-ahụ iji ya ma na akpaaka ụlọ yana dị ka klaasị bara uru na sayensị kọmputa ụlọ akwụkwọ.
Maka ntụnye aka, na ndabara, mmemme Sonoff Basic na-arụ ọrụ na ngwa mkpanaaka site na ọrụ igwe ojii nke China; mgbe mgbanwe a chọrọ, mmekọrịta niile na ngwaọrụ a ga-ekwe omume na ihe nchọgharị ahụ.
Nkeji I. Ijikọ Sonoff na ọrụ MGT24
Kwụpụ 1: Mepụta panel njikwa
Debanye aha na saịtị ahụ
Banye
Iji mepụta ogwe njikwa maka ngwaọrụ ọhụrụ, pịa bọtịnụ "+".
Ọmụmaatụ nke ịmepụta otu panel
Ozugbo emechara panel ahụ, ọ ga-apụta na listi panel gị.
Na taabụ "Ntọala" nke panel emepụtara, chọta mpaghara "NJ ngwaọrụ" na "Igodo ikike"; n'ọdịnihu, a ga-achọ ozi a mgbe ị na-edozi ngwaọrụ Sonoff.
Ihe atụ tab
Nzọụkwụ 2. Reflash ngwaọrụ
Iji akụrụngwa
Nzọụkwụ 3. Ntọala ngwaọrụ
Tinye ike na ngwaọrụ ahụ, mgbe ọkụ ọkụ na-enwu, pịa bọtịnụ ma jide ya ruo mgbe LED malitere ịmị ọkụ kwa oge.
N'oge a, netwọk wi-fi ọhụrụ akpọrọ "PLC Sonoff Basic" ga-apụta, jikọọ kọmputa gị na netwọk a.
Nkọwa nke ihe ngosi LED
Ihe ngosi LED
Ọnọdụ ngwaọrụ
na-egbuke egbuke okpukpu abụọ nke oge
enweghị njikọ na rawụta
na-enwu na-aga n'ihu
njikọ eguzobe na rawụta
na-egbu maramara n'otu oge
ọnọdụ ebe nnweta wi-fi
emenyụ
Enweghị ọkụ
Mepee ihe nchọgharị Ịntanetị wee tinye ederede "192.168.4.1" na adreesị mmanya, gaa na ntọala ntọala netwọk nke ngwaọrụ ahụ.
Dejupụta ubi dị ka ndị a:
- "Aha netwọkụ" na "Paswọdu" (iji jikọta ngwaọrụ na rawụta wi-fi ụlọ gị).
- "NJ ngwaọrụ" na "igodo ikike" (iji nye ngwaọrụ ikike na ọrụ MGT24).
Ọmụmaatụ nke ịtọ ntọala netwọk ngwaọrụ
Chekwaa ntọala ma malitegharịa ngwaọrụ ahụ.
ọ bụ
Nzọụkwụ 4. Jikọọ sensọ (nhọrọ)
Firmware dị ugbu a na-akwado ihe mmetụta okpomọkụ ds18b20 anọ. Ebe a
Nkeji II. Mmemme ihe onyonyo
Nzọụkwụ 1: Mepụta Scripts
Ejiri ya dị ka ebe mmemme
M gbakwunyere blọk pụrụ iche maka ide na ọgụgụ ngwaọrụ. A na-enweta oke ọ bụla site na aha. Maka paramita nke ngwaọrụ ndị dịpụrụ adịpụ, a na-eji aha mkpokọta: "parameter@ Device".
Ndepụta nhọrọ nhọrọ
Ọmụmaatụ ihe atụ maka ịgbanwuo ma gbanyụọ ibu (1Hz):
Ihe atụ nke edemede na-emekọrịta ọrụ nke ngwaọrụ abụọ dị iche iche. Ya bụ, ọsọ agba anọ nke lekwasịrị ngwaọrụ-emeghachi ọrụ nke ọsọ agba anọ nke ime ngwaọrụ.
Ihe atụ maka thermostat (na-enweghị hysteresis):
Iji mepụta ederede dị mgbagwoju anya, ị nwere ike iji mgbanwe, loops, ọrụ (na arụmụka) na ihe ndị ọzọ na-ewu. Agaghị m akọwa ihe a niile n'ụzọ zuru ezu ebe a; enweelarị ọtụtụ ihe na net.
Nzọụkwụ 2: Usoro nke Scripts
Edemede ahụ na-aga n'ihu, ozugbo ọ rutere na njedebe ya, ọ na-amalite ọzọ. N'okwu a, enwere ihe mgbochi abụọ nwere ike ịkwụsịtụ edemede ahụ nwa oge, "egbu oge" na "kwụsịtụ".
A na-eji ngọngọ "ogbu oge" maka igbu oge millisekọnd ma ọ bụ nkeji nkeji. Ihe mgbochi a na-edobe ogologo oge, na-egbochi ọrụ nke ngwaọrụ niile.
A na-eji ngọngọ "kwụsịtụ" maka igbu oge nke abụọ (ma ọ bụ obere), ọ naghị egbochi mmezu nke usoro ndị ọzọ na ngwaọrụ ahụ.
Ọ bụrụ na edemede ahụ n'onwe ya nwere loop na-enweghị ngwụcha, nke ahụ ya enweghị “kwụsịtụ”, onye ntụgharị okwu na-ebido obere nkwụsịtụ.
Ọ bụrụ na nchịkọta ebe nchekwa ekenyela agwụla, onye ntụgharị okwu ga-akwụsị ime ụdị edemede agụụ ike (kpachara anya na ọrụ ndị na-emegharị emegharị).
Kwụpụ 3: Debugging Scripts
Iji dezie edemede nke etinyegoro n'ime ngwaọrụ ahụ, ị nwere ike ịme usoro usoro usoro nzọụkwụ site na nzọụkwụ. Nke a nwere ike ịba uru nke ukwuu mgbe omume nke edemede ahụ bịara dị iche na ihe odee bu n'obi. N'okwu a, ịchụ nta na-enye ohere ka onye edemede ahụ chọta ebe nsogbu ahụ ngwa ngwa ma dozie njehie dị na edemede ahụ.
Ọnọdụ maka ịgbakọ ihe n'ụdị nbipu:
Ngwá ọrụ debug dị nnọọ mfe ma mejupụtara bọtịnụ isi atọ: "mmalite", "otu nzọụkwụ na-aga n'ihu" na "kwụsị" (ka anyị ghara ichefu banyere "abanye" na "wepụ" ọnọdụ debug). Na mgbakwunye na ịchọta nzọụkwụ site na nzọụkwụ, ị nwere ike ịtọ ebe nkwụsịtụ na ngọngọ ọ bụla (site na ịpị ngọngọ).
Iji gosipụta ụkpụrụ dị ugbu a nke paramita (sensọ, relays) na nyocha, jiri ngọngọ “bipụta”.
ọ bụ
Ngalaba maka ndị na-achọ ịmata ihe. Kedu ihe dị n'okpuru mkpuchi?
Ka script wee rụọ ọrụ na ngwaọrụ ebumnuche, onye ntụgharị bytecode na onye mgbakọ nwere ntuziaka 38 ka emepụtara. Koodu isi mmalite Blockly nwere ihe nrụpụta koodu pụrụ iche arụnyere n'ime ya nke na-agbanwe ihe mgbochi anya ka ọ bụrụ ntuziaka mgbakọ. Mgbe nke ahụ gasịrị, a na-agbanwe mmemme mgbakọ a ka ọ bụrụ bytecode ma bufee ya na ngwaọrụ maka igbu ya.
Ihe owuwu nke igwe mebere a dị mfe ma enweghị isi nkọwa ya; na ịntanetị ị ga-ahụ ọtụtụ akụkọ gbasara imepụta igwe mebere kacha dị mfe.
M na-ekenyekarị 1000 bytes maka ikpokọta igwe mebere m, nke zuru oke. N'ezie, nlọghachi miri emi nwere ike ikpochapụ ihe ọ bụla, mana o yighị ka ha ga-eji ya eme ihe ọ bụla.
bytecode nke si na ya pụta bụ kọmpat. Dị ka ọmụmaatụ, bytecode maka ịgbakọ otu factorial bụ naanị 49 bytes. Nke a bụ ụdị anya ya:
Ma nke a bụ mmemme onye mkpokọta ya:
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
Ọ bụrụ na ụdị mgbakọ ahụ enweghị uru ọ bụla bara uru, mgbe ahụ, taabụ “javascrit”, kama nke ahụ, na-enye ọmarịcha anya karịa ihe mgbochi anya:
function factorial(num) {
if (num > 1) {
return num + factorial(num - 1);
}
return 1;
}
window.alert(factorial(10));
Banyere arụmọrụ. Mgbe m na-agba ọsọ ederede flasher kachasị mfe, enwetara m ebili mmiri 47 kHz na ihuenyo oscilloscope (na ọsọ elekere nke 80 MHz).
Echere m na nke a bụ ezigbo nsonaazụ, ọ dịkarịa ala ọsọ a fọrọ nke nta ka ọ bụrụ ugboro iri karịa
Nke ikpeazụ
Iji chịkọta ọnụ, m ga-ekwu na iji edemede eme ihe na-enye anyị ohere ọ bụghị nanị ịmepụta echiche nke ọrụ nke ngwaọrụ dị iche iche, kamakwa na-eme ka o kwe omume jikọọ ọtụtụ ngwaọrụ n'ime otu usoro, ebe ụfọdụ ngwaọrụ na-emetụta omume nke ndị ọzọ.
M na-achọpụtakwa na usoro a họọrọ nke ịchekwa scripts (kpọmkwem na ngwaọrụ n'onwe ha, ọ bụghị na ihe nkesa) na-eme ka ịgbanwee ngwaọrụ ndị na-arụ ọrụ ugbu a gaa na nkesa ọzọ, dịka ọmụmaatụ na Raspberry ụlọ, ebe a.
Nke ahụ bụ naanị, ọ ga-amasị m ịnụ ndụmọdụ na nkatọ bara uru.
isi: www.habr.com