.

.

Home

Start-UP

Roboter

IWAN
BORIS
LISA
TESA
KONRAD
TORA
MICROTORA

Technik

Schaltungen
Platinenherstellung
Sharp-Sensor Bilder
Infrarot Radar
Software
Verluste

Bilder & Links

Links
Bilder
Videos
Wettbewerbe
Archiv

Team Mitglieder

Impressum

Valid HTML 4.01

Mechanik-Icon Elektronik-Icon Software-Icon

Bakenempfänger mit Richtungserkennung

Manche Roboter benötigen eine Orientierung im Raum, um z.B. eine Ladestation anzufahren oder eine Heimatecke zu finden. Beim Robovolley ist für den Roboter die Richtung wichtig, in der er seine Bälle abschießt. Beim Teelichsammler verhält es sich ähnlich.
Normalerweise stellt man einen Infrarotlichtsender, eine Bake, am Ziel auf. Der Roboter hat einen fest montierten Empfänger mit Sicht nach vorne. Um das Ziel zu finden, dreht sich der Roboter solange um seine eigene Achse, bis der Emfänger den Sender gefunden hat. Jetzt muß er nur noch vorwärts fahren. Oder sie.

Drehempfaenger

Die Idee: Man stelle sich vor, nicht der Roboter mitsamt Empfänger dreht sich, sondern der Empfänger dreht sich selbst wie ein Radar. Der Empfänger sieht so einmal pro Umdrehung seinen Sender.
Wenn die Drehzahl und die Winkelgeschwindigkeit konstant sind, kann man daraus den Winkel des Senders zum Empfänger ableiten.
Der Roboter kann sich mit dieser Information direkt zum Ziel drehen.
Gedacht,getan: Es mußte ein Motor mit einer konstanten Umlaufgeschwindigkeit/Drehzahl gefunden werden. Auf den Rotor muß der Empfänger montiert werden, der wiederum dem Prozessor des Roboters den aktuellen Winkel des Rotors und empfangene Impulse des Senders mitteilt.
Nach kurzer Suche kommt man auf Motoren aus Computern. Dort werden Daten auf magnetisierbare Scheiben gespeichert.
Hohe Datendichten erfordern konstante Drehzahlen und Winkelgeschwindigkeiten. Das wird hier ausgenutzt.
Ein Motor aus einem Floppylaufwerk dreht sich zum Beispiel konstant mit 300 Umdrehungen pro Minute.

Inhalt eines Diskettenlaufwerkes

Ein gebrauchtes Floppylaufwerk findet sich in fast jedem alten Computer.
Nach Entfernen des Gehäuses präsentiert sich eine zweiteilige Elektronik. Auf der einen Platine sitzt der Motor mit seinem Treiberchip und auf der anderen Seite die Ansteuerung des Kopfschlittens und die Datenverabeitung mit Schnittstelle.
Es liegt auf der Hand, daß über die kurze Verbindung beider Platinen nicht allzuviel Daten fließen können. Ein Nachmessen mit Voltmeter und Oszilloskop brachte die Gewißheit. Neben der Stromversorgung, der Tasterabfrage für Schreibschutz und DD/HD gibt es eine Steuerleitung, die den Motor abschaltet, eine Leitung für das Nullpunktsignal und eine Taktleitung mit konstanten 1 MHz. Dieser Takt ist für den Treiberchip, der den Motor damit auf genau 5 Umdrehungen pro Sekunde hält.

Spiegel aufgeklebt

Relativ früh war klar, daß der Empfänger nicht auf dem Rotor sitzen kann, es sind einfach zuviele Bauteile. Möglicherweise ändert sich das in einer zukünftigen Version. Ein Spiegel in der Mitte des Rotors lenkt jetzt das Infrarotlicht nach oben ab. Dort wird der Empfänger von einem Ausleger gehalten. Der Ausleger unterbricht die Rundumsicht natürlich an einer Stelle. Die Platine wurde aber so angeordnet, daß die Unterbrechung genau hinten ist und mit dem Nullpunktsignal der Floppy-Elektronik zusammentrifft.
Eine schwarze Kappe schützt später den Spiegel vor Fremdlicht. Die Kappe hat einen 3mm breiten Schlitz am Umfang wo das Licht einfallen kann und oben ein Loch, wo das Licht mittig wieder austritt.

Bei einer Drehzahl von 300 U/min , also 5U/s, einem Schlitz von 3mm Breite und einem Durchmesser der Kappe von 64 mm ergibt sich als Zeitfenster für den Schlitz 3 Millisekunden.
In dieser Zeit müssen mindestens 3 Impulstelegramme des verwendeten Encoder-Dekoder-Pärchens durchkommen, um als gültig erkannt zu werden. Da man den ungünstigsten Fall annehmen muß, daß das 1. Paket beim 1. Impuls fehlerhaft ist, müssen also mindestens 4 Pakete in 3 Millisekunden durchkommen.
Aus dem Datenblatt des MC14026/27 läßt sich ablesen, daß für ein Impulstelegramm 96 Takte des Senders gebraucht werden. Geteilt durch die Zeit von 0,75 ms ergibt sich eine Mindestfrequenz des Senderoszillators von 128 kHz.

Datenblatt Timing Diagramm


