历史上的今天
返回首页

历史上的今天

今天是:2025年02月17日(星期一)

正在发生

2018年02月17日 | 油缸压力嵌入式压力监测系统软硬补偿方法实现

2018-02-17 来源:eefocus

    随着现代科学技术的发展,特种车辆的性能越来越高,系统构成越来越复杂、精密,采用嵌入式传感器实现众多工况参数的实时在线监测,是未来车辆状态监测和故障诊断系统发展的必然趋势[1]。同时由于车辆结构的紧凑,要求实现小型嵌入式传感器监测系统。否则,许多故障点无法直接监测,只能通过测量外围相关参数换算得到,换算结果的正确与否不得而知,从而可能导致更大的经济损失。随着微电子技术和信号处理技术的发展,使小型压力监测系统的实现成为可能。本文采用先进的压力传感器器件,结合精密放大电路和低功耗高性能处理器,构成嵌入式特种车辆行星变速机构操纵压力实时监测系统,并通过测量电路和补偿算法的综合应用,实现了监测系统的高精度误差补偿。

 


    1 嵌入式压力监测系统软硬补偿方法实现

    1.1 压力监测系统简介

    特种车辆的行星变速机构位于综合传动装置大箱体内,周围空间狭小而且部分浸泡在润滑油中,温度高达135 ℃。通过论证,选择一种小型隔离膜片式压力传感器,并将其安装在油缸附件的油道上,通过精密仪表放大器将信号放大后,采用高有效位的模数转换器(ADC)将其量化,并用ATMEL公司的AVR系列微控制器(MCU)[2]完成数据处理,再通过CAN2.0总线将处理结果提供给操作人员,以达到保护车辆综合传动装置的目的。系统原理框图如图1所示。

11.gif?imageView2/2/w/550

    由于系统工作温度范围比较宽(-20 ℃~135 ℃),因此温度变化对系统的测量误差影响最大,本文着重研究并实现了由于温度漂移引起的测量误差的补偿处理方法[3]。整个系统的补偿方法包括电路硬补偿和算法软补偿两部分,硬补偿包含传感器本身的工艺调制补偿和放大电路补偿;软补偿是通过在MCU内嵌入B样条温度补偿算法来实现。

    1.2 硬补偿电路设计

    系统采用硅压阻式压力传感器,它具有体积小、灵敏度高、分辨率高等特点,被广泛采用。但温度漂移是硅压阻式传感器的最大弱点,它包括零点温度漂移和灵敏度温度漂移。由于组成电桥的4个电阻的阻值不可能完全一致,当输入压力为零时,电桥输出不为零,具有零点偏移。灵敏度温度漂移主要是由半导体材料的压阻系数随温度的变化而发生变化造成的,一般地说,压阻式传感器的灵敏度随温度的升高而下降[4]。

    本系统选用美国某公司的小型硅压阻式传感器,其最大量程为300 psi(1 psi=6.895 kPa),输出电压为0~100 mV,非线性度为±0.1%。传感器通过对陶瓷基座上的厚膜电阻进行激光修阻,实现对传感器的温度补偿及零点偏差调整。其内部提供的激光修正电阻用来调节外部放大器的增益,从而保证传感器±0.1%互换性量程,电路原理图如图2所示。

22.gif?imageView2/2/w/550

    由于传感器最小分辨率为微伏级,极易在传输和测量时产生干扰,造成结果失真,因此必须采用一个高精度、高共模抑制比的测量放大电路进行小信号的放大处理。

    本系统采用了具有差分输入和闭环增益单元的仪表放大器INA128作为前端放大电路来做硬补偿。仪表放大器的两个输入端阻抗平衡并且阻值很高,输入偏置电流很低,并具有很低的输出阻抗,共模抑制为100 dB,即可将共模电平产生的任何误差减小到100 dB。其内部结构如图3所示,正好与图2所示的硬补偿电路中的放大器相符。

