System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 多电池包CAN通信的编址方法、装置及计算机存储介质制造方法及图纸_技高网

多电池包CAN通信的编址方法、装置及计算机存储介质制造方法及图纸

技术编号:40540025 阅读:5 留言:0更新日期:2024-03-05 18:55
本发明专利技术实施例涉及通讯技术领域,具体涉及多电池包CAN通信的编址方法、装置及计算机存储介质,利用BMS电池系统的微控制器的UID码,使用UID码作为输入,结合多项式可变的CRC算法作为计算方法,提供了一种简单有效的节点地址生成方式;且利用CAN控制器能识别“位错误”的特性,当节点地址生成后,在发送验证报文时,将UID作为数据发送,能发现多个电池在以相同的节点地址同时进行编址验证的情况,从而保障节点地址的唯一性。

【技术实现步骤摘要】

本专利技术实施例涉及电池管理,具体涉及多电池包can通信的编址方法、装置及计算机存储介质。


技术介绍

1、近年来,随着锂电池在家储、工商储等领域的应用越来越广泛,人们对电池储能容量的需求越来越高。提高电池储能的容量可以通过电池串联和并联的方式实现。当多个电池包组合成一个更大的电池模组后,一般而言,各电池包及主控制器会通过can网络进行通信组网。在can网络中,模组中的各电池包周期地把自身的监控信息(电压、电流、温度等)广播至can总线,同时接收来自主控制器的控制指令。

2、由于各电池通过can总线进行组网,所有电池节点的报文同时广播至总线上,因此需要对电池进行编址,以区分各电池的报文。

3、传统的解决方法是在每个电池包上安装地址编码器,通过人工设置编码器的方式给电池包编址,实现各个电池包的区分。这种方式主要有以下缺点:一、需要专业技术人员对编码器进行操作,对用户而言使用不方便;二、需要额外的地址编码电路,增加了硬件成本和电路复杂度。


技术实现思路

1、鉴于上述问题,本专利技术实施例提供了多电池包can通信的编址方法、装置及计算机存储介质,解决了通过人工设置编码器的方式给电池包编址,实现各个电池包的区分,需要专业技术人员对编码器进行操作,对用户而言使用不方便;需要额外的地址编码电路,增加了硬件成本和电路复杂度的问题。

2、根据本专利技术实施例的一个方面,提供了一种多电池包can通信的编址方法,所述方法包括:

3、获取当前bms电池系统的uid码;

4、通过crc校验算法对所述uid码进行计算,获取当前节点地址;

5、将所述uid码分成n部分的uid子码,将每个uid子码和当前节点地址制作成n帧报文,并将报文发送到can控制器中;

6、实时读取can控制器的发送状态,若发送异常则重新计算当前节点地址,否则确定当前节点地址为当前bms电池系统的唯一地址。

7、在一种可选的方式中,所述通过crc校验算法对所述uid码进行计算,获取当前节点地址,包括:

8、选取计算多项式,将所述uid码输入到crc校验算法中与所述计算多项式进行异或运算,获得当前节点地址。

9、在一种可选的方式中,crc校验算法为crc8校验算法或crc12校验算法或crc16校验算法。

10、在一种可选的方式中,将所述uid码分成n部分的uid子码,包括:

11、将所述uid码分成n部分的uid子码,每个uid子码为k个字节,其中k≤6;若最后一部分uid子码字节不足k个字节,在最后一部分uid子码补充0xff。

12、在一种可选的方式中,所述将每个uid子码和当前节点地址制作成n帧报文,并将报文发送到can控制器中,包括:

13、以当前节点地址为报文id、uid子码作为报文内容制作成一件报文,n部分的uid子码制作成n帧报文;

14、将n帧报文依次发送到can控制器。

15、在一种可选的方式中,所述实时读取can控制器的发送状态,包括:

16、当所述can控制器接收来自相同当前节点地址的两份或多份报文中,有不同的uid码时,can控制器发送报文异常信号。

17、在一种可选的方式中,在所述发送异常,重新计算当前节点地址,包括:

18、重新选取计算多项式,将所述uid码输入到crc校验算法中与所述计算多项式进行异或运算,获得并修改当前节点地址;

19、将所述uid码分成n部分的uid子码,将每个uid子码和当前节点地址制作成n帧报文,并将报文发送到can控制器中;

