Arduino Object vermijden Robot (3 / 4 stap)

Stap 3: De Code

Ik ben niet groot op het delen van mijn code, gewoon omdat het voor mijn setup is gepersonaliseerd en waarschijnlijk geen gebruik voor u en uw unieke opstelling heeft. Wilt u mijn code, verstuur me bij cgmalantonio en ik stuur u graag een kopie. Ik zal echter mijn werk in pseudo-code beschrijven zodat je het idee krijgt.

Laat het krijgen!

Ik wilde eerst een functie die de ultrasone sensor gebruiken zou om lezingen terwijl de servomotor draaide op 5 verschillende punten:
(0 = links / / 45 = Front left / / 90 = voorkant / / 135 = Front rechts / / 180 = rechts)

Scan {}
Ik gebruikte een eenvoudige for-lus te verplaatsen van de servo in stappen van 45, van 0 tot 180 (en een ander om het te brengen terug naar 0). Telkens wanneer het haar volgende punt het mijn "LowestNumber"-functie wordt opgeroepen en wordt de waarde ontvangen toegevoegd aan een array voor de 5 waarden bereikt ontvangen (rechts / links-front / front / recht-front / links).

zoiets als dit:
voor (int i = 0; ik < 180; i = i + 45) {}
myservo.write(i);
LowestNumber();
}
voor (int i = 180; ik > 0; i = i - 45) {}
myservo.write(i);
LowestNumber();
}

De LowestNumber-functie neemt in 3 lezingen, verdeelde 50 milliseconden uit elkaar, van de ultrasone sensor. De 3 lezingen worden vervolgens vergeleken tegen elkaar, en de laagste waarde (dichtst lezing) is geaccepteerd en wordt opgeslagen in een variabele (LowestNumberResult). Dit nummer wordt vervolgens opgeslagen in een matrix op basis van waar de servo is geplaatst. De ultrasone sensor is soms een beetje onvoorspelbaar dus ik graag 3 keer controleren. En gezien dat ik ben alleen bezorgd over het raken van iets, ik blijf het laagste getal.

Pak uw laagste nummer
een ultrasone =. Ranging(Inc)
delay(50)
b = ultrasone. Ranging(Inc)
delay(50)
c = ultrasone. Ranging(Inc)

Delay(50)
als (een > b).
een = b
Als (een > c)
een = c

Zodra alle 5 posities van de servomotor hebt verzameld een afstand van de ultrasone sensor, moeten we dan correct worden verwerkt door de posities.
}

Nu weten we de afstanden voor de locatie van de RIEM. We beginnen met het uitzoeken welke richting de grootste afstand is en als aan bepaalde voorwaarden wordt voldaan, gaan we in die richting.

Handvat {}

Aantal beperkingen waren als zodanig:

-alle richtingen groter zijn dan 20 inch
Maak zeker alle paden zijn duidelijk kan worden een aantal,
hoeft niet te worden 20 inch

-Als verst richting kleiner is dan de voorste positie + 10 inch (een aantal), vooruitgaan
gunste van de voorste richting betekent dat het gewoon niet weer
rond in cirkels in het midden van uw kamer

Ik voegde uiteindelijk een tweede verklaring, net als dit,
Als de voorkant duidelijk genoeg, ga naar voren tweemaal was te zeggen

-Als verst richting links, controleert u of linker voorpand is duidelijk
-Als niet duidelijk selectievakje rechts

-Als verst richting klopt, controleert u of rechter voorpand is duidelijk
-Als niet duidelijk selectievakje links

-Als verst richting wordt gelaten voorzijde, zorg ervoor dat links is duidelijk
-Als niet duidelijk selectievakje rechts

-Als verst richting rechts voor, maak zeker gelijk duidelijk is
-Als niet duidelijk selectievakje links

-Als alle richtingen zijn minder dan 20 we willen de OAR omdraaien en proberen nieuwe metingen
}

Extra {}

Ik heb sommige extra functies toegevoegd voor mijn 5 positieschakelaar.

Inschakelen
Wachten op invoer van
-Als u de OAR vanaf de voorkant te dicht nadert, het zal een back-up en schud haar hoofd terug en vierde
-Als u op een richting, het gaan in die richting
Klik op Centreren
-Start van een query, input 8 richtingen en het rijden in deze richtingen
Klik op opnieuw centreren
-rijdt autonoom en vermijdt muren/objecten
Center Klik een derde keer retourneert menu te beginnen

evenals sommige hoofd bochten van de servo wanneer een richting wordt geplukt (alsof de OAR waar onderzoekt its gonna zetten)

}

Gerelateerde Artikelen

Actobitty 2 wiel object vermijden robot

Actobitty 2 wiel object vermijden robot

