一种基于噪残差和协方差匹配的动力定位系统噪声特性实时估计方法与流程

文档序号:15272397发布日期:2018-08-28 22:35阅读:1215来源:国知局

本发明涉及船舶动力定位控制领域,具体涉及一种基于噪残差和协方差匹配的动力定位系统噪声特性实时估计方法。



背景技术:

船舶动力定位系统(dynamicpositioningsystem,简称dps)是“依赖自身的推进系统自动控制船舶航向和位置的系统”。由于动力定位系统定位成本不随水深增加而增加,对极深海域和恶劣海况均具有极强适应性,且定位能力强,故系统正越来越广泛地用于深海石油钻井平台、海洋考察船、半潜船、水下潜器、海洋补给/装卸船、海底电缆铺设、海上打捞救生以及军用舰船的定点、循迹、循线或跟踪控制上,已成为深海开发的关键技术。

动力定位船舶在工作过程中,会受到风、浪、流等环境干扰力的作用。其中,其中,风、流和二阶波浪力使船舶产生低频漂移,而一阶波浪力将使船舶产生与波浪振荡同频率的高频振荡运动。控制器在进行设计时,不需要对这些高频振荡运动做出响应,否则将造成推进器的频繁动作,加剧推进器磨损并造成不必要的能耗。因而需要通过滤波器将这些高频运动和测量信号中的噪声滤除。同时,通过状态估计给出船舶状态(位置、航向、速度、加速度等)的估计值。

动力定位系统常用的状态估计和滤波方法包括卡尔曼滤波、扩展卡尔曼滤波等。其中卡尔曼滤波只能用于线性系统,扩展卡尔曼滤波(extendedkalmanfilter,ekf)是常用的进行非线性状态估计和滤波的方法。但是ekf通过对非线性系统的taylor展开式进行一阶截断,忽略高阶项进行线性化,截断误差将降低滤波精度,甚至使滤波发散。同时,进行线性化时需计算jacobin矩阵,计算量大。因而,出现了无迹卡尔曼滤波(unscentedkalmanfilter,ukf)方法用于非线性系统状态估计,运用无迹变换对非线性概率密度分布进行近似,不需求导、估计精度高,现已广泛用于导航定位、信号处理、目标跟踪等领域。

船舶在动力定位过程中,海洋环境和运动状态的不断变化,使得系统的过程噪声和测量噪声统计特性都将发生变化,且很难准确表示。标准ukf滤波通过实验和试凑的方法来确定噪声协方差矩阵,往往效率低下,且作为常值设置在系统中,不能反映系统过程变化,从而影响ukf滤波精度和稳定性。因而需要通过自适应算法实时估计出航行过程中系统的过程和测量噪声特性。常见的自适应算法往往不能同时在线跟新系统的过程噪声和测量噪声特性,或者算法复杂、计算量大,影响工程应用。因而设计一种能同时反映过程和测量噪声变化,且要求算法简单,易于实现的自适应算法十分必要。



技术实现要素:

本发明的目的是为解决以上问题,提供一种基于噪残差和协方差匹配的动力定位系统噪声特性实时估计方法,即基于无迹卡尔曼滤波(ukf),运用自适应算法实时在线估计系统过程噪声和测量噪声协方差矩阵,并进行船舶动力定位系统状态估计和滤波,从而获得较好的滤波精度和稳定性。

本发明的目的可以通过以下技术方案实现:

(1)利用自适应无迹卡尔曼滤波方法进行船舶动力定位系统的状态估计与滤波;

(2)r-adaptation:基于残差序列和开窗估计的自适应算法,在线实时估计出当前系统的测量噪声协方差矩阵rk;

(3)q-adaptation:基于协方差匹配自适应算法,以测量噪声协方差矩阵的估计值为输入,在线更新系统过程噪声协方差矩阵qk;

(4)返回第(1)步,将测量噪声协方差矩阵的估计值以及过程噪声协方差矩阵的修正值作为下一时间步ukf滤波新的输入,进行新的状态估计和滤波;

步骤(1)—(4)作为一个整体,构成了所提出的动力定位系统噪声特性实时估计方法。

步骤(1)按照ukf滤波过程进行状态估计和滤波,但与标准ukf滤波不同的是,计算过程中的过程噪声协方差矩阵qk和测量噪声协方差矩阵rk不再为常量,而是通过自适应算法,实时跟踪系统环境噪声变化,由其噪声特性实时估计带入进行计算,即:

步骤(2)中基于残差序列和开窗估计的测量噪声协方差矩阵rk自适应估计算法(r-adaptation)为:

定义残差序列:

利用开窗估计法计算残差协方差:其中:m为开窗大小,当k<m时,取m=k。

根据当前状态估计值和状态误差协方差pk计算新的sigma点:

根据测量模型对新的sigma点进行变换:

基于ukf算法计算测量噪声协方差理论估计值:

在线估计测量噪声协方差矩阵:

步骤(3)中基于协方差匹配的过程噪声协方差矩阵qk自适应算法(q-adaptation),以测量噪声协方差矩阵的估计值为输入,其算法为:

引入自适应因子μk,对过程噪声协方差矩阵进行实时更新:

自适应因子μk的计算方法为:

首先进行滤波发散判断:若则滤波正常,不用对qk进行修正,μk=1;若则滤波发散,需通过μk对qk进行修正。

定义:

则:式中取绝对值是为避免μk出现负值。

与现有技术相比,本发明采用ukf滤波,不需对系统模型进行线性化处理,相较于卡尔曼滤波和扩展卡尔曼滤波具有更好的状态估计和滤波效果。此外,在ukf滤波基础上引入自适应算法,对测量噪声和过程噪声协方差矩阵进行实时估计与更新。由于在对过程噪声协方差矩阵进行更新时,仅在检测到滤波发散时才进行,所以计算量小,且方法简单,易于工程实现。自适应算法的应用使动力定位系统在复杂海况与测试环境下,通过实时更新系统测量噪声协方差和过程噪声协方差矩阵,使系统跟踪环境变化,从而提高状态估计和滤波精度。

附图说明

图1为本发明的噪声特性实时估计流程图。

图2为船舶动力定位系统状态估计和控制系统原理图

图3为自适应ukf和ukf估计船位均方根误差比较曲线。

具体实施方式

下面结合附图和实施例对本发明做进一步描述。

一种基于噪残差和协方差匹配的动力定位系统噪声特性实时估计方法,即基于无迹卡尔曼滤波(ukf),运用自适应算法实时在线估计系统过程噪声和测量噪声协方差矩阵,并进行船舶动力定位系统状态估计和滤波,从而获得较好的滤波精度和稳定性。

如图1所示,本发明实施步骤如下:

(1)利用自适应无迹卡尔曼滤波方法进行船舶动力定位系统的状态估计与滤波;

(2)r-adaptation:基于残差序列和开窗估计的自适应算法,在线实时估计出当前系统的测量噪声协方差矩阵rk;

(3)q-adaptation:基于协方差匹配自适应算法,以测量噪声协方差矩阵的估计值为输入,在线更新系统过程噪声协方差矩阵qk;

(4)返回第(1)步,将测量噪声协方差矩阵的估计值以及过程噪声协方差矩阵的修正值作为下一时间步ukf滤波新的输入,进行新的状态估计和滤波;

步骤(1)—(4)作为一个整体,构成了所提出的动力定位系统噪声特性实时估计方法。

步骤(1)中按照ukf滤波过程进行状态估计和滤波,但与标准ukf滤波不同的是,计算过程中的过程噪声协方差矩阵qk和测量噪声协方差矩阵rk不再为常量,而是通过自适应算法,实时跟踪系统环境噪声变化,由其噪声特性实时估计带入进行计算,过程为:

初始化:

计算k时刻sigma点:

时间更新:

(为测量噪声协方差矩阵估计值)

测量更新——计算ukf增益矩阵kk,状态估计值及状态误差协方差矩阵pk:

步骤(2)中基于残差序列和开窗估计的测量噪声协方差矩阵rk自适应估计算法(r-adaptation)为:

计算残差序列:

利用开窗估计法计算残差协方差:其中:m为开窗大小,当k<m时,取m=k。

根据当前状态估计值和状态误差协方差pk计算新的sigma点:

根据测量模型对新的sigma点进行变换:

基于ukf算法计算测量噪声协方差理论估计值:

在线估计测量噪声协方差矩阵:

步骤(3)中基于协方差匹配的过程噪声协方差qk自适应算法(q-adaptation),基于测量噪声协方差矩阵的估计值进行计算,算法为:

引入自适应因子μk,对过程噪声协方差矩阵进行实时更新:

自适应因子μk的计算方法为:

首先进行滤波发散判断:若则滤波正常,不用对qk进行修正,μk=1;若则滤波发散,需通过μk对qk进行修正。

定义:

则:式中取绝对值是为避免μk出现负值。

以下对本发明的实施例进行说明,应当理解,此处所描述的实施例仅用于说明和解释本发明,并不用于限定本发明。

为验证本发明所提出的一种基于噪残差和协方差匹配的动力定位系统噪声特性实时估计方法的可行性,建立了动力定位船舶状态估计和非线性pid控制闭环系统。如图2所示,船舶运动受到风、浪、流环境干扰力的影响,而使船舶偏离其设定船位。所设计自适应状态估计滤波器接收包含测量噪声的测量船位信号,通过所设计算法滤除测量噪声,以及海浪高频运动分量,仅将低频船位估计值输出作为控制器的输入。控制器根据估计船位和期望船位的偏差进行运算,得到所需控制力,并控制动力定位船舶运动,使其保持在设定船位上。

在matlab中建立图2所示仿真分析模型,系统仿真时间设定为600s。为验证自适应ukf滤波器对系统噪声和测量噪声统计特性的在线估计性能,在初始的300s,船舶受到波浪干扰频率设为1.0rad/s,对应的三一波高为1.5m,浪级4级。之后的300s,波浪干扰频率设为0.55rad/s,对应的三一波高为5m,浪级6级,对应的测量噪声也变为初始200s时的2倍。

为验证所提自适应算法的优越性,将采用自适应ukf滤波和ukf滤波的状态估计结果进行了比较,图3为两者的估计船位均方根误差的比较曲线。图中虚线表示aukf滤波均方根误差,实线表示ukf滤波均方根误差。

均方根误差(rootmeansquareerror,rmse)的定义为:

式中:nk为仿真分析时间步数,xk为系统状态实际值,为系统状态估计值。

由图3可以看出,在仿真参数设定相同的情况下,ukf滤波由于在计算过程中不能对过程噪声和测量噪声进行实时校正,因而状态估计和滤波效果相较于自适应ukf滤波为差。当海浪状态发生突变时,采用ukf滤波时估计船位的均方根误差随之增大,说明ukf滤波没有对环境突变的自适应能力。反之,采用本发明的自适应算法进行状态估计时,由于能实时估计出系统的过程噪声和测量噪声协方差矩阵,即使海况发生突变,估计船位的均方根误差并没有发生大的改变,这证明了所发明的动力定位系统噪声特性实时估计算法可行,能提高ukf状态估计滤波的精度和稳定性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1