Kurz programování robotů ev3 pdf. Knihovna robotiky

Ahoj. Ve svých článcích vás chci seznámit se základy programování mikropočítače LEGO NXT Mindstorms 2.0. Pro vývoj aplikací budu používat platformy Microsoft Robotics Developer Studio 4 (MRDS 4) a National Instruments LabVIEW (NI LabVIEW). Budou zváženy a implementovány úlohy automatického a automatizovaného řízení mobilních robotů. Přejdeme od jednoduchého ke složitému.

Předvídání některých otázek a připomínek čtenářů.

Proč NXT Mindstorms 2.0? Protože se mi tato sada zdála pro mé projekty nejvhodnější, protože... Mikropočítač NXT je plně kompatibilní s platformami MRDS 4 a NI LabVIEW a tato stavebnice je navíc velmi flexibilní z hlediska sestavování různých konfigurací robota – na sestavování robota je vynaloženo minimum času.

Proč platformy MRDS 4 a NI LabVIEW? Tak se to historicky stalo. Při studiu vyšších ročníků na univerzitě bylo úkolem vyvinout vzdělávací kurzy s využitím těchto platforem. Platformy se navíc celkem snadno učí a fungují, můžete s jejich pomocí napsat přímo program pro ovládání robota, vyvinout uživatelské rozhraní a provádět testování ve virtuálním prostředí (v případě MRDS 4).

Kdo vůbec potřebuje tyto vaše lekce, na internetu je již spousta robotických projektů! Výukové články využívající tuto kombinaci (NXT+MRDS 4/NI LabVIEW) prakticky neexistují, většinou se používá nativní programovací prostředí a vše v něm je zcela triviální. Každý, kdo se zajímá o robotiku, programování a kdo má sadu NXT (a není jich málo), publikum jakéhokoli věku.

Grafické programovací jazyky jsou zlo a ti, kdo v nich programují, jsou kacíři! Grafické programovací jazyky, kterými jsou MRDS 4 a NI LabVIEW, mají nepochybně své nevýhody, například jsou zaměřeny na úzké úlohy, ale přesto ve funkčnosti nejsou o moc horší než textové jazyky, zejména proto, že NI LabVIEW byl původně vyvinut jako snadný -to-learning language pro řešení vědeckých a technických problémů, k tomu obsahuje mnoho potřebných knihoven a nástrojů. Proto jsou tyto grafické jazyky nejvhodnější pro řešení našich problémů. A nemusíte nás kvůli tomu upálit na hranici.

To vše vypadá dětinsky a vůbec ne vážně! Pokud je úkolem implementovat algoritmy, naučit základy a principy programování, robotiky, systémů reálného času bez ponoření se do obvodů a protokolů, pak je to velmi vhodný nástroj, i když ne levný (s ohledem na sadu NXT). Přestože jsou sestavy založené na Arduinu docela vhodné pro stejné účely, tento řadič nemá téměř žádnou kompatibilitu s MRDS 4 a NI LabVIEW a tyto platformy mají své kouzlo.

Technologie, které se používají, jsou produktem rozpadajících se kapitalistických zemí a autor je nepřítelem lidu a komplicem západních spiklenců! Bohužel většina technologií v oblasti elektroniky a výpočetní techniky pochází ze Západu, budu velmi rád, když mě upozorní na podobné technologie domácí domácí produkce. Mezitím využijeme to, co máme. A není třeba to hlásit zvláštním službám a chovat ke mně zášť.

Stručný přehled platforem MRDS 4 a NI LabVIEW.

Dovolte mi upřesnit některé pojmy. Platformou v tomto případě rozumíme sadu různých nástrojů, například jazyk VPL v MRDS a také prostředí pro spouštění aplikací, tzn. Neexistuje žádná přímá kompilace aplikací do spustitelných (*.exe) souborů.

V roce 2006 Microsoft oznámil vytvoření platformy Microsoft Robotics Developer Studio(více podrobností v článku na Wikipedii). MRDS je prostředí pro vývoj aplikací na bázi Windows pro robotiku a simulaci. V současné době je aktuální verze Microsoft Robotics Developer Studio 4. Mezi vlastnosti: grafický programovací jazyk VPL, rozhraní orientovaná na web a Windows, simulační prostředí VSE, zjednodušený přístup k senzorům, mikrokontroléru a aktuátorům robota, podpora programování v C# jazyk, knihovny pro vícevláknové programování a distribuované spouštění aplikací CCR a DSS, podpora mnoha robotických platforem (Eddie, Boe - Bot, CoroBot, iRobot, LEGO NXT atd.).

