找回密码
 注册
关于网站域名变更的通知
查看: 325|回复: 1
打印 上一主题 下一主题

利用单片机消除热电阻测量误差

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-3-18 15:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

半导体热电阻结构简单,其电阻值大,反应速度快,灵不受外界的影响,但是正常采用的热敏电阻是具有负温度特性的非线性元器件,且输出电势比较小,必须经过放大才能满足ADC的输入要求,放大电路的误差主要于放大器的失调电压和增益Av的漂移,本文介绍单片机对上述测量误差进行修正的方法。
; f3 I% ~/ @; {+ E# P/ J& r0 Y) ?; g# B) m/ X+ V' M2 ~
1 对半导体热敏电阻非线性的影响
3 G% R) E" Z5 {# f! }
* x6 u9 {+ T! f热敏电阻负温度特性的非线性,其关系如下:+ f# w+ y5 w7 l/ {4 G0 ^
Rr=AEB/T
  z0 X8 F3 r8 W: q& H) d) t+ p$ u9 W" t( Q% R0 r

; L  F6 L5 K6 j/ ]此非线性使得他很难用相关的电路来进行补值,在使用有微处理器的系统中很好的解决这个问题。实践证明因电路的离散性直接使用此公式的误差很大,使用数字工具只需简单地测量温度和模数转换结果之间的关系,通过实测有限个数据点。利用多项式拟合的方法在Matlab中编写一个程序可以实现,使用四阶多项式拟合可满足要求实际应用。
$ w: g  b7 e/ M: v4 z7 r实际应用中考虑到单片机的运行速度有限,无法进行大量的浮点运算,此程序运行之后可以生成一合乎需要的表,单片机通过查表得到ADC转换的值,便可以知道所测的温度。
/ O: n% ?- v+ d5 m
5 u) x% j& z/ @! E) b2 对放大器失调电压和增益漂移的影响
, J& e4 o, S* h, x" C; {$ u9 u# f7 W- _; }9 z; g: y( x# e
影响放大器测量精度的因素很多,其主要因素有:
* ?' n- \% d/ u1 a0 v" W1 V* i; n# _9 |
(1)增益漂移. Z" E" v# G( P6 z' n6 q

3 ]7 S, k5 b5 O' x0 X由于元器件的老化,使其参数发生变化,从而使放大器表现出来的增益和事先设计好的增益相比,发生了偏离,最终导致测量结果发生偏差,精度降低。
6 Q( x% u3 \; M: m7 _9 S' v" y% ~) H' I1 W0 w& s% o% _  n
(2)温度漂移
7 S- Y4 \. ~/ q- F4 U- w4 @3 J: {
' u+ S: J1 @8 q  B* R! c# _2 S随着放大器使用环境温度的变化,运算放大器的失调电压UIO也会随之改变,从而导致测量结果偏离,精度下降。
% J& M5 v$ C* E) U9 k! a
: i. n  ?0 Z: p9 o8 r针对上述的两种原因,如果能得到测量时刻放大器失调电压UIO增益Av真实值,再通过单片机编程运算求出传感器的输出量,从而避免了上述的两种原因对测量精度的影响。系统硬件结构框图如图1所示。9 R& T8 P  }% a4 W7 Q
7 c# g# E4 B. S* A5 R
温度稳定性极高的MCl403和3只温度稳定性好的精密电阻R1,R2,R3,通过模拟多路开关为放大器提供了2个标准电压,考虑到运算放大器的失调电压:
, X, G/ ]( U$ j9 M7 c( e

$ P3 l6 ^+ X1 E1 T

, [1 P4 f/ P' {由此可见,所要测量的信号仅与输出信号UO,一个参考输出电压,两个参考输出电压有关,而这些量都是已知的。因此可以通过单片机编程计算出当时要测量的信号,在式(9)形式上似乎Ul与Av,UIO无关,实际上式(9)隐含对Av,U20的补偿作用(因为式(9)是式(6)演变来的)。其程序结构框图如图2所示。5 G: e" v! s" U

+ A2 q/ h( [5 J) |0 V
- B8 J; g# I9 z3 `/ P; `; o
3 结 语
5 x+ A) G! J8 p" z; I2 U
6 ?  A5 W5 i) E8 {/ L. t% s由上面分析可知,通过对硬件采取一定的措施,再加上单片机编程计算能力,提高了系统检测精度,在我校课程设计中得到验证,具有较高的实用价值。


4 @  _) z7 U2 x

该用户从未签到

2#
发表于 2020-3-18 15:16 | 只看该作者
实际应用中考虑到单片机的运行速度有限,无法进行大量的浮点运算,此程序运行之后可以生成一合乎需要的表,单片机通过查表得到ADC转换的值,便可以知道所测的温度。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-21 05:55 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表