Course-keeping of inward-and-outward low speed ship
-
摘要: 为了在船舶进出港时, 船舶处于浅水域并以低速航行, 在风、浪等强扰动作用下, 增强航向控制性能, 减小能源损耗, 选择三阶Nomoto模型, 将航速和水深变化反映到模型参数的变化上, 基于闭环增益成形算法设计出一种具有适应性的鲁棒PID控制器, 建立基于风、浪干扰的非线性船舶运动数学模型, 并用S函数来实现。用PID控制器对非线性船舶运动数学模型进行控制, 在Simulink环境中对各种水深、船速及海况进行航向控制仿真。从仿真曲线可看出其航向跟踪效果良好, 静差为0, 且施舵合理, 所设计的控制器对非线性船舶运动数学模型具有良好的控制性能。Abstract: In order to improve ship control performance, reduce ship energy consumption when ship navigates at low speed in inward-and-outward shallow water under strong wind and wave disturbance, third-order Nomoto model was chosen, ship speed and water depth were reflected into the changes of its parameters, a robust PID controller with adaptability based on closed-loop gain shaping algorithm was designed.The nonlinear mathematical model of ship motion with wind and wave disturbance was built and realized through programming its S-function.The designed PID controller was used to control the nonlinear mathematical model of ship motion in the conditions of various water depths, ship speeds and sea states.The simulation result shows that the course-tracking effect is satisfactory, the steady state error is zero, the rudder angle is reasonable, and the designed controller has good performance for the nonlinear mathematical model.
-
0. 引言
船舶在浅水域中运动引起的流动景象比之于深水域有着显著的不同, 深水时, 水流除沿着船体侧面进行, 还有相当数量是在船底之下经过的[1]。水深与吃水之比如果小于3, 浅水效应就显现出来。这时船底下部通道内的流动受到限制, 其直接后果一方面是引起作用在船体、浆及舵上的流体动力的变化, 另一方面导致船体下沉量的增加及吃水差的变化, 船体的下沉和吃水差的变化反过来又引起作用在船体上流体动力的改变, 这就使得在浅水域中的航向保持方法和深水域有着明显的不同。船舶在港内靠离泊操纵或者锚泊操纵时, 一般要求前进速度非常低, 这与常速航行时有着很大的不同, 要求控制器具有良好的适应性能和鲁棒性能。
经典的PID控制对恶劣海况以及低速浅水下参数的变化适应能力差。H∞鲁棒控制理论经过二十多年的发展[2], 已经取得了大量引人瞩目的研究成果, 但其需要很深的数学基础等缺点是制约其向实际工程应用方向发展的主要因素。闭环增益成形算法是在H∞鲁棒控制理论框架下提出的[3-9], 避免了权函数的选择而对系统进行闭环增益成形, 其核心是确定闭环系统传递函数的最后希望的形状, 用闭环系统具有工程意义的最大奇异值、带宽频率、关门斜率及闭环频谱峰值4大参数直接构造出鲁棒控制器, 该算法的特例为PID控制器[7]。
国内外在进出港航向保持方面都做了很多的研究, 但大部分是关于模型方面的计算[1, 10, 11], 并没有在低速浅水航向保持方面进行有效的研究工作。船舶进出港时, 水深相对变浅, 船舶仅能以较小的富裕水深和较低的速度航行, 给航行安全和船舶操纵带来了一系列的困难, 严重影响了船舶的操纵性能, 其航向保持更不能采用正常的大洋航行时的控制器, 需要进行单独的研究。故本文采取闭环增益成形控制算法, 确定适应式鲁棒PID控制器的3个参数, 并用Matlab中的Simulink工具箱进行仿真, 得到仿真结果。
1. PID控制器参数整定方法
经典的PID控制器3个参数的整定往往需进行过程的某种动态试验(例如飞升特性试验)方能在所获数据(例如对象增益、时间常数、纯迟延)基础上进行, 而对于像船舶这样的被控过程实时进行所述的试验是不现实的, 因而驾驶员通常是按经验确定这些参数, 很难达到满意程度, 并且运行条件变动之后, 还须重新整定参数才能达到较好效果, 故大多数情况下是根本不进行参数整定的。
本文根据系统的闭环频谱要求, 给出一种基于闭环增益成形的PID参数整定方法, 其求解过程简单, 物理意义明显, 所设计的PID控制器具有良好的鲁棒性[6,7]。如果二阶严格真被控对象
G=b1s+b0a2s2+a1s+a0
的系数b1为0, 则称G为二阶深严格真对象。式中b1、b0、a2、a1、a0为被控对象G的系数。一个实际的工程对象可以通过模型降阶或Bode图近似等方法化成二阶深严格真对象。根据一阶闭环增益成形算法, 可计算出控制器Kc为
Κc=a2s2+a1s+a0b0Τ01s=a1b0Τ01+a0b0Τ01s+a2sb0Τ01 (1)
式中: T01为根据被控对象的带宽频率而设计的时间常数。可以看出式(1)是一个标准的PID控制器, 其参数kp、ki、kd为
kp=a1b0Τ01ki=a0b0Τ01kd=a2b0Τ01
这样PID参数即可通过式(1)从理论推导得出。
2. 系统设计与实现
2.1 模型设计
本文采用Nomoto模型, 主要是因为根据其参数容易换算出与水深和航速的关系, 但由于二阶的模型在转化为状态空间模型时不便加上非线性力以及风、浪干扰, 于是采用野本降阶以前的三阶模型
GΨδ(s)=Κ0(Τ3s+1)s(Τ1s+1)(Τ2s+1) (2)
式中: K0为船舶模型增益系数; T1、T2、T3为船舶模型时间常数。
由于此三阶模型为传递函数形式, 为了加上非线性力和风、浪干扰, 必须把传递函数形式转化为三自由度的状态空间数学模型式[2]。
利用Matlab中的Symbolic工具箱, 可以把三阶的Nomoto模型转化为三自由度的状态空间数学模型, 转化后的数学模型参数矩阵A、B、C为
A=[-(Τ1+Τ2)/(Τ1Τ2)-1/(Τ1Τ2)0100010]B=[100]C=[0 Κ0Τ3/(Τ1Τ2) Κ0/(Τ1Τ2)]
很显然, 这与能加风、浪干扰的标准形式不同[2], 为了将其转化为标准形式, 根据Hankel范数及平衡实现定义[2], 可求得变换矩阵为
Τp=[-Τ1Τ2/(Κ0Τ3Τ3)Τ1Τ2/(Κ0Τ3)0Τ1Τ2/(Κ0Τ3)00-Τ1Τ2/Κ00Τ1Τ2/Κ0]
变换后的A、B和C分别为
A=[-1/Τ310A21A220010]B=[0Κ0Τ3/(Τ1Τ2)0]C=[0 0 1]A21=-[-Κ0Τ3(Τ1+Τ2)/(Τ1Τ2Τ1Τ2)+Κ0/(Τ1Τ2)]Τ1Τ2/(Κ0Τ3Τ3)-1/(Τ1Τ2)A22=[-Κ0Τ3(Τ1+Τ2)/(Τ1Τ2Τ1Τ2)+Κ0/(Τ1Τ2)]Τ1Τ2/(Κ0Τ3)
转化为标准形式后, 可方便地加上非线性力和风、浪的干扰, 具体公式见文献[2]。
本文以Mariner号船舶为例进行讨论, 其主要尺度见表 1[1], 无量纲参数K′、T′1、T′2、T′3随水深变化见表 2, h为水深; d为船舶吃水, 对应的船舶操纵性指数为K、T
Κ=(V/L)Κ′Τ=(L/V)Τ′Τ′=Τ′1+Τ′2-Τ′3
表 1 Mariner轮的主要尺寸Table 1. Main parameters of mariner ship船长/m 160.93 舵展弦比 1.67 船宽/m 23.17 桨直径/m 6.707 吃水/m 8.23 桨螺距比 1.038 方形系数 0.588 排水量/m3 18 541 舵叶面积/m2 30.012 航速/kn 15 表 2 K、T与水深的关系Table 2. Relationship of K、T and water depthh/d ∞ 2.50 1.93 1.50 1.21 K′ 2.386 2.848 2.449 0.957 0.234 T′1 2.749 3.244 2.678 1.072 0.231+0.153 1i T′2 0.367 0.381 0.356 0.362 0.231-0.153 1i T′3 0.729 0.788 0.585 0.477 0.277 T1+T2 3.116 3.626 3.034 1.434 0.462 T1T2 1.009 1.239 0.953 0.388 0.077 式中: V为船舶航速; L为船舶的两柱间长度。
根据表 1和表 2, 可以在Matlab下用线性插值的方法得到每个水深所对应的K、T1、T2、T3值。由Nomoto模型K、T指数计算公式知, K与航速V呈线性关系, T与V呈反线性关系, 即
{Κ=Κ0(VV0)Τ=Τ0(V0V) (3) Τ0=Τ1+Τ2-Τ3 GΨδ(s)=Κ0(V/V0)[Τ3(V0/V)s+1]s[Τ1(V0/V)s+1][Τ2(V0/V)s+1] (4)
式中: V0为额定营运航速。
根据表 2可以看出T1、T2出现了虚部, 而所求得的状态空间数学模型用到的关于T1、T2的部分都是T1+T2或者T1T2。在线性插值求取T1、T2、T3时不用直接去求T1、T2, 可以根据表中数据先求取在各个水深时的T1+T2和T1T2, 然后再用线性插值方法求取其值, 这样可以避免出现虚部。
本文采用S-function方法建立Simulink模型, 可以把整个船舶模型当作一个方框来看待, 同时在这个方框中还可以加上非线性力及风、浪干扰。
2.2 控制器设计
设计要求用鲁棒PID控制器, 由于模型的各个参数和船速以及水深有关, 是可随时变化的, 所以PID控制器的参数可以用基于闭环增益成形的参数整定方法, 先把所用的三阶模型转化为二阶深严格对象才能进行。野本把三阶的模型简化为二阶的模型, 即Nomoto模型, 此模型符合二阶深严格对象的各个条件; 同时, 在低频范围, 其频谱与高阶模型的频谱非常相近, 于是可以根据式(1)求解控制器的各个参数。由于
T0=T1+T2-T3
增益K0与三阶模型相同, 所以式(1)中的a0为0, a1为1, a2为T1+T2-T3, b0为K0, T01取为40 s。因所设计的控制器能够随水深和船速变化而改变参数, 所以具有一定的适应性; 又因其参数整定依赖于鲁棒控制理论, 所以控制器具有一定的鲁棒性, 是一种具有适应性的鲁棒PID控制器。
2.3 系统总体设计及仿真
用Matlab6.5中的Simulink实现的仿真框图见图 1。3个按钮分别给出输入水深、船速、风力、风向的图形界面, 船舶模型S-funship为包括风浪干扰的非线性船舶模型。
图 2(a)给出了控制器在水深为15 m, 船速为半速, 绝对风向角为150°, 风力为4级的仿真曲线; 图 2(b)给出了控制器在水深为15 m, 船速为半速, 绝对风向角为230°, 风力为4级的仿真曲线。从曲线可以看出当只有绝对风向角改变时, 航向变化和舵角变化基本一样。
图 3(a)给出了控制器在水深为15 m, 船速为微速, 绝对风向角为150°, 风力为4级的仿真曲线; 图 3(b)给出了控制器在水深为15 m, 船速为微速, 绝对风向角为230°, 风力为4级的仿真曲线。分别对照这两组曲线可以得出船速降低后, 虽然调节时间变长, 但是控制效果都较好。
进一步的仿真可知, 当风浪加大而船速降低时, 浅水中的船舶的航向保持效果不理想, 这与实际情况相符合。
在本文中需要输入水深、船速以及风力等参数才能进行仿真, 为了输入的方便, 利用Matlab设计3个对话窗口来输入所需要的参数。图 4、5给出了用Matlab实现的船速和风参数的输入窗口界面。
3. 结语
本文提出一种具有鲁棒性的适应式PID低速浅水域船舶航向保持方案, 采用三自由度的状态空间船舶运动数学模型、鲁棒适应式PID控制器, PID参数与船舶模型的K、T指数及航速有关; 考虑水深、航速、风、浪、非线性力等影响, 用Matlab编程实现船舶模型的K、T指数随水深、航速变化关系, 并用S-function编程实现三阶船舶模型, 并使之加上非线性力以及风、浪干扰, 最终使得设计的PID控制器具有适应性; PID参数的整定采用了闭环增益成形算法, 使得所设计的PID控制器同时具有鲁棒性。仿真结果表明控制器在不同的水深、船速和海况情况下, 都有较好的控制效果, 静差为0, 在水深较浅、速度较低与深水域情况下的控制效果差别不大, 控制器的鲁棒性能良好。
-
表 1 Mariner轮的主要尺寸
Table 1. Main parameters of mariner ship
船长/m 160.93 舵展弦比 1.67 船宽/m 23.17 桨直径/m 6.707 吃水/m 8.23 桨螺距比 1.038 方形系数 0.588 排水量/m3 18 541 舵叶面积/m2 30.012 航速/kn 15 表 2 K、T与水深的关系
Table 2. Relationship of K、T and water depth
h/d ∞ 2.50 1.93 1.50 1.21 K′ 2.386 2.848 2.449 0.957 0.234 T′1 2.749 3.244 2.678 1.072 0.231+0.153 1i T′2 0.367 0.381 0.356 0.362 0.231-0.153 1i T′3 0.729 0.788 0.585 0.477 0.277 T1+T2 3.116 3.626 3.034 1.434 0.462 T1T2 1.009 1.239 0.953 0.388 0.077 -
[1] 贾欣乐, 杨盐生. 船舶运动数学模型[M]. 大连: 大连海事大学出版社, 1999. [2] 贾欣乐, 张显库. 船舶运动智能控制与H∞鲁棒控制[M]. 大连: 大连海事大学出版社, 2002. [3] Zhang Xian-ku, Jia Xin-le. Simplification of H∞ mixed sensitivity algorithmandits application[J]. Automatic Control and Computer Sciences, 2002, 36(3): 28—33. [4] 张显库, 贾欣乐. 闭环增益成形算法在船舶自动舵中的应用[J]. 中国航海, 1999, 41(2): 89—93. https://www.cnki.com.cn/Article/CJFDTOTAL-ZGHH199902019.htmZhang Xian-ku, Jia Xin-le. Application of closed-loop gain shaping algorithmon autopilot for ships[J]. Navigation of China, 1999, 41(2): 89—93. (in Chinese) https://www.cnki.com.cn/Article/CJFDTOTAL-ZGHH199902019.htm [5] 张显库, 贾欣乐. 用镜像映射方法求非稳定过程的鲁棒控制器[J]. 系统工程与电子技术, 2000, 22(4): 10—12. https://www.cnki.com.cn/Article/CJFDTOTAL-XTYD200004003.htmZhang Xian-ku, Jia Xin-le. Solving robust controller of unstable process using mirror-injection method[J]. Systems Engineering and Electronics, 2000, 22(4): 10—12. (in Chinese) https://www.cnki.com.cn/Article/CJFDTOTAL-XTYD200004003.htm [6] 张显库, 贾欣乐. 基于闭环增益成形的鲁棒PID算法及在液位控制中的应用[J]. 中国造船, 2000, 41(3): 35—39. https://www.cnki.com.cn/Article/CJFDTOTAL-ZGZC200003005.htmZhang Xian-ku, Jia Xin-le. Robust PID algorithm based on closed-loop gain shaping and its application on level control[J]. Shipbuilding of China, 2000, 41(3): 35—39. (in Chinese) https://www.cnki.com.cn/Article/CJFDTOTAL-ZGZC200003005.htm [7] 张显库, 贾欣乐. 求PID参数新方法[J]. 系统工程与电子技术, 2000, 22(8): 4—5. https://www.cnki.com.cn/Article/CJFDTOTAL-XTYD200008001.htmZhang Xian-ku, Jia Xin-le. A new method for solving PID Parameters[J]. Systems Engineering and Electronics, 2000, 22(8): 4—5. (in Chinese) https://www.cnki.com.cn/Article/CJFDTOTAL-XTYD200008001.htm [8] 张显库, 贾欣乐. 用闭环增益成形算法的精馏塔鲁棒控制[J]. 系统工程与电子技术, 2001, 23(5): 15—18. https://www.cnki.com.cn/Article/CJFDTOTAL-XTYD200105005.htmZhang Xian-ku, Jia Xin-le. Robust control of a high purity distillation column using closed-loop gain shaping algorithm[J]. Systems Engineering and Electronics, 2001, 23(5): 15—18. (in Chinese) https://www.cnki.com.cn/Article/CJFDTOTAL-XTYD200105005.htm [9] 张显库, 张丽坤, 贾欣乐. 非方阵被控对象闭环增益成形算法及其应用[J]. 大连海事大学学报, 2001, 27(2): 63—67. https://www.cnki.com.cn/Article/CJFDTOTAL-DLHS200102014.htmZhang Xian-ku, Zhang Li-kun, Jia Xin-le. Closed-loop gain shaping algorithm with unsquare matrix plant and its application[J]. Journal of Dalian Maritime University, 2001, 27(2): 63—67. (in Chinese) https://www.cnki.com.cn/Article/CJFDTOTAL-DLHS200102014.htm [10] 赵月林, 古文贤. 浅水低速状态下操纵运动数学模型研究[J]. 大连海运学院学报, 1993, 18(3): 242—246. https://www.cnki.com.cn/Article/CJFDTOTAL-DLHS199203003.htmZhao Yue-lin, Gu Wen-xian. Research on mathematic ship motion model under shoal water and low speed[J]. Journal of Dalian Maritime University, 1993, 18(3): 242—246. (in Chi-nese). https://www.cnki.com.cn/Article/CJFDTOTAL-DLHS199203003.htm [11] 杨盐生. 船舶运动控制研究[J]. 交通运输工程学报, 2003, 3(2): 34—39. http://transport.chd.edu.cn/article/id/200302008Yang Yan-sheng. Review on ship motion control[J]. Journal of Traffic and Transportation Engineering, 2003, 3(2): 34—39. (in Chinese) http://transport.chd.edu.cn/article/id/200302008 -