变频器与传动 | 高压变频器 | 运动控制 | 机器人技术 | 机械传动 | 电力电子 | 传感器 | 嵌入式系统 | PLC
  | 工业以太网 | 人机界面 | 工业计算机 | 现场总线 | 仪器仪表 | 低压电器 | 自动化软件 | DCS
首页 | 企业专栏 | 产品中心 | 新闻动态 | 商业机会 | 技术园地 | 展会媒体 | 人才交流 | 论坛 | 有奖调查 | 帮助 
  论坛首页 → 传感器与仪表 → [分享]基于单片机信息融合实现对压力传感器的热漂移非线性补偿
发表新的主题 发起新的投票 发起新的交易 发起新的任务 回复话题
标题:[分享]基于单片机信息融合实现对压力传感器的热漂移非线性补偿
在那里
等级:光明使者
权限:普通用户
积分:1509
金钱:5629
声望:6
经验:4036
发帖数:4041
注册时间:2007-6-1
收藏 编辑 删除 楼主

赵彦晓 孙以材 田立强 王  静

摘要:本文应用Matlab软件,结合实际测定的热零点漂移非抛物线关系及输入压力和输出信号的非线性关系,基于传感器融合理论,融入环境温度信息,为智能化技术提供一种算法和得到压力的解析表达式,同时利用单片机实现了它的非线性和温度补偿。

关键词:压力传感器;热零点及灵敏度漂移;解析表达式;信息融合;非线性;单片机

中图分类号:TP212.1 文献标识码:A   文章编号:1006-883X(2003)03-0001-07

一、引言

    扩散硅压力传感器具有体积小、灵敏度高、动态响应快、使用方便等优点,但由于它是半导体材料制成的,存在温度的影响,表现为环境温度的变化会引起传感器零点漂移和灵敏度漂移,再加上其本身所存在的非线性问题,以及器件在封装加工过程中受到的应力影响,测量精度难以满足精密压力测量的需要。

    多传感器信息融合技术就是通过对多个参数的监测并采用一定的信息处理方法达到提高测量精度的目的。在要求测量一个目标参量的场合下,为达到提高被测目标参量测量精度的目的,视参量为干扰量,并消除其影响。

    扩散硅压力传感器在输入压力相同的情况下,不同的环境温度会得出不同的输出值。本文将介绍二传感器信息融合的处理方法,推导出传感器输出信号的最佳拟合表达式,得出带温度参数的压力的解析表达式,并融合了温度传感器的测量结果。还介绍了智能化的系统结构,融合的方法及硬件连接原理,可通过单片机控制实现传感器的非线性补偿和温度补偿。

I am a soldier!
2008-5-12 10:34:11IP: 保密
在那里
等级:光明使者
权限:普通用户
积分:1509
金钱:5629
声望:6
经验:4036
发帖数:4041
注册时间:2007-6-1
编辑 删除 引用 第2楼

二、融入环境温度信息的压力解析表达式

压力传感器的输出信号Ut可以由两部分组成:

                                             1

其中,U0为压力为零时的输出,称为零点,与温度和外加电压V有关。U为与压力有关的有效信号。

又:                                             2

其中:S0—温度为零度时的压力灵敏度;


S压力灵敏度,与传感器的膜厚、膜面积及力敏电阻条的设计布置有关。

             3

—压力灵敏度温度系数。当 时,则引起灵敏度的热漂移。一般认为 等于压阻系数的温度系数,故 是与T有关的线性项。至今未有人提出与T2有关非线性项。这也与我们的实验结果表1相符。因此,本文中忽略压力灵敏度的T2项。

将式(2)移项后可得:                  4

因为S0为非线性函数,于是应将 表示为U的幂级数,即有:                 5

其中:aj的量纲为PaV-j+1

在满足精度条件下取有限项n,压力传感器校准时由静态特性可以测得mPU的数据。对应第i个测量值PiUi,对应式(5)的计算值 为:           6

计算值中各阶 前的系数需用最小二乘法求得。这一方法是使计算值 与各次测量值Pi的偏差平方和最小,即有:          7

也就是: j=0,1,2,…n              (8)

j n 个有限值,因此由式(8)可得n 个线性方程式。式(7)对aj求导后,得:  

i = 0,1,2, …m               (9) 

该帖子于2008-5-12 10:37:20被 在那里 编辑过

I am a soldier!
2008-5-12 10:36:11IP:保密
在那里
等级:光明使者
权限:普通用户
积分:1509
金钱:5629
声望:6
经验:4036
发帖数:4041
注册时间:2007-6-1
编辑 删除 引用 第3楼

当解出n个有限的an 值:a0 a1...aj...an后,带入式(6)可得到 的计算值。由 i = 1,2, ...m 的计算值,再代入式(7)可得到σ值。若σ值小于规定的误差值 ,即: ,或 %

则上面确定的naj 值,已达到目标要求,于是可用式(6)表示P~U之间的显示关系。

,则说明未达到目标要求。此时重新令 多项式中再增加 项,重新计算a0...an+1 各系数,直到达到目标要求为止。因此,这种最小二乘法又称多项式目标函数法。计算过程可能因计算时间过长而始终达不到 的目标。这就要求放松对 的要求,只计算n 项。当an  an+1很小时,便不用再计算后面的an+1 an2

