舰船科学技术  2019, Vol. 41 Issue (1): 59-65   PDF    
潜艇深度PD-模糊控制仿真研究
刘徐明, 胡大斌, 肖剑波, 胡锦晖     
海军工程大学 动力工程学院,湖北 武汉 430033
摘要: 针对单一控制方法对潜艇深度控制效果不佳的问题,开展了PD控制与模糊控制有机结合的潜艇深度复合控制方法研究。以潜艇垂直面运动为例,设计了潜艇深度PD-模糊控制器以及纵倾模糊控制器。利用Matlab/Simulink的Aerospace工具箱建立了潜艇三自由度仿真模型,并分别开展了PID控制器和复合控制器在不同工况下的仿真试验。仿真结果表明,与常规PID控制器相比,该复合控制器具有响应速度快、抗干扰能力强、鲁棒性好等特点。
关键词: PID控制     模糊控制     三自由度    
Simulation study on submarine depth PD-fuzzy control
LIU Xu-ming, HU Da-bin, XIAO Jian-bo, HU Jin-hui     
Power Engineering College, Naval University of Engineering, Wuhan 430033, China
Abstract: Aiming at the problem that the single control method is ineffective to control depth of submarine, a compound control method combining PD control with fuzzy control was studied for keeping submarine depth. Based on vertical motion of submarine, PD-fuzzy controller for depth and fuzzy controller for pitch were designed. The three-degree-of-freedom simulation model of the submarine was established by using the Aerospace toolbox of Matlab/Simulink. The PID controller and the compound controller were used for simulation test under different working conditions. The simulation results show that, compared with the conventional PID controller, the compound controller has the characteristics of fast response, strong anti-interference ability and good robustness.
Key words: PID control     fuzzy control     three-degree-of-freedom    
0 引 言

潜艇的机动控制发展至今已有较多的控制方法,但目前大多数潜艇仍采用PID控制[1]。传统的PID控制是依赖潜艇的运动模型,其模型越精确,控制效果越好[2],而潜艇运动属于多变量系统,具有严重的非线性、大惯性且易受环境中风浪流的影响[3],难以用一个精确的数学模型来描述。单一的PID控制难以满足潜艇对机动性能的要求。模糊控制是建立在人工经验基础之上,而不需要控制对象的精确数学模型[4]。但单一的模糊控制器也存在一些固有的缺陷[5],如输入变量论域不易确定、控制规则数随输入变量的增加成几何倍数增长以及可能产生稳态误差和稳态颤振等现象[6]。本文根据潜艇垂直面运动特点,设计了一种PD-模糊复合深度控制器,利用Matlab/Simulink中的建模仿真工具箱Aerospace搭建了潜艇垂直面三自由度运动模型,并在不同工况下进行仿真试验,试验结果表明了这种复合控制方法有一定的可行性。

1 潜艇垂直面运动模型

本文采用机理建模建立潜艇动力学模型,其中艇体和舵采用整体型建模方法,即将其当作一个不可分的整体进行研究。而螺旋桨推力模型采用分离型建模方法单独进行研究。本文采用国际拖曳水池会议(ITTC)及造船与轮机工程学会(SNAME)术语公报[78]推荐的体系,基于下述潜艇垂直面运动的三自由度运动方程开展研究。

轴向运动方程:

