一种基于智能算法的PID自动驾驶仪参数整定方法与流程

文档序号:16244867发布日期:2018-12-11 23:28阅读:976来源:国知局
一种基于智能算法的PID自动驾驶仪参数整定方法与流程

本发明属于pid自动驾驶仪的参数整定方法,具体涉及一种基于智能算法的参数整定方法。

背景技术

自动驾驶仪设计方法在工程应用最多的是pid控制方法,即传统的比例,积分,微分控制,pid控制具有算法简单,可靠性高,不依赖被控制对象的模型等优点,已经被广泛用于生产过程,但实际工程中,pid控制器的比例,积分和微分调节参数往往采用实验加试凑的方法由人工整定,这不仅需要熟练的技巧,往往还相当费时。



技术实现要素:

本发明解决的技术问题:提出一种基于遗传算法的pid参数整定方法,通过对参数空间编码并用随机选择作为工具来引导搜索过程朝着更高效的方向发展,以提高pid参数整定的效率,降低工作人员的负担,提高飞行自动化水平。

本发明的技术方案:一种基于智能算法的pid自动驾驶仪参数整定方法,所述的方法包括如下步骤:

根据飞机的三自由度非线性模型,抽象出飞机的控制模型;

构建飞机的舵机模型和自动驾驶仪模型;

选定自动驾驶仪的性能指标;

预先设定自动驾驶仪的pid参数;

设定遗传算法的参数,根据约束条件和适应度函数,对自动驾驶仪的pid参数进行解算;

所述的惩罚函数p(x)的形式如下:

其中,fj(x)是违反第j个约束的惩罚函数项,c,α,β是常数,t为优化算法的进化代数,m为约束总数;

f(x)=f(x)+p(x)

其中,f(x)是目标函数,p(x)是惩罚函数,f(x)为广义目标函数。

优选地,抽象出飞机的控制模型后,通过四阶龙哥库塔法解算出飞机状态参数。该方法可以提高对飞机状态参数的解算精度,满足工程应用。

优选地,所述的c,α,β的取值范围分别为:β=2,c,a∈[0.5,1]。在该范围内可以求得最优或较优的结果。

本发明的有益效果:本发明以pid自动驾驶仪为模型,针对传统模式下,依靠人工经验进行手动参数整定的费时,费力等缺点;以智能算法为优化手段,通过合理的模型建立及相应算法参数和适应度函数的设定,可以快速的对pid参数进行计算整定,筛选出符合要求的pid参数。该方法可以有效的减轻工作人员的负担,提高工作效率。

附图说明

图1为舵机的框图模型;

图2为自动驾驶仪框图;

图3为pid控制器的基本框图。

具体实施方式

现结合附图、实施例对本发明作进一步详细说明。

基于遗传算法的pid自动驾驶仪参数整定方法,具体操作步骤如下:

步骤1:构建飞机的三自由度非线性模型

飞机的运动模型具有以下特点,各运动状态的相关性:飞机在空间的姿态运动可分为俯仰、偏航、滚转三个通道,它们之间通过惯性、阻尼、气动力或电气环节发生互相耦合;气动参数的时变性:在飞行过程中,飞机的质量、转动惯量、质心位置等以及与飞行有关的空气动力系数等均随时间不断变化,使得运动方程成为一组变系数的微分方程;大气环境的复杂性:飞机在飞行过程中所受的干扰主要是飞行环境的不确定性,如风、云团、山脉地形等。

针对以上特点,在对优化方法的研究中将飞机模型分为质心运动的动力学方程,绕质心转动的动力学方程,绕质心转动的运动方程分别进行建模分析。

步骤2:抽象出相应的控制模型

根据步骤1推导的飞机运动模型,以飞机的攻角,侧滑角,弹体轴的三个角速度ωx,ωy,ωz和滚转角,偏航角,俯仰角,作为驾驶仪三通道控制模型的状态变量,对模型进行抽象,可得控制模型。同时为了便于运用成熟的线性控制系统设计理论进行设计与分析,将飞机的非线性动力学方程简化成线性定常微分方程,作了如下假设:

小扰动线性化假设:即假设电子线路、舵伺服机构、仪表等部件的特性以及运动方程都是线性的。同时假设导弹气动力特性是线性的,这在小扰动的情况下是可以成立的。

仅考虑飞机的短周期运动:在所研究的航迹特征点上,飞机质量、转动惯量、速度、大气参数等视为常数,即采用固化原理。

为了保证微分方程的求解精度,可以采用四阶龙哥库塔法,公式如下:

其中,h为仿真步长。

步骤3:构建飞机的舵机模型

模型框图如图1所示,该模型采用角度饱和限幅及角速率饱和限幅的二阶环节描述。模型中的舵机具有如下特性:最大舵偏角:30度;最小舵偏角:-30度;最大舵偏角速度:500度/秒;自然频率:150hz;带宽:24弧度/秒;阻尼系数:0.7;传递函数模型为:

步骤4:搭建自动驾驶仪模型

自动驾驶仪如图2所示,在该自动驾驶仪中:主要由增益补偿,舵机,机体,传感器,反馈系数及数据处理器组成;舵机控制机体的姿态变化,传感器测量出角度的具体值,进行转化,反馈给数据处理器,进行误差修订并发出新的指令。

pid控制器的基本框图,如图3所示,主要由比例,积分,微分参数;积分器,微分器和求和模块组成;输入指令为:αc=5;βc=0;γc=5。

步骤5:选定自动驾驶仪的性能指标

在进行优化设计前必须根据飞行任务目标和自动驾驶仪的具体性能,选定相应的性能指标。控制系统的性能指标包括多个方面,如:信号误差,能量消耗,上升时间,超调量,稳定误差等。

步骤6:pid参数预设定

根据控制系统的特点和待优化参数的可能范围,将参数的取值限定在一个合理的区域内,不仅可以保证算法稳定和收敛,提高优化度,还可以减少运算时间。

步骤7:设定遗传算法的参数

遗传算法中的参数主要有:确定每个参数的大致范围和编码长度、初始群体的数目、将种群中各个体解码成对应的参数值、复制,设定交叉和变异概率、终止条件等。

步骤8:合理的设计各约束条件和适应度函数

已知目前飞机的状态量,目标航路点的位置,飞行计划及性能条件,合理的选定飞机在飞行过程中可满足的飞行高度,飞行时间,过载等约束条件,约束条件因所选模型与飞行任务的不同而略有差异;进行优化算法设计时,将pid的kp,ki,kd三个参数组合在一起作为遗传算法群中的每一个个体,根据适应度函数计算每一组参数的适应度值;然后,对群体进行选择,交叉和变异操作,不断的进化,直到找到群体中最优目标个体,得到pid控制器的最优参数。

目标函数就是在飞行过程中,飞行器轨迹中的各参数在满足一定的终端和路径约束的条件下,通过对控制变量进行最优选择来使某个性能指标最优,即选取的目标函数,目标函数可以是一个函数单独优化或者几个函数的组合。

minj=f(x)

其中,f(x)为广义目标函数。

广义目标函数形式如下:

f(x)=f(x)+p(x)

其中,f(x)是目标函数,p(x)是惩罚函数。

由于普通静态惩罚函数的惩罚系数是固定不变的,对不同的问题,需要选取不同的数值多次尝试,工作量较大且当惩罚系数选取不当时,便无法得到满意的结果。一种改进的方式是是将惩罚系数变为动态的,使其可以随着迭代次数的变化而改变,自适应的根据演化搜索中的信息自动调节相应的惩罚系数。

惩罚函数p(x)的形式如下:

fj(x)是违反第j个约束的惩罚函数项,c,α,β是常数,t为优化算法的进化代数。

该方法优点是要求参数不多,仅3个。但寻优效果的优劣比较依赖这3个参数,在设计参数需要谨慎。

实施例

在matlab编程时要先设定选择算子、交叉算子和变异算子。仿真时选择算子为:高位算子;交叉算子为:中间重组双点交叉;变异算子为:高位变异。仿真采用的采样时间为2ms,输入指令为αc=5,βc=0,γc=5。采用二进制编码方式,用长度为10位的二进制编码串,分别表示3个决策变量kp,ki,kd;为获得满意的过渡过程动态特性,采用误差绝对值的平方和的时间积分性能指标作为参数选择的最小目标函数。性能指标为:

j(2)的9个参数的范围分别为:

[-6.5,0],[-12.5,0],[-0.2,0];[-12.5,0],[-12.5.0],[-0.2,0];[-8.5,0],[-1.5,0],[-0.5,0]。

经过50代进化,获得的优化参数如下:

性能指标,9个pid参数为:

kp1=-6.4549,ki1=-12.9776,kd1=-0.0506;

kp2=-10.7751,ki2=0.6255,kd2=-0.0467;

kp3=-6.8280,ki3=0.1125,kd3=-0.1272

3个角度为分别:α=5.0002,β=0.0286,γ=4.9960。

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