创建标准形式的PID控制器,转换为标准形式的PID控制器
C = PIDSTD(kp,ti,td,n)
C = PIDSTD(KP,TI,TD,N,TS)
C=pidstd(系统)
C = PIDSTD(KP)
C = PIDSTD(KP,TI)
C = PIDSTD(KP,TI,TD)
C = PIDSTD(...,名称,值)
c = pidstd.
以标准形式创建连续时间PIDF(PID使用一阶导数滤波器)控制器对象。控制器具有比例增益C
= PIDSTD(kp.
,TI.
,一个
,N
)kp.
,积分和衍生时间TI.
和一个
,以及一阶衍生滤波器除数N
:
使用采样时间创建离散时间控制器C
= PIDSTD(kp.
,TI.
,一个
,N
,TS.
)TS.
.离散时间控制器是:
如果(Z) 和DF(Z)是离散集成商公式对于积分器和衍生滤波器。默认情况下,
要选择不同的离散积分公式,请使用iFormula.
和达格拉姆
输入。(看特性有关的更多信息iFormula.
和达格拉姆
). 如果达格拉姆
='forvooreuler'
(默认值)和N
≠INF.
那么TS.
,一个
, 和N
必须满足TD / N> TS / 2
. 这一要求确保了稳定的导数滤波器极。
转换动态系统C
= PIDSTD(SYS.
)SYS.
以标准形式PIDSTD.
控制器对象。
创建一个连续时间比例(P)控制器C
= PIDSTD(kp.
)TI.
=INF.
,一个
= 0,和N
=INF.
.
创建比例和积分(PI)控制器C
= PIDSTD(kp.
,TI.
)一个
=0和N
=INF.
.
创建比例、积分和微分(PID)控制器C
= PIDSTD(kp.
,TI.
,一个
)N
=INF.
.
创建控制器或将动态系统转换为aC
= PIDSTD(...,名称,价值
)PIDSTD.
控制器对象具有一个或多个指定的附加选项名称,价值
对论点。
|
比例增益。
违约:1. |
|
积分器时间。
违约: |
|
衍生时间。
什么时候 违约:0 |
|
导数滤波器除数。
什么时候 违约: |
|
采样时间。 创造离散时间
违约:0(连续时间) |
|
Siso动态系统转换为标准
|
指定可选的逗号分隔的字符对名称,价值
论点。名称
是参数名和价值
是相应的价值。名称
必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen
.
采用名称,价值
设置数值积分公式的语法iFormula.
和达格拉姆
离散时间PIDSTD.
控制器,或设置其他对象属性,例如输入名称
和outputName.
.有关可用属性的信息PIDSTD.
控制器对象,看特性.
|
控制器类型(P,PI,PD,PDF,PID,PIDF)取决于值 当输入时 |
|
比例增益。 |
|
积分时间。 |
|
衍生时间。 |
|
导数滤波器除数。 |
|
离散积分公式如果(Z)对于离散时间的集成商
什么时候 违约: |
|
离散积分公式DF(Z)对于离散时间系统的导数滤波器
什么时候 违约: |
|
系统输入上的时间延迟。 |
|
系统输出的时间延迟。 |
|
采样时间。对于连续时间模型, 更改此属性不会离散或重新确定模型。采用 违约: |
|
单位为时间变量,采样时间
更改此属性对其他属性没有影响,因此更改整体系统行为。采用 违约: |
|
输入通道名称,指定为字符向量。使用此属性来命名控制器模型的输入通道。例如,分配名称 c.InputName =.'错误';
您可以使用速记表示法 输入通道名称有多种用途,包括:
违约:空字符矢量, |
|
输入通道单元,指定为字符向量。使用此属性跟踪输入信号单元。例如,分配集中单位 C.InputUnit =‘mol/m^3’;
违约:空字符矢量, |
|
输入通道组。PID控制器模型不需要此属性。 违约: |
|
输出通道名称,指定为字符向量。使用此属性命名控制器模型的输出通道。例如,分配名称 c.outputname =.'控制';
您可以使用速记表示法 输入通道名称有多种用途,包括:
违约:空字符矢量, |
|
输出通道单元,指定为字符向量。使用此属性跟踪输出信号单元。例如,分配单位 c.outputUnit ='伏特';
违约:空字符矢量, |
|
输出通道组。PID控制器模型不需要此属性。 违约: |
|
系统名称,指定为字符向量。例如, 违约: |
|
您要与系统关联的任何文本,存储为字符串或字符向量的单元格数组。该属性存储您提供的任何数据类型。例如,如果 sys1.notes =.“sys1有一个字符串。”;sys2.notes ='sys2有一个字符矢量。';sys1.notes sys2.notes. ans=“sys1有一个字符串。”ans=“sys2有一个字符向量。” 违约: |
|
要与系统关联的任何类型的数据,指定为任何MATLAB®数据类型。 违约: |
|
用于模型阵列的采样网格,指定为数据结构。 对于通过采样一个或多个独立变量而派生的模型数组,此属性跟踪与数组中每个模型关联的变量值。显示或绘制模型阵列时出现此信息。使用此信息将跟踪结果追溯到独立变量。 将数据结构的字段名称设置为采样变量的名称。将字段值设置为与数组中的每个模型关联的采样变量值。所有采样变量都应为数字和标量值,并且所有采样值阵列应匹配模型阵列的尺寸。 例如,假设您创建一个11×1数组的线性模型, sysarr.samplinggrid = struct('时间',0:10)
同样,假设您创建了一个6×9的型号数组, [zeta,w] = ndgrid( 当你展示时 M m(:,:,1,1)[zeta = 0.3,w = 5] = 25 ------------- S ^ 2 + 3 s + 25 m(:, :,:2,1)[Zeta = 0.35,w = 5] = 25 --------------- S ^ 2 + 3.5 s + 25 ... 对于通过Simulink线性化生成的模型阵列金宝app®软件填充多个参数值或操作点的模型 违约: |
创建具有比例增益1,导数3的连续标准形式PDF控制器,导数3和滤波器除数为6。
C = PIDSTD(1,INF,3,6);
C=s Kp*(1+Td*-------------)(Td/N)*s+1,Kp=1,Td=3,N=6标准格式的连续时间PDF控制器
显示屏显示控制器类型、公式和系数值。
要创建一个离散时间控制器,请设置值TS.
使用名称,价值
语法。
C = PIDSTD(1,0.5,'ts',0.1,"伊夫莫拉",“梯形”)%Ts=0.1s
此命令产生结果:
标准形式的离散时间PI控制器:1 ts *(z + 1)kp *(1 + ---- * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ),带有kp = 1,ti的ti 2 *(z-1)= 0.5,TS = 0.1
或者,您可以通过提供来创建相同的离散时间控制器TS.
作为所有四个PID参数后的第五个论点kp.
,TI.
,一个
, 和N
.
C = PIDSTD(5,2.4,0,INF,0.1,"伊夫莫拉",“梯形”);
创建PID控制器并设置动态系统属性输入名称
和outputName.
.
C=pidstd(1,0.5,3,'InputName','e','outputname',“你”);
创建一个2×3电网的PI控制器,比例增益范围从5-9的1-2和积分时间范围。
创建一个PI控制器网格,其比例增益逐行变化,整列时间变化。为此,请从表示增益的数组开始。
kp = [1 1 1; 2 2 2];Ti = [5:2:9; 5:2:9];pi_array = pidstd(kp,ti,'ts',0.1,"伊夫莫拉",'背面灯');
这些命令产生了一个2×3的离散时间PIDSTD.
物体。全部PIDSTD.
阵列中的对象必须具有相同的采样时间,离散集成器公式和动态系统属性(例如输入名称
和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)
看到结果
1x2 PID控制器数组。每个PID都有1个输出和1个输入。
PID
控制器到标准形式并联PID形式以比例、积分和微分增益表示控制器动作KP,K我, 和KD和过滤时间常数TF.您可以转换并行表单控制器奇障
使用标准形式PIDSTD.
,提供:
奇障
不是一个纯积分器(I)控制器。
收益kp.
,ki.
, 和kd.
的奇障
都有相同的标志。
parsys=pid(2,3,4,5);%标准表格控制器stdsys = pidstd(寄宿)
这些命令产生并行形式控制器:
标准形式的连续时间PIDF控制器:1 1s Kp*(1+----------*+Td*--------------Ti-s(Td/N)*s+1,Kp=2,Ti=0.66667,Td=2,N=0.4
PIDSTD.
连续时间动态系统的控制器动态系统
表示PID控制器。采用PIDSTD.
取得H(S)根据标准形式的PID参数KP,T我, 和TD.
H = ZPK([ - 1,-2],0,3);C = PIDSTD(H)
这些命令产生以下结果:
以标准形式的连续时间PID控制器:1 1 kp *(1 + ---- * --- + Td * s)Ti s,带有kp = 9,ti = 1.5,td = 0.33333
PIDSTD.
离散动态系统的控制器您可以转换一个离散时间动态系统,该系统表示具有衍生滤波器的PID控制器到标准PIDSTD.
形式。
%PIDF控制器以ZPK形式表示SYS = ZPK([ - 0.5,-0.6],[1-0.2],3,'ts',0.1);
所结果的PIDSTD.
对象取决于您指定的离散集成器公式iFormula.
和达格拉姆
.
例如,如果使用默认值前向欧拉
对于两个公式:
C=pidstd(系统)
你获得结果:
标准形式的离散时间PIDF控制器:1 TS 1 KP *(1 + ---- * ------ + TD * --------------)TI Z-1(TD / N)+ TS /(Z-1)具有KP = 2.75,TI = 0.045833,TD = 0.0075758,n = 0.090909,TS = 0.1
对于这个特别的SYS.
,你不能写SYS.
使用标准PID形式使用背向后浮雕
用于的公式达格拉姆
. 这样做将导致N
<0,不允许。在这种情况下,PIDSTD.
返回错误。
同样,你不能写SYS.
用标准形式使用梯形
两个集成商的公式。这样做会导致负面TI.
和一个
,它还返回一个错误。
PIDSTD.
控制器首先,将控制器离散化使用“佐伊”
方法C2D.
.
Cc=pidstd(1,2,3,4);%连续时间PIDF控制器CD1 = C2D(CC,0.1,“佐伊”)
标准形式的离散时间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
由此产生的离散时间控制器使用前向欧拉
(TS/(Z-1)) 对彼此而言iFormula.
和达格拉姆
.
离散控制器的离散积分器公式取决于C2D.
离散化方法,如上所述提示.使用不同的iFormula.
和达格拉姆
,直接设置TS.
,iFormula.
, 和达格拉姆
到所需的值:
CD2 = CC;CD2.TS = 0.1;CD2.Formula ='背面灯';CD2.dformula ='背面灯';
这些命令不会计算离散化控制器的新参数值。要查看此信息,请输入:
CD2.
要获得结果:
标准形式的离散时间PIDF控制器:1 TS * Z 1 KP *(1 + ---- * ------ + Td * ------------------)Ti Z-1(TD / N)+ TS * Z /(Z-1)具有KP = 1,Ti = 2,Td = 3,n = 4,Ts = 0.1
采用PIDSTD.
要么创建一个PIDSTD.
控制器对象来自已知的PID增益,积分和衍生时间,以及过滤除数,或将动态系统模型转换为aPIDSTD.
目的。
创建PIDSTD.
控制器:
在一系列中PIDSTD.
控制器,每个控制器必须具有相同的采样时间TS.
和离散积分式公式iFormula.
和达格拉姆
.
要创建或转换为并行表单控制器,请使用PID
.并行形式在比例,积分和衍生增益方面表达了控制器动作KP,K我和KD和过滤时间常数TF:
有两种方法可以离散连续时间PIDSTD.
控制器:
使用C2D.
命令。C2D.
计算离散化控制器的新参数值。离散化控制器的离散积分公式取决于C2D.
您使用的离散化方法,如下表所示。
C2D. 离散化方法 |
iFormula. |
达格拉姆 |
---|---|---|
“佐伊” |
前向欧拉 |
前向欧拉 |
'foh' |
梯形 |
梯形 |
“塔斯汀” |
梯形 |
梯形 |
'冲动' |
前向欧拉 |
前向欧拉 |
“匹配” |
前向欧拉 |
前向欧拉 |
如果您需要不同的离散积分公式,可以通过直接设置TS.
,iFormula.
, 和达格拉姆
到所需的值。(有关更多信息,请参阅离散时间PIDSTD控制器。)但是,此方法不计算离散控制器的新增益和滤波器常数值。因此,该方法可能会在连续时间和离散时间之间产生较差的匹配PIDSTD.
控制器比使用C2D.
.