$ \begin{split} &m(\dot u + wq - {x_G}{q^2} + {z_G}\dot q) =\\ & \frac{1}{2}\rho {L^4}{{X'}_{qq}}{q^2} + \frac{1}{2}\rho {L^3}({{X'}_{\dot u}}\dot u + {{X'}_{wq}}wq)+ \\ & \frac{1}{2}\rho {L^2}({{X'}_{uu}}{u^2} + {{X'}_{ww}}{w^2}) + \frac{1}{2}\rho {L^2}{u^2}({{X'}_{{\delta _b}{\delta _b}}}{\delta _b}^2 +\\ & {{X'}_{{\delta _s}{\delta _s}}}{\delta _s}^2) + \frac{1}{2}\rho {L^2}({a_T}{u^2} + {b_T}u{u_c} + {c_T}{u_c}^2) -\\ & (P - B)\sin \theta \text{,} \end{split} $ (1)

垂向运动方程:

$ \begin{split} & m(\dot w - uq - {z_G}{q^2} - {x_G}\dot q) =\\ & \frac{1}{2}\rho {L^4}(Z_{\dot q}'\dot q + Z_{q\left| q \right|}'q\left| q \right|) + \frac{1}{2}\rho {L^3}Z_{\dot w}'\dot w +\\ & \frac{1}{2}\rho {L^3}(Z_q'uq + {{Z'}_{\left| q \right|{\delta _s}}}u\left| q \right|{\delta _s} + Z_{w\left| q \right|}'w\left| q \right|) +\\ & \frac{1}{2}\rho {L^2}(Z_0'{u^2} + Z_w'uw + Z_{w\left| w \right|}'w\left| w \right| + Z_{\left| w \right|}'u\left| w \right| + Z_{ww}'{w^2}) +\\ & \frac{1}{2}\rho {L^2}{u^2}(Z_{{\delta _b}}'{\delta _b} + Z_{{\delta _s}}'{\delta _s}) + (P - B)\cos \theta\text{,} \end{split} $ (2)

俯仰运动方程:

$ \begin{split} & {I_{yy}}\dot q + m\left[ {{z_G}\left( {\dot u + wq} \right) - {x_G}\left( {\dot w - uq} \right)} \right] =\\ & \frac{1}{2}\rho {L^5}(M_{\dot q}'\dot q + M_{q\left| q \right|}'q\left| q \right|) + \frac{1}{2}\rho {L^4}(M_{\dot w}'\dot w + M_q'uq +\\ & M_{\left| q \right|{\delta _s}}'u\left| q \right|{\delta _s} + M_{\left| w \right|q}'\left| w \right|q) + \frac{1}{2}\rho {L^3}(M_0'{u^2} + M_w'uw +\\ & M_{w\left| w \right|}'w\left| w \right| + M_{\left| w \right|}'u\left| w \right| + + M_{ww}'{w^2}) + \frac{1}{2}\rho {L^3}{u^2}(M_{{\delta _b}}'{\delta _b} +\\ & M_{{\delta _s}}'{\delta _s}) - Ph\sin \theta - \Delta P\Delta x\cos \theta - \Delta P\Delta z\sin \theta \text{。} \end{split} $ (3)

辅助方程——运动关系式:

$\dot \xi = u\cos \theta + w\sin \theta\text{,} $ (4)
$\dot \zeta = - u\sin \theta + w\cos \theta \text{,}$ (5)
$\dot \theta = q\text{。}$ (6)

式中: $m$ 为潜艇质量; $L$ 为潜艇长度; $\rho $ 为海水密度; $h$ 为稳心高; $B$ 为水下全排水容积浮力; $P$ 为重力; $u$ $w$ $q$ 分别为潜艇纵向速度,垂向速度,纵倾角速度; $\xi $ $\zeta $ 分别为潜艇在定系的横坐标,纵坐标; ${I_{yy}}$ 为潜艇对动系 $y$ 轴的转动惯量; $\theta $ 为纵倾角; ${x_G}$ ${z_G}$ 为重心在动系中的坐标; $\Delta P$ 为剩余静载力; $\Delta x$ $\Delta z$ 为剩余静载力作用点在动系的坐标; ${\delta _b}$ ${\delta _s}$ 分别为首,尾舵角;其余带下角标量为无因次量水动力系数。

2 潜艇深度与纵倾控制系统

深度与纵倾控制系统主要由潜艇、舵机伺服系统、传感器和控制器组成,其仿真结构框图如图1所示。其中: ${\zeta _0}$ ${\theta _0}$ 分别为目标深度和目标纵倾; $\zeta $ $\theta $ 分别为实际深度和实际纵倾; ${e_i}$ $e{c_i}$ i=1,2)分别为偏差和偏差变化率; ${u_1}$ ${u_2}$ 分别为指令首舵角和指令尾舵角; $W$ 为环境干扰; ${e_t}$ 为复合控制器切换阈值。控制系统在Simulink中的模型如图2所示。本文采用首尾舵分离控制方式,即首舵控制深度,尾舵控制纵倾,其中深度控制器采用PD-模糊控制器,由于扶正力矩的存在,纵倾控制只采用模糊控制器即可满足机动性要求。在深度控制中,PID控制器只有在深度偏差大于PD-模糊控制器切换阈值时输出控制量,故只需考虑响应的快速性,因而去掉PID控制器的积分环节。深度PD控制器规律为:

图 1 深度与纵倾控制系统框图 Fig. 1 Diagram of depth and pitch control system

图 2 深度与纵倾控制系统仿真模型 Fig. 2 The simulation model of depth and pitch control system for submarine
$ {\delta _b} = {k_p}(\zeta - {\zeta _0}) + {k_d}\frac{{d(\zeta - {\zeta _0})}}{{d{\text{t}}}}\text{。}$ (7)

式中: ${k_p}$ ${k_d}$ 分别为比例系数和微分系数。

舵机伺服系统是一个包括纯延迟、死区、滞环、饱和等非线性特性的电动液压系统,通常可简化为一阶惯性环节,仿真时主要考虑最大舵角限制和最大转速限制,舵机伺服系统仿真模型图如图3所示。其数学形式如下:

图 3 舵机伺服系统仿真模型 Fig. 3 The simulation model of steering gear servo system
$T\dot \delta = K({\delta _c} - \delta )\text{。}$ (8)

式中: $\delta $ 为实际舵角; ${\delta _c}$ 为命令舵角; $T$ 为舵机时间常数; $K$ 为舵机增益;

3 模糊控制器的设计

模糊控制器的基本结构主要由模糊化、知识库、模糊推理和清晰化等4个部分组成。本文采用首尾舵分离控制方式,故需设计2个模糊控制器、1个控制器操纵首舵来控制深度,1个控制器操纵尾舵来调整纵倾。本文选用二维的模糊控制器,即偏差及偏差变化率作为输入量,指令舵角作为输出量。其中深度模糊控制器输入变量有深度偏差 ${e_1}$ 和深度偏差率 $e{c_1}$ ,输出控制量为指令首舵角 ${u_1}$ ;纵倾模糊控制器输入变量为纵倾角偏差 ${e_2}$ 和纵倾角偏差率 $e{c_2}$ ,输出控制量为指令尾舵角 ${u_2}$ 。由于2个模糊控制器结构相同,故以深度模糊控制器为例进行设计说明。

3.1 模糊化

首先需要将输入量和输出量进行模糊化处理,本文将深度偏差 ${e_1}$ 、深度偏差率 $e{c_1}$ 和指令首舵角 ${u_1}$ 均划分为7个语言变量,分别用负大(NB)、负中(NM)、负小(NS)、零(ZO)、正小(PS)、正中(PM)和正大(PB)表示。根据潜艇操纵经验,将切换阈值 ${e_t}$ 设为7 m,故 ${e_1}$ 论域可设为[–8 m,8 m], $e{c_1}$ 论域为[–2 m/s,2 m/s], ${u_1}$ 论域为[–15°,15°]。输入量与输出量的隶属函数如图4图6所示。隶属函数的形状对控制效果影响较大,函数形状越宽,误差控制的灵敏度越低,控制特性越平缓,故本文采用较宽的隶属函数。其中负大(NB)的隶属函数采用Z形隶属函数,正大(PB)采用S形隶属函数,其余均采用高斯型隶属函数。

图 4 深度偏差e1的隶属函数 Fig. 4 Membership function of depth deviation e1

图 5 深度偏差变化率ec1的隶属函数 Fig. 5 Membership function of depth deviation ratio ec1

图 6 指令首舵角u1的隶属函数 Fig. 6 Membership function of ordered bow-rudder u1
3.2 知识库

知识库通常由数据库和规则库组成,数据库包含量化因子和隶属函数等参数。本文采用的模糊控制器的量化因子为1,隶属函数上文已说明。模糊控制系统是用一系列基于专家知识的语言来描述表达的,专家知识一般由形如“IF-THEN”条件语句构成,称为规则库。具体的控制规则,可根据采用首舵控制深度的典型阶跃响应来推导。

图7描述了潜艇垂直面运动深度控制的典型阶跃响应,在a点之前,潜艇的深度由PD控制器控制;在a点附近,属于大偏差但有大趋势接近目标深度,故只需小舵角使深度较快地到达目标深度而不产生大的超调量,其控制规则为:if (e1 is PB)and (ec1 is NB) then (u1 is NS);在b点附近,属于较大偏差率,需要较大的反舵防止产生较大的超调,可采用控制规则:if (e1 is ZO)and (ec1 is NM) then (u1 is PM);在c点附近,属于较大偏差,故可用大舵角使其快速回到目标深度,其控制规则可以为:if (e1 is NM)and (ec1 is ZO) then (u1 is PB)。在d点和f点附近与b点相似,e点与c点相似。

图 7 潜艇深度控制过程的典型阶跃响应 Fig. 7 The classic step response of submarine depth control process

同理可根据这样的思路,推导在其他位置时的控制规则。模糊控制规则的性能要求[9]:1)完备性,即对任意的输入应确保至少有一个可用的规则;2)在满足完备性下,尽可能减少控制规则;3)模糊控制规则之间不能有互相矛盾的地方。根据以上性能要求,可得到深度模糊控制规则如表1所示。

表 1 深度控制规则表 Tab.1 Rule of depth control
3.3 模糊推理与清晰化

模糊推理是模糊控制器的核心组成部分,具有模拟人的基于模糊概念的推理能力,其推理是基于模糊逻辑中的蕴含关系及推理规则来进行的。模糊推理是一种近似推理,常用的推理方法有扎德(Zadeh)法、马丹尼(Mandani)法和鲍德温(Baldwin)法等,本文采用马丹尼极小运算。将模糊推理输出的模糊量转换为精确量的过程称为清晰化,常用的方法有最大隶属度法、中位数法和加权平均法(重心法),本文采用加权平均法。利用Matlab模糊工具箱可以看到各语言变量的模糊推理特性曲面,如图8所示。可以看出e1ec1u1的模糊推理输出特性曲面过渡平滑,没有突变,由此可知,深度模糊控制规则选择合理,可以进行仿真验证。

图 8 深度模糊控制器的模糊推理输出特性曲面 Fig. 8 Fuzzy reasoning surface of depth fuzzy controller
4 仿真与分析

用上述设计的PD-模糊控制器进行潜艇深度控制仿真试验,仿真潜艇初始状态为定深等速直航,航速为10 kn,分别采用PID控制和PD-模糊控制对潜艇进行深度控制试验(PID控制参数在各种工况下已调整至最优)。

4.1 试验结果

1)在无干扰情况下,初始深度为80 m,分别给定目标深度120 m,40 m使其下潜和上浮,仿真结果如图9图10所示。

