一、握手辨识和充电握手辨识
BMS | 充电机 |
---|---|
1、充电机向BMS发送“充电机握手报文CHM” | |
2、BMS等待是否收到“充电机握手报文CHM”。(1)、是,向充电机发送“BMS握手报文BHM”。(2)、否,则继续等待 | |
3、充电机等待是否收到“BMS握手报文BHM”。(1)、是,结束握手辨识阶段。(2)、否,重新返回步骤1。 | |
4、BMS等待是否收到“充电机握手报文CHM”。(1)、是,重新返回步骤2.1。(2)、否,结束握手辨识阶段。 |
BMS | 充电机 |
---|---|
1、充电机向BMS发送“SPN2560=0x00的充电机辨识报文CRM”。 | |
2、BMS等待是否收到“SPN2560=0x00的充电机辨识报文CRM”。(1)、是,向充电机发送“BMS和车辆辨识报文BRM”。(2)、否,继续等待。 | |
3、充电机等待是否收到“BMS和车辆辨识报文BRM”。(1)、是,向BMS发送“SPN2560=0xAA的充电机辨识报文CRM”。并结束充电参数配置阶段。(2)、否,返回步骤1。 | |
4、BMS等待是否收到“SPN2560=0xAA的充电机辨识报文CRM”(1)、是,结束充电参数配置阶段。(2)、否,返回步骤2.1。 |
二、CAN数据分析
下面是通过周立功的CAN采集器采集的真实的CAN报文数据,数据是某次充电中的数据,如电流电压等数据都不具备普遍性。
1、CAN总线第一次接收到BMS发送给充电机的报文,PGN是0x61,没有出现在GBT27930中,需要查一下。
需要注意的是,该报文是在启动充电后才发送的,并不是插枪后发送,插枪并不会启动BMS和充电机之间的CAN报文传输。
{can recv id:9861f456 len:8 data:0 0 0 0 aa 6f ca 1b }
2、充电机发送给BMS的CHM充电机握手报文,根据协议可知,第1个字节为小版本号,第2~3字节为大版本号,故小版本号为0x01,大版本号为0x0001,注意是小端存储。即协议版本为V1.1。
{can recv id:9826f456 len:3 data:1 1 0 }
3、BMS发送给充电机的BHM车辆握手报文,表示最高充电电压,为0x0e42,即365V。BHM报文要发送许多次,充电机才会回应。
{can recv id:982756f4 len:2 data:42 e }
4、充电机发送给BMS的CRM充电机辨识报文,第1个字节为辨识结果,因为充电机还未收到BMS的BRM报文,故这里为0,第2-5字节为充电机编号,这里为0x01010101,第6~8字节为区域编码,为0x333231。CRM报文,充电机会发送多次。
{can recv id:9801f456 len:8 data:0 1 1 1 1 31 32 33 }
5、 BMS发送给充电机的BRMBMS和车辆辨识报文,因为这个报文的长度超过了8字节,使用了多包传输协议,可以看到一共用了10个包。前面两条报文应该是0x10在前,0x11在后,这里应该是log的问题。
0x10该条表示,BMS发送给充电机,要发送0x31个字节的数据,全部数据包为7个,PGN为0x02。
0x11该条表示,充电机发送给BMS,可以发送数据包数为7,下一个要发送的数据包编号为1,PGN为0x02。
BMS发送给充电机的7个数据包,编号分别从1到7,第1-3字节为BMS通讯协议版本号,小版本号为0x01,大版本号为0x0001。第4字节表示电池类型,3代表磷酸铁锂电池。第5-6字节表示电池的额定容量,0x0320,即80Ah。第7-8字节为电池额定电压0x0e42,即365V。第9-24字节,都是电池的相关信息,在这里都是0xFF,即无。第25-41字节,是车辆识别码VIN,在这里也是无。第42~50字节,是BMS软件版本号。
0x13,该条表示,充电机给BMS的消息结束应答。即接收到了0x31个字节,7个数据包。PGN为0x02。
注意下面中RTS和CTS的顺序颠倒过来了,这是抓包工具的问题,实际上RTS在CTS之前。
{can recv id:9cecf456 len:8 data:11 7 1 ff ff 0 2 0 }
{can recv id:9cec56f4 len:8 data:10 31 0 7 7 0 2 0 }
{can recv id:9ceb56f4 len:8 data:1 [1 1 0] 3 [20 3] [42 }
{can recv id:9ceb56f4 len:8 data:2 e] [ff ff ff ff] [ff ff }
{can recv id:9ceb56f4 len:8 data:3 ff ff] ff ff ff [ff ff }
{can recv id:9ceb56f4 len:8 data:4 ff] ff ff [ff ff ff ff }
{can recv id:9ceb56f4 len:8 data:5 ff ff ff ff ff ff ff }
{can recv id:9ceb56f4 len:8 data:6 ff ff ff ff ff ff] [1 }
{can recv id:9ceb56f4 len:8 data:7 7 12 20 16 ff 2 7] }
{can recv id:9cecf456 len:8 data:13 31 0 7 ff 0 2 0 }
6、充电机发送给BMS的CRM充电机辨识报文,第1个字节为辨识结果,充电机已经收到BMS的BRM报文,故这里为0xaa,后续字节和前面CRM报文都一样。
{can recv id:9801f456 len:8 data:aa 1 1 1 1 31 32 33 }