主要内容

冲动

动态系统的脉冲响应图;脉冲响应数据

语法

冲动(系统)
脉冲(系统、最终)
脉冲(系统,t)
脉冲(sys1,sys2,…,sysN)
冲动(sys1 sys2,…,sysN Tfinal)
冲动(sysN sys1, sys2,…,t)
[y,t]=脉冲(系统)
(y, t) =冲动(sys Tfinal)
y =冲动(sys, t)
[y,t,x]=脉冲(系统)
[y,t,x,ysd]=脉冲(sys)

描述

冲动计算a的单位脉冲响应动态系统模型对于连续时间动态系统,脉冲响应是对狄拉克输入的响应δt).对于离散时间系统,脉冲响应是对单位面积脉冲长度的响应Ts和高度1/Ts哪里Ts为系统的采样时间。(这个脉冲的方法δt)作为Ts接近零。)为状态空间模型,冲动假设初始状态值为零。

冲动(系统)绘制动态系统模型的脉冲响应sys.该模型可以是连续的或离散的,以及SISO或米姆。多输入系统的脉冲响应是每个输入通道的脉冲响应的集合。仿真的持续时间是自动确定的,以显示响应的瞬态行为。

脉冲(系统、最终)模拟的脉冲响应t=0直到最后一次t=t最终. 表示Tfinal系统时间单位,在TimeUnit的属性sys.对于采样时间未指定的离散时间系统(Ts = 1),冲动解释Tfinal为要模拟的采样周期数。

脉冲(系统,t)使用用户提供的时间向量t模拟快车t系统时间单位,在TimeUnit的属性sys. 对于离散时间模型,t应该是这样的形式Ti: Ts: Tf哪里Ts为采样时间。对于连续时间模型,t应该是这样的形式Ti:dt:Tf哪里dt变成连续系统的离散近似的采样时间(见算法).的冲动命令总是应用于冲动t=0不管“透明国际”

绘制几个模型的脉冲响应系统1,...,系统在单个图形上,使用:

脉冲(sys1,sys2,…,sysN)

冲动(sys1 sys2,…,sysN Tfinal)

冲动(sysN sys1, sys2,…,t)

如同预兆情节,您可以为每个系统指定特定的颜色、线型和/或标记,例如,

冲动(sys1 y:, sys2, g——)

请参阅“绘制和比较多个系统”和预兆进入本节以获得更多细节。

使用输出参数调用时:

[y,t]=脉冲(系统)

(y, t) =冲动(sys Tfinal)

y =冲动(sys, t)

冲动返回输出响应y时间向量t用于模拟(如果不作为脉冲的参数提供)。屏幕上没有绘图。对于单输入系统,y有与时间样本一样多的行(长度t),和输出一样多的列。在多输入情况下,每个输入通道的脉冲响应沿三维叠加y.的尺寸y那么

仅对于状态空间模型:

[y,t,x]=脉冲(系统)

(长度t) ×(输出数)×(输入数)

y(:,:,j)给出脉冲扰动进入时的响应j输入通道。同样的,它的尺寸x

(长度t)×(状态数)×(输入数)

[y,t,x,ysd]=脉冲(sys)返回标准偏差YSD答复的内容Y已识别系统的SYSYSD如果SYS不包含参数协方差信息。

例子

二阶状态空间模型的脉冲响应图

绘制二阶状态空间模型的脉冲响应

x ˙ 1 x ˙ 2 0.5572 0.7814 0.7814 0 x 1 x 2 + 1 1 0 2 u 1 u 2 y 1.9691 6.4493 x 1 x 2

A = [-0.5572 -0.7814;0.7814 0];B = [1 -1;0 -1];C = [1.9691 6.4493];sys = ss (a, b, c, 0);冲动(系统)

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

左边的图显示了第一个输入通道的脉冲响应,右边的图显示了第二个输入通道的脉冲响应。

您可以将脉冲响应数据存储在MATLAB中®按数组

[y,t]=脉冲(sys);

因为这个系统有两个输入,y是一个三维数组,具有维度

大小(y)
ans=1×3139 1 2

(第一个尺寸是长度t)。然后通过以下方式访问第一个输入通道的脉冲响应:

ch1=y(:,:,1);尺寸(ch1)
ans=1×2139年1

来自识别系统的脉冲数据

获取被识别线性系统的脉冲响应和相应的1 std不确定度。

加载(fullfile(matlabroot, 'toolbox', 'ident', 'iddemos', 'data', 'dcmotordata'));z = iddata(y, u, 0.1, 'Name', '电机');集(z,‘InputName’,‘压’,‘InputUnit’,‘V’);set(z, 'OutputName',{'角位置','角速度'});set(z, 'OutputUnit', {'rad', 'rad/s'});set(z, 'Tstart', 0, 'TimeUnit', 's');模型=特遣部队(z, 2);[y, t, ~, ysd] =脉冲(模型2);%情节3性病次要情节的不确定性(211)情节(t、y (: 1), t, y (: 1) + 3 * ysd(: 1),“凯西:”,t, y (: 1) 3 * ysd(: 1),“凯西:”)次要情节(212)情节(t、y (:, 2), t、y (:, 2) + 3 * ysd(:, 2),“凯西:”,t, y (:, 2) 3 * ysd(:, 2),“凯西:”)

局限性

非零连续系统的脉冲响应D矩阵在t0冲动忽略此不连续性并返回较低的连续性值Cbt0

提示

您可以更改地块的属性,例如单元。有关更改绘图属性的方法的信息,请参见自定义绘图的方法

算法

首先将连续时间模型转换为状态空间。单输入状态空间模型的脉冲响应

x ˙ 一个 x + b u y C x

等效于以下初始状态下的非受迫响应b

x ˙ 一个 x x 0 b y C x

为了模拟这种响应,系统使用零阶保持对输入进行离散化。采样时间是根据系统动力学自动选择的,除非出现时间向量t=0:dt:Tf提供(dt然后用作采样时间)。

在R2006a之前引入