nun... wie gesagt, bis zur Bewegung des Servo ist alles scheints zu klappen. Ich bekomme nur keine Ausgabe ob Rechts oder Links.Code:#define servoPin 10 #define trigPin A1 #define echoPin A2 #include <Servo.h> int b; int c; int pos; Servo scanservo; void setup() { scanservo.attach(servoPin); Serial.begin(9600); Serial.println("bereit"); pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); scanservo.attach(servoPin); } int range() { int duration; digitalWrite(trigPin, HIGH); delay(100); digitalWrite (trigPin, LOW); duration = pulseIn(echoPin, HIGH); delay (50); //duration => cm return duration/58.2; } ///////////////////////////////////////////////////////////////// void loop() { Serial.println(range()); int a = range(); if (a <=5) { Serial.println("Stop"); for(pos=90;pos>=10;pos-=1) { scanservo.write(pos); } delay(1500); int b= range(); delay(600); //Links// for(pos=10;pos<169; pos+=1) { scanservo.write(pos); } delay(1500); int c= range(); delay(600); //rechts// for (pos=170;pos>=90; pos-=1) { scanservo.write(pos); } delay(1000); scanservo.write(90); delay(20); if (b<c) { //motoren links Serial.println("links"); delay(200); } else if (c<b) { //motor rechts Serial.println("rechts"); delay(200); } else if (c=b) { //rückwärts Serial.println("rückwärts"); delay(200); } else { //go Serial.println("go"); } } }
Lesezeichen