一种基于拉盖尔函数的船舶动力定位非线性模型预测控制方法
文献发布时间:2023-06-19 16:09:34
技术领域
本发明涉及船舶动力定位控制方法,具体涉及一种基于拉盖尔函数的船舶动力定位非线性模型预测控制方法。
背景技术
船舶动力定位系统(Dynamic Positioning System,DPS)能够稳定有效的使船舶自动保持航向和位置,当船舶需要改变定位位置时不反复起锚抛锚,高效便捷,能提高船舶的工作效率。动力定位系统逐渐成为海洋工程船舶不可或缺的一部分,因此,对动力定位系统的研究引起了国内外相关科研人员的关注。
动力定位控制技术是动力定位系统的核心,决定着动力定位系统性能的优劣。由于DP系统的动态模型是非线性的,因而采用非线性模型预测控制(Nonlinear ModelPredictive Control,NMPC)进行船舶动力定位控制器设计,可以提高控制系统的控制精度。NMPC控制器的实现面临的挑战是在当前操作点在线计算量大且耗时长,因此,在控制器的设计中引入拉盖尔正交函数,对控制信号进行参数化,可以减少预测范围内的约束数量,优化时间间隔内的计算负担,提高在线计算效率,从而可以获得更好的性能与经济效益。
船舶定位过程中,会受到风、浪、流等环境干扰力的作用而使船舶偏离设定船位。其中,一阶波浪力将使船舶产生高频振荡运动,控制器在运算时并不需要对其进行响应,否则将造成推进器频繁动作加剧磨损,同时增加能耗。因而,需要通过状态估计与滤波器将运动信号中的高频成分和测量噪声滤除,而仅将低频运动分量作为控制器的输入。采用无迹卡尔曼滤波器(UKF)可对船舶未知状态进行估计,同时对外界干扰、模型失配、未建模动态等模型不确定进行估计,并在外环控制器中进行补偿,保证闭环控制器系统的鲁棒性。
QIAN等人提出了船舶动力定位系统基于拉盖尔函数的模型预测控制器设计,李光磊[1]等人提出了基于Laguerre函数的船舶航向DMPC控制方法,两者在进行模型预测控制器设计时未考虑定位系统是非线性,基于线性系统对船舶动力定位系统进行建模控制,同时忽略了船舶定位过程中受风、浪、流等环境干扰力的作用,会造成一定的控制偏差。不考虑状态估计和滤波,当状态不可测时控制时控制效果会受到影响,由于测量信号中的噪声和船舶高频运动的存在,不对测量信号进行滤波处理会使推进器频繁动作而造成不必要的能量损耗及磨损。
参考文献:
[1]李光磊,郭亦平,林莉.基于Laguerre函数的船舶航向DMPC研究[J].计算机与数字工程,2017,45(5):988-993.
[2]Qian X,Yin Y,Zhang X,et al.Model predictive controller usinglaguerre functions for dynamic positioning system[C]//2016 35th ChineseControl Conference(CCC).IEEE,2016:4436-4441.
发明内容
(一)要解决的技术问题
为解决上述技术问题,本发明提供一种基于拉盖尔函数的船舶动力定位非线性模型预测控制方法。将拉盖尔函数与非线性模型预测控制相结合进行控制器设计,通过UKF进行动力定位系统滤波设计和状态估计,滤除掉高频运动分量和测量噪声,并估计出系统的未知状态和干扰,基于前馈控制的思想,消除控制信号中干扰的影响,状态估计值作为未来非线性模型预测动态的初始条件,以进一步提高NMPC控制器的鲁棒性和控制精度。
(二)技术方案
为了达到上述目的,本发明采用的主要技术方案包括:
步骤1、基于前馈控制的思想,消除控制信号中干扰的影响,建立动力定位船舶的低频运动连续时间标称模型,并在每一时间步进行离散化处理,得到其离散时间状态空间模型:
x(k+1)=A(k)x(k)+B(k)u(k)
y(k)=C(k)x(k)
其中:k代表当前时刻,x(k),u(k),y(k)分别为k时刻系统的状态向量、控制输入向量和输出向量;离散化的状态空间模型是非线性的,考虑到DP船舶的航行状态是缓慢变化的,假设状态矩阵A(k),B(k)在预测期内保持不变,因此,从k时刻出发未来i时刻的预测输出y(k+i),i=1,2...N
步骤2、为消除控制过程中的稳态误差,令x
其中:Δx(k)=x(k)-x(k-1)是状态增量,Δu(k)=u(k)-u(k-1)是控制增量,x
步骤3、使用拉盖尔正交函数设计非线性模型预测控制器:定义从k时刻出发未来i时刻的非线性船舶系统控制输入增量信号Δu(k+i),采用拉盖尔函数描述为Δu(k+i)=L(i)
步骤4、采用无迹卡尔曼滤波器估计未知状态和未知环境干扰:根据接收到的传感器船位(x,y)和航向ψ信息,滤除掉测量信息中的噪声干扰以及其中的高频振荡成分,得到低频船位和航向估计值
步骤5、基于拉盖尔函数的NMPC控制器将接收到的状态估计滤波值作为预测未来动态的初始条件,通过预测模型预测未来动态,与设定船位η
基于拉盖尔函数的NMPC控制器设计按以下方法实现:
基于UKF的状态估计与滤波原理,船舶不需要对高频运动状态进行响应,同时基于前馈控制思想,将干扰估计
其中:η=[x,y,ψ]
基于船舶运动控制模型,根据预测控制基本原理,基于拉盖尔函数的非线性模型预测控制基本步骤如下:
(1)使用拉盖尔函数描述控制增量Δu,从当前k时刻出发的未来i时刻系统的控制输入增量由拉盖尔函数表示为:
Δu(k+i)=L(i)
其中:
将由拉盖尔函数表示的控制输入增量代入含有积分器的增广状态空间模型,根据当前k采样时刻的状态和输出预测未来k+i时刻的系统状态和系统输出,得到含有拉盖尔函数的状态空间模型为:
(2)使用拉盖尔函数系数向量来计算参考信号和输出信号之间的误差,令x
其中:r(k)为预先设定的参考信号,即需要跟踪的轨迹信号;
船舶的控制力和力矩受到推进器的饱和非线性约束,从当前时刻k出发的未来i时刻船舶控制信号u(k+i)和控制输入增量信号Δu(k+i)的约束可由拉盖尔系数向量表示为:
Δu
(3)步骤(2)基于拉盖尔函数的NMPC优化问题是可以通过活动集或内点方法解决的二次规划问题,求解出最优拉盖尔系数γ*(k),那么,当前时刻最佳控制增量可以通过以下公式确定:
Δu
(4)将控制增量Δu
(5)将控制力
(6)重复进行UKF状态估计与滤波以及拉盖尔NMPC控制过程,直至结束。
(三)有益效果:
本发明提供一种基于拉盖尔函数的船舶动力定位非线性模型预测控制方法,将拉盖尔函数引入到船舶动力定位系统的非线模型预测控制设计中,为控制器的设计带来了极大的灵活性,有效提高计算效率,减少了在线计算负载。同时利用UKF方法对动力定位系统进行状态估计和滤波,滤除高频波浪干扰和测量噪声干扰,并对不可测量状态和时变干扰进行估计,基于前馈控制的思想,消除控制信号中干扰的影响,状态估计值作为未来非线性模型预测动态的初始条件,在线考虑系统推进器约束和操作区约束,对目标函数进行最优求解,产生最优控制指令传送给被控船舶,从而控制船舶保持在设定船位和航向。方法能提高NMPC算法的效率,避免推进期的频繁动作,减少推进器磨损及能耗,提高非线性模型预测控制的控制效果和鲁棒性。
附图说明
图1为基于拉盖尔的非线性模型预测控制系统原理框图;
图2为基于拉盖尔函数的非线性模型预测控制流程图;
图3为船舶运动轨迹在北-东坐标系中的变化曲线;
图4为拉盖尔函数非线性模型预测控制器作用下船位输出曲线;
图5为基于拉盖尔函数非线性模型预测控制器作用下船舶控制力输入曲线;
图6为UKF干扰估计值与真实干扰值比较曲线;
图7为UKF状态估计和滤波效果比较曲线;
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图和实施例,对本发明进行进一步详细说明。
本发明实例所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本发明实施例中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本发明实例所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。
一种基于拉盖尔函数的船舶动力定位非线性模型预测控制方法,通过将拉盖尔函数与非线模型预测控制相结合船舶动力定位系统控制器的设计,使用拉盖尔函数对控制信号序列进行参数化,减少预测范围内的约束数量,从而减少每个控制步骤中的参数数量,同时采用UKF进行动力定位系统的状态估计与滤波,对未知状态和时变干扰进行估计,滤除测量信号中的高频运动分量和测量噪声,并基于前馈控制的思想,消除控制信号中干扰的影响,以进一步提高模型预测控制器的控制精度和计算效率。
图2为本发明实施例提供的一种基于拉盖尔函数的船舶动力定位非线性模型预测控制方法的流程图,如图2所示,该方法包括以下步骤:
步骤1、基于前馈控制的思想,消除控制信号中干扰的影响,建立动力定位船舶的低频运动连续时间标称模型,并在每一时间步进行离散化处理,得到其离散时间状态空间模型:
x(k+1)=A(k)x(k)+B(k)u(k)
y(k)=C(k)x(k)
其中:k代表当前时刻,x(k),u(k),y(k)分别为k时刻系统的状态向量、控制输入向量和输出向量;离散化的状态空间模型是非线性的,考虑到DP船舶的航行状态是缓慢变化的,假设状态矩阵A(k),B(k)在预测期内保持不变,因此,从k时刻出发未来i时刻的预测输出y(k+i),i=1,2...N
步骤2、为消除控制过程中的稳态误差,令x
其中:Δx(k)=x(k)-x(k-1)是状态增量,Δu(k)=u(k)-u(k-1)是控制增量,x
步骤3、使用拉盖尔正交函数设计非线性模型预测控制器:定义从k时刻出发未来i时刻的非线性船舶系统控制增量信号Δu(k+i),采用拉盖尔函数描述为Δu(k+i)=L(i)
步骤4、采用无迹卡尔曼滤波器估计未知状态和未知环境干扰:根据接收到的传感器船位(x,y)和航向ψ信息,滤除掉测量信息中的噪声干扰以及其中的高频振荡成分,得到低频船位和航向估计值
步骤5、基于拉盖尔函数的NMPC控制器将接收到的状态估计滤波值作为预测未来动态的初始条件,通过预测模型预测未来动态,与设定船位η
基于拉盖尔函数的NMPC控制器设计按以下方法实现:
采用无迹卡尔曼滤波器对未知状态和干扰进行估计,并滤除高频波浪运动及测量噪声,同时基于前馈控制思想,将干扰估计
在每一时间步进行离散化处理,得到其离散时间状态空间模型:
基于船舶运动离散时间状态空间模型,根据预测控制基本原理,基于拉盖尔函数的非线性模型预测控制基本步骤如下:
(1)使用拉盖尔函数描述控制输入增量Δu,从当前k时刻出发的未来i时刻系统的控制输入增量由拉盖尔函数表示为:
Δu(k+i)=L(i)
其中:
将由拉盖尔函数表示的控制输入增量带入含有积分器的增广状态空间模型,根据当前k采样时刻的状态和输出预测未来k+i时刻的系统状态和系统输出,得到含有拉盖尔函数的状态空间模型为:
(2)使用拉盖尔函数系数向量来计算参考信号和输出信号之间的误差,令x
其中:r(k)为预先设定的参考信号,即需要跟踪的轨迹信号;
船舶的控制力和力矩受到推进器的饱和非线性约束,从当前时刻k出发的未来i时刻船舶控制信号u(k+i)和控制输入增量信号Δu(k+i)的约束可由拉盖尔系数向量表示为:
Δu
(3)步骤(2)基于拉盖尔函数的NMPC优化问题是可以通过活动集或内点方法解决的二次规划问题,求解出最优拉盖尔系数γ*(k),那么,当前时刻最佳控制增量可以通过以下公式确定:
Δu
(4)将控制输入增量Δu
(5)将控制力
(6)重复进行UKF状态估计与滤波以及拉盖尔NMPC控制过程,直至结束。
所述的UKF滤波器可以实现对未测量信号和位置干扰的估计,同时滤除测量信号中的高频成分和测量噪声,UKF状态估计与滤波模型为:
式中
考虑动力定位船舶由一阶波浪力引起的高频运动,将传感器测量船位和航向看成是低频运动和高频振荡运动之和,从而将状态估计滤波模型及测量模型表达以下状态空间形式:
其中:
按以下步骤进行UKF状态估计和滤波:
(1)初始化
(2)将以上模型表达为状态空间表达式,并在每个时刻对其进行离散化,得到其离散化状态空间模型:
(3)计算k时刻的sigma点:
(4)基于步骤(2)中该时刻滤波模型,采用无迹变换的方法进行状态预测:
X
Y
(5)获取该时刻测量船位和艏向信号y
(6)计算UKF增益矩阵K
K
P(k)=P
(7)将状态估计值
以下对本发明的实施例进行说明,应当理解,此处所描述的实施例仅用于说明和解释本发明,并不用于限定本发明。
为验证发明的基于拉盖尔函数的船舶动力定位非线性模型预测控制方法的有效性,以CSⅡ船舶为对象,基于图1所示原理建立Matlab模型对船舶定点控位和轨迹跟踪两种工况进行仿真。CSⅡ为某海洋供应船的1:70比例船模,船模最大最小输入约束分别为τ
工况1,船舶的初始位置位于η
工况2,动力定位船舶需要跟踪预定义的平滑轨迹,参考轨迹设定为:
在两种仿真工况下,取采样时间T
图3为两种工况下船舶运动轨迹在北-东坐标系中的变化曲线。
图4为拉盖尔函数非线性模型预测控制器作用下的船位输出,由图可见基于拉盖尔函数的非线性模型预测控制器能很好的控制船舶到达及保持在期望船位上,也能控制船舶很好的跟踪预先设定的船舶运动轨迹。
图5为两种工况下拉盖尔非线性模型预测控制器算法求解得出的船舶的控制力,由图可见,算法能很好的将控制力限制在约束范围内。
图6为两种工况下UKF状态估计滤波器对系统时变干扰估计值与真实值的对比曲线。
图7为两种工况下UKF状态估计和滤波效果仿真曲线,由图可见,UKF能很好地滤除测量信号中的高频运动分量和噪声,并能准确的估计船舶的状态。
仿真结果表明,基于拉盖尔函数的非线性模型预测控制器能很好的控制船舶到达期望的位置或跟踪预先设定的参考轨迹,验证了控制算法的有效性。