以太网诊断协议DoIP(Ethernet Diagnostic Protocol DoIP)

系列文章目录

C++技能系列
Linux通信架构系列
C++高性能优化编程系列
深入理解软件架构设计系列
高级C++并发线程编程
设计模式系列

期待你的关注哦!!!
在这里插入图片描述

现在的一切都是为将来的梦想编织翅膀,让梦想在现实中展翅高飞。
Now everything is for the future of dream weaving wings, let the dream fly in reality.


诊断无论是从主机厂还是供应商,无论是从上层设计还是从顶层设计来说,诊断都是必不可少的,比如CAN诊断、LIN诊断、以太网诊断。

无论研发还是售前、售后都是需要诊断的,比如ECU的升级和刷写、4S店的升级刷新、OTA升级等。

1.1 诊断功能作用

(1)识别、检查、确认车辆状态
(2)提供车辆维护、维修、更新数据

1.2 车辆诊断方法

(1)本地诊断(比如4S店人员用OBD读取ECU信息,升级刷写)
(2)远程诊断(比如通过云端远程诊断)
(3)仪表显示(比如车辆仪表盘指示灯的显示胎压不足)

1.3 诊断功能发展历史

时间协议描述
1996ISO9141-2CARB Requirements for Interchange of Infomation
1999ISO14230Keyword Protocol 2000
1999ISO/DIS15765Diagnostics on CAN - base on KWP2000
2001ISO15031Communication for emissions-related diagnostics
2001ISO15765Diagnostics on CAN - base on UDS
2006ISO14229Unified Diagnostics Services (UDS)
2013ISO14229Unified Diagnostics Services (UDS)

1.4 车辆诊断功能协议

UDS(Unified Diagnostic Services,统一的诊断服务)诊断协议是在汽车电子ECU环境下的一种诊断通讯协议。简单来说,可以理解为UDS诊断协议就是ISO 14229协议,在ISO 14229协议中定义了UDS服务用法、服务格式等信息。UDS诊断最主要目的是为了能够快速准确判断车辆或者某个控制器的故障以及故障原因,从而为维修提供可靠的依据。

UDS-ISO:14229标准

ISO14229Unified Diagnostics Services (UDS)
ISO14229_1Specification and requirements - 定义了诊断服务,只有应用层,不涉及网络及实现。
ISO14229_2Session layer services
ISO14229_3Unified Diagnostics Services on Can implementation(UDSSonCAN)- 定义了UDS在CAN总线上的实现
ISO14229_4Unified Diagnostics Services on FlexRay implementation(UDSSonFR)
ISO14229_5Unified Diagnostics Services on IP implementation(UDSonIP)
ISO14229_6UDS on K-Line implementation(UDSonk-Line)
ISO14229_7UDS on Local interconnect network(UDSonk-LIN)

诊断协议是用于汽车行业诊断通信的需求规范,由ISO-14229系列标准定义。应用于OSI七层模型的应用层(第7层),它只规定了与诊断相关的服务需求,并未涉及通信机制,所以,它可以在不同的汽车总线(例如CAN,LIN,FleXRAY,Ethernet和K-line)上实现。
在这里插入图片描述
在使用ISO-14229时,下面的通信机制可以改变,比如基于CAN,基于LAN,基于FlexRay等。诊断通信过程其实很简单,诊断仪发送诊断请求(request),ECU给出诊断响应(response),而UDS就是为不同诊断功能request和response定义统一的内容和格式。

1.5 诊断功能通信要素

  • 服务 Service
    UDS诊断包括6大类,26种服务,每种服务都有自己独立的ID,即SID(Service Identifier)
    在这里插入图片描述

  • 会话Session
    可以理解为某种诊断模式或权限,即在不同的模式下,对不同的诊断服务的使用做了限制。
    在这里插入图片描述

功能码说明
1Defaut Session
2Pograming
3Extended
  • 故障码DTC

1.6 诊断功能通信流程

其实诊断通信的机制很简单,事件驱动型,一问一答。

类比client-server通信方式,诊断仪即客户端,发送request,服务器即ECU,收到request之后进行处理,然后向诊断仪回复response。

  • 需要确认的服务
    在这里插入图片描述

  • 不需要确认的服务
    在这里插入图片描述

