Satura rādītājs:

LEGO robots brauc labirintā: 9 soļi
LEGO robots brauc labirintā: 9 soļi

Video: LEGO robots brauc labirintā: 9 soļi

Video: LEGO robots brauc labirintā: 9 soļi
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Novembris
Anonim
Image
Image
Robota bāze
Robota bāze

Šis ir vienkāršs, autonoms robots, kas paredzēts labirintam līdz izejai. Tā būvēta, izmantojot LEGO Mindstorms EV3. Programmatūra EV3 darbojas datorā un ģenerē programmu, kas pēc tam tiek lejupielādēta mikrokontrollerī ar nosaukumu EV3 Brick. Programmēšanas metode ir balstīta uz ikonām un ir augsta līmeņa. Tas ir ļoti viegli un daudzpusīgi.

DAĻAS

  1. LEGO Mindstorms EV3 komplekts
  2. LEGO Mindstorms EV3 ultraskaņas sensors. Tas nav iekļauts EV3 komplektā.
  3. Gofrēts kartons labirintam. Pietiek ar divām kartona kastēm.
  4. Neliels plāna kartona gabals, kas palīdz stabilizēt dažus stūrus un sienas.
  5. Līme un lente kartona gabalu savienošanai.
  6. Sarkana apsveikuma kartītes aploksne, lai identificētu labirinta izeju.

RĪKI

  1. Komunālais nazis kartona griešanai.
  2. Tērauda lineāls, kas palīdz griešanas procesā.

MAZES RISINĀŠANAS METODE

Ir vairākas labirinta navigācijas metodes. Ja jūs interesē to izpēte, tie ir ļoti labi aprakstīti šajā Vikipēdijas rakstā:

Es izvēlējos kreisās sienas sekotāja noteikumu. Ideja ir tāda, ka robots ieturēs sienu kreisajā pusē, pieņemot šādus lēmumus, ejot cauri labirintam:

  1. Ja ir iespējams pagriezties pa kreisi, dariet to.
  2. Pretējā gadījumā dodieties taisni, ja iespējams.
  3. Ja tas nevar iet pa kreisi vai taisni, ja iespējams, pagriezieties pa labi.
  4. Ja nekas no iepriekš minētā nav iespējams, tam jābūt strupceļam. Pagriezieties.

Viena piesardzība ir tāda, ka metode var neizdoties, ja labirintā ir cilpa. Atkarībā no cilpas izvietojuma robots varētu turpināt ap un ap cilpu. Iespējamais risinājums šai problēmai būtu, ja robots pārietu uz labās puses sienas sekotāja noteikumu, ja tas saprastu, ka tas notiek cilpā. Es neiekļāvu šo precizējumu savā projektā.

SOLI ROBOTA UZBŪVEI

Lai gan LEGO Mindstorms EV3 ir ļoti universāls, tas pieļauj vienu ķieģeli, kas ir savienots ne ar vienu no katra veida sensoriem. Divi vai vairāki ķieģeļi varētu būt sasaistīti ar ķēdi, bet es negribēju iegādāties citu ķieģeļu, un tāpēc es izmantoju šādus sensorus (trīs ultraskaņas sensoru vietā): infrasarkano sensoru, krāsu sensoru un ultraskaņas sensoru. Tas izdevās labi. Tālāk redzamie fotoattēlu pāri parāda, kā izveidot robotu. Katra pāra pirmajā fotoattēlā ir redzamas nepieciešamās detaļas, bet otrajā - tās pašas detaļas, kas savienotas kopā.

1. darbība: robota bāze

Robota bāze
Robota bāze

Pirmais solis ir izveidot robota pamatni, izmantojot parādītās daļas. Robota pamatne ir attēlota otrādi. Mazā L formas daļa robota aizmugurē ir atbalsts mugurai. Robotam kustoties, tas slīd. Tas darbojas labi. EV3 komplektā nav rullīšu tipa detaļas.

2. solis: pamatnes augšdaļa

Bāzes augšdaļa
Bāzes augšdaļa
Bāzes augšdaļa
Bāzes augšdaļa
Bāzes augšdaļa
Bāzes augšdaļa

Nākamās 3 darbības ir paredzētas robota pamatnes augšdaļai, krāsu sensoram un kabeļiem, kas visi ir 10 collu (26 cm) kabeļi

