測温抵抗体(Pt100、白金薄膜温度センサー)の抵抗値を温度に変換する(平方根を使わない)計算式
まず、悲しいお知らせから。秋月電子通商での白金薄膜温度センサの取り扱いがなくなったようです。正確な温度を知りたいというニーズはあんまりないんでしょうか。RS-Onlineはだいじょうぶだと思いますが....
--------
“平方根を使わない”とわざわざ断っているのはPICでmath.hをインクルードしたくない方向けとの意味合いです。もっとも0℃以下の式は(以前、三次式と誤解していたのですが)四次式で解析的に解くのはけっこう面倒なんじゃないかと思います。
------
この記事の式は
「(白金)測温抵抗体(白金薄膜抵抗)の使い方 - 基礎編というか入門編というか....」
に書いたものをもとにしています。(0℃以上の場合で平方根を使う計算式もこの記事にあります)が、今回プログラム向きに直したところもあります。
基準抵抗値は100Ωで温度係数が3850ppm/℃(0℃~100℃)のものを対象にしています(入手しやすいものはたいていこれに該当すると思います)
以下を基準抵抗値R0の測温抵抗体の温度Tのときの抵抗値Rを求める計算式と抵抗値Rから温度Tを求める計算式です。温度はすべて摂氏です。
--------
ニュートン法を二回繰り返していますがこれで-200℃~850℃の範囲で小数点以下2桁まで確実に求まります。収束のチェックは不要です。
-50℃~100℃くらいであればニュートン法一回だけで小数点以下2桁までだいじょうぶです。
求めた温度の不確かさは使用する測温抵抗体の種類(Class B、Class A、1/3DIN)によって異なります。
これについても白金)測温抵抗体(白金薄膜抵抗)の使い方 - 基礎編というか入門編というか....」をご覧いただければと思います。
--------
0℃以上の場合(R >= R0 の場合)
温度から抵抗値を求める
R = R0*((-5.775e-7*T+3.9083e-3)*T+1.0);
抵抗値から温度を求める。
// 温度推定値
T = (R/R0 - 1.0) / 3.9083e-3;
// 推定温度から求めた抵抗値と抵抗測定値の差(1)
dR = R-R0*((-5.775e-7*T+3.9083e-3)*T+1.0);
// ニュートン法で温度を求める(1)
T = T+dR/R0/(-5.775e-7*2*T+3.9083e-3);
// 推定温度から求めた抵抗値と抵抗測定値の差(1)
dR = R-R0*((-5.775e-7*T+3.9083e-3)*T+1.0);
// ニュートン法で温度を求める(2)
T = T+dR/R0/(-5.775e-7*2*T+3.9083e-3);
--------
温度が0℃以下のとき( R < R0 のとき)
温度から抵抗値を求める
R = R0*((((-4.183e-12*T+4.183e-10)*T-5.775e-7)*T+3.9083e-3)*T+1.0);
抵抗値から温度を求める。
// 温度推定値
T = (R/R0 - 1.0) / 3.9083e-3;
// 推定温度から求めた抵抗値と抵抗測定値の差(1)
dR = R-R0*((((- 4.183e-12*T+4.183e-10)*T-5.775e-7)*T+3.9083e-3)*T+1.0);
// ニュートン法で温度を求める(1)
T = T+dR/R0/(((-4.183e-12*2.0*T+4.183e-10)*T-5.775e-7*2)*T+3.9083e-3);
// 推定温度から求めた抵抗値と抵抗測定値の差(2)
dR = R-R0*((((- 4.183e-12*T+4.183e-10)*T-5.775e-7)*T+3.9083e-3)*T+1.0);
// ニュートン法で温度を求める(2)
T = T+dR/R0/(((-4.183e-12*2.0*T+4.183e-10)*T-5.775e-7*2)*T+3.9083e-3);
--------------------
検算用数値(R0=100.00のとき)
温度 (℃) |
抵抗値 (Ω) |
推定温度-1 (℃) (線形近似) |
推定温度-1から 求めた抵抗値と 本来の抵抗値との 差(Ω) |
推定温度-2 (℃) (ニュートン法) |
推定温度-2から 求めた抵抗値と 本来の抵抗値との 差(Ω) |
推定温度-3 (℃) (ニュートン法) |
-200.00 | 18.52 | -208.48 | 3.68 | -199.81 | -0.08 | -200.00 |
-50.00 | 80.31 | -50.39 | 0.15 | -50.00 | 0.00 | -50.00 |
0.00 | 100.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
100.00 | 138.51 | 98.52 | 0.56 | 100.00 | 0.00 | 100.00 |
600.00 | 313.71 | 546.81 | 17.27 | 599.50 | 0.16 | 600.00 |
850.00 | 390.48 | 743.24 | 31.90 | 847.84 | 0.63 | 850.00 |
-------
関連
「測定対象別記事一覧(測定、電子工作、天文計算)」
温度、気圧をはじめいろんな物理量の測定方法について
「過去記事の一覧(測定、電子工作、天文計算)」
白金測温抵抗体(白金薄膜抵抗)について
「(白金)測温抵抗体(白金薄膜抵抗)の使い方 - 基礎編というか入門編というか....」
「(趣味の)白金抵抗温度計の製作 - 準備編」
「(趣味の)白金薄膜抵抗温度計の作り方 - 誤差について」
「16bitADコンバータMCP3425とPICで作る白金抵抗温度計 - 1」
とても単純な回路です。
「サーミスタ/白金測温抵抗体/pn接合による温度測定のための定電流電源」
ちょっと複雑になりますが、使いやすい回路です。
抵抗比を測定するための抵抗器について
「精密抵抗のお値段 - 抵抗器の精度と価格の関係」
「金属皮膜抵抗と炭素皮膜抵抗の温度係数を測ってみた - まとめ」
定電流回路(電圧電流変換回路)について
「サーミスタ/白金測温抵抗体/pn接合による温度測定のための定電流電源(バイラテラル回路)」
自己発熱について
「サーミスタや白金抵抗温度計の自己発熱の影響を補正する方法」
「白金測温抵抗体の自己発熱(熱放散係数)を測ってみた - 1」
“素人”でもできる校正について
「氷点 - 摂氏0度の作り方」
「氷点・摂氏0度の作り方と使い方 - センサーの位置と温度の関係」
「体温計と魔法瓶で校正する白金測温抵抗体 - 36.5度編」
「Pt100(白金測温抵抗体)の校正状況 - 氷点=0.0℃編」
「脇の下恒温槽と体温計で白金抵抗温度計を校正してみた」
「続・(白金)測温抵抗体の氷点での抵抗値を測ってみた」
「(白金)測温抵抗体の氷点での抵抗値を測ってみた」
“温度”について
「PICで作る温度計のセンサー比較(I2C/SPI温度センサ、サーミスタ、熱電対、白金測温抵抗体、pn接合など)」
「正確な温度を求めて (1)」
「温度センサ(サーミスタ・熱電対・(白金)測温抵抗体)の誤差」
「16bitADコンバータMCP3425とPICで作る白金抵抗温度計 - 1」
参考
「白金抵抗温度計の校正とその使い方 - JCSS:計量法認定」
「はじめての精密工学 - 白金抵抗温度計を用いた精密温度測定」
「JEMIC 計測サークルニュースVol.26, No.2 ~ 4 連載(1997) - 浜田登喜夫 - 白金抵抗温度計の校正とその使い方」
« 水の電気抵抗(電気伝導度)を測定するときの周波数、電圧、波形、温度、電極 | トップページ | 四象限アナログ乗算器EL4083CNで作る交流テスター - 周波数特性(1) »
「趣味の電子工作」カテゴリの記事
- PICで作る100MHz周波数カウンタ検証用XOR(エクスクルーシブオア)逓倍器(2016.03.08)
- 150MHz(~200MHz?)周波数カウンター用プリスケーラー(1/4分周器)(2016.03.06)
- 測温抵抗体(Pt100、白金薄膜温度センサー)の抵抗値を温度に変換する(平方根を使わない)計算式(2016.03.01)
- GPS/JJY(標準電波)を基準周波数源とするためのPLLの詳細(2016.02.27)
- GPS受信モジュール1PPS対決 - GE-612T vs GM-5157A(2016.02.21)
コメント
この記事へのコメントは終了しました。
« 水の電気抵抗(電気伝導度)を測定するときの周波数、電圧、波形、温度、電極 | トップページ | 四象限アナログ乗算器EL4083CNで作る交流テスター - 周波数特性(1) »
さて、温度計測の肝と行きましょう。
ディジボルで計って(ADコンも同じ)ということですが、4桁半などで計ってたのでは、とても精度とまでは行きません。
キースリーなどの6桁半くらいが必要になります。
そこで原理的にそれぞれの誤差を打ち消す方法を考えますと、
普通の理論ではブリッジ回路ですが、面倒なのでハーフブリッジにしましょう。
同じ電流を流し基準抵抗に100Ωと考えると、直列にしてPT100は外部ですから4線式にします、これはフローティング状態で動作します。
基準抵抗は内部ですから自由に調整もできます。
全体のゼロ調整には100Ωの±が必要になるので、大きめの基準抵抗に安定な可変抵抗10Ωや100Ωのトリムポット(金属皮膜高安定)と直列にした抵抗を、並列につなぐとトリムポットの中点が、丁度の100Ω相当になります、これを調整すればあとに出てくるリニアライズも含めて調整できることになります。
測定電圧から基準電圧を引く、そのためには、増幅を使わずできるだけ簡単な、スイッチ(安いCMOSアナログスイッチ)で交互に切り替え打ち消すことを考えます。
この切り替え信号はLTC1052/LTC7652から取ることが出来ます。
差の電圧だけを出すためにスイッチをキャパシターにつないでやればドリフトもスイッチ分だけです。
安定な計測電流は、電流源から4端子測温体に流して、基準抵抗に流す、基準抵抗の電圧を測って基準電圧と比べ、電流を制御、つまり基準抵抗の電圧が規定値になれば良いのです。
これは電流制御用ですが、
計測は別回路のスイッチで測温体の電圧をキャパシタにつなぎチャージします。(上+、下-)
初回は電流を取りますが次回以降は前の電荷が残っているので電流を取り込みません。
つぎに、測温体の上側の+を基準抵抗の上+につなぐと下側のC電圧-は基準抵抗の下(GND)に対してマイナスの差分電圧になります。
これを高性能のZero-Drift Operational Amplifier バッファ込の回路(バッファード)で増幅してやれば良いのです。
基準抵抗から電流を取らないので、測定電流にも影響がありません。
続く
投稿: 猫村 ねこ丸 | 2021年3月26日 (金) 15時35分
LTC1052/LTC7652 が以前のICではないのです
https://www.analog.com/media/en/technical-documentation/data-sheets/1052fa.pdf
危険と出るweb有効期限が切れてる
https://datasheets.maximintegrated.com/en/ds/ICL7650-ICL7650B.pdf
インターシルに有ったが今は出てこない。
外部クロック用に14ピン有る、ICです。
投稿: 猫村 ねこ丸 | 2021年3月26日 (金) 16時39分
おそらくこれは EXT CLK IN INT CLK OUT があるのでクロックが出せます。
https://www.renesas.com/us/en/document/dst/icl7650s-datasheet
驚異的
Change in Input Offset with Time VOS/T +25 - 100 - nV/month
Average Temperature Coefficient of
Input Offset Voltage (Note 3)
VOS/T 0 to +70 - 0.02 - V/°C
Input Bias Current |I(+)|, |I(-)| IBIAS +25 - 4 10 pA
Input Offset Current |I(-), |I(+)| IOS +25 - 8 20 pA
投稿: 猫村 ねこ丸 | 2021年3月26日 (金) 17時12分