Image
4.4.2019 1 Comments

IoT prakticky: BBC micro:bit - jednoduché pokusy s pripojeným hardvérom

V predchádzajúcej časti seriálu venovanom platforme micro:bit sme podrobne popísali zbernicu tejto hlavne medzi žiakmi a študentmi veľmi populárnej dosky. Len na zopakovanie: konektor na okraji plošného spoja má päť širokých kontaktov s pokovenými otvormi do ktorých je možné pripnúť vodiče s krokosvorkami, alebo zasunúť „banánikové“ konektory s priemerom 4 mm. Medzi nimi je 20 ďalších úzkych kontaktov. Tie je možné využiť, keď vložíte BBC micro: bit do vhodného adaptéra, umožňujúcom realizovať zapojenie na doske s prepojovacím poľom. A práve na takejto doske zrealizujeme pripojenie LED diód, tlačidla, potenciometra vo funkcii deliča napätia a fotorezistora. Všetky príklady sú názorne ukázané vo videu

Popis pinov a konektor na pripojenie k prepojovaciemu poľu:

Námetom prvého pokusu bude pre mikrokontroléry klasická aplikácia Blinky, ktorej cieľom je rozblikať dve LED diódy pripojené k portom P0 a P1. LED diódy nie sú pripojené priamo na porty, ale cez odpory 100 Ohmov, ktoré obmedzujú prúd prechádzajúci diódami. 

Ledky rozblikáte tak, že na príslušných portoch budete striedavo prepínať hodnoty logická 1 (3,3 V) a logická 0 (0 V). 

Pripomínam, že kód sa vytvára priamo na stránke https://makecode.microbit.org. Pripojte vývojovú dosku do USB portu počítača. Počítač̌ rozpozná́ zariadenie ako bežný́ USB kľúč - otvorí́ sa priečinok s názvom ​MICROBIT. Po vytvorení programu ho viete vo forme .hex súboru stiahnuť a nahrať do svojho zariadenia microbit kliknutím na tlačidlo “Stiahnuť”.Hex súbor uložte do priečinka MICROBIT. Počas nahrávania na zariadení bliká LEDka pri USB konektore Keď sa nový súbor s programom nahrá́ do zariadenia, LEDka prestane blikať a program sa ihneď spustí. Zároveň sa súbor .hex z priečinka vymaže. Už nie je potrebný, pretože jeho obsah je už nahratý v pamäti mikrokontroléra, kde sa vykonáva. Všimnite si v hornej časti prepínač Bloky / JavaScript. Po prepnutí na JavaScript sa zobrazí kód v tomto programovacom jazyku, ktorý ste vytvorili pomocou blokov. Pri každom príklade ukážeme nielen grafické blokové znázornenie algoritmu, ale aj kód v JavaScripte.

JavaScript: 

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

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)
       pins.digitalWritePin(DigitalPin.P1, 1)
       basic.pause(500)
       pins.digitalWritePin(DigitalPin.P0, 1)
       pins.digitalWritePin(DigitalPin.P1, 0)
       basic.pause(500)
    }
})

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

 Blokový kód softvéru bude:

JavaScript

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

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

V poslednom príklade zostane rovnaké hardvérové zapojenie, no zmení sa softvér. Bude rozlišovať dve hodnoty osvetlenia. Po štarte sa aplikácia skalibruje, čiže do premennej „kalibrácia“ sa zapíše aktuálna hodnota osvetlenia. Ak bude intenzita okolitého svetla väčšia, alebo rovná tejto hodnote zmenšenej o 2 zobrazí sa na displeji jedna z preddefinovaných ikon. Ak bude hodnota úrovne osvetlenia menšia, zobrazí sa iná ikona.

JavaScript

let svetlo = 0
let kalibracia = 0
kalibracia = pins.analogReadPin(AnalogPin.P0)
 
basic.forever(function (){    
   svetlo = pins.analogReadPin(AnalogPin.P0)    
   if (svetlo < kalibracia - 2) {        
     basic.showIcon(IconNames.Heart)    } else {           
     basic.showIcon(IconNames.Square)    
}})

V budúcom pokračovaní ukážeme pripojenie a softvérovú obsluhu RGB LED diódy, senzoru na meranie teploty, ovládanie jednosmerného motora a servomotora, generovanie zvuku a taktiež obsluhu udalostí generovaných hardvérom

 

Zobrazit Galériu

Nechajte si posielať prehľad najdôležitejších správ emailom

Mohlo by Vás zaujímať

Technológie

IoT prakticky – robotické podvozky, úvod k téme ovládanie motorov, krokových motorov a servomotorov

19.05.2019 00:10

V seriáli IoT prakticky budeme preberať aj ovládanie jednosmerných a krokových motorov a servomotorov. Je to príprava na tému robotické podvozky. Na e-shopoch nájdete stavebnice robotických podvozkov ...

Technológie 2

Alexa Guard od Amazonu dohliadne na váš dom počas vašej neprítomnosti. Bude stále počúvať

16.05.2019 00:15

Amazon začal v USA zavádzať pre používateľov radu inteligentných reproduktorov Echo službu Alexa Guard, ktorá im umožní pracovať ako domáce bezpečnostné zariadenie v čase, keď majiteľ odíde z domu. St ...

Technológie

IoT prakticky – Micro:bit, spínanie čohokoľvek a zmena smeru otáčania motorčeka

16.05.2019 00:10

Pomocou portov dosky micro:bit môžete spínať pripojené zariadenia, avšak ich napájanie je limitované napätím 3.3 V a maximálnym prúdom niekoľko desiatok miliampérov.  Pri napájaní cez USB prúdový regu ...

q

1 Comments

  1. dakujem reakcia na: IoT prakticky: BBC micro:bit - jednoduché pokusy s pripojeným hardvérom
    4.4.2019 14:04
    dakujem za perfektnu seriu clankov o micro:bit
    Reagovať

Vyhľadávanie

TechFest 2019

Najnovšie videá

Cyber Central Malware Analysis Training


PC forum button