Hop a je tu robot AlphaBot2
Znovu zdravím priateľov robotiky a programovania, ktorí z názvu vytušili, že sa mi podarilo zohnať nový robot AlphaBot a to rovno jeho druhú verziu. Tento robot je plnohodnotne vybavený rôznymi snímačmi integrovanými v podvozku, takže netreba dokupovať žiadne príslušenstvo. Avšak potrebujete jeden výučbový mikropočítač micro:bit, ktorý je jeho riadiacou jednotkou. Nebudem stáť v ceste vašej zvedavosti a rovno vám tento robot predstavím.
Robot AlphaBot2
V balení robota AlphaBot2 nájdete dve dosky plošných spojov (skratka DPS), prepojovací kábel, snímač vzdialenosti Ultrasonic HC-SR04 (5V), dištančné stĺpiky so skrutkami, dátový kábel USB a kartičku s QR kódom s odkazom na návod. Podľa typu balenia môže byť súčasťou aj mikropočítač micro:bit. Pre získanie komplexného obrazu uvedeného robota je nutné sa podrobnejšie oboznámiť s oboma DPS z pohľadu začiatočníka, čiže integrované obvody a čipy nebudem uvádzať.
Na spodnej DPS, ktorú môžem nazvať aj podvozok, sa nachádzajú:
- dva motory (6V) s prevodovkami a kolieskami
- držiak dvoch batérií typu 14500
- konektor riadiaceho rozhrania na pripojenie hornej DPS
- konektor na pripojenie snímača vzdialenosti
- dva infračervené (skratka IR) snímače vyhýbania sa prekážkam s kontrolnými diódami a potenciometrami
- dve guľôčkové kolieska
- päť IR snímačov čiary
- štyri RGB LED diódy typu Neopixel
- vypínač s kontrolnou diódou zapnutia
Na vrchnej DPS sa nachádza len bzučiak, konektor na pripojenie spodnej DPS a port na pripojenie mikropočítača.
Ako ste si všimli, tento robot pracuje s trochu vyšším napätím (až do 7V), preto je nutné použiť špeciálne batérie typu 14500, ktoré nie sú súčasťou balenia a treba si ich dokúpiť.
Pred začatím programovania, som si ešte naštudoval ‚layout‘ zapojených pinov uvedeného mikropočítača:
P0
– bzučiakP1
aP2
– snímač vzdialenostiP8
– štyri RGB LED diódyP12
aP16
– dva IR snímače vyhýbania sa prekážkam
Programovanie robota Alphabot2
Programovanie robota AlphaBot2 veľmi uľahčuje platforma Microsoft MakeCode s rozširujúcim Blokom AlphaBot2, ktorý obsahuje príkazy na ovládanie motorov, snímača vzdialenosti, IR snímačov čiary a IR snímačov vyhýbania sa prekážkam. RGB LED diódy sa dajú hravo naprogramovať zase pomocou rozširujúceho Bloku Neopixel.
Na odskúšanie funkčnosti robota, vrátane jeho vybavenia som sa rozhodol vytvoriť praktický program, ktorý som aj úspešne otestoval:
Program JavaScript
input.onButtonPressed(Button.A, function () {
pocitadlo += 1
if (pocitadlo == 1) {
music.beginMelody(music.builtInMelody(Melodies.JumpUp), MelodyOptions.Once)
} else if (pocitadlo == 2) {
strip.setPixelColor(0, neopixel.colors(NeoPixelColors.Blue))
strip.setPixelColor(1, neopixel.colors(NeoPixelColors.Green))
strip.setPixelColor(2, neopixel.colors(NeoPixelColors.Yellow))
strip.setPixelColor(3, neopixel.colors(NeoPixelColors.Red))
strip.show()
basic.pause(2000)
strip.clear()
strip.show()
} else if (pocitadlo == 3) {
basic.showNumber(Math.round(AlphaBot2.readLine()))
basic.clearScreen()
} else if (pocitadlo == 4) {
basic.showNumber(Math.round(AlphaBot2.Ultrasonic()))
basic.clearScreen()
pocitadlo = 0
}
})
let pocitadlo = 0
let strip: neopixel.Strip = null
led.setBrightness(4)
basic.showString("TEST")
strip = neopixel.create(DigitalPin.P8, 4, NeoPixelMode.RGB)
strip.setBrightness(4)
pocitadlo = 0
basic.forever(function () {
if (AlphaBot2.Infrared(Sensor.Left)) {
basic.showString("L")
basic.clearScreen()
strip.setPixelColor(3, neopixel.colors(NeoPixelColors.Orange))
strip.show()
music.playTone(262, music.beat(BeatFraction.Half))
strip.clear()
strip.show()
} else if (AlphaBot2.Infrared(Sensor.Right)) {
basic.showString("R")
basic.clearScreen()
strip.setPixelColor(0, neopixel.colors(NeoPixelColors.Orange))
strip.show()
music.playTone(494, music.beat(BeatFraction.Half))
strip.clear()
strip.show()
}
})
Program MakeCode
Záver
Tento úvodný článok o robote AlphaBot2 vás nemá zbytočne zahltiť informáciami, takže záverom sa vám chcem poďakovať za jeho prečítanie a verím, že sa vám spomínaný robot zapáčil tak, ako mne. Preto sa mu budem venovať aj v ďalšom článku, kde prakticky odskúšam IR snímače čiary a vyhýbania sa prekážkam, pričom zapojím do hry aj bzučiak a RGB LED diódy.
E-shop
Waveshare AlphaBot2 pro BBC micro:bit
Sestavte si robota AlphaBot2 pro BBC micro:bit.
BBC Micro:bit
Nekonečně programovatelný a rozšiřitelný vzdělávací počítač do kapsy.