yangxiang180 发表于 2007-3-28 22:06

很奇怪的事情,用命令输入的仿真结果和simulink仿真结果不一样。

很奇怪的事情,用命令输入的仿真结果和simulink仿真结果不一样。

我在command窗口里面输入如下命令:
num =
den =
sys = tf(num,den)
= step(sys);
plot(t,y,'b')
grid on

仿真结果如图1所示;
然后我在simulink里面仿真,做如图2所示的输入,
然后得到如图3所示的结果。

很奇怪的事情是两个结果截然不同,
在命令窗口进行仿真,其结果是经过大概0.3秒到达稳态值250多一点。
而在simulink里面仿真,其结果是大概在7.5秒才有输出,而且输出信号没丝毫规律。




请教各位大师,这是怎么回事,我应该相信哪个结果?

[ 本帖最后由 yangxiang180 于 2007-3-28 22:18 编辑 ]

yangxiang180 发表于 2007-3-29 17:11

上面所发的图片中,第一组传错了,我不知道怎么删除,所以重新传了一组上来,不好意思。
(即第二个图1,图2,图3是正确的。)


这么久了,怎么没人回复啊?郁闷。

[ 本帖最后由 yangxiang180 于 2007-3-29 17:14 编辑 ]

yangzj 发表于 2007-3-30 16:28

呵呵,兄弟,把子simulink图的横纵坐标值看好了,把显示的数据长度设长就行了

yangxiang180 发表于 2007-3-30 17:15

我设了还是一样的啊。
simulink里面7.5秒前根本就没有输出啊。
老兄,你在matlab里面两种情况都试了没有?我被这个问题困扰好久了。

[ 本帖最后由 yangxiang180 于 2007-3-30 17:17 编辑 ]

yangzj 发表于 2007-3-30 19:15

是在scope的属性里把数据长度5000设大些,
或者在仿真参数设置里把仿真时间设成0.4

yangzj 发表于 2007-3-30 19:19

还有把step的参数step time改成0
页: [1]
查看完整版本: 很奇怪的事情,用命令输入的仿真结果和simulink仿真结果不一样。