冯永孝, 张显库
(大连海事大学 航海学院, 辽宁 大连 116026)
在实际的船舶营运中,更加安全和经济的航行是人们一直努力追求的目标,而船舶的航向保持对于实现这个目标具有重要意义,所以研究者针对所需求的航行保持控制算法进行了研究。文献[1]从传统控制器把误差直接作为输入出发,创新性地提出非线性反馈的观点,即将误差先经过非线性处理后再输入控制器,并应用于航向保持控制器的设计,仿真结果表明控制器的节能效果明显。文献[2]在非线性反馈的基础上提出非线性修饰的控制器设计方法,取得较好的控制效果。模糊控制器的设计则从另一个方面出发,由于该技术不需要知道被控对象的精确数学模型,而是以具有丰富工作经验的船舶驾驶员的专业知识为基础,并将他们的知识转化成模糊语言用于控制器的设计,所以模糊控制器能够极好地适应实践的需求。[3]本文使用非线性修饰和模糊控制技术分别设计控制器,并从多方面对其性能进行比较,以期找到一种更能满足现实需求的控制器设计方法。
关于船舶运动数学模型,采用二阶Nomoto模型为
(1)
(2)
从而非线性响应型船舶运动数学模型为
(3)
并且有
(4)
式(4)中:α,β及K,T都与船舶的航速相关,且与船舶和舵的水动力性能有关;δf为非线性船舶模型的反馈项,其求取方法可参考文献[4]。
首先,采用一阶闭环增益成型算法进行线性控制器的设计[5],控制器的型式为
(5)
然后选择一个非线性项对控制器的输出进行修饰。
关于修饰函数的选择,在进行多次仿真试验后,选用仿真效果较为良好的指数函数(eau-1)作为修饰函数,系统的结构见图1。
图1中:Ψr为设定航向;Ψ为输出航向;w为外界环境对船舶的干扰。
下面证明指数函数的加入对于控制系统稳态的影响。
设以阶跃信号作为输入信号,幅值为r,假设系统的误差不是很大,则根据泰勒级数的展开式有eau-1≈au,根据中值定理,图1系统输出Ψ为
(6)
所以系统的输出稳态误差为0,这表明使用指数函数对控制器的输出进行修饰不会影响系统的稳态。关于非线性修饰技术对系统的动态性能、控制输出影响,以及非线性修饰使用的限制,文献[2]已给出较为详细的证明和论述。经过对a进行反复的选择和试验验证,发现当a=0.3时控制效果较好。所以最终确定的非线性修饰的形式为(e0.3u-1)。
模糊控制器的设计采用双输入单输出(Double Input Single Output,DISO)的设计方法,即以航向误差(e)和航向误差的变化率(EC)作为输入,舵角作为输出,e的取值范围为[-30°,30°],EC的取值范围为[-0.8°/s,0.8°/s],舵角的取值范围为[-30°,30°]。对模糊控制器的输入和输出进行模糊化处理,选择输入输出变量的模糊子集为{NB,NM,NS,ZE,PS,PM,PB},输入和输出量的论域均为[-6,6],所以可得到量化因子和比例因子分别为:Ke=0.2,Kc=7.5,Ku=5.0。模糊控制器的数值计算采用系统默认的经典方法。输入和输出均采用三角形隶属度函数[6-7]见图2,在对多种模糊规则的控制效果进行比较后,最终决定采用控制效果最好的模糊规则来进行模糊控制器的设计[8]见表1。
eceNBNMNSZEPSPMPBNBNBNBNBNMNMNSZENMNBNBNMNMNSZEPSNSNBNMNMNSZEPSPMZENMNMNSZEPSPMPMPSNMNSZEPSPMPMPBPMNSZEPSPMPBPBPBPBZEPSPMPBPBPBPB
仿真试验是以实习船“育鹏”轮作为仿真对象开展的,通过查阅资料得到其满载时各项船舶参数为:两柱间长189.0 m,船宽27.8 m,吃水11.0 m,方形系数0.72,重心距中心距离-1.8 m,船速17.5 kn,舵叶面积38.0 m2,排水量30 000 t。从而可得到非线性船舶模型所需的所有参数,分别是K=0.08,T=39.09,α=18.59,β=20 732.57,其中α和β利用最小二乘法求取,具体方法参见文献[4]。为更好地对船舶进行模拟,在仿真中考虑了舵机特性,并将其等效为一个一阶惯性环节,时间常数取5 s。船舶在航行中所受风、浪的影响,在仿真中也是必须予以考虑的,将风等效为压舵角,浪采用式(7)所示的白噪声驱动的二阶振荡环节来表示。[9-10]
(7)
仿真时设定船舶航向为60°,系统仿真框图见图3,使用两种控制方法得到的航向保持控制的结果见图4和图5,可看出在这两种控制方法下,航向几乎都在160 s左右达到稳定值,且上升速度均较为迅速,在航向稳定过程中不存在超调现象,但经过仔细观察可以发现,在航向达到稳定值之后,使用模糊控制器得到的曲线有细微的波动。
两者舵的使用情况见图6和图7,可很直观地看出,使用指数函数修饰的控制器进行航向控制时,动舵幅度较模糊控制小很多,通过使用MATLAB进行计算可以得到,图6的平均舵角为1.94°,图7的平均舵角为2.27°,平均舵角下降了0.33°,降幅约为15%,而舵的使用情况在一定程度上可反映出船舶能量的消耗,以及船舶营运过程中船员的舒适感。所以,使用指数函数修饰的航向保持控制器,不仅能够降低能源的消耗,而且还在一定程度上改善船员的工作生活环境。
为了验证两种控制器的鲁棒性,把船舶模型的参数按照一定的比例进行调整。根据文献[2]可知,K与船舶速度成正比,T、α、β与船舶速度成反比,所以当模型参数发生30%的摄动时,K=0.114 3,T=27.363 0,α=13.01,β=14 512.80,将这些参数代入船舶模型进行仿真,得到航向仿真结果见图8和图9,舵的仿真结果见图10和图11。可以看出两者航向稳定所需时间和原船舶模型相比没有发生多大的变化,但是图8在110 s左右出现一个小的超调现象,而图9却没有任何的超调现象,计算得图10、图11的平均舵角相差不大,分别是2.81°和2.82°,这表明模糊控制器和使用非线性修饰技术设计的控制器都有一定的鲁棒性,但是模糊控制器的鲁棒性要更强一些。
为对仿真试验结果进行量化分析,采用目前使用较为广泛的3个性能评价标准来分析仿真结果,他们分别是平均绝对误差(Mean Average Error,MAE)、平均绝对积分(Mean Integral Absolute,MIA)、平均总偏移量(Mean Total Variation,MTV)为式(7)中:MAE是用来衡量系统输出的响应时间;MIA与MTV是用来衡量与输入舵角有关的能量消耗和相应算法的平滑性。
(7)
仿真结果的量化对比见表2,由表2可知:非线性修饰与模糊控制的MAE差别不大,即两种控制方法在航向的响应速度上没有太大的差别;使用非线性修饰时的MIA和MTV比使用模糊控制分别下降了约15.0%和21.4%,这表明非线性修饰技术较模糊控制可以在很大程度上减小舵角输入,即可减少能量的消耗,并且能使算法更加平滑,这对于船舶的安全经济航行具有重要意义。
表2 仿真结果量化比较
本文使用指数函数修饰技术和模糊控制技术分别设计航向保持控制器,并通过SIMULINK工具箱对两种控制器的控制效果进行验证和对比,结果表明两种方法都能较为迅速地使航向达到设定值:舵的使用情况表明指数函数修饰的控制器能够使平均舵角的使用减少约15%,这对于船舶的节能和安全航行具有重要意义;船舶模型参数发生30%的摄动时,模糊控制器的航向保持效果比指数函数修饰的控制器强一些,这表明两种控制器都具有一定的鲁棒性,但模糊控制器的鲁棒性要强一些。所以,指数函数修饰的航向保持控制器的综合性能要优于模糊控制器,它更容易满足现实生活中船舶营运对航向保持的要求。