二自由度PID控制器包括比例项和导数项的设定值加权。二自由度PID控制器能够快速抑制干扰,而不显著增加设置点跟踪的超调。2-DOF PID控制器也有助于减轻参考信号变化对控制信号的影响。
您可以使用专门的模型对象表示PID控制器PID2
和pidstd2
。本主题描述的在MATLAB 2自由度PID控制器的表示®。有关自动PID控制器整定信息,请参见PID控制器调优。
此示意图示出了使用2-DOF PID控制器的典型控制架构。
2自由度控制器的输出(ü)和它的两个输入([R和ÿ)可以以平行形式或标准形式表示。两种形式不同的是用于表示控制器的比例、积分和导数动作的参数,如下表所示。
形成 | 公式 |
---|---|
平行 (PID2 对象) |
在此表示:
|
标准(pidstd2 对象) |
在此表示:
|
使用对应用程序方便的控制器表单。例如,如果你想用时间常数表示积分器和导数动作,使用标准形式。有关如何创建并行表单和标准表单控制器的示例,请参见PID2
和pidstd2
引用页面,分别。
有关在离散时间表示PID控制器的信息,请参见离散时间比例 - 积分 - 微分(PID)控制器。
所述二自由度PID控制器的形式为一个两输入,一个输出控制器C2(小号),如下面图中所示。从每个输入到输出的传递函数本身是一个PID控制器。
每个组成部分C[R(小号)和Cÿ(小号)是PID控制器,对比例和微分项不同的权重。例如,在连续的时间中,这些部件是由下式给出:
可以通过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
。要做到这一点,设置InputName
和OutputName
的属性G
和C2
。
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控制器,所述组分由下式给出:
访问使用这些组件getComponents
。
[C,X] = getComponents(C2, '前馈');
下面的命令从中构造闭环系统[R至ÿ对于前馈配置。
T = G *(C + X)*反馈(1,G * C);
在反馈组态中,将2自由度PID控制器分解为常规单iso PID控制器和反馈控制器。
对于连续时间,平行形成2自由度PID控制器,所述组分由下式给出:
访问使用这些组件getComponents
。
[C、X] = getComponents (C2,“反馈”);
下面的命令从中构造闭环系统[R至ÿ为反馈配置。
T = G * C *反馈(1 G * (C + X));
在过滤器结构中,2自由度PID控制器被分解成一个常规SISO PID控制器和所述参考信号预过滤器。
对于连续时间,平行形成2自由度PID控制器,所述组分由下式给出:
该过滤器X(小号)还可以表示为比率: - [C[R(小号)/Cÿ(小号)]。
下面的命令从中构造闭环系统[R至ÿ用于筛选器配置。
T = X *反馈(G * C, 1);
用于说明2自由度PID控制器进入这些配置的分解示例,请参见分解一个两自由度的PID控制器进入SISO组件。
示出以上涉及连续时间,平行形式控制器的公式。标准形式的控制器和控制器以离散时间可以被分解成类似的配置。该getComponents
命令适用于所有二自由度PID控制器对象。
getComponents
|PID2
|pidTuner
|pidstd2
|pidtune