Matlab软件是十分优秀的试验数据处理软件。对于 函数,只要输入各次测量值U1U2...Ui  P1P2...Pi 便能自动得到 的函数表达式,并自动画出 的曲线。我们把压力传感器测定的输出信号数据列于表1中。考虑到灵敏度热漂移的影响,将信号电压除以 折合到参考温度(25℃),从而使不同温度下有相同的多项式,统一成一个表达式: 10

1中,行对应标准压力值,列对应各测量温度值。依据每一列温度及对应压力下的折合到参数恒温(25℃)的输出信号 ,利用Matlab软件得到a0 a1aj各值。根据温度信号和输出的电压信号,利用单片机计算得出压力值并显示其结果。

由表1可以看出,各温度下的a0a1都很接近。取其平均值a0=+0.0003,a1=-0.0176。可见归一到25℃的P-U关系,为一几乎通过原点(00)的直线。其斜率为 -0.0176

该帖子于2008-5-12 10:39:30被 在那里 编辑过

I am a soldier!
2008-5-12 10:38:16IP:保密
在那里
等级:光明使者
权限:普通用户
积分:1509
金钱:5629
声望:6
经验:4036
发帖数:4041
注册时间:2007-6-1
编辑 删除 引用 第4楼

1  外加电压为5V时,不同温度和压力下的输出信号电压 。其中



该帖子于2008-5-12 10:54:08被 在那里 编辑过

I am a soldier!
2008-5-12 10:50:12IP:保密
在那里
等级:光明使者
权限:普通用户
积分:1509
金钱:5629
声望:6
经验:4036
发帖数:4041
注册时间:2007-6-1
编辑 删除 引用 第5楼

最近 Boukabache [6]依据力敏电阻的温度非线性关系— ,导出热零点漂移的抛物线模型:

其中 是零点极大值 时的温度, 值可由试验测得。

文本框:  
图1.  零点电压(mV)与温度(℃)关系

 

我们试验测定的压力传感器的零点电压与温度关系如图1所示。这与Boukabache 的抛物线模型不一致。将我们的试验数据再用Matlab软件处理,得到以下多项式关系:  12

这是有与T3项有关的非抛物线关系。并在图1中画出其对应的曲线,与试验点变化趋势十分一致。我们将这一关系式表示在压力表示式(10)中。

将式(12)代入式(1)中,可得与压力有关的信号电压:

再将上式代入式(10)可得: 13

这就是基于Matlab软件和热零点漂移的非抛物线试验关系的压力值解析表达式。其中 5V桥压激励,温度T下与压力P对应的传感器输出值。

该帖子于2008-5-12 11:30:36被 在那里 编辑过

I am a soldier!
2008-5-12 11:29:01IP:保密
在那里
等级:光明使者
权限:普通用户
积分:1509
金钱:5629
声望:6
经验:4036
发帖数:4041
注册时间:2007-6-1
编辑 删除 引用 第6楼

三、信息融入的实现

  压力传感器测量环境的温度是利用恒流源供电时二极管的正向压降而测定的。管压降温度变化率为:

mV/K     K/mV

而且对不同的二极管均保持良好的正比特性,与我们的实验结果(-1.8mV / K )一致。

积分上式可以得到:

选定T0 = 0℃,于是有: (℃)

当选定二极管的正向电流为1mA,测定0℃时,所用二极管的管压降 643mV,则:   (℃)                            

将上式代入式(13),于是得到

14

这就是压力输出信号 和二极管压降信号二信息融入后的压力表达式。

文本框:  
图2 系统组成框图
 这个式子在用单片机编程时,模拟通道4052分时采集温度信号和压力信号,经放大、A/D转换后可得 。根据温度传感器测得的温度信号和压力传感器测得的压力信号与输出压力P的关系,把 (式14)转化成 的形式,其中:

  15

 

16

如果把 看成是已知的常数,可以通过高级语言(C语言)编程得到一系列的值,那么, 就简化成一个线性方程: 

其中, =

这样,可以建立一个有关kb的表格,通过查表程序,查得有关kb的值,通过加法和乘法运算,就可以计算出压力P的值,运用这种方法,单片机编程时计算过程比较简单,所占用的内存空间小。

该帖子于2008-5-12 11:33:36被 在那里 编辑过

I am a soldier!
2008-5-12 11:32:25IP:保密
在那里
等级:光明使者
权限:普通用户
积分:1509
金钱:5629
声望:6
经验:4036
发帖数:4041
注册时间:2007-6-1
编辑 删除 引用 第7楼

四、智能压力传感器的系统设计和硬件设计

1、前项通道及程控放大器

(1)温度传感器信号的提取

   带有感温二极管的硅压阻压力传感器,被封装在专门制作的金属外壳中,通过多芯电缆与单片机连接。压阻传感器的四个电阻组成桥路,用1mA恒流源激励。感温二极管用来检测环境温度,以供给单片机部分温度参数。

   可以证明,当流过二极管的正向电流为恒流时,二极管正向电流为恒流时,二极管正向导通电压 的温度系数为:

式中:k—玻尔兹曼常数;

T—绝对温度;

VD—正向导通电压;

q—电子电荷;

Eg0—绝对零度时禁带宽度;

I—流过二极管正向电流。

此式可以说明以下二点:

①式中的负号表明二极管正向导通电压 随温度升高而减小;

②导通电压 的温度系数与