Das entspricht z.B. Impulsen von 3,9 Mikrosekunden Breite und 27 Mikrosekunden Pause, wenn man lauter Nullen codiert.
Soviel zur Theorie.
Senden kann man diese Impulse, aber womit empfangen?
Einen integrierten Empfängerbaustein für 128kHz-Impulse gibt es nicht und ein Empfänger wie ein TSOPxxxx braucht noch eine höhere Modulationsfrequenz von mindestens 6 Takten pro Impuls, das wären dann schon 1,5 MHz! Einen TSOP dafür suchen wir übrigens noch ;)**
Eine Alternative sind IR-Datenübertragungsbausteine für sogenanntes IRDA, z.der B. TDFS4500 für serielle Infrarotübertragung bis 115,2 kHz.
Diese Transmitter werden in Mobiltelefonen und PDAs eingesetzt. Laut Datenblatt schaffen diese Bausteine theoretisch Impulse von 1,4 bis 8 Mikrosekunden Dauer. Versuche haben ergeben, daß diese Werte auch stimmen.
Dummerweise kodiert aber der MC14026 seine Daten in Impulse von 1 oder 7 halben Perioden seiner Taktfrequenz. Das heißt, die kurzen Impulse des MC14026 würden mit ihren 4µs passen, die langen sind zu lang.
Impulse länger als 8µs werden vom TDFS einfach abgeschnitten und sind damit für den MC14027 unbrauchbar. Sinnvoll ist es also, den TDFS4500 mit konstant langen Impulsen von z.B. 2µs Dauer zu versorgen.

Blockschaltbild

Das Impulstelegramm des MC14026 muß also von seinen langen/kurzen Impulsen in solche mit gleicher Länge überführt werden. Dazu wurden mit einem XOR-Gatter und einem RC-Glied zuerst die Flanken extrahiert. Ein monostabiler Multivibrator verlängert dann die Nadelimpulse auf ca. 1,6 µs. Die Information steckt nun in den Abständen der Flanken und kann so gesendet werden.

Auf Empfängerseite werden die Telegramme einem Flip Flop zugeführt, der das Impulssignal durch 2 teilt und so die originalen Impulslängen wiederherstellt. Ein nachtriggerbarer Monoflop generiert aus den Impulstelegramm-Pausen den Reset für den Flip Flop.
Der MC14027 vergleicht das Telegramm mit den Werten an seinen Codier-Pins und bei dreimaliger Übereinstimmung wird ein Signal an den Controller gegeben.

Bake Prototyp Nr.1

Der Controller vergleicht die Länge der Zeit vom Nullpunkt bis zum Erkennen des Senders und rechnet diese in einen Winkel um. Das ist erstaunlich genau, da der Floppymotor sehr laufruhig ist. Rechts der erste funktionierende Prototyp. Am unteren Bildrand befindet sich der Sender und in der Mitte rechts der drehende Empfänger, die untere Zeile des Displays zeigt in der Mitte den Winkel von 178°.

Leider ist die Reichweite des Systems sehr begrenzt, der TDFS4500 ist nur für den Dezimeter-Bereich konzipiert. Mehr als 50cm Abstand waren nicht zu machen. Auch eine Erhöhung des Sender-Stromes und der Anzahl der Sendedioden brachte wenig Erfolg.

Eine Empfangsverbesserung ergab sich aus der Verbreiterung der Sendeimpulse auf ca. 2,5 µs und eine Verlängerung des kleinsten Impulsabstandes auf ca 5µs. Der TDFS4500 neigte nämlich zum Verschlucken zu kleiner Impulspausen.
Dazu mußte aber die Oszillatorfrequenz des MC14026 auf ca. 66kHz gesenkt werden. Das ergibt eine Laufzeit des Impulspaketes von ca. 1,4ms. In den ca 3Millisekunden, die der Schlitz der Abdeckung des Rotors läßt kommen dann aber keine 3 Pakete mehr durch.
Gut, daß die Geschwindigkeit des Motors über die Taktfrequenz gesteuert wird. Eine Halbierung des Taktes mit einem halben 4013 läßt nur noch 500 kHz an den Motor, der damit genau 150 U/min macht.

Bake Prototyp Nr.2

Zusätzlich wird nun als Empfänger eine echte Infrarotdiode, eine BPW41 mit dem Vorverstärker TBA2800 eingesetzt.
Den Schaltplan dafür findet man im Datenblatt.
Die Reichweite stieg spontan auf 1,5m in störungsarmer Umgebung.

Zum Schluß wurde noch der Schlitz im Rotor auf ca. 4mm vergrößert. Die "Schlitzzeit" steigt mit allen Maßnahmen auf gut 8 ms.

Bake Prototyp auf IWAN

Dieses Projekt sollte neue Möglichkeiten für die Bakennavigation erforschen.
Die Anforderungen an den Roboter und das Gelände sind aber recht hoch. Um die Drehachse des Empfängers immer senkrecht zu halten, muß der Untergrund sehr eben und waagerecht sein.
Die Navigation ist aber entscheidend verbessert. Mit einer wiederholten Winkelmessung während der Fahrt kann der Abstand zur Bake errechnet werden. Auch bestimmte Fahrmanöver lassen sich leichter implementieren. So z.B. das halbkreis- oder spiralförmige Fahren um die Bake. Damit kann man sicher recht effektiv eine Fläche reinigen, ohne mehrmals die gleiche Stelle zu befahren.

Video Bake Prototyp auf IWAN

Heir ist noch ein Video, welches die Funktionsweise verdeutlicht. Bilder sagen bekanntlich mehr als tausend Worte.

mpg Video 10,2 MB.

Fragen? > Mail

**)P.S.:
Mittlerweile gibt es den TSOP7000 auf dem Markt, ein Infrarotempfänger ähnlich dem TSOP17xx aber mit 455kHz Übertragungsfrequenz.