离散时间比例-积分-导数 (PID) 控制器
所有 PID 控制器对象类型 pid、pidstd、pid2 和 pidstd2 都可以表示离散时间 PID 控制器。
离散时间 PID 控制器表示
离散时间 PID 控制器由以下公式表示。
| 形式 | 公式 |
|---|---|
并联型 (pid) |
其中:
|
标准型 (pidstd) |
其中:
|
二自由度并联型 (pid2) | 二自由度控制器的输出 (u) 与其两个输入(r 和 y)之间的关系为: 在此表示中:
|
二自由度标准型(pidstd2 对象) |
在此表示中:
|
在所有这些表示形式中,IF(z) 和 DF(z) 分别是积分器和导数滤波器的离散积分器公式。使用控制器对象的 IFormula 和 DFormula 属性来设置 IF(z) 和 DF(z) 公式。下表显示了 IF(z) 和 DF(z) 的可用公式。Ts 是采样时间。
IFormula 或 DFormula | IF(z) 或 DF(z) |
|---|---|
ForwardEuler(默认) |
|
BackwardEuler |
|
Trapezoidal |
|
如果在创建控制器对象时未指定 IFormula、DFormula 或两者对应的值,则默认使用 ForwardEuler。有关设置和更改离散积分器公式的详细信息,请参阅控制器对象 pid、pidstd、pid2 和 pidstd2 的参考页。
创建离散时间标准型 PID 控制器
此示例说明如何创建标准型离散时间比例-积分-导数 (PID) 控制器,该 PID 控制器具有以下参数:Kp = 29.5、Ti = 1.13、Td = 0.15 N = 2.3 和采样时间 Ts 0.1:
C = pidstd(29.5,1.13,0.15,2.3,0.1,...
'IFormula','Trapezoidal','DFormula','BackwardEuler')此命令创建一个采用 和 的 pidstd 模型。
您可以使用 pid 以相同的方式为并联型控制器设置离散积分器公式。
标准型的离散时间二自由度 PI 控制器
使用梯形离散化公式创建一个标准型的离散时间二自由度 PI 控制器。使用 Name,Value 语法指定公式。
Kp = 1; Ti = 2.4; Td = 0; N = Inf; b = 0.5; c = 0; Ts = 0.1; C2 = pidstd2(Kp,Ti,Td,N,b,c,Ts,'IFormula','Trapezoidal')
C2 =
1 Ts*(z+1)
u = Kp * [(b*r-y) + ---- * -------- * (r-y)]
Ti 2*(z-1)
with Kp = 1, Ti = 2.4, b = 0.5, Ts = 0.1
Sample time: 0.1 seconds
Discrete-time 2-DOF PI controller in standard form
设置 Td = 0 创建没有导数项的 PI 控制器。如显示结果所示,此控制器未使用 N 和 c 的值。显示结果还显示,积分器使用了梯形公式。