获取车辆如下OBD信息:
VIN:Vehicle Identification Number
CALID:Calibration Identifications
CVN:Calibration verification number
一、SAE J1939协议
1、发送请求:18EA00F9 EC FE 00
来获取车辆VIN
2、通过请求 CALIBRATION INFORMATION (DM19),获取CVN和CALID。
发送请求:18EA00F9 00 D3 00
应答:18EC0000 10 14 00 03 FF 00 D3 00
数据,BYTE1=0x10,表明为RTS请求应答信息; 2、3字节(数据高字节在后)转为长度0x0014,表示数据长度为20字节;
4字节0x03,表示数据分为了3包; 6-8字节(数据高字节在后)表示请求的PGN为0x00D300。
继续接收余下3包数据:
18EB0000 01 14 01 00 19 5C 20 4E
18EB0000 02 19 80 25 52 00 32 47
18EB0000 03 80 3E E0 01 2E FF FF
其中,数据首字节为序号,03序号的最后一字节FF为填充。 FEE1的有效数据共19字节为:14 01 00 19 5C 20 4E 19 80 25 52
00 32 47 80 3E E0 01 2E
二、ISO15031协议
进系统时确认CAN-ID是11位还是29位(参考我的其他进系统文章):
如果是11位,请求CAN-ID为0x7DF,ECU#1响应CAN-ID为0x7E8;也可能是ECU#2响应,CAN-ID为0x7E9;
如果是29位,请求CAN-ID为0x18DB33F1,响应CAN-ID为0x18DAF1xx。
下面以11位CAN-ID为例详解。
1、读取VIN
请求如下:7DF 02 09 02 00 00 00 00 00
ECU#1响应:7E8 10 13 49 02 31 47 31 4A
流控帧:7DF 30 00 01 00 00 00 00 00
ECU#1响应: 7E8 21 43 35 34 34 34 52 37
7E8 22 32 35 32 33 36 37 00
响应的有效数据为:49 02 31 47 31 4A 43 35 34 34 34 52 37 32 35 32 33 36 37
49:服务09对应的响应SID; 02:VIN的信息类型; 31 47 31 4A 43 35 34 34 34 52 37 32 35 32 33 36
37:“1G1JC5444R7252367” 即车辆VIN为 1G1JC5444R7252367。
2、读取CALID
请求如下:7DF 02 09 04 00 00 00 00 00
ECU#1响应:7E8 10 12 49 04 4A 4D 41 2A
流控帧:7DF 30 00 01 00 00 00 00 00
ECU#1响应: 7E8 21 34 33 31 32 39 39 31
7E8 22 31 30 30 30 30 00 00
响应的有效数据为:49 04 4A 4D 41 2A 34 33 31 32 39 39 31 31 30 30 30 30
49:服务09对应的响应SID; 04:CALID的信息类型; 4A 4D 41 2A 34 33 31 32 39 39 31 31 30 30 30
30:“JMA*431299110000” 即车辆CALID为 JMA*431299110000。
3、读取CVN
请求如下:7DF 02 09 06 00 00 00 00 00
ECU#1响应:7E8 06 49 06 17 91 BC 82 00
响应的有效数据为:49 06 17 91 BC 82
49:服务09对应的响应SID; 04:CVN的信息类型; 即车辆CVN为 1791BC82。
三、ISO27145协议
进系统时确认CAN-ID是11位还是29位(参考我的其他进系统文章):
如果是11位,请求CAN-ID为0x7DF,ECU#1响应CAN-ID为0x7E8;也可能是ECU#2响应,CAN-ID为0x7E9;
如果是29位,请求CAN-ID为0x18DB33F1,响应CAN-ID为0x18DAF1xx。
下面以11位CAN-ID为例详解。
1、读取VIN
请求如下:7DF 03 22 F8 02 00 00 00 00
ECU#1响应:7E8 10 14 62 F8 02 4C 52 44
流控帧:7DF 30 00 01 00 00 00 00 00
ECU#1响应: 7E8 21 53 36 50 45 42 36 4C
7E8 22 52 30 30 36 33 37 30
响应的有效数据为:62 F8 02 4C 52 44 53 36 50 45 42 36 4C 52 30 30 36 33 37 30
62:服务22对应的响应SID; F8 02:VIN对应的DID; 4C 52 44 53 36 50 45 42 36 4C 52 30 30 36 33
37 30:“LRDS6PEB6LR006370” 即车辆VIN为 LRDS6PEB6LR006370。
2、读取CALID
请求如下:7DF 03 22 F8 04 00 00 00 00
ECU#1响应:7E8 10 13 62 F8 04 4A 4D 41
流控帧:7DF 30 00 01 00 00 00 00 00
ECU#1响应: 7E8 21 2A 34 33 31 32 39 39
7E8 22 31 31 30 30 30 30 00
响应的有效数据为:62 F8 04 4A 4D 41 2A 34 33 31 32 39 39 31 31 30 30 30 30
62:服务22对应的响应SID; F8 04:CALID对应的DID; 4A 4D 41 2A 34 33 31 32 39 39 31 31 30 30
30 30:“JMA*431299110000” 即车辆CALID为 JMA*431299110000。
3、读取CVN
请求如下:7DF 03 22 F8 06 00 00 00 00
ECU#1响应:7E8 07 62 F8 06 17 91 BC 82
响应的有效数据为:62 F8 06 17 91 BC 82
62:服务22对应的响应SID; F8 04:CVN的信息类型; 即车辆CVN为 1791BC82。