mitch0815
22.01.2012, 15:56
Die Asuro Odemetrie
Ich habe mich wie wahrscheinlich schon etliche vor mir mit der Odemetrie der des Asuros beschäftigt. Das Ziel was ich dabei verfolge ist etwas hochgegriffen. Der Asuro soll sich frei in einem Raum bewegen. In diesem Raum sind diverse Hindernisse platziert, welcher der Asuro erkennen soll und sich die Position des Hindernisses merken soll, so dass er beim nächsten mal wenn er Kurs auf das Hindernis nimmt dieses souverän umfahren soll. Später sollen dem Asuro beliebige Ziele im Raum mitgeteilt werden welche er ansteuern soll. Soviel zur Zielsetzung.
Schnell habe ich festgestellt dass die Odemetriedaten des Asuros nicht viel Taugen. Das fängt schon dabei an das meines Erachtens die Hell und Dunkel unterschiede über den AD-Wandler erkannt werden soll. Dazu kommt das die Zahnräder auf der Achse sehr viel spiel haben und dadurch sich die Amplitude des erfassten Signals sehr variiert. Zudem muss ich gestehen dass ich dieses Verfahren als ziemlich kompliziert halte, und auch nicht so recht verstanden habe.
Ich habe mir nun den Schaltplan des Asuros genauer betrachtet und festgestellt, dass die Eingänge des Atmels auf denen die Fototransistoren liegen auch sekundär als PinChange Interrupts verwendet werden können. Ich habe ein kleines Programm geschrieben in dem diese Methode getestet werden sollte. Es funktionierte nur leider nicht sehr zuverlässig was bei diesem Signal auch kein Wunder war.
21279
Signal des Fototransistors
Wenn jetzt bei diesem Signal noch ein Flatterndes Zahnrad Fremd licht Einwirkung dazu kommt ist schnell klar dass nicht jede Signaländerung erkannt werden kann.
Nun war ich erst mal etwas enttäuscht von meinem Asuro.
Ich schaute bei Google na „Odemetrie Asuro“ um zugucken was für Probleme es alles gibt. Und ob es vielleicht auch eine Lösung für mein Problem gibt. Außer Lösungen die mit dem AD-Wandler liefen habe ich leider nichts gefunden. Da ich jetzt aber so auf eine Lösung mit Einer Interrupt Routine versteift war, in dem ich die Impulse einfach nur zählen brauch, kam ich auf die Idee den Asuro ein wenig umzubauen. Und zwar wollte ich jetzt einen Einstellbaren Schmitt-Trigger zwischen Fototransistor und Mikrocontroller bauen.
21280
Diese Schaltung sollte jetzt nun wie folgt in den Asuro eingebaut werden.
2128021281
Nun kann man mit den Potis die Schwellspannung einstellen.
21282
Die blaue Linie ist die Schwellspannung des Schmitt-Triggers.
Am Ausgang erhält man dann ein relativ sauberes Rechteckt Signal:
21283
Nun hat man einen sehr guten und zuverlässigen Odemetriesignal, dessen Impulse man in einer Interrupt Routine zählen und auswerten kann.
Ob ich schaffe mein eigentliches Ziel erreichen werde kann ich bis jetzt noch nicht sagen. Aber ich dachte mir dass es eine gute Idee wäre meine bis jetzt gesammelten Erkenntnisse zu veröffentlichen da ich solch eine Methode im Netz noch nicht gefunden habe. Ich hoffe ich konnte einigen hiermit helfen.
Ich habe mich wie wahrscheinlich schon etliche vor mir mit der Odemetrie der des Asuros beschäftigt. Das Ziel was ich dabei verfolge ist etwas hochgegriffen. Der Asuro soll sich frei in einem Raum bewegen. In diesem Raum sind diverse Hindernisse platziert, welcher der Asuro erkennen soll und sich die Position des Hindernisses merken soll, so dass er beim nächsten mal wenn er Kurs auf das Hindernis nimmt dieses souverän umfahren soll. Später sollen dem Asuro beliebige Ziele im Raum mitgeteilt werden welche er ansteuern soll. Soviel zur Zielsetzung.
Schnell habe ich festgestellt dass die Odemetriedaten des Asuros nicht viel Taugen. Das fängt schon dabei an das meines Erachtens die Hell und Dunkel unterschiede über den AD-Wandler erkannt werden soll. Dazu kommt das die Zahnräder auf der Achse sehr viel spiel haben und dadurch sich die Amplitude des erfassten Signals sehr variiert. Zudem muss ich gestehen dass ich dieses Verfahren als ziemlich kompliziert halte, und auch nicht so recht verstanden habe.
Ich habe mir nun den Schaltplan des Asuros genauer betrachtet und festgestellt, dass die Eingänge des Atmels auf denen die Fototransistoren liegen auch sekundär als PinChange Interrupts verwendet werden können. Ich habe ein kleines Programm geschrieben in dem diese Methode getestet werden sollte. Es funktionierte nur leider nicht sehr zuverlässig was bei diesem Signal auch kein Wunder war.
21279
Signal des Fototransistors
Wenn jetzt bei diesem Signal noch ein Flatterndes Zahnrad Fremd licht Einwirkung dazu kommt ist schnell klar dass nicht jede Signaländerung erkannt werden kann.
Nun war ich erst mal etwas enttäuscht von meinem Asuro.
Ich schaute bei Google na „Odemetrie Asuro“ um zugucken was für Probleme es alles gibt. Und ob es vielleicht auch eine Lösung für mein Problem gibt. Außer Lösungen die mit dem AD-Wandler liefen habe ich leider nichts gefunden. Da ich jetzt aber so auf eine Lösung mit Einer Interrupt Routine versteift war, in dem ich die Impulse einfach nur zählen brauch, kam ich auf die Idee den Asuro ein wenig umzubauen. Und zwar wollte ich jetzt einen Einstellbaren Schmitt-Trigger zwischen Fototransistor und Mikrocontroller bauen.
21280
Diese Schaltung sollte jetzt nun wie folgt in den Asuro eingebaut werden.
2128021281
Nun kann man mit den Potis die Schwellspannung einstellen.
21282
Die blaue Linie ist die Schwellspannung des Schmitt-Triggers.
Am Ausgang erhält man dann ein relativ sauberes Rechteckt Signal:
21283
Nun hat man einen sehr guten und zuverlässigen Odemetriesignal, dessen Impulse man in einer Interrupt Routine zählen und auswerten kann.
Ob ich schaffe mein eigentliches Ziel erreichen werde kann ich bis jetzt noch nicht sagen. Aber ich dachte mir dass es eine gute Idee wäre meine bis jetzt gesammelten Erkenntnisse zu veröffentlichen da ich solch eine Methode im Netz noch nicht gefunden habe. Ich hoffe ich konnte einigen hiermit helfen.