33.gif?imageView2/2/w/550

    1.3 软补偿算法实现

    系统通过硬补偿后,将电压信号经24 bit量化的模数转换器(ADC)采样后送给MCU进行后续处理。MCU采用ATMEL公司的ATmega32,其数据吞吐率高达1 MIPS/MHz,利用MCU的数据处理能力,实现了基于B样条的温漂补偿处理算法。之所以采用B样条曲线来拟合压力传感器的温度系数,是因为B样条曲线具有局部控制特性,曲线只在改变了的控制点附近才改变形状;并且,B样条曲线可以随意增加控制点,而不提高曲线的阶次,对于不同的应用选择控制点数,可以满足不同的拟合要求[5]。

    样条是一个分段多项式函数,k阶(k-1次)B样条曲线的表达式是:

1.gif?imageView2/2/w/550

    当分母为零时,定义分式的值为零。其中ti表示控制点节点值,它控制曲线形状,节点值从t0到tn+4。在本系统中使用的是非封闭曲线,因此ti取值规则如下:

5.gif?imageView2/2/w/550

    在MCU中实现基于B样条的补偿算法,考虑到B样条为非封闭曲线,由式(4)和式(5)确定控制点的选取应多于4个。考虑到补偿算法的实时性,对计算速度也提出了一定的要求,控制点也不宜太大。综合上述原因,取n=6,对传感器数据进行样本采集,通过单片机进行运算,根据B样条曲线的计算公式,推导控制节点值ti,编写3次B样条调和函数的求解程序,对每一个控制点计算一个补偿系数C(u),并将补偿系数写入相应的Flash寄存器中。系统正常工作时,通过车辆温度传感器获得压力监测系统工作的温度值,并读取相应寄存器的补偿系数,对测量值进行补偿,即可得到经过校正以后的压力输出。

    2 软、硬补偿方法实验结果

    实验时,将压力传感器置于150 psi恒压环境下,对压力传感器信号经放大后的输出电压进行测量。如果系统不受温漂影响的话,理论上输出电压应稳定在2.5 V。在不同温度下经硬补偿后实测数据如表1所示。

01.gif?imageView2/2/w/550

    按照表1中的数据作一条曲线,与理想输出比较,如图4所示。明显可以看到,输出随温度的变化呈现的不是一条直线,而是非线性的变化,说明通过前面硬补偿后,虽然非线性可限制在满量程的0.1%内,对于精度要求高的系统还是不满足要求,需进一步做软补偿。

44.gif?imageView2/2/w/550

    硬补偿后的数据在MCU内再使用B样条软补偿算法进行校正,校正后的结果如表2所示。

02.gif?imageView2/2/w/550

    由表2可知,系统在经过软补偿后,7个温度点的测量值与理论值相比,误差小了很多,与只进行硬补偿相比,误差可减小到1/5左右,软、硬补偿后误差曲线如图5所示。

55.gif?imageView2/2/w/550

    本文着重研究了对于新型特种车辆中高精度压力监测系统的温漂误差补偿方法。与传统方法相比,本方法主要特点是采用了硬补偿和软补偿结合的方式。硬补偿包含传感器本身的工艺调制补偿和放大电路补偿;软补偿是通过在MCU内嵌入B样条曲线拟合进行温度补偿。与其他方法相比,本方法易于实现,拟合误差小,使系统的精度得到较大的提高,并提高了系统的鲁棒性和稳定性。该系统已经在某样车中试用,运行状况良好,补偿精度高,具有很好的推广应用价值。


推荐阅读

史海拾趣

D3公司的发展小趣事

D3公司始终将产品质量放在首位。公司建立了严格的质量管理体系,从原材料采购到产品生产、检验,每一个环节都严格把控。这种对品质的执着追求,使得D3公司的产品在市场上赢得了良好的口碑。同时,公司还注重售后服务,为消费者提供全方位的支持和保障。这种以品质为核心的发展策略,让D3公司在电子行业中树立了良好的品牌形象。

Grande Electronics Ltd公司的发展小趣事
用另一个已知正常的遥控器去控制同一台设备,如果控制有效,则说明原遥控器可能存在故障。
AAT [Advanced Analog Technology, Inc.]公司的发展小趣事
如果调制电路中的元件损坏或参数漂移,需要调整元件参数或更换新的元件。
EOS POWER INDIA Pvt公司的发展小趣事

EOS一直将质量管理作为公司发展的核心。公司建立了完善的质量管理体系,从原材料采购到生产、检测、包装等各个环节都进行严格的质量控制。EOS还引入了先进的质量检测设备和方法,确保每一件产品都符合高标准的质量要求。此外,公司还定期对员工进行质量培训,提高员工的质量意识和操作技能。这些措施使得EOS的产品在市场上赢得了良好的口碑和信誉。

