在这个简单的simulink模型中,我很难理解我的作用域的输出:
我正在使用固定步骤求解器(尝试使用ode3和ode8)。
脉冲发生器的Pulse type
设置为Sample based
,我改变了Period
和Pulse Width
。
首先,我将模拟时间设置为10,并将脉冲发生器设置为Period = 10
和Puls width = 5
。范围的输出符合预期:
但是当我尝试使用模拟时间10,000和带有Period = 1,000
和Puls width = 500
的脉冲发生器时,我的范围似乎是错误的:
为什么第一次下降到5,500?我每次都使用自动缩放按钮。
使用sim时间100,000和Period = 10,000
以及Puls width = 5,000
我甚至没有一个下降边缘:
即使模拟时间较长,在示波器窗口的末尾也会出现一个上升沿。
我做错了什么?使用固定步长求解器,范围是否不适合这么长的模拟时间?或者它不安全"使用自动缩放按钮?
答案 0 :(得分:1)
您显示的所有图表都是正确的。 Simulink很好,模拟时间很长。使用自动缩放按钮是“安全的”。
默认情况下,范围设置为仅显示最后5000个模拟时间步长。由于您的模型的步长为1s(这是基于使用脉冲发生器的默认步长,即1s),在第二个图中您只能看到从t = 5000到t = 10000的点(所以第一个向下步骤 在该时间段 是5500),在第三个图中,您只能看到从t = 95000到t = 100000的点(这是一个周期其中脉冲值为低/零)。
要查看所有模拟时间,请打开Scope块的参数(通过单击带有cog图片的按钮),转到History选项卡,然后取消选择将数据点限制为last:复选框。
然后重新运行模拟并按下自动缩放按钮。然后,您将看到(我认为)您期待的内容。