冒晓莉,吴其宇,谢晓璐,张加宏,2*
(1.南京信息工程大学电子与信息工程学院,南京 210044;2.南京信息工程大学江苏省大气环境与装备技术协同创新中心,南京 210044)
随着时代的发展,探索范围的扩大,人们对传感器抗干扰性能要求不断提高,高性能微机电系统(micro-electro-mechanical system,MEMS)传感器的研制具有重要意义。温度漂移和时间漂移是传感器测量的两个主要干扰因素,指传感器随温度和时间偏移、器件特性变化导致的测量误差[1-2]。
传感器温漂补偿主要有软件补偿和硬件补偿。软件补偿是通过各种算法对传感器输出特性曲线进行修正,具有灵活性好、可靠性高的优点。常用的算法有最小二乘法、神经网络学习法、非线性函数、反函数补偿法等[3-6]。软件补偿方法效果明显,但是对测量系统的处理器有一定要求,难以实时补偿测量数据,且需要大量实测数据进行学习与训练。硬件补偿是通过改变传感器电路的方法实现误差修正。补偿方式有增加串并联补偿电阻、调节供电电源、维持恒温环境等[7-10]。增加串并联补偿电阻会增大传感器体积,不利于传感器的小型化和规模化导向,而调节供电电源需要的电路设计复杂,且需要一定量的实验进行标定测试。
传感器时漂效应严重影响了测量结果的可靠性和传感器使用寿命。时漂产生的具体原因较多,根据实际工作情况与环境的不同,其时漂效果也有差异,难以统一修正解决。Kajikawa等[11]、黄晓因等[12]、Abderahman等[13]对传感器时漂补偿进行研究,但其研究结果不具有普适性。黄晓因等[12]通过多基准恒流源模拟标准压力电路对传感器进行时漂补偿,为自校正方法提供了一定理论指导。
为提高传感器抗干扰性能,设计了温度补偿和时漂补偿系统,其中,温度补偿采用积分分离恒温比例积分微分(proportion integration differentiation,PID)算法[14],时漂补偿使用可编程恒流源时漂自校正法。有效提高传感器抗干扰性能,降低MEMS压阻式压力传感器的测量误差。
由于传感器电阻率、压阻系数、热膨胀系数等均受温度影响,故压力传感器必然存在温度漂移。本文使用积分分离PID算法将温度控制在较高水平,实现恒温控制效果。积分分离PID算法通过输入设定与实际温度偏差值e(t),再经过PID的比例(P)、积分(I)、微分(D)运算后输出参数u(t),以此控制脉冲度调制(pulse width modulation,PWM)波占空比,使得在PWM波高电平部分加热片正常驱动,低电平时则停止工作。其中,当参数偏差值e(t)过大时,取消PID控制中的积分控制部分,仅由比例、微分部分运算工作,以免积分部分超调量过大,减小恒温过程中的温度振荡;当偏差值e(t)较小时,将积分部分重新引入,以便稳定受控参数,减小静态误差,增加系统稳定性。积分分离PID算法为
u(k)=u(k-1)+Δu(k)
(1)
Δu(k)=KP[e(k)-e(k-1)]+βKIe(k)+
KD[e(k)-2e(k-1)+e(k-2)]
(2)
式中:Δu(k)为输出参数的改变量;KP、KI、KD分别为比例系数、积分时间系数、微分时间系数,e(k)、e(k-1)、e(k-2)分别为k、k-1、k-2时刻设定温度与实际温度之差;β为积分分离作用系数;N为偏差值阈值。
除温度补偿外,针对传感器时漂问题设置了恒流源时漂自校正系统。通过外加可编程恒流源模拟外加压力情况,从而实现输出特性曲线修正。图1给出了恒流源模拟压力电路,R1和R2、R3和R4为两两对称的压敏电阻,组成惠斯通电桥,输入端Iin为恒流源供电端,输出端Vout将压力信号转化为电压输出。此外,输出端外接可编程恒流源,通过可变恒流源Ii模拟外加压力。
图1 可编程恒流源模拟压力电路Fig.1 The circuit that simulates pressure with a programmable constant current source
输出信号Vout可表示为
(3)
在理想条件下,零压状态下的各电阻阻值相等,式(3)可简化为
(4)
由式(4)可以发现,理想条件下输出电压与外加可编程恒流源成正比。同样,由于压力传感器是将外加负载压力转换成电压的装置,输出电压与外加负载同样成正比。因此可以使用外加可变恒流源的方式来模拟芯片外加压力时的情况。当传感器出现时漂现象,即其压敏电阻特性出现变化时,传感器输出信号与外加压力不再维持原先函数关系。但此时仍可以通过原先外加电流与压力的函数关系,使用可变电流模拟外加压力,从而绘制新的传感器标定曲线,实现传感器恒流源自校正。
设计并制作了实验用传感器芯片,并设计了MEMS压力传感器抗干扰电路系统。电路系统设计框图如图2所示。
图2 电路系统设计框图Fig.2 Design diagram of circuit system
设计电路的硬件部分主要分为压力信号采集模块、恒温控制模块、恒流源自校正模块和通信模块,实现压力信号采集、恒温时漂自校正功能和信号传输功能。
其中,压力信号采集模块通过传感器芯片采集压力信号,经调理电路滤波放大后由AD7794进行模数转换,经隔离电路后输入STM32处理器进行数据处理。恒温控制模块主要由温度采集模块PT1000、驱动模块TB6612FNG、聚酰亚胺加热片组成。通过开尔文四线制测量PT1000电阻变化,得到当前温度;通过控制处理器STM32输出的PWM波占空比,动态控制加热片工作功率;为了提供足够加热功率并防止电路串扰,需要单独的电源电路。恒流源自校正模块由AD5420可编程电流源提供可变恒流源,与STM32采用SPI通信协议连接,输出电流范围选择0~20 mA,分辨率16位。为了提高传感器端的电流分辨率,增加恒流源自校正可靠性,在传感器端并联一个高精电阻,实现电流分流。
在硬件设计的基础上,编写了对应的软件系统。以STM32F407为核心处理器,通过处理器运行相关程序,实现抗干扰系统功能。图3给出了软件运行流程。系统在实现传感器恒温后进行恒流源模拟气压自校正,然后实现压力测量与数据传输。
图3 软件运行流程图Fig.3 Processing flow chart of software
搭建传感器芯片测试实验平台如图4所示,包括Agilent万用表、两套压力控制系统(真空泵和Fluke PPC4、const162和const211)、温度箱、传感器和电路板。
压力控制器件、温度箱、数字万用表、上位机、传感器和电路板。其中图4(b)为两套压力控制系统,真空泵和Fluke PPC4、const162和const211分别营造0~100 kPa和100~300 kPa范围的气压环境。
图4 传感器芯片测量实验平台Fig.4 Measurement experimental platform of sensor chip
搭建完成试验平台后,使用AD7794给传感器芯片提供1 mA恒流源输入。通过温度箱设置环境温度50 ℃,测定传感器静态特性,发现恒温状态下传感器输出稳定,符合设计要求。
使用温度箱模拟环境温度,为了防止高温气体遇冷凝结,温度从50 ℃开始,每次降温10 ℃,直至-20 ℃,记录在不同温度环境下传感器输出电压和零点漂移,如图5所示。
由图5可知,由于制作工艺有限等原因,制得传感器有零点漂移,其随着温度升高先降后升。在恒流源输入下,随着温度升高,传感器满量程输出电压差减小。经实验测量分析后发现压敏电阻阻值随着温度升高而增加,输入端电压增加,且变化速率较快;传感器灵敏度随着温度升高而降低,其降速相对较慢,导致电桥输出端电压增加。为了比较传感器的温度漂移特性,以50 ℃为参考温度,经过计算可得到各温度下的热零点漂移系数和热灵敏度漂移系数,如图6所示。40 ℃热零点漂移最大,为0.065 2%FS/℃;0 ℃和20 ℃热灵敏度漂移最大,为-0.118%FS/℃。
图5 传感器输出电压、零点漂移与温度关系Fig.5 Relationships between sensor output voltage,zero drift and temperature
图6 传感器热漂移系数Fig.6 Thermal drift coefficient of sensor
为降低温度漂移带来的测量误差,使用加热片对传感器芯片进行恒温控制。测得温度变化曲线如图7所示。可以看出,经过一定时间,传感器温度逐渐趋于稳定,恒温控制系统有效。
图7 传感器温度变化Fig.7 Temperature variation of sensor
对恒温后的传感器进行实验测试,发现温度补偿有效。图8给出了恒温后传感器输出电压图,比较图5和图8,恒温后传感器测量误差较恒温前明显降低,温度补偿效果明显。
图8 恒温后输出电压Fig.8 Output voltage after constant temperature
图9给出了恒温后传感器热漂移系数。表1给出了恒温前后传感器热漂移极值变化情况,热零点漂移的绝对值由恒温前的0.0652%FS/℃降至恒温后的0.00788%FS/℃,热灵敏度漂移的绝对值由0.118%FS/℃降至0.0153%FS/℃。
表1 传感器热漂移Table 1 Thermal drift of sensor
图9 恒温后热漂移系数Fig.9 Thermal drift coefficient after constant temperature
对恒温控制下的输出信号进行二次曲线拟合,以拟合所得曲线作为电压标定气压的函数关系式。将原数据代入关系式得到预测气压值,图10给出了传感器气压预测误差情况,可知传感器预测误差集中在±3 kPa范围内。
图10 传感器预测误差Fig.10 Prediction error of sensor
针对传感器时漂问题设计了恒流源时漂自校正系统,通过外加可编程恒流源模拟外加压力情况,从而实现传感器输出特性曲线修正。为更好地测量传感器时漂特性,排除温度漂移的干扰,时漂测试实验在恒温补偿下进行。
为了能增强传感器时漂自校正的实用性,需要传感器能够在大气压环境下实现自校正功能。首先对传感器在大于标准大气压的120~300 kPa,每隔30 kPa进行数据采集,记录下各个压力点的输出电压,并使用可变恒流源模拟输出电压,记录电流大小;过3个月后再次测量,并使用可变恒流源模拟气压自校正。表2为传感器输出信号时漂情况。
表2 传感器时漂Table 2 Time drift of sensor
由表2中数据可得,传感器芯片经过3个月,其120 kPa采样点漂移为-0.621%,同时其120~300 kPa量程内输出电压差漂移-0.236%。传感器芯片存在时间漂移,为了消除时漂误差,需要进行传感器校正。传感器在各压力点下的自校正输出模拟电流如图11所示,图11还给出了各模拟电流对应的AD5420设定数据量。
以0x107b为例,其中,0x表示十六进制;107b为0001 0000 0111 1011,这是AD5420识别的数字图11 自校正输出模拟电流值Fig.11 Output of self-correcting analog current value
使用图11中可变电流对外界气压负载进行模拟,将三月前测量结果与三月后模拟结果均进行二次多项式拟合,得到传感器自校正前后标定曲线。以表2中的第二组数据为待修正数据,代入拟合曲线,计算预测误差,如图12所示。可得传感器自校正前后预测误差由-3.436~0.875 kPa降低至-2.086~1.765 kPa,预测误差全范围由4.311 kPa减至3.851 kPa。传感器气压测量能力有一定提升,时漂导致的测量误差减小,提高了传感器可靠性、稳定性和抗干扰能力。
图12 自校正前后预测误差Fig.12 Comparison of prediction errors
着重研究了MEMS压力传感器抗干扰系统设计。首先介绍了传感器温漂时漂产生的原因,提出了相应补偿方法;其次设计了抗干扰系统软硬件;最后,对传感器进行恒温自校正实验。得出如下结论。
(1)在恒温控制系统作用下,传感器芯片温度基本恒定,温度补偿效果明显,热零点漂移的绝对值由恒温前的0.065 2%FS/℃降至恒温后的0.007 88%FS/℃,热灵敏度漂移的绝对值由0.118%FS/℃降至0.015 3%FS/℃。
(2)在恒流源自校正实验中传感器时漂误差明显改善,预测误差由-3.436~0.875 kPa降低至-2.086~1.765 kPa。