CANoe来抢CANape饭碗了?快来看神仙打架——3分钟,11张图,教你学会CANoe标定小工具:基本概念 | 功能窗口 | 变量调用

说起CANoe,大家一定不会觉得陌生;CANoe(CAN open environment)是Vector公司推出的一款总线开发工具,它作为全球汽车电子设计的利器,主要为汽车总线的开发、仿真、测试、诊断和分析而诞生。它强大丰富的功能,在汽车行业可谓家喻户晓。CANoe不仅自身武艺超群,它还有许多得力干将。

今天我们就来聊一聊其中一位猛士——Option AMD/XCP模块,为CANoe开拓了读写ECU内部参数的新世界。它扩展了CANoe的功能领域,使其具备快速加载A2L文件,并通过ASMA官方定义的标准协议XCP/CCP来访问以及修改ECU内存参数的能力。在该模块的加持之下,我们可以对参数修改后系统的响应结果进行监测;以实现总线信号和ECU内部参数同时分析的功能。


1基本概念

在正式使用该功能前,我们先来看看相关基本概念。

( •̀ ω •́ )✧ AMD(AUTOSAR Measurement and Debugging):基于AUTOSAR架构测量和调试

( •̀ ω •́ )✧ AUTOSAR(Automotive Open System Architecture):汽车开放式系统架构

( •̀ ω •́ )✧ ASAM(Association for Standardization of Automation and Measuring Systems):自动化及测量系统标准化协会

( •̀ ω •́ )✧ XCP协议(Universal Measurement and Calibration Protocol):应用在CAN、Ethernet、Flexray、LIN 、etc.

( •̀ ω •́ )✧ CCP协议(CAN Calibration Protocol):应用在CAN总线上

( •̀ ω •́ )✧ A2L文件:ECU描述文件,包含内部数据对象信息

( •̀ ω •́ )✧ Seed&key文件:ECU访问保护文件

在这里插入图片描述

图1 访问机制

2.功能窗口

说了这么多,让我们进入正题一起操作。

首先,我们在使用时需要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 变量信息



3.变量调用

被激活的变量会自动生成CANoe工程中的系统变量,我们可以基于此进行变量调用。

1) 在观测窗口中调用

例如我们在Data Window,右键选择变量,添加A2L文件中被激活的信号。

在这里插入图片描述

图8 Data窗口

在这里插入图片描述

图9 添加变量

当然我们也可以在不同窗口中进行观测,如Graphic窗口。

在这里插入图片描述

图10 Graphic窗口

对于所添加的系统变量,可以通过鼠标右键选择Change Value,即可在值的区间内进行修改,并同时进行观测。

在这里插入图片描述

图11 面板调用

2) 在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中国合作伙伴,不仅提供相应的工具、技术支持服务及培训,还针对不同的应用场景提供专业的解决方案。欢迎联系北汇信息,为您答疑解惑!

在这里插入图片描述

北汇信息成立于2010年,是一家技术驱动的创新型服务企业。北汇信息始终专注于汽车电子领域的新技术和新产品,为整车厂和零部件企业提供完整的研发、测试解决方案。从测试工具、专用测试设备、完整测试方案到实车测试服务,我们与我们的客户一起努力,让中国的汽车变得越来越安全、越来越舒适、越来越智能。

评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值