传感器在使用前或使用一段时间后是需要标定的。为了迅速完成大量传感器的标定与特性分析工作,本文开发了一套STC89C52-PC系统,用在温度传感器的标定与特性分析上,得到了满意的结果。
1 标定和特性分析的方法
1.1 标定方法
标定是指:在规定的条件下,为确定测量仪器或测量装置所指示的量值,与对应的由标准所复现的量值之间关系的一组操作。在本系统中,标准所复现的量值是标准温度传感器所显示的数值,它准确且稳定地指示当前温度;测量仪器或测量装置所指示的量值是由各个被标定的温度传感器所采集的信号经过处理后所显示的数值。
1.2 特性分析方法
特性分析是指对温度传感器所测温度与电压、电阻量之间的关系曲线进行描述与分析。
对于热阻效应的传感器,温度特性是指阻值与温度的关系;对于热电效应的传感器,温度特性是电动势与温度的关系。在本系统中,温度值是标准温度,待分析传感器的相应电量是由各个温度传感器对应的处理电路进行放大、采样、A/D转换得到。通过数据处理和分析,得到不同的温度与电量之间的特性曲线,分析其线性度,就可以知道温度传感器的性能好坏。
2 系统构成
本系统是一个软硬件融合的产品,由单片机、外围电路和温度传感器构成数据采集与处理部分,由PC机进行数据处理和图形化显示,单片机与PC机通过RS-232实现主从式通信。
2.1 硬件系统的组成及实现
2.1.1 硬件系统。
2.1.2 硬件系统各部分说明
(1) 数据处理模块
系统中数据采集及处理由STC89C52单片机实现,它是本系统的,因此单片机型号的选择很重要,它关系到系统的稳定、功耗、可操作性等各个方面。
(2) 标准温度测量模块
标准温度测量模块由Pt100和精密电阻组成的四臂电桥以及AD7705组成。Pt100是线性度非常高的温度传感器,稳定性好,灵敏度系数为3 850 ppm/℃,配合高增益放大电路可以实现高灵敏度。为了消除布线电阻对测量误差的影响,Pt100采用三线制接线方法。使用为1‰的精密电阻可以减小前端电桥引入的误差。AD7705是Analog Device公司出品的适用于低频测量仪器的低功耗A/D转换器,它内部集成了仪表放大器和模数转换器,能将传感器的微弱信号直接转换成串行数字信号输出;片内可编程放大器可设置增益为1~128;采用Σ-Δ的模数转换机制,实现16位无误码的A/D转换;通过片内控制寄存器可设置数字滤波器的个凹口,能够有效滤除工频噪声。
(3) 待标定温度传感器信号采集与处理模块
①放大电路
各路温度传感器信号在数字化之前,需经过放大电路处理。放大电路有3个作用:对微弱信号进行放大;阻抗变换;有源滤波。
本系统选用的是AD623集成仪表运算放大器。它的特点在于只用1个外接电阻就可以获得1~1 000的增益、高、高共模抑制比,偏置漂移典型值只有0.1 μV/℃。使用AD623作为前级放大器,提高了放大的度与稳定度,实现了微弱信号的高倍放大和滤波处理。
②多路模拟输入A/D转换电路
为了尽量减小A/D转换部分的误差,本系统采用MAX186多通道模数转换器。它是一个8通道12位高速超低功耗模数转换器,采用逐次逼近的A/D转换技术,内部有宽带跟踪/保持电路和串行接口;8路单端输入或4路差动输入可由软件设定, 转换结果由串行接口输出。分辨率为12位,采样速度达133 kHz,芯片可由单5 V或双±5 V电源供电;其串行接口可与SPITM、QSPITM、WicrowireTM兼容;可采用内部时钟或外部时钟完成A/D转换;内部基准电压为4.096 V,也可以外接基准电压;具有硬件关断和2种软件关断模式。
铂电阻和NTC热敏电阻的信号转换电路采用系统电压作为驱动电压,输出电压值应与系统电压成比例。为了减小A/D转换电路引入的误差,对应于铂电阻和NTC热敏电阻的A/D转换电路基准电压也应与系统电压成比例,本系统中采用VCC/2。
热电偶和热电堆红外温度传感器的输出信号是电动势,无需信号转换。为了更准确地将该电动势转化为数字量,对应于它们的A/D转换电路的基准电压应该是准确且稳定的,本系统中采用的内部基准电压为4.096 V。
(4) RS-232串口通信模块
硬件电路和PC机之间采用RS-232串口通信技术,通信芯片采用MAX232。该芯片只需+5V供电,内部集成电平转换电路,外围电路简单,只需3根线就能完成半双工通信,且传输可靠。STC89C52有专门的串口通信引脚RXD、TXD。本系统中采用的STC89C52的Timer2作为串行数据传输的波特率发生器。
(5) 键盘与液晶显示模块
键盘功能:选择被标定和分析的传感器;设置温度范围;选择要查看的对象;同时为了使系统更实用,还有主菜单、翻页、退格、确定等按钮。综合这些要求,本系统采用4×4小键盘。驱动电路采用CH452芯片。该芯片与单片机采用串行四线制连接。DIG7~DIG0 引脚用于列扫描输入,SEG7~SEG0 引脚都带有内部下拉电阻,用于行扫描输入;当启用键盘扫描功能后,DOUT引脚的功能由串行接口的数据输入变为键盘中断以及数据输入。
液晶显示部分的功能:显示测量温度值;输出标定和分析的结果;显示提示信息、报警信息。本系统采用12232f液晶显示器。12232f是一种内置8 192个16×16点汉字库和128个16×8点ASCII字符集的图形点阵液晶显示器,它主要由行驱动器、列驱动器及128×32全点阵液晶显示屏组成,含有2 MB ROM提供的8 192个汉字和16 KB ROM提供的128个字符,可完成图形显示,也可以显示汉字。12232f液晶显示器能识别18条指令,分别实现光标显示、画面移位、自定义字符、睡眠模式等多种功能。
2.2 软件系统的组成及实现
2.2.1 软件系统流程
该软件系统通过握手信号将硬件电路与PC机有机地联系起来。硬件部分可以脱离PC机单独使用,即支持现场操作。系统采样周期为1s,由Timer1定时实现。为了能够保证各个温度传感器的响应时间,还要控制热源的升降温速度。
2.2.2 软件系统功能
单片机上的软件程序实现:选择被标定传感器、设置标定温度、查看标定的数据、采集温度值等功能。
软件采用Visual Basic语言实现。Visual Basic语言在界面开发和串口通信方面拥有独特的优势,它具有面向对象的设计思想、事件触发程序执行的机制、MSComm通信控件,使编程快捷、方便,效率大大提高,也减少了因编程不当导致的系统不稳定。
系统终实现了在标定模式下显示标准温度模块和待标定温度模块采集的温度曲线比较,在分析模式下显示待分析传感器的温度特性曲线以及对应的数据列表。
3 系统的误差测量与分析
3.1 标准温度模块的测量误差
本系统中的标准温度由AD7705输出的数字量通过曲线拟合转换为温度值得到。为了尽量减小误差,采用3次曲线拟合,因为0 ℃~100 ℃本身温度范围比较小,所以就将0 ℃~100 ℃作为一个温度段,拟合成1条曲线。具体实现由1stOpt软件完成。1stOpt在非线性拟合、参数估算等优化领域处于地位。
标准温度测量模块在35 ℃~40 ℃范围内测试结果如表1所示。标准误差:
可见在35 ℃~40 ℃范围内标准温度测量误差为±0.026 ℃。
通过在整个应用温度范围0 ℃~100 ℃内测量、计算,得到标准温度测量模块测温范围在0 ℃~100 ℃时的测温误差为±0.05 ℃。
3.2 待标定温度传感器模块的系统误差
在具体测试中,应将待标定温度传感器的数值减去其系统误差,然后和标准温度模块的测量结果进行比较,得出标定结果。待标定温度传感器模块的系统误差主要来源于传感器信号转换电路的电阻误差、放大电路的偏置漂移和A/D转换的误差。下面以在50 ℃标定标称电阻值为2 kΩ的NTC热敏电阻为例进行测量。随机抽取3个标准的标称电阻值为2 kΩ的NTC热敏电阻进行测试,取平均值作为测量结果。因为选取的是标准的NTC热敏电阻,所以此时显示温度和实际温度的差值取平均就是待标定温度传感器模块的系统误差。
对表2中的误差取平均值得到+1.14 ℃。可见,在50 ℃标定标称电阻值为2 kΩ的NTC热敏电阻的系统误差为+1.14 ℃。
通过在整个应用温度范围0 ℃~100 ℃内以0.5 ℃为间隔逐点测量,采取折中处理,确定在室温下,标称电阻值为2 kΩ的NTC热敏电阻标定模块的系统误差为+1.2 ℃。
显示温度减去系统误差其结果如表3所示。用来计算NTC热敏电阻标定模块的。标定误差计算如下:
可见,在50 ℃标定标称电阻值为2 kΩ的NTC热敏电阻的标定误差为±0.33 ℃。
通过在整个应用温度范围0 ℃~100 ℃内以0.5 ℃为间隔逐点测量、计算,选取的标准误差作为标定误差。确定在室温下,标称电阻值为2 kΩ的NTC热敏电阻的标定误差为±0.5 ℃。
系统标准温度测量范围在0 ℃~100 ℃,为±0.05 ℃;铂电阻标定误差为±0.1 ℃;热电偶标定误差为±0.5 ℃;NTC热敏电阻标定误差为±0.5 ℃;热电堆红外传感器标定误差为±1 ℃。经过PCB设计、软硬件联合调试以后,本系统性能稳定可靠,标定和分析结果可信。在对实验室所用的温度传感器进行大量测试的过程中,未出现误测现象。该系统支持现场操作,功能丰富,可以作为工业领域温度测控系统设计与维护的辅助工具。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。