Roboten labyrint Problemlösaren



Denna handledning hjälper dig skapa en Arduino baserad robot som kan lösa grundläggande linje labyrinter som inte har slutna slingor.

Hur det fungerar:

Roboten är programmerad att köra över de svarta linjerna av labyrinten och använda optiska sensorer på botten av roboten för att spåra linjerna. Som den färdas längs, kommer det program som vi använder lösa labyrinten för den kortaste vägen med en enkel att förstå metoden kallas "Vänster Hand regeln" eller ibland kallas metoden "Vänster Hand på väggen".

"Vänster Hand regeln" strategi är att ta dig fram genom labyrinten, när man väljer hur man vänder vid korsningar som följer:

  • Alltid sväng vänster om du kan
  • Om du inte kan sväng vänster, gå rakt
  • Om du inte kan sväng vänster eller gå direkt, sväng höger
  • Om du inte kan sväng vänster, gå rakt eller sväng höger, sväng eftersom du måste vara på en återvändsgränd

Metod att lösa labyrinten för en kortare sökväg är genom att hålla reda på de vänder sig gjort och minska listan över vänder när du lägger till det senaste tur i listan med kända substitutioner. Ersättningarna är tre vända kombinationer där antingen (L) eft, (R) ätt eller (S) släpa visas på vardera änden av en b ack enligt följande:

  • LBR = B
  • LBS = R
  • LBL = S
  • SBL = R
  • SBS = B
  • RBL = B

Till exempel från utgångspunkten:

  • Börja flytta
  • (L) eft tur görs hittade skärningen
  • Lägga till "L" listan
  • Kontrollera om senast tre på listan kan förkortas: Nej, endast en tur registreras.
  • (B) ack på en hittade återvändsgränd
  • Lägga till "B" listan
  • Kontrollera om senast tre på listan kan förkortas: Nej, endast två blir inspelade.
  • (L) eft slå igen när den hittar första korsningen där det tidigare visade vänster
  • Lägga till "L" listan
  • Kontrollera om senast tre på listan kan förkortas: Ja.
  • Ersätt "LBL" med "S" släpa
  • Fortsätt tills slutpunkten finns.

Sökvägen förkortades så det kommer att köras löst sökvägen blir när labyrinten är kör igen från startposition. Från början, kommer det nu kör rakt fram genom korsningen och undvika återvändsgränd.

Mer om teorin bakom olika labyrint lösa algoritmer kan hittas här: https://en.wikipedia.org/wiki/Maze_solving_algorithm

Robotens program körs våra exempelkod från en Arduino kompatibel micro controller. Om du är obekant med Arduino, du kan lära dig allt om det och Hämta programvaran programmering på www.arduino.cc.

Se Steg
Relaterade Ämnen

Labyrint Problemlösaren Robot, med artificiell intelligens med Arduino

(Om du gillar detta Instructable, glöm inte att rösta på det (ovan: högra hörnet flaggan). Rex, roboten tävlar på ROBOTICS och sensorer tävlingar. Tack så mycket! ;-)Detta Instructable utvecklades på mitt senaste projekt: rad efterföljare Robot - PID...

Labyrint Problemlösaren med Arduino och ArduMoto(Micromouse) V:1.2

Här '' Instructables'' syftar till att hjälpa någon maker, entusiast att göra sin egen labyrint Problemlösaren (Micromouse). Förekomsten av Micromouses har dateras tillbaka till 1950-talet och tävlingar hålls sedan dess. Även dessa tävlingar kan kräv...

Hur du använder verktyget Problemlösaren i Excel

syftet med denna guide är att introducera människor till datorprogrammet Microsoft Excel. Vi kommer särskilt att fokusera på Problemlösaren verktyg aspekten av programmet och hur användare kan använda det till sin fördel. Denna guide kommer att täcka...

Rubiks kub Tricks: Hastighet Problemlösaren logotyp

sval och lätt Rubiks kub mönsterSteg 1: Rubiks kub grunderna innan du försöker tricks jag skulle rekommendera att lära sig att lösa en Rubiks kub först. så du vet ordförråd, tips kommatecken och tricks. För grundläggande kan du kolla in min Rubiks ku...

Rad efterföljare Robot - PID Control - Android Setup

== > Detta projekt fick det 2: a priset på 2016 Robotics tävling.Tack för alla röster ;-)Syftet med detta projekt är att bygga en rad efterföljare Robot med PID control. Vi kommer också använda en Android-enhet till lätt setup de huvudsakliga kontrol...

