Doolhof van Oplosser Robot, met behulp van kunstmatige intelligentie met Arduino (5 / 10 stap)

Stap 5: Uitvoering van het "Linker Hand op de muur" algoritme op Arduino Code


Zodra we de functie van de readLFSsensors() gewijzigd hebben zodat de extra 2 sensoren, kunnen we de lus functie als u de algoritme beschreven in de laatste stap opnieuw schrijven:

void loop

{

readLFSsensors();

schakelaar (modus)

{

Case NO_LINE:

motorStop();

goAndTurn (links), 180;

breken;

Case CONT_LINE:

runExtraInch();

readLFSsensors();

Als (modus == CONT_LINE) mazeEnd();

anders goAndTurn (links), 90; / / of is het een "T" of "Cross"). In beide gevallen gaat naar links

breken;

Case RIGHT_TURN:

runExtraInch();

readLFSsensors();

Als (modus == NO_LINE) goAndTurn (recht, 90);

breken;

Case LEFT_TURN:

goAndTurn (LEFT, 90);

breken;

Case FOLLOWING_LINE:

followingLine();

breken;

}

}


Enkele nieuwe functies wordt hier weergegeven.

followingLine() is hetzelfde gebruikt met de volgende regel Robot, waar als het alleen op een regel volgt is, het calculatePID() moet; en controle van de motoren afhankelijk van PID waarden: motorPIDcontrol();

runExtraInch(): Zal duwen de robot vooruit net een beetje. Hoeveel de robot wordt uitgevoerd zal afhangen van de tijd die u in de functie van de vertraging, gebruikt voordat u de motor om te stoppen met command.

VOID runExtraInch(void)

{

motorPIDcontrol();

delay(extraInch);

motorStop();

}


goAndTurn (richting, hoek): Deze speciale functie is belangrijk, omdat je niet kan draai de robot zoals snel je je realiseert dat het type snijpunt die u bent. Vergeet niet dat wij een differentiële Robot dat bij het maken van bochten, het "draait zich om haar bijl" en dus, om te verplaatsen 90o en continu volgen de lijn, het centrum van de wielen moet worden afgestemd op het midden van de kruising geprojecteerd. Zodra de lijn van censoren zijn voorsprong op de bijl, moet u de robot vooruit uitvoeren om te lijnen. De constante van tijd adjGoAndTurn moet worden aangepast afhankelijk van de afstand tussen de bijl en sensor lijn ("d"), de snelheid en de grootte van de wielen (Zie de afbeelding ter illustratie).

VOID goAndTurn (int richting, int graden)
{

motorPIDcontrol();

delay(adjGoAndTurn);

motorTurn (richting, graden);

}


Op dit punt is de robot in feite "oplossen van een doolhof"! U hebt alleen de "eerste Pass". Geen kwestie waar u in een doolhof, zal u het einde hebt bereikt.

Balg, een test van deze fase van het project:

Gerelateerde Artikelen

Arduino Robot praten op basis van kunstmatige intelligentie

Arduino Robot praten op basis van kunstmatige intelligentie

Dit project zal doen onze pratende robot met kunstmatige intelligentie gebaseerde Arduino.Dan wij in onze vorige project onze robot die we in de spraakopdrachten van de telefoon ingecheckt gemaakt.U kunt hier zien.Dit project dat we onze robot, spraa
Basic Line Na Robot met Arduino

Basic Line Na Robot met Arduino

09/07/2015Een paar jaar geleden dat we aanvankelijk gepost deze elementaire regel volgende Robot met Arduino tutorial, en lijkt zo veel mensen vonden het nuttig dat we een update die loopt van de huidige Arduino Bibliotheken, moet post bevat de nieuw
Maken van een Robot met Arduino voor Beginners

Maken van een Robot met Arduino voor Beginners

