TechLab - Laboratórium budúcnosti
- Laboratórium budúcnosti
- Naše vybavenie
- 1. MICROBIT-BLOCKLY
- 2. JOYSTICKBIT-BLOCKLY
- 3. MAKECODE ARCADE
- 4. SCULPFUN LASER
- Linux – Rýchlokurz
- 5. DOBOT MAGICIAN - PYTHON + LINUX
- 6. XGO ROBOTICKÝ PES - BLOCKLY
- 7. CUTEBOT - AUTONÓMNE VOZIDLO
- 8a. Joystick:bit – Rozšírenie – Lekcia 1
- 8b. Joystick:bit – Rozšírenie – Lekcia 2
- 8c. Joystick:bit – Rozšírenie – Lekcia 3
- 8d. Joystick:bit – Rozšírenie – Lekcia 4
- 8e. Joystick:bit – Rozšírenie – Lekcia 5
8a. Joystick:bit – Rozšírenie – Lekcia 1
Inštalácia rozšírenia, prvé čítanie, ovládanie LED displeja
Trvanie: 90 minút
Vek: 10–15 rokov
Potrebné vybavenie: 2× Micro:bit v2, Joystick:bit, USB kábel, notebook
Software: MakeCode editor – makecode.microbit.org
Predchádzajúce znalosti: Zvládnutý modul Micro:bit – Blockly – Úvod
Čo sa dnes naučíš
- Ako pridať rozšírenie tretej strany do MakeCode
- Aké bloky Joystick:bit rozšírenie poskytuje
- Čítanie joysticku a tlačidiel cez rozšírenie (bez manuálnych pinov)
- Ovládanie LED displeja druhého micro:bitu pohybom joysticku
Prečo rozšírenie?
V predchádzajúcom module (ak si ho robil) si čítal joystick manuálne cez analógové piny P1, P2 a digitálne piny pre tlačidlá. Fungovalo to, ale:
- Musel si vedieť čísla pinov naspamäť
- Hodnoty (0–1023) si musel manuálne prepočítavať
- Kód bol dlhší a ťažšie čitateľný
Rozšírenie to vyriešilo za teba. Elecfreaks pripravil balík blokov špeciálne pre Joystick:bit. Namiesto
analógovo čítaj P1napíšešJoystick X value– a dostaneš rovnakú hodnotu.Výhoda: kód je kratší, čitateľnejší, a nemusíš si pamätať piny.
Krok 1 – Pridanie rozšírenia Joystick:bit (10 minút)
Postup:
- Otvor makecode.microbit.org → Nový projekt
- V ľavom menu klikni na Rozšírenia (Extensions)
- Do vyhľadávacieho poľa napíš:
joystick - Zobrazí sa výsledok joystickbit od Elecfreaks – klikni naň
- Rozšírenie sa pridá do bočného menu – uvidíš novú kategóriu Joystickbit
💡 Ak vyhľadávanie nič nenájde, skús priamo vložiť URL rozšírenia:
https://github.com/elecfreaks/pxt-joystickbitOveriť inštaláciu:
- Klikni na kategóriu Joystickbit v menu
- Uvidíš bloky ako
joystickbit X value,joystickbit button C pressed, atď. - Ak ich vidíš – rozšírenie je nainštalované správne
Krok 2 – Spoznaj bloky rozšírenia (10 minút)
Cieľ: Zistiť čo každý blok robí – bez programovania, len čítaním.
Otvor kategóriu Joystickbit a prezri tieto bloky:
Bloky pre joystick (analógové osi):
joystickbit X value– vráti hodnotu osi X (0–1023, stred ~512)joystickbit Y value– vráti hodnotu osi Y (0–1023, stred ~512)
Bloky pre tlačidlá:
joystickbit button [C/D/E/F] is pressed– vrátitruealebofalse
Podmienková verzia:
on joystickbit button [C/D/E/F] pressed– udalostný blok (vykoná sa pri stlačení)
Porovnanie – starý a nový spôsob:
Čo chceš Starý spôsob (manuálne piny) Nový spôsob (rozšírenie) Os X joysticku analógovo čítaj P1joystickbit X valueOs Y joysticku analógovo čítaj P2joystickbit Y valueTlačidlo C digitálne čítaj P8= 0joystickbit button C is pressedTlačidlo D digitálne čítaj P12= 0joystickbit button D is pressedHodnoty sú rovnaké – len zápis je čistejší.
Krok 3 – Zobraz hodnoty joysticku na LED displeji (15 minút)
Cieľ: Overiť že joystick funguje – zobraziť hodnotu osi X na LED displeji.
Program:
stále opakovať: zobraziť číslo: joystickbit X value pauza 300msNahraj a testuj:
- Micro:bit zasuň do Joystick:bit
- Nahraj program
- Pohybuj joystickom doľava / doprava
- Sleduj čísla na LED displeji
Čo by si mal vidieť:
- Joystick v strede → hodnota okolo 512
- Joystick úplne vľavo → hodnota okolo 0
- Joystick úplne vpravo → hodnota okolo 1023
Vyskúšaj os Y:
- Zmeň blok na
joystickbit Y value - Pohybuj joystickom dopredu / dozadu
- Os Y: dopredu → nízka hodnota, dozadu → vysoká (alebo opačne – závisí od verzie)
Vyskúšaj tlačidlá:
stále opakovať: ak joystickbit button C is pressed: zobraziť obrázok [C] inak: vymazať displej pauza 100ms
Krok 4 – Bargraf joysticku (10 minút)
Cieľ: Zobraziť polohu joysticku ako bargraf – vizuálne a intuitívne.
Program:
stále opakovať: zobraziť bargraf hodnota: joystickbit X value maximum: 1023 pauza 100ms- Joystick vľavo → bargraf prázdny (0)
- Joystick vpravo → bargraf plný (1023)
- Joystick v strede → bargraf na polovici
Vyskúšaj oboje naraz:
Micro:bit má len 1 displej, ale môžeš striedať:
stále opakovať: zobraziť bargraf hodnota: joystickbit X value maximum: 1023 pauza 500ms zobraziť bargraf hodnota: joystickbit Y value maximum: 1023 pauza 500ms
Krok 5 – Pohyb bodu na LED displeji joystickom (20 minút)
Cieľ: Joystickom ovládať polohu svietiaceho bodu na 5×5 LED mriežke.
Logika prepočtu:
- Joystick vracia 0–1023
- LED displej má súradnice 0–4 (5 stĺpcov, 5 riadkov)
- Prepočet:
posX = joystickbit X value / 205- 1023 / 205 ≈ 4.99 → zaokrúhli na 4 (max súradnica)
- 0 / 205 = 0 (min súradnica)
💡 V MakeCode môžeš použiť blok
mapovať(map) z kategórie Matematika:mapovať hodnotu X z rozsahu 0–1023 do rozsahu 0–4Program:
pri spustení: nastav posX = 2 nastav posY = 2 stále opakovať: nastav posX = mapovať (joystickbit X value) z 0–1023 do 0–4 nastav posY = mapovať (joystickbit Y value) z 0–1023 do 0–4 vymazať displej zapnúť LED x posX y posY pauza 50msTestuj:
- Joystick do rohu → bod sa presunie do rohu displeja
- Joystick v strede → bod je uprostred (2,2)
Vyskúšaj navyše:
- Pridaj
zabrániť vyjsť za okraj– podmienkami obmedziť posX a posY na 0–4 - Pridaj tlačidlo C → zanechaj stopu (bod zostane svietiť), tlačidlo D → vymaž displej
Krok 6 – Diaľkové ovládanie LED displeja druhého micro:bitu (20 minút)
Cieľ: Joystick:bit posiela súradnice cez rádio. Druhý micro:bit zobrazuje bod.
Odosielateľ (micro:bit v Joystick:bit):
pri spustení: nastaviť skupinu rádia 7 stále opakovať: nastav posX = mapovať (joystickbit X value) z 0–1023 do 0–4 nastav posY = mapovať (joystickbit Y value) z 0–1023 do 0–4 rádio odošli hodnotu "x" = posX rádio odošli hodnotu "y" = posY pauza 80msPrijímač (samostatný micro:bit, bez Joystick:bit):
pri spustení: nastaviť skupinu rádia 7 nastav prijX = 2 nastav prijY = 2 pri prijatí rádiového páru (name, value): ak name = "x": nastav prijX = value ak name = "y": nastav prijY = value stále opakovať: vymazať displej zapnúť LED x prijX y prijY pauza 50msČo sa deje:
- Joystick:bit neustále posiela aktuálnu pozíciu
- Prijímač aktualizuje premennú a vykresľuje bod
- Oneskorenie rádia je niekoľko milisekúnd – pohyb vyzerá plynulo
Zhrnutie – čo si sa naučil
Čo Blok rozšírenia Čítanie osi X joystickbit X valueČítanie osi Y joystickbit Y valueStlačenie tlačidla joystickbit button C is pressedUdalosť tlačidla on joystickbit button C pressedPrepočet rozsahu mapovať hodnotu z 0–1023 do 0–4
Ďalší krok
Pokračuj na Lekciu 2 – diaľkové ovládanie Cutebot auta a Wonder Rugged Car.
