Cílem této kapitoly je úvod do problematiky prostředí, ve kterém je možno sestavit program a nastavit parametry senzorů.

Podobné dokumenty
Návod na programování v NXT- G

ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ MEIV Souborná činnost na složitých elektronických zařízeních zaměřená na servisní a profesní působení studenta

Učivo: Detailnější zopakování používání některých částí uživatelského rozhraní LEGO MINDSTORMS NXT Paleta programování

Návod na programování v NXT G

Ovládání robota. Tvorba programu. Tvorba uživatelských profilů.

Záznam dat Úvod Záznam dat zahrnuje tři základní funkce: Záznam dat v prostředí třídy Záznam dat s MINDSTORMS NXT

Název projektu: Život s počítačem. Číslo projektu: OPVK.CZ.1.07/1.2.32/

BAKALÁŘSKÁ PRÁCE Využití robota LEGO MINDSTORMS příprava robotického semináře pro střední školu

POZOR!!! INSTALACE POD WINDOWS 200 / XP / VISTA PROBÍHÁ VE DVOU ETAPÁCH A JE NUTNÉ DOKON

Příručka pro aplikaci KSnapshot

METODICKÝ LIST K TECHNICKÉMU KROUŽKU:

METODICKÝ LIST K TECHNICKÉMU KROUŽKU:

Ovládání Open Office.org Calc Ukládání dokumentu : Levým tlačítkem myši kliknete v menu na Soubor a pak na Uložit jako.

Uživatelský manuál. Format Convert V3.1

Nastavení stránky : Levým tlačítkem myši kliknete v menu na Soubor a pak na Stránka. Ovládání Open Office.org Draw Ukládání dokumentu :

Příručka pro aplikaci KSnapshot

Nápověda k používání mapové aplikace Katastrální mapy Obsah

Manuál k programu KaraokeEditor

Územní plán Ústí nad Labem

Pro správné zobrazení mapové aplikace je potřeba mít nainstalovaný zásuvný modul Flash Adobe Player.

Odpadové hospodářství v ORP Ústí nad Labem

Charakteristika základních konstruktů robota. Popis ovládacího prostředí robota.

Vzorce. Suma. Tvorba vzorce napsáním. Tvorba vzorců průvodcem

ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ MEIV Souborná činnost na složitých elektronických zařízeních zaměřená na servisní a profesní působení studenta

Název: Řízení pohybu robota ultrazvukovým a tlakovým senzorem I.

Metodické pokyny k materiálu č. 39 Mobilní robot III - Závodní auto - Dálkové ovládání 1 (PROGRAM 1)

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 6. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

Základy práce na PC. Ing. Jan Roubíček

První kroky s aplikací ActivInspire

Gymnázium Ostrava Hrabůvka, příspěvková organizace Františka Hajdy 34, Ostrava Hrabůvka

Ladibug Software pro vizuální prezentaci Visual Presenter Návod k použití

Nápověda pro ovládání automaticky čtené učebnice

Název projektu: Život s počítačem. Číslo projektu: OPVK.CZ.1.07/1.2.32/

Jak na TV vysílání se set-top boxem Di-Way AND1?

2D-skicování Tato část poskytuje shrnutí 2D-skicování, které je nezbytné ke tvorbě modelů Solid Works.

FortiaViewer verze 5.0

Obsah Přehled existujících a evidence nových klientů... 3 Přehled foto-záznamů... 4 Nahrávání foto-záznamů... 6 Analýza foto-záznamů...

LEGO Mindstorms Education NXT. Projekt Lego ve výuce informatiky a fyziky. Robotika 1. Mgr. Radoslav Jirásek RNDr. Jitka Jirásková Mgr.

1. Obsah. 1. Obsah Začínáme Práce s mapou Kniha jízd Denní statistika Seznam řidičů...9

Průvodce aplikací FS Karta

Návod na instalaci a použití programu

Administrace webu Postup při práci

T-Mobile Internet. Manager. pro Mac OS X NÁVOD PRO UŽIVATELE

Rychlá navigace Prolínání vrstev

PRÁCE S TEXTOVÝM EDITOREM 6.4 TEXTOVÉ POLE

Postupy práce se šablonami IS MPP

Název: Dráha a rychlost pohybu robota I. Tematický celek: Pohyb těles

Nový způsob práce s průběžnou klasifikací lze nastavit pouze tehdy, je-li průběžná klasifikace v evidenčním pololetí a školním roce prázdná.

Návod pro práci s aplikací

Tabulkový kalkulátor

František Hudek. červen ročník

Connect Genius V2. Instalace programu.

Podrobný návod pro administraci zákaznických účtů na portálu Czechiatour.eu

Pro definici pracovní doby nejdříve zvolíme, zda chceme použít pouze informační

Meeting Asistent. Manuál pro instalaci a ovládání aplikace. Nokia + Sony Ericsson telefony s OS Symbian

MANUÁL VÝPOČTOVÉHO SYSTÉMU W2E (WASTE-TO-ENERGY)

UniLog-D. v1.01 návod k obsluze software. Strana 1

IP kamera. Uživatelský manuál

