Sisukord:
- Samm: roboti alus
- 2. samm: aluse ülaosa
- Samm: infrapuna- ja ultraheliandurid
- Samm: kaablid
- Samm: viimane samm roboti ehitamisel: kaunistamine
- 6. samm: programmi pseudokood
- Samm: programm
- 8. samm: programmiplokid
- 9. samm: EHITAGE MAZE
Video: LEGO robot sõidab labürindis: 9 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
See on lihtne autonoomne robot, mis on ette nähtud labürindist väljapääsuni sõitmiseks. See on ehitatud LEGO Mindstorms EV3 abil. Tarkvara EV3 töötab arvutis ja genereerib programmi, mis seejärel laaditakse alla mikrokontrollerile nimega EV3 Brick. Programmeerimismeetod on ikoonipõhine ja kõrgetasemeline. See on väga lihtne ja mitmekülgne.
OSAD
- LEGO Mindstorms EV3 komplekt
- LEGO ultraheliandur Mindstorms EV3. See ei kuulu EV3 komplekti.
- Lainepapp labürindi jaoks. Kahest karbist peaks piisama.
- Väike tükk õhukest pappi, mis aitab stabiliseerida mõningaid nurki ja seinu.
- Liim ja lint papitükkide ühendamiseks.
- Punane õnnitluskaardi ümbrik labürindi väljapääsu tuvastamiseks.
TÖÖRIISTAD
- Kasulik nuga papi lõikamiseks.
- Terasest joonlaud lõikamisprotsessi hõlbustamiseks.
MAZE-LAHENDAMISE MEETOD
Labürindis navigeerimiseks on mitmeid meetodeid. Kui olete huvitatud nende uurimisest, kirjeldatakse neid väga hästi järgmises Vikipeedia artiklis:
Valisin vasakpoolse seina jälgija reegli. Idee on selles, et robot hoiab seina vasakul küljel, tehes labürindi läbimisel järgmised otsused:
- Kui on võimalik vasakule pöörata, tehke seda.
- Vastasel juhul minge võimaluse korral otse.
- Kui see ei saa minna vasakule või otse, pöörake võimaluse korral paremale.
- Kui ükski ülaltoodutest pole võimalik, peab see olema ummiktee. Pööra ümber.
Üks hoiatus on see, et meetod võib ebaõnnestuda, kui labürindis on silmus. Sõltuvalt silmuse paigutusest võib robot silmuse ümber ringi liikuda. Selle probleemi võimalik lahendus oleks see, kui robot lülitaks parema käe seinajälgimisreeglile, kui ta mõistaks, et see läheb silmusena. Ma ei lisanud seda täpsustust oma projekti.
ROBOTI EHITAMISE SAMMUD
Kuigi LEGO Mindstorms EV3 on väga mitmekülgne, võimaldab see ühe tellisega ühendada mitte rohkem kui ühe igat tüüpi andurit. Kaks või enam tellist võiks olla aheldatud, kuid ma ei tahtnud teist tellist osta ja seetõttu kasutasin järgmisi andureid (kolme ultrahelisensori asemel): infrapuna-, värvisensorit ja ultraheliandurit. See toimis hästi. Allpool olevad fotopaarid näitavad, kuidas robotit ehitada. Iga paari esimene foto näitab vajalikke osi ja teine foto samu osi, mis on omavahel ühendatud.
Samm: roboti alus
Esimene samm on roboti aluse ehitamine, kasutades näidatud osi. Robotibaas on näidatud tagurpidi. Väike L-kujuline osa roboti tagaosas on toeks seljale. See libiseb, kui robot liigub. See töötab hästi. EV3 komplektis ei ole veerepallitüüpi osa.
2. samm: aluse ülaosa
Järgmised 3 sammu on mõeldud roboti aluse ülaosa, värvisensori ja kaablite jaoks, mis on kõik 10 -tollised (26 cm) kaablid
Samm: infrapuna- ja ultraheliandurid
Järgmisena on infrapunaandur (roboti vasakul küljel) ja ultraheliandur (paremal). Samuti 4 tihvti tellise kinnitamiseks peal.
Infrapuna- ja ultrahelisensorid asuvad tavalise horisontaali asemel vertikaalselt. See võimaldab paremini tuvastada seinte nurki või otsi.
Samm: kaablid
Kinnitage tellis ja ühendage kaablid järgmiselt:
- Port B: vasakpoolne suur mootor.
- Port C: parem suur mootor.
- Port 2: ultraheli andur.
- Port 3: värvisensor.
- Port 4: infrapunaandur.
Samm: viimane samm roboti ehitamisel: kaunistamine
Tiivad ja uimed on ainult kaunistamiseks.
6. samm: programmi pseudokood
- Oodake 3 sekundit ja öelge "Mine".
- Käivitage robot otse edasi liikuma.
- Kui on võimalik vasakule pöörata (st kui infrapunaandur ei tunne lähedal asuvat objekti), öelge „Vasak” ja minge vasakule.
- Vale vasakpöörde vältimiseks liikuge umbes 6 tolli (15 cm) ette. Põhjus on selles, et pärast roboti pööramist näeks andur pikka ruumi, kust ta äsja tuli, ja robot arvaks, et peaks vasakule pöörama, mis pole õige. Minge tagasi 2. sammu juurde.
- Kui vasakule pöörata ei ole võimalik, kontrollige, mida värviandur roboti ees näeb.
- Kui värvi pole (st objekti pole), minge tagasi 2. sammu juurde.
- Kui värv on punane, on see väljapääs. Peatage robot, mängige fanfaari ja peatage programm.
-
Kui värv on pruun (st pruun papp ees), peatage robot.
- Kui on võimalik paremale pöörata (st kui ultrahelisensor ei tuvasta lähedal asuvat objekti), öelge „Õige” ja minge paremale. Minge tagasi 2. sammu juurde.
- Kui paremale pöörata ei ole võimalik, öelge „Uh-oh”, varundage umbes 12,5 cm (5 tolli) ja pöörake ümber. Minge tagasi 2. sammu juurde.
Samm: programm
LEGO Mindstorms EV3-l on väga mugav ikoonipõhine programmeerimismeetod. Plokid kuvatakse arvuti kuvaekraani allosas ja neid saab programmi loomiseks lohistada programmeerimisaknasse. Ekraanipilt näitab selle projekti programmi. Plokke kirjeldatakse järgmises etapis.
Ma ei saanud aru, kuidas seadistada teile programmi allalaadimine, ja seega kirjeldatakse plokke järgmises etapis. Igal plokil on valikud ja parameetrid. See on väga lihtne ja mitmekülgne. Programmi väljatöötamine ja/või selle muutmine vastavalt teie vajadustele ei tohiks võtta palju aega. Nagu alati, on hea mõte programmi väljatöötamisel perioodiliselt salvestada.
EV3 Brick võib arvutiga ühendada kas USB-kaabli, WiFi või Bluetoothi kaudu. Kui see on ühendatud ja sisse lülitatud, kuvatakse see arvuti EV3 akna paremas alanurgas väikeses aknas. Parempoolses servas olev “EV3” muutub punaseks. Kui see ekraan on seatud portvaatele, näitab see reaalajas, mida iga andur tuvastab. See on kasulik katsetamiseks.
Selle programmi koostamisel soovitaksin töötada vasakult paremale ja ülevalt alla ning enne teiste plokkide lohistamist suurendada silmuseid ja lülitusplokke. Mul tekkisid räpased probleemid, püüdes enne suurendamist täiendavaid plokke sisestada.
8. samm: programmiplokid
- Alustades programmi vasakust servast, on programmi käivitamisel käivitusplokk automaatselt olemas.
- Järgmine on ootablokk, mis annab meile pärast programmi käivitamist 3 sekundit, et robot paigutada labürindi sissepääsu juurde.
- Heliplokk paneb roboti ütlema „Mine”.
- Loop Block sisaldab enamikku programmist. Enne plokkide sisestamise alustamist tuleks ekraani 4 või 5 korda välja suumida ja seda silmusplokki suurendada peaaegu programmeerimislõuendi parema servani. Pärast saab seda väiksemaks muuta.
- Esimene silmus sees olev plokk on käigurooliplokk, mille rool on seatud nulli ja võimsus on seatud 20. See käivitab mootorid otse madala kiirusega. Kiirem kiirus paneks roboti liigutama liiga kaugele, kui ta järgmiste sammude ajal edasi räägib.
- Lülitusplokk infrapunaanduri lähedusrežiimis kontrollib, kas objekti on kaugemal kui väärtus 30. See vastab pruuni papi jaoks umbes 9 tollile (23 cm). Kui väärtus on suurem kui 30, täidetakse plokid 7, 8 ja 9, vastasel juhul läheb programm lahtrisse 10 allpool.
- Heliplokk paneb roboti ütlema „Vasak”.
- A Liiguta juhtimisplokk, mille rool on seatud -45, võimsus on 20, pöörete arv on 1,26 ja piduri lõpus on valitud tõene. See sunnib robot vasakule pöörama.
- A Liiguta juhtimisplokk, mille rool on seatud nulli, võimsus on seatud 20, pöörete arv on 1,2 ja pidur lõpus on seatud väärtusele Tõene. See paneb roboti edasi liikuma umbes 6 tolli (15 cm) ettepoole, et vältida vale vasakpööret.
- Lülitusplokk värvisensori mõõtmisrežiimis kontrollib, milline värv on robotil ees. Kui värvi pole (st objekti pole), läheb programm tsükli lõppu. Kui värv on punane, täidetakse plokid 11, 12 ja 13. Kui värv on pruun, läheb programm allolevasse plokki 14.
- A Mootorite peatamiseks liigutage rooliplokki väljalülitatud režiimis.
- Heliplokk mängib fanfaari.
- Silmuskatkestuse plokk väljub silmusest.
- A Mootorite peatamiseks liigutage rooliplokki väljalülitatud režiimis.
- Lülitusplokk ultrahelianduri võrdluskauguse režiimis kontrollib, kas kaugemal kui 20 tolli (8 tolli) on objekte. Kui see on üle 8 tolli, täidetakse plokid 16 ja 17, vastasel juhul läheb programm allolevasse plokki 18.
- Heliplokk paneb roboti ütlema „Õige”.
- A Liiguta juhtimisplokk, mille rool on seatud -55, võimsus on -20, pöörete arv on seatud 1,1 ja pidur lõpus on seatud väärtusele Tõene. See paneb roboti paremale pöörama.
- Heliplokk paneb roboti ütlema „Uh-oh”.
- Liigutuspaagi plokk, mille vasakpoolne võimsus on seatud -20, toide paremal -20, pöörete arv on 1 ja piduri lõpus on valitud tõene. See muudab roboti umbes 12,5 cm (5 tolli) tagasi, et ruumi ümber pöörata.
- Liigutuspaagi plokk, mille võimsus vasakule on seatud -20, toide paremal on 20, pöörete arv on 1,14 ja piduri lõpus on valitud tõene. See paneb roboti ümber pöörama.
- Silmuse väljumisel on programmi peatamise plokk.
9. samm: EHITAGE MAZE
Labürindist peaks piisama kahest lainepapist karbist. Tegin labürindi seinad 5 tolli (12,5 cm) kõrguseks, kuid 10 tolli (4 tolli) peaks sama hästi toimima, kui lainepapist napib.
Esiteks lõikasin karbi seinte ümber, 25 cm (10 tolli) alt. Siis lõikasin seinte ümber 5 tolli alt. See annab mitu 5-tollist seina. Samuti lõikasin ümber karpide põhja, jättes stabiilsuse tagamiseks umbes 1 tolli (2,5 cm) seinte külge.
Erinevaid tükke saab lõigata ja liimida või kleepida kõikjal, kus see labürindi moodustamiseks vajalik on. Igas ummikteega rajal peaks seinte vahel olema 30 cm (12 tolli) ruumi. Seda vahemaad on vaja, et robot saaks ümber pöörata.
Mõned labürindi nurgad võivad vajada tugevdamist. Samuti tuleb mõned sirged seinad painutada, kui need sisaldavad sirgendatud pappnurka. Nendes kohtades tuleks põhjale liimida väikesed õhukese papi tükid, nagu näidatud.
Väljapääsul on punane tõke, mis koosneb poolest punasest õnnitluskaardi ümbrikust ja alusest, mis on valmistatud kahest õhukesest papist, nagu näidatud.
Üks hoiatus on see, et labürint ei tohiks olla suur. Kui roboti pöörded on õigest nurgast veidi väiksemad, lisanduvad lahknevused mõne pöörde järel. Näiteks kui vasakpööre on 3 kraadi väljas, siis pärast 5 vasakpööret läheb robot 15 kraadi maha. Suurel labürindil oleks rohkem pöördeid ja pikem tee kui väikesel ning robot võiks seintesse joosta. Pidin mitu korda pöörete pöörete seadistustega nokitsema, et isegi minu tehtud väikesest labürindist edukalt läbi sõita.
TULEVASED TÄIENDUSED
Ilmselge jätkuprojekt on panna robot suutma navigeerimisel otsida labürindist otseteed ja seejärel sõita selle otseteega (vältides ummikseisu) kohe pärast seda.
See on palju keerulisem kui praegune projekt. Robot peab mäletama läbitud rada, eemaldama tupikteed, salvestama uue tee ja seejärel järgima uut rada. Plaanin selle projektiga lähiajal tegeleda. Ma eeldan, et seda on võimalik saavutada LEGO Mindstorms EV3 abil, kasutades massiivioperatsioone ja mõningaid matemaatikaga seotud plokke.
KOKKUVÕTTEV MÄRKUS
See oli lõbus projekt. Loodan, et ka teile tundub see huvitav.
Soovitan:
Tehisintellekt LEGO EV3 labürindis juhtimisrobotis: 13 sammu
Tehisintellekt LEGO EV3 labürindirobotis: see on lihtne, autonoomne robot, millel on mõni tehisintellekt. See on mõeldud labürindi uurimiseks ja sissepääsu juurde tagasi paigutamisel väljumiseni sõitmiseks ja tupikteede vältimiseks. See on palju keerulisem kui minu eelmine projekt, mis
Raudtee automaatne skeem, mis sõidab kahe rongiga (V2.0) - Arduino baasil: 15 sammu (piltidega)
Raudtee automaatne skeem, mis sõidab kahe rongiga (V2.0) | Arduino baasil: Raudteemudelite paigutuse automatiseerimine Arduino mikrokontrollerite abil on suurepärane võimalus ühendada mikrokontrollerid, programmeerimine ja mudeli raudtee ühendamine üheks hobiks. Saadaval on hulk projekte rongi iseseisva sõitmise kohta raudteemudelil
Lihtne automaatne punkt -punkti mudel Raudtee, mis sõidab kahe rongiga: 13 sammu (piltidega)
Lihtne automaatne punkt-punkti mudelraudtee, mis sõidab kahe rongiga: Arduino mikrokontrollerid on suurepärane viis raudteemudelite paigutuse automatiseerimiseks tänu nende odavale kättesaadavusele, avatud lähtekoodiga riist- ja tarkvarale ning suurele kogukonnale, mis teid abistab. Mudelraudteede puhul võivad Arduino mikrokontrollerid osutuda suurepäraseks
Raudtee automaatne skeem, mis sõidab kahe rongiga: 9 sammu
Raudtee automaatne paigutus, mis sõidab kahe rongiga: tegin mõnda aega tagasi automaatse mudelrongide paigutuse koos möödasõiduteega. Kaasliikme nõudmisel tegin selle juhendi. See on mõnevõrra sarnane varem mainitud projektiga. Paigutus mahutab kahte rongi ja sõidab neid alternatiivselt
Lego Lego Skull Man: 6 sammu (piltidega)
Lego Lego Skull Man: Tere täna, ma õpetan teile, kuidas teha lahe väike patareidega juhitav lego kolju mees. See oleks suurepärane halloweeniks, mis on peagi tulemas. Või oleks see isegi suurepärane lihtne projekt kui teie laud või lihtsalt väike mantli tükike