3分钟,11张图,教你学会CANoe标定小工具
前言
说起CANoe,大家一定不会觉得陌生;CANoe(CAN open environment)是Vector公司推出的一款总线开发工具,它作为全球汽车电子设计的利器,主要为汽车总线的开发、仿真、测试、诊断和分析而诞生。它强大丰富的功能,在汽车行业可谓家喻户晓。CANoe不仅自身武艺超群,它还有许多得力干将。
今天我们就来聊一聊其中一位猛士——Option AMD/XCP模块,为CANoe开拓了读写ECU内部参数的新世界。它扩展了CANoe的功能领域,使其具备快速加载A2L文件,并通过ASMA官方定义的标准协议XCP/CCP来访问以及修改ECU内存参数的能力。在该模块的加持之下,我们可以对参数修改后系统的响应结果进行监测;以实现总线信号和ECU内部参数同时分析的功能。
基本概念
在正式使用该功能前,我们先来看看相关基本概念。
- AMD(AUTOSAR Measurement and Debugging):基于AUTOSAR架构测量和调试
- AUTOSAR(Automotive Open System Architecture):汽车开放式系统架构
- ASAM(Association for Standardization of Automation and Measuring Systems):自动化及测量系统标准化协会
- XCP协议(eXtended Calibration Protocol):应用在CAN、Ethernet、Flexray、LIN 、etc.
- CCP协议(CAN Calibration Protocol):应用在CAN总线上
- A2L文件:ECU描述文件,包含内部数据对象信息
- Seed&key文件:ECU访问保护文件
图1 访问机制
功能窗口
说了这么多,让我们进入正题一起操作。
首先,我们在使用时需要license,并在软件中激活该功能模块,方可显示此功能图标(以CANoe14为例)。
图2 模块激活
正确激活后,会在CANoe上方菜单功能页Diagnostics&XCP中添加XCP/CCP功能模块。
图3 功能图标
打开XCP/CCP窗口,我们可以方便地添加A2L文件,查看并修改设备中的详细信息。如果ECU被写保护,我们需要添加相应的Seed&Key文件来确保正确通讯。
图4 设备配置
在Measurement Groupe窗口中可以根据需要配置不同的变量,及其读取方式。激活Configuration的变量后,在CANoe中的Environment\System Variables会自动创建相应的系统变量。A2L中变量名包含的“.”“()”等会用“_”代替。其中,Maps和Curves类型变量会以Structs类型变量显示。
图5 变量配置
图6 系统变量
在我们与ECU正常建立起通讯后,启动工程,便可以读取ECU的数据。对于ECU内部定义的标定量可以对其进行修改,对测量量可以读取相应的数值。
图7 变量信息
变量调用
被激活的变量会自动生成CANoe工程中的系统变量,我们可以基于此进行变量调用。
在观测窗口中调用
例如我们在Data Window,右键选择变量,添加A2L文件中被激活的信号。
图8 Data窗口
图9 添加变量
当然我们也可以在不同窗口中进行观测,如Graphic窗口。
图10 Graphic窗口
对于所添加的系统变量,可以通过鼠标右键选择Change Value,即可在值的区间内进行修改,并同时进行观测。
图11 面板调用
在CAPL中调用
作为系统变量,我们也能在CAPL脚本中对我们的信号调用。
例如:
读取:sysGetVariableInt/sysGetVariableFloat
赋值:sysSetVariableInt/sysSetVariableFloat
读取、赋值也可以使用:@Namespace::Variable
示例:
intValue = @Namespace1::Parameter2; //取值
@Debug::MotorValues::EngineSpeed = $EngineSpeed; //赋值
总结
CANoe软件有了Option AMD/XCP功能模块的加持后如虎添翼,能够对ECU内存参数进行读写。但在面对专业的标定应用场景时,例如:需要快速保存参数集文件、标定数据集管理、MAP/Curve数组标定等,则会显得吃力。此时我们就需要将重心转移到另一款强大的测量和标定工具——CANape上了。针对标定,您或许还有更多疑问:如果系统与ECU通讯需要大量的数据吞吐?需要快速的信息交互?或者CANape标定功能强大在哪里?
北汇信息作为Vector中国合作伙伴,不仅提供相应的工具、技术支持服务及培训,还针对不同的应用场景提供专业的解决方案。欢迎联系北汇信息,为您答疑解惑!
本文来自博客园,作者:{北汇信息},转载请注明原文链接:{https://www.cnblogs.com/polelink/}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix