主要内容

使用公益诉讼测试代码验证和分析

在processor-in-the-loop(公益诉讼)模拟,在目标硬件控制算法执行,但植物模型在主机上运行。植物模型模拟的输入和输出信号控制器和通信控制器通过串行通信接口。此功能允许您使用公益诉讼仿真来确定执行时间在目标硬件,然后您可以与执行时间的模拟模型在主机上。

执行时间或性能指标获得从公益诉讼的一种算法模拟,帮助你检测算法在目标硬件泛滥。公益诉讼的分析报告显示一个算法的平均和最大执行时间在目标硬件。这个例子解释了公益诉讼在德州仪器分析™LAUNCHXL-F28379D硬件板。

下面的例子使用了mcb_pmsm_foc_sim.slx模型显示代码在公益诉讼仿真验证。这个例子显示了当前公益诉讼分析控制子系统模型。这个子系统包括磁场定向控制(FOC),目前的比例(单位转换),速度测量和转子位置比例(计算的角度编码器位置计数)算法。公益诉讼的分析报告显示的平均和最大执行时间控制算法在目标硬件。

这个例子包含这些任务:

  • 验证代码执行通过公益诉讼测试通过比较仿真的算法和目标硬件操作模式。

  • 执行公益诉讼分析通过测量算法执行时间在目标硬件和生成公益诉讼的分析报告。

要求MathWorks下载188bet金宝搏

  • 嵌入式编码器®

  • 为德州仪器嵌入式编码支持包C2金宝app000™处理器

金宝app支持的硬件

  • LAUNCHXL-F28379D控制器硬件板

准备公益诉讼模式

  1. 打开mcb_pmsm_foc_sim.slx模型。

    open_system (“mcb_pmsm_foc_sim.slx”);

    该模型模拟了永磁同步电动机电动机和FOC闭环速度控制算法。

  2. 硬件仿真软件将来发布的选项金宝app卡,单击硬件设置

  3. 配置参数对话框,在硬件实现,设置硬件板字段TI参与F28379D发射台

验证代码通过公益诉讼

  1. 在配置参数对话框中,选择在这些配置设置硬件实现>硬件板设置>目标硬件资源>公益诉讼:

    1. 通信接口——选择串行

    2. SCI模块——选择SCI_A

    3. 串行端口在MATLAB的偏好——自动检测模型的通信端口连接的硬件。这个参数保持不变的当前活跃的MATLAB®会话。单击刷新按钮再次检测到通信端口。

  2. 打开mcb_PIL_config_TI.m脚本文件设置配置参数。

    编辑(“mcb_PIL_config_TI.m”);
  3. 更新型号名称和停止时间的脚本。

  4. 运行脚本更新配置参数仿真模型和公益诉讼的偏好。

  5. 右键单击当前控制子系统mcb_pmsm_foc_sim.slx模型的例子。下C / c++代码菜单中,选择这个子系统部署到硬件

    系统显示为子系统构建代码对话框。设置存储类内联对所有参数。

  6. 点击构建创建一个模型命名untitiled包括公益诉讼子系统称为电流控制。

  7. 重命名电流控制的电流控制子系统(公益诉讼)。

  8. 复制当前的控制(公益诉讼)子系统和替换当前的控制子系统mcb_pmsm_foc_sim.slx模型的例子。

    在公益诉讼模式,系统部署当前控制(公益诉讼)子系统目标中的目标和执行子系统的硬件。

  9. 比较算法执行公益诉讼中的主机模拟和仿真,连接电流控制的电流控制子系统相比(公益诉讼)子系统。此外,允许信号登录子系统输出。

  10. 在仿真软件上将金宝app来发布,选择银/公益诉讼经理应用程序从应用程序选项卡。

  11. 银/公益诉讼将来发布,选择银/公益诉讼Sim卡

  12. 选择模型块硅/公益诉讼模式被测系统字段。

  13. 点击运行银/公益诉讼银/公益诉讼将来发布构建当前控制(公益诉讼)子系统并将其部署到目标。

    系统部署子系统后,电流控制(公益诉讼)子系统目标硬件处理器上执行,而植物模型在主机上运行。

分析公益诉讼分析结果

公益诉讼仿真结束后,系统会生成一个分析报告。

请注意

公益诉讼比host-machine-based模拟仿真花更多的时间。这是由于串行通信(相关的输入和输出电流控制(公益诉讼)子系统)之间的主机和子系统运行在目标硬件。

这个分析报告,定点数据类型,显示了电流控制的最大和平均执行时间(公益诉讼)子系统运行在目标硬件。

您可以使用数据检查按钮模拟标签比较信号记录在host-machine-based模拟仿真和公益诉讼(目标)上执行。这可以帮助您验证host-machine-based模拟和公益诉讼模拟的准确性。

这情节比较了速度反馈信号的电流控制(公益诉讼)和电流控制子系统。

如果执行时间超过60%的预算,你可以使用这些技巧之一:优化算法

  • 执行从RAM。

  • 卸载一些功能班或其他cpu。

  • 规模算法运行在每个交替循环。

  • 移动更少的关键功能速度计算速度较慢。

为更多的细节在硅/公益诉讼代码验证,见: