ist denke ich mal doch alles vorhanden:
Code:#include "asuro.h" #define SCHWELLEL 582 #define SCHWELLER 549 #define ANPASSUNG 10 #define LOW 0 #define HIGH 1 int main (void){ unsigned int data[2]; unsigned long int count=0; signed int status[2]={0,0}; signed int difference=0; signed int speed=200; int i=0; Init(); while(1){ switch(count) { case 0: MotorDir(FWD,FWD);speed=200;break; case 249: MotorDir(BREAK,BREAK); for(i=0;i<282;i++){Sleep(255);} MotorDir(FWD,BREAK);speed=200;count=250;break; case 330: MotorDir(BREAK,BREAK); } OdometrieData(data); if ((status[0]==LOW)&&(data[0]>SCHWELLEL+ANPASSUNG)) { status[0]=HIGH; difference++; count++; } if ((status[0]==HIGH)&&(data[0]<SCHWELLEL-ANPASSUNG)) { status[0]=LOW; difference++; count++; } if ((status[1]==LOW)&&(data[1]>SCHWELLER+ANPASSUNG)) { status[1]=HIGH; difference--; } if ((status[1]==HIGH)&&(data[1]<SCHWELLER-ANPASSUNG)) { status[1]=LOW; difference--; } if (difference<-speed)difference=-speed; if (difference>speed)difference=speed; if (difference>0) MotorSpeed(speed,speed++); else MotorSpeed(speed,speed--); } return 0; }







Zitieren

Lesezeichen