动力定位系统由导航系统、控制系统、推进系统及动力系统组成,其运行模式包括手动模式、自动定位模式、自动区域定位模式、目标跟踪模式等[1]。动力定位模拟器是模拟动力定位船舶在海上作业时动力定位系统的操作和运行,主要用于人员培训和适任评估[2-3]。研究如何将诸多仿真单元高效、系统地整合为一个有机整体是研究动力定位模拟器的前提,这就需要研究运行效率高、扩展性强的动力定位模拟器系统架构。文献[4]开发的船舶操纵模拟器是虚拟现实技术在航海领域应用的一个成功案例。但操纵模拟器系统架构中的仿真节点负担过重[5],如海图机同时负担海图软件运行、数学模型解算、网络数据收发和转发等任务。为了能够成功地研制出船舶动力定位模拟器,本文分析动力定位系统各个模块的功能,在原有航海模拟器系统架构的基础上进行改进,提出适用于多单元协同仿真的船舶动力定位模拟器系统架构。
动力定位系统经历了经典控制理论、现代控制理论和智能控制技术3个阶段。目前大多数动力定位系统产品以第2代现代控制理论技术为主,由Balchen等首先提出[6]。随后Saelid和Fung分别采用频率自适应算法和自校正卡尔曼滤波器算法进行了改进和扩展[7-8]。在动力定位系统人机交互界面仿真方面,徐荣华等采用VC开发了半物理半仿真动力定位系统平台[9],吴楠等使用VB和Matlab混合编程实现了界面的仿真[10],施吉伟使用VC和Matlab混合编程实现了界面的仿真[11],刘学军使用WPF技术实现了界面的仿真[12]。
针对船舶在不同海况条件下受到非零均值环境扰动的自动定位问题,在消化吸收现阶段的动力定位系统的相关理论研究成果,本文建立带有积分器的线性二次型动力定位控制器和推力分配算法,采用Direct2D图形技术对挪威康斯伯格海事公司的K-Pos动力定位系统的人机交互界面进行仿真,并在所设计的架构下实现了船舶在不同海况条件下的自动定位功能。
1 船舶动力定位模拟器系统架构 1.1 设计思想挪威船级社对动力定位模拟器的等级划分为A、B、C和S,其中A级为最高级的全功能船舶动力定位操纵模拟器[1]。动力定位船舶可用于单船作业(钻井平台定位),也可应用于海上多船协同作业(如浮式生产储存装载单元作业等),因而模拟器需要实现多船交互功能。因此,DP模拟器应是一个多船协同仿真系统,采用分布交互式仿真技术,将不同房间的船型和教练员站连接在同一个网络中,同时将不同单元的子系统进行整合,从而实现整个系统的互联和实时运行。
为解决现有航海模拟器系统架构中各个网络节点(海图机)存在负担过重的问题[5],在动力定位模拟器系统架构中进行以下改进:
1) 船舶运动数学模型解算的任务将由DP机实现,对于满足DP2的系统(含2套DP机),由主DP机实现。则DP机需要实时解算船舶运动数学模型、动力定位控制系统功能解算等。
2) 增加1台网络服务器,用于网络数据的接收和转发。系统中各个计算机将数据发送给服务器,服务器再将接收的数据转发给其他计算机。
因此,网络通信结构在软件上由树形拓扑结构变为星状拓扑结构(见图 1),通信协议采用TCP/IP协议。
动力定位模拟器由1个教练员站和多个船构成,各个本船根据其大小可布置在同一房间或不同的房间中,系统构成如图 1所示。DP模拟器的关键技术包括船舶运动数学模型、数据处理与滤波技术、动力定位控制算法、推力分配算法、三维视景显示技术、计算机网络技术、DP故障与评估模型等。
教练员站主要用于教师对学员进行教学和讲评,并控制学员站的运行,由教师机、网络服务器、本船视景监控终端、DP机操作界面监控终端、闭路电视视频监控、投影仪和打印机等组成。本船单元由DP机、视景系统、雷达、ECDIS、报警机、望远镜以及传感器(位置参考系统、风传感器、首向传感器)等模拟设备组成,其中DP机、报警单元、传感器是主要的模拟对象。而所有仿真设备的数据通信均需通过网络服务器进行转发。
2 船舶自动定位功能仿真针对船舶受到非零均值环境扰动下的自动定位问题,动力定位控制器根据该测量位置和期望位置的偏差计算所需的控制力,同时与风扰动的前馈补偿叠加,通过推力分配得到各个推进器的推力,以克服环境扰动使船舶自动定位,最后由船舶运动数学模型计算出船舶的运动状态,并在人机交互界面中显示相关信息,如图 2所示。
船舶水面动力定位只考虑纵荡、横荡和首摇3个自由度。如图 3所示,向量
$ \begin{array}{*{20}{c}} {{{\dot \eta }_p} = \nu, }\\ {\boldsymbol{M}\dot \nu + \boldsymbol{C}(\nu )\nu + \boldsymbol{D}(\nu )\nu + g(\eta ) = \tau + {\tau _E}, } \end{array} $ | (1) |
$ \eta = \boldsymbol{R}(\psi ){\eta _p}。 $ | (2) |
式中:M为含附加质量的惯性矩阵;C为科氏向心力;D为线性的阻尼矩阵;g为恢复力和力矩;τ为推进器实际产生的推力;τE为环境扰动;R(ψ)为旋转矩阵。
2.2 环境扰动模型动力定位船舶在自动定位过程中,处于低速或静止状态,易受到风浪等海洋环境扰动的影响,为此建立海洋环境扰动模型。
风对船舶的作用力和力矩的计算可按如下计算[14]:
$ {\tau _{wind}} = \frac{1}{2}{\rho _a}U_{wind\_R}^2\left[{\begin{array}{*{20}{l}} {{C_X}{A_T}}\\ {{C_Y}{A_L}}\\ {{C_N}{A_L}L} \end{array}} \right]。 $ | (3) |
式中:ρa为空气密度;CX、CY和CN为风压力(矩)系数,本文采用Isherwood经验公式计算获得;AT和AL分别为船舶水线以上正投影面积和侧投影面积;L为船长。
1阶波浪力和力矩采用文献[15]的波浪扰动力算法。2阶波浪力和力矩采用Daidola提出的波浪漂移力和力矩的计算公式[16]:
$ {\tau _{wave}} = \frac{{\rho gL\zeta }}{2}\left[{\begin{array}{*{20}{l}} {{C_{xw}}\cos ({\chi _e})}\\ {{C_{yw}}sin({\chi _e})}\\ {{C_{nw}}sin({\chi _e})} \end{array}} \right]。 $ | (4) |
式中:ζ为波高;χe为遭遇浪向角;Cxw,Cyw,Cnw均为波浪漂移力系数。
2.3 控制器的设计针对船舶受到非零均值的海洋环境扰动的影响,设计带有积分器的线性二次型最优控制的动力定位控制器。同时通过扩展卡尔曼滤波器可得到低频的运动状态。船舶处于低速或静止状态,忽略科氏向心力和回复力,引入积分项,根据式(1)可得到线性状态空间表达式[13]:
$ \dot x = \boldsymbol{A}x + \boldsymbol{B}\tau + \boldsymbol{E}\omega, $ | (5) |
$ y = \boldsymbol{C}x。 $ | (6) |
式中:
系统矩阵为:
$ \boldsymbol{A} = \left[{\begin{array}{*{20}{c}} {{0_{{\rm{3 \times 3}}}}}&{{I_{{\rm{3 \times 3}}}}}&{{0_{{\rm{3 \times 3}}}}}\\ {{0_{3{\rm{ \times 3}}}}}&{-{M^{-1}}D}&{{0_{3 \times 3}}}\\ {{I_{{\rm{3 \times 3}}}}}&{{0_{{\rm{3 \times 3}}}}}&{{0_{{\rm{3 \times 3}}}}} \end{array}} \right], $ | (7) |
控制输入矩阵和扰动输入矩阵为:
$ \boldsymbol{B} = \boldsymbol{E} = [\begin{array}{*{20}{c}} {{0_{{\rm{3 \times 3}}}}}&{{{({\boldsymbol{M}^{{\rm{-1}}}})}^{\rm{T}}}}&{{0_{{\rm{3 \times 3}}}}{]^{\rm{T}}}。} \end{array} $ | (8) |
状态输出矩阵为:
$ \boldsymbol{C} = [\begin{array}{*{20}{c}} \boldsymbol{I} &{{0_{{\rm{3 \times 3}}}}}&{{0_{3 \times 3}}], } \end{array} $ | (9) |
海洋环境风的作用可视为缓慢变化,并根据风传感器测量计算得到近似的风力(矩)
$ \tau = {\tau _{LQ}}-{\hat \tau _{{\rm{wind}}}}, $ | (10) |
LQ控制器的最优性能指标函数J为[17]:
$ \min J = \frac{1}{2}\int\limits_{\rm{0}}^\infty {[{x^{\rm{T}}}Qx + \tau _{LQ}^{\rm{T}}R{\tau _{LQ}}]} {\rm{d}}\tau 。 $ | (11) |
则用于克服低频运动的力(矩)表示为:
$ {\tau _{LQ}} =-Kx =-{R^{-1}}{B^{\rm{T}}}Px(t)。 $ | (12) |
其中P为黎卡提矩阵代数方程ATP + PA -PBR-1BTP + Q=0的解。
2.4 推力分配模型推力分配系统是动力定位系统的重要组成部分,推力分配模型将控制器发出虚拟控制力τ转化为对推进器的转向α和转速u,即[13]:
$ \tau = \boldsymbol{T}(\alpha )f, $ | (13) |
$ f = Ku。 $ | (14) |
式中:f为推进器的推力;T(α)为推进器布置矩阵;K为推力系数。
由于推进器机械特性的约束,将推力分配优化问题转化为二次规划问题的求解,优化的目标函数为[18]:
$ J = \min \sum\limits_{i = 1}^3 {{\boldsymbol{W}_i}||{T_i}||_2^2} + \sum\limits_{i = 1}^2 {{\Omega _i}||{\delta _i}||_2^2} + \sum\limits_{i = 1}^2 {{\boldsymbol{Q}_i}||{s_i}||_2^2} 。 $ | (15) |
约束条件:
$ Bu + s = \tau, $ | (16) |
$ Au{\rm{ < }}b, $ | (17) |
$ {s_{{\rm{min}}}} \le s \le s{s_{{\rm{max}}}}, $ | (18) |
$ {T^ - } \le T \le {T^{\rm{ + }}}, $ | (19) |
$ {\delta ^{\rm{-}}} \le \delta \le {\delta ^{\rm{ + }}}, $ | (20) |
式中:W为各个推进器的能耗权值矩阵;Ω为舵的变化频率权值矩阵;Q为推力分配的推力误差权值矩阵。
2.5 人机交互界面的设计人机交互界面能够直观地显示动力定位船舶的运行状态,DP操作员通过人机交互界面完成对DP系统的操作。为实现DP模拟器的环境真实感,要求仿真界面应与真实DP系统的界面一致或者接近。本文以Visual Studio 2010为开发平台,使用Direct2D图形技术,对Kongsberg公司的K-Pos动力定位系统的人机交互界面进行仿真。
Direct2D图形技术支持硬件加速,具有抗锯齿等优点,绘图性能优于传统的GDI(Graphics Device Interface,图形设备接口)。为了能够方便实现代码的移植,将Direct2D中常用的底层图形函数接口(即点、线、面、字符串的绘制接口)进行了重新封装,所需绘制的图形通过自定义的函数接口绘制。从而,可以通过更换底层的封装函数就可以实现使用其他图形技术的开发,适合平台的移植。其中“自动定位模式”的仿真界面效果如图 4所示。
在所设计的船舶动力定位模拟器系统架构下,将相关算法和人机交互界面进行集成,用于验证本文所设计的控制算法和模型,以1艘动力定位供给船为实验对象,进行船舶自动定位模式的仿真。该供给船的无因次惯性矩阵和阻尼矩阵分别为[19]:
$ \begin{array}{*{20}{c}} {M = \left[{\begin{array}{*{20}{c}} {1.1274}&{0.0000}&{0.0000}\\ {0.0000}&{1.8902}&{-0.0744}\\ {0.0000}&{-0.0744}&{0.0308} \end{array}} \right], }\\ {D = \left[{\begin{array}{*{20}{c}} {0.0358}&{0.0000}&{0.0000}\\ {0.0000}&{0.1183}&{-0.0124}\\ {0.0000}&{-0.0041}&{0.0308} \end{array}} \right]。} \end{array} $ |
在仿真实验中,船舶的起始位置是
图 5和图 6是人机交互界面软件的“Posplot”视图,每个网格间距(Grid)为4 m,中心点为期望位置,黑色曲线为船舶的运动轨迹,可以看出,船舶在不同海况条件下,带有积分器的线性二次型最优控制器能够克服船舶所受到的非零均值外界海洋环境扰动,快速回到期望位置,控制性能良好,实现了船舶的自动定位。
4 结语本文根据船舶动力定位模拟器的功能需求,设计具有星型网络拓扑结构的船舶动力定位模拟器系统架构。根据自动定位模式下的DP系统工作原理,建立海洋环境扰动下的船舶运动数学模型,设计动力定位控制器和推力分配模型,提出采用Direct2D图形技术来开发动力定位系统的人机交互界面。最后在所设计的系统架构下,以1艘动力定位供给船为仿真对象,实现了船舶在环境扰动下的自动定位。进一步的研究工作是研究动力定位系统的其他工作模式仿真,如目标跟踪、航迹控制等,实现动力定位模拟器的全部功能。
[1] | 边信黔, 付明玉, 王元慧. 船舶动力定位[M]. 北京: 科学出版社, 2011 : 331 -338. |
[2] | Nautical Institute. Dynamic positioning operator's training and certification scheme[M]. UK: Nautical Institute, 2014 . |
[3] | IMCA. Guidance on the use of simulators[M]. UK:IMCA, 2012. |
[4] |
尹勇, 金一丞. 航海模拟器与分布交互仿真技术[J]. 计算机仿真 , 2000, 17 (6) :66–68, 61.
YIN Yong, JIN Yi-cheng. Marine simulator and distributed interactive simulation technology[J]. Computer Simulation , 2000, 17 (6) :66–68, 61. |
[5] | 郝爽爽.航海模拟器数据通信的优化设计与实现[D].大连:大连海事大学, 2013. |
[6] | BALCHEN J G, JENSSEN N A, SÆLID S. Dynamic positioning using Kalman filtering and optimal control theory[C]//IFAC/IFIP Symposium on Automation in Offshore Oil Field Operation. Bergen:Pergamon Press, Inc., 1976:183-186. |
[7] | SAELID S, JENSSEN N A, BALCHEN J. Design and analysis of a dynamic positioning system based on Kalman filtering and optimal control[J]. IEEE Transactions on Automatic Control , 1983, 28 (3) :331–339. DOI:10.1109/TAC.1983.1103225 |
[8] | FUNG P, GRIMBLE M. Dynamic ship positioning using a self-tuning Kalman filter[J]. IEEE Transaction on Automatic Control , 1983, 28 (3) :339–350. DOI:10.1109/TAC.1983.1103226 |
[9] | 徐荣华.船舶动力定位系统建模与随机控制研究[D].广州:广东工业大学, 2011. |
[10] |
吴楠, 陈红卫. 船舶动力定位仿真系统设计[J]. 舰船科学技术 , 2013, 35 (5) :103–106, 110.
WU Nan, CHEN Hong-wei. Simulation design on dynamic positioning system of vessels[J]. Ship Science and Technology , 2013, 35 (5) :103–106, 110. |
[11] | 施吉伟.船舶动力定位系统控制器设计及其操控界面开发[D].大连:大连海事大学, 2014. |
[12] |
刘学军, 吴德烽, 杨国豪, 等. 面向船舶动力定位模拟器的推力分配仿真子系统开发[J]. 船舶工程 , 2014, 36 (4) :96–100.
LIU Xue-jun, WU De-feng, YANG Guo-hao, et al. Development of thruster allocation simulation system for ship dynamic positioning simulator[J]. Ship Engineering , 2014, 36 (4) :96–100. |
[13] | FOSSEN T I. Handbook of marine craft hydrodynamics and motion control[M]. London:UK: Wiley, 2011 : 199 -213. |
[14] | ISHERWOOD R M. Wind resistance of merchant ships[M]. England: Royal Institution of Naval Architects, 1972 : 327 -338. |
[15] |
张秀凤, 尹勇, 金一丞. 规则波中船舶运动六自由度数学模型[J]. 交通运输工程学报 , 2007, 7 (3) :40–43.
ZHANG Xiu-feng, YIN Yong, JIN Yi-Cheng. Ship motion mathematical model with six degrees of freedom in regular wave[J]. Journal of Traffic and Transportation Engineering , 2007, 7 (3) :40–43. |
[16] | DAIDOLA J C, GRAHAM D A, CHANDRASH L. A simulation program for vessel's maneuvering at slow speeds[C]//Proceedings of 11th Ship Technology and Research Symposium. Portland, OR:Society of Naval Architects, 1986. |
[17] |
朱熀秋, 黄振跃, 阮颖, 等. 交流主动磁轴承电主轴线性二次型最优控制[J]. 电机与控制学报 , 2012, 16 (10) :71–78, 94.
ZHU Huang-qiu, HUANG Zhen-yue, RUAN Ying, et al. Linear quadratic optimal control of electric spindle supported by AC active magnetic bearings[J]. Electric Machines and Control , 2012, 16 (10) :71–78, 94. |
[18] |
袁伟, 俞孟蕻, 朱艳. 动力定位系统舵桨组合推力分配研究[J]. 船舶力学 , 2015, 19 (4) :397–404.
YUAN Wei, YU Meng-hong, ZHU Yan. Research on thrust allocation of dynamic positioning vessels with propeller-rudder pairs[J]. Journal of Ship Mechanics , 2015, 19 (4) :397–404. |
[19] | FOSSEN T I, SAGATUN S I, SØRENSEN A J. Identification of dynamically positioned ships[J]. Control Engineering Practice , 1996, 4 (3) :369–376. DOI:10.1016/0967-0661(96)00014-7 |