基于布谷鸟搜索算法优化的BLDCM角度控制

2021-03-12 07:53卢艳军冷文龙张晓东
自动化仪表 2021年2期
关键词:鸟窝布谷鸟云台

卢艳军,冷文龙,张晓东

(沈阳航空航天大学自动化学院,辽宁 沈阳 10136)

0 引言

比例积分微分(proportion integration differentiation,PID)控制具有原理简单、易于实现和鲁棒性强等特性,广泛应用于无刷直流电机(brushless direct current motor,BLDCM)角度控制领域[1]。在PID控制中,kp、ki、kd三个参数直接决定控制性能指标。PID控制器优化设计的重点在于PID控制器参数的优化。因此,在自动控制领域中,PID控制一直是研究的重点及热点[2-3]。

在BLDCM控制过程中,使用自然启发式算法优化PID控制器参数是常用的方法之一。对此,中外学者进行了广泛而深入的研究,取得了较好的进展。Premkumar等在调整PID控制器的控制增益时采用蝙蝠算法,使控制器的控制效果优于经典的PID控制器和模糊调节PID控制器[4];Ibrahim等对粒子群算法和细菌觅食算法进行了深入的研究分析,提出了粒子群算法优化PID控制器的增益,提高了控制器的控制性能[5];文献[6]~文献[9]则分别采用了人工神经网络、模拟退火遗传和改进微分进化等算法,优化PID控制器参数,以提高控制器的控制性能。

本文以无人机三轴增稳云台控制电机为例,对电机控制器的参数优化问题进行研究,提出基于布谷鸟搜索(cuckoo search,CS)算法的BLDCM PID控制器参数优化方法。

1 BLDCM与负载框架数学模型

1.1 无人机三轴增稳云台控制系统

无人机三轴增稳云台控制系统是一种典型的位置伺服控制系统。BLDCM为三轴增稳云台执行机构,电机与负载之间采用直接驱动方式。三轴增稳云台控制框图如图1所示。

图1 三轴增稳云台控制框图 Fig.1 Three-axis stabilization gimbal control block diagram

由图1可知:增稳云台控制系统为双闭环控制结构,从内到外可分为速度环、位置环[10]。当对其中一轴电机进行控制时,需要综合考虑三轴增稳云台的驱动负载及运行过程中可能存在的扰动。

1.2 BLDCM数学模型

BLDCM的工作原理是:在输入电压的激励下,电路产生电流,使得电能转化为电机的动能;在电机绕组的驱动下,产生驱动力矩,从而驱动电机带动负载进行运动。BLDCM原理如图2所示[10]。

图2 BLDCM原理图 Fig.2 Schematic diagram of BLDCM

图2中:ur为输入电压;La为回路电感;Ra为回路电阻;Ea为反向电动势。

通过分析电机原理电路,可得出如下电路方程:

(1)

Ea(t)=Ceω(t)

(2)

Mm(t)=Cmia(t)

(3)

式中:Ce为比例系数,v/(rad.s-1);Mm(t)为电磁转矩;Cm为电机转矩系数,(N·m)/A。

从工作原理及功能需求来看,三轴增稳云台中三个通道的BLDCM控制系统差别较小,可以采用相同的控制模型。单个电机及视轴负载回路如图3所示。

图3 电机及视轴负载回路 Fig.3 Motor and sight axis load circuit

图3中:Ra为电枢回路的总电阻;La为电枢回路的总感抗;Cm为电机力矩系数;J为转动惯量。

控制系统的传递函数为:

(4)

(5)

根据所选增稳云台电机参数,计算得出控制系统的传递函数:

(6)

PID控制器优化的核心,是选择一组合理的控制器参数,使系统误差性能指标积分误差绝对值(integral absolute error,ISAE)、积分平方误差(integral square error,ISE)、时间乘绝对误差积分(integral of time multiplied by absolute error,ITAE)、时间乘平方误差积分(integral of time multiplied by square error,ITSE)等到达最优。其中,ITAE公式如下:

(7)

ITAE为时间乘以绝对误差的积分,能够放大系统参数对性能指标的作用,因此具有较好的实用性。本文选择该指标作为布谷鸟搜索算法的适应性函数,为PID控制器参数优化的合理性提供参考。

2 布谷鸟搜索算法

布谷鸟搜索算法是2009年由Xin-She Yang和Suash Deb依据布谷鸟育雏行为与萊维飞行相联系而联合提出的一种群智能优化算法[11]。布谷鸟是典型的具有巢寄生育幼雏行为的鸟类,他们不会亲自孵卵和育雏,而是将自己的卵偷偷产在其他鸟类的鸟巢中,由其他鸟类进行孵卵和育雏。其育雏行为具有以下特点。

