Hey also ich hab ein Problem mit der Linienverfolgung zw mehrere:
1. der linke Fototransistor gibt nicht den gleichen Wet wie der rechte aus so dass der Asuro immer leicht bzw stärker im Kreis fährt
2. erkennt er somit auch keine Linien um diese zu verfolgen
3. kann es auf an dem Programm liegen wen ja was muss ich ändern das es besser funktioniert.
Code:#include "asuro.h" int main(void) { int a; a=120; //Grundgeschwindigkeit int b; b=200; //Abiegegeschwindigkeit int c; // Zählfunktion c=0; int d; // Rückfahrzeit d=0; int e; //Rechenzeit e=10; unsigned Data[2]; Init(); while(1) {c++; if (PollSwitch()>0) { if (PollSwitch()==32/*rechter Taster gedrückt*/) //Kollisionstaster { MotorSpeed(b/*links*/,0/*rechts*/); StatusLED(RED) ;} //drehe nach rechts else if (PollSwitch()==1)//linkter Taster gedrückt { MotorSpeed(0/*links*/,b/*rechts*/); StatusLED(RED) ;} //drehe nach links else if(PollSwitch()!=0>1<32) { for(d=0;d<100;d++) {MotorDir(RWD,RWD); MotorSpeed(b,b); BackLED(ON,ON) ;} ;} ;} else {Init(); FrontLED(ON); LineData(Data); if(Data[0]<Data[1]) {MotorSpeed(a,b); /*Rechts*/ StatusLED(RED);} else if (Data[0]>Data[1]) {MotorSpeed(b,a); StatusLED(YELLOW);} /*Links*/ else if(Data[0]==Data[1]) {MotorSpeed (a,a); StatusLED(GREEN);} ;} ;} return(0); }
Ich hoffe ihr könnt mir helfen.
Mit freundlichen Grüßen
Max







Zitieren

Lesezeichen