Hallo iedereen.Het doel van dit project is om te bouwen van een Arduino robot die kan vermeden objecten op zijn manier. Het is gebaseerd op een Actobitty 2 wielen robot, een Arduino Uno microcontroller, een Arduino Motorschild en een ultrasone afstan
Goedkope 4WD object vermijden Robot met behulp van vier IR naderingssensoren...

Goedkope 4WD object vermijden Robot met behulp van vier IR naderingssensoren...

Dit is een goedkope basis vier motoren, vier sensoren, programmeerbare 8051 object vermijden robot met behulp van breadboad. Deze robot kan ook worden gebruikt als een lijn na robot alleen het veranderen van het programma. Ik installeerde twee batter
TurtleDuino Object vermijden Robot

TurtleDuino Object vermijden Robot

Hallo, in dit instructable ik zal tonen u stap voor stap hoe te bouwen van de TurtleDuino, een object vermijden robot, met een Arduino UNO microcrontroller aan boord. Ik ontwierp de TurtleDuino met behulp van materiaal van de hardware winkel (Home De
Arduino wall vermijden robot

Arduino wall vermijden robot

Dit instructable neemt zeer weinig met betrekking tot voorkennis.Als er gebieden die je het gevoel zou kunnen worden verbeterd of verduidelijkt, aarzel dan niet om bericht of opmerking en ik zal updaten.Hier zijn alle details die u nodig voor de prod
BASIC ARDUINO obstakel vermijden ROBOT

BASIC ARDUINO obstakel vermijden ROBOT

maken een eenvoudige arduino gebaseerde obstakel vermijden robotStap 1: vereisten BENODIGDE MATERIALEN1. natuurlijk Arduino Uno (een andere compatibele board) X 12. Chasis voor robot (ik gebruikte een van mijn broer's RC auto)3. een L293D Dual h-brug
LinKit één Object vermijden Robot

LinKit één Object vermijden Robot

Deze i'ble behandelt het vermijden van technieken van linkit één object.Zijn eenvoudig te maken van een object te vermijden met behulp van linkit een robot. HC-SR04 eerst verbinding te maken met linkit een dan verbinden aan linkit een doorgeven en te
Arduino obstakel vermijden Robot

Arduino obstakel vermijden Robot

De kerels van Hey,Materiaal:1 Arduino Microcontroller - http://www.robotshop.com/en/arduino-uno-usb-microc...2 parallax continu roterende Servos - http://www.robotshop.com/en/parallax-futaba-contin...1 180 graad Hi-Tec HS-422 Servo - http://www.robot
Vermijden Robot Arduino

Vermijden Robot Arduino

In de markt van robot, er zijn tal van slimme vermijden robot kit te koop, maar ik houd niet van om te kopen klaar kit, om oude rc auto speelgoed in opbergdoos is meer uitdaging. Het bouwen van een robot vermijden met behulp van het chassis. Mini con
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
Arduino obstakel te vermijden Robot

Arduino obstakel te vermijden Robot

In dit instructable ik zal u tonen hoe te maken van uw eigen obstakel te vermijden robot!We zullen de Arduino uno board en een ultrasone sensor gebruiken. Als de robot een object voor, met de hulp van een kleine servomotor, detecteert scant het het g
How to Build obstakel vermijden Robot voor Beginners met Arduino Tutorial

How to Build obstakel vermijden Robot voor Beginners met Arduino Tutorial

Deze Tutorial is voor iedereen aan de slag met arduino. Wij zullen bouwen obstakel te vermijden robot die gebruikmaakt van een ultrasone sensor voor HC SR-04 om objecten en 2 continu (360 graden) servo's aangesloten op een externe batterijvoeding te
YourDuino: Fundamentele Arduino-Compatible botsing-vermijden Robot

YourDuino: Fundamentele Arduino-Compatible botsing-vermijden Robot

Hoe het bouwen van een Basic Arduino-Compatible botsing-vermijden RobotOpmerking: Zie de beschikbare Arduino Software Test schetsen en botsing te vermijden Software hier (klik)Opmerking: Later moet u hebben de Arduino "IDE" software development
Hoe maak je een obstakel te vermijden Robot

Hoe maak je een obstakel te vermijden Robot

obstakel te vermijden robot is een eenvoudige robot die wordt beheerd door een arduino en wat het doet is dat het gewoon zwerft rond en vermijdt obstakels. Het detecteert de belemmeringen met een ultrasone sensor van HC-SR04 met andere woorden als de
Obstakel te vermijden Robot

Obstakel te vermijden Robot

Dit instructable is de schriftelijke versie van mijn "Arduino: hoe te bouwen een obstakel te vermijden Robot" Youtube-video die ik onlangs heb geüpload. Ik raden u om het te controleren.Dus, zonder dralen, laten we beginnen!Stap 1: Een chassis!