Roboter steuern mit ROBOprogy


zur homepage

Störspitzen wegfiltern

Mit dem ROBOprogy kann man einige hundert Mal pro Sekunde sechs unterschiedliche Spannungen im Bereich 0 V bis +5 V messen und damit den Programmablauf beeinflussen. Intern ist vor jeden Eingang ein "sample and hold"-Baustein vorgeschaltet, der vor jeder Messung ein sehr kurzes Zeitfenster von etwa einer Mikrosekunde aufmacht und die dann vorliegende Spannung für die folgende Messung "einfriert". Wenn nun genau während dieses Zeitfensters der Störimpuls eines Motors oder eines Relais eintrifft, wird das Ergebnis verfälscht und der Roboter reagiert möglicherweise seltsam.

Misst man beispielsweise die Entfernung mit dem Sensor GP2D120, können (ohne das nachfolgend beschriebene Tiefpassfilter) auch bei geringen Störungen scheinbare Abstandsschwankungen von einigen Zentimetern beobachtet werden. Ursache sind elektrische Störimpulse (beispielsweise von Motoren), die nur wenige Millivolt betragen und sich der Messspannung überlagern.

Abhilfe schafft ein RC-Tiefpass, der Störspitzen wegfiltert und dessen Werte dem jeweiligen Zweck angepasst sein sollten. Solch ein Tiefpass besteht aus zwei billigen Bauelementen: einem Widerstand (R) von 10k in Serie zur Messleitung und einem Kondensator (C) zwischen ADC-Eingang und Masse (Minus-Anschluss der Batterie). Ausschlaggebend ist, dass dieser Tiefpass unmittelbar vor dem ADC-Anschluss des ROBOprogy montiert ist und nicht irgendwo auf dem Weg zwischen Sensor und ROBOprogy. Deshalb hat jeder ADC-Eingang zwei Anschlüsse: Der äußere, näher am Rand der Platine gelegene, ist mit Masse verbunden. Der gegenüberliegende auf der MEGA32-Seite führt zum ADC-Anschluss des Prozessors. Das ist der Messeingang, vor dem der 10k-Widerstand liegen soll.

Damit der Tiefpass seinen Zweck erfüllen kann, darf an den Masseanschlüssen rechts bei den ADC-Eingängen nichts anderes als die Kondensatoren (einer pro ADC) angeschlossen werden. Die folgende Schaltung zeigt, wie ein Entfernungssensor GP2D120 "entstört" am Eingang 6ADC des ROBOprogy angeschlossen wird:

Die rote (+) und braune (-) Leitung zum Sensor darf beliebig verlegt werden, ebenso die Leitung vom Sensor bis zum 10k-Widerstand. Dieser 10k-Widerstand und der 10nF-Kondensator sollen jedoch unmittelbar am ROBOprogy plaziert werden, denn diese Drahtstücke zwischen Kondensator und ROBOprogy wirken als Empfangsantenne. An die blaue Leitung (=Masse) zwischen Kondensator und ROBOprogy darf nichts anderes angeschlossen werden, wenn die gesamte Entstörmaßnahme Sinn machen soll.

Wie groß soll der Kondensator gewählt werden? Entfernungen ändern sich auch bei schnellen Robotern recht langsam, deshalb kann ein großer Kondensator von 10 nF verwendet werden. Wenn Tonfrequenzen gemessen werden sollen, muss der Kondensator erheblich kleiner sein, maximal etwa 1 nF, sonst werden die hohen Frequenzen zu sehr gedämpft.

17.08.2006

zur homepage