(w / Video) Fundamentele Arduino Robot, lichte Seeker! (7 / 8 stap)

Stap 7: Definitieve Code


/****************************************************************************************************************
* Programma voor een eenvoudige lichte zoeken Robot.
* gemaakt door: Anuj
* (c) copyright
*
* Robotic base moet omvat differentiële aandrijving.
*
* Fysieke installatie:
* Twee LDRs aangesloten op grond en analoge pin 1(Right) en analoge pin 2(left)
* basis van NPN-Transistors op pinnen 11(right) en 12(left).
*
*
******************************************************************************************************************/
Met behulp van de Arduino Duemilinove

PIN definities - hecht een variabele aan een pin.
Const int RightMotor = 2; Deze pin wordt gebruikt om in- of uitschakelen van de juiste motor. Verbonden aan de basis van een NPN-transistor.
Const int LeftMotor = 3; Deze pin wordt gebruikt om in- of uitschakelen van de linker motor. Verbonden aan de basis van een NPN-transistor.
Const int RightSensor = 1; Deze pin wordt gebruikt om te lezen van de waarde van de recht-Sensor.
Const int LeftSensor = 2; Deze pin wordt gebruikt om de waarde van de Sensor links lezen.

Variabele definities

int SensorLeft; Deze slaat de waarde van de pin van de Sensor van de links te gebruiken later in de schets
int SensorRight; Deze slaat de waarde van de pin van de Sensor van het recht gebruik later in de schets
int SensorDifference; Deze waarde wordt gebruikt om te bepalen van het verschil tussen links en rechts

de Setup-methode wordt uitgevoerd zodra wanneer het programma wordt uitgevoerd. Wanneer de
Arduino wordt teruggesteld, de Setup wordt opnieuw uitgevoerd.

VOID Setup {}

pinMode (LeftMotor, uitvoer); Hiermee definieert u deze pin als uitgang. De Arduino zal schrijf waarden aan deze pin.
pinMode (RightMotor, uitvoer); Hiermee definieert u deze pin als uitgang. De Arduino zal schrijf waarden aan deze pin.
pinMode (LeftSensor, INPUT); Hiermee definieert u deze pin als input. De Arduino leest waarden uit deze pin.
pinMode (RightSensor, INPUT); Hiermee definieert u deze pin als input. De Arduino leest waarden uit deze pin.
digitalWrite (A1, hoge); Maakt een interne pullup weerstand
digitalWrite (A2, hoge); Maakt een interne pullup weerstand
Serial.begin(9600); Kan een seriële verbinding met behulp van de Arduino USB of UART (pinnen 0 & 1). Merk op dat de baud-rate is ingesteld op 9600
Serial.println ("\nBeginning-licht op zoek naar gedrag"); Aan het eind van de void setup zo geplaatst dat het is loopt eenmaal, vlak voor de void loop
}

de loop-methode wordt uitgevoerd over en weer,
zolang de Arduino macht heeft

void loop {}
SensorLeft = 1023 - analogRead(LeftSensor); Dit leest de waarde van de sensor, dan slaat het op het bijbehorende gehele getal.
delay(1);
SensorRight = 1023 - analogRead(RightSensor); Dit leest de waarde van de sensor, dan slaat het op het bijbehorende gehele getal.
delay(1);
SensorDifference = abs (SensorLeft - SensorRight); Dit berekent het verschil tussen de twee sensoren en slaat het op een geheel getal.

Dit gedeelte van de schets wordt gebruikt voor het afdrukken van de waarden van de
sensoren door middel van seriële naar de computer. Nuttig voor het bepalen van
Als de sensoren werken en als de code ook goed werkt.

Serial.Print ("Sensor links ="); De tekst binnen de aanhalingstekens wordt afgedrukt.
Serial.Print(SensorLeft); Wordt de waarde van de Sensor links afgedrukt.
Serial.Print("\t"); Wordt een tabblad (spatie) afgedrukt.
Serial.Print ("Sensor rechts ="); De tekst binnen de aanhalingstekens wordt afgedrukt.
Serial.Print(SensorRight); Drukt de waarde van de recht-Sensor.
Serial.Print("\t"); Wordt een tabblad (spatie) afgedrukt.

Dit gedeelte van de schets is wat interperets eigenlijk de gegevens en voert de motoren dienovereenkomstig.

Als (SensorLeft > SensorRight & & SensorDifference > 75) {/ / Dit is geïnterpreteerd alsof de linker sensor meer leest licht dan de rechts-Sensor, dit doen:
digitalWrite (RightMotor, hoge); Dit wordt gebruikt voor linksaf. Aankondiging van de
digitalWrite (LeftMotor, laag); tegenover motor loopt naar linksaf.
Serial.println("left"); Dit drukt links wanneer de robot zou eigenlijk linksaf.
}

Als (SensorLeft < SensorRight & & SensorDifference > 75) {/ / Dit is geïnterpreteerd alsof de linker sensor minder leest licht dan de rechts-Sensor, dit doen:
digitalWrite (RightMotor, laag); Dit wordt gebruikt om turn Right. Aankondiging van de
digitalWrite (LeftMotor, hoge); tegenover motor loopt naar rechts.
Serial.println("right"); Dit drukt recht wanneer de robot zou eigenlijk turn Right.
}

else if (SensorDifference < 75) {/ / Dit is geïnterpreteerd alsof het verschil tussen de twee sensoren onder 125 (Experiment is aan onze sensoren), dit doen:
digitalWrite (RightMotor, hoge); Dit wordt gebruikt om rechtdoor. Aankondiging
digitalWrite (LeftMotor, hoge); beide motoren zijn ingeschakeld om vooruit te gaan.
Serial.println("Forward"); Dit drukt Forward wanneer de robot eigenlijk vooruit zou gaan.
}
Serial.Print("\n");
}