LabVIEW (Laboratory Virtual Instrumentation Engineering Workbench) je vývojové prostředí a platforma pro spouštění programů vytvořených v grafickém programovacím jazyce „G“ od National Instruments (podrobnosti viz článek Wikipedie). LabVIEW se používá v systémech pro sběr a zpracování dat a také pro řízení technických objektů a technologických procesů. Ideově se LabVIEW velmi blíží SCADA systémům, ale na rozdíl od nich se více zaměřuje na řešení problémů ani ne tak v oblasti automatizovaných systémů řízení procesů (automatizované systémy řízení procesů), ale v oblasti ASNI (automatizované systémy vědeckého výzkumu ). Grafický programovací jazyk "G" používaný v LabVIEW je založen na architektuře toku dat. Sekvence provádění operátorů v takových jazycích není určena pořadím, ve kterém se objevují (jako v imperativních programovacích jazycích), ale přítomností dat na vstupech těchto operátorů. Operátory, které nesouvisejí s daty, jsou prováděny paralelně v náhodném pořadí. Program LabVIEW se nazývá a je virtuálním nástrojem (anglicky: Virtual Instrument) a skládá se ze dvou částí:

  • blokové schéma popisující logiku virtuálního nástroje;
  • přední panel popisující uživatelské rozhraní virtuálního nástroje.

Krátký pohled na sadu LEGO NXT Mindstorms 2.0.

Sada NXT se skládá z řídící jednotky, čtyř senzorů a tří serv. Ovládací blok obsahuje:
  • 32bitový mikrokontrolér AVR7 s pamětí 256 KB FLASH a pamětí 64 KB RAM;
  • 8bitový mikrokontrolér AVR s pamětí 4 KB FLASH a pamětí 512 bajtů RAM;
  • Rádiový modul Bluetooth V 2.0;
  • USB port;
  • 3 konektory pro připojení serv;
  • 4 konektory pro připojení senzorů;
  • LCD displej s rozlišením 99x63 pixelů;
  • mluvčí;
  • konektor pro 6 AA baterií.
Senzory (různé sady senzorů dostupné v různých konfiguracích):
  • ultrazvukový senzor;
  • dva dotykové senzory (dotykové senzory);
  • senzor detekce barev.


Obrázek 1 - Mikropočítač NXT s připojenými senzory a akčními členy

A samozřejmě sada obsahuje různé LEGO díly ve tvaru LEGO Technic, ze kterých budou sestaveny aktuátory a nosná konstrukce.


Obrázek 2 - Díly ve tvaru LEGO Technic

Píšeme první přihlášku.

Pojďme napsat první aplikaci. Nechte, klasicky, tato aplikace zobrazuje text „Hello, World!“. Implementace bude probíhat střídavě v MRDS 4 a NI LabVIEW, přičemž budeme zvažovat specifika každé platformy.

Nejprve nainstalujeme platformy MRDS 4 a NI LabVIEW, v případě MRDS 4 by instalace měla být provedena do složky, jejíž cesta se neskládá z písmen azbuky (ruských písmen), uživatelský účet by měl rovněž obsahovat pouze latinská písmena.

1. Platforma MRDS 4.
Spusťte prostředí VPL (nabídka Start - Všechny programy - Microsoft Robotics Developer Studio 4 - Visual Programming Language). Toto prostředí umožňuje vyvíjet aplikace v jazyce VPL a provádět testování ve virtuálním prostředí VSE. Program VPL je schéma skládající se z propojených bloků. V okně, které se otevře, je kromě standardního příkazového řádku a nabídky 5 hlavních oken:
  1. Základní aktivity – obsahuje základní bloky, které implementují operátory jako konstanta, proměnná, podmínka atd.;
  2. Služby – obsahuje bloky, které poskytují přístup k funkčnosti platformy MRDS, například bloky pro interakci s jakoukoli hardwarovou součástí robota nebo bloky pro volání dialogového okna;
  3. Projekt – kombinuje diagramy zahrnuté v projektu a také různé konfigurační soubory;
  4. Vlastnosti – obsahuje vlastnosti vybraného bloku;
  5. Okno Diagramy – obsahuje přímo diagram (zdrojový kód) aplikace.

Obrázek 3 - Programovací prostředí VPL

Proveďme následující posloupnost akcí:

2. Platforma NI LabVIEW.
Na této platformě je vše implementováno téměř identicky. Spustíme prostředí LabVIEW. Před námi se objeví dvě okna, první je Front Panel, určený k implementaci uživatelského rozhraní (vzhled virtuálního nástroje), druhé je Block Diagram, pro implementaci logiky programu.


Obrázek 8 - Okna prostředí LabVIEW

Použijeme okno Blokový diagram. Proveďme následující kroky:

souhrn

  • Zkontrolovali jsme softwarové platformy pro vývoj aplikací pro mikropočítač NXT.
  • Podívali jsme se na základní principy vývoje aplikací v platformách MRDS 4 a NI LabVIEW.
  • Seznámili jsme se s rozhraním prostředí.
V následujících článcích se budeme zabývat přímo programováním NXT. Online existuje mnoho školicích materiálů pro prostředí LabVIEW, ale mnohem méně pro VPL. Vřele doporučuji prostudovat referenční manuál obou platforem (nutná znalost angličtiny), v těchto návodech je spousta příkladů, které lze implementovat i bez NXT, a také následující knihy:
  • Programování mikropočítače NXT v LabVIEW - Lidiya Beliovskaya, Alexander Beliovsky,
  • Microsoft Robotics Developer Studio. Programování algoritmů řízení robotů - Vasily Gai.
Ve svých článcích budu popisovat pouze své projekty, protože... Nevidím smysl v přepisování informací z jednoho zdroje do druhého. Přijmu jakoukoli konstruktivní kritiku a zodpovím jakékoli dotazy týkající se kontrolovaných platforem. Děkuji předem!

L.Yu Ovsyanitskaya, D.N. Ovsyanitsky, A.D. Ovsyanitsky

Kurz programování robotů EV3

v prostředí Lego Mindstorms EV3

Druhé vydání, přepracované a rozšířené

MDT 004.42 + 004.896

Ovsyanitskaya, L.Yu. Kurz programování robotů Lego

Mindstorms EV3 v prostředí EV3: ed. druhý, revidovaný a doplňkové /

L.Yu Ovsyanitskaya, D.N. Ovsyanitsky, A.D. Ovsyanitsky. – M.:

„Pero“, 2016. – 296 s.

ISBN 978-5-906862-76-1

Kniha je věnována programování robota EV3 v prostředí Lego Mindstorms EV3. Práce je výsledkem dlouholeté zkušenosti autorů z přímé účasti na regionálních, celoruských a mezinárodních soutěžích v robotice a pedagogické činnosti zaměřené na školení učitelů, lektorů a školitelů na toto téma.

Kniha bude užitečná učitelům základního, středního, vysokého i dalšího vzdělávání, studentům, studentům a všem zájemcům o problematiku robotiky.

Recenzent:

Doktor fyzikálních a matematických věd, profesor A.F. Šorikov.

ISBN 978-5-906862-76-1 © L.Yu. Ovsyanitskaya, D.N. Ovsyanitsky, A.D. Ovsyanitsky, 2016 Obsah Úvod

Kapitola 1. Charakteristika robota.

Vytvoření a spuštění prvního projektu 7

1.1. Stručná charakteristika robotických platforem. Přehled programovacího prostředí Lego Mindstorms EV3

1.2. Způsoby připojení robota k počítači. Aktualizace firmwaru EV3 Brick. Nahrávání programů do EV3 Brick



Kapitola 2. Programování robota

2.1. Motory. Programování pohybů po různých trajektoriích

2.2. Práce s podsvícením, obrazovkou a zvukem

2.2.1. Práce s obrazovkou

2.2.2. Práce s podsvícenými tlačítky na EV3 Brick

2.2.3. Práce se zvukem

2.3. Programové struktury

2.3.1. Očekávání struktury

2.3.2. Cyklus struktury

2.3.3. Struktura přepínače

2.4. Práce s daty

2.4.1. Typy dat. Dirigenti

2.4.2. Proměnné a konstanty

2.4.3. Matematické operace s daty

2.4.5. Práce s poli

2.4.6. Logické operace s daty

2.5. Práce se senzory

2.5.1. Dotykový senzor

2.5.2. Barevný senzor

2.5.3 Gyroskopický snímač

2.5.4. Ultrazvukový senzor

2.5.5. Infračervený senzor a maják

2.5.6. Senzor otáčení motoru (určující úhel/počet otáček a výkon motoru)

2.5.7. Ovládací tlačítka modulu

2.6. Práce se soubory

Kurz programování robotů Lego Mindstorms EV3 v prostředí EV3

2.7. Spolupráce několika robotů

2.7.1. Propojení robotů pomocí USB kabelu

2.7.2. Komunikace s robotem pomocí připojení Bluetooth................................ 207

2.8. Užitečné bloky a nástroje

2.8.1. Blokovat „Zůstat aktivní“

2.8.2. Blokovat „Zastavit program“

2.8.3. Vytváření rutin

2.8.4. Nahrávání komentářů

2.8.5. Použití kabelového vstupního portu

Kapitola 3. Hlavní typy soutěží a prvky úkolů.

3.1. Sumo soutěž

3.2. Kegelring

3.3. Slalom (vyhýbání se překážkám)

3.4. Programování pohybu čar

3.4.1. Algoritmus pro pohyb po klikaté čáře s jedním a dvěma barevnými senzory

3.4.2. Algoritmus "Wave"

3.4.3. Algoritmus pro automatickou kalibraci barevného senzoru..... 258

3.5. Proporcionální lineární řízení

3.5.1. Pohyb čáry na základě proporcionálního řízení

3.5.2. Hledání a počítání křižovatek s proporcionálním řízením čar

3.5.3. Cestovní inverze

3.5.4. Pohyb robota podél zdi

3.6. Hledání cíle v bludišti

Kapitola 4: Aktualizace firmwaru a restartování kostky EV3.

286 Kapitola 5. Použití senzorů jiných výrobců

5.1. Práce s HiTech barevným senzorem

5.2. Pomocí jiných senzorů

Závěr

Seznam projektů Projekt „Věrný pes“ 90 Projekt „Sports Scoreboard“ 98 Projekt „Automatické dokončení“ 102 Projekt „60 sekund“ 109 Projekt „Nahrávání a čtení barevného čárového kódu“ 120 Projekt „Řazení pole pomocí bublinové metody“ 123 Projekt „ Smart Home“ 153 Projekt „Tvrdohlavý robot“ 160 Projekt „Robot s dálkovým ovládáním“ 182 Projekt Kreslená hra na obrazovce bloku EV3 „Catch a Snowball“ 191 Projekt „Vytvoření 3D povrchové mapy“ 197 Projekt „EV3 – Hudební syntetizér“ 203 Kurz programování robota Lego Mindstorms EV3 v prostředí EV3 obrázek cívky (obr. 1.1.11b). Blok bude aktivní (jasný) (obr. 1.1.11c).

–  –  –

Obrázek 1.1.

12. Paralelní programy Pro měřítko obrázků (obr. 1.1.13 a, b) se používají standardní MSWindows kombinace klávesy Ctrl a rolovacího kolečka myši nebo ikon v pravém horním rohu okna:. Měřítko se používá při navigaci ve velkých programech, kopírování konkrétních bloků a mnohem více.

Kurz programování robota Lego Mindstorms EV3 v prostředí EV3 Blocks Large motor a Medium motor První blok palety se nazývá Medium motor, druhý se nazývá Velký motor. Bloky se používají k ovládání jednoho motoru a mají stejnou funkcionalitu.

Uvažujme strukturu bloků na příkladu velkého bloku motoru (obr. 2.1.4).

–  –  –

Obrázek 2.1.

4. Velká řídicí jednotka motoru Nejprve klikněte na písmeno představující název portu a vyberte název portu, ke kterému je motor připojen.

Pojďme se na jednotlivé ovládací prvky podívat blíže.

1. Vyberte provozní režim:

a) zapnout (obr. 2.1.5);

–  –  –

Obrázek 2.4.

3.4. Program pro realizaci projektu „60 sekund“.

DIY aktivity Přidejte na obrazovku obrázek ciferníku.

Analogicky přidejte minutovou a hodinovou ručičku.

2.4.4. Další bloky zpracování dat

–  –  –

Než začnete s poli pracovat, je potřeba je inicializovat, tzn. zadejte typ (číselný nebo logický) a přiřaďte název.

Data lze do pole zadávat ručně nebo automaticky (čtením hodnot ze senzorů). Chcete-li vytvořit pole, musíte použít blok Variable.

Vytvoření pole. Zápis pole do proměnné

Chcete-li vytvořit a vyplnit pole, musíte:

(a) přesunout blok Variable do pracovního prostoru a určit jeho režim (zápis) a typ (numerické nebo logické pole);

Formation Vytvoření numerického pole logického pole

–  –  –

Obrázek 2.5.

3.3. Provozní režimy gyroskopického senzoru Důležité!

Někdy (dost často!) při práci s gyroskopickým senzorem můžete pozorovat následující: když program běží, robot je ve stacionárním stavu a hodnota úhlu se neustále zvyšuje (drift), rychlost nárůstu může být více než 1 stupeň za sekundu!

Zvýšení hodnot senzorů Kapitola 2. Programování robota 177 Pokud je maják velmi daleko (dále než 1 m), bude naměřená hodnota 100, pokud velmi blízko (minimálně 1 cm) - 0. Mezivýsledky také neodpovídají na centimetry.

V případě, že je maják umístěn přímo před snímačem, bude relativní výsledek měření úhlu roven 0, maximální umístění majáku vlevo, proti směru hodinových ručiček -25 (maximální detekovatelný úhel odchylky je přibližně 100 stupňů), vpravo ve směru hodinových ručiček 25 (obr. 2.5. 5.5).

Obrázek 2.5.

5.5. Poloha IR majáku vzhledem k IR senzoru Podívejme se na příklady programů. Umístěte maják před robota, zapněte ho a namiřte směrem k robotovi.

LED indikátor se rozsvítí a zůstane svítit. Maják bude nepřetržitě vysílat signál. Na jednotce infračerveného senzoru nainstalujte stejný kanál, jaký byl nainstalován na majáku. Senzor detekuje pouze maják na kanálu, který určíte ve svém programu.

Maják se vypne, pokud se hodinu nepoužívá.

Na Obr. 2.5.5.6 ukazuje volbu provozního režimu s majákem.

Kurz programování robota Lego Mindstorms EV3 v prostředí EV3 s využitím MS Excel.

Robot se otáčí a v každém okamžiku zaznamenává hodnotu úhlu natočení a vzdálenost k povrchu.

Řešení:

1. Resetujte hodnoty snímače gyroskopu.

Vložíme cyklus 01, podmínka ukončení je čas (3 sekundy).

2. Během cyklu se robot otáčí a čte informace z ultrazvukových a gyroskopických senzorů. Odečty jsou sloučeny v bloku programu Text, oddělené čárkou.

3. Výsledek měření v každém kroku cyklu je zapsán do souboru mapy.

4. Nastavte pauzu na 0,25 sekundy. Po skončení cyklu soubor zavřete.

Pozornost! Při použití gyroskopického senzoru dávejte pozor na přítomnost driftu při jeho zapnutí (viz.

část 2.5.3 k odstranění úletu).

Kapitola 2. Programování robota 213 pohyb a zastavení, krmení každého přívěsu postupně.

2. „Vokální a instrumentální soubor“

Úkolem je předvést hudební skladbu se souborem. První robot EV3 je dirigent, který dává příkazy přes Bluetooth ostatním robotickým hudebníkům a robotickým zpěvákům, kdy mají hrát své hudební party. Dirigent robota může být vybaven dirigentským obuškem, který se pohybuje nahoru a dolů a otáčí se směrem k robotovi, který začíná hrát. Dirigent robota může například na částečný úvazek působit jako sólista.

3. "Taneční soubor"

Úkolem je vytvořit robotický celek. Prvním robotem, který vydává příkazy přes Bluetooth, je sólista. Zbytek robotů se řídí příkazy. Naprogramujte různé druhy tanců - kruhový tanec robotů ("Lokomotiva"), pomalé a rychlé tance.

4. „Ranní cvičení“

Úkolem je současně provádět gymnastická cvičení na povel prvního robota.

2.8. Užitečné bloky a nástroje 2.8.1. Blokovat „Zůstat aktivní“

Po uplynutí určité doby a v případě, že robota nekontaktujeme a robot neprovádí žádné operace, se vypne (ve smyslu EV3 přejde do režimu spánku). To způsobuje nepříjemnosti při práci s programy navrženými tak, aby na některé procesy čekaly dlouhou dobu. Přímo na bloku můžeme nastavit čas přepnutí do režimu spánku (lze nastavit čas před vypnutím: 2 minuty, kurz programování robota Lego Mindstorms EV3 v prostředí EV3, vytvořit několik možností programu a zvolit taktiku boje. Pro například, pokud máme výkonného, ​​ale pomalého robota, můžeme spustit program, ve kterém náš robot zaútočí na soupeře rychle a ze strany; pokud se soupeřův robot při hledání našeho robota vždy otočí doprava, musíme spustit program, který jde kolem a útočí na něj zleva.

Robot může mít jeden nebo dva ultrazvukové senzory pro určení polohy nepřítele bez zbytečných zatáček. Zvláště zajímavá jsou kola, ve kterých soutěží roboti přibližně stejné síly nebo rychlosti, v tomto případě o výsledku rozhodují milimetry a sekundy!

Vítězem se stává účastník, který dokázal sestavit silnou a spolehlivou strukturu, napsal kompetentní program (nebo programy) a zvolil správnou strategii. Právě kombinace těchto faktorů dělá proces přípravy na soutěže vzrušující a soutěže samotné velmi zábavné a vzrušující!

Uveďme příklad programového algoritmu pro robota sumo zápasníka.

Zastavení robota.

2. Robot se otáčí, dokud neuvidí soupeřova robota s ultrazvukovým senzorem (dokud nebude hodnota senzoru menší než 100 cm), což odpovídá úhlu rotace 120-180 stupňů. Zastavení robota.

3. Vytvořte cyklus s ukončovací podmínkou 01, – Neomezeno.

4. Do cyklu 01 vložíme cyklus 02, jehož ukončovací podmínka je logická hodnota: cyklus bude prováděn, dokud nebude na vstup Termination Condition dodána hodnota True.

Kapitola 3. Hlavní typy soutěží a prvky úkolů 245 100 25 + 18 =.

Najdeme rychlost levého kola: V1=58.

Chcete-li implementovat algoritmus, nainstalujte ultrazvukový senzor před robota uprostřed a připojte jej k portu 4.

Namiřte snímač barev dolů, umístěte jej nalevo od řádku a připojte jej k portu 2. Na Obr. 3.3.3 představuje program pro vyhýbání se překážkám. Vezměte prosím na vědomí, že po detekci překážky se robot zastaví a ostře se otočí doprava, aby se posunul z čáry kolmé k překážce a obešel objekt v daném poloměru.

Úkoly pro samostatnou práci

Naprogramujte cesty:

a) vyhýbání se několika překážkám se stejným poloměrem;

b) vyhýbání se překážkám s různými poloměry;

c) jízda v osmičce.

Kapitola 3. Hlavní typy soutěží a prvky úkolů 275 Obrázek 3.

5.3.2. Program pro řízení inverzní trajektorie pohybu Kapitola 3. Hlavní typy soutěží a prvky úloh 285 Obrázek 3.6.5. Program pro hledání cíle v bludišti Kurz programování robota Lego Mindstorms EV3 v prostředí EV3.

KAPITOLA 5. VYUŽITÍ TŘETÍCH STRAN

SNÍMAČE

Kromě senzorů obsažených v domácích nebo vzdělávacích sadách Lego Mindstorms EV3 existuje možnost dokoupit další senzory Lego a senzory s certifikací Lego od HiTechnic.

HiTechnic vyrábí velké množství senzorů pro LEGO Mindstorms, většina z nich má certifikaci LEGO, což potvrzuje plnou kompatibilitu, vysokou kvalitu a bezpečnostní standardy.

Důležitým faktorem umožňujícím použití těchto senzorů při práci s dětmi je také přítomnost certifikátu RoHS (Restriction of Hazardous Substances), potvrzujícího nepřítomnost použití látek v elektrických a elektronických zařízeních: olovo, rtuť, kadmium, cín, šestimocný chrom a některé bromidové sloučeniny. Aktuální seznam certifikovaných senzorů Lego najdete na www.hitechnic.com/sensors.

Aktuálně k dispozici: snímač úhlu natočení;

síla působící příčně k ose; kompas; akcelerometr;

gyroskop; Detektor magnetického pole; infračervený senzor;

infračervený pohybový senzor, který umožňuje určit přítomnost osob nebo zvířat v místnosti, podobně jako senzory používané v bezpečnostních systémech; barometr, který určuje atmosférický tlak a teplotu;

elektro-optický snímač vzdálenosti, který přesně detekuje malé předměty a malé změny v jejich vzdálenosti, ale na vzdálenost ne větší než ~20 cm; barevný senzor

Účelem tohoto kurzu je představit vám Lego mindstorms. Naučte se sestavit základní návrhy robotů, naprogramovat je pro konkrétní úkoly a provést vás základními řešeními nejběžnějších soutěžních problémů.

Kurz je určen pro ty, kteří dělají své první kroky do světa robotiky pomocí Lego mindstorms. Přestože všechny příklady robotů v tomto kurzu jsou vytvořeny pomocí konstruktoru Lego mindstorms EV3, programování robotů je vysvětleno na příkladu vývojového prostředí Lego mindstorms EV3, nicméně majitelé Lego mindstorms NXT se mohou také zapojit do studia tohoto kurzu a doufáme, že že také najdou něco užitečného pro sebe...

1.1. Co je v sadě? Klasifikace dílů, spojování dílů dohromady, hlavní jednotka, motory, senzory

Začněme se seznamovat s konstruktorem Lego mindstorms EV3. Po vytištění designéra v něm najdeme spoustu různých dílů. Pokud znáte tradiční kostky Lego, ale ještě jste se nesetkali se sadami Technic Lego, možná vás neobvyklé kousky trochu odradí. Vypořádat se s nimi však není vůbec těžké. Rozdělme tedy podmíněně všechny podrobnosti do několika kategorií. Na obrázku jsou části zvané trámy (někdy se můžete setkat s názvem těchto částí - trám) Trámy fungují jako rám (kostra vašeho robota),

Rýže. 1

Další skupina dílů slouží ke spojení paprsků mezi sebou, s blokem a snímači. Díly s příčným průřezem se nazývají nápravy (někdy čepy) a slouží k přenosu rotace z motorů na kola a ozubená kola. Části, které vypadají jako válce (mají v průřezu kruh), se nazývají kolíky (z anglického pin - pin),

Rýže. 2

Obrázek níže ukazuje různé možnosti spojování nosníků pomocí čepů.

Rýže. 3

Další skupina dílů se nazývá konektory. Jejich hlavním úkolem je spojovat nosníky v různých rovinách, měnit úhel spojení dílů a připojovat senzory k robotu.

Rýže. 4

Přejděme k další skupině detailů. Ozubená kola jsou navržena tak, aby přenášela rotaci z motorů na další konstrukční prvky robota. Zpravidla se jedná o kola, ale zároveň lze ozubená kola široce použít v různých konstrukcích robotů, které nezahrnují rotaci. Určitě se s nimi nejednou setkáme při konstrukci složitých mechanismů.

Rýže. 5

A samozřejmě pohyb v prostoru našeho robota zajišťují různá kolečka a pásy prezentované v sadě.

Rýže. 6

Další skupina dílů má dekorativní funkce. S jejich pomocí můžeme našeho robota ozdobit a dodat mu jedinečný vzhled.

Rýže. 7

Sada Lego mindstorms EV3 obsahuje dva velké motory. Motory fungují jako svaly nebo silové prvky našeho robota. K přenosu rotace na kola se nejčastěji používají velké motory, které umožňují pohyb robota. Můžeme říci, že tyto motory plní stejnou roli jako lidské nohy.

Rýže. 8

Jeden prostřední motor, který je součástí sady Lego mindstorms EV3, funguje jako hnací síla pro různé nástavce robota (drápy, uchopovací moduly, různé manipulátory) Obdobně jako u velkých motorů přiřadíme střednímu motoru stejně roli, kterou plní naše ruce.

Rýže. 9

Senzory obsažené v sadě Lego mindstorms poskytují robotovi potřebné informace z vnějšího prostředí. Hlavním úkolem programátora je naučit se extrahovat a analyzovat informace přicházející ze senzorů a poté vydávat správné příkazy motorům k provedení určitých akcí.

Rýže. 10

No, hlavním prvkem našeho designéra je hlavní blok EV3. Toto tělo obsahuje mozek našeho robota. Právě zde se spouští program, který přijímá informace ze senzorů, zpracovává je a předává příkazy motorům.

Rýže. jedenáct

1.2. Sestavujeme robota, se kterým budeme tento kurz studovat.

Nastal čas sestavit našeho prvního robota.

V první fázi bude design našeho robota následující:

  • Dva velké motory, abychom naučili našeho robota zatáčet
  • Dvě hnací kola, na která se budou přenášet síly motorů.
  • Jedno volně se otáčející kolo nebo kulový kloub, které zajistí stabilitu našeho robota.
  • Jedna hlavní kostka EV3, která uloží a spustí náš program.
  • Určitý počet detailů, které dodávají konstrukci konečný vzhled.

Tento nejjednodušší robot se nazývá trolejbus.

Můžete zkusit experimentovat nebo postavit robota pomocí doporučených pokynů v závislosti na verzi vaší sady EV3:

Jakmile bude náš robot připraven, začneme studovat programovací prostředí.

1.3. Úvod do programovacího prostředí

Nejprve načteme programovací prostředí Lego mindstorms EV3. V hlavní nabídce programu vyberte: " Soubor" - "Nový projekt" nebo stiskněte " +" , znázorněné na obrázku šipkou.

Rýže. 12

Jeden projekt může obsahovat mnoho programů. Aby se projekt správně načetl do našeho robota V názvu projektu a programů je nutné používat pouze latinská písmena!Pojmenujme náš projekt lekce(lekce) a první program - lekce 1(lekce 1). Pro pojmenování projektu použijeme hlavní menu programu: "Soubor" - "Uložit projekt jako..." Chcete-li změnit název programu, poklepejte na jeho název (program) a zadejte své jméno.

Zapneme centrální jednotku našeho robota. Chcete-li to provést, klikněte na středové (nejtmavší) tlačítko bloku. Pomocí USB kabelu, který je součástí sady, připojíme robota k počítači. Úspěšné připojení robota se projeví na kartě hardwaru softwaru EV3 v pravém dolním rohu softwaru.

Rýže. 13

Pokud bylo připojení robota úspěšné, pak začneme programovat a vytvoříme náš první program.

1.4. Náš první program!

Naučme našeho robota pohybovat se vpřed o určitou vzdálenost. Ve spodní části obrazovky je programovací paleta, každá barva palety odpovídá různým skupinám programových bloků. Vyberme zelenou paletu "Akce". Obsahuje řídící jednotky motoru, zobrazovací jednotku, jednotku ovládání zvuku a tlačítka ovladače EV3 (hlavní jednotka). Vyberte blok „Řízení řízení“ a přetáhněte jej do programovací oblasti (střední oblast programu).

Rýže. 14

Každý program se skládá z řetězce bloků, které specifikují konkrétní akci nebo kontrolují různé podmínky. Každý blok má mnoho různých parametrů. První, oranžový blok se zeleným trojúhelníkem uvnitř se nazývá - "Start". Zde začíná jakýkoli program pro našeho robota. Instalovali jsme druhý blok. Opakuji - říká se tomu "Řízení". Jeho účelem je současně ovládat dva motory.

Rýže. 15

Pokud jste však robot sestavili podle výše uvedených pokynů, pravděpodobně jste si všimli, že neobsahuje schéma připojení motorů a senzorů. Je čas se s tím vypořádat. EV3 Brick má 4 porty označené čísly: 1 , 2 , 3 , A 4 . Tyto porty slouží k připojení pouze senzory Pro připojení motorů použijte porty označené písmeny: A, B, C A D. Motory můžete připojit k libovolným volným portům pro ně určeným. Ale v případě řízeného vozíku se doporučuje připojit motory k portům: B A C. Vezměme si nyní dva propojovací kabely dlouhé 25 cm, levý motor připojit k portu B, A že jo- do přístavu C. Právě toto spojení je standardně vybráno v bloku „Řízení“. Za provozní režim jednotky je zodpovědné speciální tlačítko označené šipkou. Pro první program vyberte režim: "Povolit počtem otáček". Význam 0 pod černou šipkou na bloku znamená lineární pohyb, když se oba motory otáčejí stejnou rychlostí. Číslo 75 nastavuje výkon motorů, čím vyšší je tato hodnota, tím rychleji náš robot pojede. Číslo 2 nastavuje počet otáček každého z motorů, o které se musí otočit.

Náš první program je tedy připraven. Naložíme to do našeho robota. Chcete-li to provést, stiskněte tlačítko "Stažení" na záložce hardware a odpojte USB kabel od robota.

Rýže. 16

Robot instalujeme na rovnou plochu. Pomocí šipek na bloku EV3 přejděte do naší složky projektu a vyberte program lekce 1 a centrálním tlačítkem bloku EV3 jej spustíme k provedení.

Vrcholem tvorby Lega bylo vydání programovatelných stavebnic LEGO Mindstorms Ev3. Hračka je určena pro děti starší deseti let.

Nyní lze mindstorms ev3 bez problémů koupit ve speciálních obchodech nebo na internetu. Jsou snadno naprogramovatelné k provádění určitých akcí.

Nastavení programovacího prostředí

Než začnete psát příkazy pro robota, musíte nainstalovat software.

Požadavky na počítačový systém pro práci s lego mindstorms ev3:

  • OS Windows XP, 7, 8 nebo MacOs (10.6-10.8);
  • 2 GB RAM a 750 MB místa na disku.

Při instalaci prostředí pomocí USB vyberte učitelskou nebo studentskou verzi.

Po instalaci vytvoříme projekt, který se zobrazí jako složka. V ovládacím panelu vybereme, co chceme vytvořit, naprogramovat nebo provést experiment. Doporučuje se vytvořit experiment pro studium výkonu senzorů.

Řídicí program robota se skládá z bloků, sekvenčních operací, které provádí, přičemž každý jednotlivý blok má svůj vlastní režim. Například režim řídicí jednotky motoru je schopnost zastavit. Prostudujte si podrobně všechny symboly, které jsou vytištěny na obrazovce.

