@pinsel120866
Helfen ist immer gut.
Hier wusste ich deshalb so gut Bescheid, da ich das Ding selbst erfunden hatte. Schande über mich
Gruß Sternthaler
Ups, wusste ich nicht - sorry. Thanx Sternthaler - wollte nur helfen...
@pinsel120866
Helfen ist immer gut.
Hier wusste ich deshalb so gut Bescheid, da ich das Ding selbst erfunden hatte. Schande über mich
Gruß Sternthaler
Lieber Asuro programieren als arbeiten gehen.
Guten Abend,
an den Code und die Daten komm ich leider vor Montag nicht. Anbei aber das, an was ich mich noch erinnere:
Die Werte lagen einmal zwischen 161 und 140 (links) und 135 und 108 (rechts) und bei dem andern links irgendwo bei 170 und rechts ungefähr bei 178.
Das Programm war recht einfach. Wir haben die GoTurn-Funktion genomme und abgeändert, denn die Asuros sollen nicht eine nur eine Zeitlang, sondern unbestimmte Zeit fahren. D.h. wir haben sämtliche Teile, die von der Variable distance abhingen gelöscht.
Unser Code hatte dann folgende Form:
void fahren (int richtung, int speed)
// der Teil der GoTurn Funktion, der fürs geradeausfahren sorgt
int main(void)
Init()
EncoderInit()
while(1)
fahren(1,200)
Vielen Dank schonmal für die Hilfe
Grüße
Romili
Hallo Romili,
die Werte sehen bei beiden Asuros noch ganz OK aus. 160 und 140 sind die Standardwerte in der Lib.
Deine niedrigeren 135/108-Werte deuten eventuell auf eine sehr gut leuchtende LED hin, da kleine Werte eine höhere Beleuchtung darstellen bei den Raddecodern. (Bei den Liniensensoren ist es anders rum.)
Die 170/?- 178/?-Werte machen auch einen guten Eindruck.
Wichtig ist, dass der Abstand zwischen .._LIGHT_.. und .._DARK_.. möglichst groß ist. Aber auch kleine Abstände sollten nicht zu einem Kreisverkehr führen. Höchstens zu einer nicht ganz so geraden Geraden, weil dann Farbwechsel auf den ODO-Scheiben nicht mehr unbedingt erkannt werden.
Bleibt also doch erst mal nur deine Änderung im Programm.
Vor allem, da du ja schreibst, dass die Original-Werte in der Originalfunktion GoTurn() (so verstehe ich deinen Beitrag) zu einer ordentlichen geraden Fahrt führen.
Mach dir keinen Stress, das Wochenende muss ja nicht immer mit dem Asuro verbracht werden
Gruß Sternthaler
Lieber Asuro programieren als arbeiten gehen.
Hey ich habe bis jetzt nur das PC Programm, leider kann ich nirgendwo ein Link oder "Attachment"(was auch immer das sein soll) finden, um das Asuro Programm zu bekommen.
[edit] Sry anscheinend muss man angemeldet sein um die Attachments zu sehen.
Hi,
Meine Werte sind wie folgt:
MY_ODO_LIGHT_VALUE_L :- 159
MY_ODO_DARK_VALUE_L :- 149
MY_ODO_LIGHT_VALUE_R :- 162
MY_ODO_DARK_VALUE_R :- 147
Laut die Beschreibung in myasuro.h sind die Werte so korrekt. Aber laut der Asuro Manual vom Arexx ist der Light Wert kleiner als vom Dark Wert. Welches ist richtig?
Kann mir da jemand weiterhelfen?
Danke.
hi RobotNeu,
da die Transistoren T11 / T12 mit ihren Emittern an Masse liegen und bei Beleuchtung durch die IR-Leds D13/D14 (Light) (bei Reflexion durch die weissen Segmente) durchschalten, gehen dabei ihre Kollektoren Richtung 0V und ziehen die ADC-Eingänge ADC0/PC0 (PIN23) bzw. ADC1/PC1 (PIN24) nach Masse (kleinerer Wert).
Im un/weniger beleuchteten Zustand (Dark - schwarze Segmente) sind die Transistoren weniger durchgeschaltet, und die ADC-Eingänge liegen wegen der mit Vcc verbundenen Widerstände auf hohem / höheren Potential.
So sollte es sein , (falls ich mich nicht irre).
Ich verwende aber auch ähnliche Werte (Light > Dark).
Ich vermute aber , dass die Variablen im Programm
(encoder) irgendwo vertauscht werden. Ich meine, ich hätte das auch irgendwo gelesen, aber es wurde wohl - vielleicht aus Gründen der Kompatibilität - so belassen.
Gruss
mausi_mick
@ sternthaler:
SUPER programm!!! echt genial... ohne das hätte ich wohl jahre gebraucht, bis ich die richtigen einstellungen gefunden hab.
VIELEN DANK!
ein kleines feedback:
die tests liefen alle recht gut. ich hab jedoch des öfteren einen Frame-Fehler angezeigt bekommen, was ich anscheinend nur durch einen neustart des programms lösen konnte.
und dass test 5 nicht geht hätte mich fast wieder mal vom glauben abgebracht
hab probiert und probiert... bis ich dann hier mal genauer nachgelesen hab.
also noch mal vielen dank für die arbeit, weiter so!
gruß,
male...
Hallo zusammen.
Erst mal ein schönes neues Jahr an alle.
@RobotNeu
Kannst du mal bitte angeben, welche Doku du mit "Asuro Manual vom Arexx" meinst? Ich habe so einiges durchgesucht, aber nichts gefunden.
Die Erklärung von mausi_mick ist jedenfalls richtig. Die Hardware vom Asuro liefert eben diese Werte.
Und nicht vergessen: Die MY_ODO_xxx_VALUE_[Seite]-Werte sind ja für die LIB hier aus dem Forum gebaut worden. Es kann also, je nach Programmierung (z.B. bei Arexx) auch anders richtig sein. Es kommt eben nur auf die Auswertung nachher im Programm an.
@malediction
Schön, dass dir das Programm so gut geholfen hat.
Und besonders schön, wenn ich dafür ein so dickes Lob von dir bekommen. Danke.
Ja, ja, die Doku. Da ist halt nicht so viel Platz im Windows-Programm. Aber ich wollte keinesfalls noch ein 'dickes' Handbuch dazu schreiben. Wer liest den Handbücher? (Ist doch ne gute Ausrede, oder?)
Gruß Sternthaler
Lieber Asuro programieren als arbeiten gehen.
Hallo alle zusammen,
ich versuche gerade die Odometriewerte zu ermitteln. Irgendwas haut da aber nicht hin.
Wenn ich den Asuro den Test im "Halbschatten" (sprich bewölkter Himmel; nur Licht von außen; kein künstliches Licht; auf dem Fußoden stehend) erscheinen folgende Werte (253,253,252,252) mit dem Hinweis "Warnung - zu wenig Differenz". Bestrahle ich den Asuro jedoch direkt mit ner Lampe bzw. stell ihn direkt aufs Fensterbrett beim Test ausführen, so ermittelt er mir folgende Werte (223, 214, 178, 172) mit dem Hinweis "Problem - zu viel seitliches Licht". Der anschließende Test der Go-Funktion zeigte einen kurzen Versuch gerade aus zu fahren (bei den zweiten Werten!), endete aber darin, dass er ohne Ende im Kreis fährt!
Kann mir jemand helfen? Wo steck das Problem?
Vielen Dank und beste Grüße
hirb
Lesezeichen