主要内容

基于xcp的串行接口在CANape中校准ECU参数

这个例子展示了如何使用CANape®软件在Arduino™Mega 2560板上监控信号和调整Simulink模型的参数。金宝appCANape主要用于电子控制单元(ECU)的参数优化(校准)。通过CANape,可以在系统运行期间对参数值进行校准并获取测量信号。

在本例中,您将学习如何通过CANape软件实时调优参数和监控算法中的信号。

先决条件

完成入门Arduino®硬件的例子。

需要MathWorks产品下载188bet金宝搏

  • 金宝app仿真软件®

  • 金宝appSimu金宝applink支持包Arduino™硬件

  • 嵌入式编码器™

需要第三方软件

  • 开胃小菜®16.0 SP6

所需的硬件

模型

要打开预先配置的模型,在MATLAB提示符下运行以下命令:

open_system (“arduino_xcponserial_CANape”);

这个示例包含三个为日志记录启用的信号和两个用于调优的参数。这三个信号是:

  • Counter -在每一个时间步骤中按STEP_PARAM增加输出

  • Sine_Wave—正弦波

  • 脉冲-振幅可调的脉冲信号

配置任何Arduino板的模型

本例中提供的模型是预先为Arduino Mega 2560配置的,但它可以在任何Arduino板上运行。要使用Arduino Mega 2560以外的硬件板,并在CANape中启用参数校准,请遵循以下步骤:

1.开放arduino_xcponserial_CANape模型

2.建模>模型设置打开“配置参数”对话框。

3.打开硬件实现窗格中,并从列表中选择所需的Arduino板硬件板参数。

4.扩大目标硬件资源董事会。

5.外部模式选项卡并选择在连续的XCP随着通信接口

7.选择开胃小菜随着主机接口

8.点击应用好吧

启动模型的监控和调优操作并生成A2L文件

硬件选项卡,单击金宝app监视和优化

模型部署在Arduino板和一个名为arduino_xcponserial_CANape_CoderXCPSlave的A2L文件上。a2l在MATLAB的当前文件夹路径中生成。部署成功后,可以使用CANape连接到Arduino板进行信号监控和参数调整。

在CANape中创建一个新项目,并连接到Arduino板

1.开向量CANape 16.0软件。创建一个新的Project。

2.将模型生成的A2L文件拖放到CANape中。这将打开一个创建新设备的新对话框。

3.点击下一个最后点击好吧.创建新设备后,新创建的设备的“设置”对话框将打开。

4.在“设置”对话框中展开“协议”选项卡。点击传输层

5.确保在COM部分中选择了正确的通道(Arduino连接的COM端口)。修改波特率为921600。

6.点击接受所有的变化在“设置”对话框的左上角,然后关闭它。

7.点击在线连接Arduino板。

执行CANape的测量和校准

1.通过展开信号和参数列表设备选项卡中资源管理器窗格。

2.将要监视的信号拖到“显示”区域并选择图形窗口。

3.将要调优的参数拖到“显示”区域并选择“参数”窗口。

4.点击开始测量,以开始监控选定的信号。

5.使用“参数”窗口调优参数。

CANape中的校准故障排除

当您使用CANape进行参数校准时,您可能会遇到以下错误:

  • CANape连接失败,出现错误:ECU没有回应

解决方法:检查“COM Port”和“波特率”的设置是否正确。如果错误仍然存在,请按Arduino板上的Reset按钮重新连接。

  • 数据采集不会在单击时启动开始第一次。

若要解决此问题,请单击开始一次。

发生这个问题的原因是CANape将命令0xD7 (GET_DAQ_EVENT_INFO)和0xDC (GET_DAQ_CLOCK)发送给从服务器,即使这些命令在ASAP2文件中没有作为支持的可选命令列出。金宝app默认情况下,CANape具有XCP_OPTIONAL_CMD_AUTO_LEARNING特性,该特性知道不支持GET_DAQ_EVENT_INFO和GET_DAQ_CLOCK命令,并在第二次尝试时正确发送DAQ。金宝app此信息将保存在项目数据库中,因此同一项目不会再次发生故障。

限制

信号监控或参数类型调整只能在ARM内核的Arduino上完成。