陈碧海,程宝进,李 勇
基于C8051F060单片机的精密数字压力表设计
陈碧海,程宝进,李 勇
(北京遥测技术研究所 北京 100076)
精密数字压力表设计基于单片机C8051F060为核心电路,通过对压阻式压力传感器和温度传感器的数据采集,对压力数据进行全温区补偿,以提高压力表的精度,并根据压力表使用需求设计了串口输出功能、面板零位校准功能、灵敏度校准功能,使其更具实用性。
压力传感器,数字压力表,温度补偿
随着电子技术的快速发展,压力表精度要求越来越高,指针式压力表正逐渐被数字压力表取代。以往精密数字压力表存在滤波时间长、标校复杂、温度补偿效果差等问题,通过采用单片机技术对压力敏感元件信号进行采集、快速数字滤波、多阶方程温度补偿、增加零位校准、灵敏度校准功能,可以解决上述问题,并可根据需要增加其他特殊功能,如串口输出功能。
精密数字压力表系统设计针对以往数字压力表存在问题进行如下设计。
选用压阻式压力传感器,其具有长期稳定性好、重复性好、迟滞小、线性好等优点,不足之处是温度误差较大,但可以通过单片机温度补偿解决。
传感器电桥采用恒流源供电,具有温度影响小、桥路输出为线性等优点。桥路放大电路采用仪表放大器,具有共模抑制比高、输入阻抗高、线性好、低漂移等优点。
一般数字压力表为解决干扰除采用模拟电路滤波同时还需采用数字滤波。通常为使显示数据稳定而对固定时间采样数据进行均值处理。
一般数字滤波可以采取一定时间段采样数据取平均值方法,此方法相对响应时间较慢,设计采用动态平滑滤波,响应速度大大提高。
针对压阻式压力传感器线性好、迟滞小、温度特性长期稳定好的特点,标校采用零位和灵敏度调校即可,不需进行各温度下各压力点调校,仅需进行常温零位和灵敏度标校即可。
图1 系统总体
本系统总体设计如图1所示。
精密数字压力表传感器采用进口的压阻式压力传感器,具有精度高,长期稳定性好、线性好、重复性好、迟滞小等优点,但其温度系数较大,需增加温度传感器对其进行零点和灵敏度温度补偿才能得到理想的性能。
单片机选用C8051F060,其具有功能:4352Bytes RAM/64KB Flash,2个16位A/D,8个10位A/D,1个内置温度传感器,2个12位D/A,1个SPI接口,1个I2C接口,2个UART接口。其交叉开关方式的配置,使I/O口应用更加灵活方便。设计使用其中1个16位A/D对压力传感器信号和10位A/D对内置温度传感器信号进行采样。
电源部分采用AC/DC电源供电,给单片机系统供电采用3.3VDC电源,压阻式压力传感器桥路供电采用恒流源,具有温度系数相对恒压源小的优点。
仪表放大电路采用三运放结构,具有输入阻抗高、共模抑制比高、零漂小等优点。
数显电路采用MAX7219专用显示芯片,其具有集成化的串行输入/输出共阴极显示驱动器,可直接连接单片机SPI串行接口驱动5位7段码LED的特性。
数码显示为5位LED数码管,可根据量程和精度进行显示。
串口电路选用MAX3232专用串口芯片,具有将单片机UART接口转标准RS-232串口功能特性。
零位和灵敏度调试电路采用轻触开关低电平触发单片机I/O口方式进行,由软件针对外部施加的零位压力输出和满量压力输出调整零位和灵敏度。
软件使用C语言进行编程,运行于C8051F060微处理器上。通过51系列微处理keil C51 uV2集成编译环境完成系统软件编译、仿真、调试,将系统软件写入微处理器内部FLASH ROM之后,可以实现系统的独立运行。精密数字压力表软件主要有四个设计目标:
图2 软件流程
①对采集压力传感器信号进行数字滤波。
②通过采集温度传感器信号对压力传感器进行温度补偿。
③具有零位校准和灵敏度校准的功能。
④配合电路硬件,完成精密数字压力表采集、显示、串口数据发送功能。
软件基本流程如图2所示。
精密数字压力表设计中尽管对电路硬件部分采取了RC滤波,有些高频干扰仍然难以去除,故在数据处理上采取软件数字滤波以消除高频时钟脉冲干扰。数字滤波算法通常有限幅滤波、中值滤波、算术平均滤波及有它们组合的混合滤波算法等。针对被测压力信号变化相对缓慢的特点(一般为10ms以上),宜采用限幅滤波和算术平均滤波,以去除电路高频时钟脉冲干扰。
限幅滤波具体原则为:
①先进行首次10ms、100次数据的算术平均值计算。
②再进行下一次采样,判断与前段平均值差值的绝对值是否大于20mV,大于则进行限幅处理,替换上一采样周期第一个采样数据,达到动态平滑滤波目的。
压阻式压力传感器零位、灵敏度随温度均会产生漂移,设压力传感器输出为,温度传感器输出为,则压力表输出(即显示)(,)可用以下公式表达:
其中()、()、()、()为的函数,可用以下公式表达:
根据压阻式压力传感器的迟滞(0.01%)特性很好,误差可以忽略不计,线性(0.02%)较好,压力表输出相对压力传感器输出采用1阶方程模型比较合理[1-4]。
压力表输出的零位温度系数()和灵敏度温度系数()相对温度传感器输出关系相对复杂,一般采用3阶方程模型即可,即
通过表1数据代入上述方程组,可解得0、1、2、3、0、1、2、3数值,获得压力表输出方程。
0、10、20、30为各温度点温度传感器输出。
0-0、0-10、0-20、0-30为各温度点压力传感器零位输出。
16-0、16-10、16-20、16-30为各温度点压力传感器满量输出。
表1 压力表标校数据温度、压力取点及温度传感器、压力传感器输出
从用户使用、标校方便角度考虑,压力表不宜进行各压力、温度点的标校,并将标校大量数据进行芯片数据烧写,根据式(6),通过采集校准时的零位数据和满量数据,可对压力表输出方程的零位和灵敏度进行快速修正,具体方法如下:
①压力表零位校准
传感器的零位变化一般由材料微观缺陷或封装连接蠕变产生,其特点为零位曲线产生偏移,温度特性不受影响,因此只需修正式(7)中0项即可。
根据式(6),在压力表施加0MPa压力时,通过按压力表面板设置的校零轻触开关,给单片机一个校零触发信号,有下式成立
②压力表灵敏度校准
传感器的灵敏度一般由结构尺寸、材料特性、灵敏度温度特性决定,其中材料特性不会发生变化,温度特性已进行补偿,结构尺寸可能由于微观的蠕变、应力释放而产生微小变化,对灵敏度影响很小,这种情况发生可能性也比较小,但也需定期标校,与零位标校原理相同,只需修正式(8)中B0项即可。在压力表施加16MPa(满量)压力时,通过按压力表内部设置的校灵敏度轻触开关(因一般用户对此功能不宜轻易操作,设在压力表内部),给单片机一个校灵敏度触发信号,有下式成立
精密数字压力表设计用于室温,使用温区定为0~+30℃,主要性能指标为0~+30℃温区内示值误差小于0.1%FS。表2为其全温区测试数据,满足误差指标要求。
表2 精密数字压力表全温区测试数据
试验中使用的压力校准设备为DRUCK的PACE6000系统,精度为0.01%,环境温度控制设备为巨孚公司的ECT-150-70- CP-AR恒温试验机,温度控制精度±0.2℃。
精密数字压力表设计中采用单片机对压阻式压力传感器进行数字滤波和温度补偿,并根据需要设计了零位和灵敏度调整功能和串口输出功能,经实际测试功能达到设计要求,精密数字压力表量程为16MPa,全温区(0~+30℃)精度达到0.1%FS,补偿效果理想。
[1] 李强, 梁莉, 刘桢, 等.具有温度补偿功能的智能压力传感器系统[J].仪器仪表学报, 2008, 29(9): 1934–1938. LI Qiang, LIANG Li, LIU Zhen, et al.Intelligent pressure sensor system with temperature compensation[J].Chinese Journal of Scientifie Insrrument,2008, 29(9):1934–1938.
[2] 唐炜, 徐晓苏.基于温度补偿的传感器建模方法及其应用[J].计量技术, 2007, (2):64–68.
[3] 沈金鑫, 夏静.硅压阻式压力传感器智能校准系统设计[J].仪表技术与传感器, 2014, (3): 1–3.SHEN Jinxin, XIA Jing.Intelligent calibration system design of silicon piezoresistive pressure sensor[J].Instrument Technique and Sensor, 2014, (3): 1–3.
[4] 朱龙俊.扩散硅压力传感器的高精度误差补偿算法[J].自动化与仪表, 2012, 27(3): 53–56.ZHU Longjun.High-accuracy error compensation algorithm of diffusion silicon pressure sensor[J].Automation & Instrumentation, 2012, 27(3): 53–56.
Design of precision digital pressure gauge based on C8051F060
CHEN Bihai, CHENG Baojin, LI Yong
(Beijing Research Institute of Telemetry, Beijing 100076, China)
The precision digital pressure gauge is based on the C8051F060 chip microcomputer. Through data collection of silicon piezoresistive pressure sensor and temperature sensor, the pressure data is compensated in the full temperature range to improve the accuracy of the pressure gauge. According to the demand of the pressure gauge, the serial port transport function, panel zero calibration function and sensitivity calibration function are designed to make it more practical.
Pressure sensor, Digital pressure gauge, Temperature compensation
TH812
B
CN11-1780(2019)04-0071-04
陈碧海 1964年生,高级工程师,主要研究方向为压力测试设备。
程宝进 1988年生,工程师,主要研究方向为压力测试设备。
李 勇 1989年生,工程师,主要研究方向为压力传感器。
Email:ycyk704@163.com TEL:010-68382327 010-68382557
2019-05-21
2019-07-11