图 9 下潜时各参数响应曲线 Fig. 9 The response curve of each parameter when diving

图 10 上浮时各参数响应曲线 Fig. 10 The response curve of each parameter when floating

2)在有干扰情况下,初始深度为60 m,使其下潜至90 m,仿真结果如图11所示。图12为深度变化曲线局部放大图,图13为首舵变化曲线局部放大图。

图 11 有干扰下各参数响应曲线 Fig. 11 The response curve of each parameter under interference

图 12 深度响应曲线局部放大图 Fig. 12 Partial magnification of depth response curve

图 13 首舵响应曲线放大图 Fig. 13 Partial magnification of bow-rudder response curve
4.2 分析

1)从图9(a)可以看出,PD-模糊控制相比于传统PID控制,具有响应速度更快,稳定时间更短,超调量更小的优点。这是由于在到达阈值之前不用考虑复合控制器的PD参数过大而引起超调,故其上升时间较短;而在到达阈值之后,复合控制器的模糊控制具有控制平缓的特点,故其稳定时间更短,超调更小。

2)通过图9图10对比可知,在不同工况下,PID控制器需要调整参数以使控制效果达到最优,而复合控制器不需要更改参数就可以满足控制要求,说明复合控制器具有较好的适应性和鲁棒性。

3)从图11图13可以看出,在有干扰条件下,PID控制的响应曲线震荡明显,尤其在打舵方面,这对潜艇的隐身性不利,同时也增加了舵机的磨损,而复合控制器的响应曲线变化平稳,受扰动影响较小。这说明复合控制器具有更好的抗干扰能力。

