Šikovné vchodové dvere
Šikovné vchodové dvere
Šikovné vchodové dvere, ako som nazval svoj program, rátali s použitím hlavného modulu sensor:bit, OLED displeja, 180-stupňového servomotora a držiaka dvoch batérií AAA. Do hry som zapojil aj displej a predné tlačidlá mikropočítača micro:bit, ktoré slúžili na zadanie hesla pre otvorenie dverí. Najviac času som strávil pri vytvorení makety čelnej steny domu a pri osadení hardvéru na ňu. Nechcel som, aby konektor servomotora vyčnieval zo steny, tak som použil len jeho kontakty, ktoré som veľmi opatrne ohol o 90 stupňov a samostatne zaizoloval. Na pripojenie OLED displeja som použil 4-pinový prepojovací kábel s konektormi ‚female‘ DuPont. Servomotor som umiestnil nad dvere tak, aby som ich dokázal spojiť s ramenom servomotora a pri hodnote 0 servomotora zostali zatvorené. Spomenuté plastové rameno aj prepojovací kábel boli súčasťou súpravy Smart Home Kit a na tvorbu makety som použil obojstrannú lepiacu pásku, kartónový a kancelársky papier.
Pre uľahčenie ešte uvádzam ‚layout‘ zapojených pinov uvedeného mikropočítača:
P1
– 180-stupňový servomotorP19
aP20
– OLED displej
Ďalej som sa mohol venovať programovaniu v platforme Microsoft MakeCode rozšírenej o Blok Smarthome (obsahujúci Bloky OLED, Smarthome a Neopixel), ktoré som testovaním vytvoreného programu úspešne zavŕšil a tak získal jeho finálnu verziu:
Program JavaScript
input.onButtonPressed(Button.A, function () {
basic.clearScreen()
letter = abcs.charAt(index)
basic.showString(letter)
basic.pause(100)
index += 1
if (index == abcs.length) {
index = 0
}
})
input.onButtonPressed(Button.B, function () {
word = "" + word + letter
index = 0
basic.clearScreen()
})
input.onButtonPressed(Button.AB, function () {
letter = ""
word = ""
})
let index = 0
let word = ""
let letter = ""
let abcs = ""
basic.showIcon(IconNames.No)
OLED.init(128, 64)
OLED.writeStringNewLine("Pre otvorenie zadaj PIN:")
OLED.writeStringNewLine("1.Cislicu PINu zvol tlacidlom A.")
OLED.writeStringNewLine("2.Cislicu potvrd tlacidlom B.")
OLED.writeStringNewLine("Pri chybe stlac tlacidla AB a zacni znova.")
abcs = "1234567890"
letter = ""
word = ""
basic.forever(function () {
if (word == "12") {
OLED.clear()
basic.showIcon(IconNames.Yes)
basic.pause(500)
basic.clearScreen()
pins.servoWritePin(AnalogPin.P1, 160)
basic.pause(5000)
letter = ""
word = ""
} else {
pins.servoWritePin(AnalogPin.P1, 0)
OLED.writeStringNewLine("Pre otvorenie zadaj PIN:")
OLED.writeStringNewLine("1.Cislicu PINu zvol tlacidlom A.")
OLED.writeStringNewLine("2.Cislicu potvrd tlacidlom B.")
OLED.writeStringNewLine("Pri chybe stlac tlacidla AB a zacni znova.")
}
})
Program MakeCode
Video
Určite ste si všimli, že heslom pre otvorenie dverí je číslo dvanásť (číslica 1 a 2). Každý si môže zadať svoje originálne číslo pozostávajúce aj z viacerých číslic. Dokonca môže obohatiť heslo aj o písmená, čo môže byť námetom pre sebarealizáciu pri modifikácii môjho programu.
Záver
Záverom sa vám chcem poďakovať za prečítanie tohto článku poukazujúceho na praktickosť súpravy Smart Home Kit, aj keď len na makete.
Moduly spomínanej súpravy sa dajú využiť aj v kombinácii s diaľkovým ovládačom, čo ocení najmä bežný používateľ. Tým som prezradil tému ďalšieho článku, ktorá vás posunie v robotike o krok ďalej.
E-shop
Elecfreaks Smart Home Kit (bez BBC micro:bit)
Projektový box pro vytvoření chytré domácnosti!
BBC micro:bit
Nekonečně programovatelný a rozšiřitelný vzdělávací počítač do kapsy.