Close

Jak se programuje mBot

Jak se programuje mBot

Pokud nevíte jak mBota naprogramovat a vaše ratolesti vám už podupkávají za zády a dožadují se, kdy už si budou moci s robůtkem začít hrát, nezoufejte. Hodní pánové z firmy Makeblock totiž dali do krabičky mBota již naprogramovaného na defaultní program!

Tento program má tři módy (A, B, C) a dají se spustit buď IR ovladačem (nezapomeňte vložit baterku), nebo přepínat tlačítkem na hřbetě mBota. Mód A je signalizován bílým světlem, mód B světlem zeleným a mód C světlem modrým. Aby to vše fungovalo je třeba také správně připojit moduly – ultrazvukový modul (port 3), modul čtení čáry (port 2).

Jednotlivé módy fungují takto:

mód A – dálkové řízení pomocí dálkového IR ovladače – bílá barva – šipkami řídíte pohyb mBota. Při mačkání čísel bude robot vydávat tóny a čísla slouží také pro nastavení rychlosti pohybu robota.

mód B – vyhýbání se překážkám – zelená barva – mBot se před překážkou otočí a jede zpět.

mód C – jízda po čáře – modrá barva – mBot sleduje černou čáru, v případě, že ji nenalezne začne kroužit na místě.

Tip: Pokud programujete mBota, způsobíte, že přijdete o nastavený defaultní program. Pokud jej chcete vrátit zpět do tohoto nastavení, dá se to udělat přes program mblock 3. Je třeba připojit mBota a nastavit správně všechny parametry potřebné pro spojení mBota a programu mblock3 ve vašem počítači (Připojení-Sériový port, Desky-mBot (mCore)). V programu pak spusťte funkci Připojení-Reset výchozího programu-mBot. Program zavede do vašeho mBota defaultní program. MBot 3x pípne a je připravený na další zábavu!

Pokud byste ovšem nechali robůtka pouze s přednastaveným programem a používali jej, jako lepší autíčko na ovládání, velmi byste se ošidili. Ta největší legrace totiž spočívá v tom, že mBota budete programovat a přetvářet k obrazu svému.

Jak na to vám v rychlosti napoví následující video…

To co jsme viděli ve videu bych nyní rád probral podrobněji.

