主要内容

一步

动态系统的步骤响应图;步骤响应数据

描述

阶跃响应图

例子

步(sys的)绘制一个响应动态系统模型到单位振幅的阶跃输入。该模型sys可以是连续的或离散时间和SISO或MIMO。对于MIMO系统,绘图显示每个I / O通道的步骤响应。一步基于系统动态自动确定模拟的时间步长和持续时间。

例子

步(sysTFINAL.的)模拟的阶跃响应t = 0直到最后一刻t = tFinal.该函数使用系统动力学来确定中间的时间步长。

例子

步(sysT.的)在您在向量中指定的“时间”处绘制阶跃响应T.

例子

步(sys1,sys2,......,sysN,___的)绘制同一曲线上多个动态系统的阶跃响应。所有系统必须具有相同数量的输入和输出。您可以使用多个Infum-Argument组合使用多个动态系统。

例子

步(sys1,LineSpec1,......,sysN,LineSpecN,___的)指定绘图中每个系统的颜色,行样式和标记。您可以使用LineSpec使用以前的任何输入参数组合。当您需要其他绘图自定义选项时,使用Stepplot.反而。

例子

步(___选择的)指定计算阶跃响应的附加选项,如阶跃振幅或输入偏移量。使用stepDataOptions创建选项集选择.您可以使用选择使用前面的任何输入参数和输出参数组合。

步骤响应数据

例子

y=步骤(sysT.的)返回动态系统模型的步骤响应sys在向量中指定的时代T..此语法不绘制绘图。

[y兜售] =步骤(sys的)也返回一个时间向量兜售对应于响应y.如果您不提供输入向量T.时代,一步的长度和时间步长兜售基于系统动态。

[y兜售] =步骤(sysTFINAL.的)计算逐步响应到结束时间TFINAL.一步选择时间步骤兜售基于系统动态。

[yT.X] =步骤(sys的)也返回状态轨迹X, 什么时候sys是一个状态空间模型,如SS.或者IDS.模型。

例子

[yT.Xysd.] =步骤(sys的)还计算标准差ysd.阶跃响应y, 什么时候sys是一个识别的模型,如IDS.idtf, 或者idnlarx模型。

例子

[___] =步骤(___选择的)指定计算阶跃响应的附加选项,如阶跃振幅或输入偏移量。使用stepDataOptions创建选项集选择.您可以使用选择使用前面的任何输入参数和输出参数组合。

例子

全部折叠

用下列传递函数表示连续时间系统的阶跃响应。

sys S. 的) = 4. S. 2 + 2 S. + 10.

对于本例,创建一个特遣部队代表传递函数的模型。您可以类似地绘制其他动态系统模型类型的步骤响应,例如零极增益(ZPK.)或状态空间(SS.) 楷模。

sys = tf(4,[[1 2 10]);

绘制阶跃响应。

步骤(SYS)

图中包含一个轴对象。axis对象包含一个类型为line的对象。该对象表示sys。

一步绘图自动包括一个虚线水平线指示稳态响应。在MATLAB®图形窗口中,您可以右键单击图形查看其他阶跃响应特性,如峰值响应和沉淀时间。有关这些特征的更多信息,请参见步骤赛(控制系统工具箱)

绘制离散时间系统的阶跃响应。系统的采样时间为0.2 s,并且由以下状态空间矩阵表示。

A = [1.6 -0.7;1 0];B = (0.5;0);C = [0.1 0.1];D = 0;

创建状态空间模型并绘制其步骤响应。

sys = ss (A, B, C, D, 0.2);步骤(SYS)

图中包含一个轴对象。axis对象包含一个类型为line的对象。该对象表示sys。

步进响应反映了模型的离散化,显示每0.2秒计算的响应。

检查以下传递函数的步骤响应。

sys = zpk (1, (-0.2 + 3 j, -0.2 3 j], 1) *特遣部队([1],0.05 [1])
sys =(s + 1)^ 2 ----------------------------(s + 0.05)(s ^ 2 + 0.4s +9.04)连续时间零/极/增益模型。
步骤(SYS)

图中包含一个轴对象。axis对象包含一个类型为line的对象。该对象表示sys。

默认情况下,一步选择一个结束时间,显示响应趋势的稳定状态。然而,该系统具有快速的瞬态,这在此时间尺度上被遮挡。要仔细查看瞬态响应,请将步骤图限制为T.= 15秒。

步骤(SYS,15)

图中包含一个轴对象。axis对象包含一个类型为line的对象。该对象表示sys。

或者,您可以指定要检查阶跃响应的确切时间,前提是它们之间用常数间隔分隔。例如,检测从暂态结束到系统达到稳态的响应。

t = 20:0.2:120;步骤(sys, t)

图中包含一个轴对象。axis对象包含一个类型为line的对象。该对象表示sys。

即使这个情节开始了T.= 20,一步始终应用步骤输入T.= 0。

考虑以下二阶状态空间模型:

[ X ˙ 1 X ˙ 2 ] = [ - 0. 5. 5. 7. 2 - 0. 7. 8. 1 4. 0. 7. 8. 1 4. 0. ] [ X 1 X 2 ] + [ 1 - 1 0. 2 ] [ 1 2 ] y = [ 1 9. 6. 9. 1 6. 4. 4. 9. 3. ] [ X 1 X 2 ]

a = [-0.5572,-0.7814; 0.7814,0];B = [1,-1; 0.2];C = [1.9691,6.4493];sys = ss(a,b,c,0);

该模型具有两个输入和一个输出,因此它具有两个通道:从第一个输入到输出,并从第二个输入到输出。每个频道都有自己的步骤响应。

当你使用一步,它计算所有通道的响应。

步骤(SYS)

图中包含2个轴对象。在(1)中包含一个类型为line的对象。该对象表示sys。在(2)中包含一个类型为line的对象。该对象表示sys。

左绘图显示第一输入通道的阶跃响应,并且右侧图显示了第二输入信道的阶跃响应。每当你使用时一步要绘制MIMO模型的响应,它会生成表示模型的所有I / O通道的图数。例如,创建一个随机状态空间模型,其中包含五个状态,三个输入和两个输出,并绘制其步进响应。

sys = RSS(5,2,3);步骤(SYS)

图中包含6个轴对象。在(1)中包含一个类型为line的对象。该对象表示sys。axis对象2包含一个类型为line的对象。该对象表示sys。在(2)中包含一个类型为line的对象。该对象表示sys。axis对象4包含一个类型为line的对象。该对象表示sys。在(3)中包含一个类型为line的对象。 This object represents sys. Axes object 6 contains an object of type line. This object represents sys.

在MATLAB图形窗口中,您可以通过右键单击绘图和选择,将绘图限制为通道的子集I / O选择器

一步允许您在同一轴上绘制多个动态系统的响应。例如,将系统的闭环响应与PI控制器和PID控制器进行比较。创建系统的传输功能并调整控制器。

H = TF(4,[1 2 10]);c1 = pidtune(h,'pi');c2 = pidtune(h,“PID”);

形成闭环系统并绘制其步骤响应。

SYS1 =反馈(H * C1,1);SYS2 =反馈(H * C2,1);步骤(SYS1,SYS2)传奇('pi'“PID”'地点'“东南”的)

图中包含一个轴对象。轴对象包含两个类型为line的对象。这些对象代表PI, PID。

默认情况下,一步为绘制的每个系统选择不同的颜色。控件可以指定颜色和线条样式LineSpec输入参数。

步骤(sys1,“r——”,sys2,“b”)传说('pi'“PID”'地点'“东南”的)

图中包含一个轴对象。轴对象包含两个类型为line的对象。这些对象代表PI, PID。

第一个LineSpec“r——”为PI控制器指定响应的虚线红线。第二LineSpec“b”为PID控制器指定响应的稳定蓝线。传说反映了指定的颜色和线脆。有关更多绘图自定义选项,请使用Stepplot.

多个系统的示例比较响应显示如何在单轴上绘制几个单独系统的响应。当您有多个动态系统,在模型阵列中排列时,一步立即绘制他们的所有反应。

创建一个模型数组。对于这个例子,使用具有不同固有频率的二阶传递函数的一维数组。首先,为模型数组预分配内存。下面的命令创建一行1 × 5的零增益SISO传输函数。前两个维度表示模型的输出和输入。其余的维度是数组维度。

sys = tf(零(1,1,1,5));

填充该数组。

w0 = 1.5:1:5.5;%自然频率ζ= 0.5;%阻尼常数为了i = 1:长度(w0)系统(:,:,1,我)=特遣部队(w0 (i) ^ 2,[1 2 *ζ* w0 (i) w0 (i) ^ 2]);结尾

(有关模型阵列的更多信息以及如何创建它们,请参阅模型阵列(控制系统工具箱)。)绘制阵列中所有模型的步骤响应。

步骤(SYS)

图中包含一个轴对象。轴对象包含5个类型的线。该对象表示sys。

一步使用相同的LINESTYLE用于阵列中所有条目的响应。区分条目的一种方法是使用SamplingGrid动态系统模型的属性将数组中的每个条目与相应相互关联w0价值。

sys.samplinggrid = struct('频率', w0);

现在,当您在Matlab Fignd窗口中绘制响应时,您可以单击一条迹线以查看它对应的频率值。

当你给它一个输出参数时,一步返回一系列响应数据。对于SISO系统,响应数据作为长度的列向量返回等于采样响应的时间点的数量。您可以提供时间点的向量T,或允许一步根据系统动态选择您的时间点。例如,提取SISO系统的步骤响应在101个时间点之间T.= 0且T.= 5 s。

sys = tf(4,[[1 2 10]);t = 0:0.05:5;Y =步骤(SYS,T);尺寸(y)
ans =1×2101年1

对于MIMO系统,响应数据在尺寸阵列中返回N.-经过-纽约-经过-nu,在那里纽约nu为动态系统的输出和输入的数量。例如,考虑下面的状态空间模型,它表示一个两个输入一个输出的系统。

a = [-0.5572,-0.7814; 0.7814,0];B = [1,-1; 0.2];C = [1.9691,6.4493];sys = ss(a,b,c,0);

在200个时间点提取该系统的步骤响应T.= 0且T.= 20秒。

t = linspace(0,20,200);Y =步骤(SYS,T);尺寸(y)
ans =1×3200 1 2

Y(:,我,j)列向量是否包含从j输入一世泰晤士报的输出T..例如,从第二输入提取到输出的步骤响应。

日元= y (:, 1, 2);情节(t,日元)

图中包含一个轴对象。axis对象包含一个类型为line的对象。

使用延迟创建反馈循环并绘制其步骤响应。

s =特遣部队(s);g = exp(-s)*(0.8 * s ^ 2 + s + 2)/(s ^ 2 + s);sys =反馈(ss(g),1);步骤(SYS)

图中包含一个轴对象。axis对象包含一个类型为line的对象。该对象表示sys。

系统阶跃响应显示混乱。具有内部延迟的系统的阶跃响应可能会表现出奇怪的行为,例如重复的跳跃。这种行为是系统的特征,而不是软件异常。

默认情况下,一步应用在点处从0到1的输入信号T.= 0.自定义幅度和偏移,使用stepDataOptions.例如,计算一个SISO状态空间模型对从1到-1到at的信号的响应T.= 0。

A = [1.6 -0.7;1 0];B = (0.5;0);C = [0.1 0.1];D = 0;sys = ss (A, B, C, D, 0.2);选择= stepDataOptions;opt.InputOffset = 1;opt.StepAmplitude = 2; step(sys,opt)

图中包含一个轴对象。axis对象包含一个类型为line的对象。该对象表示sys。

对于任意输入信号的响应,使用LSIM(控制系统工具箱)

比较一个参数识别模型和一个非参数(经验)模型的阶跃响应。也看他们的3 σ. 地区的信心。

加载数据。

加载iddata1z1

估计参数模型。

sys1 = ssest(z1,4);

估计一个非参数模型。

sys2 =冲动(z1);

绘制步骤响应以进行比较。

t =(0:0.1:10)”;[Y1,〜,〜,YSD1] =步骤(SYS1,T);[Y2,〜,〜,YSD2] =步骤(SYS2,T);情节(T,Y1,“b”,t,y1 + 3 * ysd1,”乙:“t y1-3 * ysd1”乙:“) 抓住绘图(T,Y2,‘g’, t, y2 + 3 * ysd2,'G:'t y2-3 * ysd2'G:'的)

图中包含一个轴对象。axis对象包含6个类型为line的对象。

计算识别的时间序列模型的步骤响应。

时间序列模型,也称为信号模型,是一种没有测量输入信号的模型。这个模型的阶跃图使用它的(未测量的)噪声通道作为阶跃信号应用的输入通道。

加载数据。

加载iddata9;

估计时间序列模型。

sys = ar(z9,4);

y是表格的模型A y(t) = e(t),在那里E(t)表示噪声通道。计算步骤响应,E(t)被视为输入通道,并被命名e @ y1.

绘制阶跃响应。

步骤(SYS)

图中包含一个轴对象。标题为“From: e@y1 To: y1”的axes对象包含一个类型为line的对象。该对象表示sys。

通过比较线性和非线性模型的小振幅阶跃响应来验证非线性ARX模型的线性化。

加载数据。

加载iddata2z2;

估计一个非线性ARX模型。

nlsys = nlarx(z2,[4 3 10],iDtreepartition,'风俗',{'SIN(Y1(T-2)* U1(T))+ Y1(T-2)* U1(T)+ U1(T)。* U1(T-13)''Y1(T-5)* Y1(T-5)* Y1(T-1)'},“nlr”,[1:5,7 9]);

确定一个平衡工作点nlsys.对应于稳态输入值1。

U0 = 1;[x,〜,r] = condop(nlsys,'稳定的'1);y0 = r.SignalLevels.Output;

得到的线性近似nlsys.在这个操作点。

sys =线性化(nlsys情况X);

验证sys通过比较其对此的小幅度阶跃响应nlsys.

非线性系统nlsys.正在按照均衡水平运行(y0情况).介绍尺寸0.1的步进扰动,关于这种稳态并计算相应的响应。

选择= stepDataOptions;opt.InputOffset =情况;opt.StepAmplitude = 0.1;t =(0:0.1:10)”;Ynl =步骤(nlsys, t, opt);

线性系统sys表示输入扰动与相应输出扰动之间的关系。它不知道非线性系统的平衡值。

绘制线性系统的步进响应。

选择= stepDataOptions;opt.StepAmplitude = 0.1;YL =步骤(SYS,T,OPT);

添加稳态偏移,y0,得到线性系统的响应,并绘制响应图。

plot(t,ynl,t,yl + y0)传奇(“非线性”的线性补偿的的)

图中包含一个轴对象。轴对象包含两个类型为line的对象。这些对象代表非线性,线性与偏移量。

输入参数

全部折叠

动态系统,指定为SISO或MIMO动态系统模型或动态系统模型阵列。你可以使用的动态系统包括:

  • 连续时间或离散时间数值LTI模型,如特遣部队ZPK., 或者SS.楷模。

  • 广义或不确定的LTI模型,如雄鸡或者号航空母舰楷模。(使用不确定的模型需要强大的控制工具箱™软件。)

    • 对于可调谐控制设计块,该函数在其当前值下评估模型,以绘制和返回响应数据。

    • 对于不确定的控制设计块,该函数绘制模型的标称值和随机样本。当您使用输出参数时,该函数仅返回名义模型的响应数据。

  • 稀疏状态空间模型,例如脚尔斯机械师楷模。

  • 识别LTI模型,例如idtfIDS., 或者IDProc.楷模。对于这种模型,该功能还可以绘制置信区间并返回频率响应的标准偏差。看具有置信区域的识别模型的阶跃响应

一步不支持频率响应数据万博1manbetx模型,如的朋友Genfrd., 或者IDFRD.楷模。

如果sys是一个模型数组,函数在同一轴上绘制数组中所有模型的响应。看模型阵列系统的阶跃响应

步进响应的结束时间,指定为正标量值。一步模拟的阶跃响应t = 0t =TFINAL.

  • 对于连续时间系统,该功能从系统动态自动确定步骤大小和点数。表达TFINAL.在系统时间单位中,指定的时尚财产sys

  • 对于离散时间系统,函数使用的采样时间为sys作为步长。表达TFINAL.在系统时间单位中,指定的时尚财产sys

  • 对于具有未指定采样时间的离散时间系统(TS = -1),一步解释TFINAL.作为模拟的采样周期的数量。

计算阶跃响应的时间向量,指定为一个正标量值的向量。表达T.在系统时间单位中,指定的时尚财产sys

  • 对于连续时间模型,请指定T.在形式Ti: dt: Tf.为了获得每个时间步长的响应,函数使用DT.作为连续系统的离散近似的采样时间(参见算法).

  • 对于离散时间模型,请指定T.在形式TI:TS:TF,在那里Ts是样本时间sys

一步始终应用步骤输入t = 0,不管“透明国际”

线条样式,标记和颜色,指定为一个,两个或三个字符的字符串或向量。字符可以以任何顺序出现。您无需指定所有三种特征(线条样式,标记和颜色)。例如,如果省略了线条样式并指定标记,则该曲线仅显示标记和无行。有关配置此参数的更多信息,请参阅LineSpec输入参数阴谋功能。

例子:“r——”指定红色虚线

例子:'* b'指定蓝色星号标记

例子:“y”指定黄线

输入偏移和幅度的施加步骤信号,指定为astepDataOptions选项集。默认情况下,一步应用一个输入从0到1的输入t = 0.使用此输入参数更改步骤输入的初始值和最终值。看自定义步骤输入的响应了一个例子。

输出参数

全部折叠

步骤响应数据,作为数组返回。

  • 对于输出系统,y是与之相同的柱矢量T.(如果提供)或兜售(如果你不提供T.).

  • 用于单输入,多输出系统,y是一个具有多行的矩阵,因为存在时间样本,并且随着输出的时间。就这样jth列y, 或者Y(:,j),包含从输入到输入的步骤响应j输出。

  • 对于MIMO系统,每个输入通道的阶跃响应沿三维叠加y.尺寸y然后N.-经过-纽约-经过-nu,地点:

    • N.为时间样本的数量。

    • 纽约是系统输出的数量。

    • nu是系统输入的数量。

    因此,Y(:,我,j)列向量是否包含从j输入一世中指定的时间输出T.或者兜售

计算步骤响应的时间,作为向量返回。当您没有提供特定的向量时T.时代,一步根据系统动态选择此时间向量。时代以时间为单位表示sys

状态轨迹,作为阵列返回。什么时候sys是一个状态空间模型,X包含状态的演变sys每次T.或者兜售.尺寸XN.-经过-NX.-经过-nu,地点:

  • N.为时间样本的数量。

  • NX.是状态数。

  • nu是系统输入的数量。

因此,响应于注射的一步的状态的演变K.输入由数组给出x(::,k).行矢量x(我:k)的状态值一世步骤。

所识别模型的阶跃响应的标准偏差,返回为与y.如果sys那时不包含参数协方差信息ysd.是空的。

提示

  • 当您需要其他绘图自定义选项时,使用Stepplot.反而。

  • 要模拟系统对任意输入信号的响应,请使用LSIM

算法

在没有内部延迟的情况下获得连续时间模型的样本,一步将这些模型转换为状态空间模型,并在输入上使用零级保持离散它们。一步根据系统动态选择这种离散化的采样时间,除非提供输入时间向量T.在形式t = 0: dt: Tf.在这种情况下,一步用途DT.为采样时间。得到的仿真时间步长兜售等采样是否有间隔DT.

对于具有内部延迟的系统,控制系统工具箱™软件使用可变步长求解器。结果,时间步骤兜售没有平衡。

参考

[1] L.F.洗发丁和P. Gahinet,“控制理论中的延迟差分 - 代数方程”应用数值数学,卷。56,问题3-4,pp。574-588。

也可以看看

职能

应用程序

之前介绍过的R2006a