Obsah:

Robotické pohony LEGO v bludisku: 9 krokov
Robotické pohony LEGO v bludisku: 9 krokov

Video: Robotické pohony LEGO v bludisku: 9 krokov

Video: Robotické pohony LEGO v bludisku: 9 krokov
Video: Часть 3. Аудиокнига Зейна Грея «Последний из жителей равнин» (главы 12–17) 2024, November
Anonim
Image
Image
Základňa robota
Základňa robota

Jedná sa o jednoduchého, autonómneho robota, ktorý je navrhnutý tak, aby prešiel labyrintom k východu. Je postavený pomocou LEGO Mindstorms EV3. Softvér EV3 beží na počítači a generuje program, ktorý sa potom stiahne do mikrokontroléra s názvom EV3 Brick. Metóda programovania je založená na ikonách a je na vysokej úrovni. Je to veľmi ľahké a všestranné.

ČASTI

  1. Sada LEGO Mindstorms EV3
  2. Ultrazvukový senzor LEGO Mindstorms EV3. Nie je súčasťou sady EV3.
  3. Vlnitá lepenka do bludiska. Dva kartóny by mali stačiť.
  4. Malý kúsok tenkej lepenky, ktorý pomôže stabilizovať niektoré rohy a steny.
  5. Lepidlo a páska na spojenie kusov lepenky dohromady.
  6. Červená obálka na pohľadnicu, ktorá identifikuje východ z bludiska.

NÁSTROJE

  1. Úžitkový nôž na rezanie lepenky.
  2. Oceľové pravítko na pomoc pri procese rezania.

METÓDA RIEŠENIA MAZÉRY

Existuje niekoľko spôsobov navigácie v bludisku. Ak máte záujem ich študovať, sú veľmi dobre popísané v nasledujúcom článku Wikipedie:

Vybral som si pravidlo ľavej steny. Ide o to, že robot pri prechode bludiskom udrží stenu na ľavej strane a urobí nasledujúce rozhodnutia:

  1. Ak je možné odbočiť doľava, urobte to.
  2. V opačnom prípade choďte rovno, ak je to možné.
  3. Ak to nemôže ísť doľava alebo rovno, odbočte doprava, ak je to možné.
  4. Ak nič z vyššie uvedeného nie je možné, musí to byť slepá ulička. Otoč sa.

Jedna opatrnosť je, že metóda môže zlyhať, ak má bludisko slučku. V závislosti od umiestnenia slučky by robot mohol pokračovať v slučke stále dokola. Možným riešením tohto problému by bolo, keby sa robot prepol na pravé pravidlo sledovania steny, ak by zistil, že ide v slučke. Toto spresnenie som do svojho projektu nezahrnul.

KROKY PRE STAVBU ROBOTA

Aj keď je LEGO Mindstorms EV3 veľmi univerzálny, k jednému tehlu nepripúšťa viac ako jeden z každého typu senzora. Dve alebo viac tehál je možné reťaziť, ale nechcel som kúpiť ďalšiu tehlu, a tak som použil nasledujúce senzory (namiesto troch ultrazvukových senzorov): infračervený senzor, farebný senzor a ultrazvukový senzor. Toto fungovalo dobre. Dvojice fotografií nižšie ukazujú, ako postaviť robota. Prvá fotografia každého páru zobrazuje potrebné diely a druhá fotografia ukazuje rovnaké časti spojené dohromady.

Krok 1: Základňa robota

Základňa robota
Základňa robota

Prvým krokom je postaviť základňu robota pomocou zobrazených častí. Základňa robota je zobrazená hore nohami. Malá časť v tvare L v zadnej časti robota je oporou pre chrbát. Pri pohybe robota sa kĺže. To funguje v poriadku. Súprava EV3 nemá časť typu valivej gule.

Krok 2: Horná časť základne

Horná časť základne
Horná časť základne
Horná časť základne
Horná časť základne
Horná časť základne
Horná časť základne

