OP VK Spolupráce se základními školami - Modul Dílenská praxe

Z MediaWiki SPŠ a VOŠ Písek
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Odkazy a kontakty:)
 
(Není zobrazeno 8 mezilehlých verzí od 1 uživatele.)
Řádka 1: Řádka 1:
 +
[[Soubor:OPVK_4ZS_ROB.png|thumb|400px|link=:Soubor:OPVK_4ZS_ROB.pdf]]
 +
 
== Představení modulu ==  
 
== Představení modulu ==  
  
Řádka 11: Řádka 13:
 
NXT kostka  
 
NXT kostka  
 
   
 
   
[[Soubor:nxt-kostka.jpg|150px|Mozek celého NXT]]
+
[[Soubor:nxt-kostka.jpg|200px|Mozek celého NXT]]
  
 
'''Servopohony'''
 
'''Servopohony'''
  
[[Soubor:nxt-servo.jpg|150px|Servopohon]]
+
[[Soubor:nxt-servo.jpg|200px|Servopohon]]
  
 
'''Čidlo dotyku'''     
 
'''Čidlo dotyku'''     
  
[[Soubor:nxt-touch.jpg|150px|Čidlo dotyku]]
+
[[Soubor:nxt-touch.jpg|100px|Čidlo dotyku]]
  
 
'''Čidlo zvuku'''
 
'''Čidlo zvuku'''
  
[[Soubor:nxt-sound.jpg|150px|Čidlo zvuku]]
+
[[Soubor:nxt-sound.jpg|100px|Čidlo zvuku]]
  
 
'''Čidlo světla'''     
 
'''Čidlo světla'''     
  
[[Soubor:nxt-light.jpg|150px|Čidlo světla]]
+
[[Soubor:nxt-light.jpg|100px|Čidlo světla]]
  
 
'''Čidlo barvy'''
 
'''Čidlo barvy'''
  
[[Soubor:nxt-colour.jpg|150px|Čidlo barvy]]
+
[[Soubor:nxt-colour.jpg|100px|Čidlo barvy]]
 
    
 
    
 
'''Čidlo ultrazvuku'''
 
'''Čidlo ultrazvuku'''
Řádka 54: Řádka 56:
 
** 3x výstupní port
 
** 3x výstupní port
 
** 32-bit mikroprocesor ARM7
 
** 32-bit mikroprocesor ARM7
** AT91SAM7S256
 
 
** 48 MHz, 256 kB FLASH, 64 kB RAM
 
** 48 MHz, 256 kB FLASH, 64 kB RAM
 
** 8-bit mikroprocesor ATmega48
 
** 8-bit mikroprocesor ATmega48
Řádka 60: Řádka 61:
  
 
== Bluetooth možnosti: ==
 
== Bluetooth možnosti: ==
[[Soubor:Nxt-bluetooth.jpg|150px|right|nahled ovládání NXT přes PDA]]
+
[[Soubor:Nxt-bluetooth.jpg|150px|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
+
  
 +
* Nahrávání programů z PC
 +
* Umožňuje přehrávání programů mezi NXT
 +
* Ovládaní pomocí smart telefonu
  
 
== Čidla: ==
 
== Čidla: ==
[[Soubor:Nxt-cidla.jpg|150px|right|rozšíření o možná čidla]]
+
[[Soubor:Nxt-cidla.jpg|400px|rozšíření o možná čidla]]
 
+
  
 
'''základní'''
 
'''základní'''
* •  Dotyku (touch sensor) - slouží k zišťování překážek před NXT
+
# 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
+
# Zvuku (sound sensor) - měří sílu zvuku 0-100%, rozpoznává tóny
# Světla (light sensor) - čte světelnou intenzitu okolí
+
# Světla (light sensor) - čte světelnou intenzitu okolí
# Ultrazvuku - slouží k měření vzdálenosti
+
# 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:==
 
==SW:==
  
 
=== NXT-G ===
 
=== NXT-G ===
[[Soubor:Nxt-g.jpg|150px|left|náhled NXT-G]]
+
 
 +
[[Soubor:Nxt-g.jpg|250px|náhled NXT-G]]
 +
 
 
* Základní grafické vývojové prostředí
 
* Základní grafické vývojové prostředí
* Odvozeno od [http://www.ni.com/academic/mindstorms/ National Instruments’ LabView]
+
* Výborné pro rychlé programování i pro úplné začátečníky
* 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]]
* 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
 
  
 +
== Stavební návod ==
  
== Výukové materiály ==
+
<Gallery>
 +
soubor:BumperCar.jpg|[http://www.nxtprograms.com/NXT2/bumper_car/steps.html Bumper Car]
 +
soubor:BI_Driving_Base.jpg|[[Soubor:Icon-pdf.gif]] [[:Soubor:BI_Driving_Base.pdf|BI Driving Base]]
 +
</Gallery>
  
 +
 +
== Výukové materiály ==
  
  
 
== Pracovní listy ==
 
== Pracovní listy ==
  
Zadání: Naprogramujte robota, aby jel neomezeně dlouho vpřed
+
=== Úkol č.1: Práce s SW ===
  
#. úkol: nainstalujte si SW: LEGO® MINDSTORMS® NXT  
+
'''Zadání:''' Seznamte se s programem 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]]
+
  
 +
