基于单片机的数字式热电偶传感器设计
2014-04-13于剑超董恩生李清亮
于剑超,董恩生,李清亮
(1.吉林大学计算机科学与技术学院,吉林长春130012;2.空军航空大学飞控系,吉林长春130022)
0 引言
热电偶传感器具有结构简单、工作可靠和测温范围宽等特点,在温度测量中应用极为广泛。热电偶传感器输出的热电势信号小,通常为毫伏级,不适合远距离传输;热电偶传感器需要进行冷端温度补偿,需要配接补偿电桥或冷端补偿器等装置[1],使用不方便;再有,热电偶输出的是模拟信号,因此不便于实现数字式测量。本文提出一种基于单片机的数字式热电偶传感器,实现方式是:首先对热电偶输出的热电势信号进行放大,然后由单片机对放大后的信号进行测量;同时利用单片机对热电偶的冷端温度进行测量,并根据冷端温度对热电偶自动进行冷端温度补偿;测量结果经过处理后转换为RS232 串行信号向外输出。根据此方法设计的数字式热电偶传感器具有工作可靠、传输距离远、便于使用、价格低廉、实用性强等特点。
1 测量原理
由于热电偶传感器产生的热电势为毫伏级微弱信号,为了避免远距离传输对信号造成干扰,在热电偶的输出端利用仪表放大器对该信号进行放大,并将放大后的信号送到单片机内置的A/D 转换器,由单片机对热电势进行采集,获得热端温度为T、冷端温度为T0时的热电势EAB(T,T0)。当T0不等于0℃时,根据EAB(T,T0)查热电偶分度表,所得到的热端温度T 存在温度误差,因此需要进行冷端温度补偿。所以单片机首先通过其内置的温度传感器获得环境温度即热电偶冷端温度T0,经查热电偶分度表得到对应参考温度为0℃时的热电势EAB(T0,0),根据热电偶中间温度定律EAB(T,0)=EAB(T,T0)+EAB(T0,0),可以获得热端温度为T,冷端温度为0℃时的热电势EAB(T,0),再通过查分度表,便可得到所测的热端温度T,从而实现了冷端温度补偿[2]。最后单片机将所测温度T 经过串行通信接口转换为串行数据,并经过串行通信芯片转换为标准的RS232 串行通信格式进行远距离传输。
2 硬件设计
热电偶传感器测量电路由单片机、毫伏信号放大电路、串行通信接口电路和电源电路组成,如图1所示。
单片机(U3)采用的是C8051F352 型号单片机。该单片机具有8K 字节程序存储器,768 字节数据存储器,8 路16 位A/D 转换器,1 个片内温度传感器,1个高精度的内部电压基准,1 个高精度可编程的24.5 MHz 内部振荡器和1 个异步串行通信接口[3]。片内温度传感器用于单片机芯片本身温度的测量,而单片机芯片温度与环境温度近似相等,因此可用于热电偶冷端温度的测量。为了提高测量精度,A/D 转换器工作在差分方式。放大后的热电势信号接到单片机的AIN0.0 和AIN0.1 端,由A/D 转换器进行模数转换。片内温度传感器在单片机内部经多路转换器与A/D 转换器连接,也由A/D 转换器对温度信号进行测量转换。
毫伏信号放大电路由IAN118 仪表放大器U1、可调电位器R1及一些电阻和电容组成。IAN118 是一种低功耗,高精确度仪表放大器。通过电位器R1,可对放大器的增益在1 ~10000 范围内进行调整[4]。放大器的增益G 可用公式表示为
式中:R1为电位器的阻值。
由于不同型号的热电偶输出信号范围不同,所以可通过调整电阻值R1,使放大器的输出信号符合单片机A/D 转换器的要求。另外还需要对毫伏信号放大电路进行标定,以确定放大系数。
串行通信接口电路由MAX232 芯片(U4),电容C13,C14,C15,C16及电阻R5,R6组成。单片机P0.4和P0.5脚分别为异步串行通讯接口的发送端和接收端,与MAX232 芯片对应的输入和输出端直接相连[5]。单片机发出的异步串行通信数据,经过MAX232 芯片后转换为标准的RS232 串行通信格式,信号最大传输距离可达15 m,可以满足一般传输距离的需求[6]。
电阻R3和电容C5,C11构成一个阻容滤波器,用来对AS117 稳压块(U2)的输出电压进行滤波,产生一个稳定的电源VDD,作为数字电路的工作电源。同理电阻R4和电容C6,C12构成另外一个阻容滤波器,用来产生一个稳定电源V+,作为模拟电路的工作电源。
3 软件设计
图1 热电偶传感器测量电路
图2 单片机程序
软件功能框图如图2所示。单片机首先执行初始化程序,对单片机的系统时钟、内部电压基准、I/O口输出功能、A/D 转换采样通道和采样频率、异步串行通信接口的通信方式和通信速率等进行设置;然后运行热电势信号采集程序,采集放大后的热电势,再除以毫伏信号放大电路的放大系数,得到热电偶输出的热电势EAB(T,T0);运行冷端温度采集程序,获得冷端温度T0;然后进行查表计算,对冷端温度进行补偿,得到准确的测量温度;最后通过串行接口发送所测温度。
4 实验验证
该数字式热电偶传感器的测量误差分为两部分:一部分是热电偶本身所具有的误差,这取决于所选热电偶的级别和型号;另外一部分是测量电路所带来的误差,包括毫伏信号放大电路、AD 转换环节以及冷端温度补偿环节等所产生的误差。为了验证所设计的测量电路的测量精度,对一块适用于S 型热电偶的测量电路进行了测试。具体方法是:利用温度计测量出当时的热电偶冷端温度T0,并根据S 型热电偶分度表查出对应的热电势EAB(T0,0),再根据热电偶中间温度定律EAB(T,0)=EAB(T,T0)+EAB(T0,0),计算出EAB(T,T0)。利用一台高精度毫伏发生器,对测量电路发送一定温度T 对应的热电势EAB(T,T0),然后利用一台PC 机接收测量电路发出的温度数据T'。对比T 和T ',即可得到测量电路产生的测量误差。实测数据如表1所示。实验表明,该测量电路在给定温度点上产生的测量误差均小于0.14℃,而II级S 型热电偶的最大允许误差为±0.25% t(t 为测量温度),例如,所测温度为600℃时产生的误差为±1.5℃,可见该测量电路所产生的测量误差可完全忽略不计。
表1 测量数据(冷端温度T0=20℃,EAB(T0,0)=0.113 mV)
5 结束语
本文所介绍的热电偶测量电路,由于具有冷端温度补偿功能,不需额外冷端温度补偿装置,使用极为方便。热电偶输出的热电势信号,由测量电路直接测量,无需考虑连接电缆对信号传输造成的影响。测量结果以RS232 串行信号方式进行传输,解决了信号传输过程中抗干扰问题,提高了信号的传输距离。测量电路提供的串行通信接口可方便地经RS232 接口,或经过RS232 转USB 接口与任何PC 机连接,实现测量结果的数字显示。任何型号的热电偶传感器配备上与之匹配的测量电路,即实现测量结果的数字输出,所以这种数字式热电偶传感器具有很好的应用前景。
[1]梁森.自动检测技术及应用[M].北京:机械工业出版社,2006.
[2]陶红艳.传感器与现代检测技术[M].北京:清华大学出版社,2006.
[3]鲍可进.C8051F 单片机原理与应用[M].北京:中国电力出版社,2006.
[4]BURR-BROWN.INA118 仪表放大器使用说明书[Z].1998.
[5]Maxim Integrated Products.MAX232 Multichannel RS-232 Drivers/Receivers Instruction[Z].2003.
[6]于相斌.电感式传感器测量转换模块的设计[J].传感器与微系统,2010(3):77-78.