V一T曲线控制温度补偿的核心在于温度补偿系数K的选择,根据式(1)得到:
在测色系统中,把调零后第一次测量标准白板时获得的电压值和温度值作为式(2)中的电压和温度的初始值。连续测量标准白板,能够获取不同温度时3路模拟信号的电压值,随着温度的升高,硅光电池产生的电压漂移会反应在这些电压值中。结合实测数据计算电压值随温度线性变化的曲线斜率,所得的曲线斜率即为温度补偿系数K。将温度补偿系数K引入到电压补偿中,对于每次测量所得的电压值,都可以结合实测的温度对电压测量值进行补偿,得到实际的电压值。如式(3)所示:
式中,Vt为实际的电压值;V为电压测量值;T为温度实测值;T0为温度初始值;K为温度补偿系数。
3.2 硬件实现
WSC—Y型测色色差计选用STC89C58RD+新一代超强抗干扰/高速/低功耗单片机作为主处理器完成主要的测控任务。单片机单总线上挂接的DSl8820采用外接VDD供电方式(而未用寄生供电),系统中CPU采用22 MHz晶振,DQ端为P1.1。系统主要部分硬件电路如图4所示。
3.3 软件实现
DSl8820简单的硬件接口是以相对复杂的接口编程为代价的。由于DSl8820通过单总线与单片机进行通信,所以DSl8820与单片机的接口协议是通过严格的时序来实现的。单片机控制DSl8820完成温度转换必须经过3个步骤:初始化、ROM操作指令、存储器操作指令。必须先启动DSl8820开始转换,再读出温度转换值。另外,DSl8820在实际应用中应注意从测温结束到将温度值转换成数字量需要一定的转换时间,所以在读取温度结束后需要延时1 s后,再对数据进行处理,这是必须要保证的,否则将导致转换错误,输出错误的温度值。基于DSl8820的通信协议编写温度传感器控制程序,对DSl8820的操作的程序流程图如图5所示。
3.3.1 初始化子程序
测温系统采用P1.1作为为通信端口,在DS18820初始化的过程中,单片机首先发出1个复位脉冲,保持低电平时间要大于480μs,然后单片机释放总线,等待DSl8820的应答脉冲,P1.1口收到0则初始化成功,收到1则初始化失败。这样,单片机与温度传感器就完成了1次初始化通信。
3.3.2 读取温度数据
使用默认的12位转换精度,外接供电电源,完成一次转换并读取温度值的程序如下:
3.3.3 V—T曲线控制补偿子程序
温度补偿函数的实现如下:
4 实验结果分析与结论
将V—T曲线控制补偿电路的设计方案应用到测色系统后,先将色差计预热30 min后,使光源趋于稳定,对仪器定标,每隔5 min测量专用工作白板1次。测量中,白板保持不动,测量结果良好。表1和表2分别是对系统进行温度补偿前和温度补偿后,测量同一块标准白板半小时的测量结果。
由测量数据可见,在对系统进行温度补偿后,测色系统的测量准确度大大提高,误差明显变小。引入温度传感器后,测色系统的测色色差△E均小于O.15,测量的重复性完全达到了国家计量院规定的15 min内△E<0.2的要求。根据测色系统的现实要求,采用灵活的温度补偿技术,和切实可行的电压补偿方法,有效地完成了测色系统的稳定性控制。实验结果表明,在使用了数字温度传感器对测色系统的实测电压进行补偿之后,减少了测量误差,提高了仪器的稳定性和准确度。
用户评论
共 0 条评论