专栏算法工具链CANape入门教程介绍8-CANape与Simulink联合开发

CANape入门教程介绍8-CANape与Simulink联合开发

巴山夜雨2024-12-14
23
0

由于MATLAB Scopes可视化功能有限,不足以支持工程师进行详细的数据分析。优化模型参数的过程费时费力——需修改MATLAB Workspace中的值或生成特定的GUI元素。为此CANape推出的Simulink XCP Server功能,针对Simulink模型以及ECU内部数据的参数化和可视化,让模型调参变得简单。并且从CANape19.0版本起,该功能面向所有用户,不需额外选配,所以开发人员可以充分利用它们各自的优势,实现更加高效和精确的开发过程。

img

1.CANape Add-On插件的安装

Simulink XCP Server功能的实现需要基于MATLAB集成包——VectorMATLAB/Simulink MC Add-On(可在Vector官网上下载www.vector.com,如下图),适用于MATLAB版本R2016a-R2020b。
img

安装过后,运行matlab后命令行窗口会弹出如下界面。

img

成功安装Add-on插件后,可以在Simulink Library Browser库中看到CANapeI/O模块,如下图所示。

img

 

2.模型搭建

搭建Simulink模型时,我们通常需要将整车CAN的信号作为输入信号,将DBC中的报文信号通过与CANape的Input模块关联起来,如下图所示。

img

Simulink的不同模块可以使用Function-Call来设置调用周期。

img

输出信号可以使用CAN FD Pack模块将相关接口信号按DBC中的规则组成报文,随后传至CANapeOutput模块进行输出。

img
img

报文输出时,需要对该报文进行CRC校验,CRC校验算法由主机厂输入,我们需要根据该算法及DBC文件中的规则计算出相关报文的CRC值,如下图所示。

img

该实例中的CRC算法如下:

 

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

  •  

 

3.模型编译生成dll文件

打开设置,选择code Generation,之后选择系统目标文件与编译语言,目标文件选择与CANape相关的cnp.tlc,编译语言选择C语言。

img

之后配置dll文件的存储地址,可勾选同时生成A2L文件。

img

按下图配置模型运行的周期。

img

 

4.CANape导入dll文件

打开CANape工程,点击Measurment Configuration,之后在Algorithms下面的Matlab/Simulink中右键选择Insert Matlab/Simulink,将生成的dll文件导入,如下图所示。

img
img

 

5.Input/Output信号相关联

将dll文件中的Input信号与Output信号同CANapeDevice中的相关信号匹配起来,如下图所示,先筛选出未关联的inputs量,根据信号/变量来源不同分别与Global variables或ADAS进行关联。备注:如P_ABA_Req等P_开头的一些变量需与CANape中的Global变量进行关联。其他的一些整车状态等信号需与ADAS进行关联。
img

之后筛选出未关联的outputs量,与Global variables进行关联,输出的CANFD报文可与CANape Function中创建的报文相关联,如下图所示。

img

按下图所述规则编写CAN报文发送函数function MessageOut_ADAS_CMD_20_20ms (),确保可正常编译。

img

在measurement中将MessageOut_ADAS_CMD_20_20ms添加至Functions模块,并设置为周期型20ms(需按照DBC中报文定义进行设置)。

img
最后,添加好需要的测量和标定参数到窗口中,便可实时在模型层面上进行调参。参数修改结果会自动保存在模型里;仿真结果可用MDF格式文件保存,方便工程师后续进行分析。

 

文章转载自公众号:智驾人在路上
作者:Yang00168

原文链接:https://mp.weixin.qq.com/s/Ta0D3_x5Ha0wUnYDuJNjfQ

算法工具链
技术深度解析前沿技术
评论0
0/1000