3. solis: infrasarkanie un ultraskaņas sensori

Infrasarkanie un ultraskaņas sensori
Infrasarkanie un ultraskaņas sensori
Infrasarkanie un ultraskaņas sensori
Infrasarkanie un ultraskaņas sensori

Tālāk ir infrasarkanais sensors (robota kreisajā pusē) un ultraskaņas sensors (labajā pusē). Arī 4 tapas ķieģeļu piestiprināšanai virsū.

Infrasarkanie un ultraskaņas sensori atrodas vertikāli, nevis normāli horizontāli. Tas nodrošina labāku sienu stūru vai galu noteikšanu.

4. solis: kabeļi

Kabeļi
Kabeļi

Pievienojiet ķieģeļu un pievienojiet kabeļus šādi:

  • B ports: kreisais lielais motors.
  • C ports: labais lielais motors.
  • 2. ports: ultraskaņas sensors.
  • 3. ports: krāsu sensors.
  • Ports 4: infrasarkanais sensors.

5. solis: pēdējais robota veidošanas posms: dekorēšana

Pēdējais posms robota veidošanā: dekorēšana
Pēdējais posms robota veidošanā: dekorēšana
Pēdējais posms robota veidošanā: dekorēšana
Pēdējais posms robota veidošanā: dekorēšana
Pēdējais posms robota veidošanā: dekorēšana
Pēdējais posms robota veidošanā: dekorēšana

Spārni un spuras ir paredzēti tikai dekorēšanai.

6. darbība. Programmas pseidokode

  1. Pagaidiet 3 sekundes un sakiet “Aiziet”.
  2. Sāciet robota kustību taisni uz priekšu.
  3. Ja ir iespējams pagriezties pa kreisi (t.i., ja infrasarkanais sensors nejūt tuvumā esošu objektu), sakiet “Pa kreisi” un dodieties pa kreisi.
  4. Dodieties uz priekšu apmēram 6 collas (15 cm), lai izvairītos no nepareiza pagrieziena pa kreisi. Iemesls tam ir tas, ka pēc tam, kad robots ir pagriezies, sensors redzēs tik daudz vietas, no kura tas tikko bija nācis, un robotam šķiet, ka tam vajadzētu pagriezties pa kreisi, kas nav pareizi. Atgriezieties pie 2. darbības.
  5. Ja nav iespējams pagriezties pa kreisi, pārbaudiet, ko krāsu sensors redz robota priekšā.
  6. Ja nav krāsas (t.i., nav objekta), atgriezieties pie 2. darbības.
  7. Ja krāsa ir sarkana, šī ir izeja. Apturiet robotu, izspēlējiet fanfaras un pārtrauciet programmu.
  8. Ja krāsa ir brūna (t.i., brūns kartons priekšā), apturiet robotu.

    1. Ja ir iespējams pagriezties pa labi (t.i., ja ultraskaņas sensors nejūt tuvumā esošu objektu), sakiet “Pareizi” un ejiet pa labi. Atgriezieties pie 2. darbības.
    2. Ja nav iespējams pagriezties pa labi, sakiet “Uh-oh”, dublējiet aptuveni 12,5 cm (5 collas) un pagriezieties. Atgriezieties pie 2. darbības.

7. solis: programma

Programma
Programma

LEGO Mindstorms EV3 ir ļoti ērta programmēšanas metode, kas balstīta uz ikonām. Bloki tiek parādīti datora ekrāna apakšdaļā, un tos var vilkt un nomest programmēšanas logā, lai izveidotu programmu. Ekrānuzņēmumā ir redzama šī projekta programma. Bloki ir aprakstīti nākamajā darbībā.

Es nevarēju saprast, kā iestatīt programmas lejupielādi jums, tāpēc bloki ir aprakstīti nākamajā darbībā. Katram blokam ir iespējas un parametri. Tas ir ļoti viegli un daudzpusīgi. Jums nevajadzētu aizņemt daudz laika, lai izstrādātu programmu un/vai mainītu to atbilstoši savām vajadzībām. Izstrādājot programmu, kā vienmēr, ieteicams periodiski saglabāt programmu.