1. Základní nastavení tabletu Vložení SIM karty Vložení paměťové karty Zapnutí tabletu a PIN. 2. Kontakty. 3. Volání

Formuláře. Téma 3.2. Řešený příklad č Zadání: V databázi formulare_a_sestavy.accdb vytvořte formulář pro tabulku student.

Stručný manuál pro webový editor. Ukládáni základních informací, tvorba menu

Charakteristika základních konstruktů robota. Popis ovládacího prostředí robota. Další možnosti programování robota.

2. Kontakty. 1. Základní nastavení tabletu Vložení SIM karty Vložení paměťové karty Zapnutí tabletu a PIN. 3. Volání

Konfigurace PPPoE připojení v OS Microsoft Windows 98, ME

Návod pro SMS Operátor off-line klient

METODICKÝ POKYN PRÁCE S MS PowerPoint - POKROČILÍ. Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky.

Tiskový manažer - Printman

Dotyková obrázovká v prográmu TRIFID

Jednoduché stříhání videa

Herní klávesnice-návod k použití

Studijní skupiny. 1. Spuštění modulu Studijní skupiny

Robot BBC Micro:bit kódovaní v PXT Editoru

Konfigurace PPPoE připojení v OS Microsoft Windows XP

Práce v návrhovém prostředí Xilinx ISE WebPack 12 BDOM UMEL FEKT Šteffan Pavel

Ovládací prvky Tlačítka SCANNER Tlačítka SCENE LCD displej Tlačítka BANK CHASE PROGRAM MIDI/REC AUTO/DEL MUSIC/BANK COPY BLACKOUT TAP SYNC/DISPLAY

Tablet. Rychlý průvodce instalací

Postup přechodu na podporované prostředí. Přechod aplikace BankKlient na nový operační systém formou reinstalace ze zálohy

Pracovní plocha. V první kapitole se seznámíme s pracovním prostředím ve Photoshopu.

Návod k použití programu Business Plan

Popis ovládání aplikace - Mapový klient KÚPK

Vizualizace a evidence výroby a prostojů

1. Základní nastavení telefonu Vložení SIM karty a baterky Vložení paměťové karty Zapnutí telefonu a PIN. 2. Kontakty. 3.

PDF Split and Merge. Průvodce programem pro práci s PDF

PROGRAMOVÁNÍ LEGO MINDSTORMS EV3

František Hudek. březen ročník. Informační a komunikační technologie OS WINDOWS Hlavní panel

NÁVOD KE SLUŽBĚ IPTV

Přehledy pro Tabulky Hlavním smyslem této nové agendy je jednoduché řazení, filtrování a seskupování dle libovolných sloupců.

1. Základní nastavení telefonu Vložení SIM karty a baterky Vložení paměťové karty Zapnutí telefonu a PIN. 2. Kontakty. 3.

1. Zapnutí a vypnutí 2. Přidání režimu do seznamu provedení

Návod pro LG E430 Optimus L3 II

První kroky s METEL IEC IDE

Nápověda k systému CCS Carnet Mini

Interaktivní tabule SMART Notebook

Up & Down opce. Manuál. Obsah

SignEditor 1 - návod k použití

1. Nastavení dokumentu

2. Najeďte si kurzorem myši do pravého spodního rohu k symbolu malého černého čtverečku kurzor myši se změní na černý nitkový kříž.

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 2. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

Začínáme. 1 Nabijte přístroj připojením do síťové zásuvky. Pro nabíjení a přenos dat můžete připojit Kindle pomocí USB kabelu do Vašeho počítače

Návod pro programovatelný ovladač

Transkript:

4.1. Programové prostředí NXT -G Cílem této kapitoly je úvod do problematiky prostředí, ve kterém je možno sestavit program a nastavit parametry senzorů. Klíčové pojmy: Program, stavebnice, automatizace, vzdělávání Obsah 4.1. Programové prostředí NXT -G... 1 4.1.1. Úvod... 2 4.1.2. Popis pracovního prostředí NXT-G.... 2 4.1.3. Návod na vytvoření nového programu:... 4 4.1.4. Uložení programu:... 5 4.1.5. Programovací bloky... 7 4.1.5.1. Jednotlivé programovací bloky - Common... 7 4.1.5.2. Jednotlivé programovací bloky - Complete... 15 4.1.5.3. Jednotlivé programovací bloky - Custom... 17 4.1.6. Obecné zásady programování v NXT G.... 18 4.1.6.1 Vytvoření paralelní větve v programu... 19 4.1.6.2 Smazání bloku z programovací plochy... 20 4.1.6.3 Přesun bloku po programovací ploše... 20 4.1.6.4 Data hubs... 20 4.1.7. Tvorba vlastních bloků... 22 4.1.7.1 Vytvoření vlastního bloku... 22 4.1.7.2. Úprava vytvořeného bloku... 24 4.1.7.3. Správa palety Custom... 24 4.1.8. Práce s proměnnými... 25 4.1.8.1. Vytvoření proměnné... 25 4.1.8.1. Použití proměnné... 25 Literatura:... 26 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 1 z 26

