pidstd
创建一个PID控制器在标准形式,转化为标准形式PID控制器
语法
C = pidstd (Kp、钛、Td, N)
C = pidstd (Kp、钛、Td, N, Ts)
C = pidstd(系统)
C = pidstd (Kp)
C = pidstd (Kp、钛)
C = pidstd (Kp、钛、Td)
C = pidstd(…、名称、值)
C = pidstd
描述
创建了一个连续时间PIDF与一阶导数过滤器(PID)控制器对象标准形式。控制器比例增益C
= pidstd (Kp
,“透明国际”
,道明
,N
)Kp
、积分和微分时间“透明国际”
和道明
,一阶导数过滤因子N
:
创建一个离散时间控制器样品时间C
= pidstd (Kp
,“透明国际”
,道明
,N
,Ts
)Ts
。离散时间控制器:
如果(z),DF(z)是离散积分公式积分器和导数过滤器。默认情况下,
选择不同的离散积分公式,使用IFormula
和DFormula
输入。(见属性更多信息IFormula
和DFormula
)。如果DFormula
=“ForwardEuler”
(默认值)N
≠正
,然后Ts
,道明
,N
必须满足Td / N > Ts / 2
。这个需求可以确保一个稳定的导数过滤柱。
将动态系统C
= pidstd (sys
)sys
一个标准的形式pidstd
控制器对象。
创建了一个连续时间的比例(P)控制器C
= pidstd (Kp
)“透明国际”
=正
,道明
= 0,N
=正
。
创建一个比例积分(PI)控制器C
= pidstd (Kp
,“透明国际”
)道明
= 0和N
=正
。
创建一个比例、积分和微分(PID)控制器C
= pidstd (Kp
,“透明国际”
,道明
)N
=正
。
创建一个控制器或将一个动态系统C
= pidstd (…名称,值
)pidstd
控制器对象由一个或多个指定附加选项名称,值
对参数。
输入参数
|
比例增益。
默认值:1 |
|
积分器。
默认值: |
|
微分时间。
当 默认值:0 |
|
导数过滤因子。
当 默认值: |
|
样品时间。 创建一个离散时间
默认值:0(连续时间) |
|
输出动态系统转换为标准
|
名称-值参数
指定可选的逗号分隔条名称,值
参数。的名字
参数名称和吗价值
相应的价值。的名字
必须出现在引号。您可以指定几个名称和值对参数在任何顺序Name1, Value1,…,的家
。
使用名称,值
语法设置数值积分公式IFormula
和DFormula
一个离散时间pidstd
控制器,或设置其他对象属性等InputName
和OutputName
。可用的属性信息pidstd
控制器对象,看到属性。
输出参数
|
控制器类型(P,π,PD、PDF、PID PIDF)取决于的值 当输入 |
属性
|
比例增益。 |
|
积分时间。 |
|
微分时间。 |
|
导数过滤因子。 |
|
离散积分公式如果(z离散时间的积分器
当 默认值: |
|
离散积分公式DF(z离散时间的导数过滤器
当 默认值: |
|
时间延迟对系统输入。 |
|
时间延迟对系统输出。 |
|
样品时间。对于连续时间模型, 改变这个属性不离散化或重新取样模型。使用 默认值: |
|
单位时间变量,样品时间
改变对其他属性,这个属性没有影响,因此改变整个系统的行为。使用 默认值: |
|
输入通道名称,指定为一个特征向量。使用这个属性名称输入通道的控制器模型。例如,指定名称 C.InputName=“错误”;
您可以使用速记符号 输入通道名称有几种用途,包括:
默认值:空的特征向量, |
|
输入通道单位,指定为一个特征向量。使用这个属性来跟踪输入信号的单位。例如,指定浓度单位 C。我nputUnit =《摩尔/ m ^ 3》;
默认值:空的特征向量, |
|
输入通道组。此属性不需要PID控制器模型。 默认值: |
|
输出通道名称,指定为一个特征向量。使用这个属性名称输出通道的控制器模型。例如,指定名称 C.OutputName=“控制”;
您可以使用速记符号 输入通道名称有几种用途,包括:
默认值:空的特征向量, |
|
输出通道单位,指定为一个特征向量。使用这个属性来跟踪输出信号单元。例如,分配单位 C。OutputUnit =“伏”;
默认值:空的特征向量, |
|
输出通道组。此属性不需要PID控制器模型。 默认值: |
|
系统名称、指定为一个特征向量。例如, 默认值: |
|
任何你想要的文本关联系统,存储为一个字符串或一个单元阵列的特征向量。您提供的属性存储任何数据类型。例如,如果 sys1。笔记=“sys1字符串。”;sys2。笔记=sys2有一个特征向量。;sys1。笔记sys2。笔记 ans =“sys1字符串。”ans = sys2有一个特征向量。 默认值: |
|
任何你想要的类型的数据与系统,指定为任何MATLAB®数据类型。 默认值: |
|
采样网格模型数组,指定为一个数据结构。 抽样模型推导出来的数组的一个或多个自变量,这个属性追踪与数组中的每个模型相关的变量值。这个信息显示或绘制模型时出现数组。使用此信息来跟踪结果返回给独立变量。 数据结构的字段名称设置为抽样变量的名字。设置字段值的采样与数组中的每个模型相关的变量值。所有抽样变量应该是数字和标量值,和所有数组的采样值应该匹配模型的维度的数组。 例如,假设您创建一系列11-by-1的线性模型, sysarr。SamplingGrid =结构(“时间”0:10)
同样的,假设你创建一个6-by-9模型数组, [ζ,w] = ndgrid(< 6的值ζ>、< 9 w的值>)。SamplingGrid =结构(“ζ”ζ,' w 'w) 当您显示 米 (::1,- 1)(ζ= 0.3 w = 5) = 25 - - - - - - - - - - - - - - - - s ^ 2 + 3 s + 25米(:,:,2,1)(ζ= 0.35 w = 5) = 25 - - - - - - - - - - - - - - - - - s ^ 2 + 3.5 s + 25… 生成的模型阵列的线性化模型金宝app®模型在多个参数值或操作点,软件填充 默认值: |
例子
创建PDF控制器连续时间标准形式
创建一个连续时间标准形式PDF控制器1比例增益,微分时间3、6的过滤因子。
C = pidstd(1正3,6);
C = s Kp * (1 + Td * - - - - - - - - - - - -) (Td / N)与Kp * s + 1 = 1, Td = 3, N = 6连续时间PDF控制器标准形式
显示器显示控制器类型、公式和系数值。
创建离散PI控制器与梯形离散化公式
创建一个离散时间控制器,设置的值Ts
使用名称,值
语法。
C = pidstd (1, 0.5,“t”,0.1,“IFormula”,“梯形”)% s t = 0.1
这个命令生成的结果:
离散PI控制器标准形式:1 t * (z + 1) Kp * (1 + - - - - - * - - - - - - - - - -) Ti 2 * (z 1) Kp = 1, Ti = 0.5, t = 0.1
或者,您可以创建相同的离散时间控制器通过提供Ts
毕竟四的第5个参数PID参数Kp
,“透明国际”
,道明
,N
。
C = pidstd(5, 2.4, 0,正无穷,0.1,“IFormula”,“梯形”);
创建PID控制器和设置系统属性
创建一个PID控制器和动态系统属性设置InputName
和OutputName
。
C = pidstd (1、0.5、3、“InputName”,“e”,“OutputName”,“u”);
创建网格标准形式的PID控制器
创建一个2×3网格PI控制器的比例获得从1 - 2和积分时间从5 - 9。
创建一个网格的PI控制器比例增益不同的行,行和积分时变列列。为此,从数组代表收益。
Kp = (1 1 1; 2 2 2);Ti = [5:2:9; 5:2:9];pi_array = pidstd (Kp、钛、“t”,0.1,“IFormula”,“BackwardEuler”);
这些命令产生一系列2×3的离散时间pidstd
对象。所有pidstd
数组中的对象必须具有相同的样品时间,离散积分公式,和动态系统属性(如InputName
和OutputName
)。
或者,您可以使用堆栈
命令来构建数组pidstd
对象。
C = pidstd (1、5、0.1)% PID控制器Cf = pidstd (1、5、0.1、0.5)% PID控制器与过滤器pid_array =堆栈(2 C Cf);%堆栈沿着二维数组
这些命令生成一个1×2组控制器。输入命令:
大小(pid_array)
看到结果
1 x2的PID控制器。每个PID 1输出和输入。
将平行形式pid
控制器标准形式
并联PID形式表达控制器操作的一个比例,积分,和衍生品收益Kp,K我,Kd和一个滤波器时间常数Tf。您可以转换一种并行控制器parsys
标准形式使用pidstd
,前提是:
parsys
不是一个纯积分器(I)控制器。的收益
Kp
,Ki
,Kd
的parsys
都有相同的信号。
parsys = pid (2、3、4、5);%标准形式控制器stdsys = pidstd (parsys)
这些命令生成一个平行形式控制器:
连续时间PIDF控制器标准形式:1 1 s Kp * (1 + * - - - - - - - - - - - + * - - - - - - - - - - - - Td) Ti (Td / N) *年代和Kp = 2 + 1, Ti = 0.66667, Td = 2, N = 0.4
创建pidstd
从连续时间动态系统控制器
动态系统
代表一个PID控制器。使用pidstd
获得H(年代)标准形式的PID参数Kp,T我,Td。
H = zpk ([1, 2] 0 3);C = pidstd (H)
这些命令产生的结果是:
连续时间PID控制器标准形式:1 1 Kp *(1 +——道明* * - + s) Ti年代Kp = 9, Ti = 1.5, Td = 0.33333
创建pidstd
从离散时间动态系统控制器
你能将一个离散时间动态系统,代表了一种PID控制器与导数过滤标准pidstd
的形式。
% PIDF控制器zpk表达形式sys = zpk ([-0.5, -0.6], -0.2 [1], 3,“t”,0.1);
由此产生的pidstd
对象取决于您所指定的离散积分公式IFormula
和DFormula
。
例如,如果你使用默认值ForwardEuler
这两个公式:
C = pidstd(系统)
你得到的结果:
离散时间PIDF控制器标准形式:1 Ts 1 Kp * (1 + - - - - - - - - - - - * + * - - - - - - - - - - - - - - - - - - Td) Ti z 1 (Td / N) + Ts / (z 1) Kp = 2.75, = 0.045833, Td = 0.0075758, N = 0.090909, t = 0.1
对于这个特定的sys
,你不能写sys
在标准PID形式使用BackwardEuler
公式DFormula
。这样做会导致N
< 0,这是不允许的。在这种情况下,pidstd
返回一个错误。
同样的,你不能写sys
使用的标准形式梯形
集成商的公式。这样做会导致负的“透明国际”
和道明
,返回一个错误。
离散化连续时间pidstd
控制器
首先,使离散控制器使用“zoh”
的方法汇集
。
Cc = pidstd (1、2、3、4);%连续时间pidf控制器Cd1 =汇集(Cc, 0.1,“zoh”)
离散时间PIDF控制器标准形式:1 Ts 1 Kp * (1 + - - - - - - - - - - - * + * - - - - - - - - - - - - - - - - - - Td) Ti z 1 (Td / N) + Ts / (z 1) Kp = 1, Ti = 2, Td = 3.2044, N = 4, Ts = 0.1
由此产生的离散时间控制器使用ForwardEuler
(T年代/ (z1))为IFormula
和DFormula
。
离散积分公式的离散控制器依赖汇集
离散化方法,如中描述提示。使用不同的IFormula
和DFormula
,直接设置Ts
,IFormula
,DFormula
到所需的值:
张= Cc;张cd。Ts=0。1;张cd。如果或mula =“BackwardEuler”;张cd。DF或mula =“BackwardEuler”;
这些命令不计算新的离散控制器参数值。看到这,输入:
张
得到结果:
离散时间PIDF控制器标准形式:1 t * z 1 Kp *(1 +——道明* * - - - - - - + - - - - - - - - - - - - - - - - - -)Ti z 1 (Td / N) + Ts * z / (z 1) Kp = 1, Ti = 2, Td = 3, N = 4, Ts = 0.1
提示
使用
pidstd
要么创建一个pidstd
从已知的PID控制器对象增益、积分和微分时间,和过滤因子,或将一个动态系统模型pidstd
对象。创建数组
pidstd
控制器:一个数组的
pidstd
控制器,每个控制器必须具有相同的样品时间Ts
和离散积分公式IFormula
和DFormula
。创建或转换为平行形式控制器,使用
pid
。并行形式表达控制器操作比例,积分,和衍生品收益Kp,K我和Kd和一个滤波器时间常数Tf:有两种方法可以使离散连续时间
pidstd
控制器:使用
汇集
命令。汇集
计算新的离散控制器参数值。离散积分公式的离散控制器依赖汇集
您使用离散化方法,如如下表所示。汇集
离散化方法IFormula
DFormula
“zoh”
ForwardEuler
ForwardEuler
“呸”
梯形
梯形
“tustin”
梯形
梯形
“冲动”
ForwardEuler
ForwardEuler
“匹配”
ForwardEuler
ForwardEuler
如果你需要不同的离散积分公式,你可以通过直接离散化控制器设置
Ts
,IFormula
,DFormula
到所需的值。(有关更多信息,请参见离散化连续时间pidstd控制器)。然而,这种方法并不计算新的增益和filter-constant值离散控制器。因此,这种方法可能产生贫困的连续时间和离散时间之间的匹配pidstd
控制器比使用汇集
。