Simulink实时并行执行万博1manbetx
这个示例展示了如何应用显式分区来增强使用Simulink®real-time™生成的实时应用程序的并发执行。万博1manbetx
万博1manbetxSimulink 万博1manbetxReal-Time通过使用模型的隐式分区或显式分区来支持并发执行。这个例子通过使用Simulink实时分析工具显示了模型子系统中任务的显式划分和任务的执行之间的关系。万博1manbetx
示例模型slrt_ex_mds_and_tasks
以0.001秒的采样率运行。
要以0.01秒的调整样本速率运行模型,请在运行示例之前更改样本额定。在MATLAB命令窗口中输入:
Ts = 0.01;
打开、构建和下载模型
顶层模型中的显式分区发生在subsystem1中。
open_system (fullfile (matlabroot,“工具箱”,“slrealtime”,“例子”,“slrt_ex_mds_subsystem1”));
顶层模型中的显式分区发生在subsystem2中。
open_system (fullfile (matlabroot,“工具箱”,“slrealtime”,“例子”,“slrt_ex_mds_subsystem2”));
打开模型slrt_ex_mds_and_tasks
.模型被映射到7个线程:Model1_R1
,Model1_R2
,Model1_R3
,Model1_R4
,Model2_R1
,Model2_R3
,Model2_R4
.
这些线程以采样率运行Ts
,2 * Ts
,3 * Ts
,4 * Ts
,Ts
,3 * Ts
,4 * Ts
.
模型=“slrt_ex_mds_and_tasks”;open_system (fullfile (matlabroot,“工具箱”,“slrealtime”,“例子”、模型));
要在Simulink编辑器中对万博1manbetx实时选项卡上,单击硬件设置,然后选择解算器>配置任务.选择任务和映射
节点。
构建、下载并运行模型。
set_param(模型,“RTWVerbose”,“关闭”);evalc (“slbuild(模型));Tg = slrealtime;负载(tg、模型);打开TET MonitorslrtTETMonitor;在目标计算机上启动分析器startProfiler (tg);开始(tg);暂停(2);停止(tg);
显示分析数据
分析数据显示了多核目标计算机上每个线程的执行时间。
profData = tg.getProfilerData;profData.plot;
正在目标计算机上处理数据…从目标计算机传输数据…在主机上处理数据…
在“TET monitor”中查看“TET Information”
在“仿真数据检查器”中查看TET信息
另请参阅
有关更多信息,请参见:
关闭模型
bdclose (“所有”);