'''Postup:'''
  
 +
<gallery>
 +
Soubor:NXT_OPVK_001.jpg|1) Spusťte SW LEGO® MINDSTORMS® NXT
 +
Soubor:NXT_OPVK_002.jpg|[http://mindstorms.lego.com/en-us/Software/Default.aspx 2) Shlédněte výukový program]
 +
Soubor:NXT_OPVK_003.jpg|3) Hlavní obrazovka
 +
Soubor:NXT_OPVK_004.jpg|4) Vyzkoušejte jednotlivé funkce programu
 +
Soubor:NXT_OPVK_005.jpg|5) Modifikujte dle vlastní volby blok pohybu
 +
</gallery>
  
Úkol č. 4: Jízda vpřed s omezením jízdy senzorem dotyku
+
Vyzkoušejte jednotlivé funkce programu např.:  
 +
* Start nového programu
 +
* Výběr bloku pohybu
 +
* Přepnutí na jinou paletu
 +
** Common
 +
** Complete
 +
** Custom
 +
* Uložení programu
 +
* Vyvolání nápovědy
 +
* Ukázání My portal
 +
* Vyzkoušení Pointer Tool, Pan Tool
  
Zadání: Vytvořte program pro jízdu robota NXT vpřed časově omezenou pouze dotykem čidla
+
----
  
Postup:
+
=== Úkol č. 2: Jízda ===
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
+
  
 +
[[Soubor:NXT_OPVK_006.jpg|thumb]]
  
 +
'''Zadání:''' Vytvořte program pro časově neomezenou jízdu robota NXT vpřed.
  
