在内核模式下运行的实时执行
的在内核中运行模式是一种性能更高的替代方案连接IO模式下的实时执行.在在内核中运行模式,你使用动态仿真模块®编码器™将生成的算法代码链接到由I/O块生成的I/O驱动程序代码。生成的可执行文件在开发计算机上以操作系统内核模式运行。可执行文件通过共享内存接口与Simulink交换参数数据。
信号采集——您可以在实时应用程序运行时捕获并显示其信号。信号数据从实时应用程序中检索并显示在同一个Simulink中
范围
用于模拟模型的块。参数调优——您可以更改Simulink框图中的参数,并将新参数自动传递给实时应用程序。外部模式在实时应用程序运行时更改其参数。
的在内核中运行可执行模式与实时时钟完全同步。Simulink的主要作用是读取和显示从可执行文件返回的仿真结果。
在内核运行模式下,与实时执行相关的过程包括:
请注意
使用固定步长求解器在内核中运行模式。
在在内核中运行模式,实时应用程序和I/O驱动程序运行在内核模式进程。应用程序使用I/O驱动程序与硬件通信,在Simulink可访问的内存中存储连续的响应数据,直到数据缓冲区被填满。缓冲区填满后,实时应用程序继续运行,同时Simulink将数据传输到MATLAB®环境通过Simulink外部模式。在所需的采样间隔内保持确定性的实时更新比数据传输更重要。在模型计算完成后,数据传输以较低的优先级运行,同时该流程等待另一个中断来触发下一个模型更新。
在一个缓冲区中捕获的数据是连续的。当数据缓冲区传输完成后,数据立即在Simulink中绘制出来范围
块。通过在Simulink外部模式中使用数据归档,可以将数据直接保存到mat文件中。
使用数据归档,您可以将每个数据缓冲区保存到它自己的mat文件中。mat文件名可以自动递增,使您能够捕获和存储许多数据缓冲区。虽然缓冲区内的点是连续的,但将数据传输回Simulink所需的时间会暂停数据收集,直到整个缓冲区都传输完毕。此暂停可能导致数据缓冲区之间丢失样本点。