Stap 1: Materialen die nodig zijn Tamiya Track en wiel instellen vergadering ($7.95 op Pololu)Tamiya 70168 dubbele versnellingsbak Kit ($9.25 op Pololu)L298N Dual H Bridge ($3.65 bij Amazon en misschien wel veel lager bij ebay)4AA batterijhouder (geb
Hoe maak je een mobiele telefoon en Computer gecontroleerd 3D gedrukte Robot met Arduino - IoBot.

Hoe maak je een mobiele telefoon en Computer gecontroleerd 3D gedrukte Robot met Arduino - IoBot.

Als u op zoek bent naar een manier om een Arduino gebaseerde apparaten te controleren, zal deze instructie u tonen hoe om het te doen door het bouwen van eenvoudige robot.De IoBot kan worden gecontroleerd door mobiel en computer toepassing via LAN of
Obstakel te vermijden Robot met arduino

Obstakel te vermijden Robot met arduino

OBSTAKEL - VERMIJDEN ROBOTEen obstakel te vermijden ROBOT is een die kan een obstakel te vermijden met behulp van ultrasone sensor en navigeren in haar eigen pad. Met een breadboard gekoppeld aan de robot kunt u plezier spelen binnen een korte period
Real Time ' Face-Tracking Robot met Arduino en Matlab

Real Time ' Face-Tracking Robot met Arduino en Matlab

Real time ' face-tracking verwijst naar de taak van het opsporen van menselijke gezichten in een video-stream en bijhouden van de gedetecteerde of herkende gezichten. Er zijn tegenwoordig veel echte wereld toepassingen van gezichtsherkenning en ander
Externe gecontroleerde robot met Arduino en T.V. afstandsbediening

Externe gecontroleerde robot met Arduino en T.V. afstandsbediening

Deze externe gecontroleerde auto kan worden verplaatst met behulp van vrijwel elk soort ras zoals TV, AC enz.Het maakt gebruik van het feit dat de afstandsbediening IR(infrared) uitzendt.Deze eigenschap is gemaakt met behulp van een IR-ontvanger, die
2WD stem gecontroleerde Robot met Arduino en BitVoicer Server

2WD stem gecontroleerde Robot met Arduino en BitVoicer Server

In dit Instructable ga ik tonen hoe te om een 2WD spraakgestuurde robot te bouwen. Hoewel ik ben alleen gelijkstroommotoren als wilt verplaatsen de robot controle, dezelfde aanpak kan worden gebruikt voor de controle van de stem stappenmotoren en ser
Maak een zelfbalancerende Robot met Arduino UNO

Maak een zelfbalancerende Robot met Arduino UNO

Self balancing Robot is zeer interessant. Veel vrienden om ons heen wilden maken een, maar ze encounted alot van chanllenges met inbegrip van het ontbreken van de gemakkelijk-aan-de vergadering van structuren, de geschikte elektronische schakelingen
Gesture control car(robot) met Arduino en Android(bluetooth)

Gesture control car(robot) met Arduino en Android(bluetooth)

Hallo mensen,Hier is een interessant project voor alles wat je daar creatieve geesten. We gaan om een android telefoon gecontroleerde RC auto te bouwen.Niets zou zijn meer fascinerend dan extern gecontroleerde auto. Deze maakt gebruik van Bluetooth v
SainSmart InstaBots rechtop Rover (Self Balancing Robot met Arduino)

SainSmart InstaBots rechtop Rover (Self Balancing Robot met Arduino)

Rechtop Rover is een zelfbalancerende robot die werd ontworpen door SainSmart. Ze maakten het echt eenvoudig. Zoals u zien kunt, zijn er slechts 8 draden op de robot en 8 draden op de controller. Dus laten we het weten hoe het werkt!ONDERDELEN IN HET
Goedkope Robot met Arduino

Goedkope Robot met Arduino

ik wilde leren elektronika, Arduino, programmering, en het solderen dus ik dacht dat ik zou halen een van Randy's projecten en kopiëren.Ik beëindigde omhoog met een andere motor configuratie. Mijn voorste motor omlaag wijst en verandert een beetje kw
Uiterst eenvoudig Line Na Robot met Arduino

Uiterst eenvoudig Line Na Robot met Arduino

In dit Instructable gaan we om te bouwen van een eenvoudige generische lijn na arduinobot. Er zullen veel ruimte voor creativiteit in dit Instructable.De robot, in deze tutorial wordt gevoed off van 4 AA batterijen en kan volgen van zwarte isolatieta
Maak een eenvoudige draadloze RF robot met behulp van Arduino!

Maak een eenvoudige draadloze RF robot met behulp van Arduino!

UPDATE: IK HEB JOYSTICK-CONTROLE TOEGEVOEGD AAN DEZE ROBOT. GELIEVE TE VERWIJZEN NAAR DE STAP 7, ALS U WILT BEPALEN UW ROBOT VIA JOYSTICK.HalloDit is mijn eerste instructable en in deze tutorial, I 'm gonna Toon u hoe te bouwen van een eenvoudige dra