Was ist die genaueste Methode, um die Temperatur auf ±0,01 °C zu messen? Ich habe mich mit der Verwendung einer Wheatstone-Brücke (mit einem Minipot für kleinere Kalibrierungen) und einem RTD wegen seiner Präzision und Reichweite befasst. Ich brauche einen Bereich von -85 °C bis 55 °C. Idealerweise wäre dies ein Niederspannungsbetrieb (6 VDC). Der Ausgang muss ein digitales Signal sein und wird derzeit an Arduino gesendet, aber in Zukunft möchte ich neben diesem Gerät ein Datenprotokollierungssystem einbauen, bevor ich eine Verbindung zu Arduino herstelle. Die Stromquelle stammt ebenfalls vom Arduino, daher hängt die Stabilität derzeit von der Hardware des Arduino ab. Das Gerät wird jedoch an eine 115-V-Steckdose angeschlossen, sodass eine Erdungsreferenz verwendet werden kann.
Das ultimative Ziel ist es, mehrere Temperatureinheiten wie diese Protokolldaten zu haben und an einen mC zu senden, der die Daten grafisch darstellen kann. Ich habe verschiedene Platin-RTDs gefunden, die genau genug zum Messen sind, aber ich möchte wissen, wie ich die Schaltung auslegen muss, wie ich das analoge Signal genau in ein digitales umwandeln kann und welche Spannungsstabilisatoren für die Stromversorgung erforderlich sind.
Realistisch gesehen ist es sehr schwierig, diese Systemgenauigkeit zu messen . Der spezielle Sensor, den Sie zeigen, hat eine Toleranz der DIN-Klasse A, was bedeutet, dass der maximale Fehler des Sensors allein 150 mK + 2 mK * | T | beträgt (mit T in Grad C). Bei 100 Grad C beträgt also allein der maximale Sensorfehler (ohne Selbsterwärmung) 350 mK, das 35-fache dessen, was Sie sagen wollen. Diese Art von relativ kostengünstigen Sensoren ist aufgrund der Dünnschichtkonstruktion auch anfällig für Hysteresefehler. Das kommt ins Spiel, wenn es große Temperaturschwankungen gibt - aber selbst bis 200 ° C können Sie viele zehn mK fälschlicherweise sehen (nicht in Ihrem Datenblatt angegeben).
Selbst bei der Referenztemperatur von 0°C trägt allein der Sensor das 15-fache des gewünschten Fehlers bei. Je nach gewähltem Strom trägt die Eigenerwärmung mehr bei, und selbst die am besten ausgelegte Messschaltung trägt zu einem gewissen Fehler bei. Wenn Sie eine Kalibrierung durchführen, können Sie einige der Fehler reduzieren, aber das ist teuer und schwierig, und Sie müssen über eine Instrumentierung verfügen, die mK-Genauigkeit und -Stabilität erreichen kann. Eine Einpunktkalibrierung am Tripelpunkt von Wasser ist einfacher, aber immer noch nicht einfach.
Eine Stabilität von 0,01 °C über einen relativ schmalen Bereich ist nicht besonders schwierig, erfordert aber gute Konstruktionstechniken. Wenn Sie eine Energieversorgung von 200 uA verwenden, benötigen Sie am Eingang eine viel bessere Stabilität als 40 uV. Ihre Referenz muss außerdem über den gesamten Betriebstemperaturbereich (der definiert werden muss) innerhalb von 20-30 ppm stabil sein. Wenn Sie einen präzisen Metallfolien-Referenzwiderstand und eine ratiometrische Messung verwenden, können Spannungsreferenzfehler minimiert werden.
Eine Auflösung von 0,01 °C ist ziemlich einfach. Hängen Sie einfach einen 24-Bit-ADC an die Sensorsignalkonditionierung, aber es kann nicht viel bedeuten (abgesehen davon, dass kurzfristige Trends in einer gutartigen Instrumentenumgebung angezeigt werden), wenn nicht alle anderen Dinge richtig gemacht werden.
Ich würde einen 24-Bit-Sigma-Delta-ADC von TI ADS1248 verwenden, ein komplettes analoges Frontend für den RTD-Sensor (Pt100). Leider gibt es nur wenige Arduino-Boards mit diesem Chip, ich habe nur eines gefunden - http://www.protovoltaics.com/arduino-rtd-shield/ , ich würde es nicht kaufen, weil es zu viele Funktionen zusammen hat, die es nicht können existieren, wenn das Board den von TI empfohlenen Tiefpassfilter hätte.
Dieser Chip kann Ihnen fehlerfreie 18-Bit-Codes über den gesamten Bereich liefern, wenn die Leiterplatte gut gemacht ist.
Wenn Sie nur eine eingeschränkte Reichweite benötigen, können Sie die 3-Leiter-Methode und einen zusätzlichen Kompensationswiderstand verwenden, aber Sie müssen die Widerstands- und PGA-Einstellung genau berechnen. Zum Beispiel benötigen Sie von -85 °C bis 50 °C, das ist ein Messbereich von 135 °C, jetzt können Sie mit einer höheren Einstellung von PGA (z. B. 128) den anfänglichen Messbereich einschränken. Durch Hinzufügen des Kompensationswiderstands, der den Widerstandswert von pt100 bei -17,5 C (135/2-85) hat, legen Sie die Mitte des Messbereichs fest. Mit zusätzlicher Berechnung des Referenzwiderstands R_BIAS können Sie den genauen Messbereich Ihres Interesses einstellen: http://www.ti.com/lit/an/sbaa180/sbaa180.pdf
Vielleicht möchten Sie sich auch Quarz-Temperatursensoren ansehen. Das Messen einer Frequenzänderung ist viel einfacher als Mikrovoltmessungen ... IIRC Das habe ich direkt von den Seiten der AoE, 1. Ausgabe.
Haben Sie ein oder drei Papiere:
http://www.sensorsportal.com/HTML/DIGEST/august_2014/Vol_176/P_2252.pdf http://maxwellsci.com/print/rjaset/v5-1232-1237.pdf http://micromachine.stanford.edu/ ~hopcroft/Publikationen/Hopcroft_QT_ApplPhysLett_91_013505.pdf
Haben Sie ein Datenblatt (Ihr niedrigerer Temperaturbereich liegt unter dem, was sie auflisten, außer "Sonderbestellung", aber ich wäre geneigt, eines der Militärteile von -55 bis 125 ° C darauf zu werfen, bevor ich dorthin gehe.
http://www.statek.com/products/pdf/Temp%20Sensor%2010162%20Rev%20B.pdf
Ein ziemlich schickes Produkt, das Temperatur und Druck bietet:
http://www.quartzdyne.com/quartz.html
Wikipedia-Seite, die hauptsächlich eine Homilie an den HP2804A zu sein scheint
Ich musste so ziemlich das bei einem früheren RL-Job machen, also werde ich die Probleme durchgehen, die ich hier sehen kann, und zumindest eine grobe Beschreibung dessen geben, was wir getan haben, obwohl a) es vor ungefähr 20 Jahren war, also meine Die Erinnerung kann von der Realität abweichen, b) es handelte sich um ein eigensicheres System, das zusätzliche Komponenten hinzufügt, um die verfügbare Leistung unter Fehlerbedingungen zu begrenzen, und c) ich war nicht der ursprüngliche Designer.
Die Schaltung auf Blockebene war eine geschaltete Stromquelle (stabil, ziemlich genau, aber nicht mit der für die Messung erforderlichen Genauigkeit), die den mit Kelvin verbundenen PRT-Sensor und einen hochpräzisen Referenzwiderstand (0,01 %) speiste, wobei verschiedene Punkte durch Schutzwiderstände gespeist wurden und ein Multiplexer zu einem 24-Bit-Dual-Slope-Integrations-ADC. Dies ergab eine Genauigkeit von 0,01 °C in der Mitte des Bereichs, aber nur 0,02 °C (0,013 °C IIRC) am oberen Ende aufgrund von Leckströmen, die auf die Schutzwiderstände einwirken. Das untere Ende kann wie unten angegeben behoben werden. Die Verwendung eines Referenzwiderstands und die ratiometrische Messung vermeidet die Notwendigkeit einer genauen und stabilen Stromquelle und lockert die Beschränkungen für die ADC-Referenz, sodass eine normale kommerzielle Komponente ausreicht.
Ich gehe davon aus, dass der Messpunkt von der Elektronik entfernt ist (der Sensor befindet sich am Ende eines Kabels), da Sie sonst große Probleme haben werden, wenn die Elektronik außerhalb ihres angegebenen Temperaturbereichs liegt (der normale industrielle Bereich liegt bei -55 + 85C). Dies schreibt ziemlich gut die Verwendung von Kelvin-Verbindungen (ein 4-Draht-PRT) vor, damit der Kabelwiderstand aus der Messung eliminiert werden kann - der Erregerstrom wird über ein Adernpaar gesendet und die Spannung wird am anderen gemessen (wo Kabelkosten sind). sehr hoch, Sie können 3-Draht mit symmetrischen Längen verwenden und den gemeinsamen Draht mit etwas mehr Messungen und Software kompensieren). Die grundlegende Messung besteht darin, die Spannung über dem Sensor und über dem Referenzwiderstand zu messen; Da es sich um denselben Strom handelt, können Sie den PRT-Widerstand und damit die Temperatur berechnen.
Das Umschalten des Erregungsstroms vermeidet eine Selbsterwärmung, während ein Erregungspegel ermöglicht wird, der hoch genug ist, um vernünftige Signalpegel zu liefern; Sie können den Erregerstrom so wählen, dass der höchste Widerstand des Sensorkreises eine Spannung nahe dem vollen Bereich, aber immer noch im linearen Bereich liefert, unter Berücksichtigung des Widerstands des Sensors, der Referenz, der Verbindungskabel, der Temperaturänderung dieser, der Temperaturänderung von die Stromquelle usw. Sie könnten den Erregerstrom über den DAC-Ausgang (ein echter DAC, nicht die PWM-Leitungen) einstellen und den Treiberpegel mithilfe der Software langfristig anpassen, um den höchsten ADC-Wert nahe am vollen Bereich zu halten - dies würde vermieden werden Auflösungsverlust bei niedrigen Temperaturen (niedrige PRT-Temperatur = niedriger Widerstand = niedriger ADC-Wert = weniger Bits pro Grad = verringerte Genauigkeit).
Die Verwendung eines einzigen ADC vermeidet Probleme der (Fehl-)Anpassung der ADCs, die zu nicht messbaren Fehlern führen; In meinem System war der ADC als Single-Ended konfiguriert, aber Sie werden möglicherweise feststellen, dass eine differentielle Eingangskonfiguration die Dinge vereinfacht. Achten Sie jedoch auf Leckströme und wie sie mit dem Eingangs-Gleichtakt variieren. Bei Verwendung eines Dual-Slope-Wandlers müssen Sie Polypropylen- oder Polyethylen-Kondensatoren in der ADC-Schaltung verwenden, um die dielektrische Absorption zu minimieren, diese sind groß und teuer (und verwenden Sie auch Schutzringe auf der Leiterplatte und minimieren Sie bestimmte Leiterplatten-Leiterbahnlängen, da das Epoxid in FR4 hat hohe dielektrische Absorption). Ein Delta-Sigma-Wandler vermeidet dies, führt jedoch zu Problemen mit der Einschwingzeit bei Änderung des Eingangssignals (Verwerfen der ersten N Messwerte), was die Messzeit verlängert und dazu führen kann, dass die Selbsterwärmung die Messwerte beeinflusst oder ein rechtzeitiges Lesen verhindert (weshalb die Dual-Slope gewählt wurde, mit den damals verfügbaren Komponenten). Wenn am Eingang des ADC ein Verstärkungsblock verfügbar ist, lohnt es sich, ihn zu verwenden, damit der Erregerstrom minimiert werden kann, aber versuchen Sie nicht, niedlich zu werden, indem Sie die Verstärkung zwischen den Messwerten ändern, da die Verstärkungen nie genau den Nennwerten entsprechen. Daher sind ADC-Messwerte mit unterschiedlichen Verstärkungen für diesen Zweck nicht kompatibel.
Eine weitere schädliche Fehlerquelle sind unbeabsichtigte Thermoelementverbindungen; sogar die Verzinnung von Kupferdrähten (oder Leiterbahnen) kann diesen Effekt hervorrufen. Neben dem Versuch, die Anzahl unterschiedlicher Metall-Metall-Verbindungen im Signalpfad zu minimieren, stellen Sie sicher, dass alle, die Sie nicht vermeiden können, in symmetrischen Paaren und isotherm sind, damit sich alle Effekte aufheben, und dass der Signalpfad so weit wie möglich von höheren Strömen ferngehalten wird Spuren. Achten Sie auf Ihre Schaltungserde; die Masse der ADC-Eingangsseite (die als Referenz für die Erregungsstromquelle verwendet werden kann) nur an einem Punkt mit einer analogen Masse (ADC-Chip- und Eingangsmultiplexermasse) verbunden ist, die nur an einem Punkt mit dem System (Mikroprozessor) verbunden ist usw.) Masse, die nur an einem Punkt mit dem Masseeingang des Netzteils verbunden ist. Eine weitere Fehlerquelle können Eingangsleckströme sein; Wenn Sie einen signifikanten Widerstand in Reihe mit dem ADC-Eingang haben (z. B. den Einschaltwiderstand des Multiplexers oder ein Tiefpassfilter), überprüfen Sie, ob der Spannungsabfall über diesem Widerstand bei maximalem Leckstrom ausreichend klein ist. Für diese Genauigkeit müssen Sie außerdem sicherstellen, dass der Sensor und andere Teile des Systems, wie z. B. der Referenzwiderstand, sehr wenig Leckage aufweisen. alles unter etwa 10 M wird einen merklichen Effekt haben.
Wenn Sie eine Messung durchführen, schalten Sie den Erregerstrom ein, warten Sie etwa eine Millisekunde, bis er sich beruhigt hat (denken Sie daran, dass das Sensorkabel eine Eigenkapazität hat, die auf einen stabilen Zustand aufgeladen werden muss), führen Sie die ADC-Umwandlungen auf allen Kanälen zu einem festen Zeitpunkt durch , dann alle außer dem letzten in umgekehrter Reihenfolge zum gleichen Zeitpunkt erneut lesen; Führen Sie bei Bedarf zwei weitere Messreihen durch, um die Eigenerwärmung zu berechnen, und schalten Sie dann die Erregung aus. Die Nennzeit für den Satz von Messwerten ist die des ungeraden Singleton-Messwerts (bei einem Dual-Slope-Wandler ist dies der Moment, in dem der Eingangs-Sample-and-Hold-Kondensator von den Eingängen getrennt wird), und die Messwertpaare sollten gleich sein gleich, aber wenn sie unterschiedlich sind, möglicherweise aufgrund von Eigenerwärmung, können Sie sie mitteln, um einen äquivalenten Messwert zur Nennzeit zu erhalten. Bei einem 4-Draht-PRT haben Sie den PRT-Wert und den Referenzwert, multiplizieren Sie den Referenzwiderstandswert mit dem Verhältnis dieser, um den PRT-Widerstand zu erhalten; subtrahieren Sie für 3-Draht-PRT zuerst den Messwert über dem Treiberkabel vom PRT-Messwert, um die gemeinsame Leitung zu kompensieren. Um mehrere PRTs zu lesen, können Sie sie entweder in Reihe schalten, wenn die Stromquelle genügend Compliance hat und den Eingangsmultiplexer mit genügend Kanälen haben, um einen der Sensoren (oder den Referenzwiderstand) auszuwählen, oder den Antrieb multiplexen - Sie benötigen immer noch einen breiten Eingang Multiplexer, aber die aktuellen Source-Compliance-Anforderungen sind gelockert.
Um den PRT-Widerstand in Temperatur umzuwandeln, könnten Sie versuchen, eine Formel zu generieren oder nachzuschlagen, aber das System, das ich verwendet hatte, hatte die RT-Datentabellen des Herstellers verwendet und eine quadratische Interpolation an den drei nächstgelegenen Datenpunkten durchgeführt. Dies ermöglicht einen einfacheren Wechsel der verwendeten Sensoren (einfach neue Tabelle einlegen) oder eine individuelle Kalibrierung durch Austausch einer Messwerttabelle.
Dies mag für Ihre Anwendung etwas übertrieben sein, aber die akustische Thermometrie ist sehr genau (wenn auch nicht auf dem gewünschten Niveau).
Unterhaltsam geschrieben (wie auch alle Anwendungshinweise mit dem Namen Jim Williams).
pjc50
Yisonco Sterngold
pjc50
Eugen Sch.
Yisonco Sterngold
Andi aka
Benutzer96539
Rohr
Nick Alexejew
Yisonco Sterngold