Nasledujúce 3 kroky smerujú k hornej časti základne robota, senzoru farieb a káblov, čo sú všetky 10 palcové (26 cm) káble

Krok 3: Infračervené a ultrazvukové snímače

Infračervené a ultrazvukové snímače
Infračervené a ultrazvukové snímače
Infračervené a ultrazvukové snímače
Infračervené a ultrazvukové snímače

Ďalej sú to infračervený senzor (na ľavej strane robota) a ultrazvukový senzor (napravo). Tiež 4 kolíky na pripevnenie tehly na vrch.

Infračervené a ultrazvukové senzory sú umiestnené vertikálne namiesto normálnej horizontálnej. To poskytuje lepšiu identifikáciu rohov alebo koncov stien.

Krok 4: Káble

Káble
Káble

Pripevnite tehlu a zapojte káble nasledovne:

  • Port B: ľavý veľký motor.
  • Port C: pravý veľký motor.
  • Port 2: ultrazvukový senzor.
  • Port 3: snímač farieb.
  • Port 4: infračervený senzor.

Krok 5: Posledný krok pri stavbe robota: dekorácia

Posledný krok pri stavbe robota: dekorácia
Posledný krok pri stavbe robota: dekorácia
Posledný krok pri stavbe robota: dekorácia
Posledný krok pri stavbe robota: dekorácia
Posledný krok pri stavbe robota: dekorácia
Posledný krok pri stavbe robota: dekorácia

Krídla a plutvy sú len na ozdobu.

Krok 6: Pseudokód pre program

  1. Počkajte 3 sekundy a povedzte „Choď“.
  2. Začnite robota pohybovať sa priamo vpred.
  3. Ak je možné odbočiť doľava (t. J. Ak infračervený snímač necíti predmet v okolí), povedzte „doľava“a choďte doľava.
  4. Choďte dopredu asi 6 palcov (15 cm), aby ste sa vyhli falošnému zatáčaniu doľava. Dôvodom je, že potom, čo sa robot otočil, senzor by videl dlhý priestor, z ktorého práve prišiel, a robot by si myslel, že by mal odbočiť doľava, čo nie je správne. Vráťte sa na krok 2.
  5. Ak nie je možné odbočiť doľava, skontrolujte, čo vidí farebný senzor pred robotom.
  6. Ak nie je žiadna farba (t.j. žiadny predmet), vráťte sa ku kroku 2.
  7. Ak je farba červená, toto je východ. Zastavte robota, zahrajte si fanfáry a zastavte program.
  8. Ak je farba hnedá (t. J. Hnedá lepenka vpredu), zastavte robota.

    1. Ak je možné odbočiť vpravo (t. J. Ak ultrazvukový senzor necíti predmet v okolí), povedzte „doprava“a choďte doprava. Vráťte sa na krok 2.
    2. Ak nie je možné odbočiť doprava, povedzte „Uh-oh“, zálohujte asi 12,5 cm (5 palcov) a otočte sa. Vráťte sa na krok 2.

Krok 7: Program

Program
Program

LEGO Mindstorms EV3 má veľmi výhodnú metódu programovania založenú na ikonách. Bloky sú zobrazené v spodnej časti obrazovky počítača a je možné ich zostavením presunúť myšou do programovacieho okna. Snímka obrazovky zobrazuje program pre tento projekt. Bloky sú popísané v nasledujúcom kroku.

Nedokázal som prísť na to, ako nastaviť sťahovanie programu pre vás, ľudia, a preto sú bloky popísané v nasledujúcom kroku. Každý blok má možnosti a parametre. Je to veľmi ľahké a všestranné. Vývoj programu a/alebo jeho zmena podľa vašich potrieb by vám nemala trvať dlho. Ako vždy, pri vytváraní programu je dobré program pravidelne ukladať.

