Guten Morgen Leute! Ich versuche hier mal mein Glück, evtl. kann mir ja jemand helfen, bzw. mir ein wenig auf die Sprünge helfen. Ich habe eine Schaltung für einen Sensor entwickelt, der mir 4-20mA in einer 2-Leiterschaltung erzeugt. Das ganze ist für einen keramischen Drucksensor, der relativ unlinear ist, seine Linearität liegt bei ca. 0,4% über dem gesamten Messbereich. Ich habe daher eine 5-Punkt-Kalibrierung vorgenommen, in der ich bei 0%, 25%, 50%, 75% und 100% Messwerte auf einem Kalibrator aufnehme und dann intern mittels kubischer Spline-Interpolation eine Linearisierung durchführe. Das ganze funktioniert auch relativ gut - der Linearitätsfehler geht unter 0,03% (ohne Temperaturdrift). Für den gesamten Messbereich ist das absolut in Ordnung, jetzt will ich aber noch den Bereich skalieren können, sprich von einer 1bar-Zelle z.B. nur 0-100mbar auf die 4-20mA abbilden. Hierzu wird intern im Controller eine Verstärkung errechnet. Vorgehensweise ist folgende: Ich habe die 5 AD-Werte für 0%, ..., 100% - es wird jetzt ein Messwert aufgenommen und mittels der Spline-Interpolation der "richtige" Prozentwert errechnet. Auf Basis dieses Prozentwertes werden alle folgenden Berechnungen gemacht, also z.B. Ausgabe auf dem Display dann 53,76% von 1000mbar = 537,6mbar. Ebenso wird der Ausgangsstrom mit diesem Prozentwert generiert - ich habe einen DAC, bei dem vorher der Anfangswert und der Endwert kalibriert wurden und der dann halt durch 53,76% von der "Bit-Spanne" + Anfangswert seinen Wert zur Ausgabe erhält. Das Problem ist jetzt die Ungenauigkeit beim runterskalieren, da kommt doch eine recht "wackelige" Kurve heraus. Hier wird
Als Beispiel: Ich habe alles auf 100mbar eingestellt und einen gemessenen Prozentwert von 7,6% (76mbar), dann ergibt sich:
Diese 76% gebe ich also an den DAC, der daraus die 4-20mA erzeugt. Leider ist der Fehler, der hier durch die Rechnung entsteht auch relativ groß, bzw. wird der Fehler halt auch um den Faktor 10 verstärkt, was auch hinkommt im Vergleich. Gibt es daher ein Punkt an dem ich ansetzen kann, wodurch ich das ganze verbessern könnte? Bin um jeden Tip dankbar.