">
设为首页 加入收藏 021-56629198
您现在的位置:首页 > 技术文章
热电偶快速高精度测温算法
发表时间:2019-05-02     阅读次数:     字体:【

0引言

随着热分析技术的快速发展,传统的热电偶测温技术已经不能满足其性能指标的要求,特别是在使用相对计算能力较差的单片机进行温度采集计算的应用中,很难在达到较高精度的同时拥有较快的响应速度。传统的电动势—温度转换方法[1,2]是根据热电偶的热电势值进行查表或者分段曲线拟合,求得当前温度值。查表法求取温度值虽然简单,但是需要存放大量的分度表数据,对系统的内存容量要求较高。分段曲线拟合法不需要大量的内存空间,但是分度表数据有限,随着分段拟合精度的提高,拟合公式所需要的数据也成倍增加,加之热电偶分度表数据的舍入误差,很难保证无限制提高拟合精度; 相反,随着分段数目的增多,曲线拟合的精度可能会下降,即出现龙格现象[3]。由分度公式组成的方程求根法[4]虽然在计算精度上有了较大提高,但是由于公式的阶数较高,在计算时间上却远远不如分段拟合法。

针对上述问题,本文提出了一种新型测温算法,利用分段拟合法与查表法相结合求出温度值及其误差范围,即在方程求根法的思想上缩小二分法的查找区间,根据秦九昭简化算法降低分度公式运算复杂度,从而实现快速高精度的热电偶测温计算。

1 快速高精度算法原理

国际电工委员会ICE584—1标准[5]提供的热电偶分度公式如式( 1) 所示

其中ai的值由分度表给出,其中T型热电偶分度公式中温度t阶数最高为14阶。公式( 1) 给定的是热电偶的电动势关于温度的函数( E-T) ,即给定某一温度值,由公式计算得到理想的热电动势值。实际使用中,通常是在测得热电动势的基础上计算出温度值,因此,需要把公式( 1) 变形如下

测得热电偶某一热电动势值E,使得求解公式( 2) 变为解一元多次方程的根。直接求解方程运算过程复杂不利于算法设计,而二分法利用无限逼近与叠代的数学思想,理论上能够快速无限接近实际值的根( 即方程求根法思想) ,因此,采用二分法求得方程的近似根。实际中,算法设计有2个方面的难点: 1) 利用二分法求解需要给定一个初始区间,以免在不必要的区间段消耗时间; 2) 公式( 2) 存在很高的阶数,需要简化计算公式降低运算复杂度。因此,本文在方程求根思想上对算法作了改进如图1所示的改进,结合线性最小二乘法与查表法得到最接近实际温度一个温度值,利用导数确定二分法查找的初始区间,并且使用秦九昭算法简化高阶复杂运算公式,在保证精度的同时也提高了运算速率。

图 1 算法整体思想Fig 1 Whole idea of algorithm

图 1 算法整体思想Fig 1 Whole idea of algorithm 下载原图

2 快速高精度算法设计

2. 1优化的方程求根方法

2. 1. 1 确定二分法温度区间

在测得热电偶的电动势E后,用曲线拟合的方法得到电动势转换为温度的粗略关系式和该温度的误差范围,即确定了二分法的温度区间。

线性最小二乘法[2,6]是解决曲线拟合最常用的方法,基本思路是

其中,rk( x) 为事先选定的一组线性无关的函数,ak为待定系数( k = 1,2,…,m) 。以N型热电偶为例,由于其分度表公式的阶数比较高,在保证精度及减少运算量的前提下,在0 ~ 1000℃范围内将N型热电偶热电势分为10段,利用线性最小二乘法分别得到各区间段的T-E拟合方程。

拟合公式如式( 4) 所示,表1为部分拟合系数和正负最大偏差,分别记为max和min

正负最大偏差由误差函数G( T) 确定,G( T) 可表示为式( 5) 的复合函数形式

表 1 N 型热电偶部分拟合系数Tab 1 Part of fitting coefficients of N type thermocouple 下载原表

表 1 N 型热电偶部分拟合系数Tab 1 Part of fitting coefficients of N type thermocouple

其中,T为理论温度值,F( T) 为利用线性最小二乘法分段拟合的函数,f( T) 为分度表给定的温度—热电动势( T-E) 函数,即为公式( 2) 所代表的函数。

由于热电偶分度公式和分段拟合的公式均为单调线性多项式,而且在各自分段区间内连续,因此复合函数G( T)在任意分段区间内连续。求导分别得出函数在各连续区间内的最大值与最小值,即正负最大偏差值。为了验证这些数值是否准确,利用Matlab绘出0 ~ 1 000℃之间各分段的温度差函数G( T) 的图形如图2所示。

由图2可以看出,分段拟合公式已经能够保证偏差小于0. 015℃ ,但是由于环境和硬件设备误差等因素的影响,算法在实际应用并不能达到理想的效果,因此,设计了优化算法以满足实际需要,算法在获得某一热电动势值E后通过查表和多项式计算得出一个温度数值t,那么,这个温度值与真实温度值之间的偏差在区间[min,max]之间,令ta= t + min,tb= t + max,因此,所需确定的温度区间可以表示为[ta,tb]。

