基于模糊变结构的超声速飞行器过载指令快速跟踪方法与流程

文档序号:12594350阅读:来源:国知局

技术特征:

1.基于模糊变结构的超声速飞行器过载指令快速跟踪方法,其特征在于,按照以下步骤实施:

步骤1,测量飞行器纵向过载误差、俯仰角速度与俯仰角加速度;

步骤2,采用纵向过载误差信号,设计过载、角加速度与角速度混合的滑模面信号s;

步骤3,针对滑模面信号s构造非线性滑模控制量δz

步骤4,构造模糊系统,建立控制律增益与参数的模糊调整规则;

步骤5,飞行器俯仰通道过载控制的建模与数字仿真模拟;

步骤6,将步骤1-4所得到的结果,输入步骤5建立的超声速飞行器俯仰通道简化模型,通过选取合适的滑模面参数、模糊系统参数、控制增益参数,并观察输出曲线,从而确定最终的基于模糊变结构的超声速飞行器过载指令跟踪控制器参数,使得整个飞行器俯仰通道过载控制器具有满意的稳定性与响应速度。

2.根据权利要求1所述的基于模糊变结构的超声速飞行器过载指令快速跟踪方法,其特征在于,所述步骤1,按照以下步骤进行:将加速度计、俯仰角速率陀螺仪、角加速度计安装在飞行器器体上,其中采用加速度计测量飞行器的纵向过载,记为ny,采用俯仰角速率陀螺仪测量飞行器俯仰角速度,记为ωz,采用角加速度器测量飞行器俯仰角加速度,记为将纵向过载值ny与飞行器纵向过载指令进行比较,得到纵向过载误差,记作e,其满足

3.根据权利要求2所述的基于模糊变结构的超声速飞行器过载指令快速跟踪方法,其特征在于,所述步骤2,设计的滑模面信号s为:

<mrow> <mi>s</mi> <mo>=</mo> <msub> <mi>c</mi> <mn>0</mn> </msub> <mi>e</mi> <mo>+</mo> <msub> <mi>c</mi> <mn>1</mn> </msub> <mo>&Integral;</mo> <mi>e</mi> <mi>d</mi> <mi>t</mi> <mo>+</mo> <msub> <mi>c</mi> <mn>2</mn> </msub> <msub> <mi>&omega;</mi> <mi>z</mi> </msub> <mo>+</mo> <msub> <mi>c</mi> <mn>3</mn> </msub> <msup> <mi>e</mi> <mrow> <mn>15</mn> <mo>/</mo> <mn>17</mn> </mrow> </msup> <mo>+</mo> <msub> <mi>c</mi> <mn>4</mn> </msub> <msup> <mi>e</mi> <mrow> <mn>15</mn> <mo>/</mo> <mn>13</mn> </mrow> </msup> <mo>+</mo> <msub> <mi>c</mi> <mn>5</mn> </msub> <msubsup> <mi>&omega;</mi> <mi>z</mi> <mrow> <mn>17</mn> <mo>/</mo> <mn>15</mn> </mrow> </msubsup> <mo>+</mo> <msub> <mi>c</mi> <mn>6</mn> </msub> <msub> <mover> <mi>&omega;</mi> <mo>&CenterDot;</mo> </mover> <mi>z</mi> </msub> </mrow>

其中c0、c1、c2、c3、c4、c5与c6为待设计的正参数,c0、c1、c2、c3、c4、c5与c6为滑模面参数,均为增益,需要在后面设计中进行选定与调整,t为时间,∫edt为对e的积分。

4.根据权利要求3所述的基于模糊变结构的超声速飞行器过载指令快速跟踪方法,其特征在于,所述步骤3,构造的非线性滑模控制量δz为:

其中ε、ε1、k1、k2、k3、k4为待设计的正参数,ε、ε1、k1、k2、k3、k4为控制量参数,k1、k2、k3、k4为增益,需要在后面设计中进行选定与调整,ε、ε1为柔化系数,用于减弱系统颤振。

5.根据权利要求4所述的基于模糊变结构的超声速飞行器过载指令快速跟踪方法,其特征在于,所述步骤4具体按照以下步骤进行:

首先,以e为模糊系统的输入,滑模控制中增益k2为模糊系统的输出,建立输入输出变量的隶属度函数,用如下数学表达式描述:

选取d1=3,认为过载误差e属于‘PB’即‘正大’的范围,其隶属概率函数p5

<mrow> <msub> <mi>p</mi> <mn>5</mn> </msub> <mo>=</mo> <mfenced open = "{" close = "}"> <mtable> <mtr> <mtd> <mn>1</mn> </mtd> <mtd> <mrow> <mi>e</mi> <mo>&gt;</mo> <mn>3</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>exp</mi> <mrow> <mo>(</mo> <mo>-</mo> <mfrac> <msup> <mrow> <mo>(</mo> <mi>e</mi> <mo>-</mo> <mn>3</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <msubsup> <mi>d</mi> <mn>1</mn> <mn>2</mn> </msubsup> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> <mtd> <mrow> <msub> <mi>d</mi> <mn>1</mn> </msub> <mo>&le;</mo> <mi>e</mi> <mo>&le;</mo> <mn>3</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mi>e</mi> <mo>&lt;</mo> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>

认为误差e属于‘PM’即‘正中’的范围,其隶属概率函数p4

<mrow> <msub> <mi>p</mi> <mn>4</mn> </msub> <mo>=</mo> <mfenced open = "{" close = "}"> <mtable> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mi>e</mi> <mo>&gt;</mo> <mn>3</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mn>1</mn> <mo>-</mo> <mfrac> <mrow> <mi>e</mi> <mo>-</mo> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> <msub> <mi>d</mi> <mn>1</mn> </msub> </mfrac> </mrow> </mtd> <mtd> <mrow> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> <mo>&le;</mo> <mi>e</mi> <mo>&le;</mo> <mn>3</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mfrac> <mi>e</mi> <mrow> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mfrac> </mtd> <mtd> <mrow> <mn>0</mn> <mo>&le;</mo> <mi>e</mi> <mo>&le;</mo> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mi>e</mi> <mo>&lt;</mo> <mn>0</mn> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>

认为误差e属于‘ZO’即‘几乎为零’的范围,其隶属概率函数p3

<mrow> <msub> <mi>p</mi> <mn>3</mn> </msub> <mo>=</mo> <mfenced open = "{" close = "}"> <mtable> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mi>e</mi> <mo>&gt;</mo> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mn>1</mn> <mo>-</mo> <mfrac> <mi>e</mi> <mrow> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mfrac> </mrow> </mtd> <mtd> <mrow> <mn>0</mn> <mo>&le;</mo> <mi>e</mi> <mo>&le;</mo> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mn>1</mn> <mo>+</mo> <mfrac> <mi>e</mi> <mrow> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mfrac> </mrow> </mtd> <mtd> <mrow> <mo>-</mo> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> <mo>&le;</mo> <mi>e</mi> <mo>&le;</mo> <mn>0</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mi>e</mi> <mo>&lt;</mo> <mo>-</mo> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>

认为误差e属于‘NM’即‘负中’的范围,其隶属概率函数p2

<mrow> <msub> <mi>p</mi> <mn>2</mn> </msub> <mo>=</mo> <mfenced open = "{" close = "}"> <mtable> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mi>e</mi> <mo>&lt;</mo> <mo>-</mo> <mn>3</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mn>1</mn> <mo>+</mo> <mfrac> <mrow> <mi>e</mi> <mo>+</mo> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> <msub> <mi>d</mi> <mn>1</mn> </msub> </mfrac> </mrow> </mtd> <mtd> <mrow> <mo>-</mo> <mn>3</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> <mo>&le;</mo> <mi>e</mi> <mo>&le;</mo> <mo>-</mo> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>-</mo> <mfrac> <mi>e</mi> <mrow> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mfrac> </mrow> </mtd> <mtd> <mrow> <mo>-</mo> <mn>2</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> <mo>&le;</mo> <mi>e</mi> <mo>&le;</mo> <mn>0</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mi>e</mi> <mo>&gt;</mo> <mn>0</mn> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>

认为误差e属于‘NB’即‘负大’的范围,其隶属概率函数p1

<mrow> <msub> <mi>p</mi> <mn>1</mn> </msub> <mo>=</mo> <mfenced open = "{" close = "}"> <mtable> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mi>e</mi> <mo>&lt;</mo> <mo>-</mo> <mn>3</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>exp</mi> <mrow> <mo>(</mo> <mo>-</mo> <mfrac> <msup> <mrow> <mo>(</mo> <mi>e</mi> <mo>+</mo> <mn>3</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <msubsup> <mi>d</mi> <mn>1</mn> <mn>2</mn> </msubsup> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> <mtd> <mrow> <mo>-</mo> <msub> <mi>d</mi> <mn>1</mn> </msub> <mo>&le;</mo> <mi>e</mi> <mo>&le;</mo> <mo>-</mo> <mn>3</mn> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mi>e</mi> <mo>&gt;</mo> <mo>-</mo> <msub> <mi>d</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>

系统输入输出的模糊集分别定义如下:

e={NB NM ZO PM PB}

dk2={NB NM ZO PM PB}

其中,NB为误差“负大”的范围,NM为误差“负中”的范围,ZO为误差“几乎为零”的范围,PM为误差“正中”的范围,PB为过载误差“正大”的范围,dk2为增益k2的变化量;

其次,建立模糊调整的基本原则为:|e|越大,则飞行器控制量u应当越大,从而dk2也应当越大;

设计模糊规则库如下:

R1:IF e is PB Then dk2is PB

R2:IF e is PM Then dk2is PM

R3:IF e is ZO Then dk2is ZO

R4:IF e is NM Then dk2is PM

R5:IF e is NB Then dk2is PB

并设计规则矩阵如下:

rulelist=[5 5 1 1;

4 4 1 1;

3 3 1 1;

2 4 1 1;

1 5 1 1];

最后,采用Matlab软件的newfis('smc_fz_2')函数生成模糊系统,再采用addrule函数将上述规则矩阵加入模糊系统,然后利用函数a1=setfis(a1,'DefuzzMethod','centroid')设置采用centroid方法反模糊化,使用evalfis(abs(e),a1)函数,反解模糊滑模控制的增益调节规律,得到dk2

k2=k20+dk2

其中,k20为增益k2的初始值;

采用同一模糊系统,对参数c1进行调节,调节规律如下

c1=c10+0.05*dk2

其中,c10的含义是参数c1的初始值;

采用如下Matlab程序实现c1的调节:c1=c10+0.05*evalfis(abs(e),a1)。

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