主要内容

调谐多回路控制系统

这个示例展示了如何使用。来联合优化级联架构的内部和外部循环systune命令。

级联PID回路

串级控制通常用于实现平滑跟踪和快速抗扰。最简单的级联架构包括两个控制回路(内部和外部),如下面的框图所示。内环通常比外环更快,以在干扰传播到外环之前抑制它们。(金宝app在MATLAB®Onli金宝appne中不支持Simulink®)

open_system (“rct_cascade”

植物模型和带宽要求

在这个例子中,内环植物G2

$$ G_2(s) = $ frac{3}{s+2

还有外环植物G1

$ G_1(s) = $ frc {10}{(s+1)^3

G2 = zpk([]、2、3);G1 = zpk([],[-1 -1],10);

内环采用PI控制器,外环采用PID控制器。外环的带宽必须至少为0.2 rad/s,内环的带宽必须为10倍,以充分抑制干扰。

用SYSTUNE对PID控制器进行整定

在Simulink中对控制系统建模时,使用金宝appslTuner在Simulink Con金宝apptrol Design™中设置调优任务。列出可调块,标记信号rd2作为感兴趣的输入,并标记信号日元y2作为测量开环传输和指定环路形状的位置。

ST0 = slTuner (“rct_cascade”, {“C1”C2的});addPoint (ST0, {“r”“d2”“日元”“日元”})

查询的当前值C1C2在Simuli金宝appnk模型中使用showTunable.通过对Simulink模型的仿真,证实了在这些初始值下控制系统是不稳定的。金宝app

showTunable (ST0)
Block 1: rct_cascade/C1 = 1 Kp + Ki *——s with Kp = 0.1, Ki = 0.1名称:C1 parallel form连续时间PI控制器。----------------------------------- 块2:rct_cascade / C2 = 1 + Ki *——年代Kp = 0.1, Ki = 0.1名称:C2连续时间比例积分控制器并联形式。

接下来使用“LoopShape”要求来指定所需的内圈和外圈带宽。使用/ s $ 0.2美元作为外回路的目标回路形状,以增强增益交叉频率为0.2 rad/s的积分作用:

%外环路带宽= 0.2s =特遣部队(“年代”);Req1 = TuningGoal。LoopShape (“日元”, 0.2 / s);在y1处测量的%环路传输Req1。Name =“外循环”

使用2美元/ s $使内环比外环快十倍(更高的带宽)。要限制内环的传递,请确保通过指定打开外环日元作为一个循环开口:

%内环带宽= 2Req2 = TuningGoal。LoopShape (“日元”2 / s);在y2处测量的%环路传输Req2。机会=“日元”%,外循环在y1处打开Req2。Name =“内循环”

现在可以调整PID增益C1C2systune

圣= systune (ST0 [Req1 Req2]);
Final: Soft = 0.859, Hard = -Inf, Iterations = 67

使用showTunable来查看调整后的PID增益。

showTunable (ST)
Block 1: rct_cascade/C1 = 1s Kp + Ki *——+ Kd * -------- s Tf*s+1 with Kp = 0.0521, Ki = 0.0186, Kd = 0.0475, Tf = 0.00659----------------------------------- 块2:rct_cascade / C2 = 1 + Ki *——年代Kp = 0.721, Ki = 1.23名称:C2连续时间比例积分控制器并联形式。

验证设计

最终值小于1,这意味着systune成功地满足了两个回路形状的要求。通过检查调谐控制系统来确认这一点viewGoal

viewGoal ([Req1, Req2],圣)

注意,内部和外部环路具有所需的增益交叉频率。为了进一步验证设计,绘制对阶跃命令r和阶跃干扰d2的调谐响应图:

%对步骤命令的响应H = getIOTransfer(圣,“r”“日元”);clf、步骤(H, 30)、标题(“命令”

对阶跃干扰的响应H = getIOTransfer(圣,“d2”“日元”);步骤(H, 30)、标题(“扰动步”

一旦您对线性分析结果感到满意,请使用writeBlockValue将调优的PID增益写回Simulink块。金宝app然后,您可以在Simulink中进行更彻底的验证。金宝app

writeBlockValue (ST)

MATLAB中的等效工作流

如果没有控制系统的Simulink模型,可金宝app以使用工厂的LTI模型和control Design块执行相同的步骤,对可调元素建模。

图1:级联架构

首先建立可调PI和PID控制器的参数模型。

C1 = tunablePID (“C1”“pid”);C2 = tunablePID (C2的“π”);

然后使用“分析点”块来标记环路的开放位置日元y2

LS1 = AnalysisPoint (“日元”);LS2 = AnalysisPoint (“日元”);

最后,创建一个闭环模型T0通过闭合每个反馈回路来控制整个控制系统。结果是一个基于可调元素的广义状态空间模型C1C2

InnerCL =反馈(LS2 * G2 * C2, 1);T0 =反馈(G1 * InnerCL * C1, LS1);T0。InputName =“r”;T0。OutputName =“日元”

现在可以调整PID增益C1C2systune

T = systune (T0, [Req1 Req2]);
Final: Soft = 0.86, Hard = -Inf, Iterations = 136

像以前一样,用getIOTransfer计算和绘制对阶跃命令r和进入该位置的阶跃扰动的调谐响应y2

%对步骤命令的响应H = getIOTransfer (T)“r”“日元”);clf、步骤(H, 30)、标题(“命令”

对阶跃干扰的响应H = getIOTransfer (T)“日元”“日元”);步骤(H, 30)、标题(“扰动步”

您还可以绘制内环和外环的开环增益,以验证带宽要求。注意-1符号来计算负反馈开环传输:

L1 = getLoopTransfer (T)“日元”1);%交叉应在。2L2 = getLoopTransfer (T)“日元”, 1“日元”);%交叉应在2bodemag (L1, L2,{1飞行,1 e2}),网格传奇(“内循环”“外循环”

另请参阅

|

相关的话题