A/D-Filter
Vermeiden von Messfehlern
A/D-Wandler mit höherer Auflösung sind sehr präzise Messinstrumente, die bereits kleinste Änderungen am Messsignal erfassen können. In der Praxis kommt es häufig vor, dass elektrische oder elektromagnetische Störgrößen über die Anschlussleitung auf das Messsignal einwirken und dieses abfälschen. Mit Hilfe eines A/D-Filters lassen sich die Messsignale glätten und optimieren.
Lösung
Der von uns eingesetzte Filter auf Software-Basis ist bereits im Microcontroller integriert worden, durch den der A/D-Wandler angesteuert wird. Per Softwarebefehl können verschiedene Filterlevel eingestellt und auch zurück gelesen werden.
Das Filterprinzip basiert auf einer Mittelwertbildung aus einer Summe von Messungen. Je höher das Filterlevel gewählt wird, desto mehr Messungen werden zur Mittelwertbildung herangezogen. Bedeutet aber auch, dass sich die Abtastrate des A/D-Wandlers mit steigendem Filterlevel reduziert.
Anwendung
Bei jedem Neustart des Moduls ist der A/D-Filter zunächst ausgeschaltet und kann bei Bedarf mittels DELIB-Befehl aktiviert werden. Es empfiehlt sich daher, den A/D-Filter in der Initialisierung Ihres Projektes festzulegen. Die Anzahl der maximal einstellbaren Filterlevel kann je nach Produkt variieren. Um festzustellen, welcher A/D-Filter maximal gesetzt werden kann, kann das Filterlevel auf 250 gesetzt werden. Beim Zurücklesen des Filters, erhält man nun den Maximalwert.
Folgende Befehle können für das Einstellen des A/D-Filters angewendet werden:
- DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_FILTER_SET, ((filterlevel & 0xff) << 8) | (submodule_nr & 0xff) , 0)
- DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_FILTER_GET, (submodule_nr & 0xff) , 0)
Weitere Beispiele dazu finden Sie im Handbuch Ihres Moduls im Bereich: A/D-Wandler Funktionen
Messung mit und ohne A/D-Filter
Das obere Bild zeigt eine Messung mit deaktiviertem A/D-Filter.
Bei dem unteren Bild wurde das Filterlevel auf 10 gesetzt.