4.1.1. Úvod LEGO MINDSTORMS je řada programovatelných robotických stavebnic vyráběných firmou LEGO. Tato stavebnice lze použít jako vzdělávací pomůcku vhodnou pro zvídavé děti, základní školy a střední školy zabývající se programováním a automatizací. 4.1.2. Popis pracovního prostředí NXT-G. Program LEGO Mindstorms NXT je vytvořen podobně jako program LabVIEW od společnosti National Instruments. Programování je založeno na principu drag-and-drop (táhni a pusť). Programovací jazyk je grafický programovací jazyk, je sestavován pomocí programovacích bloků (jejichž ikony jsou vedle pracovního prostředí). Ikony se skládají za sebou. Obr.1: Programovací prostředí základní obrazovka Před použitím jakéhokoliv tlačítka Controlleru, je nutno mít připojenu NXT kostku k PC pomocí USB kabelu. 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 2 z 26

Obr.2: Controler dolní pravý roh základní obrazovky NXT Window otevře NXT okno s obecnými informacemi o NXT kostce, o paměti a komunikaci Download stáhne program do NXT kostky Download and run stáhne program do NXT kostky a spustí Download and run selected stáhne a spustí jen část programového kódu Stop zastaví běžící program NXT Window Memory Na této záložce najdete: Grafický přehled o využité a volné části paměti Tlačítko pro vymazání všech nahraných programů od uživatele a vyčištění NXT paměti Tlačítko pro nahrání programu z NXT kostky do PC Tlačítko pro nahrání programu z PC do NXT kostky Tlačítko pro smazání vybraného souboru z NXT kostky Seznam souborů v aktuálně označené kategorii Zaškrtávací políčko pro zobrazení systémových souborů NXT kostky Obr.2a: Memory 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 3 z 26

4.1.3. Návod na vytvoření nového programu: Existují 4 způsoby vytvoření nového programu viz následující obrázky: 1) Vytvoření z úvodního okna: 2) Vytvoření z roletové nabídky: Obr.3a: Úvodní okno 3) Vytvoření tlačítkem z lišty: Obr.3b: roletové menu Obr.3c: tlačítko lišty 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 4 z 26

4) Vytvoření pomocí klávesové zkratky Ctrl+N : Každému vytvořenému programu přísluší záložka s vlastní programovací plochou. Při vytvoření více programů se mezi nimi lze přepínat pomocí záložek. Program můžeme uzavřít z roletové nabídky File nebo klávesovou zkratkou Ctrl+W. Obr.4: záložky s programy 4.1.4. Uložení programu: Opět existuje několik způsobů uložení programu: A. Z roletové nabídky: 1. krok 2. krok Obr.5: roletové menu Obr.6: uložení souboru 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 5 z 26

3. krok Obr.7: výběr cílového adresáře B. tlačítkem z lišty (2,3 krok stejný se způsobem z roletové nabídky). Obr.8: tlačíko se symbolem diskety C. Klávesovou zkratkou Ctrl+S (2,3 krok stejný se způsobem z roletové nabídky). 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 6 z 26

4.1.5. Programovací bloky Programovací bloky jsou rozděleny na tři části: Common - obsahuje nejpoužívanější bloky, je přednastaven jako výchozí Complete - obsahuje všechny programovací bloky Custom - zde jsou osobně vytvořené bloky a bloky stažené z webu 4.1.5.1. Jednotlivé programovací bloky - Common A. Move blok - Uvádí motory do pohybu, zapíná světla. Konfigurační panel bloku: Obr.9: Ikona a blok se symboly Obr.10: Konfigurační panel bloku 1) Výběr portů, do kterých budou připojeny motory. Pokud vyberete dva porty, jako je na obrázku, tak motory zapojené do těchto portů budou synchronizované. Pokud vyberete tři porty, tak budou synchronizované v portech B a C. 2) Výběr směru otáčení motoru dopředu, dozadu, zastavení s resetováním motoru. 3) Vyberte příslušné porty motorů a posuvníkem nastavíte zakřivení dráhy při otáčení. 4) Nastavení výkonu motoru pomocí posuvníku nebo přímo napsáním hodnoty do textového pole. 5) Nastavení trvání otáčeni motoru neomezené, čas v sekundách, počet celých otáček nebo úhel natočení. 6) Výběr, zda budou motory zabrzděny, nebo poběží dál po dokončení jejich akce 7) Zde se zobrazuje o kolik stupňů nebo otáček se motor otočil. Stiskem resetovacího tlačítka dojde k vynulování hodnot. 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 7 z 26

B. Record/Play blok - Umožňuje robota naprogramovat fyzickým pohybem a nahraný pohyb zopakovat. Konfigurační panel v režimu nahrávání: Obr. 11: Ikona a blok se symboly Obr.12: Konfigurační panel bloku 1) Textové pole pro pojmenování nahraného pohybu. 2) Výběr portů s připojenými motory, u kterých má být zaznamenám pohyb. 3) Nastavení doby zaznamenávání pohybu ve vteřinách. Konfigurační panel v režimu přehrávání: Obr.12: Konfigurační panel bloku v režimu nahrávání 1) sem napsat název nahrané akce a soubory, které byly uloženy v NXT kostce. 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 8 z 26

