在 Simulink 和目标硬件之间设置外部模式连接
对于外部模式仿真,您可以使用 target
命名空间在 Simulink® 和您的目标硬件之间提供连接。
下图概述外部模式仿真的组成部分。
target
命名空间提供用于组件实现的类。下表列出了主要的类。
组件 | 类 | 用途 |
---|---|---|
目标硬件 |
| 向 MATLAB® 提供目标硬件的描述。 |
部署工具 |
| 这些类可用于:
要提供监控和调节、部署、连接和启动功能,“在自定义硬件上运行”App 需要使用 |
| ||
| ||
连接 |
| 为 Simulink 和目标硬件之间的数据传输提供通信协议。 |
| 为目标硬件提供通信信道和 rtiostream API 实现的详细信息。 | |
| 提供有关将开发计算机连接到目标硬件的详细信息。 |
为 XCP 外部模式仿真自定义连接
对于使用 ERT (ert.tlc
) 和 GRT (grt.tlc
) 系统目标文件生成的代码,您可以运行使用 XCP 通信协议的外部模式仿真:
在您的开发计算机上运行。
通过使用支持包在其他目标硬件上运行。
如果自定义目标硬件的系统目标文件派生自 ERT 或 GRT 系统目标文件,请使用来自 target
命名空间的类来自定义连接。例如 target.ExternalMode
和 target.CommunicationInterface
。
此示例说明如何为基于 XCP 的外部模式仿真自定义连接。要在 Simulink 和目标硬件之间设置连接,请执行以下操作:
自定义 TCP/IP 或串行外部模式仿真的连接
对于 TCP/IP 或串行外部模式仿真,您可以通过以下工作流自定义连接:
实现传输和通信协议。
使用
target
命名空间指定目标应用程序的执行工具。
要设置 Simulink 和目标硬件之间的连接,请使用为 XCP 外部模式仿真自定义连接中所述的工作流,但存在以下差异:
在执行步骤 1 之后,使用选择客户端和服务器的通信协议和为 TCP/IP 或串行外部模式通信创建传输层中的信息,实现 TCP/IP 或串行协议的外部模式通信的客户端和服务器端。
不执行步骤 5、6 和 7。
在步骤 8 中,您只能添加板对象。
在步骤 10 中,要指定 Simulink 和目标硬件之间的连接,请在“配置参数”对话框中执行以下操作:
执行工具模板
本部分提供 target.ExecutionTool
服务接口的伪代码示例。该工具启动并跟踪目标硬件上的应用程序。
classdef MyExecutionTool < target.ExecutionTool methods function errFlag = startApplication(this) % Call "customDownloadTool" to download the application. [status, result] = ... system(sprintf('customDownloadTool %s', this.Application)); if status == 0 errFlag = false; else disp(result); errFlag = true; end end function errFlag = stopApplication(~) % Add code here to stop the application, if possible. errFlag = false; end function [status, errFlag] = getApplicationStatus(~) % Add code here to return the application status, if known. status = target.ApplicationStatus.Unknown; errFlag = false; end end end
另请参阅
主题
- 用于参数调节、信号监控和代码执行探查的外部模式仿真
- 使用 XCP 通信进行外部模式仿真
- 选择客户端和服务器的通信协议
- 为 TCP/IP 或串行外部模式通信创建传输层
- Set Up PIL Connectivity by Using Target Framework
- Define Custom Emulator for Target Connectivity