传递函数模型
使用特遣部队
建立实值或复值传递函数模型,或进行转换动态系统模型传递函数形式。
传递函数是线性定常系统的频域表示。例如,考虑一个用传递函数表示的连续SISO动态系统系统(s) = N (s) / D (s)
,在那里s = jw
和N(年代)
和D (s)
分别称为分子多项式和分母多项式。的特遣部队
模型对象可以表示连续时间或离散时间下的SISO或MIMO传递函数。
您可以通过直接指定其系数,或者通过转换另一种类型的模型(例如状态空间模型)来创建传递函数模型对象党卫军
)转换为传递函数形式。有关更多信息,请参见转移函数.
分子
- - - - - -传递函数的分子系数纽约
——- - - - - -ν
行向量的单元格数组传递函数的分子系数,记为:
多项式系数的行向量。
一个纽约
——- - - - - -ν
以指定MIMO传递函数的行向量单元数组,其中纽约
是输出数,和ν
为输入的个数。
当你创建传递函数时,按幂次递减的顺序指定分子系数。例如,如果传递函数分子是3 s ^ 2 - 4 + 5
,然后指定分子
作为(3 4 5)
.对于一个有分子的离散时间传递函数2 z 1
,设置分子
来(2 - 1)
.
也是一种性质特遣部队
对象。有关更多信息,请参见分子.
分母
- - - - - -传递函数的分母系数纽约
——- - - - - -ν
行向量的单元格数组分母系数,具体为:
多项式系数的行向量。
一个纽约
——- - - - - -ν
以指定MIMO传递函数的行向量单元数组,其中纽约
输出的数量是和吗ν
为输入的个数。
当您创建传递函数时,按照幂次递减的顺序指定分母系数。例如,如果传递函数分母是7 s ^ 2 + 8 s-9
,然后指定分母
作为(7 8 9)
.对于一个带分母的离散时间传递函数2 z ^ 2 + 1
,设置分母
来(2 0 1)
.
也是一种性质特遣部队
对象。有关更多信息,请参见分母.
ts
- - - - - -样品时间样本时间,指定为标量。也是一种性质特遣部队
对象。有关更多信息,请参见Ts.
ltiSys
- - - - - -动态系统动态系统,指定为SISO或MIMO动态系统模型或一系列动态系统模型。你可以使用的动态系统包括:
米
- - - - - -静态增益静态增益,指定为标量或矩阵。系统的静态增益或稳态增益表示稳态条件下输出与输入的比率。
组件
- - - - - -鉴定模型的组成部分'衡量'
(默认)|“噪音”
|“增强”
已识别模型要转换的组件,指定为下列之一:
'衡量'
-转换的测量分量sys
.
“噪音”
-转换的噪声成分sys
“增强”
-转换的测量和噪声成分sys
.
组件
只适用于当sys
是已识别的LTI模型。
有关已识别的LTI模型及其测量和噪声成分的更多信息,请参见确定了LTI模型.
sys
-输出系统模型特遣部队
模型对象|一族
模型对象|号航空母舰
模型对象输出系统模型,返回为:
传递函数(特遣部队
)模型对象,当分子
和分母
输入参数是数字数组。
广义状态空间模型(一族
)对象,当分子
或分母
输入参数包括可调参数,例如realp
参数或广义矩阵(genmat
).例如,请参见可调的低通滤波器.
不确定状态空间模型(号航空母舰
)对象,当分子
或分母
输入参数包括不确定参数。使用不确定模型需要鲁棒控制工具箱软件。例如,请参见不确定系数的传递函数(鲁棒控制工具箱)。
分子
- - - - - -分子系数纽约
——- - - - - -ν
行向量的单元格数组分子系数,具体为:
多项式系数的行向量,按幂递减的顺序排列变量
值“年代”
,“z”
,“p”
,或“问”
)或按照权力上升的顺序(为变量
值“z ^ 1”
或“问^ 1”
).
一个纽约
——- - - - - -ν
以指定MIMO传递函数的行向量单元数组,其中纽约
输出的数量是和吗ν
为输入的个数。单元格数组的每个元素指定给定输入/输出对的分子系数。如果你指定两者分子
和分母
作为单元格数组,它们必须具有相同的维数。
的系数分子
既可以是实值,也可以是复值。
分母
- - - - - -分母系数纽约
——- - - - - -ν
行向量的单元格数组分母系数,具体为:
多项式系数的行向量,按幂递减的顺序排列(对于值来说)变量
值“年代”
,“z”
,“p”
,或“问”
)或按照权力上升的顺序(为变量
值“z ^ 1”
或“问^ 1”
).
一个纽约
——- - - - - -ν
以指定MIMO传递函数的行向量单元数组,其中纽约
输出的数量是和吗ν
为输入的个数。单元格数组的每个元素指定给定输入/输出对的分子系数。如果你指定两者分子
和分母
作为单元格数组,它们必须具有相同的维数。
如果MIMO传递函数的所有SISO项具有相同的分母,则可以指定分母
作为行向量,同时指定分子
作为单元格数组。
的系数分母
既可以是实值,也可以是复值。
变量
- - - - - -传递函数显示变量“年代”
(默认)|“z”
|“p”
|“问”
|“z ^ 1”
|“问^ 1”
传递函数显示变量,指定为如下之一:
“年代”
—默认为连续时间模型
“z”
—默认为离散时间模型
“p”
- 相当于“年代”
“问”
- 相当于“z”
“z ^ 1”
——逆“z”
“问^ 1”
- 相当于“z ^ 1”
的价值变量
是体现在展示上,还是影响解读的分子
和分母
离散时间模型的系数向量。
为变量
值“年代”
,“z”
,“p”
,或“问”
,系数按变量的降序幂排列。例如,考虑行向量(ak党……a1 a0]
.多项式的阶数是
.
为变量
值“z ^ 1”
或“问^ 1”
,系数按变量的升序幂排列。例如,考虑行向量[b0 b1……bk)
.多项式的阶数是
.
有关示例,请参见指定离散时间传递函数中的多项式排序,使用有理表达式的传递函数模型,基于有理表达式的离散时间传递函数模型.
Iodelay.
- - - - - -运输延迟0
(默认)|标量|纽约
——- - - - - -ν
阵列运输延误,指定为下列情形之一:
标量-为SISO系统指定传输延迟,或为MIMO系统的所有输入/输出对指定相同的传输延迟。
纽约
——- - - - - -ν
array—为MIMO系统的每个输入/输出对指定单独的传输延迟。在这里,纽约
输出的数量是和吗ν
为输入的个数。
对于连续时间系统,使用指定的时间单位指定传输延迟TimeUnit
财产。对于离散时间系统,以采样时间的整数倍指定传输延迟,Ts
.
InputDelay
- - - - - -输入延迟0
(默认)|标量|ν
1的向量每个输入通道的输入延迟,指定为如下之一:
标量-指定SISO系统的输入延迟或多输入系统的所有输入延迟。
ν
-by-1向量-为多输入系统的输入指定单独的输入延迟ν
为输入的个数。
对于连续时间系统,用指定的时间单位指定输入延迟TimeUnit
财产。对于离散时间系统,指定输入延迟为采样时间的整数倍,Ts
.
有关更多信息,请参见线性系统的时滞.
OutputDelay
- - - - - -输出延迟0
(默认)|标量|纽约
1的向量每个输出通道的输出延迟,指定为下列之一:
标量-指定SISO系统的输出延迟或多输出系统的所有输出的相同延迟。
纽约
-by-1向量-为多输出系统的输出指定单独的输出延迟,其中纽约
为输出数。
对于连续时间系统,用指定的时间单位指定输出延迟TimeUnit
财产。对于离散时间系统,指定输出延迟为采样时间的整数倍,Ts
.
有关更多信息,请参见线性系统的时滞.
TimeUnit
- - - - - -时间变量的单位“秒”
(默认)|“纳秒”
|微秒的
|的毫秒
|“分钟”
|“小时”
|“天”
|“周”
|“月”
|“年”
|……时间变量单位,指定为下列单位之一:
“纳秒”
微秒的
的毫秒
“秒”
“分钟”
“小时”
“天”
“周”
“月”
“年”
改变TimeUnit
对其他属性没有影响,但是改变了整个系统的行为。使用chgTimeUnit
在不改变系统行为的情况下在时间单位之间进行转换。
InputName
- - - - - -输入通道名称''
(默认)|特征向量|字符向量的单元格数组输入通道名称,指定为下列之一:
字符向量,用于单输入模型。
字符向量的单元数组,用于多输入模型。
''
,没有为任何输入通道指定名称。
或者,您可以使用自动向量展开为多输入模型分配输入名称。例如,如果sys
是一个双输入模型,输入:
sys。InputName =“控制”;
输入名称自动展开{“控制(1)”,“控制”(2)}
.
你可以使用速记符号u
参考InputName
财产。例如,sys.u
相当于sys。InputName
.
使用InputName
:
在模型显示和绘图中识别通道。
提取MIMO系统的子系统。
在连接模型时指定连接点。
InputUnit
- - - - - -输入通道单元''
(默认)|特征向量|字符向量的单元格数组输入通道单位,指定为下列单位之一:
字符向量,用于单输入模型。
字符向量的单元数组,用于多输入模型。
''
,没有为任何输入通道指定单位。
使用InputUnit
指定输入信号单元。InputUnit
对系统行为没有影响。
InputGroup
- - - - - -输入通道组输入通道组,指定为结构。使用InputGroup
将MIMO系统的输入通道分组,并按名称引用每一组。的字段名InputGroup
是组名称,字段值是每个组的输入通道。例如:
sys.InputGroup.controls = [1 2];sys.InputGroup.noise = [3 5];
创建名为控制
和噪音
包括输入通道1
和2
,3.
和5
,分别。然后您可以从控制
输入到所有输出,使用:
sys (:,“控制”)
默认情况下,InputGroup
是一个没有字段的结构。
OutputName
- - - - - -输出通道名称''
(默认)|特征向量|字符向量的单元格数组输出通道名称,指定为以下任意一个:
字符向量,用于单输出模型。
字符向量的单元数组,用于多输出模型。
''
,没有为任何输出通道指定名称。
或者,您可以使用自动矢量扩展为多输出模型分配输出名称。例如,如果sys
是一个双输出模型,输入:
sys。OutputName =“测量”;
输出名称自动展开{“测量(1)”,“测量”(2)}
.
您也可以使用速记符号y
参考OutputName
财产。例如,sys.y
相当于sys。OutputName
.
使用OutputName
:
在模型显示和绘图中识别通道。
提取MIMO系统的子系统。
在连接模型时指定连接点。
OutputUnit
- - - - - -输出通道单元''
(默认)|特征向量|字符向量的单元格数组输出通道单位,指定为下列单位之一:
字符向量,用于单输出模型。
字符向量的单元数组,用于多输出模型。
''
,没有为任何输出通道指定单位。
使用OutputUnit
指定输出信号单元。OutputUnit
对系统行为没有影响。
OutputGroup
- - - - - -输出通道组输出通道组,指定为结构。使用OutputGroup
将MIMO系统的输出通道分组,并按名称引用每一组。的字段名OutputGroup
是组名,字段值是每个组的输出通道。例如:
sys.OutputGroup.temperature = [1];sys.InputGroup.measurement = [3 5];
创建名为温度
和测量
包括输出通道1
,3.
和5
,分别。然后可以从所有的输入中提取子系统测量
输出使用:
系统(“测量”:)
默认情况下,OutputGroup
是一个没有字段的结构。
的名字
- - - - - -系统名称''
(默认)|特征向量系统名称,指定为字符向量。例如,“system_1”
.
笔记
- - - - - -指定的文本{}
(默认)|特征向量|字符向量的单元格数组要与系统关联的用户指定的文本,指定为字符向量或字符向量的单元格数组。例如,系统分配的
.
用户数据
- - - - - -用户指定的数据[]
(默认)|任何MATLAB®数据类型要与系统关联的用户指定的数据,指定为任何MATLAB数据类型。
SamplingGrid
- - - - - -模型阵列的采样网格模型阵列的采样网格,指定为结构阵列。
使用SamplingGrid
跟踪与模型数组中每个模型关联的变量值,包括已识别的线性时不变(IDLTI)模型数组。
将结构的字段名设置为抽样变量的名称。将字段值设置为与数组中每个模型相关联的采样变量值。所有抽样变量必须是数值标量,所有抽样值的数组必须与模型数组的维数相匹配。
例如,你可以创建一个11乘1的线性模型数组,SYSARR.
,通过对线性时变系统进行定时快照t = 0:10
.下面的代码使用线性模型存储时间样本。
sysarr。SamplingGrid =结构(“时间”0:10)
类似地,你可以创建一个6乘9的模型数组,米
,通过对两个变量独立抽样,ζ
和w
.下面的代码映射(ζ,w)
值米
.
[zeta,w] = ndgrid(<6 values of zeta>,<9 values of w>)“ζ”ζ,' w '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…
用于在Simulink中线性化生成的模型阵列金宝app®模型在多个参数值或操作点,软件填充SamplingGrid
自动使用数组中每个条目对应的变量值。例如,金宝appSimulink Control Design™命令线性化
和slLinearizer
填充SamplingGrid
自动。
默认情况下,SamplingGrid
是一个没有字段的结构。
对于本例,考虑以下SISO传递函数模型:
指定分子和分母系数,按降序排列年代
,并创建传递函数模型。
分子= 1;分母=(2、3、4);sys =特遣部队(分子、分母)
sys = 1 --------------- 2s ^2 + 3s + 4连续时间传递函数。
对于本例,考虑以下离散时间SISO传递函数模型:
指定分子和分母系数,按降序排列z
且采样时间为0.1秒。建立离散时间传递函数模型。
分子= (2,0);分母= [4 0 3 1];t = 0.1;sys =特遣部队(分子、分母,ts)
sys = 2z --------------- 4z ^3 + 3z - 1采样时间:0.1秒
对于该示例,考虑一种传递函数模型,其表示具有已知的自然频率和阻尼比的二阶系统。
二阶系统的传递函数,以阻尼比表示 和自然频率 是:
假设有阻尼比, = 0.25和固有频率, = 3 rad/s,创建二阶传递函数。
ζ= 0.25;w0 = 3;分子= w0 ^ 2;分母=[1,2 *ζ* w0, w0 ^ 2];sys =特遣部队(分子、分母)
sys = 9 --------------- s^2 + 1.5 s + 9连续时间传递函数。
检查这个传递函数对阶跃输入的响应。
stepplot(系统)
图中显示了具有低阻尼比的二阶系统的减振期望。
为离散时间、多输入、多输出模型创建传递函数:
样品时间t = 0.2
秒。
指定分子系数为2 × 2矩阵。
{1 [1 0];[-1 2] 3};
将公分母的系数指定为行向量。
分母= [1 0.3];
建立离散时间MIMO传递函数模型。
t = 0.2;sys =特遣部队(分子、分母ts)
sys = From input 1 to output…1 : ------- z + 0.3 - z + 2 2 : ------- 从输入2输出z + 0.3…z 1: ------- z + 0.3 3 2: ------- z + 0.3采样时间:0.2秒
有关创建MIMO传输函数的更多信息,请参见MIMO传输功能.
对于本例,使用有理表达式创建一个连续时间传递函数模型。使用有理表达式有时比指定分子和分母的多项式系数更容易、更直观。
考虑以下系统:
要创建传递函数模型,首先指定年代
作为一个特遣部队
对象。
s =特遣部队(“年代”)
s = s连续时间传递函数。
在有理表达式中使用s创建传递函数模型。
/(s^2 + 2*s + 10)
sys = s -------------- s^2 + 2s + 10连续时间传递函数。
对于本例,使用有理表达式创建离散时间传递函数模型。使用有理表达式有时比指定多项式系数更容易、更直观。
考虑以下系统:
要创建传递函数模型,首先指定z
作为一个特遣部队
对象和样本时间Ts
.
t = 0.1;特遣部队(z =“z”ts)
采样时间:0.1秒离散时间传递函数。
使用传递函数模型使用z
在有理表达式中。
= (z - 1) / (z^2 - 1.85*z + 0.9)
sys = z - 1 ------------------ z^2 - 1.85 z + 0.9采样时间:0.1秒
对于本例,使用从另一个传输函数模型继承的属性创建一个传输函数模型。考虑以下两个传递函数:
对于本例,请使用createsys1
与TimeUnit
和InputDelay
属性设置为'分钟
'.
numerator1 = (2,0);denominator1 = (1 8 0);sys1 =特遣部队(numerator1 denominator1,'不时',“分钟”,“InputUnit”,“分钟”)
sys1 = 2s --------- s^2 + 8s连续时间传递函数。
propValues1 = [sys1.TimeUnit sys1.InputUnit]
propValues1 =1 x2单元格{“分钟”}{“分钟”}
创建具有继承的属性的第二个传输函数模型sys1
.
numerator2 = [1];denominator2 = [7 2 0 0 9];sys2 =特遣部队(numerator2 denominator2 sys1)
sys2 = s - 1 ----------------- 7 s ^ 4 + 2 s ^ 3 + 9连续时间传递函数。
propValues2 = [sys2.TimeUnit sys2.InputUnit]
propValues2 =1 x2单元格{“分钟”}{“分钟”}
观察传递函数模型sys2
具有与sys1
.
你可以用为
循环指定传递函数模型的数组。
首先,将传递函数数组预分配为零。
sys =特遣部队(0 (1,1,3));
前两个索引表示模型的输出和输入数量,而第三个索引是数组中的模型数量。
中的有理表达式创建传递函数模型数组为
循环。
s =特遣部队(“年代”);为(1) (s^2+s+ K) /(s^2+s+ K)结束sys
sys (:: 1, - 1) = 1 ----------- s ^ 2 + s + 1系统(:,:,2,1)= 2 ----------- s ^ 2 + s + 2系统(:,:,3,1)= 3 ----------- s ^ 2 + 3 + 3 x1连续时间转移函数的数组。
对于本例,计算如下状态空间模型的传递函数:
使用状态空间矩阵创建状态空间模型。
A = [-1 -1;1 -2];B = [1 1;2 -1];C = [1 0];D = [0 1];ltiSys = ss (A, B, C, D);
转换状态空间模型ltiSys
传递函数。
sys =特遣部队(ltiSys)
从输入2到输出:s^2 + 5s + 8------------- s^2 + 4s + 5连续时间传递函数。
对于这个例子,提取一个确定的多项式模型的测量和噪声成分到两个单独的传递函数。
加载Box-Jenkins多项式模型ltiSys
在IdentiedModel.mat.
.
负载(“identifiedModel.mat”,“ltiSys”);
ltiSys
为已识别的离散时间模型,其形式为:
,在那里
表示被测分量和
噪声组件。
提取被测分量和噪声分量作为传递函数。
sysMeas =特遣部队(ltiSys,'衡量')
从输入“u1”输出sysMeas =“日元”:-0.1426 z z ^ 2 z ^ ^ 1 + 0.1958 (2 ) * ---------------------------- 1 - 1.575 z ^ 1 + 0.6115 z ^ 2样品时间:0.04秒的离散传递函数。
结合sysNoise =特遣部队(ltiSys,“噪音”)
sysNoise = From input "v@y1" to output "y1": 0.04556 + 0.03301 z^-1 ---------------------------------------- 1 - 1.026 z^-1 + 0.26 z^-2 - 0.1949 z^-3输入组:Name Channels Noise 1采样时间:0.04 seconds离散时间传递函数。
被测分量可以作为被测对象的模型,而噪声分量可以作为控制系统设计的扰动模型。
传递函数模型对象包括帮助您跟踪模型所表示的内容的模型数据。例如,您可以为模型的输入和输出分配名称。
考虑以下连续时间MIMO传递函数模型:
模型只有一个输入 电流和两个输出 扭矩和角速度。
首先,指定模型的分子和分母系数。
分子= {[1 1];1};分母= {[1 2 2];[1 0]};
创建传递函数模型,指定输入名称和输出名称。
sys =特遣部队(分子、分母“InputName”,“当前”,...“OutputName”, {'扭矩'的角速度})
sys = From input "Current" to output…s + 1力矩:------------- s^2 + 2s + 2 1角速度:- s连续时间传递函数。
对于这个例子,在离散时间传递函数模型中使用变量
的财产。
考虑以下采样时间为0.1秒的离散时间传递函数:
通过指定来创建第一个离散时间传递函数z
系数。
分子= [1,0,0];分母= [1,2,3];t = 0.1;SYS1 = TF(分子,分母,TS)
sys1 = z²------------- z²+ 2z + 3采样时间:0.1秒
的系数sys1
按…的降序排列z
.
特遣部队
转换约定基于' '的值变量
的财产。自sys2
的逆传递函数模型是sys1
,指定的变量
“是”z ^ 1
,并使用相同的分子和分母系数。
sys2 =特遣部队(分子、分母,ts,“变量”,“z ^ 1”)
sys2 = 1 ------------------- 1 + 2z ^-1 + 3z ^-2采样时间:0.1秒
的系数sys2
现在是以升序排列的z ^ 1
.
根据不同的约定,您可以使用“变量
的财产。
在本例中,您将创建一个带有一个可调参数的低通滤波器一个:
因为a的分子和分母系数tunableTF
块是独立的,不能使用tunableTF
代表F
.相反,构建F
使用可调实参数对象realp
.
创建一个实际的可调参数,初始值为10
.
一个= realp (“一个”, 10)
取值范围:10最小值:-Inf最大值:Inf Free: 1实标量参数。
使用特遣部队
创建可调低通滤波器F
.
分子=一个;分母= [1];F =特遣部队(分子、分母)
F =广义连续时间状态空间模型,具有1个输出、1个输入、1个状态和以下块:a:标量参数,2次出现。输入“ss(F)”查看当前值,输入“get(F)”查看所有属性,输入“F. blocks”与块进行交互。
F
是一个一族
对象,该对象具有可调参数一个
在其块
财产。你可以连接F
与其他可调或数值模型,以创建更复杂的控制系统模型。例如,请参见控制系统与可调组件.
在本例中,您将创建一个静态增益MIMO传递函数模型。
考虑以下两输入两输出静态增益矩阵米
:
指定增益矩阵并创建静态增益传递函数模型。
m =[2、4;...3、5];sys1 =特遣部队(m)
sys1 = From input 1 to output…1:2 2:3从输入2到输出…1:4 2:5静态增益。
可以使用静态增益传递函数模型sys1
将其与另一传递函数模型级联。
对于此示例,创建另一个双输入,双输出离散传递函数模型并使用系列
功能连接两个模型。
分子={1,(1,0);[1、2],3};分母= (0.3);t = 0.2;sys2 =特遣部队(分子、分母ts)
sys2 = From input 1 to output…1 : ------- z + 0.3 - z + 2 2 : ------- 从输入2输出z + 0.3…z 1: ------- z + 0.3 3 2: ------- z + 0.3采样时间:0.2秒
sys =系列(sys1 sys2)
sys = From input 1 to output…3 z z ^ 2 + 2.9 + 0.6 - 1 : ------------------- z z ^ 2 + 0.6 + 0.09 - 2 z z ^ 2 + 12.4 + 3.9 - 2 : --------------------- z z ^ 2 + 0.6 + 0.09从输入2输出…5 z z ^ 2 + 5.5 + 1.2 - 1 : ------------------- z z ^ 2 + 0.6 + 0.09 - 4 z z ^ 2 + 21.8 + 6.9 - 2 : --------------------- z z ^ 2 + 0.6 + 0.09样品时间:0.2秒的离散传递函数。
传递函数模型不适用于数值计算。一旦创建,在将它们与其他模型组合或执行模型转换之前,将它们转换为状态空间形式。然后,您可以将得到的模型转换回传递函数形式,以便进行检查
识别的非线性模型不能直接转化为传递函数模型特遣部队
.获取传递函数模型:
将非线性识别模型转换为识别的LTI模型使用Linapp.
,idnlarx /线性化
,或idnlhw /线性化
.
然后,将得到的模型转换为传递函数模型特遣部队
.
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。