直升机的多回路控制

此示例演示如何使用单反调谐器系统调整旋翼机的多回路控制器。

直升机模型

本例使用了悬停配平条件下的8状态直升机模型x=[u,w,q,θ,v,p,φ,r]包括

  • 纵向速度U(米/秒)

  • 横向速度v(米/秒)

  • 正常速度W(米/秒)

  • 俯仰角西塔(度)

  • 滚转角phi(度)

  • 滚动率P(度/秒)

  • 俯仰率Q(度/秒)

  • 横摆率R(度/秒)。

控制器生成命令ds,dc,dT纵向循环、横向循环和尾桨总成的度数,使用西塔,phi,P,QR.

控制体系结构

以下Simulink模型描述万博1manbetx了控制体系结构:

开放式系统(“rct_helico”)

控制系统由两个反馈回路组成。内环(静态输出反馈)提供稳定性增强和解耦。外环(PI控制器)提供所需的设定点跟踪性能。主要控制目标如下:

  • 跟踪中的设定点变化西塔,phiR稳态误差为零,上升时间约为2秒,超调量最小,交叉耦合最小

  • 限制控制带宽,以防止被忽略的高频转子动力学和测量噪声

  • 提供强大的多变量增益和相位裕度(对电厂输入和输出的同时增益/相位变化的鲁棒性,见磁盘边距详细信息)。

我们使用截止频率为40 rad/s的低通滤波器来部分实现第二个目标。

控制器调整

您可以使用系统命令。此命令仅需要设备和控制器的模型以及所需带宽(这是所需响应时间的函数)。在Simulink中对控制系统建模时,可以使用万博1manbetx单反调谐器接口以快速设置调整任务。使用要优化的块列表创建此接口的实例。

ST0=单反调谐器(“rct_helico”,{“PI1”,“PI2”,“PI3”,“SOF”});

每个可调块根据其类型自动参数化,并在Simulink模型中使用其值初始化(万博1manbetx$1+1/s$对于PI控制器,静态输出反馈增益为零)。模拟模型表明,对于这些初始值,控制系统是不稳定的:

标记设定点跟踪所需的输入/输出信号,并确定测量稳定裕度的电厂输入和输出(控制和测量信号)。

添加点(ST0{“theta ref”,“phi ref”,“r-ref”})%设定值命令添加点(ST0{“西塔”,“phi”,“r”})%相应的输出添加点(ST0{“你”,“是的”});

最后,使用调谐目标对象。本例使用以下要求:

  • 跟踪要求:政府的回应西塔,phi,R单步执行命令θ参考,菲尤参考,参考文献必须类似于具有1秒时间常数的解耦一阶响应

  • 稳定裕度:设备输入端的多变量增益和相位裕度U和工厂产出Y必须至少为5 dB和40度

  • 快速动力学:闭环极点的大小不得超过25,以防止快速动态和突然瞬变

%与参考模型1/(s+1)不匹配小于20%TrackReq=TuningGoal.StepTracking({“theta ref”,“phi ref”,“r-ref”},{“西塔”,“phi”,“r”},1); TrackReq.RelGap=0.2;%工厂输入和输出的增益和相位裕度MarginReq1=调整目标。边距(“你”,5,40);MarginReq2=TuningGoal.Margins(“是的”,5,40);%快速动力学的极限MaxFrequency=25;PoleReq=TuningGoal.Poles(0,0,MaxFrequency);

您现在可以使用系统联合调整所有控制器参数。这将返回调整后的版本ST1控制系统的设计ST0.

AllReqs=[TrackReq,MarginReq1,MarginReq2,PoleReq];ST1=systune(ST0,AllReqs);
最终:软=1.12,硬=Inf,迭代=73

最终值接近1,因此基本满足要求。在θ、φ、r中绘制阶跃命令的调谐响应:

T1=getIOTransfer(ST1{“theta ref”,“phi ref”,“r-ref”},{“西塔”,“phi”,“r”}); 步骤(T1,5)

上升时间约为2秒,无超调,交叉耦合小可视目标对每项要求进行更彻底的验证,包括对多变量稳定裕度进行目视评估(参见磁盘边距详情如下:

身材(“位置”,[100100900474])视图目标(所有需求,ST1)

检查PI控制器的调谐值和静态输出反馈增益。

可显示(ST1)
块1:rct_helico/PI1=1 Kp+Ki*--s,Kp=1.05,Ki=2.08名称:并行形式的PI1连续时间PI控制器。----------------------------------------块2:rct_helico/PI2=1 Kp+Ki*--s,Kp=-0.105,Ki=-1.35名称:并行形式的PI2连续时间PI控制器。----------------------------------------块3:rct_helico/PI3=1 Kp+Ki*--s,Kp=0.131,Ki=-2.21名称:并行形式的PI3连续时间PI控制器。----------------------------------------块4:rct_helico/SOF=D=u1 u2 u3 u4 u5 y1 2.219-0.3116-0.003342 0.786-0.01519 y2-0.1888-1.277 0.0185-0.08288-0.119 y3-0.01752-0.03005-0.06619名称:SOF静态增益。

内部循环的好处

您可能想知道静态输出反馈是否必要,以及PID控制器是否不足以控制直升机。这个问题很容易通过在内部回路打开的情况下重新调整控制器来回答。首先,通过在内部回路打开后添加回路打开来断开内部回路软的区块:

添加打开(ST0,“SOF”)

然后取下盖子软的从可调块列表中删除块,并将PI块重新参数化为具有正确循环符号的完整PID(从第一个设计推断)。

PID=PID(0,0.001,0.001,01);%PID控制器的初始估计移除块(ST0,“SOF”);setBlockParam(ST0,...“PI1”,可调PID(“C1”,PID),...“PI2”,可调PID(“C2”,-PID),...“PI3”,可调PID(“C3”,-PID);

重新调整三个PID控制器并绘制闭环阶跃响应。

ST2=系统(ST0,所有需求);
最终:软=4.94,硬=Inf,迭代=67
T2=getIOTransfer(ST2{“theta ref”,“phi ref”,“r-ref”},{“西塔”,“phi”,“r”});图,步骤(T2,5)

最终值不再接近1,阶跃响应确认上升时间、超调量和解耦方面的性能较差。这表明内环具有重要的稳定作用,应予以保留。

另见

||||

相关话题