billyboy
01.06.2010, 14:17
Hey
ich wollte mit dem Asuro einer Linie folgen und einem Hindernis ausweichen.
Die Linienverfolgung hab ich soweit auch hinbekommen, ich weiß jetzt allerdings nicht wie ich weitermachen kann das er wenn er gegen ein Objekt fährt erst kurz rückwarts und dann um das objekt herumfährt also quasi nen halbes rechteck.
#include "asuro.h"
#include <stdlib.h>
int main(void)
{
unsigned int lineData[2];
int korrektur = 5;
FrontLED(ON);
Init();
MotorDir(FWD,FWD);
while(1)
{
LineData(lineData);
unsigned char taste;
taste = PollSwitch();
if(taste>0)
{
MotorSpeed(0,0);
Sleep(255);
MotorDir(RWD,RWD);
MotorSpeed(255,255);
}
else
{
if(lineData[0]>lineData[1])
{
BackLED(ON,OFF);
MotorSpeed(150,90);
}
if(lineData[1]>lineData[0])
{
BackLED(OFF,ON);
MotorSpeed(90,150);
}
}
}
}
Hab erstmal gemacht das er nur Rückwärts fährt aber ich krieg es nicht hin mit dem Rechteck.
wär nett wenn ihr mir helfen könntet.
mfg
ich wollte mit dem Asuro einer Linie folgen und einem Hindernis ausweichen.
Die Linienverfolgung hab ich soweit auch hinbekommen, ich weiß jetzt allerdings nicht wie ich weitermachen kann das er wenn er gegen ein Objekt fährt erst kurz rückwarts und dann um das objekt herumfährt also quasi nen halbes rechteck.
#include "asuro.h"
#include <stdlib.h>
int main(void)
{
unsigned int lineData[2];
int korrektur = 5;
FrontLED(ON);
Init();
MotorDir(FWD,FWD);
while(1)
{
LineData(lineData);
unsigned char taste;
taste = PollSwitch();
if(taste>0)
{
MotorSpeed(0,0);
Sleep(255);
MotorDir(RWD,RWD);
MotorSpeed(255,255);
}
else
{
if(lineData[0]>lineData[1])
{
BackLED(ON,OFF);
MotorSpeed(150,90);
}
if(lineData[1]>lineData[0])
{
BackLED(OFF,ON);
MotorSpeed(90,150);
}
}
}
}
Hab erstmal gemacht das er nur Rückwärts fährt aber ich krieg es nicht hin mit dem Rechteck.
wär nett wenn ihr mir helfen könntet.
mfg