如沐春风 发表于 2006-7-12 19:14:33

原创】管中窥豹--从汽车通讯协议看德国车与日本车

原创】管中窥豹--从汽车通讯协议看德国车与日本车

管中窥豹--从汽车通讯协议看德国车与日本车

不管在哪个论坛里,出于民族感情也好,个人喜好也罢,总有那么两伙水火不容的对立门派,这个说德国车结实,那个说日本车省油,众说纷纭,莫

衷一是。
那么,到底买车该选什么车?或者说,到底什么车好呢?这个问题就像一个永远也没有绝对答案的问题,谁也不能够给你一个明确的答案。
德国车是欧洲高品质轿车的代表作,严谨的工作作风贯穿于汽车制造的每个环节,相信我们在很多方面都可以看到,体会到。在这里,我想从汽车通

讯协议这个很小的细节来看德国车与日本车之间的区别,至于可以得出什么结论,就如某人所说:“一千个读者,就有一千个哈姆雷特”。
作为一个汽车技术人员,每天都在和汽车打交道,将汽车电脑之间的通讯数据捕获下来,分析,研究,然后,在繁杂的二进制代码中获得我想要的信

息。单调而乏味的工作,需要自己去挖掘无穷的乐趣。而我,沉迷其中,不能自拔。

作为德国车的典范,奥迪可谓经典之作,充分诠释了德国人严谨的工作作风。
那么我们就来看汽车诊断仪器与奥迪SRS之间部分的通讯过程,再从通讯协议的角度来比较一下德国车与日本车之间的区别。


首先,说明一下汽车通讯协议的内容:通讯协议是用来约定逻辑0,1的表达方式、字节的组成、通讯帧的结构、以及具体功能的命令及参数的定义,

ECU回应的解析方法等内容的规定,通常由汽车生产厂家来定义。
包含以下内容:
1:物理连接 K line J1962/7
2:物理层 K line for ISO9141
3:链路层 等同 RS-232 协议 10个2进制表示一个字 字长8位2进制 一个L电平开始位+8位数据+1个H位停止位=10个二进制位4:
4:传输层 BOSCH ISO9141 协议 ;按字取反数据效验
ISO9141 Format: DL + Counter + SID + Parameter + 03H
        ┃   ┃  ┃   ┃    03H 通讯帧结束标志
        ┃   ┃  ┃   ┗━━━━━ Parameter 参数 也可以不带参数
        ┃   ┃  ┗━━━━━━━━ SID 命令字
        ┃   ┗━━━━━━━━━━━━ Counter 帧记数器
        ┗━━━━━━━━━━━━━━━ DL 数据长度 范围 03H~FFH
以下有几个名词要解释一下:
1:ECU=electronics control unit电子控制单元,在这例子是AIRBAG。
2:SCANNER=扫描仪。这里使用的是深圳威宁达生产的金德K81多功能检测仪。
3:ISO 9141 帧格式,简单的说,就是ECU与SCANNER之间通讯的方式。
*************************ISO 9141 帧格式*****************************
ECU            SCANNER
AIRBAG           K81
*******************************************************************
            < 5 Baud initialization(发送5波特率物理地址15H 气囊系统)
ISO code >
            < Complemented key 2 (KB2 取反回应 表示正确收到 55 01 8A)
Identification block >
            < Acknowledge block(09H)
Identification block >
            < Acknowledge block(09H)
Acknowledge block >
            < ACK block/Request block(09H或0AH 或0BH)
ACK block/Request block >
            < ........................
...................... >
            < End diagnosis block (03H)
*************************************************************************
再看看示例:

55 01 8A
75
0F F0 01 FE F6 09 34 CB 42 BD 30 CF 39 C6 35 CA 39 C6 36 C9 35 CA 35 CA 52 AD 20 DF 20 DF 03
03 FC 02 FD 09 F6 03
0F F0 03 FC F6 09 41 BE 69 96 72 8D 62 9D 61 9E 67 98 20 DF 46 B9 72 8D 6F 90 6E 91 74 8B 03
03 FC 04 FB 09 F6 03
0E F1 05 FA F6 09 2B D4 53 AC 65 9A 69 96 74 8B 65 9A 20 DF 30 CF 30 CF 30 CF 31 CE 03
03 FC 06 F9 09 F6 03
08 F7 07 F8 F6 09 00 FF 01 FE 98 67 00 FF 00 FF 03
03 FC 08 F7 09 F6 03

