改进粒子群算法优化模糊PID无人直升机姿态控制方法与流程

文档序号:18041476发布日期:2019-06-29 00:10阅读:1437来源:国知局
改进粒子群算法优化模糊PID无人直升机姿态控制方法与流程

本发明涉及一种无人直升机控制技术,特别是一种改进粒子群算法优化模糊pid无人直升机姿态控制方法。



背景技术:

无人机是无人驾驶航空器的简称,与有人机相比,无人机可以减少与飞行员自身重量有关无人机结构重量,增加有效载荷,降低成本,体积减小,更具隐蔽性,在一些特殊情况下无人机能够执行有人机无法执行的风险更高的任务,设计的灵活度较高。无人直升机作为无人机的一种,与固定翼无人机相比,飞行稳定性更高,可实现垂直起降及空中悬停,具有更好的机动性和灵活性,可在地形复杂或者狭窄的空间内飞行,被广泛运用于军事和民用领域。

无人直升机的姿态控制是无人机领域内的一个重要研究课题,无人直升机飞行控制通常包括姿态控制和轨迹控制,其中轨迹控制是指直升机位置和高度的控制,而位置和高度的变化主要依靠姿态的变化得以实现。目前,无人直升机的姿态控制方法主要包括线性控制、非线性控制和智能控制等多种设计方法。在线性控制方法中,目前应用最广的还是经典pid控制,它尽管结构简单,设计实现方便,但在实际工程项目中,相关参数的整定方法较为繁琐,往往难以达到最优,使得系统得不到较好的控制效果。模糊控制是一种非线性的控制方法,拥有良好的控制性能,但是模糊pid控制器也有缺点,量化和比例因子确定、隶属度函数选择和模糊规则表的制定对控制效果具有重要影响,却只能依赖于专家经验和工程经验获得,无法避免特殊条件造成的干扰,自适应能力和控制效果不理想。



技术实现要素:

本发明的目的在于提供一种改进粒子群算法优化模糊pid无人直升机姿态控制方法,实现对无人直升机姿态的有效控制。

实现本发明目的的技术方案为:一种改进粒子群算法优化模糊pid无人直升机姿态控制方法,包括以下步骤:

步骤1,根据机理建模方法得到的无人直升机的动力学和运动学模型设计模糊pid姿态控制器,利用控制器对期望姿态角和实际姿态角的误差、误差变化率进行控制得到模糊pid姿态控制器的参数调整量;

步骤2,采用改进粒子群算法对模糊pid姿态控制器中的量化因子和比例因子进行优化;

步骤3,将优化后的量化因子和比例因子赋值给模糊pid姿态控制器。

本发明与现有技术相比,具有以下优点:(1)本发明把改进粒子群算法同模糊pid控制结合起来进行优化,弥补了现有模糊pid控制方法参数选取过分依赖专家经验和工程经验的缺点,满足现代无人直升机姿态控制的需要,提高了控制性能;(2)对标准粒子群的改进能够使算法避免陷入局部最优,采用适应度值的表现在迭代过程中判断是否进入早熟收敛状态,如果进入早熟收敛状态,则利用差分进化算法进行变异、交叉和选择操作,丰富粒子种群的多样性,进行全局寻优,避免陷入局部最优。

下面结合说明书附图对本发明作进一步描述。

附图说明

图1是本发明的方法流程图。

图2是本发明中模糊pid控制框图。

图3是本发明中模糊pid控制程序流程图。

图4是本发明中无人直升机仿真模型建立框图。

图5是本发明中实施例的无人直升机姿态角跟踪仿真结构框图。

图6是本发明涉及的算法与普通模糊pid控制阶跃响应仿真结果对比图,其中(a)为俯仰角仿真结果对比图,(b)为滚转角仿真结果对比图,(c)为偏航角仿真结果对比图。

具体实施方式

一种改进粒子群算法优化模糊pid无人直升机姿态控制方法,需要对无人直升机的俯仰角、滚转角、偏航角三个姿态角分别控制,需要优化的参数为模糊pid控制器中的量化因子ke、kec和比例因子ku={k1,k2,k3}五个参数,步骤流程基本相同,如图1所示,具体包括以下步骤:

步骤1,采用机理建模方法得到无人直升机的动力学和运动学模型,以模型为基础设计模糊pid姿态控制器,结构如图2所示,选用无人直升机期望姿态角和实际姿态角的误差及其误差变化率作为输入变量,将该姿态角pid控制器的参数调整量δkp、δki、δkd作为输出变量,其中δkp、δki、δkd分别是比例p、积分i、微分d对应的三个参数kp、ki、kd的变化量。

步骤2,采用一种改进粒子群算法对模糊pid姿态控制器进行优化设计,优化其模糊控制中的量化因子ke、kec和比例因子ku={k1,k2,k3}五个参数,选用实数编码方式,用位置向量内参数一一对应,优化过程具体包括以下步骤:

步骤2.1,初始化粒子群算法参数,假设在一个d维搜索空间中,初始化一个种群规模为n的粒子群,在允许范围内初始化群体的位置xi=(xi,1xi,2…xi,d)和速度vi=(vi,1vi,2…vi,d),其中i代表种群中的第i个粒子,xi,d为粒子i在第d维度的位置,vi,d为粒子i在第d维度的速度;

步骤2.2,依次将种群中每个粒子位置信息对应的参数赋值给量化因子和比例因子运行赋值后的控制器对飞行器模型进行姿态控制,以积分性能指标(itae)作为寻优的目标,根据适应度值函数计算每个粒子的适应度值,更新粒子的个体极值和全局极值;其中

粒子的个体极值表示(单独的)粒子i在随即搜索过程中经历的最优适应度值pbest和最优位置pi=(pi,1pi,2…pi,d);全局极值表示整个粒子群在历次迭代过程中的最优适应度值gbest和最优位置pg=(pg,1pg,2…pg,d);个体极值每个粒子都有一个,全局极值整个粒子群只有一个。

更新的标准为适应度值更大的取代现有极值。

积分性能指标寻优的目标函数为

适应度值函数具体表现形式为

其中,t是时间参数,e(t)是给定值与实际输出值构成的偏差e在每个时刻的值。

步骤2.3,如果达到迭代次数要求,则结束循环程序,输出最优解,如果没有则继续以下步骤;

步骤2.4,更新下一时刻每个粒子的速度和位置迭代公式为

vi,j(k+1)=wvi,j(k)+c1r1[pi,j-xi,j(k)]+c2r2[pgs-xi,j(k)]

xi,j(k+1)=xi,j(k)+vi,j(k+1),j=1,2,…,d

其中,k为当前迭代次数,pi,j为第i个粒子迄今为止搜索到的最优位置,pgs为整个粒子群迄今为止搜索到的最优位置,c1和c2为正的学习因子,r1和r2为0到1之间均匀分布的随机数,w为惯性权重,针对pso算法容易早熟以及算法后期容易在全局最优解附近产生震荡现象,采用线性递减权重法,w随算法迭代次数的变化公式为

其中,wmax和wmin分别表示w的最大值和最小值,t为最大迭代次数;

步骤2.5,比较算法是否出现早熟收敛现象,如果没有则转到步骤2;如果算法出现早熟收敛,则对粒子的位置进行早熟处理,得到下一代种群,转到步骤2。

其中,检查算法是否早熟收敛的方法是根据空间聚集位置变化影响适应度值的变化,可以根据适应度值跟踪粒子群的状态。设fi为第i个粒子的适应度值,favg为粒子群当前的适应度平均值,σ2为粒子群群体适应度方差,公式为

其中f为归一化因子,为

σ2越小,粒子群聚集程度越大,就越早陷入早熟收敛,因此,当σ2<c(c为一给定常数)时,进入早熟处理。

早熟处理为结合差分进化算法对粒子的位置进行变异、交叉和选择操作,具体如下:

(1)变异操作:

设定第k代种群中第i个变异个体为

yi(k+1)=(yi,1(k+1),yi,2(k+1),...,yi,d(k+1)),

yi,d(k+1)为个体yi(k+1)中在第d维的位置,

在当前种群随机选取三个不相同的个体,即xp(k)、xq(k)和xr(k),进行差分缩放再与一个待变异个体向量相加形成新的变异个体,即

yi(k+1)=xp(k)+f×(xq(k)-xr(k))

其中,i=1,2,…,n,p,q,r均为1到n中的随机整数,f为缩放因子,一般取0.5到1之间,xi(k)表示第k代种群中第i个个体。

(2)交叉操作:

设交叉后得到的个体为

ui(k+1)=(ui,1(k+1),ui,2(k+1),...,ui,d(k+1))

其中,cr为交叉概率,一般取0.8到1之间,jrand为随机数。

(3)选择操作:

其中,f()指的是该个体的适应度值。

步骤3,配置姿态控制器,将得到的全局最优解位置信息赋值给模糊pid控制器中的量化因子ke、kec和比例因子kp、ki、kd,形成完整的无人直升机姿态控制器,模糊pid控制程序流程如图3所示,进行实时的在线寻优,得到经整定后的pid控制参数,对无人直升机进行姿态控制。

图4是无人直升机仿真模型建立框图,在此基础上,按照上述步骤依次设置模糊pid控制器,并编写程序得到优化参数,保存到控制器设计文件。在完成模糊pid控制器配置后,通过matlab/simulink搭建控制系统框图,如图5所示,对姿态角进行控制仿真。

为了验证该控制器的控制效果,本发明仿真实例中选用某型无人直升机作为对象,设定无人直升机目标姿态角度为15°,所得的基于改进粒子群优化模糊pid的控制效果和无优化的模糊pid控制的比较图,如图6所示,其中,fuzzy-pid为无优化的模糊pid,pso-fuzzy-pid为改进粒子群优化模糊pid。由此可见,在改进后的控制器作用下,姿态角响应速度更快,稳定性更好。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1