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
7. CUTEBOT - AUTONÓMNE VOZIDLO
Cutebot – Autonómne vozidlo
Trvanie: 90 minút
Vek: 10–15 rokov
Potrebné vybavenie: Cutebot, ultrazvukový senzor HC-SR04, AI kamera Elecfreaks Smart AI Lens, Micro:bit v2, Joystick:bit, USB kábel, notebook
Software: MakeCode editor – makecode.microbit.org
Predchádzajúce znalosti: Zvládnuté moduly Micro:bit – Úvod a Joystick:bit
Čo sa dnes naučíš
- Sekvencné ovládanie – naprogramovať presnú trasu
- Sledovanie čiary – autonómna jazda po čiare
- Diaľkové ovládanie cez Joystick:bit
- Vyhýbanie prekážkam pomocou ultrazvuku
- Reakcia na AI kameru (farby, tváre, objekty)
Ako funguje Cutebot – prečítaj si pred začatím
Cutebot je auto s dvoma nezávislými motormi (diferenciálny pohon). Otáča sa zmenou rýchlosti ľavého a pravého motora.
Obsahuje:
- Senzor čiary – dva IR senzory dole, detekujú čiernu čiaru na bielom podklade
- 2× RGB LED na prednej časti – môžeš ich programovať
- Konektor pre ultrazvuk – pripojí sa HC-SR04
- Konektor pre AI kameru – I2C rozhranie
Rozšírenie pre MakeCode:
- V MakeCode klikni Rozšírenia
- Vyhľadaj
cutebotalebo vlož:https://github.com/elecfreaks/pxt-cutebot
Krok 1 – Sekvencné ovládanie: Štvorec a návrat (15 minút)
Cieľ: Naprogramovať Cutebot aby prešiel štvorec a vrátil sa na štartovú pozíciu.
Základné pohybové bloky Cutebot:
Blok Popis Cutebot go forward speed XJazdi dopredu, X = 0–100 Cutebot go backward speed XJazdi dozadu Cutebot turn left speed XOtoč sa vľavo (ľavý motor stojí) Cutebot turn right speed XOtoč sa vpravo Cutebot stopZastav Naprogramuj štvorec:
pri spustení: // Strana 1 Cutebot go forward speed 50 pauza 1500ms Cutebot stop pauza 200ms // Otočenie o 90° Cutebot turn right speed 50 pauza 600ms ← tento čas uprav kým nie je otočenie presne 90° Cutebot stop pauza 200ms // Opakuj 4× (3 ďalšie strany + otočenia) Cutebot go forward speed 50 pauza 1500ms Cutebot stop ...💡 Časy pre otočenie závisia od povrchu a rýchlosti. Testuj na rovnom podlahe. Zmeraj uhlomером alebo vizuálne – 90° je keď auto vyzerá presne otočené.
Návrat na štart:
Po štyroch stranách a štyroch otočeniach by si mal skončiť na rovnakom mieste. Ak nie – kalibruj časy.
Vyskúšaj navyše – naprogramuj písmeno L, T alebo Z.
Krok 2 – Sledovanie čiary (15 minút)
Cieľ: Cutebot autonómne sleduje čiernu čiaru.
Príprava trasy:
- Čierna izolepa (2–3 cm širá) na bielom podlahe alebo papieri
- Trasa môže mať zákruty, ale nie ostré uhly (90° je na hrane)
Logika sledovania:
Cutebot má ľavý (L) a pravý (R) senzor čiary. Každý vracia
true(čiara) alebofalse(biely podklad).L senzor R senzor Čo robiť true true Jazdi rovno (čiara je uprostred) true false Zatočiť vľavo (čiara je vľavo) false true Zatočiť vpravo (čiara je vpravo) false false Zastav alebo hľadaj čiaru Program:
stále opakovať: nastav L = Cutebot: left line sensor nastav R = Cutebot: right line sensor ak L = true a R = true: Cutebot go forward speed 40 inak ak L = true a R = false: Cutebot turn left speed 30 inak ak L = false a R = true: Cutebot turn right speed 30 inak: Cutebot stopLadenie:
- Ak auto „hadie" (neustále koriguje) – zvýš rýchlosť rovno alebo zníž rýchlosť zatáčania
- Ak auto stratí čiaru na zákrutách – zníž celkovú rýchlosť
Krok 3 – Diaľkové ovládanie Joystick:bit (10 minút)
Cieľ: Ovládať Cutebot joystickom cez rádio.
Toto si väčšinou už urobil v module Joystick:bit. Tu je rýchla rekapitulácia:
Odosielateľ (Joystick:bit):
pri spustení: nastaviť skupinu rádia 10 stále opakovať: rádio odošli hodnotu "y" = analógovo čítaj P2 rádio odošli hodnotu "x" = analógovo čítaj P1 pauza 80msPrijímač (Cutebot):
pri spustení: nastaviť skupinu rádia 10 pri prijatí rádiového páru (name, value): ak name = "y": ak value < 300 → Cutebot go forward speed 60 ak value > 700 → Cutebot go backward speed 60 inak → Cutebot stop ak name = "x": ak value < 300 → Cutebot turn left speed 40 ak value > 700 → Cutebot turn right speed 40💡 Môžeš naviazať rýchlosť na intenzitu vychýlenia:
rychlost = abs(value - 512) / 5→ čím viac vychýliš, tým rýchlejšie ide.
Krok 4 – Ultrazvukový senzor: Robotický vysávač (20 minút)
Cieľ: Cutebot sa pohybuje náhodne, pri prekážke odbočí – simulácia robotického vysávača.
Pripojenie ultrazvuku:
- HC-SR04 zasuň do konektora na prednej časti Cutebot
- V MakeCode rozšírení Cutebot nájdeš blok
Cutebot: sonar distance unit cm
Logika robotického vysávača:
stále opakovať: nastav vzdialenost = Cutebot: sonar distance unit cm ak vzdialenost < 15: ← prekážka bližšie ako 15 cm Cutebot stop pauza 200ms Cutebot go backward speed 50 pauza 500ms Cutebot stop // Náhodné otočenie ak náhodné číslo od 0 do 1 = 0: Cutebot turn left speed 50 inak: Cutebot turn right speed 50 pauza náhodné číslo od 400 do 900 ms inak: Cutebot go forward speed 40Vylepšenia:
- Pridaj RGB LED – pri prekážke svieti červená, pri jazde zelená:
Cutebot: set left LED red=255 green=0 blue=0 - Pridaj zvuk z micro:bitu pri náraze
- Zmeraj plochu ktorú auto pokryje za 2 minúty (označ kúskami papiera)
Krok 5 – AI kamera Smart AI Lens (15 minút)
Cieľ: Cutebot reaguje na to čo vidí AI kamera.
Pripojenie kamery:
- Smart AI Lens sa pripojí na I2C konektor Cutebot (alebo cez micro:bit rozšírenie)
- V MakeCode pridaj rozšírenie: vyhľadaj
Smart AI Lensaleboelecfreaks AI
Režimy kamery:
Smart AI Lens podporuje tieto režimy (prepínaš v programe):
Režim Čo detekuje Color recognition Farebné karty (červená, zelená, modrá, žltá) Line tracking Čiara (podobne ako IR senzory ale kamerou) Face detection Prítomnosť tváre a jej poloha Object recognition Niektoré objekty (lopta, pohár...) Príklad – auto reaguje na farebnú kartu:
pri spustení: AI Lens: nastaviť režim Color Recognition nastaviť skupinu rádia 0 stále opakovať: nastav vysledok = AI Lens: get color result ak vysledok = červená: Cutebot stop zobraziť obrázok [STOP] inak ak vysledok = zelená: Cutebot go forward speed 50 zobraziť obrázok [šípka hore] inak ak vysledok = modrá: Cutebot turn left speed 40 pauza 600ms inak: Cutebot stopPríklad – sledovanie tváre:
Kamera vráti X pozíciu tváre (0 = vľavo, stred = tvárou pred kamerou, max = vpravo).
stále opakovať: nastav tvár_x = AI Lens: get face x position ak tvár_x < 40: Cutebot turn left speed 30 inak ak tvár_x > 80: Cutebot turn right speed 30 inak: Cutebot stop ← tvár je v strede, stojAuto sa bude otáčať aby udržalo tvár v strede záberu – jednoduchý sledovací systém.
Zhrnutie – čo si sa naučil
Čo Technika Sekvencné ovládanie Pevné časy + pohybové bloky Sledovanie čiary IR senzory + podmienky Diaľkové ovládanie Rádio + Joystick:bit Vyhýbanie prekážkam Ultrazvukový senzor + podmienky AI kamera Color/Face detection + reakcia
Ďalší krok
- Skombinuj sledovanie čiary s ultrazvukom – auto sleduje čiaru ale zastaví pri prekážke
- Vyskúšaj Object recognition – auto reaguje na rôzne predmety
- Dokumentácia Elecfreaks: elecfreaks.com/learn-en