图 2 理论温度与计算温度的偏差图Fig 2 Deviation chart of theoretical temperature andcomputational temperature

图 2 理论温度与计算温度的偏差图Fig 2 Deviation chart of theoretical temperature andcomputational temperature 下载原图

需要说明的是,在国际电工委员会ICE584—1标准中也有由E转换为T的公式,但在0 ~ 600℃范围内,该公式计算的误差在[- 0. 016,0. 027]℃之间,在600 ~ 1 300℃的公式误差在[- 0. 039,0. 021]℃之间。由于本文拟合公式分段较多,计算出的误差要小于国标中给出的公式误差,也就是缩小了所需确定的温度区间,为下一步精确计算减小了运算时间。

2. 1. 2 降低运算复杂度

方程求根等价于求f( x) 与x轴的交点。如果函数单调连续,且在区间两端点的函数值异号,则方程有唯一的解。因此,只要给定一个单调连续,且两端函数值异号的初始区间,即可通过二分法把f( x) 的零点所在小区间收缩50 % ,使区间的两个端点逐步逼近函数的零点,最终以求得方程根的近似值。

在算法设计中,由于二分法需要循环计算公式( 2) 这类复杂高阶方程,因此,为了降低运算复杂度,利用秦九昭算法简化如下

求公式( 6) 的值时,首先计算最内层括号内一次多项式的值,然后由内向外逐层计算一次多项式的值,求n次多项式的值就转换为求n个一次多项式的值,计算次数可以减少到只做n次乘法和n次加法,有效降低了运算复杂度。

2. 2算法流程

图3所示为算法流程,其过程为:

1) 获取经冷端补偿过的热电动势E,查找拟合公式系数表获取分段拟合公式,确定温度t0

2) 根据分段拟合函数值正负最大误差确定二分法查找的起始温度区间[ta,tb]。

3) 由公式tc= ( ta+ tb) /2算出区间中点tc,判断条件tb- ra< δ是否成立,如果条件成立,则tc便是所求温度值;否则,判断分度表公式与实际热电势的差值函数函数P(tc) = f( tc) - E是否等于0。

4) 如果函数值P( tc) 等于0成立,则tc便是所求温度值; 否则,判断其是否大于0,若成立,则令tb= tc; 否则,令ta= tc。最后,返回步骤( 3) 直至求得最佳解。

图 3 算法流程图Fig 3 Algorithm flow chart

图 3 算法流程图Fig 3 Algorithm flow chart 下载原图

3 实验结果与分析

算法的仿真测试实验主要包括测温精度测试和运算时间测试。实验是在差示量热扫描仪( 热分析仪的一种) 上测试的,该仪器以ATmega128单片机为核心,时钟为16 MHz。

表2为实验选取的比较有代表性的温度点的温度对照表。其中理论温度为根据分度公式计算的当前热电动势所对应的温度值,测得温度为使用本算法得到的温度值,δ =0. 001。由表中数据对比可以看出: 使用本算法温度误差小于0. 005℃ ,达到了计算的精度要求。不仅如此,本算法可以根据实际需求,通过改变δ值,减少不必要的程序循环计算过程,提高运算速度。

在同样的硬件平台上对比四种常见算法的实验数据,算法1: 查表法; 算法2: 分段曲线拟合法,即国标中给出的电动势转换为温度的函数( T-E) ; 算法3: 传统的方程求根法; 算法4: 本文提出的结合分段曲线拟合和二分法。4种算法的温度误差如图4所示。

表 2 理论温度与测得温度对照表Tab 2 Comparison table of theoretical temperature and measured temperature 下载原表

表 2 理论温度与测得温度对照表Tab 2 Comparison table of theoretical temperature and measured temperature

从图4可以看出: 在0 ~ 1 000℃范围内,本文提出的算法精度可达到±0. 005℃ ,计算精度与算法3的精度相近,远高于算法1和算法2。

图5为四种算法所需的计算时间。由图可见,算法1和算法2运算时间在10 ms以下,远远低于算法3和算法4。而算法4在运算时间上比算法3快近4倍。

因此,综合运算时间和精度,本文算法具有运算速度快、计算精度高的优势。

4 结束语

本文提出了一种改进的快速高精度热电偶测温算法,以方程求根法为基础,使用最小二乘法和导数定义快速确定查找温度最小误差区间,秦九昭算法简化计算公式,二分法快速收敛求得温度值,克服了传统计算方法的计算精度低和运算时间长的缺点。实现结果显示: 在以ATmega128为控制核心,时钟为16 MHz的硬件平台下,本文算法在0 ~1 000℃的温度范围内在达到±0. 005℃的较高精度的同时拥有相对较快的80 ms响应速度。

图 4 四种算法误差图Fig 4 Error plot of four kinds of algorithms

图 4 四种算法误差图Fig 4 Error plot of four kinds of algorithms 下载原图

图 5 四种算法运行时间Fig 5 Running time of four kinds of algorithms

图 5 四种算法运行时间Fig 5 Running time of four kinds of algorithms


 
上一篇:陶瓷基Pt/ITO薄膜热电偶的制备与性能研究
下一篇:分析比较采用不同方法检定工作用热电偶
微信二维码
微信二维码
QQ二维码
QQ二维码