2-dimensionale Näherungsfunktion?

Gast #956077
Hallo Leute!

Ich habe folgendes Problem: Ich muß relativ genau einen Absolutdruck 
messen (Gesamtfehler < 0,05% FSO) und das ganze noch in einem relativ 
weiten Temperaturbereich (realistisch etwa -20°C bis +50°C).

Die üblichen piezoresistiven Drucksensoren, egal ob preiswerte Consumer- 
oder hochwertige Industriesensoren im Edelstahlgehäuse, sind viel zu 
schlecht. Alle kommerziellen Lösungen beruhen darauf, einen schlechten 
Sensor genau zu vermessen und anschließend die bekannten Fehler zu 
kompensieren. Diese Lösungen sind für mich aber entweder zu groß oder 
viel zu teuer (Preise im mittleren vierstelligen Eurobereich pro Stück).

Deshalb möchte ich nun diesen Ansatz selbst verfolgen - mit einem 
preiswerten Sensor, der entsprechend kompensiert wird, gute Daten 
erreichen. Hardwareseitig ist das auch alle kein Problem. Der gewählte 
Sensor hat ausgezeichnete Eigenschaften in bezug auf nicht 
kompensierbare Fehler (Hysterese!) und besitzt sogar einen PTC "on 
chip", mit dem die Temperatur direkt an der Meßbrücke bestimmt werden 
kann. Ich habe ein Testboard mit einem Zweikanal-A/D-Wandler und die 
"rohen" (d.h. unkompensierten) Werte für Druck und Temperatur können 
digital ausgelesen werden.

Nun gehe ich in den Klimaschrank und schließe einen sehr genauen 
Referenzdruckgeber an mein Testboard an. Nun kann ich den gewünschten 
Temperaturbereich schrittweise alle paar Grad durchfahren und für jeden 
dieser Schritte den kompletten Druckbereich.

Daraus entsteht dann eine zweidimensionales Array mit den 
Korrekturwerten. Im Prinzip also eine Funktion:

echter_Druck = Funktion(gemessene Temperatur, gemessener Druck, 
Kompensationsarray).

Nun endlich zum eigentlichen Problem: Wenn ich einen kleinen µC habe mit 
nicht sehr viel Speicher und Rechenpower, wie kann ich diese 
Korrekturfunktion am besten implementieren? Im Prinzip bräuchte ich eine 
zweidimensionale Näherungsfunktion. Gibt es so etwas? Wie baut man sich 
so ein Polynom zusammen?

Versteht mich nicht falsch, ich möchte nicht, daß jemand meine Arbeit 
übernimmt, ich wäre schon für Literaturtips, den entsprechenden 
mathematischen Fachbegriff oder für den einen oder anderen kleinen Tip 
dankbar!

Grüße, der Gerhard.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.