+
'''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 vpřed
 +
5. Zapněte robota oranžovým tlačítkem
 +
6. Nahrajte program do robota a vyzkoušejte
 +
 
 +
'''Řešení:'''
  
 
Řešení:
 
 
Nastaveno:  
 
Nastaveno:  
Port: B,C  - zapnuty jsou porty B a C, do kterých jsou připojeny motory  
+
* Port: B,C  - zapnuty jsou porty B a C, do kterých jsou připojeny motory  
Direction: dopředu
+
* Direction: dopředu
Steering: 50:50 – jízda bude pokud možno rovně
+
* Steering: 50:50 – jízda bude pokud možno rovně
Power: 75%, rychlost bude na 75% celkového výkonu
+
* Power: 75%, rychlost bude na 75% celkového výkonu
Duration: Neomezeně -  robot by mohl jet neomezeně ale po určité době zastaví
+
* Duration: Neomezeně -   
  
 +
[[Soubor:NXT_OPVK_007.jpg|Řešení]]
 +
 +
[[Soubor:NXT_OPVK_007a.jpg|NXT_OPVK_007a.jpg]] Vytvořili jste dle nastavených parametrů program pro neomezenou jízdu robota vpřed. Robot by tedy měl jet neomezeně, ale po určité době se zastaví. Nevíte proč? Vyzkoušejte a pokuste se vysvětlit.
 
   
 
   
Lze vyzkoušet i ostatní robotická čidla např. čidlo ultrazvuku, světla apod.
+
----
  
 +
=== Úkol č. 3: Otočka ===
  
 +
[[Soubor:NXT_OPVK_008.jpg|thumb]]
  
 +
'''Zadání:''' Vytvořte program pro jízdu robota NXT vpřed, po určité době se zastavil, otočil o 180° a vrátil zpět
  
Úkol č. 5: Jízda vpřed či vzad v závislosti na čidle dotyku
+
'''Postup:'''
 +
1. Sestavte kolového robota
  
Zadání: Vytvořte program pro jízdu robota NXT tak, aby jízda byla ovlivňována stiskem tlačítka
+
2. Spusťte SW LEGO® MINDSTORMS® NXT  
  
Postup:
+
3. Vyberte blok motoru a nastavte parametry tak, aby se motor pohyboval vpřed po dobu 3 sekund
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
+
  
 +
[[Soubor:NXT_OPVK_009.jpg|Výběr bloku motoru]]
  
 +
4. Přidejte blok, kterým se robot zastaví
  
+
[[Soubor:NXT_OPVK_010.jpg|Zastavení robota]]
 +
 
 +
5. Dalšími motorovými bloky se postarejte o to, aby se motory otáčely v protisměru – tím se robot otočí okolo své osy. Pohyb nastavte neomezený.
  
5. Nastavte parametry tak, aby se motor pohyboval vpřed a po stisknutí tlačítka se začal pohybovat vzad
+
6. Nyní bude muset být přidán čekací blok, kterým se experimentálně nastaví doba, kterou se bude robot otáčet okolo vlastní osy
6. Nahrajte program do robota
+
 +
[[Soubor:NXT_OPVK_011.jpg|Čekání]] [[Soubor:NXT_OPVK_012.jpg]]
  
Řešení:
+
7. Posledním blokem se robot vrátí zpět na místo, odkud vyjel
  
 +
8. Nahrajte program do robota
  
 +
[[Soubor:NXT_OPVK_014.jpg|Nahrání programu do robota]]
  
 +
'''Řešení:'''
  
 +
[[Soubor:NXT_OPVK_013.jpg|Řešení]]
  
 +
----
 +
=== Ú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
  
Úkol č. 6: Jízda vpřed v uzavřeném prostoru
+
4. Nastavte parametry tak, aby se motor pohyboval neomezeně vpřed
  
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ě
+
5. Přidejte blok modulu čekající na stisk senzoru dotyku
  
Postup:  
+
[[Soubor:NXT_OPVK_015.jpg|Výběr bloku]]
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
+
  
+
[[Soubor:NXT_OPVK_016.jpg|Nastavení]]
+
Řešení:
+
  
Celý program je umístěn v časové smyčce.
+
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í
  
 +
[[Soubor:NXT_OPVK_017.jpg|Řešení]]
  
 +
[[Soubor:Nápad.jpg|Nápad]]
  
 +
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 ===
  
 +
[[Soubor:NXT2.jpg|thumb|Robot NXT s čidlem dotyku]]
  
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.   
+
'''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ý)s čidlem dotyku
  
 +
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
  
  
 +
[[Soubor:NXT_Loop.jpg|Blok Loop]]
  
 +
[[Soubor:NXT_Switch_019.jpg|Blok Switch]]
 +
  
 +
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í:'''
  
 +
[[Soubor:NXT_OPVK_018.jpg|Řešení]]
  
Následně se pohyb zastaví
+
----
 +
=== Úkol č. 6: Jízda vpřed v uzavřeném prostoru ===
  
 +
[[Soubor:Pásový robot.jpg|Pásový robot|thumb]]
  
 +
'''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ý) s čidlem ultrazvuku
  
 +
2. Spusťte SW LEGO® MINDSTORMS® NXT
  
+
3. Vložte programovou smyčku tak, aby celý v ní mohl být umístěn celý program
Robot vycouvá
+
  
Otočí se o 160° a celý děj se znovu opakuje
+
[[Soubor:NXT_Loop.jpg|Blok Loop]]
  
Úkol č. 7: Klikatice
+
[[Soubor:NXT_OPVK_020.jpg|Nastavení bloku Loop]]
  
Zadání: Vytvořte program tak, aby se robot NXT pohyboval po klikaté dráze vpřed.
+
4. Vyberte blok motoru a nastavte parametry tak, aby se motor pohyboval neomezeně vpřed
  
 +
[[Soubor:NXT_OPVK_021.jpg|Nastavení bloku motoru]]
  
Postup:
+
Blok motoru je nastaven tak, aby robot jel neustále dopředu omezen jen kontrolou čidla vzdálenosti
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. Přidejte blok modulu čekající na přiblížení k objektu
 +
 +
[[Soubor:NXT_OPVK_022.jpg|Nastavení bloku čidla ultrazvuku]]
  
 +
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
  
 +
6. Dalším blokem se robot zastaví
  
 +
[[Soubor:NXT_OPVK_010.jpg|Zastavení pohybu]]
  
 +
7. Robot vycouvá o dvě otočky kol
  
 +
[[Soubor:NXT_OPVK_023.jpg|Vycouvání]]
  
 +
8. Vytočí cca o 160° a celý děj se znovu opakuje
  
5. Pak přidejte opět blok motoru a to tak, aby se prohodila síla pro oba dva motory.
+
[[Soubor:NXT_OPVK_024.jpg|Otočka]]
6. Přidejte blok se stejným časovým zpožděním jako v první variantě
+
7. Nahrajte program do robota
+
  
Řešení:
+
9. Nahrajte program do robota
  
 +
 +
'''Řešení:'''
  
 +
[[Soubor:NXT_OPVK_025.jpg|Řešení]]
  
  
 +
----
 +
=== Úkol č. 7: Klikatice ===
 +
 +
[[Soubor:NXT_OPVK_026.jpg|Trajektorie robota|right]]
 +
 +
'''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
 +
 +
[[Soubor:NXT_OPVK_027.jpg|1. blok]]
 +
 +
4. Nastavte parametry tak, aby se motor B pohyboval s jinou silou než motor C a oba časově omezeně na 1 sec.
 +
 +
[[Soubor:NXT_OPVK_028.jpg|Nastavení]]
 +
 +
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í:'''
 +
 +
[[Soubor:NXT_OPVK_029.jpg|Řešení]]
 +
 +
== Doporučená literatura: ==
  
Doporučená literatura:
 
 
http://wiki.sps-pi.com/index.php/NXT  
 
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
 
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:  
+
 
 +
'''Odkazy a kontakty:'''
 
http://legoengineering.com/library/cat_view/28-code/33-lego-mindstorms-nxt-software.html?start=10  
 
http://legoengineering.com/library/cat_view/28-code/33-lego-mindstorms-nxt-software.html?start=10  
  
Použité zdroje informací:
+
'''Použité zdroje informací:'''
 
NXT uvnitř: http://noeticbrainwaves.blogspot.cz/2010/07/mindstorms-nxt-screen-fix.html  
 
NXT uvnitř: http://noeticbrainwaves.blogspot.cz/2010/07/mindstorms-nxt-screen-fix.html  
  
Řádka 264: Řádka 360:
 
== Metodické listy ==
 
== Metodické listy ==
  
 +
== Fotogalerie z jednotlivých setkání ==
  
 +
<gallery>
 +
 +
</gallery>
  
 
== Diskusní fórum ==
 
