Light Following Drawbot (8 / 11 steg)
Steg 8: Steg 8: testa de nya förbindelserna med final koden
int LDR0 = A2; höger
int LDR1 = A3; vänster
int tröskeln.
int led1 = 4;
int potent = A0;
void setup() {
lett och potentiometer
pinMode (led1, produktionen);
pinMode (potent, indata);
UppsΣttningskanal A - höger
pinMode (12, OUTPUT); Initierar Motor kanal A stift
pinMode (9, OUTPUT); Initierar broms kanal A stift
UppsΣttningskanal B - vänster
pinMode (13, OUTPUT); Initierar Motor kanal B pin
pinMode (8, OUTPUT); Initierar broms kanal B pin
LDR
pinMode (LDR0, indata);
pinMode (LDR1, indata);
Serial.BEGIN(9600);
}
void loop() {
tröskel = analogRead(potent);
int valueLDR0 = analogRead(LDR0);
int valueLDR1 = analogRead(LDR1) + 200.
om (tröskelvärde > valueLDR0 + 50 & & tröskel > valueLDR1 + 50) {
digitalWrite (4, hög). slå på led
digitalWrite 12, låg.
digitalWrite (9, låg).
analogWrite (3, 200);
digitalWrite 13, låg.
digitalWrite 8, låg.
analogWrite (11, 200);
Delay(300);
om (valueLDR0 > tröskel || valueLDR1 > tröskel) {
om (valueLDR0 > valueLDR1) {
höger
digitalWrite 12, låg.
digitalWrite (9, låg).
analogWrite (3, 200);
vänster
digitalWrite 13, låg.
digitalWrite 8, låg.
analogWrite (11, 20);
Delay(200);
analogWrite (11, 200);
Delay(500);
} else om (valueLDR1 > valueLDR0) {
höger
digitalWrite 12, låg.
digitalWrite (9, låg).
analogWrite (3, 20);
vänster
digitalWrite 13, låg.
digitalWrite 8, låg.
analogWrite (11, 200);
Delay(200);
analogWrite (3, 200);
Delay(500);
}
}
} annat {
digitalWrite (9, hög). stoppa rätt motor
digitalWrite 8, hög. stoppa vänster motor
digitalWrite (4, låg). stänga av led
}
Läs värden
Serial.Print(valueLDR0);
Serial.Print("\t");
Serial.Print(valueLDR1);
Serial.Print("\t");
Serial.println(Threshold);
}