Gerelateerde Artikelen

RC auto naar autonome Arduino Robot

RC auto naar autonome Arduino Robot

Hebt u ooit gewenst om te bouwen van een eenvoudige autonome Arduino robot? Ik werd geïnspireerd om het bouwen van een fundamentele Arduino robot om te helpen mijn begrip van de Arduino, de Arduino IDE, en de werking van de ultrasone sensoren en moto
Ben - een licht volgende Breadboard Arduino Robot

Ben - een licht volgende Breadboard Arduino Robot

Ben het licht volgende Breadboard Arduino Robot is de tweede robot die ik gemaakt heb om te helpen robotica aan middelbare scholieren in een klasse die ik vrijwillig leren onderwijzen. De eerste robot heeft ook zijn eigen Instructable die kan hier wo
Maken van een Arduino gecontroleerd licht-volgende bloem Bot

Maken van een Arduino gecontroleerd licht-volgende bloem Bot

In dit project van Arduino gebaseerde, maakt u een "biomimetische," of biologie-geïnspireerde, bloem die een lichtbron volgt. U heeft waarschijnlijk gezien dit probleem in uw kamerplanten! Planten vereisen zonlicht te groeien en bloeien, en &quo
Arduino Robot V2 (snel) ook stem gecontroleerde

Arduino Robot V2 (snel) ook stem gecontroleerde

Dit is mijn tweede versie van mijn arduino robot na 'Build uw eerste robot'. Mijn tweede versie is enigszins ingewikkeld in vergelijking met mijn ene maar biedt betere mogelijkheden. In dit instructable ga ik om u te tonen hoe het bouwen van een snel
RC Truck aan Arduino Robot w / meerdere sensoren

RC Truck aan Arduino Robot w / meerdere sensoren

dit instructable heeft betrekking op de omzetting van een RC vrachtwagen in een gecontroleerde Arduino robot. Mijn bedoeling toen begin van dit project was A) om meer te leren over Arduino en programmering B) bouwen een betrouwbare low-cost platform
Arduino gecontroleerd licht dimmer

Arduino gecontroleerd licht dimmer

Waarschuwing: Sommige mensen proberen om dit met een optocoupler met zerocrossing coz rechts "dat is beter"? Sommigen horen zelfs in elektronicawinkels, het is beter om te gebruiken dergelijke een optocoupler. VERKEERDE. Dit werkt alleen met een
James - uw eerste Arduino Robot

James - uw eerste Arduino Robot

voor meer Tutorials van robotica, zie mijn website hier: http://www.duino-robotics.com/Voor geweldige video's over robots en 3D printen gaan hier: http://www.youtube.com/channel/UC340dy5bmr6sLpyRh5qYwrgBewerken:Dank u zo veel iedereen om voor James i
Arduino Robot voor de laagste kosten

Arduino Robot voor de laagste kosten

MIJ ZIEN OP DE NYC MAKER FAIRE!Het begon allemaal met dit:Arduino Robot uitdaging: Hoe goedkoop kunt u een robot met behulp van een Arduino voor 5e klassers maken?Ik hoop dat dit instructable een bepaalde elegantie toe aan haar eenvoud heeft en zal u
Tyco RC Arduino Robot

Tyco RC Arduino Robot

wilde Maak je eigen robot, maar kon niet veroorloven de fancy H-Bridge IC's of uw eigen PCB etch? Wil je een snelle en vuile methode van het maken van uw eigen wielen robot? Vervolgens u bent in geluk, maar als je wilt om uw eigen robot wielen en een
Arduino Robot Tutorial

Arduino Robot Tutorial

Ik zocht de Instructable database naar een tutorial voor de officiële Arduino Robot, maar ik kon niet vinden een! Zo gek ik deze tutorial om anderen die hulp met hun nieuwe Arduino Robot een tikkeltje nodig beetje te helpen.Stap 1: Instellen van uw R
Johnny5 Arduino Robot DfRobotshop rover met afstandsbediening html interface

Johnny5 Arduino Robot DfRobotshop rover met afstandsbediening html interface

In deze post ik stap voor stap uitleggen hoe ik het opbouwen van een Arduino Robot gebaseerd en programmeren met Javascript. Ik uitleggen welke ontwerpkeuzen ik gemaakt, welke kaders en technologieën die ik gebruikt en hoe ik program en de robot geco
Gids voor beginners aan de opbouw van de Arduino robots met Bluetooth en Android

Gids voor beginners aan de opbouw van de Arduino robots met Bluetooth en Android

In deze tutorial gaan we om te gaan over het bouwen van een Arduino robot die kan worden aangestuurd via bluetooth met een Android telefoon/tablet. Dit is een beginnersgids die gaat kort over het proces van bedrading en programmeren van uw robot.Stap
Eenvoudige 3D afgedrukt Arduino Robot

Eenvoudige 3D afgedrukt Arduino Robot

Wie niet wil om een robot te bouwen? Als een kind droomde ik robots te bouwen. Nu, iedereen van elke leeftijd met slechts een beetje kennis kan bouwen met een eenvoudige robot! Ik zal u tonen hoe dat te doen.De RobotDeze robot heeft een 3D gedrukte c
Temperatuur opnemen Arduino Robot

Temperatuur opnemen Arduino Robot

mijn zoon en ik maakte een kleine arduino robot die temperatuur registreert. Hij wilde me tot het opstellen van een robot, ik wilde om te experimenteren met knipperende LEDs doorgeven van gegevens, zodat een plan was uitgekomen. De manier waarop het