20、实时读取can控制器的发送状态,直至发送状态正常。

21、在一种可选的方式中,所述bms电池系统实时监听can控制器中的所有报文,获取其他bms电池系统的监听节点地址;

22、判断bms电池系统的当前节点地址与所述监听节点地址是否重复,若是则修改当前节点地址,否则不进行处理。

23、根据本专利技术实施例的另一方面,提供了一种多电池包can通信的编址装置,包括

24、uid码获取模块,用于获取当前bms电池系统的uid码;

25、节点地址计算模块,用于通过crc校验算法对所述uid码进行计算,获取当前节点地址;

26、报文制作模块,用于将所述uid码分成n部分的uid子码,将每个uid子码和当前节点地址制作成n帧报文,并将报文发送到can控制器中;

27、监听模块,实时读取can控制器的发送状态,若发送异常则重新计算当前节点地址,否则确定当前节点地址为当前bms电池系统的唯一地址。

28、根据本专利技术实施例的又一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令在如上述的一种多电池包can通信的编址装置上运行时,使得多电池包can通信的编址装置执行如上述的一种多电池包can通信的编址方法的操作。

29、本专利技术实施例利用bms电池系统的微控制器的uid码,使用uid码作为输入,结合多项式可变的crc算法作为计算方法,提供了一种简单有效的节点地址生成方式;且利用can控制器能识别“位错误”的特性,当节点地址生成后,在发送验证报文时,将uid作为数据发送,能发现多个电池在以相同的节点地址同时进行编址验证的情况,从而保障节点地址的唯一性。

30、上述说明仅是本专利技术实施例技术方案的概述,为了能够更清楚了解本专利技术实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。

本文档来自技高网...

【技术保护点】

1.一种多电池包CAN通信的编址方法,其特征在于,所述方法包括:

2.根据权利要求1所述的一种多电池包CAN通信的编址方法,其特征在于,所述通过CRC校验算法对所述UID码进行计算,获取当前节点地址,包括:

3.根据权利要求1所述的一种多电池包CAN通信的编址方法,其特征在于,CRC校验算法为CRC8校验算法或CRC12校验算法或CRC16校验算法。

4.根据权利要求1所述的一种多电池包CAN通信的编址方法,其特征在于,将所述UID码分成n部分的UID子码,包括:

5.根据权利要求4所述的一种多电池包CAN通信的编址方法,其特征在于,所述将每个UID子码和当前节点地址制作成n帧报文,并将报文发送到CAN控制器中,包括:

6.根据权利要求1所述的一种多电池包CAN通信的编址方法,其特征在于,所述实时读取CAN控制器的发送状态,包括:

7.根据权利要求1所述的一种多电池包CAN通信的编址方法,其特征在于,在所述发送异常,重新计算当前节点地址,包括:

8.根据权利要求1所述的一种多电池包CAN通信的编址方法,其特征在于,所述BMS电池系统实时监听CAN控制器中的所有报文,获取其他BMS电池系统的监听节点地址;

9.一种多电池包CAN通信的编址装置,其特征在于,包括

10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一可执行指令,所述可执行指令在如权利要求9任一项所述的一种多电池包CAN通信的编址装置上运行时,使得多电池包CAN通信的编址装置执行如权利要求1-8任一项所述的一种多电池包CAN通信的编址方法的操作。

...

【技术特征摘要】

1.一种多电池包can通信的编址方法,其特征在于,所述方法包括:

2.根据权利要求1所述的一种多电池包can通信的编址方法,其特征在于,所述通过crc校验算法对所述uid码进行计算,获取当前节点地址,包括:

3.根据权利要求1所述的一种多电池包can通信的编址方法,其特征在于,crc校验算法为crc8校验算法或crc12校验算法或crc16校验算法。

4.根据权利要求1所述的一种多电池包can通信的编址方法,其特征在于,将所述uid码分成n部分的uid子码,包括:

5.根据权利要求4所述的一种多电池包can通信的编址方法,其特征在于,所述将每个uid子码和当前节点地址制作成n帧报文,并将报文发送到can控制器中,包括:

6.根据权利要求1所述的一种多电池包c...

【专利技术属性】
技术研发人员:徐向林陈爱雨黄添发任素云戴清明
申请(专利权)人:惠州市蓝微电子有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1