Program mBlock naleznete na webu firmy Makeblock ( https://www.mblock.cc/en-us/download ).

Program pro programování mBota

Na tomto umístění můžete nalézt dvě verze tohoto programu:

mblock5 – pouze v angličtině, určený pro větší počet produktů firmy makeblock.

mblock3 – ve více jazykových mutacích, včetně češtiny. Určený pro mBoty, Rangery a roboty typu Ultimate.

Měl jsem možnost porovnat obě verze programů a obě je vyzkoušet na dětech. Jednoznačně se jim lépe pracovalo se starší verzí mblock3. Jedním z důvodů byla asi česká lokalizace programu, ale druhou příčinou byla zřejmě i jistá jednoduchost staršího programu. Dále budu tedy vše vysvětlovat na verzi programu mblock3.

Připojení mBota

Prvým kamenem úrazu při programování mBota se může pro nezkušeného programátora stát právě připojení mBota k programu. Je třeba nejen správně připojit mBota kabelem, ale zároveň také správně nastavit program mblock3.

Připojení USB kabelu k motovi

Připojení kabelem: Vhodný kabel je součástí dodané krabice. MBota připojujeme ke klasickému USB výstupu z počítače a hranatý konektor na druhém konci kablíku (USB typu B) patří do konektoru na pravé straně vrchní plastové desky mBota. Zde bych doporučoval dávat pozor, protože se děti často pokouší dávat kabel do konektorů určených pro moduly (vzdáleně se tvarem podobají). Jednoduchou pomůckou může být, že zdířky pro moduly jsou černé barvy a zdířka pro datový kabel je barvy bílé.

Nastavení programu: V případě, že programujete mBota a ne jiný produkt firmy Makeblock, nastavte položku hlavního menu „Desky“ na parametr „mBot (mCore)“. Zbývá ještě nastavit v položce „Připojení“ parametr „Sériový port“. Hodnota sériového portu se detekuje automaticky, pokud je vše kabelové připojeno správně a pokud je mBot zapnutý. Děti, které s mBotem teprve začínají, zapomínají mBota zapnout. Vypnutého mBota nelze programovat a program ho ani nevidí.

Tip: Při programování doporučuji mBota připojeného kabelem raději obracet na hřbet, jako želvu. MBoti mají totiž svojí hlavu a při spuštění se může aktivovat program, který do mBota vložil někdo jiný. Robůtek pak páchá ve stylu kamikaze skoky ze stolu.

Posíláme program do mBota

Máme hotový prvý zkušební program, popřípadě jsme prvý zkušební program stáhli a chceme ho odeslat do mBota. MBot je v pořádku připojený, zapnutý a program mblock3 je nastavený. Chybí ale možnost odeslání programu.

Prvý pohled na otevřený program pro mBota v prostředí mblock3

Program mblock3 byl vyvinut na základě vizuálního programovacího jazyka Scratch určeného pro účely výuky. Jazyk je grafický a funguje na základě přetahování grafických bloků/widgetů na pracovní plochu. Scratch byl vyvíjen i k programování jednoduchých her, důsledkem čehož je i programovatelný obrázek pandy v levé části a část widgetů, které při programování mBota nijak nevyužijeme a tudíž si jich dál nebudeme všímat.

Do režimu ve kterém můžeme z editoru mblock3 programovat mBota se můžeme dostat dvěma způsoby. Buď si nastavíme v základním menu v položce „Editace“ hodnotu „Režim arduino“, nebo klikneme pravým tlačítkem menu na hlavičku programu – rozevře se nám menu, ve kterém stačí vybrat položku „Nahraj do Arduina“.

Prostředí mblock3 přepnuté do režimu odesílání programu do mBota

Pro odeslání programu do mBota stačí jen kliknout na tlačítko „Poslat do Arduino“ v části Arduino IDE. Komunikace s deskou arduina v mBotovi se pak vypisuje pod boxem s kódem. Na stejném místě se vypisuje i průběh přenosu kódu do mBota, chybové hlášky a další informace. Netrpělivým mladým programátorům doporučuji nechat přenos programu do mBota doběhnout až do konce a nepřerušovat jej v půli.

Programové bloky – Widgety

Jak jsem již naznačil v předchozím textu program pro mBota skládáme z programovatelných bloků/widgetů (dále již budu používat pouze tento termín). Widgety z jednotlivých skupin odpovídají vždy barvou dané skupině, snadno je tak můžete nalézt. Přepnete-li editor do režimu Arduino zůstanou vám aktivní pouze skupiny bloků Roboti, Ovládání, Operátory a Data a Bloky které jsou využitelné při programování mBota.

Příklad skládání programu mBota z jednotlivých skupin widgetů

Widgety, které můžete použít jsou pouze základní nabídkou. Mblock3 totiž po doinstalování rozšíření umí vygenerovat i další widgety, třeba pro nový modul, který si k mBotovi dokoupíte. Nabídka je opravdu široká a při počtu widgetů, které vám program mblock3 nabízí již v základní podobě je jasné, že kdybych tu popisoval všechny widgety asi by tento článek byl rozsáhlým manuálem. Zmíním se tedy pouze obecně o principech a popíši skupiny widgetů.

Skupina widgetů „Roboti“ – zelenomodrá barva

Widgety ve skupině „Roboti“ slouží k programování přímé činnosti mBota. Naleznete zde jak úvodní hlavičku programu, tak základní bloky (poznáte je podle zoubečku, kterým je možné je spojit do programového stromu). U těchto bloků často najdete bílé prvky umožňující přesněji nastavit daný příkaz (obecně tuto možnost najdete ve všech příkazech tohoto programovacího prostředí). Sledujte levou a pravou stranu widgetů. Widgety s trojúhelníkovitými a oblými boky bez „zoubku“ jsou určeny pro vkládání do dalších příkazů.

Skupina widgetů „Ovládání“ – oranžová barva

Widgety ze skupiny „Ovládání“ ovlivňují tok programu. V této skupině naleznete podmínkové příkazy, smyčky a možnost zadání časového intervalu. Některé tyto příkazy samy o sobě nefungují a je třeba je doplnit příkazy z ostatních skupin, aby mohly fungovat.

Skupina widgetů „Operátory“ – zelená barva

Ve skupině widgetů „Operátory“, která je zelené barvy, můžeme stanovovat vztahy mezi proměnnými a definovat podmínkové příkazy. Zajímavým příkazem je i generátor pseudonáhodných čísel – později jej použijeme.

Velmi zajímavou skupinou je poslední skupina widgetů „Data a Bloky“ (oranžová barva), která nám umožňuje tvorbu vlastních proměnných a vlastních příkazových bloků – což je to pravé kreativní programování, které pokud vydržíte, si hodně užijete – ale to už budete pokročilými programátory. 🙂

Programy ke stažení

testovací program

Odkazy na produkty HW Kitchen použité v článku:

Ondřej Merta

4 Comments on “Jak se programuje mBot

Stepan
26.4.2020 at 15:52

Díky za návod, jen by mě zajímalo – jak dlouho vám trvá nahrání programu do mBota? Protože mně to teď trvalo asi 25 minut, což mi přijde jako fakt hodně…

Chápu, že moje stařičká Yoga už má to nejlepší za sebou, ale i7 s 16 GB RAM by na tohle snad mělo stačit. Ještě zkusim USB 3 konektor a jinej kabel, ale jinak moc nevím co s tím 🙁

Ondřej Merta
27.4.2020 at 11:53

25 minut nám to nikdy netrvalo. Tam je nějaký problém. Doba přenosu samozřejmě závisí od velikosti programu, který chcete přenášet do mBota. Obecně to vždy bylo řádově do minuty, maximálně dvou. Problémy bývaly s tím, že děcka zapomínaly před přenosem zapnout mbota a nastavit v programu přenosové parametry (port, desku atp.). To bych formálně doporučil překontrolovat. Několikrát byl problém i s datovými kabely, většinou přestaly fungovat úplně. Týkalo se to hlavně těch modrých krátkých USB kabelů typu B k arduinu, které se k přenosu dají také použít. Takže zkouškou, nebo výměnou kabelu nic nezkazíte. Na vašem místě bych zkusil pro programování použít i jiný počítač. Pokud bude vše k vaší spokojenosti problém bude opravdu asi v té „stařičké Yoze“ :-).

karelpesek
20.12.2019 at 20:17

Díky Ondřeji za vaše instruktáže. Pomáhají mi připravit se na vnuky. O vánočních prázdninách je budu trápit s mBotem a Arduinem a tak musím být o lekci vpředu. Vydržte, také jsem kdysi vedl kroužky s PMD85.

Ondřej Merta
20.12.2019 at 21:01

Díky, přesně tak je to také myšleno. MBot je velmi dobře vymyšlená edukativní hračka a když se to dobře vezme do ruky, tak to děti dokáže naučit neskutečně hodně.

Napsat komentář