①提前寻找在孵卵与育雏过程中,生活习惯相似的鸟类作为寄生宿主。

②一旦确定宿主,利用其外出时间,迅速产卵,并且移走多余鸟蛋,保证鸟蛋数量不变。

③当第一只布谷鸟雏鸟破壳而出后,它的第一反应就是盲目地将寄主蛋推出巢外,增加了自身被提供的食物份额。

④寄生鸟蛋有一定概率被宿主发现,若发现,宿主则放弃鸟巢。

在算法实现过程中,为便于模拟布谷鸟育雏行为,提出以下前提假设[12]。

①每只布谷鸟每次只孕育一只鸟蛋,产卵的寄生鸟巢也是随机生成的。

②每一组鸟巢中,最优良的鸟巢会得到保存,并作为初始值参与下一次更新。

③寄生鸟巢数量是固定的,同时寄生蛋被寄主发现的概率Pa∈[0 1]。

基于以上假设,布谷鸟搜索算法的鸟窝位置更新如式(8)所示:

(8)

L~u=t-λ,1<λ≤3

(9)

由于目前莱维飞行还不能简单地用数学公式描述,大部分文献均采用Mantegna代替莱维飞行[13]。公式如下:

(10)

式中:s为随机游动的步长;u、v服从正态分布。

(11)

参数σu、σv定义如下:

(12)

σv=1

(13)

式中:β∈[1 2],本文设定为1.5。

3 基于CS的PID控制器优化设计

BLDCM PID控制框图如图4所示。BLDCM PID控制器kp、ki、kd取决于CS算法,由CS算法实时产生并更新。在该控制器参数优化设计中,选用ITAE指标作为CS算法的优化函数,经过一系列迭代及运算,产生ITAE指标的最优值。

图4 BLDCM PID控制框图 Fig.4 BLDCM PID control block diagram

首先,鸟巢数量及位置通过CS算法随机生成。然后,使用鸟巢位置矢量分别作为PID控制系统中的三个参数赋值给PID控制器,运行SIMULINK PID控制系统,得到ITAE指标适应度值。同时,将计算得到的ITAE值返回并作为CS算法的适应度函数,为鸟巢位置的更新提供依据。最后,经过一系列运算,获得最优的kp、ki、kd这3个参数。该设计实现过程如下。

(1)参数初始化设置:鸟巢数目、寻优维数、运行次数、鸟蛋被发现概率和β的取值。

(2)鸟巢初始化:随机生成一定数量的鸟巢位置。

(3)调用Matlab Simulink里的BLDCM电机PID控制模型,计算每个鸟窝对应的ITAE值,即适应度值。

(4)排列出当前组别内的ITAE最优值及对应的鸟巢位置,将其记录下来参与下一次计算。

(5)循环体。

①鸟窝循环更新。利用布谷鸟搜索算法的鸟窝更新公式随机更新一定数量的鸟巢,并执行步骤(3)中的ITAE适应度值计算。然后将计算结果与上一次鸟巢适应度值进行对比,保留更优值,淘汰差值,形成新一组鸟巢适应度值。

②鸟窝随机更新。鸟窝位置的更新取决于寄主发现概率。寄主发现布谷鸟鸟窝的概率r∈[0 1],随机产生该概率并与设定值Pa相比较。如果r≥Pa,则更新。

基于CS算法的PID优化设计流程如图5所示。

图5 基于CS算法的PID优化设计流程图 Fig.5 Flowchart of PID optimization design based on CS algorithm

(6)终止循环。当系统寻优次数等于最大迭代次数设定值时,输出ITAE最优值及kp、ki、kd3个寻优参数,并终止系统运行。反之,若寻优次数未达到最大迭代次数,则系统保持正常工作。

4 试验研究

4.1 BLDCM PID控制参数求取分析

BLDCM的角度控制需要综合考虑系统工作的环境、功能需求等因素。最终目标是实现调速范畴宽、静差小、响应性好、 超调量较小和抗负载扰动性能优越的角度控制系统。

