STŘEDNÍ PRŮMYSLOVÁ ŠKOLA ELEKTROTECHNICKÁ A INFORMAČNÍCH TECHNOLOGIÍ BRNO LEGO POHYB ROBOTA LUDMILA KIKTOVÁ V4B

Podobné dokumenty
Doporučení k uspoř{d{ní a form{tov{ní. z{věrečné maturitní pr{ce

DUM č. 13 v sadě. 29. Inf-5 RoboLab a Lego Mindstorms

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

METODICKÝ LIST 1. Název výukové aktivity (tématu): 2. Jméno autora: Ing. Petr Hořejší, Ph.D., Ing. Jana Hořejší 3. Anotace:

ÚKOLOVÝ LIST. Aktivita projektu Obloha na dlani - Laboratoř vědomostí ROBOT NA PÁSOVÉM PODVOZKU

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

STŘEDNÍ ŠKOLA INFORMAČNÍCH TECHNOLOGIÍ A SOCIÁLNÍ PÉČE

Lekce 11 Měření vzdálenosti a rychlosti

Pavel Koupý. Anti-crash robot

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

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

Metodické pokyny k materiálu č. 35 Mobilní robot III - Závodní auto (STAVBA)

METODICKÝ LIST. Výklad: Seznámení se se stavebnicí, ukázky jiných projektů a možností stavebnice

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

DUM č. 20 v sadě. 29. Inf-5 RoboLab a Lego Mindstorms

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

METODICKÝ LIST K TECHNICKÉMU KROUŽKU:

Projekt podpořený Operačním programem Přeshraniční spolupráce Slovenská republika Česká republika

METODICKÝ LIST K TECHNICKÉMU KROUŽKU:

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

Micro:bit lekce 4. Cyklus s určeným počtem opakování cyklus Repeat. Cyklus s počtem opakování daným řídicí proměnnou cyklus For from to

Zápočtový projekt předmětu Robotizace a řízení procesů

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

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

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

ROBOTICKÝ POPELÁŘ. Jan Dimitrov, Tomáš Kestřánek. VOŠ a SPŠE Františka Křižíka Na Příkopě 16, Praha 1

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

ve spolupráci KTIV PdF UP porádá

Jak pracovat s LEGO energometrem

Školní kolo soutěže Baltík 2011, kategorie C

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

Výukový materiál zpracován v rámci projektu EU peníze školám

PROGRAMOVÁNÍ ROBOTŮ LEGO MINDSTORM S VYUŽITÍM MATLABU

METODICKÝ LIST K TECHNICKÉMU KROUŽKU:

IMPLEMENTACE ECDL DO VÝUKY

METODICKÝ LIST K TECHNICKÉMU KROUŽKU:

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

STŘEDNÍ ŠKOLA INFORMAČNÍCH TECHNOLOGIÍ A SOCI[LNÍ PÉČE

Řízení robota senzorem teploty II. Tematický celek: Termodynamika. Komplexní úloha - 2. část:

Manuál k obsluze simulátoru KKK ELO 2011 pro studenty, popis laboratorní úlohy

Celostátní kolo soutěže Baltík 2007, kategorie C

Tvorba kurzu v LMS Moodle

Studentská tvůrčí a odborná činnost STOČ 2015

Lekce 04 Řídící struktury

METODICKÝ LIST K TECHNICKÉMU KROUŽKU:

Lekce 01 Úvod do algoritmizace

Dokumentace k mobilní aplikaci GoodCall

Psaní programu pro PLC SIMATIC S7-300 pomocí STEP 7

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

Software pro vzdálenou laboratoř

Algoritmizace. 1. Úvod. Algoritmus

Micro:bit lekce 3. - Konstrukci If Then a If Then Else najdete v kategorii Logic - Podmínky od If (např. porovnání < >= atd.) najdete taktéž v Logic

Dotykova obrazovka v programu TRIFID

PROJEKTOVÁNÍ INFORMAČNÍCH SYSTÉMŮ SEMINÁRNÍ PRÁCE

CBR Test dimenzač ní čh parametrů vozovek

Schémata doporučených zapojení 1.0 Vydání 2/2010

Výzva k pod{ní nabídky na veřejnou zak{zku malého rozsahu. Rozvoj n{strojového vybavení katedry bicích n{strojů" ZAD[VACÍ DOKUMENTACE

Dotyková obrázovká v prográmu TRIFID

Obslužný software. PAP ISO 9001

SKLADOVÉ SKUPINY, PODSKUPINY A JEDNODUCHÉ KARTY Z[SOB

Regionální kolo soutěže Mladý programátor 2012, kategorie A, B

Přihlašování na kurzy CTVS

Stručný postup k použití programu PL7 Junior (programování TSX Micro)

SLOŽENÉ SKLADOVÉ KARTY

Černá skříňka DVR23. Kamera s automatickým záznamem videa s možností připojení na externí monitor

Celostátní kolo soutěže Mladý programátor 2013, kategorie A, B

LabView jako programovací jazyk II

Sprinter Wireless TX-01 V3

ZAŘÍZENÍ PRO MĚŘENÍ DÉLKY

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

SPÍNACÍ HODINY. Nastavení hodin a předvolby. Obr. 1

Program pro tvorbu technických výpočtů. VIKLAN - Výpočty. Uživatelská příručka. pro seznámení se základními možnostmi programu. Ing.

Měření výkonových parametrů spalovacího motoru na hydrodynamické motorové brzdě SF 902. Radim Čech, Petr Tomčík

01. HODINA. 1.1 Spuštění programu VB Prvky integrovaného vývojového prostředí. - pomocí ikony, z menu Start.

Cvičné příklady Tematický celek 01

SKLADOVÉ SKUPINY A JEDNODUCHÉ KARTY Z[SOB

TPMS kontrola tlaku v pneumatice s výstupem na monitor. tpms-k6

METODICKÝ LIST K TECHNICKÉMU KROUŽKU:

AEP20PIL. Součásti kompletní instalace

NÁVOD K POUŽITÍ PŘÍSTROJE KING-METER J-LCD

HRACÍ ROBOT VE VÝUCE HUDEBNÍ VÝCHOVY

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

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

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

ZAŘÍZENÍ PRO MĚŘENÍ DÉLKY

POVLTAVSKÉ SETKÁNÍ BALTÍKŮ - 9.ročník a

Použití UART a radia na platformě micro:bit

Elektromagnetická kompatibilita (EMC)

Programování NXT - ovládání (pracovní list)

DUM č. 9 v sadě. 30. Inf-6 Imagine Logo a animace pro nižší gymnázium

Profilová část maturitní zkoušky 2015/2016

Úvod...1 Instalace...1 Popis funkcí...2 Hlavní obrazovka...2 Menu...3 Práce s aplikací - příklad...5

Software pro formování dielektrika kondenzátorů

KING-METER NÁVOD K POUŽITÍ PŘÍSTROJE J-LCD

ZÁPADOČESKÁ UNIVERZITA V PLZNI

Algoritmy a algoritmizace

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT EU-OVK-VZ-III/2-ZÁ-210

SPÍNACÍ HODINY. - Topení na výkon - Topení na teplotu - Větrání

Operační systémy. Operační systém - programové vybavení počítače, jehož úlohou je z{kladní řízení

Střední průmyslová škola a Vyšší odborná škola, Hrabákova 271, Příbram. III / 2 = Inovace a zkvalitnění výuky prostřednictvím ICT

Transkript:

STŘEDNÍ PRŮMYSLOVÁ ŠKOLA ELEKTROTECHNICKÁ A INFORMAČNÍCH TECHNOLOGIÍ BRNO LEGO POHYB ROBOTA LUDMILA KIKTOVÁ V4B Profilová část maturitní zkoušky MATURITNÍ PRÁCE BRNO 2014

Prohlášení Prohlašuji, že jsem maturitní pr{ci LEGO Pohyb robota vypracovala samostatně a použila jen zdroje uvedené v seznamu literatury. Prohlašuji, že: Beru na vědomí, že zpr{va o řešení maturitní pr{ce a z{kladní dokumentace k aplikaci bude uložena v elektronické podobě na intranetu Střední průmyslové školy elektrotechnické a informačních technologií Brno. Beru na vědomí, že bude m{ maturitní pr{ce včetně zdrojových kódů uložena v knihovně SPŠEIT Brno dostupn{ k prezenčnímu nahlédnutí. Škola zajistí, že nebude pro nikoho možné pořizovat kopie jakékoliv č{sti pr{ce. Beru na vědomí, že SPŠEIT Brno m{ pr{vo celou moji pr{ci použít k výukovým účelům a po mém souhlasu nevýdělečně moji pr{ci užít ke své vnitřní potřebě. Beru na vědomí, že pokud je souč{stí mojí pr{ce jakýkoliv softwarový produkt, považují se za souč{st pr{ce i zdrojové kódy, které jsou předmětem maturitní pr{ce, případně soubory, ze kterých se pr{ce skl{d{. Souč{stí pr{ce není cizí ani vlastní software, který je pouze využív{n za přesně definovaných podmínek, a není podstatou maturitní pr{ce. Ludmila Kiktov{ Preslova 52 Brno, 602 00 V Brně dne 10. 4. 2014... 1

Vedoucí pr{ce: Petr Pernes 2

Poděkování Děkuji Střední průmyslové škole elektrotechnické a informačních technologií Brno za poskytnutí vybavení k realizaci zadané pr{ve a vecoucímu pr{ce Ing. Petru Pernesovi za poskytnutou metodickou pomoc a odborné rady. 3

Shrnutí Tento dokument pojedn{v{ o zpracov{ní pr{ce robota udržujícího konstantní vzd{lenost od stěny. V první č{sti je popisov{n samotný prostředek k realizaci, a to jak po fyzické str{nce, tak po str{nce softwarové. Druh{ č{st je věnov{na samotné konstrukci robota. Je zde pops{n vývoj vhodné konstrukce s uvedeným odůvodněním změn. D{le jsou zde vyps{ny výhody některých prvků konstrukce. Tím je vysvětleno, proč byly jednotlivé prvky použity Poslední č{st je zaměřena na program pro ovl{d{ní robota. Tato č{st je rozdělena do sekvencí č{stí programu podle jejich funkce. U každé sekvence je uveden její n{zev, stručný popis její funkce a realizace, vývojový diagram a uk{zky zdrojového kódu. 4

Obsah Prohl{šení... 1 Poděkov{ní....3 Shrnutí... 4 Obsah... 5 Úvod... 6 1 Sezn{mení se stavebnicí a programovým prostředím... 7 1.1 Stavebnice... 7 1.2 vývojové prostředí... 8 2 Konstrukce... 9 2.1 Návrhy a úpravy konstrukce 3.1 start... 9 2.2 Současná konstrukce... 9 3 program... 10 3.1 start 3.2 Set distance... 10 3.2 Set distance 3.3 Calibration... 11 3.3 Calibration 3.4 Movement... 13 3.4 Movement... 14 z{věr...15 Seznam ilustrací... 16 Seznam tabulek... 17 Zdroje... 18 Přílohy... 19 5

Úvod Zad{ním této pr{ce je vytvořit s použitím stavebnice Lego Mindstorms 9797 robota, který bude udržovat konstantní vzd{lenost od stěny, kolem které jede. Plné znění zad{ní je zde: Naprogramujte robota, tak aby dodržoval nastavenou vzd{lenost od předmětu (ekvidistantu). Detail: - popište volbu konstrukce robota é programové prostředí a způsob řešení vybraných problémů problémy - popište řešené vzd{lenost, automatick{ inkrementace vzd{lenosti, projití vyhrazeného prostoru tak, aby se pokryla cel{ plocha. V n{sledujících kapitol{ch se blíže sezn{míme s postupem řešení této úlohy. 6

1 Seznámení se stavebnicí a programovým prostředím Lego Mindstorms lze rozdelit do dvou č{stí, do hardwarové (stavebnice) a softwarové (vývojový software) 1.1 Stavebnice Ke zpracov{ní úlohy byla použita stavebnice Lego Mindstorms 9797 (viz. Obr{zek 01). Níže je uveden kompletní seznam komponent obsažených ve stavebnici. 7

Stavebnice funguje na standartním principu Lego Technic s obohacením o motory, senzory a řídící jednotku. 1.2 vývojové prostředí Pro prograov{ní řídící jednotky byl použit software Lego NXT 2.0. Prostředí umožňuje programov{ní pomocí grafických bloků vyjadřujících jednotlivé akce, uspoř{daných za sebe podle pořadí jejich provedení. Uk{zka prostředí s popisky 8

2 Konstrukce 2.1 Návrhy a úpravy konstrukce Ze zad{ní vyplývalo, že robot bude muset být opatřen koly a ultrasonickým senzorem. První vererze konstrukce se pohybovala po čtyřech kolech a prov{děla sním{ní vzd{lenosti prov{děla kolmo na stěnu na levé straně. Tento způsob měření se při testech neosvědčil a byl nahrazen. Při dojezdu do rohu testovacího prostoru totiž nebyl robot schopen zaznamenat stěnu před ním snažil se pokračovat v jízdě. Další verze měla snímač umýstěný ke stěně v úhlu 45. Ani tato konstrukce se neosvědčila ze dvou důvodů: a) Vzd{lenost od stěny neodpovídala naměřené vzd{lenosti b)zaznamen{ní stěny před robotem probíhalo příliš blízko a robot neměl dost prostoru k otočení. V další verzi bylsenzor umístěn na zvl{štní motorek, který umožňuje jak kolmé měření stěny vedle robota, tak sledov{ní volného prostoru před robotem. S umístěním motorku byl problém, protože zavazel ovl{dacím tlačítkům a cel{ konstrukce byla přestavěna. Při této přestavbě došlo k větším změn{m. Asi největší z nich jbyla změna počtu kol, což výrazně ovlivnilo manévrovatelnost. Další změnou bylo umístění řídící jednotky šikmo k podkladu, což umožnilo snažší ovl{d{ní. 2.2 Současná konstrukce Fin{lní verze se pohybuje na třech kolech. Dvě hlavní jsou obsluhov{na každé jedním motorem. Díky tomu lze snadno zat{čet pomocí regulace jejich rychlostí. Třetí kolo na ot{čivé konstrukci je pouze podpůrné a zajišťuje stabilitu robota. D{le je nad koly umístěna řídící jednotka s ovl{dacími tlačítky a výstupním displejem. Na přední č{sti robota je umístěn třetí motor s ultrazvukovým snímačem vzd{lenosti od objektů. Z technických důvodů zde bohužel není uveden postup sestavení konstrukce 9

3 program 3.1 start Při spuštění nejprve proběhne startovací sekvence, při které se uživateli zobrazí na displeji vzkaz SET DISTANCE N{sledně se proměnn{ DIST nastaví na 30 střední hodnota vzd{lenosti. Poslední f{zí je ček{ní 2 sekundy aby si uživatel mohl zpr{vu pohodlně přečíst Programové řešení: Vývojový diagram 10

3.2 Set distance V této sekvenci program nejprve zjistí hodnotu proměnné DIST a vypíše ji na displej. Pokud pr{vě proběhla sekvence start, tak je proměnn{ DIST rovna třiceti. Problémem při řešení ůlohy byla absence příkazu pro vyps{ní proměnné na výstup. Proto je počet nastavitelných vzd{leností omezen na pět a hodnota pro vyps{ní je řešena sadou pěti ot{zek. D{le sekvence pokračuje ot{zkou, zda uživatel nestiskl některé z e dvou směrových tlačítek. Pokud ano, přehraje se zvuk tlačítka. D{le program vyčk{ půl sekundy aby nedošlo k vícen{sobnému sejmutí tlačítka jedním stiskem. Nakonec se přičte nebo odečte od proměnné DIST 10. V každé podmínce je vložena další podmínka zajišťující možnost nastavení vzd{lenosti pouze v omezeném rozsahu. Pokud hodnota DIST přičtením/odečtením překročila hraniční hodnotu (10, 50), pak se k proměnné DIST opět přičte/odečte 10 v opačném směru, než byla předchozí operace. Cel{ sekvence je uzavřen{ ve smyčce čekající na stisk tlačítka ENTER Programové řešení: Podmínka použit{ pro výpis proměnné Proces při stisku tlačítka a ukončení smyčky 11

vývojový diagram: 12

3.3 Calibration V této sekvenci se nastavuje motor ot{čející ultrasonickým senzorem do výchozí polohy. Při startu není nijak zajištěno, že je senzor spr{vně natočen. Při této sekvenci se snímač ot{čí 'dozadu' až narazí na tělo samotného robota. N{sledně se otočí o devades{t stupňů aby byl namířen do prostoru vlevo od robota a mohl zah{jit další sekvenci. Na zač{tku této sekvence je také umístěna kr{tk{ čekací doba aby mohl uživatel pohodlně položit robota na zem, než se spustí. Programové řešení Vývojový diagram: 13

3.4 Movement Hlavní č{st programu obsahující algorytmus pro pohyb robota. Nejprve se senzor pootočí a zjistí se, zda před robotem není stěna. Pokud je, robot uděl{ ostrou zat{čku vpravo. Pokud není, robot pokračuje d{l rovně. N{sleduje pětisekundov{ smyčka, během které je neust{le porovn{v{na naměřen{ hodnota s proměnnou nastavenou uživatelem. Pokud je proměnn{ větší jak naměřen{ hodnota, robot se při jízdě pootočí na pravou stranu (od stěny). Při opačném výsledku se pootočí naopak ke stěně. Po pěti sekund{ch se opakuje proces zjišťov{ní stěny před robotem a takto se oba postupy opakují dokud uživatel nestiskne tlačítko ENTER, kterým ukončí program. Programové řešení Zkoum{ní prostoru před robotem Smyčka s pohybem a ukončení programu 14

Vývojový diagram. 15

Závěr Robot je schopen samostatného pohybu, ale vzhledem k nepřesnosti měřícího snímače doch{zí k častým chyb{m. Z hlediska n{ročnosti byla pr{ce výzvou. Asi nejn{ročnější bylo sestrojit konstrukci, pro kterou by bylo možné použít prvotní n{pad na řešení. Hodnotím tedy jako novou zkušenost, že jsem měla možnost nejen programovat nějaké zařízení, ale také ho přímo navrhnout. 16

Seznam ilustrací Str. 7 obr{zek 1 vzhled stavebnice LEGO Mindstorms 9797 Str. 7 obr{zek 2 kompletní seznam komponent stavebnice LEGO Mindstorms 9797 Str. 8 obr{zek 1 uk{zka pracovního prostředí Mindstorms NX s popisky Str. 10 obr{zek 1 programové řešení sekvence start Str 10. obr{zek 2 vývojový diagram sekvence start Str. 11 obr{zek 1 programové zaps{ní podmínky pro výpis hodnoty Str. 11 obr{zek 2 Přepisov{ní hodnot po stisku směrového tlačítka Str. 12 obr{zek 1 vývojový diagram sekvence Set distance Str. 13 obr{zek 1 nastavov{ní motoru do výchozí polohy Str. 13 obr{zek 2 vývojový diagram sekvence Calibration Str. 14 obr{zek 1 -Poč{tek sekvence Movement monitorov{ní prostoru před robotem Str. 14 obr{zek 2 smyčka pro pohyb vedle stěny Str. 15 obr{yek 1 vývojový diagram sekvence Movement Seznam tabulek 17

Zdroje [1] Tvorba vývojových diagramů byla zajištěna pomocí https://www.lucidchart.com [2] Programovací prostředí bylo získ{no z mindstorms.lego.com/ Stažení LEGO digital designer http://ldd.lego.com/cs-cz/ [3] Získané informace o LEGO Mindstorms www.moodle.cz 18

Přílohy Příloha 01 kompletní program pro ovl{d{ní robota 19