摘 要: 利用单总线数字温度传感器DS1820芯片以及微处理器,可以用软件方法实现对传感器由于环境温度变化带来的测量误差的补偿。文中以电化学传感器为例,提出了具体的补偿方案。
关键词: 电化学传感器;温度补偿;单总线DS1820芯片;神经元芯片
一、前言
工业现场的环境温度变化范围大而剧烈,工作在工业现场的传感器大多数都对温度有一定的敏感度,这样就会使传感器的零点和灵敏度发生变化,从而造成输出值随环境温度变化,导致测量出现附加误差,因此温度补偿问题一直是传感器技术中的关键环节。
温度补偿的方法一般分为硬件补偿和软件补偿两种方法。目前应用较广泛的是利用微处理器实现温度漂移软件补偿方法。本文要介绍的温度补偿方法也属于一种软件补偿,只是在具体实现的过程中提出了新的设计方案——采用单总线数字温度传感器DS1820芯片和LonWorks现场总线技术中的神经元芯片(Neuron Chip即CPU)实现传感器的温度补偿,并以电化学传感器为例,详细介绍了它的硬件电路和软件设计部分。
二、传感器温度漂移软件补偿原理
由于周围环境温度变化而引起传感器的附加误差,可以采用软件的方法来修正,其基本思路是:在传感器内靠近对温度敏感的部件处,安装一个测温元件,用以检测传感器所在环境的温度;把测温元件的输出经过多路开关与信号同一路径送入CPU(或者采用多通道模/数转换环节),根据温度误差的数学模型去补偿被测信号,以达到测量的目的,其中温度误差修正模型一般是根据具体的传感器温度特性用曲线拟合方法而建立的。
传感器采用这种软件补偿方法解决温度附加误差时,通常测温元件大多采用热电阻,因此必须增加相应的热电阻温度变送器以及A/D转换两部分的电路,任何一个环节都不能缺少,具体实施起来难免显得有些繁琐,而且两部分电路的温度特性可能成为新的附加误差。
三、传感器温度漂移软件补偿新方案
针对上述提出的问题,我们可以通过用数字式温度传感器代替热电阻检测周围环境温度来解决。在这里我们推荐使用美国Dallas半导体公司研制生产的DS1820芯片—一种单总线数字温度传感器,它具有许多独特的优良性能:
(1)可以把温度信号直接转换为9位数字量,温度的转换可以在1秒内完成;
(2)只通过一根数据线就能实现与微处理器的通讯,而且芯片正常工作所需要的电源也可以从这根数据线上获得,无需外部电源;
(3)具有微型化、低功耗、高性能、抗干扰能力强、易配微处理器等优点;
(4)价格便宜,仅为普通温度变送器的十分之一。
经实验研究证明这种传感器可以很好地解决温度漂移软件补偿中的测温问题。
四、电化学传感器的温度补偿方案
电化学传感器通过测量气体在某个确定电位电解时所产生的电流从而得到气体的浓度值。这种传感器体积小、重量轻,不仅灵敏度高,而且测量准确、响应时间快、使用寿命长,是目前比较理想的一种气体浓度测量传感器。不过,和大多数传感器一样,其温度特性不太理想,在实际使用时需要进行温度补偿。
具体思路是:在确定传感器输出量与温度之间的数学模型后,通过数字温度传感器DS1820芯片,直接把温度信号转换成相应的数字量,送入CPU进行后续处理,即根据传感器的温度特性对测量值进行修正,实现用软件的方法消除由于环境温度的变化给测量带来的误差。
1、电化学传感器温度补偿硬件电路设计
硬件电路设计如图1所示,其部分主要是神经元芯片和DS1820芯片。神经元芯片有11个双向、可编程I/O口(管脚IO_0至IO_10)。这些I/O口可根据需求不同,灵活选择接口方式,实现与外围设备的接口。另外,Neuron芯片有34个预编程的操作模式(即I/O对象),支持电平、脉冲、频率等各种信号,可以实现有效的测量和控制。
本文涉及到的I/O对象主要有Neurowire I/O对象和Touch I/O对象,前者主要用于传送全同步串行数据,数据传输8位,首先传输有效位;后者主要用于与Dallas半导体公司开发的One-Wire协议接口,以便与触摸式存储器(Touch Memories)和相似的设备进行通信(DS1820芯片就属于One-Wire设备),对于DS1820芯片工作时所需要的一系列初始化序列,Touch I/O对象都有相应的内部函数支持,例如:touch_reset(),该函数插入一个复位脉冲,如果检测到存在脉冲则返回1,如果未检测到存在脉冲则返回0,或1-WIRE总线总是为低电平则返回-1。有了这些函数的支持,神经元芯片对外围电路DS1820芯片的控制与通信就显得非常方便,因此在这一点上明显优于其他的微处理器。
2、电化学传感器温度补偿软件设计
从前面给出的硬件电路可以发现:电化学传感器温度补偿环节的硬件电路比较简单,然而简洁的硬件配置是靠复杂的软件来支撑的。为保证数据可靠传送,任一时刻单总线上只能有一个控制信号或数据。因此进行数据通信时,要符合单总线协议,一般有以下四个过程:初始化信号、传送ROM命令、传送RAM命令和数据交换。神经元芯片的编程语言是Neuron C语言,其软件流程图如图2所示。
通过软硬件测得环境温度值之后,接着就要对一定环境温度下检测到的气体浓度值进行修正。我们以华诚5FCO电化学传感器为例进行温度补偿新方案的测试。
首先需要了解传感器的温度特性,根据厂家提供的实验数据由二乘拟合原理得到CO电化学传感器的温度特性为:
Y=-0.000088X2+0.009612X+0.835393
其中:X—环境温度值;
Y—表示该环境温度下浓度测量值与20℃时浓度值的百分比(20℃为标准环境温度)。
应用LonWorks现场总线节点开发工具NodeBuilder进行硬件和软件联调, 并在实验室和现场进行多次测试,测试结果如表1所示。从表1可以看出,未进行温度补偿时的误差为16.4%,补偿后的误差为1.5%。因为CO电化学传感器的温度特性函数是由二乘法拟合而得,所以1.5%的误差中还包含有拟合误差,实验表明DS1820芯片的使用很好地完成了温度补偿的任务。
五、结束语
传感器的温度漂移问题是影响传感器正常工作的一个比较棘手的难题,通过本文的例子可以看出,单总线芯片DS1820不仅可以应用于温度检测,而且更加方便地解决了传感器的温度漂移补偿,而且DS1820系列芯片不断有新的功能推出,它在传感器温度补偿中的应用前景是广泛的。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。