欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

实战技巧 | 利用TSMaster系统变量开启标定与诊断功能的操作指南

最编程 2024-08-10 07:51:26
...

随着电子模块的迅速增加,ADAS、无人驾驶场景带来的海量数据交互和实时性要求,OTA技术带来的信息安全挑战,对汽车总线仿真、测试、诊断、标定工具链的性能提出了更高的要求。本文主要讲解如何利用TSMaster的系统变量触发标定和诊断功能。

一、标定和诊断概述

1、标定

1)XCP/CCP标定

通过CCP或者XCP协议来实现对控制器内部参数进行动态调整的过程称之为标定。CCP协议:是一种基于CAN总线的标定协议。XCP协议:通用测试标定协议,是继CCP之后的协议升级版,可以应用于多种总线。

2)特点

1)均采用主从的模式,单个主机可以同时与多个从机通讯。

2)主机通过下发命令与从机建立连接,解锁,读取数据,修改参数等操作。

XCP/CCP协议,配合A2L文件,可以直接在软件上更改某些参数,执行器就会给相应的反馈。TSMaster 标定模块依赖如下两类文件和运行 XCP 或 CCP 协议栈的ECU。

2、诊断

TSMaster 提供了诊断控制台基础功能,用户可以根据需求配置自己的发送和应答请求。目前已经支持 CAN/CANFD/LIN/UDS BootLoader,后续将会支持Some/IP和DoIP等。

图片图片

二、标定和诊断使用

1、创建TSMaster标定

1)选择创建新工程或者创建空工程(后续选择保存位置),单击即可。

图片

2)点击应用 -> 标定管理器 ->设备配置(右击,新建ECU)->填写ECU名称确认即可创建成功。

图片

2、创建TSMaster诊断

点击Diagnositc ISO TP ->添加DIagnositc,页面将会弹出新的诊断框。

图片

3、TSMaster系统变量触发标定

1)选择驱动,点击XCP即可选择XCP/CCP协议。

图片

2)选择数据库,导入A2L文件,导入成功即可通过数据库协议内存,测量列表查看和配置相关信息。

图片

3)如需安全算法,点击协议 -> Speed和Key算法DLL文件,单击导入文件。

图片

4)选择逻辑通道,配置内存地址映射。

图片图片

5)点击连接ECU- >启动在线标定测量,即可成功连接。(如连接错误请检查逻辑通道,内存配置)

图片

6)点击数据库选择一个PWM信号,右击可以选择添加至信号激励、图形、面板、数值,如下所示:

图片

7)通过修改信号激励或者面板变量的值去更改信号的数值,通过图形和数值显示,信号值已被更改。

图片

8)同时支持C脚本更改变量的值,点击系统变量选择一个变量。

图片

9)复制写入代码。

图片图片

10) 通过C脚本,Step函数,实现每隔一秒数值加一。

图片

4、TSMaster系统变量触发诊断

1)首先点击诊断窗口 ->诊断 BasicConfig 窗体中,选中目标服务,然后右键菜单中把该诊断服务注册为系统变量,点击系统变量此变量将显示。

图片

2)在面板添加Button,关联此变量,更改面板值,可以观察图形中值已经被修改。

图片

3)通过C脚本使此变量0 1跳变,通过图形和面板可进行观察。

图片

三、二次开发

1、支持其他语言进行二次开发,本例使用C# 调用TSMaster API实现标定功能,使用软件为Visual Studio 2019。

创建一个新工程,步骤如下:选择C# -> Windows窗体应用 ->点击下一步。

图片

2、设置项目名称 -> 存储位置 ->点击创建。

图片

3、导入 TSMaster.dll文件,引用 -> 添加引用  选择dll文件,确认。

图片图片

4、点击引用,查看TSMaster 相关调用函数。

图片

5、添加TSCalibration类

点击添加 -> 类,修改名称 -->添加(A).成功创建TSCalibration 类。

图片

6、导入TSMaster 定义类型。

图片

7、通过public创建,读取和写入两个类。

图片

8、打开TSMaster 仿真 ->系统变量 ->内部变量,滑动条滑动到底部,即可看见标定控制器状态(Calibration.Status),标定控制器自动化寄存器状态(Calibration.Controller)。

图片

9、只需对系统变量值进行读取和写入就可触发标定。

图片

10、点击开启连接,打开最近关闭的TSMaster并启动,依次点击启动ECU,启动测量。

图片

11、输入变量名点击读取,实时值显示变量值为25。写入变量名,写入值50,即可看见变量的值变为50。

图片