OP VK Spolupráce se základními školami - Modul Dílenská praxe
(→Pracovní listy) |
|||
Řádka 2: | Řádka 2: | ||
[[Soubor:Pic_08.gif|right]] | [[Soubor:Pic_08.gif|right]] | ||
+ | |||
+ | {| class="toccolours" cellpadding="5" style="float: right; clear: right; margin: 0 0 1em 1em; font-size: 85%; width: 25em" | ||
+ | | colspan="2" style="text-align: center; font-size: larger; background-color: lightblue;" | ''''' | ||
+ | Pomůcky''''' | ||
+ | |||
+ | |- style="vertical-align: top;" | ||
+ | | | ||
+ | NXT kostka | ||
+ | |||
+ | [[Soubor:nxt-kostka.jpg|150px|Mozek celého NXT]] | ||
+ | |||
+ | '''Servopohony''' | ||
+ | |||
+ | [[Soubor:nxt-servo.jpg|150px|Servopohon]] | ||
+ | |||
+ | '''Čidlo dotyku''' | ||
+ | |||
+ | [[Soubor:nxt-touch.jpg|150px|Čidlo dotyku]] | ||
+ | |||
+ | '''Čidlo zvuku''' | ||
+ | |||
+ | [[Soubor:nxt-sound.jpg|150px|Čidlo zvuku]] | ||
+ | |||
+ | '''Čidlo světla''' | ||
+ | |||
+ | [[Soubor:nxt-light.jpg|150px|Čidlo světla]] | ||
+ | |||
+ | '''Čidlo barvy''' | ||
+ | |||
+ | [[Soubor:nxt-colour.jpg|150px|Čidlo barvy]] | ||
+ | |||
+ | '''Čidlo ultrazvuku''' | ||
+ | |||
+ | [[Soubor:Nxt-ultrasound.jpg|150px|ultrazvukový sensor]] | ||
+ | |||
+ | |} | ||
V tomto modulu se seznámíme s robotem [[NXT]], který se naučíme ovládat tak, aby nás poslouchal a byl schopen plnit zadané úkoly pro plnění jednoduchých "robotích" misí. | V tomto modulu se seznámíme s robotem [[NXT]], který se naučíme ovládat tak, aby nás poslouchal a byl schopen plnit zadané úkoly pro plnění jednoduchých "robotích" misí. | ||
Řádka 7: | Řádka 43: | ||
=== Představení robota: === | === Představení robota: === | ||
− | Robot obsahuje několik částí. | + | Robot obsahuje několik částí. |
+ | == Inteligentní [[NXT]] kostka: == | ||
+ | |||
+ | * Toto zařízení je mozkem celého [[NXT]]. | ||
+ | * Zařízení disponuje: | ||
+ | ** port USB 2.0 | ||
+ | ** komunikační technologie Bluetooth v2.0+EDR 26MHz | ||
+ | ** 4x vstupní port | ||
+ | ** 3x výstupní port | ||
+ | ** 32-bit mikroprocesor ARM7 | ||
+ | ** AT91SAM7S256 | ||
+ | ** 48 MHz, 256 kB FLASH, 64 kB RAM | ||
+ | ** 8-bit mikroprocesor ATmega48 | ||
+ | ** 8 MHz,4 kB FLASH, 512 B RAM | ||
+ | |||
+ | == Bluetooth možnosti: == | ||
+ | [[Soubor:Nxt-bluetooth.jpg|150px|right|nahled ovládání NXT přes PDA]] | ||
+ | *Nahrávání programů z PC | ||
+ | *Umožňuje přehrávání programů mezi NXT | ||
+ | *Předávání povelů mezi NXT (Master – slave tj. jeden řídí až 3 další) | ||
+ | *Ovládaní pomocí PDA | ||
+ | *Mobilní telefon jako dálkový ovladač | ||
+ | *Video kamera | ||
+ | |||
+ | |||
+ | == Čidla: == | ||
+ | [[Soubor:Nxt-cidla.jpg|150px|right|rozšíření o možná čidla]] | ||
+ | |||
+ | |||
+ | '''základní''' | ||
+ | * • Dotyku (touch sensor) - slouží k zišťování překážek před NXT | ||
+ | # • Zvuku (sound sensor) - měří sílu zvuku 0-100%, rozpoznává tóny | ||
+ | # • Světla (light sensor) - čte světelnou intenzitu okolí | ||
+ | # • Ultrazvuku - slouží k měření vzdálenosti | ||
+ | |||
+ | * '''lze dokoupit''' | ||
+ | ** • [http://www.eduxe.cz/product/1035-nxt-senzor-magnetickeho-pole-375/ Senzor magnetického pole] | ||
+ | ** • [http://www.eduxe.cz/product/1040-nxt-senzor-akcelerace-370/ Senzor akcelerace] | ||
+ | ** • [http://www.hitechnic.com/cgi-bin/commerce.cgi?preadd=action&key=NGY1044 Gyroskop] [http://robotsquare.com/2012/03/13/tutorial-segway-with-nxt-g/ Tutorial: NXT Segway with NXT-G] [http://robotsquare.com/2012/02/13/tutorial-segway-with-robotc/ Tutorial: NXT Segway with RobotC] | ||
+ | ** • [http://www.eduxe.cz/les/mindstorms/hitechnic/ více] | ||
+ | |||
+ | ==SW:== | ||
+ | |||
+ | === NXT-G === | ||
+ | [[Soubor:Nxt-g.jpg|150px|left|náhled NXT-G]] | ||
+ | * Základní grafické vývojové prostředí | ||
+ | * Odvozeno od [http://www.ni.com/academic/mindstorms/ National Instruments’ LabView] | ||
+ | * Výborné pro rychlé programování - vynikající nejen pro studenty API SPŠ a VOŠ, ale také pro začátečníky | ||
+ | * Obsahem [[NXT-G]] je i výborně zpracovaná nápověda, pomocí které lze se naučit základní pohyby a funkce NXT | ||
+ | |||
+ | * http://support.dce.felk.cvut.cz/roboti/index.php?sekce=home&id=nxtg | ||
Řádka 21: | Řádka 107: | ||
#. úkol: nainstalujte si SW: LEGO® MINDSTORMS® NXT | #. úkol: nainstalujte si SW: LEGO® MINDSTORMS® NXT | ||
#. úkol: mezitím si prohlédněte výukové demo: [[Soubor:NXT-G-demo.jpg|200px|link=http://mindstorms.lego.com/en-us/Software/Default.aspx]] | #. úkol: mezitím si prohlédněte výukové demo: [[Soubor:NXT-G-demo.jpg|200px|link=http://mindstorms.lego.com/en-us/Software/Default.aspx]] | ||
+ | |||
+ | |||
+ | |||
+ | Úkol č. 4: Jízda vpřed s omezením jízdy senzorem dotyku | ||
+ | |||
+ | Zadání: Vytvořte program pro jízdu robota NXT vpřed časově omezenou pouze dotykem čidla | ||
+ | |||
+ | Postup: | ||
+ | 1. Sestavte robota pro jízdu (kolový, pásový) | ||
+ | 2. Spusťte SW LEGO® MINDSTORMS® NXT | ||
+ | 3. Vyberte blok motoru | ||
+ | 4. Nastavte parametry tak, aby se motor pohyboval neomezeně vpřed | ||
+ | 5. Přidejte blok modulu čekající na stisk senzoru dotyku | ||
+ | 6. Nahrajte program do robota | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Řešení: | ||
+ | Nastaveno: | ||
+ | • Port: B,C - zapnuty jsou porty B a C, do kterých jsou připojeny motory | ||
+ | • Direction: dopředu | ||
+ | • Steering: 50:50 – jízda bude pokud možno rovně | ||
+ | • Power: 75%, rychlost bude na 75% celkového výkonu | ||
+ | • Duration: Neomezeně - robot by mohl jet neomezeně ale po určité době zastaví | ||
+ | |||
+ | |||
+ | Lze vyzkoušet i ostatní robotická čidla např. čidlo ultrazvuku, světla apod. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Úkol č. 5: Jízda vpřed či vzad v závislosti na čidle dotyku | ||
+ | |||
+ | Zadání: Vytvořte program pro jízdu robota NXT tak, aby jízda byla ovlivňována stiskem tlačítka | ||
+ | |||
+ | Postup: | ||
+ | 1. Sestavte robota pro jízdu (kolový, pásový) | ||
+ | 2. Spusťte SW LEGO® MINDSTORMS® NXT | ||
+ | 3. Vyberte blok Loop, který nám zabezpečí opakování cyklu | ||
+ | 4. Dále vyberte blok Switch s volbou dle stisku tlačítka | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | 5. Nastavte parametry tak, aby se motor pohyboval vpřed a po stisknutí tlačítka se začal pohybovat vzad | ||
+ | 6. Nahrajte program do robota | ||
+ | |||
+ | Řešení: | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Úkol č. 6: Jízda vpřed v uzavřeném prostoru | ||
+ | |||
+ | Zadání: Vytvořte program pro jízdu robota NXT vpřed. Pokud se přiblíží k překážce na vzdálenost 20 cm, zacouvá a otočí se úhel 160 cm a bude pokračovat v jízdě | ||
+ | |||
+ | Postup: | ||
+ | 1. Sestavte robota pro jízdu (kolový, pásový) | ||
+ | 2. Spusťte SW LEGO® MINDSTORMS® NXT | ||
+ | 3. Vyberte blok motoru | ||
+ | 4. Nastavte parametry tak, aby se motor pohyboval neomezeně vpřed | ||
+ | 5. Přidejte blok modulu čekající na stisk senzoru dotyku | ||
+ | 6. Nahrajte program do robota | ||
+ | |||
+ | |||
+ | |||
+ | Řešení: | ||
+ | |||
+ | Celý program je umístěn v časové smyčce. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Blok motoru je nastaven tak, aby robot jel neustále dopředu omezen jen kontrolou čidla vzdálenosti. Zde je použito ultrazvukové čidlo nastavené tak, aby se robot mohl přiblížit k překážce pouze na vzdálenost 20 cm. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Následně se pohyb zastaví | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Robot vycouvá | ||
+ | |||
+ | Otočí se o 160° a celý děj se znovu opakuje | ||
+ | |||
+ | Úkol č. 7: Klikatice | ||
+ | |||
+ | Zadání: Vytvořte program tak, aby se robot NXT pohyboval po klikaté dráze vpřed. | ||
+ | |||
+ | |||
+ | Postup: | ||
+ | 1. Sestavte robota pro jízdu (kolový, pásový) | ||
+ | 2. Spusťte SW LEGO® MINDSTORMS® NXT | ||
+ | 3. Vyberte časovou smyčku a následně blok motoru | ||
+ | 4. Nastavte parametry tak, aby se motor B pohyboval s jinou silou než motor C a oba časově omezeně na 1 sec. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | 5. Pak přidejte opět blok motoru a to tak, aby se prohodila síla pro oba dva motory. | ||
+ | 6. Přidejte blok se stejným časovým zpožděním jako v první variantě | ||
+ | 7. Nahrajte program do robota | ||
+ | |||
+ | Řešení: | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Doporučená literatura: | ||
+ | http://wiki.sps-pi.com/index.php/NXT | ||
+ | ORTOP – Oregon Robotics Tournament and Outreach Program [online]. c2010 [cit. 2010-05-15]. Essentials. Dostupné z WWW: http://www.ortop.org/NXT_Tutorial/html/essentials.html | ||
+ | Odkazy a kontakty: | ||
+ | http://legoengineering.com/library/cat_view/28-code/33-lego-mindstorms-nxt-software.html?start=10 | ||
+ | |||
+ | Použité zdroje informací: | ||
+ | NXT uvnitř: http://noeticbrainwaves.blogspot.cz/2010/07/mindstorms-nxt-screen-fix.html | ||
+ | |||
+ | Stavební návod robota NXT: http://wiki.sps-pi.com/index.php/NXT#Building_Instructions | ||
== Metodické listy == | == Metodické listy == |
Verze z 1. 1. 2013, 18:27
Obsah |
Představení modulu
Pomůcky | |
NXT kostka Servopohony Čidlo dotyku Čidlo zvuku Čidlo světla Čidlo barvy Čidlo ultrazvuku |
V tomto modulu se seznámíme s robotem NXT, který se naučíme ovládat tak, aby nás poslouchal a byl schopen plnit zadané úkoly pro plnění jednoduchých "robotích" misí.
Představení robota:
Robot obsahuje několik částí.
Inteligentní NXT kostka:
- Toto zařízení je mozkem celého NXT.
- Zařízení disponuje:
- port USB 2.0
- komunikační technologie Bluetooth v2.0+EDR 26MHz
- 4x vstupní port
- 3x výstupní port
- 32-bit mikroprocesor ARM7
- AT91SAM7S256
- 48 MHz, 256 kB FLASH, 64 kB RAM
- 8-bit mikroprocesor ATmega48
- 8 MHz,4 kB FLASH, 512 B RAM
Bluetooth možnosti:
- Nahrávání programů z PC
- Umožňuje přehrávání programů mezi NXT
- Předávání povelů mezi NXT (Master – slave tj. jeden řídí až 3 další)
- Ovládaní pomocí PDA
- Mobilní telefon jako dálkový ovladač
- Video kamera
Čidla:
základní
- • Dotyku (touch sensor) - slouží k zišťování překážek před NXT
- • Zvuku (sound sensor) - měří sílu zvuku 0-100%, rozpoznává tóny
- • Světla (light sensor) - čte světelnou intenzitu okolí
- • Ultrazvuku - slouží k měření vzdálenosti
- lze dokoupit
SW:
NXT-G
- Základní grafické vývojové prostředí
- Odvozeno od National Instruments’ LabView
- Výborné pro rychlé programování - vynikající nejen pro studenty API SPŠ a VOŠ, ale také pro začátečníky
- Obsahem NXT-G je i výborně zpracovaná nápověda, pomocí které lze se naučit základní pohyby a funkce NXT
Výukové materiály
Pracovní listy
Zadání: Naprogramujte robota, aby jel neomezeně dlouho vpřed
Úkol č. 4: Jízda vpřed s omezením jízdy senzorem dotyku
Zadání: Vytvořte program pro jízdu robota NXT vpřed časově omezenou pouze dotykem čidla
Postup: 1. Sestavte robota pro jízdu (kolový, pásový) 2. Spusťte SW LEGO® MINDSTORMS® NXT 3. Vyberte blok motoru 4. Nastavte parametry tak, aby se motor pohyboval neomezeně vpřed 5. Přidejte blok modulu čekající na stisk senzoru dotyku 6. Nahrajte program do robota
Řešení:
Nastaveno: • Port: B,C - zapnuty jsou porty B a C, do kterých jsou připojeny motory • Direction: dopředu • Steering: 50:50 – jízda bude pokud možno rovně • Power: 75%, rychlost bude na 75% celkového výkonu • Duration: Neomezeně - robot by mohl jet neomezeně ale po určité době zastaví
Lze vyzkoušet i ostatní robotická čidla např. čidlo ultrazvuku, světla apod.
Úkol č. 5: Jízda vpřed či vzad v závislosti na čidle dotyku
Zadání: Vytvořte program pro jízdu robota NXT tak, aby jízda byla ovlivňována stiskem tlačítka
Postup: 1. Sestavte robota pro jízdu (kolový, pásový) 2. Spusťte SW LEGO® MINDSTORMS® NXT 3. Vyberte blok Loop, který nám zabezpečí opakování cyklu 4. Dále vyberte blok Switch s volbou dle stisku tlačítka
5. Nastavte parametry tak, aby se motor pohyboval vpřed a po stisknutí tlačítka se začal pohybovat vzad 6. Nahrajte program do robota
Řešení:
Úkol č. 6: Jízda vpřed v uzavřeném prostoru
Zadání: Vytvořte program pro jízdu robota NXT vpřed. Pokud se přiblíží k překážce na vzdálenost 20 cm, zacouvá a otočí se úhel 160 cm a bude pokračovat v jízdě
Postup: 1. Sestavte robota pro jízdu (kolový, pásový) 2. Spusťte SW LEGO® MINDSTORMS® NXT 3. Vyberte blok motoru 4. Nastavte parametry tak, aby se motor pohyboval neomezeně vpřed 5. Přidejte blok modulu čekající na stisk senzoru dotyku 6. Nahrajte program do robota
Řešení:
Celý program je umístěn v časové smyčce.
Blok motoru je nastaven tak, aby robot jel neustále dopředu omezen jen kontrolou čidla vzdálenosti. Zde je použito ultrazvukové čidlo nastavené tak, aby se robot mohl přiblížit k překážce pouze na vzdálenost 20 cm.
Následně se pohyb zastaví
Robot vycouvá
Otočí se o 160° a celý děj se znovu opakuje
Úkol č. 7: Klikatice
Zadání: Vytvořte program tak, aby se robot NXT pohyboval po klikaté dráze vpřed.
Postup:
1. Sestavte robota pro jízdu (kolový, pásový)
2. Spusťte SW LEGO® MINDSTORMS® NXT
3. Vyberte časovou smyčku a následně blok motoru
4. Nastavte parametry tak, aby se motor B pohyboval s jinou silou než motor C a oba časově omezeně na 1 sec.
5. Pak přidejte opět blok motoru a to tak, aby se prohodila síla pro oba dva motory.
6. Přidejte blok se stejným časovým zpožděním jako v první variantě
7. Nahrajte program do robota
Řešení:
Doporučená literatura: http://wiki.sps-pi.com/index.php/NXT ORTOP – Oregon Robotics Tournament and Outreach Program [online]. c2010 [cit. 2010-05-15]. Essentials. Dostupné z WWW: http://www.ortop.org/NXT_Tutorial/html/essentials.html Odkazy a kontakty: http://legoengineering.com/library/cat_view/28-code/33-lego-mindstorms-nxt-software.html?start=10
Použité zdroje informací: NXT uvnitř: http://noeticbrainwaves.blogspot.cz/2010/07/mindstorms-nxt-screen-fix.html
Stavební návod robota NXT: http://wiki.sps-pi.com/index.php/NXT#Building_Instructions
Metodické listy
Diskusní fórum
Odkazy a kontakty:
Maturitní práce Roberta Zelenky: Zpracování a praktické ověření instruktážních úkolů pro robota NXT