EV3 Brick var savienot ar datoru, izmantojot USB kabeli, Wi-Fi vai Bluetooth. Kad tas ir pievienots un ieslēgts, tas tiek norādīts nelielā logā datora EV3 loga apakšējā labajā stūrī. “EV3” labajā pusē kļūst sarkans. Ja šis displejs ir iestatīts uz Port View, tas reālā laikā parāda, ko katrs sensors nosaka. Tas ir noderīgi eksperimentiem.

Veidojot šo programmu, es ieteiktu strādāt no kreisās uz labo un no augšas uz leju, un pirms citu bloku vilkšanas iekšā palielināt cilpu un slēdžu blokus. Pirms palielināšanas es saskāros ar nekārtīgām problēmām, mēģinot ievietot iekšā papildu blokus.

8. darbība: programmu bloki

  1. Sākot no programmas kreisās puses, sākuma bloks tiek automātiski parādīts, kad tiek izstrādāta programma.
  2. Nākamais ir gaidīšanas bloks, lai pēc programmas uzsākšanas dotu mums 3 sekundes, lai novietotu robotu pie labirinta ieejas.
  3. Skaņas bloks liek robotam pateikt “Aiziet”.
  4. Cilpas bloks satur lielāko daļu programmas. Pirms sākat bloku ievietošanu, displejs ir jāpalielina 4 vai 5 reizes, un šis cilpas bloks ir jāpalielina gandrīz līdz programmēšanas audekla labajai malai. Pēc tam to var padarīt mazāku.
  5. Pirmais bloks cilpas iekšpusē ir kustību stūres bloks ar stūres iestatījumu uz nulli un jaudu uz 20. Tādējādi dzinēji sāk darboties taisni uz priekšu ar mazu ātrumu. Lielāks ātrums liktu robotam pārvietoties pārāk tālu, kad tas turpina uz priekšu, runājot turpmākajos soļos.
  6. Slēdžu bloks infrasarkanā sensora tuvuma režīmā pārbauda, vai ir kāds priekšmets tālāk par vērtību 30. Tas ir līdzvērtīgs aptuveni 9 cm (23 cm) brūnam kartonam. Ja vērtība ir lielāka par 30, tiek izpildīts 7., 8. un 9. bloks, pretējā gadījumā programma pāriet uz 10. bloku.
  7. Skaņas bloks liek robotam teikt “Pa kreisi”.
  8. Pārvietošanas stūres bloks, ja stūres iekārta ir iestatīta uz -45, jauda ir iestatīta uz 20, rotācijas ir iestatītas uz 1,26, un bremzes beigās ir iestatītas uz True. Tas liek robotam griezties pa kreisi.
  9. Pārvietošanas stūres bloks, ja stūres iekārta ir iestatīta uz nulli, jauda ir iestatīta uz 20, rotācijas ir iestatītas uz 1,2 un bremze beigās ir iestatīta uz True. Tas liek robotam iet uz priekšu apmēram 6 collas (15 cm), lai izvairītos no nepareiza pagrieziena pa kreisi.
  10. Slēdžu bloks krāsu sensora mērīšanas krāsu režīmā pārbauda, kāda krāsa ir priekšā robotam. Ja nav krāsas (t.i., nav objekta), programma pāriet uz cikla beigām. Ja krāsa ir sarkana, tiek izpildīts 11., 12. un 13. bloks. Ja krāsa ir brūna, programma pāriet uz 14. bloku.
  11. A Pārvietojiet stūres bloku izslēgtā režīmā, lai apturētu motorus.
  12. Skaņas bloks atskaņo fanfaras.
  13. Cilpas pārtraukšanas bloks iziet no cilpas.
  14. A Pārvietojiet stūres bloku izslēgtā režīmā, lai apturētu motorus.
  15. Slēdžu bloks ultraskaņas sensora Salīdziniet attālumu collas režīmā pārbauda, vai ir kāds priekšmets, kas atrodas tālāk par 8 collām (20 cm). Ja tas ir lielāks par 8 collām, tiek izpildīti bloki 16 un 17, pretējā gadījumā programma pāriet uz 18. bloku.
  16. Skaņas bloks liek robotam pateikt “Pareizi”.
  17. Pārvietošanas stūres bloks, ja stūres iekārta ir iestatīta uz -55, jauda ir iestatīta uz -20, rotācijas ir iestatītas uz 1.1 un bremzes beigās ir iestatītas uz True. Tas liek robotam griezties pa labi.
  18. Skaņas bloks liek robotam pateikt “Uh-oh”.
  19. Pārvietošanas tvertnes bloks ar kreiso jaudu ir iestatīts uz -20, barošanas pa labi -uz -20, pagriezieni ir iestatīti uz 1 un bremzes beigās ir iestatītas uz True. Tas liek robotam atgriezties apmēram 5 collu (12,5 cm) augstumā, lai atbrīvotos no vietas.
  20. Pārvietošanas tvertnes bloks ar kreiso jaudu ir iestatīts uz -20, barošanas pa labi -uz 20, rotācijas ir iestatītas uz 1,14 un bremzes beigās ir iestatītas uz True. Tas liek robotam apgriezties.
  21. Cilpas izejā ir programmas apturēšanas bloks.