E-T-A Circuit Breakers公司的发展小趣事

在1980年代,E-T-A公司开始研发故障电流保护开关。这种设备能够检测和中断电气系统中的故障电流,有效防止电气设备的过载和短路。经过多年的技术积累和创新,E-T-A公司成功推出了具有高性能和可靠性的故障电流保护开关,并广泛应用于工业控制系统、建筑电气系统和住宅电气系统等领域。

博众电气(BZCN)公司的发展小趣事

博众电气自创立之初,就明确了技术立企的战略方向。公司投入大量资源进行技术研发,不断推出具有竞争力的电子产品。其中,一项关键技术的突破为博众电气的发展奠定了坚实基础。这项技术使得公司产品在性能上大幅超越同类产品,赢得了市场的广泛认可。凭借这一技术突破,博众电气逐渐在电子行业中崭露头角。

问答坊 | AI 解惑

关于PID调节的一点资料跟大家分享下

关于PID调节的一点资料跟大家分享下,希望大家多讨论…

查看全部问答>

内置与外置天线及内置天线技术要求

内置与外置天线及内置天线技术要求 天线分为内置与外置,外置主要使用螺旋或者PCB,螺旋天线一般带宽比较好也比较常用,PCB 天线比较容易调频率易于设计,但爱立信有两项重要专利,所以在欧美市场上很少其他厂商使用。还有一种假内置天线,其实 ...…

查看全部问答>

通常说的在NORFLASH上运行的程序还需要用到RAM吗?

norflash支持片上运行,nandflash不支持。那通常所说的在norflash上运行的程序是不是可以不需要ram? 如果我想做一个最小的ARM系统,一个2440芯片+一片norflash可行吗?不用操作系统,只运行一些百K左右大的.bin文件,也不用考虑程序的运行速度。 ...…

查看全部问答>

如何实现wince多用户?

如题,各用户要有自己的注册表信息和密码等信息!…

查看全部问答>

[求教]使用单片机解决UDP传输问题

小弟使用的是C8051F020芯片 以太网接口芯片是CP2201 由于开发使用芯片自带的库文件 函数和socket有些类似 程序基本实现将从PC收到的数据再次传回去 发送发送一段时间后(10ms或100ms) 单片机将不收数据了 不知道是什么原因?…

查看全部问答>

蓝牙虚拟串口问题

已经用 RegisterDevice注册设备成功 CreateFile虚拟串口成功 现在用GetCommState和SetCommState设置串口状态时返回错误为2250,经查为\"This network connection does not exist. \" 再问一下\"PORTEMUPortParams\"的通道可以随机设定吗?…

查看全部问答>

STM32用串口调试助手收不到数据

STM32可以编译包括运行,但是收不到数据。很郁闷。 公司台式电脑没串口,用的是USB转串口,相当于虚拟串口,串口调试助手,是用COM3口。下述程序可以运行,LED也会闪,但是串口调试助手上就是收不到数据。 请帮忙看看,十分感谢! 附近 ...…

查看全部问答>

请问 2401 能用JTAG 烧写和调试吗???谢谢

             大家好,我按着TI的资料做了一块2401的板子,做出来后不要说用来做调试了,就是连都不能连上.接下来的工作根本无法进行.后来找JTAG的资料来研究,发现EUM0和EUM1是用来作为接收来自仿真器的中断 ...…

查看全部问答>

OSCtxSw函数无法的到执行

最近在移植UCOS到MCF52259中,我是新手啊,遇到个问题(如标题),我有几个疑问啊:1.书上说,在正确设置了软中断向量或TRAP向量,使之指向OSCtxSw()函数的前提下,CPU将会执行OSCtxSw函数   我想问这个正确设置的问题:我这里是这样的:#d ...…

查看全部问答>

关于320F28035实现并口的问题?<时钟问题续集>

    我用这个28035运行其他的程序能够运行,应该说明系统时钟应该能够支持系统的运行。 但是我现在在做一个28035+TOPWAY 的液晶屏的显示就是显示不出来。    以前我在MSP430F149上已经实现了。这次只是换到DSP28035上就 ...…

查看全部问答>