C. Sound blok - možňuje přehrát zvuky z NXT kostky. Obr.13: Ikona a blok se symboly Obr.14: Konfigurační panel bloku v režimu nahrávání 1) Výběr mezi přehráním zvukového souboru nebo tónu. 2) Výběr mezi přehráváním nebo zastavení přehrávání zvukového souboru nebo tónu. 3) Nastavení hlasitosti pomocí posuvníku nebo napsáním přesné hodnoty do textového Pole. 4) Umožní přehrávání zvukového souboru pořád dokola znovu a znovu. Funkce Wait for completion bude zašedlá a nedostupná. 5a) Abecední seznam zvukových souborů, které jsou uloženy na pevném disku ve složce Sound Files programu LEGO MINDSTORMS NXT. 5b) Je zde malá klávesnice představující tři oktávy na hudební stupnici. Textové pole nad klávesnicí zobrazuje notu, kterou jste stiskli na klávesnici pomocí myši nebo napsali z klávesnice. Dále je zde textové pole pro nastavení doby přehrávání tónu. 6) Při zaškrtnutí bude následující blok vykonán až po přehrání celého zvukového souboru. Při nezaškrtnutí bude zvukový soubor hrát, zatímco pokračuje další blok. 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 9 z 26

D. Display blok Slouží k zobrazení textu, ikon, vytvořených obrázků na displeji NXT kostky. Konfigurační panel: Obr.15: Ikona a blok se symboly Obr.16: Konfigurační panel bloku 1) Rozbalovací menu pro výběr obrázku, textu, vlastní kresby nebo resetování displeje. 2) Při zatržení volby Clear bude smazán obsah displeje NXT kostky. 3a) Seznam obrázků, které mohou být zobrazeny na displeji. Při kliknutí na název obrázku bude v sekci Position ukázán náhled. Obrázky jsou uloženy na pevném disku ve složce Image Files programu LEGO MINDSTORMS. 4a) Náhled na obrázek, jak bude umístěn na displeji NXT kostky. Pomocí myši můžete upravit umístění obrázku. Přesné nastavení pozice umožňují textová pole X a Y. Pokud napíšete souřadnice (x,y)=(0,0), tak obrázek bude umístěn na levé a spodní hraně obrazovky. Konfigurační panel text: Obr.17: Konfigurační panel bloku 3b) Textové pole pro vložení textu, který bude zobrazen na displeji 4b) Rozbalovací menu umožňuje zvolit číslo řádku, kde bude umístěn text. Přesnou startovní pozici textu lze nastavit textovými poli X a Y. Pro souřadnice (x,y)=(0,0) bude text začínat v levém dolním rohu. 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 10 z 26

Konfigurační panel drawing: Obr.18: Konfigurační panel bloku 3c) Rozbalovací menu pro výběr typu tvaru, který budete chtít nakreslit. Na výběr je tečka, čára nebo kružnice. 4c) Pokud si vyberete kreslení tečky, tak vstupní textová pole X a Y určují pozici tečky na obrazovce. Napsáním souřadnic (x,y)=(0,0) bude tečka umístěna v levém dolním rohu. Pokud vyberete kreslení čáry, tak se objeví další dvě vstupní textová pole, kde můžete nastavit umístění koncového bodu čáry. Startovní bod čáry by měl být definován v horních X a Y souřadnicích a koncový bod ve spodních X a Y souřadnicích. Pokud vyberete kreslení kružnice, tak se objeví doplňkové vstupní textové pole pro definování poloměru kružnice. Souřadnice X a Y definují umístěni středu kružnice na obrazovce. E. Wait blok - Donutí robota čekat, dokud není splněna podmínka, následující blok je vykonán po splnění stanovené podmínky. Obr.19: Ikona a blok se symboly Obsahuje 5 bloků čekání podle toho jaký je: Výstup časovače - Timer Výstup dotykového senzoru - Touch Výstup světelného senzoru - Light Výstup zvukového senzoru - Sound Výstup ultrazvukového senzoru Distance Pokud vyberete Touch sensor, tak program bude čekat, dokud nebude dotykový senzor stlačený, uvolněný nebo rychle stlačený/uvolněný a pak bude vykonán další blok programu. 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 11 z 26

Konfigurační panel Touch: Obr.20: Konfigurační panel bloku Wait-Touch 1. Výběr portu, do kterého je senzor připojen v NXT kostce 2. Výběr podmínky, při jejichž splnění bude program pokračovat dále: Bumped Rychlé stlačení a uvolnění dotykového senzoru Pressed Dotykový senzor je stlačený Released Dotykový senzor je uvolněný 3. Textové pole zajišťující zpětnou vazbu při testování dotykového senzoru. Pokud je senzor aktivní, bude zde zobrazeno číslo 1. Zbylé Wait bloky fungují obdobným způsobem a podobné je i nastavení jejich konfiguračních panelů. Pokud jste na programovací plochu umístili špatný Wait blok, můžete to napravit následovně: V sekci Control je roletové menu pro výběr mezi volbou Sensor a Time. Pokud zvolíte možnost Sensor, tak v sekci Sensor si pomocí roletového menu můžete vybrat požadovaný typ senzoru, který bude spouštěcím prvkem. Jak je vidět z obrázku níže, k dispozici je mnohem více senzorů než z bloku Common. Obr.21: Volba senzoru 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 12 z 26

F. Loop blok - Vytvoří programovou smyčku (cyklus) pro opakování určité sekvence programového kódu. Délka opakování závisí nsa nastavené podmínce. Obr.22: Ikona a blok se symboly nekonečné opakování Nebo, pokud je nastaveno řízení doby trvání smyčky pomocí dotykového senzoru, vypadá blok takto: Obr.23: cyklus s podmínkou na konci Ukončení smyčky mohou být následující: nekonečná smyčka vstup senzoru uplynulý čas počet opakování logický signál Konfigurační panel je obdobný jako u bloku Wait. Nastavíte podmínku, a když bude splněna, tak bude smyčka ukončena. Na rozdíl od Wait bloku je zde možnost zaškrtnout funkci Counter. Která když bude aktivní, tak se objeví zástrčka, z které budete moci přenést číslo představující počet dokončených smyček do jiného programovacího bloku. 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 13 z 26

G. Switch blok - Jedná se o rozhodovací blok (podmínka). Když je splněna první podmínka, provede se něco, když je splněna druhá podmínka, provede se něco jiného. Takto např. vypadá blok na ploše, pokud rozhodování je ovlivněno stavem dotykového senzoru. Obr.24: Ikona a blok se symboly Nastavení podmínek je opět podobné jako u Wait nebo Loop bloku. V konfiguračním panelu máte v sekci Control k dispozici rozbalovací menu s výběrem mezi dvěma možnostmi pro rozhodování: Pomocí hodnoty - Value Může se jednat o typ číslo, text nebo logická hodnota Pomocí senzoru - Sensor Nastavení obdobné jako u bloku Wait a Loop Ovládání konfiguračního panelu je velmi jednoduché a intuitivní a na možnosti nastavení přijdete určitě už sami. 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 14 z 26

4.1.5.2. Jednotlivé programovací bloky - Complete Complete blok obsahuje všechny programovací ikony. Obsahuje šest sekcí: A. Common bloky B. Action bloky C. Sensor bloky D. Flow bloky E. Data bloky F. Advanced bloky A. Common bloky - jsou shodné se sekcí Common. B. Action bloky - umožňují ovládat chování výstupních zařízení. Obsahuje: interaktivní servomotory NXT reproduktor NXT displej Bluetooth odeslání svítidla Obr.25: Rozvinutý blok C. Sensor bloky - kombinací těchto ikon se senzory lze ovládat chování robota. Obsahuje: dotykový senzor zvukový senzor světelný senzor ultrazvukový senzor NXT tlačítka otáčení servomotorů časovače Bluetooth příjem volitelný teplotní senzor Obr.26: Rozvinutý blok 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 15 z 26

D. Flow bloky - Umožňují vytvářet více komplexní chování Obsahuje: čekání opakování rozhodování zastavení určité činnosti Obr.27: Rozvinutý blok E. Data bloky - slouží k nastavení a provádění logických a matematických operací. Obsahuje: Booleovskou logiku, matematiku porovnání rozsahu generátor náhodných čísel proměnné konstanty Obr.28: Rozvinutý blok F. Advanced bloky - jsou určeny ke specializovaným funkcím. Obsahuje: konvertování dat na text přidání textu ovládání funkce sleep na NXT kostce ukládání souborů do NXT kostky kalibraci senzorů resetování motorů zahájení záznamu dat ukončení záznamu dat připojení pomocí Bluetooth Obr.29: Rozvinutý blok 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 16 z 26

4.1.5.3. Jednotlivé programovací bloky - Custom Obsahují dvě sekce: A. My blocks B. Web downloads A. My blocks zde se nachází bloky, které jste sami vytvořili. Obr.30: Ikona - My blocks B. Web downloads zde jsou bloky, které jste stáhli z portálu nebo webových stránek. Obr.31: Ikona - My blocks Vytvoření Custom bloků bude popsáno v další kapitole. 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 17 z 26

4.1.6. Obecné zásady programování v NXT G. Bloky z programovací palety lze přemísťovat 2 způsoby: první způsob: o najeďte kurzorem myši nad blok o stiskněte a držte levé tlačítko myši o najeďte na místo, kam chcete blok umístit o pusťte tlačítko myši druhý způsob: o klikněte na blok o najeďte na požadované místo o tam klikněte První blok se vždy umísťuje na programovací ploše do místa, kde je napsáno Start. Sekvenční paprsek Startovní bod Obr.32: počátek programu Toto místo je spojeno pomocí vodorovného bílého výběžku s bodem, kde je zobrazena ikona programu NXT a tento bod se nazývá startovní bod. Ze startovního bodu vychází celkem tři bílé výběžky, nazývají se Sequence beams sekvenční paprsky. Sequence beam sekvenční paprsek : řídí tok vašeho programu určuje pořadí, v jakém budou jednotlivé bloky vykonány do NXT kostky budou staženy jen ty bloky, které jsou spojeny sekvenčním paprskem, který vychází ze startovního bodu jsou dva druhy sekvenčních paprsků : o hlavní o vedlejší Hlavní paprsek Vedlejší paprsek Obr.33: sekvenční paprsek 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 18 z 26

