随着车载以太网在现代汽车电子开发中的广泛应用, CANoe option Ethernet选项包已成为工程师进行以太网仿真、测试与诊断的核心工具。然而,在配置以及使用过程中,用户常会遇到一系列问题。本文将对一些高频问题进行系统性梳理,并提供解决方案与排查思路,希望能够帮助您快速定位并解决问题。
一、在使用CANoe option ETH通信时,无法建立连接怎么办?
问题描述:
在进行以太网通信时,点击CANoe运行按键,Trace窗口显示link down,以太网通信没有建立连接,如下图所示。

图 1 Trace窗口显示link down
原因与解决方法:
这种情况大多是由基础硬件配置所导致的,建议从以下几方面检查:
(1)检查线束连接:确认线束连接是否稳固。如果线束连接正常,可以尝试更换线束,排除线束本身故障原因。
(2)更换驱动程序:检查驱动程序(Vector Driver Setup)是否为最新版本(截至本文目前最新版本为25.40.1)。驱动程序版本定期更新,请以Vector官网的最新信息为准。
(3)确认时钟模式配置:使用车载以太网100/1000Base-T1,需要一个主时钟模式(Master)和一个从时钟模式(Slave)。如果通道两端配置了相同的时钟模式,则无法建立链接。

图 2 以太网硬件配置
二、在CANoe的Trace窗口中,为什么以太网报文Ethernet Packet出现两次?
问题描述:
CANoe仿真节点向真实ECU发送了一帧以太网报文,在Trace窗口可以看到同一帧以太网报文出现了两次,导致分析复杂并且CPU负载过高,如下图所示。

图 3 Trace窗口同一帧报文重复出现
原因分析:
此现象是 Network-based 测量模式的特性。在该模式下,系统同时捕获软件层面的发送指令(经虚拟端口)与硬件层面的实际发送(经物理端口)。对于同一个UDP报文发送事件,这两次独立的捕获行为便导致了在Trace窗口中出现两次记录。
解决方法:
可以通过禁用仿真端口的观测,只激活真实PHY的测量端口来解决这一问题。打开CANoe Options→Bus Systems/Protocols→Ethernet,取消勾选”Allow the use of Simulation Ports in the Measurement Setup选项”。

图 4 禁用仿真端口观测设置
三、 如何手动发送PING报文:
使用场景:
在车载以太网通信中,会通过发送PING (ICMP Echo)报文方式,去验证目标IP是否在线、网络路径是否通畅。
操作步骤:
通过CANoe option ETH选项包,建立一个仿真节点以及Packet Builder节点,用来模拟通信双方。

图 5 建立仿真节点
(1)发送PING(Echo Request)报文之前先通过ARP报文建立连接,打开Packet Builder,发送ARP报文,如下图所示

图 6 发送ARP报文
(2)收到ARP回复报文以后,发送PING(Echo Request)报文

图 7 发送PING报文

图 8 Trace窗口记录
注:由于仿真ECU没有编写脚本,只存在底层ARP功能,不具备回复PING报文功能,所以Trace窗口没有看到PONG响应报文,真实ECU在正常连接及配置的情况下可以看到PONG响应报文。
四、仿真DoIP+Tester常见问题及解决方法
1. 如何更改 DOIP报文协议版本?
问题描述:
不同客户进行DoIP测试时,由于ECU遵循的诊断标准版本不同(部分使用ISO 13400-2:2012,部分使用ISO 13400-2:2019),需要在CANoe中进行相应的协议版本切换,以确保通信兼容性。
操作步骤:
主要通过诊断配置界面完成,无需更改工程结构。
(1)进入 Diagnostics / ISO TP Configuration 窗口
(2)找到DoIP/HSFZ Main Setting→Protocol,从下拉菜单中选择:
DoIP V2 (ISO 13400-2:2012):对应2012版协议。
DoIP V3 (ISO 13400-2:2019):对应2019版协议。
(3)取消勾选Send 0xFF as protocol version in Vehicle ldentification Request messages选项,Tester 发送的车辆识别请求报文中将使用(2)中设置的协议版本:
图 9 更改协议版本操作

图 10 2019版协议报文格式
注意:请根据被测件(ECU)实际遵循的协议版本来设置此选项。若版本不匹配,可能导致DoIP路由激活失败或诊断报文被拒绝。
2. 如何跳过 Vehicle Identification 阶段?
问题描述:
CANoe Tester 和 ECU 在 DoIP 通信时,默认遵循完整通信流程,但是对于非边缘节点而言,是不支持Vehicle Identification流程的,不会回复车辆识别响应,这种情况下需要跳过Vehicle Identification。
(1)进入 Diagnostics / ISO TP Configuration 窗口
(2)找到DoIP/HSFZ Settings,修改Vehicle Identification Request (VIR)参数,将 Address 设为目标 ECU 的IP 地址,Request As设为”Use given address, omit Vehicle Identification phase”:

图 11 跳过车辆声明操作
启动 CANoe 工程,在使用"Built-in"诊断通道(如诊断控制台)进行诊断时,即可直接与 ECU 建立 TCP 连接,跳过 Vehicle Identification 阶段。
3. 如何激活并配置 Routing Activation Request 的 OEMspecific 字段?
问题描述:
在 CANoe Tester 与 ECU 进行 DoIP 通信时,默认情况下,Routing Activation Request 不包含”OEMspecific”字段,需要手动激活并配置。
操作步骤:
(1)定位 DoIP.ini 文件路径:打开 Options→General→File Locations→Location of application data,定位到 DoIP.ini 所在路径:

图 12 打开DoIP.ini文件
(2)DoIP.ini 中配置 OEMspecific字段:使用文本编辑工具打开 DoIP.ini。查找参数 SendRoutingActivationWithOEM 并将其值改为1,以激活路由激活请求中的OEMspecific字段。然后,继续查找参数OEMspecific,并根据需求修改其值。修改完成后,请保存文件:

图 13 更改DoIP.ini文件
(3)CDD 中配置 OEMspecific字段:CDD文件中必须包含一个特定于 DoIP 的接口。该接口需要包括通信参数 RoutingActivationWithOEMSpecific(值为1)和Routing Activation OEM Specific(值需与 DoIP.ini中 OEMspecific一致)。

图 14 修改CDD文件
注:此步骤针对CANoe17以上的版本,对于 CANoe 14/15/16,无需此步。
结语
以上就是CANoe 以太网功能模块的常见问题与对应解决方案的汇总,希望能为您的工作提供直接有效的帮助。在使用过程中,请结合具体版本与硬件环境灵活应用。如有其他问题,欢迎随时发送至邮箱support@dotrustech.com,我们会尽快帮您解决~
931

被折叠的 条评论
为什么被折叠?