在电机持续长时间的工作运行中,电机的部分原始参数(如电阻、电感和转动惯量等)会发生较小的改变,从而有可能影响电机控制性能。当然,电机的部分固定参数与电机转矩之间存在比较复杂的非线性关系。文献[14]指出,在采用双闭环调速方式对BLDCM进行控制时,电阻会对控制性能产生微弱影响。比如,电感在电机运行过程中会减少,直接导致速度稳定值稍微上升但不会超过0.1%。当系统转动惯量改变50%时,对转速的影响不会超过0.2%。所以,通过一系列试验求取PID控制器三个参数的方案是可行的。

4.2 试验仿真与分析

本文应用 MATLAB 2018b环境进行仿真,分别采用粒子群算法和布谷鸟搜索算法优化BLDCM PID控制器参数,并对上述两种算法的仿真结果进行比较分析。

粒子群算法优化PID控制器参数的核心思想与布谷鸟算法基本相同。其基本思想是选择PID控制器常用的误差性能指标ITAE作为目标优化函数,经过若干次的迭代后,利用粒子群算法寻找使ITAE数值最优的系统参数。

针对本文所设计的基于CS的BLDCM PID控制器,选取如式(6)所示的控制对象进行试验测试。BLDCM PID控制模型如图6所示。

图6 BLDCM PID控制模型 Fig.6 BLDCM PID control model

首先,将时间t和偏差u的绝对值相乘,然后将两个参数的乘积通过积分产生ITAE指标,经由端口1输出至CS算法中。

由于试验仿真所需时间较长,且工作任务量较大,故选用的初始化参数可能不是最优参数。粒子群算法参数设置:粒子数量为50,惯性权重为0.6,学习因子1和学习因子2都为1,最大迭代次数为40,变量取值下界为[0 0 0],变量取值上界为[50 50 50]。布谷鸟搜索算法参数设置:鸟巢数量为50,鸟窝被发现概率为0.25,步长参数为1.5,变量取值下界为[0 0 0],变量取值上界为[50 50 50]。

第一种情况是无刷直流电机通过给出一个恒定的阶跃函数来跟踪电机转速趋近于θd→50,使其控制时间为10 s。BLDCM位置跟踪曲线如图7所示。从图7可以看出,PSO-PID控制器和CS-PID控制器在解决传统PID控制器参数优化费时的前提下,均能快速跟踪参考电机角度位置,并且两个控制器都成功地达到系统设定跟踪时间。但是每个控制器在跟踪性能都有所不同,特别是CS-PID控制器性能更加优越。图7中,PSO-PID控制器比CS-PID控制器的上升时间更快,但是PSO-PID控制器存在明显的超调。

图7 BLDCM位置跟踪曲线 Fig.7 BLDCM angle position tracking curves

在优化增益时,采用ITAE函数作为布谷鸟搜索算法优化的PID控制器的成本函数。适应值收敛曲线如图8所示。从图8可以看出,在第8次迭代时,成本显著下降,并在第16次迭代后开始收敛到一定的值,优化过程具有很强快速性。

图8 适应值收敛曲线 Fig.8 Fitness comvergemce curve

同时,为了获得更加可靠的数据,在给定单位阶跃函数的前提下,每种算法独立运行15次,然后计算15次仿真试验中的ITAE性能指标的最优值、最差值、平均值和方差,并作比较分析。PID控制器ITAE指标值对比如表1所示。

表1 PID控制器ITAE指标值对比 Tab.1 PID controller ITAE index value comparison

从表1可知,布谷鸟搜索算法的仿真结果在最优值、最差值、平均值和方差指标方面,都优于粒子群算法,表明基于布谷鸟搜索算法的BLDCM PID角度控制器的优化设计明显在控制性能和稳定性上更加优良。

5 结论

针对传统PID控制器参数优化费时且最佳控制性能难以保证的问题,本文提出了基于布谷鸟搜索算法优化的PID控制器。首先,根据BLDCM实际参数,推导出BLDCM与负载框架数学模型。同时,在给定恒定阶跃函数的前提下,对布谷鸟搜索算法和粒子群算法优化PID角度控制器进行大量的试验仿真。

试验仿真数据表明:基于布谷鸟搜索算法的BLDCM PID控制器虽然上升时间稍慢,但是不存在超调量的问题。同时,通过对ITAE适应度值的比较分析表明,CS-PID控制器能有效地改善BLDCM的跟踪性能,因此在工业控制领域有着广阔的应用前景。

猜你喜欢
鸟窝布谷鸟云台
云上之家——万科·郡西云台
龙门山·卧云台
布谷鸟读信
布谷鸟读信
帮我买云台
基于STM32的无线FPV云台设计
做在大胡子里的鸟窝
鸟窝
布谷鸟叫醒的清晨
鸟窝