机翼发生晃动的飞机模型参考自适应控制
本例演示了三角翼飞机在机翼发生晃动时如何控制横摇和横摇速率。对于本例,系统模型是未知的。因此,使用模型参考自适应控制(MRAC)使被控系统与理想的参考模型相匹配。该飞机在Simulink®中建模,MRAC控制器使用Simulink Control Design™软件提供的模型参考自适应控制块实现。
Wing-Rock控制系统
翼岩是三角翼飞机在低速和大迎角飞行时观察到的一种现象。飞机经历不希望的滚摇振荡,使飞机更难控制飞行员。MRAC控制器的目标是消除不需要的滚动振荡。然后,您可以设计一个基线控制器来实现所需的引用行为。
下面的方程定义了翼岩模型的动力学。
在这里:
是系统的状态向量,在哪里 是滚角和 是滚动速率。
是飞机副翼角度控制输入。
是控制有效矩阵你至少知道它的符号。
是翼岩扰动。
都是未知的理想权重。
对于这个不确定的非线性系统,你的目标是设计一个控制器,使系统能够跟踪以下二阶参考模型。
在这里:
是参考模型状态向量。
是飞行员提供的滚转参考信号。
标称模型和参考模型
为滚转动力学指定以下简化二阶标称模型。
A = [0 1;0 0];%第二积分器模型B = [0, 1];%名义控制有效矩阵
将参考模型定义为前面定义的稳定二阶系统。该控制器适应其不确定性模型,以实现与该模型相同的二阶行为。
Am = [0 1;4 2];%第二积分器模型Bm = (0; 4);%名义控制有效矩阵
指定标称模型和参考模型的初始条件。
theta_0 = 0;初始横摇角(rad)p0 = 0;初始滚动速率(rad/s)xm = (0, 0);参考植物模型的初始条件。
模型参考自适应控制结构
MRAC控制器的目标是实现跟踪误差的渐近收敛 .
MRAC控制器具有以下结构。
在这里:
包含反馈控制增益。
包含前馈控制增益。
是消除模型不确定性的自适应控制项。
模型参考自适应控制块调整自适应控制项,以实现所需的参考模型跟踪。你也可以选择调整反馈和前馈控制增益。不过,对于本例来说,控制增益是静态的。
计算翼岩系统的静态反馈和前馈控制增益,满足以下模型匹配条件。
指定计算的控制器增益。
Kx = [-4 -2];%反馈增益基米-雷克南= 4;%前馈增益
不确定性估计参数
MRAC控制器在线估计模型的不确定性,并产生自适应控制动作 这消除了不确定性,恢复了基准控制器的标称系统。自适应控制项用以下模型对系统不确定性进行建模。
在这里:
包含由控制器调整的网络权值。
为不确定性模型特征向量。
使用模型参考自适应控制块,您可以选择以下特征向量定义之一。
系统状态, -这种方法是最简单的选择,如果您不知道系统不确定性的复杂性,它可以是一个很好的起点。如果你发现使用状态作为特征不能充分地表示非线性不确定性,选择其他方法之一。
具有高斯核的径向基函数(rbf) .您可以通过定义特性中心来配置内核 和带宽 .
可选输入端口提供的自定义功能。
对于本例,您将控制器配置为使用所有三种方法并比较结果。
定义模型估计学习率gamma_w
和跟踪误差权重问
.这些参数用于所有三种控制器配置。
gamma_w = 100;%学习速率Q = 1;跟踪误差权重%
指定径向基函数核的参数。一般情况下,配置RBF中心要跨越系统可能的状态空间,带宽要在内核之间提供足够的重叠。
N = 10;% RBF内核数cen_max = 2;内核中心的上限cen_min = 2;内核中心的下限带宽= 25;%内核带宽
利用状态特征向量模拟控制器
打开翼岩控制系统的Simulink模型,配置以系统状态作为不确定性模型特征向量。
mdl =“wingrockStates”;open_system (mdl)
在这个模型中:
翼岩模型块实现了滚转动力学的公称模型。
外部扰动块对滚转动力学产生翼岩扰动。
参考命令块生成导频参考信号。
模型参考自适应控制块输出控制动作 ,这是对翼岩扰动的估计。
设置仿真持续时间,对模型进行仿真。
Tf = 40;模拟持续时间(s)sim (mdl);
将得到的飞机滚动与参考命令进行比较。
open_system (mdl +“/转”)
该控制器不能实现平滑的二阶瞬态响应。
将MRAC控制器估计的扰动模型与真实的扰动信号进行比较。
open_system (mdl +“/干扰”)
当将状态作为扰动模型特征时,控制器估计的线性扰动模型不能准确地代表真正的非线性扰动。
利用RBF特征向量模拟控制器
打开翼岩控制系统的Simulink模型,配置以非线性rbf作为不确定性模型特征向量。此模型与前一模型相同,只是控制器参数已更新。
mdl =“wingrockRBF”;open_system (mdl)
模拟模型。
sim (mdl);
查看产生的控制器性能。
open_system (mdl +“/转”)
该控制器对参考命令的变化实现了更平滑的二阶响应。
将径向基函数估计的扰动与真实扰动进行比较。
open_system (mdl +“/干扰”)
非线性特征向量使控制器能够更准确地估计出真实的非线性扰动。
使用自定义特征向量模拟控制器
打开翼岩控制系统的Simulink模型,配置为使用外部生成的自定义不确定性模型特征向量。当您知道扰动和不确定性模型的结构时,可以使用此选项。对于本例,Features块生成的特征向量与外部扰动块中使用的特征向量相匹配。
mdl =“wingrockCustom”;open_system (mdl)
模拟模型。
sim (mdl);
查看产生的控制器性能。
open_system (mdl +“/转”)
该控制器对参考命令的变化实现了更平滑的二阶响应。
将使用自定义特征向量估计的扰动与真实扰动进行比较。
open_system (mdl +“/干扰”)
如预期的那样,使用基于扰动行为先验知识的自定义特征向量生成真实扰动的更精确模型。