EV3 Brick je možné k počítaču pripojiť buď káblom USB, Wi-Fi alebo Bluetooth. Keď je pripojený a zapnutý, je to indikované v malom okne v pravom dolnom rohu okna EV3 v počítači. „EV3“na pravej strane sa zmení na červenú. Keď je tento displej nastavený na zobrazenie portu, v reálnom čase zobrazuje, čo jednotlivé senzory detegujú. To je užitočné pri experimentovaní.

Pri vytváraní tohto programu by som odporučil pracovať zľava doprava a zhora nadol a pred pretiahnutím ďalších blokov dovnútra zväčšiť slučkové a prepínacie bloky. Pred rozšírením som narazil na chaotické problémy pri pokuse o vloženie ďalších blokov dovnútra.

Krok 8: Programové bloky

  1. Štartovací blok, ktorý sa začína na ľavej strane programu, je prítomný automaticky pri vývoji programu.
  2. Ďalej je čakací blok, ktorý nám dáva 3 sekundy na umiestnenie robota pri vchode do bludiska po spustení programu.
  3. Vďaka zvukovému bloku robot povie „Choď“.
  4. Blok slučiek obsahuje väčšinu programu. Pred vložením blokov by ste mali displej 4 alebo 5 krát oddialiť a tento blok slučky by ste mali zväčšiť takmer k pravému okraju programovacieho plátna. Neskôr sa dá zmenšiť.
  5. Prvým blokom vo vnútri slučky je blok riadenia pohybu, pričom riadenie je nastavené na nulu a výkon nastavený na 20. Tým sa motory spustia priamo vpred pri nízkych otáčkach. Vyššia rýchlosť by robota posunula príliš ďaleko, keď pokračuje vpred a hovorí v nasledujúcich krokoch.
  6. Spínací blok v režime priblíženia infračerveného senzora kontroluje, či sa nenachádza nejaký predmet ďalej ako hodnota 30. To je ekvivalentné približne 23 cm v prípade hnedej lepenky. Ak je hodnota väčšia ako 30, potom sa vykonajú bloky 7, 8 a 9, inak program prejde do bloku 10 nižšie.
  7. Vďaka zvukovému bloku robot povie „vľavo“.
  8. Posuňte blok riadenia so súpravou riadenia na -45, výkonom nastaveným na 20, otáčkami nastavenými na 1,26 a brzdou na konci nastavenou na hodnotu True. Vďaka tomu robot zabočí doľava.
  9. Posuňte blok riadenia, pričom riadenie je nastavené na nulu, výkon je nastavený na 20, otáčky sú nastavené na 1,2 a brzda na konci je nastavená na hodnotu True. Robot sa tak posunie dopredu asi o 15 cm, aby sa vyhol falošnému zatáčaniu doľava.
  10. Spínací blok v režime merania farebného senzora farby kontroluje, aká farba je pred robotom. Ak nie je žiadna farba (t.j. žiadny predmet), program prejde na koniec slučky. Ak je farba červená, vykonajú sa bloky 11, 12 a 13. Ak je farba hnedá, program prejde na blok 14 nižšie.
  11. Pohybom bloku riadenia v vypnutom režime zastavte motory.
  12. Sound Block hrá fanfáry.
  13. Blok prerušenia slučky opúšťa slučku.
  14. Pohybom bloku riadenia v vypnutom režime zastavte motory.
  15. Spínací blok v režime porovnávania vzdialenostných palcov ultrazvukového senzora kontroluje, či sa nejaký predmet nenachádza ďalej ako 20 palcov (8 palcov). Ak je to viac ako 8 palcov, potom sa vykonajú bloky 16 a 17, inak program prejde na blok 18 nižšie.
  16. Vďaka zvukovému bloku robot povie „Správne“.
  17. Posuňte blok riadenia so súpravou riadenia nastavenou na -55, výkonom nastavenou na -20, otáčkami nastavenými na 1,1 a brzdou na konci nastavenou na hodnotu True. Vďaka tomu robot odbočí doprava.
  18. Vďaka zvukovému bloku robot povie „Uh-oh“.
  19. Blok pohybu tanku s ľavým výkonom nastaveným na -20, pravým nastaveným na -20, otáčkami nastaveným na 1 a brzdou na konci nastavenou na hodnotu True. Vďaka tomu robot zazálohuje asi o 12,5 cm (5 palcov), aby mal priestor na otočenie.
  20. Blok pohyblivej nádrže s výkonom vľavo nastaveným na -20, výkonom vpravo nastaveným na 20, otáčkami nastaveným na 1,14 a brzdou na konci nastavenou na hodnotu True. Vďaka tomu sa robot otočí.
  21. Na výstupe zo slučky je blokovací programový blok.

Krok 9: VYROBTE MAZE

VYROBTE MAZE
VYROBTE MAZE
VYROBTE MAZE
VYROBTE MAZE
VYROBTE MAZE
VYROBTE MAZE

Na bludisko by mali stačiť dva kartóny z vlnitej lepenky. Steny bludiska som vytvoril na výšku 5 palcov (12,5 cm), ale 4 palce (10 cm) by mali fungovať rovnako dobre, ak vám chýba vlnitá lepenka.

Najprv som rozrezal steny kartónov, 10 palcov (25 cm) od spodnej časti. Potom som orezal okolo stien 5 palcov odo dna. To poskytuje niekoľko 5-palcových stien. Tiež som rezal okolo dna kartónov a ponechal som asi 1 palec (2,5 cm) pripevnený k stenám kvôli stabilite.

Rôzne kúsky je možné rezať a lepiť alebo lepiť páskou, kedykoľvek je to potrebné na vytvorenie bludiska. V akejkoľvek ceste so slepou uličkou by mal byť medzi stenami priestor 12 palcov (30 cm). Táto vzdialenosť je potrebná na to, aby sa robot otočil.

Niektoré rohy bludiska môžu byť potrebné vystužené. Niektoré rovné steny je tiež potrebné zabrániť ohýbaniu, ak obsahujú narovnaný roh kartónu. Malé kúsky tenkej lepenky by mali byť na týchto miestach prilepené k spodnej časti, ako je znázornené.

Východ má červenú bariéru, ktorá sa skladá z polovice červenej obálky na blahoželanie a základne z 2 kusov tenkej lepenky, ako je znázornené.

Jedna opatrnosť je, že bludisko by nemalo byť veľké. Ak sú otáčky robota v miernom uhle od správneho uhla, nezrovnalosti sa po niekoľkých otáčkach sčítajú. Napríklad, ak je odbočka doľava o 3 stupne vypnutá, potom sa robot po 5 otáčkach doľava vypne o 15 stupňov. Veľké bludisko by malo viac zákrut a dlhšiu cestu ako malé a robot by mohol vbehnúť do stien. Aby som sa úspešne dostal aj cez malé bludisko, ktoré som urobil, musel som sa niekoľkokrát pohrávať s nastaveniami otáčok v zákrutách.

BUDÚCE VYLEPŠENIA

Zjavným pokračovacím projektom je umožniť robotovi určiť pri bludisku priamu cestu bludiskom a potom riadiť túto priamu cestu (vyhýbať sa slepým uličkám).

To je oveľa komplikovanejšie ako súčasný projekt. Robot si musí pamätať cestu, ktorú prešiel, odstrániť slepé uličky, uložiť novú cestu a potom nasledovať novú cestu. Na tomto projekte plánujem v blízkej budúcnosti pracovať. Očakávam, že je možné to dosiahnuť s LEGO Mindstorms EV3 pomocou blokov operačného poľa a niektorých blokov súvisiacich s matematikou.

ZÁVEREČNÁ POZNÁMKA

Bol to zábavný projekt. Dúfam, že vás to tiež bude zaujímať.

Odporúča: