双学位的自由度PID控制器

二自由度PID控制器包括比例项和导数项的设定值加权。二自由度PID控制器能够快速抑制干扰,而不显著增加设置点跟踪的超调。2-DOF PID控制器也有助于减轻参考信号变化对控制信号的影响。

您可以使用专门的模型对象表示PID控制器PID2pidstd2。本主题描述的在MATLAB 2自由度PID控制器的表示®。有关自动PID控制器整定信息,请参见PID控制器调优

连续时间2自由度PID控制器交涉

此示意图示出了使用2-DOF PID控制器的典型控制架构。

2自由度控制器的输出(ü)和它的两个输入([Rÿ)可以以平行形式或标准形式表示。两种形式不同的是用于表示控制器的比例、积分和导数动作的参数,如下表所示。

形成 公式
平行 (PID2对象)

ü = ķ p b [R - ÿ + ķ 一世 小号 [R - ÿ + ķ d 小号 Ť F 小号 + 1 C [R - ÿ

在此表示:

  • ķp=比例增益

  • ķ一世=积分器得到

  • ķd=微分增益

  • ŤF=微分滤波器时间

  • b上比例项=设定值重

  • C=导数项的设定点权重

标准(pidstd2对象)

ü = ķ p [ b [R - ÿ + 1 Ť 一世 小号 [R - ÿ + Ť d 小号 Ť d ñ 小号 + 1 C [R - ÿ ]

在此表示:

  • ķp=比例增益

  • Ť一世=积分时间

  • Ťd=微分时间

  • ñ=导数滤波器除数

  • b上比例项=设定值重

  • C=导数项的设定点权重

使用对应用程序方便的控制器表单。例如,如果你想用时间常数表示积分器和导数动作,使用标准形式。有关如何创建并行表单和标准表单控制器的示例,请参见PID2pidstd2引用页面,分别。

有关在离散时间表示PID控制器的信息,请参见离散时间比例 - 积分 - 微分(PID)控制器

二自由度控制架构

所述二自由度PID控制器的形式为一个两输入,一个输出控制器C2小号),如下面图中所示。从每个输入到输出的传递函数本身是一个PID控制器。

每个组成部分C[R小号)和Cÿ小号)是PID控制器,对比例和微分项不同的权重。例如,在连续的时间中,这些部件是由下式给出:

C [R 小号 = b ķ p + ķ 一世 小号 + C ķ d 小号 Ť F 小号 + 1 C ÿ 小号 = - [ ķ p + ķ 一世 小号 + ķ d 小号 Ť F 小号 + 1 ]

可以通过PID控制器转换成两输入,一输出的传递函数访问这些组件。例如,假设C2是一个两自由度的PID控制器,存储为PID2对象。

C2tf =特遣部队(C2);Cr = C2tf (1);Cy = C2tf (2);

C[R小号)是从第一输入的传递函数C2到输出。同样的,Cÿ小号)是从第二输入的传递函数C2到输出。

假设G是一个动态系统模型,如azpk模型,代表植物。建立闭环传递函数[Rÿ。请注意,Cÿ小号)循环具有正反馈,通过定义Cÿ小号)。

T =铬*反馈(G中,Cy,+ 1)

或者,使用连接命令直接用2自由度控制器建立一个等价的闭环系统C2。要做到这一点,设置InputNameOutputName的属性GC2

G.InputName ='U';G。OutputName ='Y';C2。Inputname = {'R''Y'};C2.OutputName ='U';T =连接(G C2,'R''Y');

还有,可以在其中一个分解二自由度PID控制器进入SISO组件的其它构造。对于具体的选择C小号)和X小号),以下每个配置都相当于2自由度的体系结构C2小号)。你可以获得C小号)和X小号)的getComponents命令。

前馈

前馈配置中,二自由度PID控制器被分解成一个常规SISO PID控制器,是以误差信号作为其输入,并且前馈控制器。

对于连续时间,平行形成2自由度PID控制器,所述组分由下式给出:

C 小号 = ķ p + ķ 一世 小号 + ķ d 小号 Ť F 小号 + 1 X 小号 = b - 1 ķ p + C - 1 ķ d 小号 Ť F 小号 + 1

访问使用这些组件getComponents

[C,X] = getComponents(C2, '前馈');

下面的命令从中构造闭环系统[Rÿ对于前馈配置。

T = G *(C + X)*反馈(1,G * C);

反馈

在反馈组态中,将2自由度PID控制器分解为常规单iso PID控制器和反馈控制器。

对于连续时间,平行形成2自由度PID控制器,所述组分由下式给出:

C 小号 = b ķ p + ķ 一世 小号 + C ķ d 小号 Ť F 小号 + 1 X 小号 = 1 - b ķ p + 1 - C ķ d 小号 Ť F 小号 + 1

访问使用这些组件getComponents

[C、X] = getComponents (C2,“反馈”);

下面的命令从中构造闭环系统[Rÿ为反馈配置。

T = G * C *反馈(1 G * (C + X));

过滤

在过滤器结构中,2自由度PID控制器被分解成一个常规SISO PID控制器和所述参考信号预过滤器。

对于连续时间,平行形成2自由度PID控制器,所述组分由下式给出:

C 小号 = ķ p + ķ 一世 小号 + ķ d 小号 Ť F 小号 + 1 X 小号 = b ķ p Ť F + C ķ d 小号 2 + b ķ p + ķ 一世 Ť F 小号 + ķ 一世 ķ p Ť F + ķ d 小号 2 + ķ p + ķ 一世 Ť F 小号 + ķ 一世

该过滤器X小号)还可以表示为比率: - [C[R小号)/Cÿ小号)]。

下面的命令从中构造闭环系统[Rÿ用于筛选器配置。

T = X *反馈(G * C, 1);

用于说明2自由度PID控制器进入这些配置的分解示例,请参见分解一个两自由度的PID控制器进入SISO组件

示出以上涉及连续时间,平行形式控制器的公式。标准形式的控制器和控制器以离散时间可以被分解成类似的配置。该getComponents命令适用于所有二自由度PID控制器对象。

也可以看看

||||

相关的例子

更多关于