我遇到了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
为什么参数不同?我做错了什么?
答案 0 :(得分:1)
你错过了
stepinfo(ScopeData(:,2))
假定为t = 1:size(ScopeData,1)
。
你想要的是
stepinfo(ScopeData(:,2),ScopeData(:,1))