调谐多回路控制系统

这个例子展示了如何联合调级联体系结构的内环和外环与systune命令。

级联PID回路

级联控制通常用于实现平滑跟踪和快速抑制干扰。最简单的级联架构包括两个控制循环(内部和外部),如下面的框图所示。在干扰传播到外环之前,内环通常比外环更快地抑制干扰。(万博1manbetxMATLAB在万博1manbetx线不支持Simulink®)

open_system(“rct_cascade”)

植物模型和带宽要求

在这个例子中,内环路设备G2

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

和外环植物G1

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

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

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

用SYSTUNE调整PID控制器

当控制系统在Simulink中建模时,使用万博1manbetxslTuner在Simulink控制设计万博1manbetx™接口设置优化任务。列出可调块,标记信号rd2作为感兴趣的输入,并标记信号日元y2作为测量开环传输和指定环形状的位置。

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

的当前值C1C2在Simuli万博1manbetxnk模型中使用showTunable。通过模拟仿真模型证实的控制系统是用于这些初始值是不稳定的。万博1manbetx

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

接下来使用“LoopShape”的要求来指定内环和外环的所需带宽。用0.2 $ / S $作为外环的目标环路形状以在0.2弧度执行具有增益交叉频率积分动作/ S:

%外环带宽= 0.2s =特遣部队(“年代”);Req1 = TuningGoal.LoopShape (“日元”,0.2 / S);在Y1%环传递测量Req1。Name =“外环”;

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

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

现在,您可以调整PID涨势C1C2systune:

圣= systune (ST0 [Req1 Req2]);
Final: Soft = 0.86, Hard = -Inf, iteration = 61

showTunable看调谐PID增益。

showTunable (ST)
块1:rct_cascade / C1 = 1秒的Kp +的Ki * --- + Kd *是--------小号TF * S + 1的Kp = 0.052,奇= 0.0187,Kd值在0.0471,TF = 0.0124名称:在并行形式C1连续时间PIDF控制器。-----------------------------------块2:rct_cascade / C2 = 1的Kp +的Ki * ---S采用的Kp = 0.721,奇= 1.24名称:并联形式C2连续时间PI控制器。

验证设计

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

viewGoal([REQ1,REQ2],ST)

注意,内环和外环具有所需的增益交叉频率。为了进一步验证设计,绘制到步骤指令r和扰动步骤d2的调谐响应:

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

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

一旦您对线性分析结果感到满意,请使用writeBlockValue写调谐PID增益回到所述Simulink模块。万博1manbetx然后,您可以在Simulink进行更加彻底的验证。万博1manbetx

writeBlockValue (ST)

在MATLAB等效工作流程

如果您没有控制系统的Simulink模型,万博1manbetx那么您可以使用工厂的LTI模型执行相同的步骤,并使用控制设计块对可调元素建模。

图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]);
决赛:软= 0.86,硬= -Inf,迭代= 125

像以前一样,用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}),网格传奇(“内循环”,“外环”)

另请参阅

|

相关话题