周毅,李萌,郑坤,梁斌,周斌
(中海油能源发展股份有限公司 采油服务分公司,天津 300452)
船舶的电动舵机由电机驱动,经由减速机构带动舵叶偏转,完成船舶航行姿态的稳定控制。理想化的船舶舵机控制模型为二阶系统模型,但在实际航行过程中受到外部载荷变化和非线性动态等因素的影响,传统的PID控制难以实现航行姿态的优化控制。自抗扰控制算法针对于非线性与快时变和耦合等一系列问题具有良好的控制能力,在自动控制领域得到了广泛的应用。许多学者针对于传统非线性自抗扰控制多控制参数的问题进行改进与简化,提高性能。但在实际操作应用过程中,自抗扰控制在控制规则优化方面仍有较大的不足,同时也存在着参数调整困难、整定难度大的问题。为此,提出改进的自抗扰控制算法和相对应的自抗扰控制器设计方案。将微分跟踪器去除,非线性控制律状态空间线性化以降低系统的参数复杂度;针对控制测量输出容易被噪声污染的问题,在自抗扰控制器中加入非线性FAL函数低通滤波构成新的自抗扰控制算法;同时针对于自抗扰参数优化复杂的问题,提出改进的多目标遗传优化算法NSGA-II,对改进的自抗扰控制器进行参数优化。
船舶电动舵机控制系统采用舵机控制器控制无刷直流电机转数,经过减速机构及减速器带动舵轴转动,转角信息与转数信息在现代船舶控制中分别使用电位计与编码器进行监控测试传递构成完整的闭环控制回路。依据传统的伺服系统分类,电动舵机属于位置控制,针对控制过程中跟踪的快速性和较高的跟踪性能,对舵机采用双闭环控制,为位置环与速度环控制,分别属于外环与内环。舵机控制系统原理见图1。
图1 电动舵机控制原理示意
在对电动舵机系统的分析过程中发现其摩擦力矩与铰链力矩随外部载荷的变化而不断变化,因此船舶电动舵机控制系统属于一个二阶时变非线性控制系统。
在PID控制原理的基础上,已有学者利用非线性特性开发了具有特殊功能的算法:跟踪微分器(TD),扩张状态观察器(ESO)和非线性PID。
基于实际工程控制需求,设计改进自抗扰控制器:去除传统ADRC中的微分跟踪器TD,采用线性误差反馈控制律代替非线性误差反馈控制和建立线性状态空间扩张状态观测器LESO,降低了参数整定的复杂度与难度;同时在此基础上引入FAL函数低通滤波系统,以此提高智能船舶舵机的静态控制性能,改进ADRC结构见图2。
图2 改进自抗扰控制器结构
对于船舶电动舵机控制系统建立三阶扩张状态观测器,将系统中的外部扰动与内部摩擦力矩等扰动作为“总扰动”进行实时估计与控制补偿,与此同时可设“总扰动”为。
对于传统的阶未知动态与扰动控制系统有:
(2)
根据式(2)建立状态空间状态模型为
(3)
(4)
式(4)左侧为状态空间方程,右侧为具体的三阶扩张状态观测器,其中为设定观测器的反馈矩阵。
根据现代控制理论中的极点配置原理,状态观测器的极点配置在左半平面即-点,同时扩张状态观测器的带宽为。根据极点配置原理,表达式如下。
+++=(+)
(5)
扩张状态观测器对于“总扰动”进行实时观测与进行控制输入的补偿,控制输入为
(6)
因此此时舵机控制系统变为一个二阶串联积分系统,控制系统为达到控制稳定的目的,采用比例微分控制如下。
(-)-
(7)
式中:,为比例与微分系数,传递函数如下。
(8)
针对于提高舵机系统的稳态性能,控制输出过程中易受到噪声污染的问题,设计FAL函数低通滤波系统。FAL函数的定义为
(9)
FAL函数在0<<1时存有小范围的线性区域(具有“小误差大增益,大增益小误差”的工程特性)。FAL数低通滤波系统的具体数学表现形式为
(10)
根据式(4)、(5)及(10)可获得改进后的扩张状态观测器式如下。
(11)
控制输入数学表达式如下。
[+(,,),,]
(12)
式中:控制带宽=1-。
NSGA-II带精英策略的非支配排序遗传算法(见图3)是一种基于NSGA算法上提出的一种多目标进化算法,具有运行效率高,产生局部收敛性几率较小,尤其针对3层及以下维度的多目标优化时效果良好。
图3 NSGA-II算法流程
与其他多目标遗传算法相比NSGA-II提出了快速的非支配(non-dominated)排序,降低了算法的复杂度:一般的多目标算法复杂度为(),而NSGA-Ⅱ可以做到()(为目标个数,为种群个数);NSGA-Ⅱ改进了原先NSGA算法为保留解多样性而采用的共享函数,提出了拥挤比较算子,从而避免了人为输入参数的不确定性。其基本思想如下。
1)随机产生初始种群,个体数量为,对于个体解码,且计算其目标函数值,选取多个个体按照非支配关系排序;然后按照交叉变异遗传算子操作,产生子代种群。
2)为了将父代中可能存在的优秀个体进行保存,将父代与子代合并形成规模为2的种群进行快速非支配关系排序,在产生的非支配集中(=1~)从最优的开始依次选取个个体组成新的初始种群。
3)新的父代种群新一轮的选择交叉变异遗传算子产生新的一代子群,将新的父代与子代群体进行再次合并以形成新种群,重复1)~2)的过程,直到达到满足程序结束的条件进而结束。
扩张状态观测器(ESO)是自抗扰控制器的核心部分,决定了电动舵机控制效果与性能。以扩张状态观测器为例,对NSGA-II算法进行适应性的改进,基于改进后LESO的整定特点,确定优化目标。
(13)
式中:(,,…,)为系统的空间状态变量;(,…,)为空间状态变量的观测值;+1为扩张的状态变量,代表系统中的不确定性和扰动量;为指数,这里选=2。
由于多目标算法产生的Pareto解是包含pop优化解的解,为了确定LESO的参数,需要从其中选择出一个更适合的解集;考虑人工选择法对于复杂情况的整定难以达到效果,因此采用基于模糊自适应理论的Pareto寻优法。首先定义为Pareto解中第个体的目标值所占的比重,具体方法如下。
(14)
对于Pareto解集中每个非支配解定义等级函数值。
(15)
式中:为目标函数的个数;为Pareto解中非支配解个数。
对于Pareto解集中每个非支配解式(15)的值越大,其解的综合能力就越强。
为了增加遗传算法的全局搜索范围,利用算术交叉算子,即
(16)
式中:,为在[-05,15]之间的随机数,而且+=1。但同时由于搜索范围的增大,在进行遗传算法运算的同时也增大了不可用量,具体表现为优化目标超出了所允许的范围,因此需要增加约束条件,对于产生的优化解进行进一步的取舍,增加优化目标的取值范围,=1,2,…,(为目标函数的数目),具体规则如下。
1)若≤,所求得解都进行保留,进行下一步的合并迭代。
2)若>,所得解被放弃进行重新遗传变异;若是发生在第一代中,则重新在初始范围内进行随机产生去代替。
综上此时构建完整的基于NAGA-II数据优化流程,见图4。
图4 数据优化流程示意
利用Matlab2019建立现代智能化船舶电动舵机控制模型,改进自抗扰控制器模块使用S函数编写控制器的控制程序;在仿真建模中,伺服电机的参数根据某实际无刷直流电机设定。
额定功率:120 W;额定转矩5.76 mN·m;
额定电压24 V;额定电流:5.58 A;
转子惯量:85 g·cm;
转矩:22.1 N·m/A;
速度:445 r/min/V;
额定转速:8 560 r/min。
完成船舶电动舵机的控制模型建立,此时可初步确定相关控制参数范围:
∈(300,1 000),∈(450,5 000),
∈(0,10 000),∈(0,1),∈(0,1)。
首先进行多目标测试函数ZDTI对于适应性改进的NSGA-II算法测试。设定遗传种群书为100,遗传代数为100,测试结果见图5,所示符合帕累托曲线的特性,达到了Pareto解,表明其适应性改进NSGA-II算法具有数据优化可行性。
图5 ZDT1测试结果
考虑自抗扰控制器的自身特点与控制目标的特性,设定控制参数的初始值:=400,=1 500,=05,=2 000,=05;NSGA-II优化改进自抗扰控制算法:NSGA-II算法设定遗传种群书为100,遗传代数为100。经整定优化得到相对应控制参数:=4 2062,=8624,=029,=4 7121,=072。采用优化前后的数据进行阶跃响应对比,发现超调量减小为0.074,较优化前提升了4.32%,上升时间由之前的1.34降为1.14,表明动态性能得到了提升,见图6。
图6 优化前后阶跃响应
为了进一步观察经NSGA-II算法优化的改进自抗扰控制器的动态控制能力,在角度控制过程中加入扰动,同时观察改进后的线性扩张状态器的项,实验结果见图7、8。
图7 存干扰控制响应对比
图8 z1观测对比
优化后改进自抗扰器的控制曲线相对更加平滑,对于瞬间大幅度角度调整的控制能力更强,同时说明优化后的控制器具有更强的抗扰能力。
基于实际工程控制需求,在传统电动舵机自抗扰控制器的基础上进行了算法改进和设计优化,减少了控制参数,摆脱了对被控模型的依赖。引入经过适应性改进的非支配排序遗传算法NSGA-II,优化了自抗扰控制器控制参数,提升了电动舵机控制性能。电动舵机系统控制仿真结果显示出经过优化的自抗扰控制器降低了超调量,对于模型的精确度没有要求,具有较强动态控制和静态性能,更利于实现航行姿态的优化控制,可以保证系统的控制性和稳定性。面对未来船舶智能化和无人化的发展趋势,电动舵机自抗扰控制器需进一步研究提升其抗噪性能。