Matlab stepinfo和simulink导出的数据stepinfo是不同的

时间:2014-05-23 16:04:27

标签: matlab simulink

我遇到了simulink的问题。 基本上如果我有以下系统:

A = [-1 5; 0 -3]
B = [0; 1]
C = [1 0]
D = 0

我做sys = ss(A,B,C,D)并得到stepinfo(sys)这就是结果:

ans =

    RiseTime: 2.3911
SettlingTime: 4.3175
 SettlingMin: 1.5042
 SettlingMax: 1.6658
   Overshoot: 0
  Undershoot: 0
        Peak: 1.6658
    PeakTime: 7.9516

当我抓住simulink并执行以下模型时:

http://i.imgur.com/KYkx1wv.png

使用状态空间块中的A,B,C,D值,然后按如下方式导出模型:

双击示波器,Paramesters-> History->将数据保存到工作区 - >格式:数组

并且,从matlab,stepinfo(ScopeData(:,2))来看,这就是它所提出的:

ans =

    RiseTime: 11.6058
SettlingTime: 28.3085
 SettlingMin: 1.2181
 SettlingMax: 1.3331
   Overshoot: 0
  Undershoot: 0
        Peak: 1.3331
    PeakTime: 54

为什么参数不同?我做错了什么?

1 个答案:

答案 0 :(得分:1)

你错过了

stepinfo(ScopeData(:,2))

假定为t = 1:size(ScopeData,1)

你想要的是

stepinfo(ScopeData(:,2),ScopeData(:,1))