Datalogger cez rádiový prenos: Rozdiel medzi revíziami
Z SensorWiki
Riadok 1: | Riadok 1: | ||
Toto je základný príklad na bezdrôtový prenos dát. Jeden micro:bit je napájaný z batérie a vykonáva samotné merania, tie pošle cez rádiový kanál druhému micro:bitu, ktorý je pripojený k počítaču a všetky dáta, ktoré prijme hneď prepošle po sériovej linke (resp. USB) do počítača, kde ich môžeme sledovať buď priamo v MakeCode prostredí, alebo inom terminálovom programe. | Toto je základný príklad na bezdrôtový prenos dát. Jeden micro:bit je napájaný z batérie a vykonáva samotné merania, tie pošle cez rádiový kanál druhému micro:bitu, ktorý je pripojený k počítaču a všetky dáta, ktoré prijme hneď prepošle po sériovej linke (resp. USB) do počítača, kde ich môžeme sledovať buď priamo v MakeCode prostredí, alebo inom terminálovom programe. | ||
+ | [[Súbor:microbit-serialRadioNumberTx.png]][[Súbor:microbit-serialRadioNumberRx.png]] | ||
<gallery heights=200px mode="packed"> <!-- slideshow? --> | <gallery heights=200px mode="packed"> <!-- slideshow? --> | ||
Image:microbit-serialRadioNumberTx.png|''Program v blokovom jazyku pre vysielač'' | Image:microbit-serialRadioNumberTx.png|''Program v blokovom jazyku pre vysielač'' | ||
− | Image:microbit-serialRadioNumberRx|''a pre prijímač'' | + | Image:microbit-serialRadioNumberRx.png|''a pre prijímač'' |
</gallery> | </gallery> | ||
Riadok 14: | Riadok 15: | ||
</source></tab> | </source></tab> | ||
<tab name="MS Python"><source lang="python" style="background: LightBlue;"> | <tab name="MS Python"><source lang="python" style="background: LightBlue;"> | ||
+ | def on_received_number(receivedNumber): | ||
+ | serial.write_line("" + str((receivedNumber))) | ||
+ | radio.on_received_number(on_received_number) | ||
+ | |||
+ | AccX = 0 | ||
+ | radio.set_group(1) | ||
+ | |||
+ | def on_forever(): | ||
+ | global AccX | ||
+ | AccX = input.acceleration(Dimension.X) | ||
+ | radio.send_number(AccX) | ||
+ | basic.pause(100) | ||
+ | basic.forever(on_forever) | ||
</source></tab> | </source></tab> | ||
Riadok 29: | Riadok 43: | ||
<gallery heights=200px mode="packed"> <!-- slideshow? --> | <gallery heights=200px mode="packed"> <!-- slideshow? --> | ||
Image:microbit-serialRadioStringTx.png|''Program v blokovom jazyku pre vysielač'' | Image:microbit-serialRadioStringTx.png|''Program v blokovom jazyku pre vysielač'' | ||
− | Image:microbit-serialRadioStringRx|''a pre prijímač'' | + | Image:microbit-serialRadioStringRx.png|''a pre prijímač'' |
</gallery> | </gallery> | ||
− | + | [[Súbor:microbit-serialRadioStringTx.png]] | |
+ | [[Súbor:microbit-serialRadioStringRx.png]] | ||
<tabs> | <tabs> | ||
Riadok 39: | Riadok 54: | ||
</source></tab> | </source></tab> | ||
<tab name="MS Python"><source lang="python" style="background: LightBlue;"> | <tab name="MS Python"><source lang="python" style="background: LightBlue;"> | ||
+ | |||
+ | def on_received_number(receivedNumber): | ||
+ | serial.write_line("" + str((receivedNumber))) | ||
+ | radio.on_received_number(on_received_number) | ||
+ | |||
+ | def on_received_string(receivedString): | ||
+ | serial.write_line(receivedString) | ||
+ | radio.on_received_string(on_received_string) | ||
+ | |||
+ | AccX = 0 | ||
+ | radio.set_group(1) | ||
+ | |||
+ | def on_forever(): | ||
+ | radio.send_string("" + str(control.millis()) + "," + str(AccX)) | ||
+ | led.toggle(2, 2) | ||
+ | basic.pause(100) | ||
+ | basic.forever(on_forever) | ||
+ | |||
+ | def on_forever2(): | ||
+ | global AccX | ||
+ | AccX = input.acceleration(Dimension.X) | ||
+ | radio.send_number(AccX) | ||
+ | basic.pause(100) | ||
+ | basic.forever(on_forever2) | ||
+ | |||
</source></tab> | </source></tab> |
Verzia zo dňa a času 17:50, 18. marec 2024
Toto je základný príklad na bezdrôtový prenos dát. Jeden micro:bit je napájaný z batérie a vykonáva samotné merania, tie pošle cez rádiový kanál druhému micro:bitu, ktorý je pripojený k počítaču a všetky dáta, ktoré prijme hneď prepošle po sériovej linke (resp. USB) do počítača, kde ich môžeme sledovať buď priamo v MakeCode prostredí, alebo inom terminálovom programe.
def on_received_number(receivedNumber):
serial.write_line("" + str((receivedNumber)))
radio.on_received_number(on_received_number)
AccX = 0
radio.set_group(1)
def on_forever():
global AccX
AccX = input.acceleration(Dimension.X)
radio.send_number(AccX)
basic.pause(100)
basic.forever(on_forever)
ToDo
Nasleduje drobná modifikácia, kde nebudeme posielať číslo, ale celý reťazec s viacerými meraniami, v tomto prípade oddelenými čiarkou.
def on_received_number(receivedNumber):
serial.write_line("" + str((receivedNumber)))
radio.on_received_number(on_received_number)
def on_received_string(receivedString):
serial.write_line(receivedString)
radio.on_received_string(on_received_string)
AccX = 0
radio.set_group(1)
def on_forever():
radio.send_string("" + str(control.millis()) + "," + str(AccX))
led.toggle(2, 2)
basic.pause(100)
basic.forever(on_forever)
def on_forever2():
global AccX
AccX = input.acceleration(Dimension.X)
radio.send_number(AccX)
basic.pause(100)
basic.forever(on_forever2)
ToDo
Späť na zoznam príkladov....