DoIP的基本信息(一)
DoIP目标是解决传输速率不够的问题。
在应用层,DoIP和CAN都使用ISO 14229
在传输层,DoIP使用ISO 13400-2 CAN使用ISO 15765-2
在物理层,DoIP使用IEEE 802.3 CAN使用ISO 11898
DOIP在以太网上进行诊断命令传输,相比于CAN,速率可以高到100-200倍。在网络上的总体传输速率可以达到300-400倍。
DoIP在五层模型上
DoIP基于TCP和UDP,可以支持IPv4和IPv6。
设备使用IPv4,那么同时也要支持网络层的ARP和ICMP协议
设备使用IPv6,那么同时也要支持网络层的ICMPv6以及NDP协议。
物理层:100Base-TX
100:100M的传输速率
Base:传输方式为基带传输。
T:使用双绞线传输
X:使用两对双绞线传输。
术语和缩写
DoIP Edge Node:DoIP边缘节点。
Network Node:传统的CAN链,都可以成为网络节点。
Logical Addressing(Phy/Fun):逻辑寻址与CAN没有区别。分为功能寻址与物理寻址。
SA:source Address :源逻辑地址。CAN是总线型的,所以不需要目标逻辑地址,所以可以类比为CAN id。
TA:Target Address:目的逻辑地址。
GID:一般把边缘节点设置为网关。
VIN:17个字节的车辆识别码。
上面的框是车内,下面框是车外。
DOIP edge node(DoIP边缘节点)会通过网线与激活线。与外部的测试设备相连。同时它也与车内的许多节点相连。 边缘节点会分一个内端口,一个外端口。内端口:对应车内通信。外端口:对应与车外通信的端口。
(车辆与诊断设备,通过激活线+网线相连)
激活线:意义在于为了把车辆减低电磁干扰。激活线与边缘节点连接时候,诊断功能才会开启,达到降低电磁干扰与电源消耗的作用。
应用场景1:车辆检测和维修-售后的时候,通过诊断读取车辆的状态进行故障跟踪。
场景2:车辆/ECU软件重编程。车辆软件的更新,对应的是产品工程的模式,需要车辆进行升级,大量数据会发往ECU。
3:车辆/ECU的下线模式。对车辆信息和状态进行读取,同时会对多个车辆进行操作。
场景1:直接点对点
2(PC)通过网线与被测车辆建立连接,可以实现诊断,读取车辆状态以及车辆信息等等内容。
场景2:
开发生产售后的过程中遇到问题,如车辆在远程抛锚,或者车辆在生产线遇到问题需要进行诊断。
诊断仪通过一个太网的交换机或者WLAN的一个接入点与车辆通信(左侧)
也可以通过WIFI或者无线信号与车辆通信(右侧)
在 这个过程中,车辆执行识别机制,能够处理并且拒绝某一次或者多次的连接请求。
场景3:
测试设备4与车辆6通过网线连接。
测试设备4与车辆8通过无线进行连接。车辆在售后维修厂或经销商那里进行远程升级和诊断。
场景4:多个外部测试设备与单个车辆连接
诊断设备与车辆建立2个网络连接。
看左边红框部分,车辆车机与仪表,分别需要一个诊断和一个升级的时候,建立2条逻辑连接,执行不同任务。(ps:所以线变成了2条虚线)
车辆可以同时与多个诊断仪相连。
右边红框是多个诊断仪与一个车辆连接。不同的诊断仪会进行不同的诊断或者刷写的操作,13400规定,同时只能执行一条逻辑连接的任务。
接下来内容:车辆端以及诊断仪,在物理层和数据链路层,车辆激活线的相关要求。
DoIP边缘节点和测试仪,通过激活线和两对双绞线相连。
复习:激活线功能-降低电磁干扰和功耗。
为什么要支持电压隔离:防止雷击或者静电对于端口强电压的注入,造成损害
为什么支持100M还要支持10M?
答:当车辆和测试仪刚刚连接,因为可能达不到100M的速率,所以可以做降速处理,用10MBASE-T的方式进行传输。
支持自动传输机制:因为可能会有传输速率的切换和双工模式的切换
Auto-MDI(X)
直连线:接受对接受,发送对发送
交叉线:接受对发送,发送对接收。
为什么这样设计:电脑和电脑相连,端口相同,那么使用交叉线。电脑和路由器等相连:电脑和路由器在内部做好了交叉,所以不需要外部网线做交叉。所以使用直连线就可以。
支持Auto-MDI(X),那么就可以直连线和交叉线全部适配。
为什么 边缘节点不要求支持Auto-MDI(X):测试仪经常连接多个平台和车辆,为了减少冗余,对测试仪做了支持要求,边缘节点不作要求。
link状态:比如有个灯变亮、通知:比如有个提示:网络已经连接。
局域网唤醒:需要支持车辆端的MAC地址,通常诊断设备和车辆相连时没有办法及时获取MAC地址,所以使用局域网唤醒功能就会出现些问题。同时
以太网控制器的静态电容会增大。
右边电路图是双绞线,一端发送一端接收。
12V对应的乘用车,24V对应的商用车。
什么是乘用车和商用车?
乘用车是为了使生活便利而设计,用于运载人员及其行李/或偶尔运载物品,涵盖了轿车、微型客车以及不超过9座的轻型客车; 商用车则主要是为企业经营获取利润而设计,用于运输大量的人或者货物,包含了所有的货载汽车和9座以上的客车。
电压在0V,车辆在熄火或者 说不激活状态,但是在电压达到5V后,且电压持续时间超过500ms,就会进入激活状态。
当电压下降到2V以下,并且持续200ms时间以上。这时候汽车进入失火状态。
13400定义,最大电压支持
激活线要求:
13400里面给了两种:
车辆端:内部有一个激活电路的设计。
第一种:激活门限3.4V。3.4V是三极管(圆圈位置)的激活电压。电压超过3.4V集电极和发射极就会导通。可以把npn型的这个三极管看成是一个开关的作用,是为了实现我们μc,也就是车辆微控制器对车辆激活线的控制。
车辆端电路2的激活门限为4.4V
与上一张图相比,电容电阻的值发生了改变,整体电路的设计框架是没有变化的。
问题:有3.4V电路了,为什么要用4.4V?
答:在OBD解答。
4.4V激活电压门限高,所以抗干扰能力弱,但是比3.4V需要的电量少一些。
诊断 线束使用家庭用的普通网线即可。也就是通常说的Cat5.
诊断仪到OBD线的长度不超过50米。
OBD接口的两种布局方式:
第一种:CAN高在1,CAN低在9
第二种:CAN高在3,CAN低在11
在实际设计过程中,这两种OBD接口的布置,和前面激活电路的设计结合起来。
通过8口(也就是激活线连接的位置),通过检查8口电压的变化,在设计诊断仪的时候,把这两种以太网接口做划分,3.4V对应第一种还是第二种布局方式这样子。具体诊断仪电路是怎么设计的,在13400月推进,可以有兴趣看。
来源视频:
qq_41242990: 引用「’) or ‘1’=’1’/」 您好,测试的时候,这里面的单引号与双引号是不是都应该换为英文的呀