4.1.6.1 Vytvoření paralelní větve v programu Postup chcete-li vytvořit paralelní větev: najeďte kurzorem myši na místo, které je v následujícím obrázku označeno modře. poté co se šipka myši změní v takový svazek drátu klikněte levým tlačítkem myši nyní jste v režimu vytváření nového sekvenčního paprsku a můžete přesunout kurzor myši na místo, které je v obrázku označeno červeně zde klikněte a máte vytvořenou paralelní větev programu Pozn.: Paralelní větev umožňuje programu současné vykonávání bloků. Obr.34: bod připojení bloku Paralelní větev nemusíte vytvářet jen ze startovního bodu ale z jakéhokoliv místa sekvenčního paprsku Máme například takovéto uspořádání bloků a chceme vytvořit paralelní větev: Najeďte kurzorem myši na místo označené v obrázku modře a šipka se změní v oboustrannou šipku stiskněte a držte klávesu Shift oboustranná šipka se změní ve svazek drátu klikněte levým tlačítkem myši a dostanete se do režimu vytváření nového sekvenčního paprsku přesuňte se na místo, které je na obrázku označeno červeně, a tam klikněte, pusťte klávesu Shift a je hotovo. Obr.35: bod připojení bloku 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 19 z 26

4.1.6.2 Smazání bloku z programovací plochy Pokud chcete blok odstranit z programovací plochy, tak postupujte následovně: klikněte na příslušný blok nebo na něj jen najeďte kurzorem myši a po asi jedné sekundě bude vybrán obvod bloku bude zvýrazněn modrou barvou pak již stačí stisknout klávesu Delete a blok bude smazán z programovací plochy 4.1.6.3 Přesun bloku po programovací ploše Bloky lze jednoduše přesouvat po programovací ploše: najeďte kurzorem myši na programovací blok stiskněte a držte levé tlačítko myši přesuňte se na místo, kam chcete blok umístit a pusťte tlačítko myši 4.1.6.4 Data hubs Data hub je funkcionalita, s kterou přichází většina programovacích bloků. Postup na rozbalení Data hub nabídky: umístěte blok na programovací plochu přesuňte kurzor myši na blok do místa, jako je uvedeno na obrázku níže, aby se objevila oboustranná šipka a klikněte rozbalí se Data hub nabídka se vstupními zástrčkami na levé straně. Obr.36: Move block před a po rozbalení 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 20 z 26

Pokud najedete kurzorem myši nad zástrčku, tak se šipka změní ve svazek drátu. Vytváření datových spojení lze po kliknutí přejdete do režimu vytváření datového spojení a můžete tak vytvořit spojení z výstupní zástrčky jednoho bloku do vstupní zástrčky druhého bloku. Datovým spojením lze přenášet informaci ve formě čísla, textu nebo logické hodnoty. Správně vytvořené spojení je znázorněno plnou čarou. Nesprávně vytvořené spojení je znázorněno tečkovanou šedou čarou. Barvy čar: Žlutá data ve formě čísla Oranžová data ve formě textu Zelená data ve formě logických hodnot 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 21 z 26

4.1.7. Tvorba vlastních bloků My block builder je funkcionalita, která vám dovoluje označit skupinu bloků na programovací ploše a sloučit je do jednoho bloku. Pro nový blok si můžete nastavit vlastní vzhled a po dokončení ho budete moci najít na paletě Custom pod ikonou My blocks. Například můžete vytvořit vlastní blok, který se bude jmenovat Pohyb robota. Tento blok vznikne sloučením bloku Move, který bude řídit pohyb robota a bloku Sound, kdy robot bude vydávat nějaký zvuk při svém pohybu. To vám usnadní práci, pokud budete chtít u jiných robotů naprogramovat tu samou činnost. Vše budete mít nastavené a vy jen blok přetáhnete z palety Custom na programovací plochu. V podstatě vytvoříte podprogram (funkci), kterou můžete používat stále dokola. 4.1.7.1 Vytvoření vlastního bloku 1. nejprve na programovací plochu umístěte bloky, které logicky patří k sobě. 2. vyberte bloky tak, že umístíte kurzor myši do jednoho rohu pomyslného obdélníku, který bude obklopovat všechny bloky, které chcete sloučit. Podržte stisknuté tlačítko myši a přejeďte kurzorem myši do protějšího rohu pomyslného obdélníku tak, aby byly ohraničeny všechny požadované bloky. Po uvolnění tlačítka myši by měly být všechny bloky, které budou tvořit nový blok, označeny. Poznáte to tak, že hrany bloků budou zbarveny modře. Pamatujte si, že výběr, který bude zahrnovat bloky jen částečně, způsobí také jejich označení. Výběr bloků do sloučení do jednoho bloku můžete vidět na obrázku. Obr.37: označené bloky 3. Pokud se vám povedlo bloky označit, tak klikněte na roletovou nabídku Edit a poté klikněte na podnabídku Make a New My Block. Zobrazí se okno průvodce My Block Builder. Toto okno můžete také otevřít klinutím na tlačítko, které je první zleva na liště s tlačítky pro rychle spuštění. 4. V sekci Block Name je textové pole, kam napište název vašeho nového bloku. V další sekci, která je pojmenována Block Description, se nachází textové pole, kde můžete napsat krátký popis, co váš nový blok dělá. Poslední sekce Selected Blocks vám ukazuje bloky, které jste vybrali. 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 22 z 26