Na obrazovce je nabídka, která obsahuje karty:

  • akce;
  • řízení operátora;
  • senzor;
  • datové operace;
  • moje bloky atd.

Pomocí této nabídky můžete naprogramovat robota k provádění různých akcí. Například na kartě, která je zodpovědná za provoz různých mechanismů, můžete nastavit režim motoru na pohyb, zastavení nebo spuštění. Zde můžete nastavit čas, množství a úhel natočení.

V bloku „sound“ můžete naprogramovat robota tak, aby přehrával zvukové signály. Tyto signály lze nahrávat nebo nahrávat pomocí mikrofonu. Důležitým prvkem ovládání programu je část menu, která ovládá operátory. V něm můžete ovládat činnost samotného programu.

Zde můžete programu zadat následující příkazy:

  • začít očekávat;
  • opakování cyklu;
  • přepínání mezi bloky;
  • ukončit cyklus.

Lego mindstorms ev3 je multitasking, pojme více sekvencí příkazů. Do programu můžete naprogramovat nejen své akce, ale i posloupnost jejich provádění.

Kombinací všech možných příkazů odpovídající nabídky můžete vytvářet složité trajektorie a typy chování konstruktoru.

LEGO Education Mindstorms EV3: Programovací Robohand (Robohand H25):


Stručný popis


Tento kurz zahrnuje:


- výstup z cyklu;
- práce s vypínačem;

Plný popis

Lego Mindstorms EV3 zdaleka není nejsložitějším programovacím prostředím. To ale neznamená, že jeho zvládnutí je hračka. Těm, kteří ještě nikdy neprogramovali, může jeho zvládnutí trvat déle než jeden rok. A to nepřeháním. Bez jasného manuálu a neustálého cvičení může zvládnutí programování robota v Lego Mindstorms EV3 trvat až 2 roky.

Nebudu to skrývat – existují dobré knihy o programování pro Lego Mindstorms EV3. Jejich jedinou nevýhodou je, že nejsou příliš vizuální. Nemůžete vložit video do knihy. Nemůžete nahrát hlasové vysvětlení „kódu“ programu.

Proto jsem udělal kurz programování v Lego Mindstorms EV3 ve formátu krátkých videolekcí.

Složení kurzu.

Tento video kurz se skládá z více než 30 videí a 3 návodů na sestavení robotů.
Tento kurz zahrnuje:
- tvorba jednoduchých programů;
- provádění programu ve smyčce;
- výstup z cyklu;
- práce s vypínačem;
- jsou uvažovány proměnné a konstanty;
- jízda po černé čáře na jednom barevném senzoru atd.

Cena.

V tuto chvíli je cena kurzu 1000 rublů. P

Můžete namítnout, že 1000 rublů. je to drahé. Ano, je to dražší než kniha. Ale na rozdíl od knihy si jen nečtete a pak si prohlížíte obrázky. Robota budete moci vidět v akci na vlastní oči. A alespoň na videu. A pokud chcete, tak si to postavte podle návodu, který jsem navrhl (jsou celkem 3).
A druhým rozdílem oproti knize je možnost položit otázku ohledně programování Lego Mindstorms EV3 mně osobně. Je v kurzu něco, co je nejasné a vyvolává otázky? Žádný problém. Moje kontakty jsou na webu. Vezměte to a zeptejte se.

Záruka.

Pokud po prostudování kurzu stále nemůžete programovat, vrátím vám peníze. K tomu mi napište na e-mail, že chcete vrátit peníze a já vám vrátím peníze.

P. S. Kurz bude dále rozvíjen a upravován. Po zakoupení bude k dispozici na vašem osobním účtu po neomezenou dobu. Proto je opravdu výhodné nakupovat hned.

Demo přístup

Sp-force-hide ( display: none;).sp-form ( display: block; background: #ffffff; padding: 15px; width: 450px; max-width: 100%; border-radius: 8px; -moz-border -radius: 8px; -webkit-border-radius: 8px; border-color: #dddddd; border-style: solid; border-width: 1px; font-family: Arial, "Helvetica Neue", bezpatkové; pozadí- repeat: no-repeat; background-position: center; background-size: auto;).sp-form input ( display: inline-block; neprůhlednost: 1; viditelnost: viditelná;).sp-form .sp-form-fields -wrapper ( margin: 0 auto; width: 420px;).sp-form .sp-form-control ( background: #ffffff; border-color: #cccccc; border-style: solid; border-width: 1px; font- velikost: 15px; padding-left: 8,75px; padding-right: 8,75px; border-radius: 4px; -moz-border-radius: 4px; -webkit-border-radius: 4px; výška: 35px; šířka: 100 % ;).sp-form .sp-field label ( barva: #444444; font-size: 13px; font-style: normal; font-weight: bold;).sp-form .sp-button ( border-radius: 4px ; -moz-border-radius: 4px; -webkit-border-radius: 4px; background-color: #0089bf; barva: #ffffff; šířka: auto; váha písma: 700; styl písma: normální; rodina písem: Arial, bezpatkové; box-shadow: žádný; -moz-box-shadow: none; -webkit-box-shadow: none;).sp-form .sp-button-container (text-align: left;)

Pokud najdete chybu, vyberte část textu a stiskněte Ctrl+Enter.