Kuno Zoltner schrieb:
> Meine Frage ist jetzt, wie ich diesen Effekt verhindern kann? Per
> Hardware die Spannung glätten?
Nein, das hilft nicht wirklich. Um den Wert 1 kann ein AD-Wandler
prinzipbedingt immer "wackeln".
Was du brauchst, ist eine so genannte Umkehrhysterese, wegen der
Eigenschaften des AD-Wandlers mindestens mit dem Wert 2. Er kann aber
auch größer festgelegt werden, wenn der Wandler wegen des Rauschens
stärker wackelt als bloß um +-1.
D.h.: Deine Steuerung folgt der Eingabe, solange sich deren Werte sich
in die gleiche Richtung bewegen, also z.B. immer kleiner werden. Fangen
sie aber an, sich in die Gegenrichtung zu bewegen, akzeptiert die
Steuerung die Änderung erst, wenn sie die von dir festzulegende
Umkehrhysterese übersteigt.
Wenn du das als Programm umsetzt, mußt du dir zwei Sachen merken:
1) den jeweils letzten akzeptierten Wert
2) die jeweils letzte bestätigte Bewegungsrichtung
Beachte bei der Programmierung, daß es beim Start der Sache beides noch
nicht geben kann. Deswegen brauchst du für die Startphase neben den
beiden normalen Bewegegungsrichtungen noch zwei weitere Zustände,
nämlich "alles unbekannt" und "Bewegungsrichtung unbekannt".
Bei "alles unbekannt" akzeptiert die Steuerung jeden Meßwert und
speichert ihn auch als solchen. Zusätzlich wechselt sie in den Zustand
"Bewegungsrichtung unbekannt".
Im Zustand "Bewegungsrichtung unbekannt" wiederum verhält sie sich schon
fast so wie bei bekannter Bewegungsrichtung. Der einzige Unterschied
ist, daß Meßwertänderungen in beide Richtungen erst die Hysterese
überschreiten müssen, bevor die Steuerung sie akzeptiert. Tritt dieser
Fall ein, wechselt die Steuerung je nach erkannter Bewegungsrichtung in
einen der beiden Normalzustände. Ab dann läuft alles wie oben
dargestellt.