扩展卡尔曼滤波算法在船舶雷达液位测量系统中的应用
2015-06-23刘庆华
刘庆华,陶 峰
(1.江苏科技大学计算机科学与工程学院,江苏镇江 212003) (2.同济大学交通运输工程学院,上海 201804)
扩展卡尔曼滤波算法在船舶雷达液位测量系统中的应用
刘庆华1,2,陶 峰1
(1.江苏科技大学计算机科学与工程学院,江苏镇江 212003) (2.同济大学交通运输工程学院,上海 201804)
针对雷达液位计在船舶液位测量过程中由于液位波动、外界干扰或者其它突发状况导致的测量结果出现偏差以及输出不稳定的问题,提出了一种峰值滤波、低通滤波和扩展卡尔曼滤波相结合的方法对雷达液位计测量值进行滤波处理.首先,对液位信号进行峰值滤波,去除误差较大的信号,然后通过设计低通滤波器滤除液位信号中的高频噪声信号以减小噪声对测量的影响,最后采用动力学原理对雷达液位计测量过程进行扩展卡尔曼建模,通过对来自低通滤波器滤波后的结果进行扩展卡尔曼滤波提高了输出的稳定性.对实际船舶上的水舱进行实验,实验结果表明:雷达液位计的测量值经过低通滤波器和扩展卡尔曼滤波器后具有更高的稳定性、可靠性和准确性.
雷达液位计;船舶;液位测量;低通滤波器;扩展卡尔曼滤波器
船舱液位值是船舶检测中最重要的参数之一,而液位测量系统则是船舶系统中的一个重要组成部分.目前在船舶液位测量系统中最常用的液位测量方式有雷达式和压力传感器式[1-2].通过测得的液位值手动调节或者系统自动调节使得船舶运行在一个相对稳定和安全的状态,提高船舶在海上航行和港口装卸的安全性[3].
由于船舶自动化程度的提高,对液位的测量精度要求也越来越高,雷达液位计作为一种高精度、非接触式新型液位测量装置也将越来越多应用在船舶液位测量系统中[4].由于船舶在海上不是静止的,因此雷达液位计测量输出的液位值也呈动态变化,且测量过程很容易受到外界干扰,基于此,文中提出了峰值滤波、低通滤波和扩展卡尔曼滤波相结合的方法对雷达液位计测量输出值进行滤波,通过滤波输出一个精度高并且相对稳定的液位值.
1 雷达液位计液位检测原理与误差分析
1.1 雷达液位计液位检测原理
雷达液位计的测量原理如图1,它是按照非接触测量过程进行工作的[5],对于采用连续波线性调频原理测量的雷达液位计,工作时通过探测单元(TGU)采集数据,由于其发射波和反射波的频率之差与液位距离成正比,根据这个特性将采集的数据传送给中央处理单元(SCU)计算液位值.测量时首先测得空高d,通过s=h-d,计算得到液位高度s.
图1 雷达液位计液位测量原理Fig.1 Level measurement diagram of radar level gauge
1.2 雷达液位计液位检测误差分析
雷达液位计的测量结果不受雾气等工艺条件影响,也不受温度和液体密度的影响[6],在液位静止的情况下测量较为精确,但在液位波动的情况下很难测得一个完全可靠而稳定的液位值.
考虑到船舶在海上航行过程中存在横倾和纵倾现象,会导致船舶倾斜从而使船舱出现倾斜,使液位测量受到影响.虽然雷达液位计测量受船舶倾斜的影响,但是可以通过改变其在舱柜上的安装位置来减小测量误差,当然也可以直接测量,然后将测量结果通过换算得到真实液位值[1],这里通过特定传感器安装位置来解决问题,从而简化程序.雷达液位计测量的液位值是其发射天线到舱底的距离减去空高值,如图2,当雷达液位计没有装在舱柜顶部几何中心时,测量到的液位hL不是真实液位值,因此必须换算到舱柜中心的真实液位高度hR.对于碰到某些特殊情况而无法将雷达液位计装在舱柜顶部几何中心位置时,可以把雷达液位计的测量值分别通过横倾和纵倾的角度换算到中心真实液位值,从而解决由于船舶倾斜导致的液位测量不精确的问题.
图2 倾斜船舱侧视图Fig.2 Side view of inclined tank cabinet
2 液位的滤波算法处理
雷达液位计测量船舱中的波动液位时,输出也是波动的,有时由于外界干扰还会出现错误的输出,可能导致瞬间的输出值和实际值偏离很大.为了解决这个问题,文中提出了构建峰值滤波、低通滤波和扩展卡尔曼滤波相结合的方法(图3),从而提高雷达液位计输出信号的稳定性、可靠性和准确性.
图3 液位信号的滤波过程Fig.3 Filtering process of level signals
2.1 液位信号的峰值滤波
当使用雷达液位计测量时输出值可能会出现瞬间的错误跳动而导致输出值和实际值偏离很大,其原因可能为某一瞬间雷达液位计的测量路径上存在障碍物或者雷达液位计测量时出现短暂的虚假回波等.为避免此问题,可在中央控制单元通过编程实现信号的筛选,对某段时间内单独出现的一次大幅度跳变信号进行峰值滤波处理.其原理是设置一个峰值,然后对采集信号进行分析,假设之前相邻两次液位测量值之差的绝对值都没有超过峰值,而当前的液位测量值与前一次液位测量值之差的绝对值超过设定的峰值则视为测量误差导致的随机大幅跳变,将上一次的测量值赋给当前的测量值,即滤除第一个峰值;如果下一次液位的测量值与当前的液位测量值之差的绝对值仍然超过设定的峰值,则不作处理,直接输出下一次液位的测量值,即不滤除第二个连续的峰值,这样初步提高了采集信号的精度,防止一些随机跳变信号的产生.
2.2 构建低通滤波器
由于使用雷达液位计测量液位时,测量结果和测量过程都带有噪声,必须尽可能的滤除这些噪声保证液位输出值的精度和可靠性.文中采用一阶低通滤波器实现,把雷达液位计输出信号通过一个低通滤波器,滤除大于0.5 Hz的误差信号(这里视实际情况而定),这样既保证了雷达液位计输出信号的高精度和高可靠性,同时也为下一步的扩展卡尔曼滤波提供了更加可靠稳定的数据.
2.3 液位的扩展卡尔曼滤波
通过将雷达液位计的输出经过程序的初步筛选,滤除一些误差较大的跳变信号,然后经过低通滤波器滤除大部分的噪声信号.但是波动液位对雷达液位计的测量仍然存在影响,因此使用雷达液位计对液位进行测量时仍然会导致输出结果不断地跳变,虽然可以调节雷达液位计的阻尼时间来优化输出结果,但是精确性和稳定性不高.为了解决这个问题,文中采用Kalman滤波对雷达液位计测量结果进行滤波[7],滤波算法放在中央处理单元进行.Kalman滤波是预估和校正的过程,主要思想是采用现在的测量值和先验估计值预估出一个改进的后验估计值,利用这个后验估计值作为下一状态的先验估计值这样循环递推达到一个理想的滤波效果.
考虑到船舶在海上航行时是一个晃动的状态,因此船舱中液位的变化也是一个随机加速的直线运动过程,而雷达液位计测得的液位值也就成了一个随机加速的值,鉴于这个特性把液位的变化看作是动力学运动过程:
式中:Δt为采样时间间隔;at为加速度;vt和vt-1分别为两个相邻时间点的速度值.由Kalman滤波原理得到离散系统的状态方程和测量方程分别为:
式中:X为状态向量,U为控制向量,A为系统的状态转移矩阵,B为控制矩阵,H为观测矩阵,W和V分别为过程噪声阵和测量噪声阵.
由于该雷达液位测量系统是一个非线性模型,因此考虑采用扩展卡尔曼滤波的方法进行建模[8],能够克服数据处理过程中不稳定以及系统的非线性问题[9].但是使用扩展卡尔曼滤波会存在另一个问题,即在强非线性和非高斯环境下的跟踪能力比较差,甚至可能会出现滤波发散的情况,最后可能会导致滤波效果不理想,因此必须有确定的模型.综上,把液位的高度和速度值作为状态变量,液位的加速度值作为输入参数,从而将非线性的问题线性化了,因此,系统的状态向量为X(k)=系统的状态方程和测量方程分别为:
通过建立系统预测方程和系统更新方程,然后给定一个预估的初始状态和初始协方差就能启动Kalman滤波器,并且能够持续循环递推下去达到理想的滤波效果.在本实验中将读取水舱中的初始液位值和预估一个波动液位的初始速度构成初始状态X^(0|0),然后通过预估P(0|0),这样就能启动滤波器实现液位的循环滤波,通过滤波输出一个和真实值相差不大且较为稳定、可靠的液位值.
3 实验系统与结果分析
3.1 实验系统
以实船上的1.2m高的水舱作为实验对象,如图4,在水舱上按照前文方法安装雷达液位计,本实验采用型号为RL202的高频雷达液位计,它具有更高的测量精度.实验过程中将雷达液位计采集到的数据传送给中央处理单元,在中央处理单元中由编程实现峰值滤波、低通滤波和扩展卡尔曼滤波对雷达液位计测量值进行滤波,最后由船舶网络输出数据到控制台显示经过滤波处理后的液位值,实验系统框架如图5,由此可以实现一个液位遥测的过程.实验过程中使用行车将水舱吊起晃动模拟水位波动,并在出水阀口放置流量计,通过流出的水量换算水舱中液位的实际值作为实际观测值.
图4 实验水舱Fig.4 Experiment tank
图5 实验系统Fig.5 Experiment system
3.2 实验结果分析
在水舱排水过程中使用雷达液位计采集液位数据,然后对采集的数据进行分析.采用扩展卡尔曼滤波对来自峰值滤波和低通滤波处理后的雷达液位计的测量值进行滤波,在液位波动和平缓变化两种情况下分别进行测试.图6,7是用雷达液位计对液位在平缓变换和波动变化两种情况下的测量分析.
从图6可以看出,在液位平缓变化的情况下,雷达液位计能够较好地跟踪监测到液位变化情况,并且可以通过雷达液位计测量的高度与实际观测到的高度基本接近,可见高频雷达液位计测量平缓无波动液面的测量精度比较高.同时观察扩展卡尔曼滤波曲线在刚开始的时候与实际观测值有些偏差,原因是设定的滤波初值和协方差与实际有偏差,但是经过多次扩展卡尔曼滤波校正,输出液位值基本上和实际观测的液位值接近,实现了液位的有效跟踪.从图7可以看出在液位剧烈波动的情况下,雷达液位计的输出发生了剧烈的跳动,而采用扩展卡尔曼滤波后,经过几个周期的滤波,液位值趋于稳定并且和实际液位值接近,因此采用扩展卡尔曼滤波对波动液位值进行处理后,滤波输出值能够实时跟踪到真实的液位值,且显示稳定、可靠,因此滤波效果良好.
图6 液位平缓变化下液位测量与扩展卡尔曼滤波Fig.6 Level measurement and extended Kalman filter for smooth level change
图7 液位波动情况下液位测量与扩展卡尔曼滤波Fig.7 Level measurement and extended Kalman filter for fluctuant level change
对液位波动变化的情况进行数据分析,由表1可以得出对于液位测量方法中采用雷达液位计直接测量得到液位值的均方误差比较大,当雷达液位计输出值经过峰值滤波、低通滤波器和扩展卡尔曼滤波之后均方误差减小,可见经过峰值滤波、低通滤波和扩展卡尔曼滤波之后的雷达液位计输出结果更加精确.
表1 两种不同液位测量方法的性能比较Table 1 Two different liquid level measurement performance comparison
4 结论
文中提出了采用峰值滤波、低通滤波和扩展卡尔曼滤波相结合的方法对雷达液位计的输出结果进行滤波处理,该方法具有高精度、高稳定和高可靠性.对于一些考虑液位波动情况的液位测量系统则采用卡尔曼滤波对液位测量结果进行处理,其效果优于文献[7]方法.文中提出通过把雷达液位计布置在船舱的合理位置,消除了船舶倾斜对测量结果的影响,实验证明了通过文中方法测得的液位值精确、稳定,效果良好,具有更高的参考价值.
References)
[1] 赵晓变.液位遥测在监测船舶装卸安全方面的应用研究[D].辽宁大连:大连海事大学,2013:1-37.
[2] 支平,叶天,王恺俊.多品种化学品船液位测量系统设计[J].船舶工程,2014,36(4):69-73.
Zhi Ping,Ye Tian,Wang Kaijun.Design of level gauging system for multi-chemical tank[J].Ship Engineering,2014,36(4):69-73.(in Chinese)
[3] 赵家斌.基于PLC的抗横倾功能的阀门遥控与液位遥测系统的研究[D].湖北武汉:武汉理工大学,2010:1-25.
[4]Bin Sai,Bas Kastelein.Advanced high precision radar gauge for industrial applications[C]//Proceedings of 2006 CIE International Conference on Radar.Shanghai:IEEE,2006:1-4.
[5] 王越清,郝滦伊,王学敏,等.雷达液位计在罐区检测中的应用[J].油气井测试,2010,19(2):60-61.
Wang Yueqing,Hao Luanyi,Wang Xuemin,et al.Radar level gauge in the tank detection[J].Well Testing,2010,19(2):60-61.(in Chinese)
[6] 陈维吉.液位检测方案的选择[J].自动化与仪器仪表,2012,159(11):155-157.
Chen Weiji.The selection of level detection scheme[J].Automation and Instrumentation,2012,159(1): 155-157.(in Chinese)
[7] 王慧锋,吴中相.卡尔曼滤波器在储罐液位监控系统中的应用[J].化工自动化及仪表,2014,41(7): 758-761.
Wang Huifeng,Wu Zhongxiang.Application of Kalman filter in tank level monitoring and control system[J].Control and Instruments in Chemical Industry,2014,41 (7):758-761.(in Chinese)
[8] 罗磊,田增山,陈俊亚.EKF定位跟踪算法研究[J].重庆邮电大学学报,2009,21(1):50-52.
Luo Lei,Tian Zengshan,Chen Junya.Algorithm of EKF positioning and tracking[J].Journal of Chongqing University of Posts and Telecommunications,2009,21(1):50-52.(in Chinese)
[9]Han Gaining,Li Yongfeng.Multi-sensor information fusion algorithm research and application[C]//IEEE Internationl Symposium on Assembly and Manufacturing (ISAM).[S.l.]:IEEE,2013,41-44.
(责任编辑:曹 莉)
Application of extended Kalman filtering in ship radar level measurement system
Liu Qinghua1,2,Tao Feng1
(1.School of Computer Science and Engineering,Jiangsu University of Science and Technology,Zhenjiang Jiangsu 212003,China) (2.School of Transportation Engineering,Tongji University,Shanghai 201804,China)
In order to solve the problem that level measurement results of radar level gauge on ship will exist deviation and unstable output due to fluctuant liquid level,external interference or other unexpected situations,this paper presents a new combined method of peak filter,low-pass filter and extended Kalman filter.Firstly,peak filter is used to remove large error level signals.Then,in order to reduce the impact of noise on measurements,this paper designs a low-pass filter to filter out high frequency noise signals.Finally,we build extended Kalman filter model by dynamic principle for the measurement process of radar level gauge,and put the data from lowpass filter into the extended Kalman filter to obtain a stable output.The methodology is tested with real tank from ship.Test result shows that the value of level can be more stable,reliable and accurate after using combined method of extended Kalman filter and low-pass filter.
radar level gauge;ship;level measurement;low-pass filter;extended Kalman filter;
TP274
:A
:1673-4807(2015)05-0449-05
10.3969/j.issn.1673-4807.2015.05.008
2015-06-26
刘庆华(1977—),男,博士,副教授,研究方向为汽车电子与路面检测.E-mail:Ciant-liu@163.com
刘庆华,陶峰.扩展卡尔曼滤波算法在船舶雷达液位测量系统中的应用[J].江苏科技大学学报:自然科学版,2015,29(5):449-453.