Obr.38: My Block Bulder - bloky 5. Klikněte na tlačítko Next a přejdete k návrhu ikony nového bloku. Přetažením můžete dostat jednu nebo dvě ikony ze sekce Icons do editovací oblasti v sekci Icon Builder. Klávesovými šipkami lze doladit umístění ikony (nebo ikon) do finální pozice. Velikost ikony v editovací oblasti změníte tak, že kurzor myši přesunete na jeden z jejích rohů, kde je černý obdélníček. Stiskněte a držte levé tlačítko myši. Pohybem myši upravujete velikost ikony. Napravo od editovací oblasti je ukázán náhled, jaký bude vzhled vašeho nového bloku. Obr.38: My Block Bulder - ikony 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 23 z 26

6. Kliknutím na tlačítko Finish dokončíte tvorbu vašeho nového bloku a na programovací ploše se již bude nacházet vámi vytvořený blok. Když byste chtěli blok například využít v jiném programu, tak ho najdete na programovací paletě v záložce Custom pod ikonou My Blocks. Je dobré si uvědomit, že každé vstupní a výstupní datové spojení, které překročilo pomyslný obdélník při výběru bloků, bude tvořit vstupní a výstupní zástrčku na v Data hub nabídce nového bloku. Pokud chcete změnit dispozice zástrček u nového bloku, tak ho budete muset vytvořit znovu, ale tentokrát se správnými zástrčkami a tomu odpovídající datová spojení, která vychází z oblasti výběru pomyslným obdélníkem. 4.1.7.2. Úprava vytvořeného bloku Když byste chtěli změnit obsahu vašeho vytvořeného bloku, tak to provedete tak, že na něj na programovací ploše dvakrát kliknete nebo ho označíte kliknutím na něj a z roletové nabídky Edit vyberete podnabídku Edit Selected My Block. Pokud chcete změnit pouze vzhled programovacího bloku, tak na něj na programovací ploše klikněte. Pak z roletové nabídky Edit vyberte podnabídku Edit My Block Icon. Tím se spustí My block Builder, kde můžete provést změny. 4.1.7.3. Správa palety Custom Pro správu Custom palety je potřeba vykonat následující kroky: 1. Klikněte na roletovou nabídku Edit a vyberte podnabídku Manage Custom Palette. 2. Tím otevřete okno s adresářovou strukturou vašeho počítače a budete se nacházet ve složce Blocks, kde jsou dvě podsložky My Blocks a Web Blocks. Do složky My Blocks si můžete přidat bloky, které jste například od někoho obdrželi. Zároveň je zde také můžete smazat. 3. Když byste chtěli změnit obsahu vašeho vytvořeného bloku, tak to provedete tak, že na něj na programovací ploše dvakrát kliknete nebo ho označíte kliknutím na něj a z roletové nabídky Edit vyberete podnabídku Edit Selected My Block. 4. Pokud chcete změnit pouze vzhled programovacího bloku, tak na něj na programovací ploše klikněte. Pak z roletové nabídky Edit vyberte podnabídku Edit My Block Icon. Tím se spustí My block Builder, kde můžete provést změny. V paletě Custom se nachází dvě předdefinované podsekce My Blocks a Web Downloads. Vy máte možnost vytvořit vlastní podsekci a to tak, že ve složce Blocks vytvoříte novou složku. Máte možnost změnit vzhled vlastní podsekce tak, že do nově vytvořené složky, která odpovídá nové podsekci, umístíte dva obrázkové soubory s příponou PNG (Portable Network Graphics) o rozměrech 45x45 pixelů. První soubor musí být pojmenován PaletteIcon.png a druhý PaletteIconHilight.png. Pro specifikování nápovědy, která se zobrazí při najetí kurzoru myši nad novou podsekci, je potřeba do stejné složky umístit textový soubor s názvem PaletteIcon.txt, který bude obsahovat text nápovědy. 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 24 z 26

