EDA365电子论坛网

标题: 【求助】如何用热敏电阻写出较高精度的温度计 [打印本页]

作者: hi_yjs    时间: 2013-1-25 13:38
标题: 【求助】如何用热敏电阻写出较高精度的温度计
本帖最后由 hi_yjs 于 2013-1-25 21:14 编辑 " K# w- Z+ c" S+ j
6 M8 T! c! e' [  F
最近用热敏电阻做个温度计。
  @# L: O/ X7 c. b大家都知道,热敏电阻阻值随温度是非线性变化的,而且规格书也只是跳跃地给出部分对应值。$ P/ d% w0 h+ g+ H9 {
请问该如何写出较高精度的程序呢?
9 j( ]! o# `) h. m1 J+ u(查表吗?那样表格会很庞大吧?而且取值也不好计算吧?)" H- G4 G( I8 c2 e$ D. w8 @4 J

# H2 u$ z2 Q, M2 z5 A3 U' F付热敏电阻部分对应阻值表:
# @* `) a: A+ O( PLT804;BValue25/50=4020;R25=100K" ]5 U) z# e+ I9 i
温度        电阻值
* o# d/ u* m' f-50        7291.38; E. V$ |9 X& T
-49        6774.88
% v* j. w9 U3 Y-48        6298.61
+ @8 G* ]! q/ [. L$ _: V-47        5859.170 e5 O) g: j8 f) i. i9 P5 w
-46        5453.45
) L4 }. k9 h& a0 |2 S- N-45        5078.66
6 D. m* X- S! C$ T-44        4732.22! S# z, I8 z  f; x) y
-43        4411.83 Y! o" f, H9 d/ Z* F
-42        4115.28
" e* C6 c: V! s-41        3840.72
: M. y+ u& l, O-40        3586.35
( I! j+ I6 g$ h! [/ w-39        3350.55
( \# q2 r! T8 n7 j, ~0 V9 R" K' Y% I-38        3131.85
4 T# G( i: s7 e9 b2 _( k( o) O% X-37        2928.9
$ w. r# x; W  Z2 z( {-36        2740.466 O6 m; Z1 D8 x* ]# N( T
-35        2565.4
1 g0 Q  A/ W+ J/ e6 _- X0 F-34        2402.69
3 A9 M! U7 u" [-33        2251.37* z+ o, c1 Y* l1 m7 g
-32        2110.58
0 D2 A6 T7 |/ }/ W-31        1979.52
! E( s) g/ @: y% w-30        1857.46
. w9 M2 E" f% Z" ?2 P- J-29        1743.72* {  W' z7 [# \- u% S
-28        1637.68' ^# i/ w# {7 U& W. {0 D1 Z2 e6 {
-27        1538.771 Z( `# }. H/ U9 Z
-26        1446.47+ x( e2 l4 o  R2 s
-25        1360.3
2 ?1 C9 B+ Y$ ~+ G0 E, ^-24        1279.82; v2 n+ k8 I8 h% i9 e% Q
-23        1204.61/ K" \0 k- y$ U: p* @4 e# i' i
-22        1134.29: w1 ?# U3 g: Q+ p
-21        1068.52; F# u/ U$ d8 A9 b, z9 B- w
-20        1006.98
4 Y/ U4 W4 P2 N4 `-19        949.3681 k7 V% J' O) R
-18        895.4118 S, c# U) L7 E  Y; V
-17        844.856# e- o: h& A+ l& A% v" _
-16        797.467% G" w; j' F* J8 ]% B" S& R6 U( l
-15        753.028
: ~0 `9 T- u, M+ k1 j& c) C-14        711.338% r; ^7 J5 d8 _' `! O
-13        672.211
5 {; a2 E% ~7 c-12        635.474% l/ H/ I1 E2 p! Y% m  a* f
-11        600.967
! ]" u3 y1 a8 S7 ^, }  d9 {-10        568.543
" }- `$ g- k; j' L: j* x8 m; B, B/ B-9        538.063  {8 J, ^8 }9 q" O/ |, F6 w
-8        509.4+ I7 ?6 J1 C& D+ F3 ]3 r4 P6 |
-7        482.435
8 G: P# N" {. q! t- L-6        457.057
( ?) R7 G9 R- P2 L3 R" g& N-5        433.165  V1 T3 Z2 G- K3 e& r
-4        410.663' w6 D3 z4 t- o
-3        389.462
7 p5 I5 C. L# c' `0 \-2        369.479
: `3 n0 a7 k$ _4 `0 a; e! t  e, p-1        350.6398 Z% J; [, [6 ~# ?# k
0        332.868
. L# o  m  G$ i1        316.102
! v) y1 v1 B- X, @# b+ Z2        300.276
+ c  d, O6 X, L1 E% V3        285.334
" V0 [* Q% S0 ^1 f: [4        271.221) x6 o' D  r  o0 N0 P
5        257.886
; U8 s9 |6 R  Z' S  p$ V0 @& O+ A& m" Y6        245.283
! t% P1 o" X, x# @7        233.367
, E0 {/ I$ N% q! t8 F2 n8        222.098% b, {6 Y$ h( T( }& Z, n2 ]
9        211.4350 \" Z; x4 E, |4 N% N* @
10        201.345
- c% p' r) z! \( H11        191.792
3 w  T1 g  G% H2 Z7 f0 k12        182.7463 d4 A: V" r% Y' d% b; D
13        174.176
; N/ v) w9 s, ^3 ^0 b! L% p14        166.056
! V! T% {/ D, _: Y7 L% }% ]4 i15        158.3591 k4 @7 @- j  H9 E' P0 g
16        151.06
8 h+ n, g/ q' U17        144.138
- D5 M/ n9 c; Q: v18        137.571
3 G/ u, J/ T# l  }19        131.339
6 ?/ _: N3 B% a, |20        125.423
1 ?5 V* ~. y8 Q$ y6 U1 }- ?2 M21        119.805# U4 e7 F. i. Z$ t* `- g5 x$ `& I
22        114.4698 q8 ^9 R2 z) w7 F5 {& q; P, B
23        109.399
# E5 d' H  u- Z. |4 Z& I24        104.581$ f5 N* `1 j* b) F0 _
25        100; o6 X; }9 c, B) B% X
26        95.6443
& K" q' Q2 K2 c2 I1 N' B% i: Q, p  R27        91.5013- b. z5 p( a7 o( r7 f) D0 M
28        87.5596
5 i% `# c/ X" `  e29        83.8083
4 x" n/ j1 J3 V8 m30        80.2372
( `* J" {& Z- ]4 H/ A( Z31        76.837
$ @; ?- ~0 ^" ~1 d32        73.5984
: A/ B$ V; V! z33        70.51316 ^; G$ }5 N- f) V( H3 D) E
34        67.573
0 r/ G2 j- q# j# A0 q* V35        64.7706
% D, B5 `0 ~% i; G36        62.0987
9 X- `: M$ b3 h37        59.5507: d+ q/ e8 E6 a- h) l( O4 q
38        57.1202
  Z) S4 K8 i: y. y9 ]1 |39        54.8011
+ t. B1 P* b8 _0 e: T4 b40        52.588- U9 L  N6 @6 G9 A% n. P
41        50.4753
& ?# D8 m0 h1 J8 k, [1 j42        48.4581" R1 g, ], y0 T) ]% q
43        46.5316
6 o8 i4 H/ o/ O; V& X9 Y. @/ E0 r44        44.6913
+ ~* q/ {- K# c7 e, \45        42.933. Y- t' T# x4 A7 d; ^& P
46        41.2525
% [7 m4 [5 |! n% Z3 p2 G7 C47        47.3965
# }+ z% [) X. B/ o: [48        38.111 e" B, N( W$ c$ Q' {7 K3 l# N
49        36.64111 J0 {  G3 _7 b: n# i# }. _) i
50        35.236
) h: b4 r! j* ]  z: ]! D" D51        33.8916
& K! N5 b& n1 a/ a- L52        32.605& D+ B/ K  v  Q2 A5 D" T; P
53        31.3734
5 \2 ]: |0 B( h0 r54        30.1944
- J+ D8 g% P% j$ d/ k55        29.0653$ g8 y4 j, Z) @2 z1 x1 s( A
56        27.9839
6 I7 B0 I1 I# H4 {" c/ w; O57        26.9478
5 W% q7 M+ a$ w& q/ x58        25.9551
4 l* t4 \7 `& ?' W" B. T59        25.0036
6 a+ n8 o0 X) O) ^; Y8 N60        24.0915
1 T9 S' i& S* Q61        23.217! |6 Z) D4 O4 c" t+ C( u
62        22.3784
0 A% |% y( o4 g( ^7 ]6 E63        21.574* o* q9 v: p* a2 {
64        20.8022
& x* k) U5 c! Y$ p3 F3 C65        20.0617
, A1 I; o7 O& A' G- c66        19.351
6 S4 h  ~. f; ^! Z7 S5 k. j+ r67        18.6687" J+ r4 ]# @6 a( Z# K
68        18.0137
$ U/ T/ }4 m6 B$ o& h69        17.3847
  `% d& x8 z4 r0 x. V0 \/ a; z- n70        16.7805# O2 t0 ?& ]6 C9 D0 ^0 P( x/ M
71        16.2001
. T, w/ @0 S- C& o72        15.6424. H* e+ ]# d$ x8 q5 X9 y* L
73        15.10649 I9 n$ n  f- G+ f
74        14.5913
' Y: s) d9 D( n5 l75        14.0965 U3 \9 e  ^, V' S  X2 o
76        13.6198
; _. ?9 P  E& O- @) l! Y4 p77        13.1618
7 H4 L7 o+ i4 C3 e; [, r; O! Z78        12.72133 p) C3 a; ~& E; m) e- c' V
79        12.2975( x$ D0 X! l' C; Y1 H9 r% Q
80        11.8897
) W; w5 K4 x7 D+ g81        11.4972
( f, X! j2 x9 r2 a; @82        11.1195
* m1 v4 e6 U3 `5 p$ l; x83        10.7558, S( K# O+ ~! w9 Y
84        10.40561 i# k+ m3 b/ X& H: x- E! Z
85        10.0684; l* k  \$ d; `9 v5 F9 f
86        9.74357 z6 S3 D# z# l+ R9 j4 |. r; Z; i5 ?
87        9.4306
4 s; N# h0 I9 @8 j8 a4 Y$ m  X88        9.1291
: k5 s7 V6 k2 w2 j  U7 z2 }" a5 B89        8.8385: _$ S/ s4 i( N# j
90        8.5585. ]7 j4 g1 `4 r7 Y
91        8.2885+ J; {' [- c* {
92        8.0283$ s( d3 T, [3 [$ x
93        7.77737 l, ]2 N4 s& a6 G4 N+ z! A4 X. H$ P5 L
94        7.5352
/ n- O- j% `$ I* y' K% M95        7.3017: o) m& ~5 M+ B* S; @
96        7.0764
1 s4 F( u# E5 Z% _/ T# d! K97        6.8591# m; l7 `) S# }% U! L
98        6.6493( k: X. v+ |5 e
99        6.4469
( R; m6 K( h: g6 f6 T1 M0 c8 f4 z100        6.2515& H, H! ]: p8 L7 e( ?
101        6.0628  t+ g+ n2 |7 ?/ g; |& x0 z& w
102        5.8806
3 e9 m' H1 a" t4 \+ _1 H103        5.70465 j; T" B6 Q* B" A9 V* k
104        5.5347$ l' b/ s' ?# L# m3 i4 {+ M! W# t- n
105        5.37057 @! h0 S# Y" F0 [. Q1 J& K5 L
106        5.2119) X# }* N! ^5 S3 h1 r/ u' x( B3 i. D
107        5.0586( t. M, I6 |; }$ J9 s  e
108        4.9104
, P3 z6 v# C; g4 a5 F109        4.7672+ k* j' m8 H% {* a
110        4.6288
8 x7 H4 N$ {2 s111        4.495$ R- l/ X* j# z6 ?# L$ b
112        4.3655: T3 |' t: d5 G9 p
113        4.24049 w$ c* d; ?1 F
114        4.1193
4 ^* Y6 I% d! D5 n! u+ a5 @
作者: hi_yjs    时间: 2013-1-29 11:15
SOMEBODY HELP ME~
作者: 超級狗    时间: 2013-3-15 00:53
不曉得樓主掛了沒?救命喊這麼久也沒人理他!
8 |0 S' R+ r$ l" @* P9 q" O' h3 Q' Z
熱敏電阻是對溫度的關係是有計算式的,不過如果你的 CPU 沒有浮點運算器(FPU︰Floating Processing Uinit),用算的不曉得會不會算到死?
0 O% `4 a1 ]" C
7 W% `+ Q$ ?* \而且用算的會不會比較準?我是存疑。畢竟廠商提供的阻值表是量測統計值,而公式則是近似值。
" s, J: [, u, r# {8 X5 z% K, o; a2 I; b! o# S2 ?
要準就選擇誤差值較小的 NTC(0.5%),再不然就是用市面上一些專門量測溫度的 IC,例如 TI TMP102 或 TMP105。7 I3 r+ t& c' d" Y3 j$ d

& `5 }3 g. R. `小弟有三點建議︰
  R2 V* {/ I: v4 p0 x( e( Q1 H8 e; b% G一、溫度本來就不是很準確的物理量,誤差在 1 度以內的量測算是很精準了。
; Z2 w! U! c9 n& K$ a0 ~! ~0 P二、是 NTC 的阻值不準?還是 ADC 的量測不準?需要釐清一下!+ K( x, z2 k2 g, a* l: D8 t7 R
三、查表 + 內差法也許是最好的方式。
4 j6 e- T" K2 r$ N  d6 j! f0 _2 W# m9 Z

NTC.jpg (66.22 KB, 下载次数: 5)

NTC.jpg

作者: 超級狗    时间: 2013-3-15 01:01
我忘了講一件事︰/ L& W% y. |5 J2 W$ c: o( f6 y. x3 W
要準還有一個方法,每部機器生產時分別做校正。很多能精確測量的儀器都是這樣做的,唯有這樣才能排除元件或線路個別差異所產生的誤差,因為這點是你無法用統一的方法排除的。/ t0 s, E5 G: |# E. n. m
/ p6 t6 t( V. o  T* R" Q/ k/ r! ~* o
{:soso_e189:}
作者: hi_yjs    时间: 2013-3-15 09:21
超級狗 发表于 2013-3-15 01:01 " N5 T  c) n% U1 y. }
我忘了講一件事︰
# t% d- Z9 M; _  [' Z. q要準還有一個方法,每部機器生產時分別做校正。很多能精確測量的儀器都是這樣做的,唯有 ...
: F9 D1 K: x- j4 \, B
非常感谢~
作者: hi_yjs    时间: 2013-3-15 09:28
超級狗 发表于 2013-3-15 00:53 # u1 ?1 _9 v3 m0 W( w1 B& i
不曉得樓主掛了沒?救命喊這麼久也沒人理他!
' ^! K1 I- {, }! u6 ^6 ?, b0 f$ q9 n3 \. B8 n- x2 g& F( S
熱敏電阻是對溫度的關係是有計算式的,不過如果你的 CPU 沒 ...
) `; ^5 Z/ C% v, f7 w, ]6 N# T
项目已经死掉了~
/ z! |2 U8 z6 m. |/ V  ?但方法还是要求的~
8 j. Y5 L" t* W; g+ k- S" o刚刚查了一下内差法,觉得非常靠谱~
* o7 r0 J$ w+ s我最开始也是想那样写,但感觉会很长,但刚刚问了一下度娘,似乎清晰了~$ z& \' \1 T% Y, t* M
谢谢啊~
作者: 超級狗    时间: 2013-3-15 09:30
很高興有幫上你!
9 m  r6 u6 z/ q" t' h# L: L, J9 b6 S1 Z4 E8 r
{:soso_e100:}
作者: hi_yjs    时间: 2013-3-15 09:43
超級狗 发表于 2013-3-15 09:30
) A. n$ k" g, |5 P. c$ b+ c+ p很高興有幫上你!

9 ^3 z8 p  u3 V+ @9 I8 z2 |{:soso_e181:} 我更高兴~
% V* u; ]; }5 h7 \3 i; K8 J* E5 d哈哈~




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2