-
Strecke abmessen
Also:
mein Asuro fährt schon mal ner linie nach.
jetzt möcht ich mal wissen wie des mit der Odometrie funktioniert
dh.: codes posten......
ich möchte dass mein Asuro 1m der linie nach fährt und dann anhält.
bekommt man das hin oder is dass viel zu schwierig.
PS: ich habe mich noch nicht mit [highlight=red:4c464ec6be]odometrie[/highlight:4c464ec6be] befasst. ich blicks also auf keinem auge
#-o
-
copy/paste bringt nichts.
also lern lieber erst mit der odometrie umzugehen.
(1) ob helll/dunkel messen, und in einer bariable status speichern
//while schleife die ungefähr so auschaugt while(strecke < sollstrecke):
(2) linienssnore auslesen, und entsprechend handeln
(3) odometrie mit encode[left] auslesen.
(4) je nachdem ob jetzt andere farbe als in status strekcke inkrementiern oder unverändert lassen
(5) status neu setzen
ist etwas unverständlich oder?
möglicherweise verstehst du das besser, wenn du dir die go funktion mal genauer anschasut.
im prinzip brauchst du ja die go funktion, nbur dass er halt der linie nachfahren soll.
mfg EDH
-
-
also codes posten geht gar nicht, das ist richtig... bevor du dich mit go befasst, sieh dir erstmal die anleitungn von edh an. und wenn du dazu fragen hast dann sag bescheid =)
-
ihr sollt mir nicht den fertigen code geben sondern die anweisung die ich reinschreiben soll......äm so wie
encode[left]
was macht des?
-
in der variable encoder[left] sind die seit dem aufruf von encoder_init() gezählten schwarz-weiss-übergänge von dem linken rad gespeichert.
-
muss ich des einfach als variable einsetzten....(davor Encoder_Init(); is kla)?
-
wenn du Encoder_Init() aufrufst, wird die odometrie via interrupt auslelesen.
d.h. encoder[left] ist eine ganz normale variable
-
äm was is da falsch?
Code:
#include "asuro.h"
int main(void)
{
Init();
Encoder_Init();
while(encoder[left]<1000)
{
MotorDir(FWD,FWD);
MotorSpeed(130,125);
}
return 0;
}
-
sry- habs schon
left -> LEFT