ANTIK_2024 ANTIK_2024 ANTIK_2024

IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

Mikrokontroléry
14

Súprava Experiment Kit uľahčí žiakom a mladým záujemcom o elektroniku prvé kroky pri poznávaní elektroniky a základov programovania. Využíva populárnu mikropočítačovú dosku BBC micro:bit Obsahuje LED diódu, RGB LED, servomotor, jednosmerný motor, snímače teploty a osvetlenia, motor, tlačidlo, bzučiak, spínací MOSFET tranzistor, RGB LED prstenec, potenciometer a rezistory.

Fungovanie príkladov je ukázané vo videu 

Na základnej doske, na ktorej sú sústredené všetky súčiastky je aj konektor typu GVS na pripojenie prípadných ďalších zariadení. Na zdierky, do ktorých sa zasunujú káble s banánikmi sú vyvedené porty 0, 1, 2, 8 a 12. V súprave je 12 prepojovacích káblikov s banánikmi dlhých 28 cm. Plastový kufrík je konštruovaný tak, že sa dá zavrieť bez toho aby bolo treba zapojenie rozpojiť.

ripomínam, že kód sa vytvára priamo na stránke https://makecode.microbit.org a výsledný hex súbor sa kopíruje na cez USB pripojený Micro:bit, ktorý sa voči počítaču javí ako externý USB disk. Námetom prvého pokusu bude pre mikrokontroléry klasická aplikácia blinky, ktorej cieľom je rozblikať LED diódu pripojenú k portu P0. LED dióda je pripojená k portu cez rezistor 100 Ohmov, ktorý obmedzuje prúd prechádzajúci diódou. P Ledku rozblikáte tak, že na porte P0  budete striedavo prepínať hodnoty logická 1 (3,3 V) a logická 0 (0 V).

JavaScript: 

basic.forever(function () {
   pins.digitalWritePin(DigitalPin.P0, 0)
   basic.pause(500)
   pins.digitalWritePin(DigitalPin.P0, 1)
})

Zapojenie rozšírime o tlačidlo pripojené k portu P2 a kód upravíme tak, aby LED diódy blikali iba vtedy, ak je stlačené tlačidlo. V tomto príklade bude potrebné vstupný pin inicializovať. Bude fungovať tak, že pri nestlačenom tlačidle bude na vstupnom porte logická 1 a po zatlačení logická Nula. Aby sme nemuseli ku tlačidlu pridávať rezistor pripojený na jeden vývod tlačidla a napájacie napätie 3,3 V nakonfigurujeme vstupný pin do režimu pull up, kedy sa aktivuje vnútorný rezistor.

JavaScript

pins.setPull(DigitalPin.P2, PinPullMode.PullUp)
basic.forever(function () {
    if (pins.digitalReadPin(DigitalPin.P2) == 0) {
       pins.digitalWritePin(DigitalPin.P0, 0)
       basic.pause(500)
       pins.digitalWritePin(DigitalPin.P0, 1)
    }
})

V ďalšom príklade ukážeme rozsvietenie RGB LED, ktorej tri vývody sú pripojené k portom P0, P1 a P2. Farba LED sa nastaví podľa toho, či používateľ stlačil tlačidlo A, tlačidlo B, alebo obidva tlačidlá súčasne.

 

Všimnite si, že hlavná slučka, čiže cyklus forever neobsahuje žiadny kód, všetko sa odohráva v obsluhe udalosti zatlačenia tlačidla input.onButtonPressed. 

JavaScript: 

input.onButtonPressed(Button.A, function () {
   pins.digitalWritePin(DigitalPin.P0, 1)
   pins.digitalWritePin(DigitalPin.P1, 0)
   pins.digitalWritePin(DigitalPin.P2, 0)
})
input.onButtonPressed(Button.B, function () {
   pins.digitalWritePin(DigitalPin.P0, 0)
   pins.digitalWritePin(DigitalPin.P1, 1)
   pins.digitalWritePin(DigitalPin.P2, 0)
})
input.onButtonPressed(Button.AB, function () {
   pins.digitalWritePin(DigitalPin.P0, 0)
   pins.digitalWritePin(DigitalPin.P1, 0)
   pins.digitalWritePin(DigitalPin.P2, 1)
})
 
basic.forever(function () {
       
})

V ďalšom mini príklade sa presunieme do analógového sveta a ukážeme načítanie a jednoduché grafické znázornenie napätia na pine P0, ktorý v tomto prípade bude fungovať ako analógový vstup. Vstavaný prevodník prevádza analógovú hodnotu napätia na vstupe na interval číselných hodnôt 0 – 1024.

Nameranú hodnotu zobrazíme ako plošný graf na displeji, presnejšie na matici diód na doske micro:bit. Napätie budeme regulovať pomocou potenciometra 

JavaScript

basic.forever(function () {
   led.plotBarGraph(
   pins.analogReadPin(AnalogPin.P0),
    1023
    )
})

Modifikujeme predchádzajúci príklad tak, aby sme pomocou fotobunky mohli merať intenzitu okolitého osvetlenia. Softvérový kód zostane rovnaký, ako keď sme merali hodnotu napätia na potenciometri zapojenom ako napäťový delič.