4)由于模糊控制器本质上属于PD控制,会产生静态偏差,但本文所设定的阈值很小,故其静态偏差可以忽略。若还需减小静态误差,则可以引入模糊积分环节。

5)在应用PD-模糊控制方法中,切换阈值 ${e_t}$ 的大小对控制效果有很重要的影响,如果选取过大,由于PD控制器作用时间短,无法发挥PD控制响应速度快的优点;选取过小,由于潜艇的惯性较大,模糊控制无法及时抑制潜艇运动而产生超调。因此,应该根据实际情况选择合适的切换阈值以兼顾系统的响应速度和控制超调。

5 结 语

仿真试验证明本文设计的PD-模糊控制器能够简单实现潜艇深度控制的切换,具备PID控制和模糊控制的优点,有效解决了传统PID控制在有高频干扰下频繁操舵和模糊控制的论域难以确定的问题,且具有良好的快速性、稳定性和鲁棒性。

参考文献
[1]
吴浩溶, 胡大斌, 林雄伟, 等. H控制在潜艇深度控制的应用 [J]. 舰船科学技术, 2014, 36(9): 98-101.
WU Hao-rong, HU Da-bin, LIN Xiong-wei, et al. Application of H control in depth regulation of submarine [J]. Ship Science and Technology, 2014, 36(9): 98-101. DOI:10.3404/j.issn.1672-7649.2014.09.020
[2]
胡坤, 吴超. 潜艇深度模糊控制及仿真研究[J]. 系统仿真学报, 2004, 16(10): 2364-2366.
HU Kun, WU Chao. Fuzzy controller and simulation of submarine depth[J]. Journal of System Simulation, 2004, 16(10): 2364-2366. DOI:10.3969/j.issn.1004-731X.2004.10.066
[3]
林雄伟, 胡大斌, 戴余良, 等. 潜艇操纵控制方法[J]. 舰船科学技术, 2013, 35(5): 7-10.
LIN Xiong-wei, HU Da-bin, DAI Yu-liang, et al. Survey for maneuver control of submarine[J]. Ship Science and Technology, 2013, 35(5): 7-10. DOI:10.3404/j.issn.1672-7649.2013.05.002
[4]
曾光奇, 胡均安, 等. 模糊控制理论与工程应用[M]. 武汉: 华中科技大学出版社, 2006: 56–81.
[5]
姚刚, 汤天浩. 一种基于PD与模糊复合控制的船舶航向变结构控制器[J]. 上海海运学院学报, 2003, 24(3): 201-209.
YAO Gang, TANG Tian-hao. A variable structure controller for keeping ship course based on combination of PD and fuzzy controller[J]. Journal of Shanghai Maritime University, 2003, 24(3): 201-209.
[6]
MICHAEL G P, AILAN C C, CAO Y S, et al. An initial assessment of fuzzy logic vessel path control[C]//IEEE, 2004.
[7]
Nomenclature for treating the motion of a submerged body through a fluid[R]. SNAME Technical and Research Bulletin 1–5, 1952.
[8]
中国造船编辑部译. 船舶水动力学辞典[M]. 上海:中国造船编辑部, 1981.
[9]
颜俐, 许建, 马运义. 船舶运动的模糊控制研究[J]. 舰船科学技术, 2013, 35(5): 1-6.
YAN Li, XU Jian, MA Yun-yi. Research on ship motion based on fuzzy control[J]. Ship Science and Technology, 2013, 35(5): 1-6. DOI:10.3404/j.issn.1672-7649.2013.05.001
[10]
张德丰. MATLAB/Simulink建模与仿真实例精讲[M]. 北京: 机械工业出版社, 2010: 304–347.