Labyrint Problemlösaren Robot, med artificiell intelligens med Arduino (8 / 10 steg)

Steg 8: Andra Pass: lösa labyrinten så fort som möjligt!

Huvudprogrammet: loop, är enkla sådär:

void loop()
{

ledBlink(1);

readLFSsensors();

mazeSolve(); Första passet att lösa labyrinten

ledBlink(2);

samtidigt (digitalRead(buttonPin) {}

pathIndex = 0;

status = 0;

mazeOptimization(); Andra Pass: springa labyrinten så fort som möjligt

ledBlink(3);

samtidigt (digitalRead(buttonPin) {}

läge = stoppad;

status = 0; 1. passera

pathIndex = 0;

pathLength = 0;

}

Så, när första passet avslutas, vad vi måste göra det är bara foder roboten med optimerad sökvägen matrisen. Det kommer att börja springa och när en korsning finns, det nu kommer att definiera vad man ska göra baserat på vad det lagras på väg [].

För att kommandot vad gå, skapades en ny funktion mazeTurn(path[]).

void mazeOptimization (void)
{

medan (! status)

{

readLFSsensors();

Switch (läge)

{

fall FOLLOWING_LINE:

followingLine();

bryta;

fall CONT_LINE:

om (pathIndex > = pathLength) mazeEnd ();

annat {mazeTurn (path[pathIndex]); pathIndex ++;}

bryta;

fall LEFT_TURN:

om (pathIndex > = pathLength) mazeEnd ();

annat {mazeTurn (path[pathIndex]); pathIndex ++;}

bryta;

fall RIGHT_TURN:

om (pathIndex > = pathLength) mazeEnd ();

annat {mazeTurn (sökväg [pathIndex]); pathIndex ++;}

bryta;

}

}

}


Funktionen mazeTurn (path[]) kommer att vara:

void mazeTurn (char dir)
{

Switch(Dir)

{

ärende 'L': / / sväng vänster

goAndTurn (vänster, 90);

bryta;

"R" i mål: / / sväng höger

goAndTurn (rätt, 90).

bryta;

"B" i mål: / / slå tillbaka

goAndTurn (rätt, 800).

bryta;

fallet ": / / gå rakt

runExtraInch();

bryta;

}

}


Andra passet är gjort!

Den video nedan visar det fullständiga exemplet arbetade här, första och andra passet:

Nedan Arduino koden används på detta Instructable:

Se Steg
Relaterade Ämnen

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...

Arduino talande Robot baserad artificiell intelligens

Detta projekt kommer att göra vår talande robot med artificiell intelligens-baserade Arduino.Än i våra tidigare projekt gjort vi vår robot vi checkade in telefonens röstkommando.Du kan se det här.Detta projekt att utveckla vår robot, röstkommandon ko...

Grundläggande raden efter Robot med Arduino

09/07/2015Det har varit några år eftersom vi Ursprungligen postat denna grundläggande linje följande Robot med Arduino handledning, och det verkar så många människor tyckte att det bra att vi ska skicka en uppdatering som löper nuvarande Arduino bibl...

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...

Bygga din Internet kontrollerad Video-Streaming Robot med Arduino och Raspberry Pi

< the Instructable och koden är redo. Njut! Lämna en kommentar med du feedback! >Jag är (aka LiquidCrystalDisplay / Itay), en 14 år gammal student från Israel lärande i Max Shein Junior High School för avancerad vetenskap och matematik. Jag gör dett...

Hur man gör en mobiltelefon och dator kontrolleras 3D tryckta Robot med Arduino - IoBot.

Om du letar efter ett sätt att kontrollera en Arduino baserade enheter, kommer att denna anvisning Visa dig hur man gör det genom att bygga enkla robot.IoBot kan styras med mobil och dator ansökan via LAN eller USB-kabel. Programmet körs på Android,...

Hinder att undvika Robot med arduino

HINDER - ATT UNDVIKA ROBOTEtt hinder att undvika ROBOT är en som kan undvika ett hinder med hjälp av ultraljud sensor och gå i sin egen väg. Med en skärbräda bifogas roboten kan du spela roliga inom en kort tid. En sådan är vad vi ska diskutera här....

2WD röst kontrollerat Robot med Arduino och BitVoicer Server

I detta Instructable ska jag visa hur man bygger en 2WD röststyrd robot. Även om jag kontrollera endast DC motorer om du vill flytta roboten, samma tillvägagångssätt kan användas till röststyrning stegmotorer och servomotorer, så om du planerar att b...

Realtid ansikte spårning Robot med Arduino och Matlab

Realtid ansiktsspårning avser uppgiften att lokalisera ansikten i en videoström och spårning hittas eller igenkända ansikten. Numera finns det många verkliga tillämpningar av ansiktsavkänning och andra tekniker för bildbehandling. Det finns många alg...

Kontrollera en Roomba robot med Arduino och Android

(Om du gillar detta Instructable, glöm inte att rösta på den - ovan: högra hörnet flaggan. Det tävlar på AUTOMATION tävling. Tack så mycket! ;-)Som en av robotteknik tävling 2016 vinnarna här på Instructables fick jag som pris en iRobot Roomba Create...

Avlägsen kontrollerade robot med Arduino och T.V. remote

Denna fjärrkontroll bil kan flyttas runt med praktiskt taget alla slags remote såsom TV, AC etc.Det använder sig av det faktum att fjärrkontrollen avger IR(infrared).Den här egenskapen är gjord använda av med hjälp av en IR-mottagare, vilket är en my...

Gör en Robot med Arduino för nybörjare

Steg 1: Material som behövs Tamiya spår och rullar in församling ($7,95 på Pololu)Tamiya 70168 dubbla växellåda Kit ($9,25 på Pololu)L298N dubbla H Bridge ($3,65 på Amazon och kan vara mycket lägre på ebay)4AA batterihållare (används från trasig elek...

SainSmart InstaBots upprätt Rover (själv balansera Robot med Arduino)

Upprätt Rover är en självbalanserande robot som ritades av SainSmart. De verkligen gjort det enkelt. Som ni ser, finns det bara 8 ledningar på robot och 8 ledningar på handkontrollen. Så låt oss ta reda på hur det fungerar!DELAR I RUTAN3 x Potentiome...

Gest kontroll car(robot) med Arduino och Android(bluetooth)

Hej folk,Här är ett intressant projekt för alla er kreativa hjärnor ute. Vi ska bygga en android-telefon kontrollerade RC bil.Inget kunde vara mer fascinerande än avlägsen kontrollerade bilar. Denna använder en Bluetooth för kommunikation och acceler...

Extremt enkel linje efter Robot med Arduino

I detta Instructable ska vi bygga en enkel allmän linje efter arduinobot. Det kommer att finnas ett stort utrymme för kreativitet i detta Instructable.Roboten, i denna tutorial, drivs av 4 AA-batterier och är kunna följa svart eltejp av en vit yta.St...

Gör en självbalanserande Robot med Arduino UNO

Själv balansera Robot är mycket intressant. Många vänner runt omkring oss försökte göra en, men de encounted en hel del chanllenges bland annat bristen på strukturerna som lätt-till-montering, de lämpliga elektroniska kretsarna och program. Så jag be...

Billig Robot med Arduino

jag ville lära mig elektronik, Arduino programmering, och lödning så jag tänkte att jag skulle plocka en av Randys projekt och kopiera den.Jag slutade med en annan motor konfiguration. Min front motor pekar ner och vänder lite kvartalet växel som vän...

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...

Hur man har kul med Arduino (och bli en nörd i processen)

vill du tjäna din geek-kort - pronto? Låter komma igång! Denna guide börjar du på sökvägen till den mörka sidan med hjälp av öppen källkod Arduino utveckling och prototyping plattformen. Det kommer att introducera dig till mikrokontroller, komma igån...