MATLAB/Simulink图

wko9yo5t  于 2023-06-06  发布在  Matlab
关注(0)|答案(2)|浏览(168)

我想用Simulink创建一个类似的图,如下所示:

  • 图-1 *

这是我的MATLAB代码:

n = importdata('n.txt',';')
cars = n(:,2)
trucks = n(:,3)
bus = n(:,4)
t = linspace(1,365,365)
t = transpose(t)

以下是我的Simulink模块:

  • 图-2 *

而“Scope”块做了这样的图:

  • 图3*

为什么Simulink图(图3)与图1不相似。我想用Simulink创建一个类似的图形。问题出在哪里?

vd2z7a6w

vd2z7a6w1#

请注意,定义输入数据的t(ime)向量对模拟运行的时间长度没有影响-它纯粹定义输入数据的形状。
默认情况下,Simulink模型的Stop Time为10秒,这就是为什么您的第二个数字仅为10秒。您的模型仅阅读/模拟前10秒的数据。将Stop Time(在模型窗口的顶部)更改为365,或者更好的max(t)。(在后一种情况下,如果您随后在MATLAB工作区中更改t,则模拟停止时间也会相应更改,而无需手动更改模型中的任何内容。
默认情况下,Scope将显示所有模拟数据。但如果它没有(或您在任何时候缩放),那么您可以使用缩放工具(在Scope的顶部)和各种Scope属性来更改您看到的数据量。

dgenwo3n

dgenwo3n2#

在图1中,x轴表示时间,我们可以看到它跨越了365个单位的持续时间。这意味着图1中捕获的数据或事件分布在365个单位的时间段上。
另一方面,使用Simulink生成图3时,默认仿真时间设置为10秒。这意味着Simulink中的仿真系统或模型仅在10秒的持续时间内进行评估和绘制。
要使图3与图1相似(图1中时间轴跨越365个单位),您需要将Simulink中的仿真时间调整为365。通过增加模拟时间以匹配图1中所示的持续时间,您将能够在更长的时间内观察模拟系统的行为或结果。将模拟时间调整为365将允许您捕获和分析系统在相当于图1所示持续时间的时间范围内的行为。

相关问题