此示例演示如何使用slTuner
和systune
调整纵向自动驾驶仪的标准配置。我们感谢航空航天高等研究所的D. Alazard教授提供了飞机模型,感谢ONERA的Pierre Apkarian教授开发了这个例子。
超音速客机在0.7马赫和5000英尺飞行时的纵向自动驾驶仪如图1所示。自动驾驶仪的主要目的是遵循垂直加速指令反馈结构由一个控制俯仰率的内环组成以及控制垂直加速度的外环自动驾驶仪还包括一个前馈组件和一个参考模型指定对step命令的所需响应的.最后是二阶滚转滤波器
用于衰减噪声和限制控制带宽,以防止未建模的动力学。可调组件以橙色突出显示。
图1:纵向自动驾驶仪配置。
飞机模型是一个五状态模型,状态变量是空气动力速度吗(m/s),上升角度(rad),攻角(rad),音高速率(rad/s),以及高度(m).电梯偏转(rad)用于控制垂直载荷系数.开环动力学包括振动与频率和阻尼比= 1.7 (rad/s)和=0.33,phugoid模式=0.64(rad/s)和= 0.06,以及慢速高度模式= -0.0026.
负载协和数据Gbode(G,{1e-3,1e2}),网格标题(“飞机模型”)
请注意中原点处的零.由于该零点,我们无法实现零稳态误差,必须将重点放在对加速度指令的瞬态响应上。请注意,加速度指令本质上是瞬态的,因此稳态行为不受关注。原点处的该零点也排除了纯积分作用,因此我们使用伪积分器具有= 0.001.
在Simulink中对控制系统建模时,可以使用金宝appslTuner
接口来快速设置调优任务。打开自动驾驶仪的S金宝appimulink模型。
开放式系统(“rct_concorde”)
配置slTuner
界面,列出Simulink模型中的调整块(以橙色突出显示)。这会自动选择模型中的所有线性分金宝app析点作为分析和调整的关注点。
ST0 = slTuner (“rct_concorde”,{“基”,“Kp”,“Kq”,Kf的,“滚落”});
这还将参数化每个调优的块,并基于它们在Simulink模型中的值初始化块参数。金宝app注意四个增益Ki,Kp,Kq,Kf
在本例中初始化为零。默认情况下,滚动过滤被参数化为一个一般的二阶传递函数。将它参数化为
创建真正的参数,构建如上所示的传递函数,并将其与滚边
块。
wn = realp (“wn”3);%固有频率ζ= realp (“ζ”,0.8);%阻尼Fro = tf(wn^2,[1 2*zeta*wn ^2]);参数传递函数setBlockParam (ST0“滚落”,Fro)%使用Fro参数化“滚动”块
必须调整自动驾驶仪以满足三个主要设计要求:
1.选点跟踪响应:到命令应与参考模型的反应紧密匹配:
该参考模型规定了具有2秒稳定时间的良好阻尼响应。
2.高频碾轧:从噪声信号到的闭环响应应滚动超过8 rad/s,斜率至少为-40 dB/decade。
3.稳定的利润:工厂投入时的稳定裕度应至少7分贝和45度。
对于设定点跟踪,我们要求闭环从指令传输的增益跟踪误差在频带[0.05,5]rad/s很小(回想一下,我们不能将稳态误差驱动到零,因为在s=0时,工厂为零)。利用几个频率点,画出最大跟踪误差作为频率的函数,并用它来限制增益来.
频率=[0.005 0.05 5 50];收益=[5 0.05 0.05 5];Req1=调谐目标。增益(“Nzc”,“e”,frd(增益、频率);要求1.名称=“最大跟踪错误”;
的TuningGoal。获得
构造函数自动将最大误差草图转换为平滑加权函数。使用viewGoal
以图形方式验证所需的错误配置文件。
viewGoal (Req1)
重复相同的过程,将噪声输入的高频增益限制为并在8到800 rad/s的频带内强制执行-40 dB/decade斜率
频率=[0.8800];收益=[10 1 1e-4];Req2=调谐目标。增益(“不”,“delta_m”的朋友(收益,频率));Req2。Name =“滚转要求”;viewGoal (Req2)
最后,注册植物输入作为开环分析和使用的站点调整目标。边距
获取稳定裕度要求。
添加点(ST0,“delta_m”Req3 =调优目标。利润(“delta_m”,7,45);
我们现在准备用systune
.该命令接受未调优的配置ST0
和三个设计需求,并返回调整后的版本圣
属于ST0
.当最终值小于1时,所有要求都得到满足。
[ST,fSoft]=systune(ST0,[Req1,Req2,Req3]);
最终:软=0.968,硬=Inf,迭代次数=140
使用showTunable
查看调整后的块值。
showTunable (ST)
Block 1: rct_concorde/Ki = D = u1 y1 -0.03059名称:Ki静态增益。----------------------------------- 块2:rct_concorde / Kp = D = -0.008714 u1 y1名称:Kp静态增益。----------------------------------- 块3:rct_concorde / Kq = D = -0.2909 u1 y1名称:Kq静态增益。----------------------------------- 第四块:rct_concorde / Kf u1日元= D = -0.0237名称:Kf静态增益。----------------------------------- wn = 4.84 ----------------------------------- ζ= 0.515
的调优值,使用getBlockValue
评价Fro
对于中的已调整参数值圣
:
来回= getBlockValue(圣,“滚落”);特遣部队(来回)
ans=23.4------------------s^2+4.98 s+23.4连续时间传递函数。
最后,使用viewGoal
以图形方式验证是否满足所有要求。
身材(“位置”,[100100550710])视图目标([Req1 Req2 Req3],ST)
现在我们验证调整后的自动驾驶仪是否满足设计要求。首先比较的阶跃响应与参考模型的阶跃响应. 再利用getIOTransfer
要计算调谐的闭环传输,请从Nzc
来新西兰
:
Gref=tf(1.7^2[12*0.7*1.7^2]);%参考模型T = getIOTransfer(圣“Nzc”,“新西兰”);%转让图中,步骤(T)“b”,格雷夫,“b——”,6),网格,ylabel(“N_z”),传说(“实际反应”,“参考模型”)
同时绘制偏转曲线以及前馈和反馈路径的各自贡献:
T = getIOTransfer(圣“Nzc”,“delta_m”);% transfer转移Kf = getBlockValue(圣,Kf的);%Kf的调谐值Tff=Fro*Kf;%前馈对m的贡献步骤(T,“b”Tff,“g——”T-Tff,‘r-。’,6),网格标签(“\ delta_m”),传说(“总”,“前馈”,“反馈”)
最后,通过计算开环响应,检查滚转和稳定裕度要求.
OL=getLoopTransfer(ST,“delta_m”1);%负反馈环路转移保证金(OL);网格xlim([1e-3,1e2]);
博德图证实了-40 dB/ 10年的8 rad/s衰减,并表明增益和相位裕度超过10 dB和70度。
systune (slTuner)
(金宝app仿真软件控制设计)|slTuner
(金宝app仿真软件控制设计)|TuningGoal。获得
|调整目标。边距