Simulink:摆脱时间延迟

时间:2017-05-22 13:47:37

标签: simulink

我正在尝试在simulink上运行闭环系统,如下所示。

enter image description here

当我运行它时会得到这个结果。

enter image description here

正如您所看到的,将步进功能提升到1会有一点时间延迟。闭环输出也不会在1.5秒左右开始。我知道这是现实世界中会发生的事情,但我想知道是否有办法摆脱这个时间延迟并使输出显示“理想”结果。

由于

修改

我想我会添加更多信息。步进输入是标准步进输入,我在设置方面唯一改变的是模拟时间为8秒,求解器是固定步骤ode1(euler)。

1 个答案:

答案 0 :(得分:2)

您正在使用固定步长求解器,因此步长默认为(stop_time-start_time)/ 50,在您的情况下等于0.16。因此,您没有精确到1s的时间步。在第6个时间步= 0.96时,步长为0.在第7个时间步= 1.12时,步骤为1.这正是显示的内容,并且对于您正在使用的模拟参数是正确的。

使用固定步长求解器,如果您希望步骤恰好在1s发生,那么您需要指定步长,以便模型在1s时间步。 您可以通过转到Simulation Parameters下拉菜单的Solver面板并将步长更改为适当的值来实现。 (请注意,该图仍将显示从1开始的步骤,但稍后再完成一步。)

或者,您可以使用变量步进解算器。 (这会将步骤显示为完全垂直于1秒。)

关于时间延迟,你有比零更多的3个极点,因此在使用固定步长欧拉时会有3步延时。 改变它的唯一方法是使用不同的求解器。