Sensordatenverarbeitung - wie komme ich zu brauchbaren Daten?
Um die Daten eines Sensors digital zu verarbeiten benötigt man Algorithmen um die vorliegenden Rohdaten des Sensors in der gewünschten Zielgröße weiterverarbeiten zu können. Ideal wäre es, wenn der physikalische Zusammenhang zwischen Messgröße und Sensorsignal bekannt ist und durch eine einfache mathematische Formel über den gesamten Messbereich ausgedrückt werden kann. Dies ist aber meist wegen der komplexen physikalischen Vorgänge in den Sensoren schwierig, in der Realität ist das Ausgangssignal des Sensors häufig von vielen Umgebungfaktoren abhängig und verläuft nicht linear. Um die Zielgröße hinreichend zu beschreiben benötigt es mathematische Modelle um die Qualität der Zielgröße zu verbessern.
Die wichtigsten Modelle für Einzelsensoren sind:
- Sensordatentabelle
- Lineare Interpolation
- Polygonzug-Interpolation
- Polynom-Interpolation
- Kubische Splines
- Approximationsverfahren
Sensordatentabelle
Dies ist eine einfache aber speicherintensive Methode. Das Prinzip ist, dass zu jeder auftretenden Eingangsgröße eine passende Ausgangsgröße in einer Tabelle abgelegt wird. Zur Laufzeit wird dann der entsprechende Ausgangswert zu einem Eingangswert zurückgegeben. Eine solche Look-up Tabelle kann je nach Anzahl der möglichen Eingangswerte und sehr viel Speicher benötigen. Kommt eine weitere Eingangsimension hinzu, enstehen hier schnell große Sensordatenfelder.
Lineare Interpolation
Diese Methode kommt häufig zum Einsatz. Sie ist immer dann geeignet, wenn die Ausgangsgröße sich annähernd linear im spezifizierten Wertebereich verhält. Häufig werden ein Minumumwert und ein Maximumwert durch eine Kalibrierroutine ermittelt. Hierdurch wird eine gerade Sensorkennlinie mit konstanter Steigung ermittelt. Das Prinzip der linearen Interpolation ist es nun die Sensordaten mittels der ermittelten Steigung zu berechnen.
Polynom-Interpolation
Die lineare Interpolation ist ein Sonderfall der Polynom-Interpolation, sie lässt sich durch ein Polynom ersten Grades beschreiben. Existieren mehrere nichtlineare Datenpunkte, kann versucht werden den Verlauf durch ein höhergradiges Polynom zu beschreiben. Durch dieses Polynom können dann weitere Werte interpoliert werden. Die Bestimmung eines geeigneten Interpolationspolynoms kann allerdings aufwändig sein. Eine Empfehlenswerte Strategie ist die Ermittlung mit Hilfe des Lagrange-Polynoms.
Eine Ermittlung von Polynomen größer Grad 5 ist nicht empfehlenswert, da diese Polynome zum Schwingen neigen.
Polygonzug-Interpolation
Diese Verfahren eignet sich gut für Kennlinien die in bestimmten Teilen annährend linear verlaufen. Das Prinzip ist einfach: Es existiert eine Anzahl von gespeicherten Stützpunkten welche die Kennlinie charakterisieren. Zwischen den jeweiligen Stützpunkten wird linear interpoliert. Für Kennlinienteile mit starker Krümmung werden viele gespeicherte Stützpunkte benötigt, für die annähernd liniearen Abschnitte reichen wenige Punkte aus um gute Ergebnisse zu erzielen.
Kubische Splines
Dieses Verfahren ähnelt der Polygonzug Interpolation. Der Unterschied ist, dass die Interpolation zwischen den Stützpunkten nicht linear Erfolgt, sondern durch Polynome. Es werden die Polynome also Abschnittsweise übercharakteristische Teile der Kennline ermittelt.
Approximationsverfahren
Alternativ zur Interpolation kommen auch Approximationsverfahren zum Einsatz. Im Gegensatz zur Interpolation kommt läuft die gewonnene Funktion im allgemeinen nicht direkt durch die Kennlinienstützpunkte. Die Koeffizienten einer Approximationsfunktion werden vielmehr durch minimierung einer Fehlerfunktion bestimmt, so dass die Funktion sich der Sensorkennlinie möglichst gut annähert und Streuungen der Messpunkte ausgleicht.
Fazit
Welches Verfahren für Ihre Anwendung am Besten geeignet ist lässt sich pauschal nicht sagen. Sie hängt von den physikalischen Zusammenhängen der Kennlinie, den Umweltfaktoren und den Einflüßen von Störgrößen aufs Gesamtsystem ab. Klar aber ist, eine gute Interpolation ist nur wertvoll wenn die Ermittlung der Stützpunkte sorgfältig erfolgt, zum Beispiel durch Kalibrieralgorithmen,
Sie haben Fragen zum Thema oder benötigen Unterstützung bei der Implementierung von Verarbeitungsalgortihmen? Wir beraten Sie gerne.