9. solis: IZVEIDOT MAZE

BUILD MAZE
BUILD MAZE
BUILD MAZE
BUILD MAZE
BUILD MAZE
BUILD MAZE

Labirintam vajadzētu pietikt ar divām gofrēta kartona kastēm. Es izveidoju labirinta sienas 5 collu (12,5 cm) augstumā, bet 10 cm (4 collas) vajadzētu darboties tikpat labi, ja pietrūkst gofrētā kartona.

Vispirms es sagriezu kastītes sienas, 25 cm (10 collas) no apakšas. Tad es nogriezu ap sienām 5 collas no apakšas. Tas nodrošina vairākas 5 collu sienas. Turklāt es nogriezu kartona kārbu apakšdaļu, atstājot pie sienām apmēram 1 cm (2,5 cm), lai nodrošinātu stabilitāti.

Dažādos gabalus var sagriezt un pielīmēt vai pielīmēt, kur vien nepieciešams, lai veidotos labirints. Jebkurā ceļā ar strupceļu jābūt 30 cm (12 collu) atstarpei. Šis attālums ir nepieciešams, lai robots varētu apgriezties.

Daži labirinta stūri var būt jāpastiprina, kā arī dažas taisnas sienas ir jāsargā no saliekšanās, ja tajās ir iztaisnots kartona stūris. Šajās vietās apakšā jāpielīmē nelieli plāna kartona gabali, kā parādīts attēlā.

Izejai ir sarkana barjera, kas sastāv no pusi sarkanas apsveikuma kartītes aploksnes un pamatnes, kas izgatavota no 2 plānā kartona gabaliem, kā parādīts attēlā.

Viena piesardzība ir tāda, ka labirints nedrīkst būt liels. Ja robota pagriezieni atrodas nelielā leņķī no pareizā, neatbilstības palielinās pēc dažiem pagriezieniem. Piemēram, ja pagrieziens pa kreisi ir par 3 grādiem, tad pēc pieciem pagriezieniem pa kreisi robots izslēdzas par 15 grādiem. Lielam labirintam būtu vairāk pagriezienu un garāks ceļš nekā mazam, un robots varētu ieskriet sienās. Man nācās vairākas reizes pīpēt ar pagriezienu rotācijas iestatījumiem, lai panāktu veiksmīgu braucienu pat manā mazajā labirintā.

NĀKOTNES PAPILDINĀJUMI

Acīmredzams turpinājuma projekts ir panākt, lai robots, pārvietojoties pa to, varētu noteikt tiešu ceļu caur labirintu un pēc tam vadīt šo tiešo ceļu (izvairoties no strupceļiem).

Tas ir daudz sarežģītāk nekā pašreizējais projekts. Robotam jāatceras nobrauktais ceļš, jānoņem strupceļi, jāsaglabā jaunais ceļš un pēc tam jāseko jaunajam ceļam. Es plānoju tuvākajā laikā strādāt pie šī projekta. Es ceru, ka to ir iespējams paveikt ar LEGO Mindstorms EV3, izmantojot masīva operāciju blokus un dažus ar matemātiku saistītus blokus.

Nobeiguma piezīme

Šis bija jautrs projekts. Ceru, ka arī jums tas šķitīs interesanti.

Ieteicams: