Ollowain
18.10.2009, 22:31
Hallo allerseits,
ich steh gerade vor folgendem Problem. Der Asuro soll, wenn die Linie verlassen sollte (data[0] > x && data[1] > x ; das mit den werten funktioniert schon das Problem liegt wo anders), den Boden absuchen (links drehen, rechts drehen, vorwärts fahren und wieder drehen). Sobald er wieder auf der Linie ist soll er aufhören zu drehen oder was auch immer und ganz normal mit der while-schleife (Linienverfolgung) weitermachen. Bin leider nicht so erfahren in sachen programmieren. Kann man eine while schleife in einer while schleife machen? Hier mal der "Such-Code":
if (T9>700 && T10>700) // Werte wenn beide Liniensensoren über weiß sind => Linie suchen
{
MotorDir(FWD,FWD);
MotorSpeed(0,150);
for (i=0; i<=1000; i++)
{Sleep(72);}
MotorDir(FWD,FWD);
MotorSpeed(150,0);
for (i=0; i<=2000; i++)
{Sleep(72);}
MotorDir(FWD,FWD);
MotorSpeed(0,150);
for (i=0; i<=100; i++)
{Sleep(72);}
MotorDir(FWD,FWD);
MotorSpeed(150,150);
for (i=0; i<=500; i++)
{Sleep(72);}
}
müsste es heißen: while(T9>700 && T10>700) ?
ich steh gerade vor folgendem Problem. Der Asuro soll, wenn die Linie verlassen sollte (data[0] > x && data[1] > x ; das mit den werten funktioniert schon das Problem liegt wo anders), den Boden absuchen (links drehen, rechts drehen, vorwärts fahren und wieder drehen). Sobald er wieder auf der Linie ist soll er aufhören zu drehen oder was auch immer und ganz normal mit der while-schleife (Linienverfolgung) weitermachen. Bin leider nicht so erfahren in sachen programmieren. Kann man eine while schleife in einer while schleife machen? Hier mal der "Such-Code":
if (T9>700 && T10>700) // Werte wenn beide Liniensensoren über weiß sind => Linie suchen
{
MotorDir(FWD,FWD);
MotorSpeed(0,150);
for (i=0; i<=1000; i++)
{Sleep(72);}
MotorDir(FWD,FWD);
MotorSpeed(150,0);
for (i=0; i<=2000; i++)
{Sleep(72);}
MotorDir(FWD,FWD);
MotorSpeed(0,150);
for (i=0; i<=100; i++)
{Sleep(72);}
MotorDir(FWD,FWD);
MotorSpeed(150,150);
for (i=0; i<=500; i++)
{Sleep(72);}
}
müsste es heißen: while(T9>700 && T10>700) ?