== Diskusní fórum ==
Řádka 274: Řádka 374:
  
 
Maturitní práce Roberta Zelenky: [http://nxt.jecool.net/ Zpracování a praktické ověření instruktážních úkolů pro robota NXT]
 
Maturitní práce Roberta Zelenky: [http://nxt.jecool.net/ Zpracování a praktické ověření instruktážních úkolů pro robota NXT]
 +
 +
 +
Aktivita je podporována projektem:
 +
 +
[[Soubor:OPVKSPS2_HORIZONTALNI_BAREVNY_PLNY.png|600px|link=OP VK - Inovace výuky v Písku a okolí|Inovace výuky v Písku a okolí]]

Aktuální verze z 6. 1. 2013, 11:52

OPVK 4ZS ROB.png

Obsah

Představení modulu

Pic 08.gif

Pomůcky

NXT kostka

Mozek celého NXT

Servopohony

Servopohon

Čidlo dotyku

Čidlo dotyku

Čidlo zvuku

Čidlo zvuku

Čidlo světla

Čidlo světla

Čidlo barvy

Čidlo barvy

Čidlo ultrazvuku

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í.

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
    • 48 MHz, 256 kB FLASH, 64 kB RAM
    • 8-bit mikroprocesor ATmega48
    • 8 MHz,4 kB FLASH, 512 B RAM

Bluetooth možnosti:

nahled ovládání NXT přes PDA

  • Nahrávání programů z PC
  • Umožňuje přehrávání programů mezi NXT
  • Ovládaní pomocí smart telefonu

Čidla:

rozšíření o možná čidla

základní

  1. Dotyku (touch sensor) - slouží k zišťování překážek před NXT
  2. Zvuku (sound sensor) - měří sílu zvuku 0-100%, rozpoznává tóny
  3. Světla (light sensor) - čte světelnou intenzitu okolí
  4. Ultrazvuku - slouží k měření vzdálenosti

SW:

NXT-G

náhled NXT-G

  • Základní grafické vývojové prostředí
  • Výborné pro rychlé programování i pro úplné 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


Stavební návod


Výukové materiály

Pracovní listy

Úkol č.1: Práce s SW

Zadání: Seznamte se s programem LEGO® MINDSTORMS® NXT

Postup:

Vyzkoušejte jednotlivé funkce programu např.:

  • Start nového programu
  • Výběr bloku pohybu
  • Přepnutí na jinou paletu
    • Common
    • Complete
    • Custom
  • Uložení programu
  • Vyvolání nápovědy
  • Ukázání My portal
  • Vyzkoušení Pointer Tool, Pan Tool

Úkol č. 2: Jízda

NXT OPVK 006.jpg

Zadání: Vytvořte program pro časově neomezenou jízdu robota NXT vpřed.

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 vpřed 5. Zapněte robota oranžovým tlačítkem 6. Nahrajte program do robota a vyzkoušejte

Ř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ě -

Řešení

NXT_OPVK_007a.jpg Vytvořili jste dle nastavených parametrů program pro neomezenou jízdu robota vpřed. Robot by tedy měl jet neomezeně, ale po určité době se zastaví. Nevíte proč? Vyzkoušejte a pokuste se vysvětlit.


Úkol č. 3: Otočka

NXT OPVK 008.jpg

Zadání: Vytvořte program pro jízdu robota NXT vpřed, po určité době se zastavil, otočil o 180° a vrátil zpět

Postup: 1. Sestavte kolového robota

2. Spusťte SW LEGO® MINDSTORMS® NXT

3. Vyberte blok motoru a nastavte parametry tak, aby se motor pohyboval vpřed po dobu 3 sekund

Výběr bloku motoru

4. Přidejte blok, kterým se robot zastaví

Zastavení robota

5. Dalšími motorovými bloky se postarejte o to, aby se motory otáčely v protisměru – tím se robot otočí okolo své osy. Pohyb nastavte neomezený.

6. Nyní bude muset být přidán čekací blok, kterým se experimentálně nastaví doba, kterou se bude robot otáčet okolo vlastní osy

Čekání NXT OPVK 012.jpg

7. Posledním blokem se robot vrátí zpět na místo, odkud vyjel

8. Nahrajte program do robota

Nahrání programu do robota

Řešení:

Řešení


Ú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

Výběr bloku

Nastavení

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í

Řešení

Nápad

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

Robot NXT s čidlem 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ý)s čidlem dotyku

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


Blok Loop

Blok Switch

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í:

Řešení


Úkol č. 6: Jízda vpřed v uzavřeném prostoru

Chyba při vytváření náhledu: Soubor patrně chybí: /var/www/wiki.sps-pi.cz/www/images/e/e4/Pásový_robot.jpg
Pásový robot

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ý) s čidlem ultrazvuku

2. Spusťte SW LEGO® MINDSTORMS® NXT

3. Vložte programovou smyčku tak, aby celý v ní mohl být umístěn celý program

Blok Loop

Nastavení bloku Loop

4. Vyberte blok motoru a nastavte parametry tak, aby se motor pohyboval neomezeně vpřed

Nastavení bloku motoru

Blok motoru je nastaven tak, aby robot jel neustále dopředu omezen jen kontrolou čidla vzdálenosti

5. Přidejte blok modulu čekající na přiblížení k objektu

Nastavení bloku čidla ultrazvuku

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

6. Dalším blokem se robot zastaví

Zastavení pohybu

7. Robot vycouvá o dvě otočky kol

Vycouvání

8. Vytočí cca o 160° a celý děj se znovu opakuje

Otočka

9. Nahrajte program do robota

Řešení:

Řešení



Úkol č. 7: Klikatice

Trajektorie robota

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

1. blok

4. Nastavte parametry tak, aby se motor B pohyboval s jinou silou než motor C a oba časově omezeně na 1 sec.

Nastavení

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í:

Ř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

Fotogalerie z jednotlivých setkání

Diskusní fórum

Odkazy a kontakty:

MP-NXT-RobertZ.jpg

Maturitní práce Roberta Zelenky: Zpracování a praktické ověření instruktážních úkolů pro robota NXT


Aktivita je podporována projektem:

Inovace výuky v Písku a okolí

Osobní nástroje
Jmenné prostory
Varianty
Akce
Rychlá navigace
NEJ aktivity
Nejlepší předměty
Nejlepší MCU
SW-HW
Ostatní
Utility
Nástroje
Tisk/export