Ukážeme aj obsluhu serva, ktoré často využívajú modelári a konštruktéri robotov. Servo je k riadiacej jednotke pripojené pomocou troch vodičov. Na červenom vodiči je kladné napájacie napätie, na čiernom (niekedy hnedom) vodiči je zem a na oranžový vodič sa privádzajú signály. Ovláda sa pomocou PWM. Frekvencia impulzov privádzaných na oranžový vodič je 50 Hz. Uhol natočenia sa ovláda šírkou impulzu. U modelárskeho serva SG90 je šírka pulzu 500 až 2500 μs a tejto hodnote zadpovedá uhol natočenia  0°až 180. Na prvý pohľad to znie zložito, ale vďaka knižnici integrovanej do vývojového prostredia je ovládanie servomotorov veľmi jednoduché. Oranžový vodič je vo vnútri serva pripojený na riadiacu elektroniku, nemá veľký prúdový odber, takže ho môžete pripojiť priamo na port.

JavaScript: 

input.onButtonPressed(Button.A, function () {
   pins.servoWritePin(AnalogPin.P0, 0)
})
input.onButtonPressed(Button.B, function () {
   pins.servoWritePin(AnalogPin.P0, 180)
})
input.onButtonPressed(Button.AB, function () {
   pins.servoWritePin(AnalogPin.P0, 90)
})

Ukážeme aj ovládanie jednosmerného motora.  Obmedzíme sa len na zapnutie a vypnutie motora zopnutím logickej úrovne na porte P0. Motor má väčší odber, než je schopná doska dodať pri napájaní cez USB, preto je potrebné napájať dosku z batérií a motor sa spína cez NPN tranzistor.

JavaScript: 

pins.digitalWritePin(DigitalPin.P0, 1)
basic.forever(function () {
   pins.digitalWritePin(DigitalPin.P0, 0)
   basic.pause(1000)
   pins.digitalWritePin(DigitalPin.P0, 1)
   basic.pause(1000)
})

Nasleduje príklad s prstencom RGB LED diód pripojeným k portu P0. Aby ste ho mohli programovať, potrebujete pridať knižnicu Neopixel. 

JavaScript: 

let kruh = neopixel.create(DigitalPin.P0, 8, NeoPixelMode.RGB)
kruh.showRainbow(1, 360)
basic.forever(function () {
   kruh.show()
   kruh.rotate(1)
   basic.pause(100)
})
Zobrazit Galériu

Luboslav Lacko

Všetky autorove články
BBC micro:bit MicroBit IoT programovanie hardver

14 komentárov

pmlqgzlmcfwd reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

8.5.2022 05:05
hydroxychloroquine tablets <a href="https://keys-chloroquinehydro.com/#">can i buy chloroquine over the counter</a>
Reagovať

cialis price cialiswithdapoxetine.com reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

7.10.2021 19:10
cialis tablets https://cialiswithdapoxetine.com/
Reagovať

alprostadildrugs.com reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

15.3.2021 15:03
muse injection https://alprostadildrugs.com/ alprostadil side
Reagovať

erectiledysfunctionpillscvs.com reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

15.3.2021 00:03
erectile icd 10 https://erectiledysfunctionpillscvs.com/ erectile disorder dsm 5 criteria
Reagovať

priligydapoxetinex reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

10.3.2021 07:03
buy avanafil canada <a href="https://priligydapoxetinex.com/delivery">dapoxetine 1mg</a>
Reagovať

megalistadalafil reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

6.3.2021 08:03
tadalafil 20mg lowest price <a href="https://megalistadalafil.com/buy">megalis 20 in hindi</a>
Reagovať

avanaavanafil reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

4.3.2021 02:03
avanafil dose <a href="https://avanaavanafil.com/faq">buy avana</a>
Reagovať

cyclosporineopthalmicemulsion reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

27.2.2021 03:02
cyclosporine for humans <a href="http://cyclosporineopthalmicemulsion.com/faq">cyclomune 0.1% eye drops</a>
Reagovať

combiganbobigan reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

27.2.2021 03:02
buy brimonidine <a href="http://combiganbrimonidinetartrate.com/buy">buy brimonidine online</a>
Reagovať

tadalafil pill reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

6.2.2021 13:02
tadalafil https://tadalisxs.com/ tadalafil prescription
Reagovať

hydroxyquine medication reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

28.1.2021 12:01
chloroquine plaquenil https://hydroxychloroquinex.com/ hydroxy chloriquin
Reagovať

how does chloroquine work reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

28.1.2021 09:01
where to get chloroquine https://chloroquineorigin.com/ how does chloroquine work
Reagovať

erectile disf reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

28.1.2021 04:01
can erectile dysfunction come on suddenly https://erectiledysfunctionpillscvs.com/# are erectile dysfunction pills dangerous
Reagovať

erectile destroyer reakcia na: IoT prakticky: Micro:bit Experiment Box na jednoduché pokusy s hardvérom

21.1.2021 05:01
chloroquine
<a href="https://chloroquineorigin.com/#">chloroquine phosphate generic</a>
erectile after you quit drinking
<a href="https://erectiledysfunctionbjul.com/#">erectile disorder vs erectile dysfunction</a>
hco medical abbreviation
<a href="https://hydroxychloroquinex.com/#">hydroxychloroquine uk</a>
why does erectile dysfunction happen
<a href="https://plaquenilx.com/#">plaquenil sleep</a>
tadalafil effects
<a href="https://tadalisxs.com/#">tadalis sx</a>
z-pak generic name
<a href="https://zithromaxes.com/#">zithromax online canada</a>
Reagovať

Pridať komentár