再来解释这段话的意思:
1 2
┃ ┃
┃ ┃
55 01 8A
75


3
1:由诊断仪器发送5波特率物理地址15H 气囊系统地址码:15H,15H就是指汽车上的AIRBAG。
2:ECU发送ISO code协议字是:018A,指通讯协议是KWP1281,表示通讯协议名: 01 8A。
3:8A取反得到回应75, 表示正确收到 55 01 8A

取反回应 表示正确收到前一数据。
┃ ┃ ┃ ┃
┃ ┃ ┃ ┃      ┃ ┃42和BD也互为反码。
┃ ┃ ┃ ┃      ┃ ┃
0F F0 01 FE F6 09 34 CB 42 BD 30 CF 39 36 C9 35 CA 35 CA 52 AD 03
┃ ┃ ┃ ┃                     03H 通讯帧结束标志
┃ ┃ ┃ ┗━━━━━ Parameter 参数 也可以不带参数
┃ ┃ ┗━━━━━━━━ SID 命令字
┃ ┗━━━━━━━━━━━━ Counter 帧记数器
┗━━━━━━━━━━━━━━━ DL 数据长度 范围 03H~FFH

这样的通讯方式的确效率不够高,但是非常严谨,绝对够严谨。

再看看日本车的通讯方式,这里以本田协议为例:

20 05 76 0A 5B 00 0D 00 00 02 94 03 40 21 00 00 00 F9
20 05 40 10 8B 00 13 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ED
20 05 50 10 7B 00 13 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ED
21 04 01 DA 01 03 FC 21 04 03 D8 01 03 FC

20=地址码,这里是发动机系统。
05=数据长度。
76 0A=SID 命令字,读取电脑版本号。
02 94 03 40 21= H/W ID:02 94 03 40 21。
仔细观察一下,就会发现,虽然有效验,但是没有取反效验的过程。

如沐春风 发表于 2006-7-12 19:21:22

回复: 原创】管中窥豹--从汽车通讯协议看德国车与日本车

对齐的问题好难,编辑了好几次~

如沐春风 发表于 2006-7-12 19:38:37

回复: 原创】管中窥豹--从汽车通讯协议看德国车与日本车

不过,还是搞定了~~$-) 『必胜』

FCH 发表于 2006-7-14 13:35:11

回复: 原创】管中窥豹--从汽车通讯协议看德国车与日本车

楼主一定是行内人!『崇拜』

内容很多看不太懂,但是很佩服楼主的敬业精神!!!

俺最想知道比较后的结果,以及对驾驶者的影响。。。

halley 发表于 2006-7-14 15:11:06

回复: 原创】管中窥豹--从汽车通讯协议看德国车与日本车

楼主好样的,给奖励。

如沐春风 发表于 2006-7-15 00:04:45

回复: 原创】管中窥豹--从汽车通讯协议看德国车与日本车

楼上的,是否该来点实际行动?:-)

halley 发表于 2006-7-16 05:19:32

回复: 原创】管中窥豹--从汽车通讯协议看德国车与日本车

Post by 如沐春风
楼上的,是否该来点实际行动?:-)

记得有奖励的啦*-) 。不过,没关系,再奖励一下也是应该的。就是手快了一些,便宜了老F$-)

如沐春风 发表于 2006-7-16 13:30:50

回复: 原创】管中窥豹--从汽车通讯协议看德国车与日本车

halley ,谢谢~~:-Dvbmenu_register("postmenu_415929", true);

html 发表于 2006-7-17 03:08:01

回复: 原创】管中窥豹--从汽车通讯协议看德国车与日本车

嘿嘿,汽车通讯协议俺是外行。

单从网络协议看,最复杂完美的未必是实用有效的。

并不完美的Ethernet最终统治通用网络协议应该算最大的一个例子。

虽然,俺不买日本车。

如沐春风 发表于 2006-7-17 21:22:53

回复: 原创】管中窥豹--从汽车通讯协议看德国车与日本车

Post by html
嘿嘿,汽车通讯协议俺是外行。

单从网络协议看,最复杂完美的未必是实用有效的。

并不完美的Ethernet最终统治通用网络协议应该算最大的一个例子。

虽然,俺不买日本车。

『支持』 『支持』 『支持』

渔夕阳 发表于 2006-7-24 09:40:50

回复: 原创】管中窥豹--从汽车通讯协议看德国车与日本车

等着看啊,请继续啊
页: [1]
查看完整版本: 原创】管中窥豹--从汽车通讯协议看德国车与日本车