解读CAN报文方法

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1,首先抓取故障报文,建议保存格式为.CSV,便于分析报文排查故障2,打开报文筛选出对我们分析故障有利的数据并对照协议解析报文例如,百路佳项目现场工程师经常反应掉高压问题即继电器断开,其中绿控协议里有一帧报文就显示出了继电器状态,报文ID:0x18FF14F3,我们只需要找到这一帧报文解析一下就知道继电器状态了。ID:18FF14F3,其中0xFF14是PGN,PGN表示参数组编号,0xF3是源地址表示数据是由哪个模块发出来,绿控协议规定0xF3表示BMS,所以凡是BMS发出来的报文,报文ID最后一个字节肯定是0xF3。协议内容:有些内容无需用一个字节(一个字节有八个位)来表示甚至用两个位就可以表示出来,例如总正辅助触点状态,有些内容用一个字节不能完全表示甚至用两个字节来表示,例如SOC,至于协议内容是选取一个字节、两个位还是两个字节来表示通常与表示数据范围有关。Byte1Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit00xF总负辅助触点状态总正辅助触点状态Byte2Bit15Bit14Bit13Bit12Bit11Bit10Bit9Bit8SOC低字节Byte3Bit23Bit22Bit21Bit20Bit19Bit18Bit17Bit16SOC高字节Byte4Bit31Bit30Bit29Bit28Bit27Bit26Bit25Bit24SOHByte5Bit39Bit38Bit37Bit36Bit35Bit34Bit33Bit320x1FaultActive/SeverityIndicatorBatteryStateByte6Bit47Bit46Bi45Bit44Bit43Bit42Bit41Bit40IsolationResistance/绝缘电阻Byte7Bit55Bit54Bi53Bit52Bit51Bit50Bit49Bit480xFFByte8Bit63Bi62Bi61Bit60Bit59Bit58Bit57Bit56MessageChecksum/消息校验和MessageCounter/计数器注意协议里StartBitLength(bits)startbit:0,length2,从第0位开始长度2个bit,所以第0位第1位表示总正辅助触点状态startbit:32,length4,从第32位开始长度4个bit,所以第32位第33位第34位第35位表示继电器状态startbit:8,length16,从第8位开始长度16个bit,所以第8位一直到第23位表示SOC且第8位到第15位表示SOC的低字节,第16位到第23位表示SOC的高字节从报文里筛选出18FF14F3,数据自动筛选点击确定之后第二字节第三字节表示SOC,低字节在前,0x47E0转成十进制18400比例为0.0025,单位%,所以实际上SOC值为18400*0.0025%=46%,即SOC为46%。继电器状态第五个字节低四位表示,上面报文第五个字节为0x83,二进制如下:Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit010000011低四位十进制为3,查表“3”表示BATT_STATE_READY即已上高压状态Bit4~bit6表示BMS故障等级,这里为0表示BMS没有上报故障

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功