4.1.8. Práce s proměnnými Proměnou si můžete představit jako místo pro uložení hodnoty ve vestavěné paměti NXT kostky. Programovací bloky mohou přečíst, ale i měnit proměnnou aktuální hodnotu připojením k bloku s datovými spojeními. 4.1.8.1. Vytvoření proměnné Chcete-li vytvořit proměnnou: 1. Musíte kliknout na roletovou nabídku Edit a vybrat podnabídku Define Variable. Otevře se okno, které má název Edit Variables. V sekci List je uvedeno jméno a typ předdefinovaných proměnných. Pro vytvoření nové proměnné klikněte na tlačítko Create a získáte, přistup do sekce Name. Kde do textového pole napište název nové proměnné a v sekci Data Type vyberte z roletového seznamu typ proměnné. Proměnná může být typu text, číslo nebo logická. 2. Přetáhněte Variable blok z programovací palety na programovací plochu. V konfiguračním panelu v sekci List kliknutím vyberte proměnnou, kterou budete chtít použít. 3. V sekci Action můžete vybrat čtení Read nebo zápis Write do proměnné. Výběrem možnosti Write lze v průběhu času měnit hodnotu proměnné přepsáním její aktuální hodnoty novou informací. Pokud to chcete udělat, tak musíte vytvořit datové spojení do vstupní zástrčky v data hub nabídce, které přinese nové informace. Pokud chcete pouze číst konstantní hodnotu z bloku Variable, tak v sekci Action vyberte možnost Write, aby se vám zpřístupnila sekce Value, kde pomocí šipek nahoru nebo dolů můžete nastavit požadovanou číselnou hodnotu. Když nechcete klikat na šipky, tak stačí kliknout do textového pole a požadovanou hodnotu napsat přímo z klávesnice. Pokud se jedná o proměnnou typu text, tak do textového pole napíšete požadovaný text a v případě logické proměnné vyberete přepínačem hodnotu True - pravda nebo False nepravda. Pak již stačí zpátky přepnout na možnost Read. Dejte si pozor, když by bylo do vstupní zástrčky připojeno datové spojení a Variable blok by měl nastavenou akci Read, tak nové informace, které by přicházely datovým spojením, by měly přednost před jakoukoliv konstantní hodnotou. 4.1.8.1. Použití proměnné Hodnota proměnné se může měnit v průběhu času. Například chcete vytvořit proměnnou Úroveň osvětlení a nastavíte jí počáteční hodnotu 50. Potom váš robot, který je vybaven světelným senzorem, přijede na určité místo a zde zaznamená úroveň osvětlení. Nabízí se zde příležitost využití bloku Variable, který musí být nastaven v režimu Write. Aby se do něj nahrála aktuální hodnota osvětlení v tom daném místě, tak musí být vytvořeno datové spojení z výstupní zástrčky bloku Light sensor do vstupní zástrčky bloku Variable. Později ve vašem programu budete moci použít Variable blok, který musí být nastaven v režimu Read a pomocí datového spojení mezi výstupní zástrčkou a vstupní zástrčkou jiného bloku budete moci přistoupit k nahrané hodnotě úrovně osvětlení. Data hub nabídky bloku Variable se rozbalí automaticky, když je umístěn na programovací plochu. Pokud chcete přečíst aktuální hodnotu z bloku, tak musíte vytvořit datové spojení z výstupní zástrčky. Když budete chtít zapsat novou informaci do proměnné, tak musíte vytvořit spojení do vstupní zástrčky bloku Variable. 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 25 z 26

Literatura: Monografie: [1] KELLY, James Floyd. LEGO MINDSTORMS NXT G Programming Guide. [s.l.] : Apress, 2007. 196 s. ISBN 1590598717, ISBN-13: 978-1590598719. [2] ASTOLFO, Dave; FERRARI, Mario; FERRARI, Giulio. Bulding Robots With Lego Mindstorms NXT.Burlington (Massachusetts) : Syngress, 2007. 448 s. ISBN 1597491527, ISBN-13: 978-1597491525. [3] GASPERI, Michael; HURBAIN, Philippe E.; HURBAIN, Isabelle L. Extreme NXT: Extending the LEGO MINDSTORMS NXT to the Next Level. [s.l.] : Apress, 2007. 312 s. ISBN 1590598180, ISBN-13: 978-1590598184. Bakalářské práce: [4] TROJÁNEK Pavel: Využití robota LEGO MINDSTORMS při výuce. Praha, 2009. 94 s. Bakalářská práce. České vysoké učení technické v Praze, Fakulta elektrotechnická, katedra řídící techniky. [5] MAREK Jaroslav: Návod na programování v NXT-G. Praha 2010, 32 s. Bakalářská práce. České vysoké učení technické v Praze, Fakulta elektrotechnická, katedra řídící techniky. Internetové odkazy: [6] The NXT STEP - LEGO MINDSTORMS NXT blog : Home [online]. c2006 [cit. 2010-05-15]. Dostupné z WWW: <http://thenxtstep.blogspot.com/2006/05/how-robocenterworks.html> [7] MINDSTORMS.LEGO.com : Home [online]. c2010 [cit. 2010-05-15]. Dostupné z http://mindstorms.lego.com/en-us/whatisnxt/default.aspx [8] www.robosoutez.cz\files/navod_na_nxt-g.pdf Ostatní: [9] LEGO MINDSTORMS Education. NXT 2.0 Programming Help, 2008 [10] LEGO MINDSTORMS Education. NXT 2.0 UserGuide, 2008 LEGO 2015 SPŠEIT Brno 41_LEGO_Programové_prostředí // Stránka 26 z 26