登录 | 注册 退出 我要上传 我要投稿

一文读懂以太网与CANoe的配置

汽车电子与软件 2024-05-07

1 概述

以太网在视频数据传输、宽带骨干网络、IP诊断(DoIP)以及电动汽车与充电站之间的通信等领域特别有用。Ethernet.Option扩展 CANoe 以包括对以太网网络的支持,允许使用接口硬件,例如VN5600系列以太网接口或PC上可用的以太网接口,还扩展了CANoe,以包括特定的协议,如SOME/IP,SOME/IP-SD,IP,TCP,UDP,TSN / AVB等等。

VN5600 系列以太网接口专为仿真和测量目的而设计,具有特定优势,例如高时间戳分辨率、与其他vector总线接口同步、点对点连接监控和拓扑精确的仿真。VN5600还支持特定于汽车的物理层,例如 100BASE-T1 (OABR) 和 1000BASE-T1这样就可以直接访问物理层。

4d4aa1ae99408d8f16f332cb1a84666d_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

图1:CANoe .以太网配置,用于在“跟踪”窗口中模拟和分析信号

CANoe可以模拟多个以太网节点的。每个网络节点在这里都由其自己的 TCP/IP 堆栈表示。这确保了与真实节点对应的通信行为。此外,通过对以太网数据包进行有针对性的伪造,可以测试可重现的嵌入式实现,并提高其对协议错误的鲁棒性。通过支持汽车领域典型的数据库格式(AUTOSAR ARKML和Fibex)和协议(SOME/IP,DoIP等),用户可以直接访问应用信号。这大大支持并简化了通信和应用程序数据的分析。

连同VN5600系列以太网接口,CANoe .Ethernet也适用于测量网关到其他车辆网络的信号转换中的延迟时间。例如,这样就可以跟踪整个车辆的诊断信息,并检查其一致性。以太网协议第2层(数据链路层)上的错误不仅可以可靠地检测和显示,还可以被激发。


9a4307bf2ce7815743e47f3319b274a9_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

  • 图 2:以太网数据包生成器和以太网交互式生成器用于方便地创建和发送以太网帧,无需编程

下面具体聊聊在CANoe工程的实操和编程。

2 新建CANoe工程

新建一个普通Demon(ETH工程)

a07ffbe86b4a8feba02f22bc2e6250c6_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

505810ac33c6d8e79208958f86635ecc_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

配置Vector Channel

在Option中配置1路以太网(其余无所谓)

1a466051293feed7360df9b3771dd497_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

配置HardWare

在AccessMode中,VN56x0设备使用Channel-Base Mode(新驱动中体现,旧驱动则默认为Channel-Base Mode)

25aed64ee58304b02419e38d3b55c349_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

在Device Configuration中使用Direct Connection模式

具体的Channel模式(Master/Slave)则视DUT而定

aec7cf0f1eaf9fc4414fc5a82a8d7080_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

配置IP/Stack

在Simulation中配置V56x0的TCP/IP工作信息

eb50040583d822bd2c2aaf562075cc75_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

73c9e41f6d766552b576f9404be00909_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

配置8021 Vlan信息

92e12aa30f52c2c04aa2604665324597_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

配置TCP/IP信息

需要注意的是如果控制器支持普通多路信息则需要分别配置IP信息(如下图),

8849c9b144b8d374cca32421b0d69e2c_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

普通信息

225e94b42bb2dd1e8c60a1c26addd829_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

带Vlan的信息

编写仿真脚本

新建CAPL节点后需要单独配置其IP/Stack属性,具体方式为沿用CANoe硬件设置即可

4dbad92d12bc3a6566672056a521621a_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

296fc941432c72a71f0bea0e3775d424_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

以一个TCP握手为例,代码如下

// An highlighted block

on key 'i'{  dword gClientSocket;       // The client socket IP_Endpoint localEndpoint; IP_Endpoint remoteEndpoint; char IPV4_DesADD[16]= "172.16.6.4"; dword Port_Des=51001;  /**************配置信息******************/ remoteEndpoint.ParseEndpointFromString( IPV4_DesADD ); remoteEndpoint.PortNumber = Port_Des;//@sysvar::ChatClient1::ServerPortNumber; localEndpoint = IP_Endpoint(172.16.6.2:0);  /**************开启本地Socket端口******************/ gClientSocket = TcpOpen( localEndpoint );  /**************开始连接******************/ TcpConnect( gClientSocket, remoteEndpoint );  }

测试结果

543e82ff80d4b009fa65f40ca09da48d_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

0.png


下一篇: 汽车TBOX介绍
上一篇: 【网络安全】通过攻击分析增强汽车领域信息物理系统的网络安全
相关文章
返回顶部小火箭