主要内容

在内核模式下运行的实时执行

在内核中运行模式是一种性能更高的替代方案连接IO模式下的实时执行.在在内核中运行模式,你使用动态仿真模块®编码器™将生成的算法代码链接到由I/O块生成的I/O驱动程序代码。生成的可执行文件在开发计算机上以操作系统内核模式运行。可执行文件通过共享内存接口与Simulink交换参数数据。

  • 信号采集——您可以在实时应用程序运行时捕获并显示其信号。信号数据从实时应用程序中检索并显示在同一个Simulink中范围用于模拟模型的块。

  • 参数调优——您可以更改Simulink框图中的参数,并将新参数自动传递给实时应用程序。外部模式在实时应用程序运行时更改其参数。

在内核中运行可执行模式与实时时钟完全同步。Simulink的主要作用是读取和显示从可执行文件返回的仿真结果。

在内核运行模式下,与实时执行相关的过程包括:

请注意

使用固定步长求解器在内核中运行模式。

外部模式仿真体系结构的图像

在内核中运行模式,实时应用程序和I/O驱动程序运行在内核模式进程。应用程序使用I/O驱动程序与硬件通信,在Simulink可访问的内存中存储连续的响应数据,直到数据缓冲区被填满。缓冲区填满后,实时应用程序继续运行,同时Simulink将数据传输到MATLAB®环境通过Simulink外部模式。在所需的采样间隔内保持确定性的实时更新比数据传输更重要。在模型计算完成后,数据传输以较低的优先级运行,同时该流程等待另一个中断来触发下一个模型更新。

在一个缓冲区中捕获的数据是连续的。当数据缓冲区传输完成后,数据立即在Simulink中绘制出来范围块。通过在Simulink外部模式中使用数据归档,可以将数据直接保存到mat文件中。

使用数据归档,您可以将每个数据缓冲区保存到它自己的mat文件中。mat文件名可以自动递增,使您能够捕获和存储许多数据缓冲区。虽然缓冲区内的点是连续的,但将数据传输回Simulink所需的时间会暂停数据收集,直到整个缓冲区都传输完毕。此暂停可能导致数据缓冲区之间丢失样本点。

相关的话题

Baidu
map