xtremecoder
13.04.2008, 16:08
Hallo RN-Crew!
Ich weis, es gibt bereits unzählige Threads zum Thema Linienverfolgung in diesem Thema, aber leider habe ich keines gefunden, in das ich meine Frage stecken könnte^^
also, was solls^^
zu meiner frage:
ich habe gerade meinen asuro neu bekommen und hab meine ersten programme schon geschrieben. Nun bin ich an einer Linienverfolgung dran, (schwarze linie auf weißem grund)
Ich weis nicht wieso, aber mein asuro macht einfach nicht das was ich im programm von ihm will.
Es könnte sein dass ich mich im programmieren vertan habe, ich weis aber nicht was im code falsch sein sollte.
nun denn.
als erstes filtere ich softwaretechnisch das umgebungslicht vom diodenlicht, dann kommt erst das mit den motoren.
Code:
#include "asuro.h"
#define GESCHW 150
void main(){
int lData[2];
int i, donl, doffl, donr, doffr, l, r;
Init();
MotorDir(FWD,FWD);
while(1)
{
FrontLED(OFF); // Umgebungslicht filtern
LineData(lData); //
doffl = (lData[0]); //
doffr = (lData[1]); //
FrontLED(ON); //
LineData(lData); //
donl = (lData[0]); //
donr = (lData[1]); //
l = donl - doffl; //
r = donr - doffr; // r und l sind nun die werte von T9 und T10 mit gefiltertem Umgebungslicht
i = (l+r)/2;
if (l>r)
{
MotorSpeed(GESCHW +i, GESCHW -i);
}
else
{
MotorSpeed(GESCHW -i, GESCHW +i);
}
}
return 0;
}
Findet ihr hier etwas das ich übersehe?
vielen vielen dank!!
-xtremecoder
Ich weis, es gibt bereits unzählige Threads zum Thema Linienverfolgung in diesem Thema, aber leider habe ich keines gefunden, in das ich meine Frage stecken könnte^^
also, was solls^^
zu meiner frage:
ich habe gerade meinen asuro neu bekommen und hab meine ersten programme schon geschrieben. Nun bin ich an einer Linienverfolgung dran, (schwarze linie auf weißem grund)
Ich weis nicht wieso, aber mein asuro macht einfach nicht das was ich im programm von ihm will.
Es könnte sein dass ich mich im programmieren vertan habe, ich weis aber nicht was im code falsch sein sollte.
nun denn.
als erstes filtere ich softwaretechnisch das umgebungslicht vom diodenlicht, dann kommt erst das mit den motoren.
Code:
#include "asuro.h"
#define GESCHW 150
void main(){
int lData[2];
int i, donl, doffl, donr, doffr, l, r;
Init();
MotorDir(FWD,FWD);
while(1)
{
FrontLED(OFF); // Umgebungslicht filtern
LineData(lData); //
doffl = (lData[0]); //
doffr = (lData[1]); //
FrontLED(ON); //
LineData(lData); //
donl = (lData[0]); //
donr = (lData[1]); //
l = donl - doffl; //
r = donr - doffr; // r und l sind nun die werte von T9 und T10 mit gefiltertem Umgebungslicht
i = (l+r)/2;
if (l>r)
{
MotorSpeed(GESCHW +i, GESCHW -i);
}
else
{
MotorSpeed(GESCHW -i, GESCHW +i);
}
}
return 0;
}
Findet ihr hier etwas das ich übersehe?
vielen vielen dank!!
-xtremecoder