Servo kontrollerad marmor labyrint

Detta är version av den klassiska marmor labyrint (det finns val i sökvägen), där pan och tilt styrs av hobby servon. Med servon, kan du arbeta i labyrinten med en R/C-styrenhet eller en PC etc.Vi byggde en för att användas med TeleToyland, och du ka...

Rubiks kuben Solver

Så är här ett projekt jag har jobbat på ett tag...Denna robot som kan lösa en Rubiks kub med Arduino.Jag lärde mig hur man löser en Rubiks kub förra året, och jag var också till Arduino, så småningom slutade jag upp med en idé att göra min egen Rubik...

1: a någonsin dum uppfinning konkurrens vinnare

Grattis till Alex Mindstormcreator (http://www.youtube.com/user/Mindstormsc reator) för att vinna tävlingen dum uppfinning med hans 1 × 1 x 1 Problemlösaren uppfinning!Som en del av priset får Alex en cameo i dumma uppfinnaren komisk!http://www.stupi...

Hur man gör en trä repet pussel

Jag gjorde en körning av dessa två ring pussel ungefär tre år sedan, och devar ganska populära som presenter. Glädjen är, när du vet hemligheten, du vill titta på andra labor över den. Visar sig vi är alla sickos...Jag borrade ett 35mm hål i ansiktet...

Miniräknare TI 83 / 83 + SE/84 / 84 + SE tutorial lektion 1: grunderna

Hey, det är jag, Sorunome!Som några av er kanske redan vet, älskar jag programmering.Min första programmering plattform var min grafisk kalkylator så jag gör nu en tutorial för det!Jag hoppas jag kunna förklara allt väl.Åh, och glöm inte att kommente...

Bluetooth ullig Hat

Så det blir mot vintermånaderna (här i Storbritannien): det handlar om nu när jag brukar börja bära ulliga beanie hattar för att hålla öronen petite varma under angrepp att Moder natur ger denna tid på året. Jag också vilja prata ganska ofta i telefo...

Computational Millennium - utvecklingen av en Drömfångare lykta

Jag började jobba med forskargruppen vid Autodesk med Dreamcatcher ca 2 år sedan.Då var jag med det för att utforma rymdfarkoster.Sedan dess har jag lärt mig att älska den här mjukvaran redskap eftersom det tillåter mig att utforska tusentals mönster...

NAAG XY

NAAG XY, 201514' x 8' x 4'Gabriel L Dunne http://gabrieldunne.comVishal K Dar http://vishalkdar.comEPS-foam, gips i paris, dator, anpassade programvara, projektorerDetta Instructable är en dokumentation av processen att skapa "NAAG XY" av Gabrie...

Pythagoras Paradox

Jag har alltid haft ett bra pussel. Den sammansatta bilden är av samma pusslet ihop två olika sätt. Båda är rutor med de sidorna är summorna av en stor triangel och en liten triangel hypotenuses. (Jag har avsiktligt lämnat luckor mellan de olika bita...

Tensegrity Goes Big For Burning Man

Pjäsen heter 'Kiralitet', menande "handanvändning", och är en storskalig tensegrity skulptur som ritades och byggdes för Burning Man 2015 under loppet av fyra månader. Det byggdes på plats av en hängiven besättning på 8, med en total frivillig b...

Elit farliga anpassade knappsatsen

Jag har spelat den premien Beta av Elite farliga. Det är en bra spel även det dess nuvarande form, men som de flesta spel om dess typ. det finns massor av knappar att komma ihåg. Något du kommer att använda hela tiden, andra inte så mycket. För att h...

Mjölk låda förvaring på vägg

mjölk lådor har länge varit en lagringslösning för milkmen, högskolestudenter och posten samlare. De är en nästan perfekt bit av design: de är modulära, de stack prydligt, de har inbyggda handtag och de är gjorda av en stark, vattentät, Billigt och a...

Silver, guld och saphire ring

efter en del förfrågningar fick jag äntligen tid att göra en fullständig instructable om hur jag gjorde ringen jag gav min flickvän för vår ett års jubileum. Jag har tyvärr inte råd att göra det med silver och guld igen (och det skulle döda några av...

EVB - Rubic's Cube Solver

EVB är en sköld (eller kallas Kap) för Beaglebone svart (BBB). Det stöder till fullo LEGO® MINDSTORMS® EV3 system, med både hård- och mjukvara! EVB är kompatibel med alla LEGO® sensorer precis som EV3 tegel. 100% kompatibel! Det låter EV3 Virtual Mac...