主要内容

连接IO模式下的实时执行

动态仿真模块®桌面实时™连接输入输出模式扩展正常模式或加速模式以实时运行。

非实时正常模式或加速器模型的仿真算法完全在Simulink中运行。该模型可以使用固定步长或可变步长求解器,并在存在竞争操作系统进程的情况下尽可能快地运行。它没有与实时时钟同步,您不能轻松地使用该模型操作实时硬件。

可以使Simulink模型与实时时钟同步桌面实时仿真软件I / O模块。在连接输入输出模式下,Simulink执行仿真算法,而一个独立的操作系统内核模式进程为I/O块运行I/O驱动程序。Simulink进程和内核模式进程通过共享内存接口在主机上运行,传输参数数据。

  • 信号采集——您可以在实时应用程序运行时从它捕获和显示信号。Simulink从I/O驱动程序中检索信号数据,并在相同的驱动程序中显示范围用于非实时模拟模型的块。

  • 参数调优——您可以更改Simulink框图中的参数,并使新参数在Simulink模型中实时生效。然后,这些效果通过I/O驱动程序传播到硬件。

请注意

你不能运行一个桌面实时仿真软件模型在快速加速模式。

正常模式模拟体系结构图像

因为只有I/O驱动程序与实时时钟同步,所以Simulink可以使用固定步长或可变步长求解器。的样品时间设置在桌面实时仿真软件块不改变模拟的步长。对于固定步长模拟,在配置参数中设置步长固定步长盒子。方法设置步长对于变步长模拟,可以使用最小步长属性,或者Simulink自动确定步长。

连接输入输出模式,在每个采样间隔,Simulink计算每个实时块。Simulink将输入数据写入缓冲区,然后传递给内核模式进程。内核模式进程将数据传播到硬件,硬件将响应数据写入另一个缓冲区。在下一次tick时,Simulink读取响应数据并将其传播到模型的其余部分。

这种有限同步的一个后果是,您的模拟可以配置为错过实时时钟滴答及其相关的数据点。在以下情况下可以漏掉勾:

  • 模型的复杂性——模型可能非常复杂,以至于Simulink无法跟上实时内核的速度。在这种情况下,错过的节拍数会随着时间稳定地增加。在错过的节拍数超过最大的错过了蜱虫,则出现错误,即使最大的错过了蜱虫设置为较大的值。你可以通过a上上升的直线来确定这种情况范围连接到可选的错过了蜱虫端口。

  • 进程争用——模型的执行速度通常比跟上内核所需的速度要快。进程争用或一些随机的操作系统条件会阻止Simulink在一段时间内执行模型。在这种情况下,漏掉的滴答数跳到某个数字,然后随着Simulink赶上内核,漏掉的滴答数减少到零。您可以通过一个锯齿状的形状来识别这种情况范围连接到错过了蜱虫端口。

  • 变步长求解器——如果您正在使用变步长求解器,那么在模拟过程中,每个算法步骤的刻度数可以变化。如果Simulink执行没有达到桌面实时仿真软件阻塞时间以与滴答同步,错过的滴答数跳到某个数字。当Simulink赶上内核时,错过的滴答数减少到零。您可以通过一个锯齿状的形状来识别这种情况范围连接到错过了蜱虫端口。

相关的话题

Baidu
map