バンドギャップベースデジタル温度センサー誤差の曲線近似(カーブフィッティング)

バンドギャップベースデジタル温度センサー誤差の曲線近似(カーブフィッティング)

著者の連絡先情報

要約

このアプリケーションノートでは、バンドギャップベースデジタル温度センサーを改善する数学的手法が紹介されています。この手法によって、デバイス誤差特性のオフセットと曲率が補償され精度が上がります。この技術は、マキシム・インテグレーテッドの高精度温度センサーICにより提供される±0.5℃以上の精度を必要とするアプリケーションで有用です。

はじめに

マキシム・インテグレーテッドは、独自の製造方法を使って温度精度が最高±0.5℃の出荷時較正済みデジタル温度センサーを提供しています。この精度レベルは多くのアプリケーションで十分ですが、ある種の科学的および産業用アプリケーションではさらに高い精度が要求されます。
このアプリケーションノートは、デバイス誤差特性のオフセットと曲率を補償することで10倍もバンドギャップベースデジタル温度センサーの精度を改善できる技術を紹介します。この手法はシンプルな2次誤差曲線、およびバンドギャップベースセンサー用の全温度範囲で反復可能な出力の性質によりうまくいきます。
このアーティクルで紹介された技術は、バンドギャップベース熱回路を持つあらゆるIC温度センサーに適用可能です。この技術は、デュアルオシレータベースの熱測定回路を持つマキシム・インテグレーテッドの古いサーマルICでは作用しません。

誤差補償

バンドギャップベースセンサーに特有の2次誤差曲線を示すために、DS1631 ICは-35℃& src="/jp/_/media/analog/en/landing-pages/technical-articles/curve-fitting-the-error-of-a-bandgapbased-digital-temperature-sensor/diamond.gif?rev=c8d326771a6744bba94d9367a3352662#65374;+85℃の温度範囲で、熱伝導性の液体容器内でモデル特性化され、NISTトレース可能なプラチナ測温抵抗体(RTD)に対する温度誤差が5℃間隔で記録されました。この一掃による結果を図1に示します。( = DS1631バス測定)
図1. DS1631の測定誤差と計算された誤差
図1. DS1631の測定誤差と計算された誤差
図1に見られる誤差特性は、以下の式で表現される2次曲線を作ります。
Error = OFFSET + α(TTS - TZERO_SLOPE)2 (式. 1)
ここでTTSは温度センサー(この場合DS1631)によって測定される温度、αは曲率補正係数、TZERO_SLOPEは誤差曲線がゼロスロープの温度、OFFSETはTZERO_SLOPEの誤差です。
式1が温度センサーの出力誤差曲線の近似となるようにα、OFFSETおよびTZERO_SLOPEの値を決めた後、あらゆる温度におけるおおよその測定誤差を計算し、測定温度から計算値を引くことで誤差を補償することができます。補償された温度は以下になります。
TCOMP = TTS - Error = TTS - [OFFSET + α(TTS - TZERO_SLOPE)2] (式. 2)
この技術で最高の結果を出すには、各温度センサーが、特定デバイスの最も良く近似計算された誤差曲線を決定するために、必要とされる温度範囲にわたってモデル特性化されるべきでしょう。

この例には、前述の補償手法を説明するために、特性化されたDS1631が使われています。表1にはDS1631によって測定された値、実際の周囲温度に関連する測定誤差が列挙されています。図1を見ると、TZERO_SLOPEは15℃で、OFFSETはおよそ-0.23℃と見積もられ、α = 1.28 x 10-4は測定誤差曲線と非常に近似適合しています(図1参照)。表1の補償温度は、測定温度を式2に入れた結果を示します。表1と図2にあるように、周囲温度に対応する補償温度誤差は元の測定誤差よりも1/10以下です。
図2. 補償誤差の例
図2. 補償誤差の例
ベストフィット曲線を提供するTZERO_SLOPE、OFFSET、およびαの値にたどり着くまでには何回かの反復が必要となることがあることに注意してください。いったんTZERO_SLOPEとOFFSETの最初の見積もりが完了するとαはすぐに利用可能な計算、またはスプレッドシートソフトウェアで計算することができます。
表1. 補償データ例
Ambient Temperature* Measured Temperature Measured Error Compensated Temperature Compensated Error
-43.1377 -42.9375 0.20015 -43.13603 0.001619
-39.3466 -39.25 0.0966 -39.39572 -0.04912
-34.2368 -34.125 0.11182 -34.20308 0.033737
-29.0969 -29.0625 0.03443 -29.08036 0.016573
-24.1398 -24.125 0.01481 -24.09042 0.049389
-19.2454 -19.3125 -0.06715 -19.23280 0.012547
-14.0779 -14.1875 -0.10964 -14.06626 0.011603
-9.10834 -9.25 -0.14166 -9.09507 0.013266
-4.08784 -4.25 -0.162158 -4.06731 0.020535
0.769446 0.5625 -0.2069459 0.76589 -0.00356
5.831063 5.625 -0.206063 5.84378 0.012717
10.84934 10.625 -0.22434 10.85256 0.003216
15.79473 15.5625 -0.23223 15.79246 -0.00227
20.79082 20.5625 -0.22832 20.78855 -0.00227
25.70361 25.5 -0.20361 25.71593 0.012315
30.74484 30.5625 -0.18234 30.76158 0.016741
35.60317 35.4375 -0.16567 35.61418 0.011006
40.57861 40.4375 -0.14111 40.58489 0.006284
45.68797 45.5625 -0.12547 45.67325 -0.01472
50.56738 50.5 -0.06738 50.56911 0.001733
55.58933 55.5625 -0.02683 55.58245 -0.00688
60.51409 60.5625 0.04841 60.52748 0.01339
65.35461 65.4375 0.08289 65.34273 -0.01188
70.54241 70.6875 0.14509 70.52161 -0.0208
75.40949 75.625 0.21551 75.38579 -0.0237
80.41012 80.75 0.33988 80.42811 0.017987
85.26303 85.6875 0.42447 85.27961 0.016576
*NISTトレース可能なプラチナRTDによって計測