但是,诊断协议有自己的特色,它规定了request和response的格式,在收到request的时候要做格式检查。同时由于寻址方式的不同,有无sub-function的支持等,也会影响request和response的处理方式和结果。

1.7 DoIP协议

DoIP:Diagnositc communication over Internet Protocol

  • 一种用于UDS功能的以太网通信协议
  • ISO 13400

1.7.1 DoIP应用场景:

(1)本地一对一
(2)本地多对多
(3)远程一对多
(4)远程混合式

1.7.2 DoIP ISO:13400标准

标准:
ISO:13400_1:定义基本信息和用例
ISO:13400_2:网络层协议、传输层服务
ISO:13400_3:基于802.3,定义线序和接口
ISO:13400_4:定义诊断连接器
ISO:13400_5:一致性测试

1.7.3 DoIP消息格式:

DoIP报文由DoIP报头和Payload(有效载荷)组成,具体如下图所示。
在这里插入图片描述

  • (1)DoIP报头包含:DoIP协议版本号,目前为0x02(DoIP 2012)。
  • (2)协议版本号取反,目前为0xFD。注意:协议书上特别说明了Protocol version可以为0xFF,设这个值的作用是,当客户端和服务端的协议版本不匹配,可以设置此值绕过协议头版本不匹配而拒绝请求的case。
  • (3)Payload类型,分为3大类:
    ①节点管理类,包含DoIP报头否定应答、车辆声明及标识、路由激活、在线检查;
    ②车辆信息类,包含DoIP实体状态、诊断电源模式信息;
    ③诊断数据类,包含诊断报文。
    关于每个消息类型的含义如下表所示,具体含义参考标准即可。
    在这里插入图片描述

1.7.4 DoIP通信流程

在这里插入图片描述

DoIP通信的4个阶段
(1)物理连接:Tester使用有线或无线的方式与车辆建立连接
物理连接线图:
在这里插入图片描述

(2)IP地址分配:静态或动态的分配IP地址,使Tester和车辆可以进行网络通信

  • 静态分配:Tester与车辆连接前需配置完成(前期开发测试时可静态分配)
  • 动态分配:DHCP协议动态分配IP地址(推荐:外部设备作为服务器,车辆作为客户端发起请DHCP求)

(3)车辆发现:Tester识别并确认被诊断车辆

  • 查找识别车辆的过程
  • 标识符:车辆VIN、EID、GID等信息
    (4)诊断会话通信:Tester与车辆进行诊断功能通信
  • 建立TCP连接
  • 诊断功能通信
    在这里插入图片描述

1.7.5 DoIP网关功能

DoIP网关通信流程

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
DOIPDiagnostics over Internet Protocol)是一种用于车辆诊断的通信协议,它使用以太网作为媒介,实现车载网络与诊断设备之间的数据通信。在车载以太网诊断中,边缘节点起到了路由数据的关键角色,因此对边缘节点的路由策略进行分析十分重要。 首先,边缘节点作为车载网络与诊断设备之间的桥梁,需要具备较强的路由功能,以确保数据能够快速准确地传输。因此,在设计边缘节点的路由策略时,需要考虑以下几个因素: 1. 网络拓扑:边缘节点需要了解整个车载网络的拓扑结构,包括各个节点之间的连接方式、节点的位置等信息。这样,边缘节点才能根据实际情况选择最优的数据传输路径。 2. 通信性能:边缘节点应该根据不同节点间的通信性能选择最佳的路由策略。如果有些节点之间的传输速度较快,可以直接通过较短的路径进行通信;而对于通信速度较慢的节点,可以选择通过其他节点进行中转,以提高整体的通信效率。 3. 可靠性:边缘节点的路由策略应考虑网络的可靠性,即当某个节点发生故障时,是否能够自动寻找备用路径。这样可以确保即使某个节点出现问题,车载网络的连通性也能够得到保障。 总之,车载以太网诊断中的边缘节点的路由策略分析需要综合考虑网络拓扑、通信性能和可靠性等因素。只有通过合理的路由策略,才能确保车载网络与诊断设备之间的稳定高效的数据传输。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Allen.Su

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值