Hallo,
ich habe folgendes Problem mit meinem ASURO:
Meine Motoren drehen sich nicht richtig bei der Vorwärtsbewegung im folgenden Programm
Ich habe den Strom an den Motoren gemessen, hier ergab sich ein Wert von 1,45 V. Könnt ihr mir bei meinem Problem helfen?Code:#include "asuro.h"
#define STOP 50
/*asuro kann einem abgrund mittels der liniensensoren ausweichen und hindernissen mittels der kollisionstaster*/
int main(void)
{
while(1)
{
unsigned int lineData[2]; //array für die daten der liniensensoren
unsigned char running = TRUE;
unsigned char i; //laufvariable für die for-schleifen
unsigned char taste=0; //nimmt den wert der kollisionstaster auf
FrontLED(ON);
Sleep(255); //kurze pause, damit linedata die richtigen werte erfasst
LineData(lineData);
PollSwitch();
Sleep(50);
PollSwitch();
Sleep(50);
PollSwitch();
Sleep(50);
taste = PollSwitch();
if ((lineData[0] > STOP) && (lineData[1] > STOP) && (taste == 0)) //vorwärts falls kein hinderniss und kein abgrund
{
MotorDir(FWD,FWD);
MotorSpeed(255,255);
}
else //wenden falls abgrund
{
MotorSpeed(0,0); //stop
BackLED(ON,ON);
FrontLED(OFF);
StatusLED(RED);
Sleep(255);
for(i=0; i<100; i++) //kurz zurueck
{
MotorDir(RWD,RWD);
MotorSpeed(190,190);
Sleep(255);}
MotorSpeed(0,0);
for(i=0; i<170; i++) //wenden
{
MotorDir(FWD,RWD);
MotorSpeed(120,120);
Sleep(100);
}
MotorSpeed(0,0);
BackLED(OFF,OFF);
FrontLED(ON);
StatusLED(GREEN);
}
Sleep(100);
}
return 0;
}
mfg Hans
PS: Ein Video kommt auch noch......