CN117135143B - 基于can总线的群组并机地址分配方法和节点设备 - Google Patents

基于can总线的群组并机地址分配方法和节点设备 Download PDF

Info

Publication number
CN117135143B
CN117135143B CN202311395763.6A CN202311395763A CN117135143B CN 117135143 B CN117135143 B CN 117135143B CN 202311395763 A CN202311395763 A CN 202311395763A CN 117135143 B CN117135143 B CN 117135143B
Authority
CN
China
Prior art keywords
group
address
node
nodes
bus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311395763.6A
Other languages
English (en)
Other versions
CN117135143A (zh
Inventor
马辉
雷健华
温丹
郭志华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Delian Minghai New Energy Co ltd
Original Assignee
Shenzhen Delian Minghai New Energy Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Delian Minghai New Energy Co ltd filed Critical Shenzhen Delian Minghai New Energy Co ltd
Priority to CN202311395763.6A priority Critical patent/CN117135143B/zh
Publication of CN117135143A publication Critical patent/CN117135143A/zh
Application granted granted Critical
Publication of CN117135143B publication Critical patent/CN117135143B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5038Address allocation for local use, e.g. in LAN or USB networks, or in a controller area network [CAN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明实施例公开了一种基于CAN总线的群组并机地址分配方法、CAN总线节点设备及存储介质,其中方法包括:各节点设备上报所属群组的群组标识,并获取其他节点所属群组的群组标识,根据各群组标识进行群组排地址,得到各群组对应的地址段;将所属群组对应地址段的首地址作为节点的源地址,并基于该源地址上报自身节点的节点标识,获取其他节点的源地址和节点标识,根据所属群组内各节点的节点标识进行群内排地址,得到各节点在所属群组内的偏移序号;将节点的源地址修改为所属群组对应地址段的首地址加上节点在所属群组内的偏移序号。采用本发明的方法,可实现对CAN总线上附属于不同子系统或群组的相同设备自动分组并分配唯一源地址。

Description

基于CAN总线的群组并机地址分配方法和节点设备
技术领域
本发明涉及CAN总线技术领域,特别是涉及一种基于CAN总线的群组并机地址分配方法、CAN总线节点设备及存储介质。
背景技术
控制局域网总线(CAN,Controller Area Network)是一种用于实时应用的串行通讯协议总线,目前广泛应用于汽车计算机系统以及嵌入式工控系统。在数字能源领域也应用广泛,比如国内国际主流逆变器、通信电源以及储能系统基本上都使用了CAN作为控制总线。
在使用CAN总线进行组网时,需要对网络内各节点分配地址,然后进行数据通信。现有CAN地址分配一般有3大类:1)基于硬件识别的差异化排列,产生CAN总线识别的源地址;2)基于自动的软件处理方法,通过CAN ID源地址的随机先后上报和相同避让递增来顺序分配各个源地址;3)基于产品标识条码的差异,按照一定规则(如比较大小)实现基于标识大小的顺序源地址分配。上述三种地址分配方案的缺陷是:不能实现对CAN总线上附属于不同子系统或群组的相同设备自动分组并分配唯一源地址。
发明内容
本发明实施例旨在提供一种基于CAN总线的群组并机地址分配方法、CAN总线节点设备及存储介质,以解决现有技术中不能实现对CAN总线上附属于不同子系统或群组的相同设备自动分组并分配唯一源地址的问题。
为解决上述技术问题,本发明实施例提供以下技术方案:
根据本发明的一方面,提供一种基于CAN总线的群组并机地址分配方法,所述方法包括:
S101.上报自身节点所属群组的群组标识,并获取其他节点所属群组的群组标识;
S102.根据各节点设备所属群组的群组标识进行群组排地址,得到各群组对应的地址段;
S103.将自身节点的源地址修改为所属群组对应的地址段的首地址;
S104.基于修改后的源地址上报自身节点的节点标识,并获取其他节点的源地址和节点标识;
S105.筛选出与自身节点具有相同所属群组的其他节点的节点标识,根据自身节点的节点标识和筛选出的其他节点的节点标识进行群内排地址,得到各节点设备在所属群组内的偏移序号;
S106.将自身节点的源地址修改为所属群组对应的地址段的首地址加上自身节点在所属群组内的偏移序号。
可选地,所述方法还包括:
定期发送携带自身节点源地址的心跳报文;
从其他节点发送的心跳报文中获取其他节点的源地址;
若任一其他节点的源地址与自身节点的源地址相同,则触发群组排地址和/或群内排地址。
可选地,所述触发群组排地址包括:
发送群组排地址触发报文并进入到所述S101至所述S103,所述群组排地址触发报文用于通知其他节点上报所属群组的群组标识并进行群组排地址;
所述触发群内排地址包括:
发送群内排地址触发报文并进入到所述S104至所述S106,所述群内排地址触发报文用于通知具有相同所属群组的其他节点上报自身节点的节点标识并进行群内排地址。
可选地,所述将自身节点的源地址修改为所属群组对应的地址段的首地址的步骤之后,还包括:
发送群组排地址完成的消息,并获取其他节点发送的群组排地址完成的消息;
判断所有节点是否均已完成群组排地址,若是,则将预设的群组排地址标志设置为完成,若否,则将所述群组排地址标志设置为未完成。
可选地,所述方法还包括:
若任一其他节点的源地址与自身节点的源地址相同且所述群组排地址标志为完成,则触发群内排地址;
若任一其他节点的源地址与自身节点的源地址相同且所述群组排地址标志为未完成,则触发群组排地址。
可选地,所述方法还包括:
基于每个群组,将所述群组内的各节点设备接入到所述CAN总线进行通讯,将不属于所述群组的其他节点设备断开与所述CAN总线的通讯;
所述群组内的各节点设备接收外部设备发送的群组绑定指令,所述群组绑定指令中携带有所述群组的群组标识;
从所述群组绑定指令中获取所述群组标识,将所述群组标识进行存储。
可选地,所述群组包括一个逆变器和多个电池包,所述方法还包括:
所述逆变器获取自身的逆变器SN,将所述逆变器SN上报给所述外部设备,以使得所述外部设备根据所述逆变器SN生成所述群组绑定指令;
所述电池包从所述群组绑定指令中获取所述逆变器SN,将所述逆变器SN作为群组标识进行存储。
可选地,所述根据各节点设备所属群组的群组标识进行群组排地址,得到各群组对应的地址段包括:
将自身节点所属群组的群组标识和其他节点所属群组的群组标识进行排序得到各群组的排序号;
基于所述各群组的排序号、预设的各群组对应的最大节点数和预设的CAN总线可用地址区间确定出各群组对应的地址段。
根据本发明的另一方面,提供一种CAN总线节点设备,包括存储器、处理器及存储在存储器上运行的计算机程序,所述处理器执行所述程序时实现上述任一项所述的基于CAN总线的群组并机地址分配方法的步骤。
根据本发明的再一方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被处理器执行时,所述处理器执行上述任一项所述的基于CAN总线的群组并机地址分配方法的步骤。
本发明实施例的有益效果是:区别于现有技术的情况,本发明实施例提供的基于CAN总线的群组并机地址分配方法,首先,各节点设备上报所属群组的群组标识,并获取其他节点所属群组的群组标识,根据各群组标识进行群组排地址,得到各群组对应的地址段;然后,将所属群组对应地址段的首地址作为节点的源地址,再基于该源地址上报自身节点的节点标识,获取其他节点的源地址和节点标识,基于所属群组内各节点的节点标识进行群内排地址,得到各节点在所属群组内的偏移序号;最后,将节点的源地址修改为所属群组对应地址段的首地址加上节点在所属群组内的偏移序号。采用本发明的方法,不需要借助外部设备,通过CAN总线上各节点设备的信息交互,即可实现对CAN总线上附属于不同子系统或群组的相同设备自动分组并分配唯一源地址,提高了并机地址的分配效率。此外,在源地址中携带群组信息,简化了后续节点设备间的交互流程。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本发明实施例提供的一种基于CAN总线的群组并机地址分配方法的流程图;
图2是本发明实施例提供的储能多并机系统中已有电池包的地址分配流程图;
图3是本发明实施例提供的储能多并机系统中新增电池包的地址分配流程图;
图4是本发明实施例提供的一种CAN总线节点设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明提供一种基于CAN总线的群组并机地址分配方法以及实现所述基于CAN总线的群组并机地址分配方法的CAN总线节点设备。以下为对本申请文件中出现的一些技术术语的释义:
并机:多个相同CAN节点设备通过CAN通讯接入同一总线;
群组:相同设备基于不同属性需要区分属于不同的子系统;
源地址:用于区分发送报文一方节点而定义,属于CAN通信的消息标识符CAN ID的一部分;
SN:Serial Number,产品生产序列号;
绑定:将一群属性相同的CAN节点在软件逻辑层关联到一起的动作。
实施例一
请参阅图1,为本发明实施例提供的一种基于CAN总线的群组并机地址分配方法的流程图。所述方法可应用于CAN总线节点设备,所述方法包括:
步骤S101,上报自身节点所属群组的群组标识,并获取其他节点所属群组的群组标识。
为实现对CAN总线上附属于不同子系统或群组的相同设备自动分组并分配唯一源地址,本发明实施例中,先进行群组排地址(即步骤S101至步骤S103),再进行群内排地址(即步骤S104至步骤S106)。其中,群组排地址是指将CAN总线可用地址区间划分成多个地址段,并为每一群组分配一地址段。群内排地址是指基于每个群组对应的地址段为群内的每个节点设备分配唯一地址。
在进行群组排地址之前,先进行群组绑定。群组绑定是指将属于同一群组的节点设备通过群组标识绑定在一起。一种实施方式是,在节点设备接入到CAN总线之前,通过外部工具(例如上位机)依次在每个节点设备中写入群组标识;另一种实施方式是,将属于同一群组的各节点设备接入到CAN总线,经外部工具触发,群组设备与各节点设备进行通信,群组设备通过CAN总线在节点设备中批量写入群组标识。
在后一种实施方式中,在对属于某一群组的各节点设备进行群组绑定时,为防止其他群组的节点设备将不属于自身群组的群组标识写入到存储单元中,需要将不属于当前群组的其他节点设备与CAN总线断开通讯。具体的,基于CAN总线上的每一群组,将该群组内的各节点设备接入到CAN总线进行通讯,将不属于该群组的其他节点设备断开与CAN总线的通讯;然后经外部工具触发,群组设备(如逆变器)与各节点设备进行通信,群组设备通过CAN总线向节点设备发送群组标识,各节点设备存储该群组标识。
群组标识具有唯一性,可以是随机生成的一个字符串或数字,也可以是与群内各节点设备关联的其他设备的标识(例如,设备的SN)。如图2所示,在一个储能多并机系统中,接入到同一CAN总线的既有逆变器,也有电池包。一个逆变器配对多个电池包组成一个逻辑系统,多个逆变器和各逆变器配对的多个电池包组成多个逻辑系统。在对电池包进行群组绑定时,为使得电池包所属群组与逆变器进行对应,优选地,将逆变器的逆变器SN作为群组标识。具体的,先将不属于当前群组的其他节点设备与CAN总线断开通讯,经上位机触发,当前群组的逆变器获取自身的逆变器SN并发送给电池包,电池包获取该逆变器SN作为群组标识进行存储。其他群组中的电池包依照该方法依次绑定其所属群组的逆变器SN。
CAN总线上的各节点设备基于时间片轮流发送上报群组标识报文,该上报群组标识报文中携带自身节所属群组的群组标识。各节点设备还用于接收其他节点发送的上报群组标识报文,从其他节点发送的上报群组标识报文中解析出其他节点所属群组的群组标识。通过步骤S101,各节点设备可得到CAN总线上所有群组的群组标识,从而进行群组排地址。
步骤S102,根据各节点设备所属群组的群组标识进行群组排地址,得到各群组对应的地址段。
首先,将自身节点所属群组的群组标识和其他节点所属群组的群组标识进行排序得到各群组的排序号。图2中,节点A~F上报的群组标识为INV1_SN123456789,节点G~J上报的群组标识为INV2_ SN 123477777,节点K~O上报的群组标识为INV3_ SN 123466666。将群组标识按照从小到大的顺序排序(即SN 123456789<SN 123466666<SN 123477777),得到各群组的排序号:节点A~F所属的群组INV1的 排序号为1,节点G~J所属的群组INV2的排序号为3,节点K~O所属的群组INV3的排序号为2。
其次,基于各群组的排序号、预设的各群组对应的最大节点数和预设的CAN总线可用地址区间确定出各群组对应的地址段。图2中,CAN总线可用地址区间为0x60~0x9F,每个逆变器最多与8个电池包配对(即各群组对应的最大节点数为8),对上述3个群组进行群组排地址后,可得到:群组INV1对应的地址段为0x60~0x67、群组INV2对应的地址段为0x70~0x77、群组INV3对应的地址段为0x68~0x6F。
步骤S103,将自身节点的源地址修改为所属群组对应的地址段的首地址。
各节点设备将自身节点的源地址修改为所属群组对应的地址段的首地址,使得其他节点可根据该源地址确定出节点所属的群组。图2中,节点A~F修改后的源地址均为0x60,节点G~J修改后的源地址均为0x70,节点K~O修改后的源地址均为0x68。
步骤S104,基于修改后的源地址上报自身节点的节点标识,并获取其他节点的源地址和节点标识。
在储能多并机系统中,节点设备为电池包,节点设备的节点标识可为电池包的SN。
CAN总线上需要进行群内排地址的各节点设备基于时间片轮流发送上报节点标识报文,该上报节点标识报文中携带自身节点的源地址和自身节点的节点标识。各节点设备还用于接收其他节点发送的上报节点标识报文,从其他节点发送的上报节点标识报文中解析出其他节点的源地址和节点标识。通过步骤S104,节点设备可获知其他节点设备的所属群组(通过上报节点标识报文中的源地址确定)和节点标识。
步骤S105,筛选出与自身节点具有相同所属群组的其他节点的节点标识,根据自身节点的节点标识和筛选出的其他节点的节点标识进行群内排地址,得到各节点设备在所属群组内的偏移序号。
基于上面描述可知,与自身节点具有相同所属群组的其他节点的源地址位于该群组对应的地址段内,因此,根据上报节点标识报文中的源地址可筛选出与自身节点具有相同所属群组的其他节点,进一步,获取这些节点的节点标识。然后将自身节点所属群组的所有节点的节点标识进行群内排地址,得到各节点设备在所属群组内的偏移序号。例如,对图2中群组INV1的节点A~F进行群内排地址,得到各节点的偏移序号为:节点A为0,节点B为1,节点C为2,节点D为3,节点E为4,节点F为5。
步骤S106,将自身节点的源地址修改为所属群组对应的地址段的首地址加上自身节点在所属群组内的偏移序号。
通过群内排地址之后,图2中群组INV1的节点A~F的源地址分别修改为:0x60、0x61、0x62、0x63、0x64、0x65。其他群组的节点设备采用同样的方法进行群内排地址,从而实现CAN总线上所有节点设备的群内排地址。
为提高CAN总线的工作效率,可为CAN总线排地址设置触发机制。优选地,该触发机制基于各节点设备定期发送的心跳报文来实现。节点设备接入到CAN总线上后,需要定期发送心跳报文,以使其他节点设备通过检测心跳报文的到达情况,判断该节点设备是否在线。具体的,节点设备定期发送携带自身节点的源地址的心跳报文,并从其他节点发送的心跳报文中获取其他节点的源地址;若任一其他节点的源地址与自身节点的源地址相同,则触发群组排地址和/或群内排地址。初始状态下,该源地址为混沌状态,由系统随机分配。
在一种实施例中,设置有一种触发机制。具体的,当任一其他节点的源地址与自身节点的源地址相同时,触发CAN总线排地址。其中,CAN总线排地址是指执行步骤S101至步骤S106。
在其他实施例中,设置有两种触发机制。具体的,在节点设备中设置群组排地址标志,当任一其他节点的源地址与自身节点的源地址相同且群组排地址标志为未完成时,触发群组排地址。其中,群组排地址是指执行步骤S101至步骤S103。可以理解的是,群组排地址完成后必然会触发群内排地址。当任一其他节点的源地址与自身节点的源地址相同且群组排地址标志为完成时,触发群内排地址。其中,群内排地址是指执行步骤S104至步骤S106。
其中,触发群组排地址包括:发送群组排地址触发报文并进入到步骤S101至S103,所述群组排地址触发报文用于通知其他节点上报所属群组的群组标识并进行群组排地址。CAN总线上任一节点A接收到节点B发送的群组排地址触发报文后,发送携带自身节点所属群组的群组标识的上报群组标识报文。
触发群内排地址包括:发送群内排地址触发报文并进入到步骤S104至S106,所述群内排地址触发报文用于通知具有相同所属群组的其他节点上报自身节点的节点标识并进行群内排地址。CAN总线上任一节点A接收到节点B发出的群内排地址触发报文后,从群内排地址触发报文中解析出源地址,若解析出的源地址属于自身节点所属群组对应的地址段,则发送携带自身节点的节点标识的上报节点标识报文,若解析出的源地址不属于自身节点所属群组对应的地址段,则不做处理。
初始状态下,群组排地址标志为未完成。步骤S103中,将自身节点的源地址修改为所属群组对应的地址段的首地址的步骤之后,还包括:发送群组排地址完成的消息,并获取其他节点发送的群组排地址完成的消息;判断所有节点是否均已完成群组排地址,若是,则将预设的群组排地址标志设置为完成,若否,则将所述群组排地址标志设置为未完成。本发明实施例中,各节点设备通过收发排地址完成报文,可确认CAN总线上各节点设备是否已完成群组排地址。在预设时间内,若未收到所有节点发送的排地址完成报文,则可触发第二次群组排地址操作,直至所有节点设备均已完成群组排地址,从而确保CAN总线的群组并机地址分配的准确性。
本发明实施例中通过设置触发机制,一方面当设备重启时,不需要重新排地址;另一方面,当节点源地址出现冲突时(例如有新增设备或新增群组),可自动触发各节点设备排地址,不仅提高了CAN总线的工作效率,而且提高了CAN总线的稳定性。
如图3所示,为本发明实施例提供的储能多并机系统中新增电池包的地址分配流程图。预先在待增电池包P中写入要加入群组(逆变器1所在群组)对应地址段的首地址0x60以及群组标识。电池包A通过检测其他电池包发送的心跳报文,发现存在与自身源地址相同的电池包P,且当前群组排地址标志为完成,触发逆变器1所连各电池包进行群内排地址(通过群内排地址为电池包P重新分配源地址0x66),其他群组(逆变器2所连的电池包和逆变器3所连的电池包)则不用再进行群内排地址。
本发明实施例提供的基于CAN总线的群组并机地址分配方法,首先,各节点设备上报所属群组的群组标识,并获取其他节点所属群组的群组标识,根据各群组标识进行群组排地址,得到各群组对应的地址段;然后,将所属群组对应地址段的首地址作为节点的源地址,再基于该源地址上报自身节点的节点标识,获取其他节点的源地址和节点标识,基于所属群组内各节点的节点标识进行群内排地址,得到各节点在所属群组内的偏移序号;最后,将节点的源地址修改为所属群组对应地址段的首地址加上节点在所属群组内的偏移序号。采用本发明的方法,不需要借助外部设备,通过CAN总线上各节点设备的信息交互,即可实现对CAN总线上附属于不同子系统或群组的相同设备自动分组并分配唯一源地址,提高了并机地址的分配效率。此外,在源地址中携带群组信息,简化了后续节点设备间的交互流程。
实施例二
根据本发明实施例,提供一种CAN总线节点设备,如图4所示,本发明实施例提供的一种CAN总线节点设备的结构示意图,该CAN总线节点设备40可以包括处理器401、存储器402、总线收发器403和总线控制器404。其中,存储器402用于存储程序,处理器401用于执行存储器402存储的程序,当存储器402存储的程序被处理器401执行时,使CAN总线节点设备40执行实施例一中的基于CAN总线的群组并机地址分配方法,该方法包括:上报自身节点所属群组的群组标识,并获取其他节点所属群组的群组标识;根据各节点设备所属群组的群组标识进行群组排地址,得到各群组对应的地址段;将自身节点的源地址修改为所属群组对应的地址段的首地址;基于修改后的源地址上报自身节点的节点标识,并获取其他节点的源地址和节点标识;筛选出与自身节点具有相同所属群组的其他节点的节点标识,根据自身节点的节点标识和筛选出的其他节点的节点标识进行群内排地址,得到各节点设备在所属群组内的偏移序号;将自身节点的源地址修改为所属群组对应的地址段的首地址加上自身节点在所属群组内的偏移序号。
CAN总线收发器403用于使CAN总线节点设备40和CAN总线之间进行数据通信;CAN总线控制器404用于处理通信数据,如进行数据解析等。
此外,上述存储器402中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在几个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,计算机软件产品存储于一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器或者网络设备等)执行本发明实施例一中任一所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
上述产品可执行实施例一中任一所述的基于CAN总线的群组并机地址分配方法,具备方法相应的功能模块和有益效果,未在本实施例中详尽描述的技术细节,可参见本发明实施例一提供的基于CAN总线的群组并机地址分配方法。
实施例三
根据本发明实施例,提供一种计算机可读存储介质,其类型如实施例二中所述,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被处理器执行时,所述处理器执行实施例一中所述的基于CAN总线的群组并机地址分配方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用直至得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (10)

1.基于CAN总线的群组并机地址分配方法,其特征在于,所述方法包括:
S101.上报自身节点所属群组的群组标识,并获取其他节点所属群组的群组标识;
S102.根据各节点设备所属群组的群组标识进行群组排地址,得到各群组对应的地址段;
S103.将自身节点的源地址修改为所属群组对应的地址段的首地址;
S104.基于修改后的源地址上报自身节点的节点标识,并获取其他节点的源地址和节点标识;
S105.筛选出与自身节点具有相同所属群组的其他节点的节点标识,根据自身节点的节点标识和筛选出的其他节点的节点标识进行群内排地址,得到各节点设备在所属群组内的偏移序号;
S106.将自身节点的源地址修改为所属群组对应的地址段的首地址加上自身节点在所属群组内的偏移序号。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
定期发送携带自身节点源地址的心跳报文;
从其他节点发送的心跳报文中获取其他节点的源地址;
若任一其他节点的源地址与自身节点的源地址相同,则触发群组排地址和/或群内排地址。
3.根据权利要求2所述的方法,其特征在于,所述触发群组排地址包括:
发送群组排地址触发报文并进入到所述S101至所述S103,所述群组排地址触发报文用于通知其他节点上报所属群组的群组标识并进行群组排地址;
所述触发群内排地址包括:
发送群内排地址触发报文并进入到所述S104至所述S106,所述群内排地址触发报文用于通知具有相同所属群组的其他节点上报自身节点的节点标识并进行群内排地址。
4.根据权利要求2所述的方法,其特征在于,所述将自身节点的源地址修改为所属群组对应的地址段的首地址的步骤之后,还包括:
发送群组排地址完成的消息,并获取其他节点发送的群组排地址完成的消息;
判断所有节点是否均已完成群组排地址,若是,则将预设的群组排地址标志设置为完成,若否,则将所述群组排地址标志设置为未完成。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
若任一其他节点的源地址与自身节点的源地址相同且所述群组排地址标志为完成,则触发群内排地址;
若任一其他节点的源地址与自身节点的源地址相同且所述群组排地址标志为未完成,则触发群组排地址。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述方法还包括:
基于每个群组,将所述群组内的各节点设备接入到所述CAN总线进行通讯,将不属于所述群组的其他节点设备断开与所述CAN总线的通讯;
所述群组内的各节点设备接收外部设备发送的群组绑定指令,所述群组绑定指令中携带有所述群组的群组标识;
从所述群组绑定指令中获取所述群组标识,将所述群组标识进行存储。
7.根据权利要求6所述的方法,其特征在于,所述群组包括一个逆变器和多个电池包,所述方法还包括:
所述逆变器获取自身的逆变器SN,将所述逆变器SN上报给所述外部设备,以使得所述外部设备根据所述逆变器SN生成所述群组绑定指令;
所述电池包从所述群组绑定指令中获取所述逆变器SN,将所述逆变器SN作为群组标识进行存储。
8.根据权利要求1至5任一项所述的方法,其特征在于,所述根据各节点设备所属群组的群组标识进行群组排地址,得到各群组对应的地址段的步骤包括:
将自身节点所属群组的群组标识和其他节点所属群组的群组标识进行排序得到各群组的排序号;
基于所述各群组的排序号、预设的各群组对应的最大节点数和预设的CAN总线可用地址区间确定出各群组对应的地址段。
9.一种CAN总线节点设备,包括存储器、处理器及存储在存储器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-8任一项所述的基于CAN总线的群组并机地址分配方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被处理器执行时,所述处理器执行如权利要求1-8任一项所述的基于CAN总线的群组并机地址分配方法的步骤。
CN202311395763.6A 2023-10-26 2023-10-26 基于can总线的群组并机地址分配方法和节点设备 Active CN117135143B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311395763.6A CN117135143B (zh) 2023-10-26 2023-10-26 基于can总线的群组并机地址分配方法和节点设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311395763.6A CN117135143B (zh) 2023-10-26 2023-10-26 基于can总线的群组并机地址分配方法和节点设备

Publications (2)

Publication Number Publication Date
CN117135143A CN117135143A (zh) 2023-11-28
CN117135143B true CN117135143B (zh) 2024-01-02

Family

ID=88858573

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311395763.6A Active CN117135143B (zh) 2023-10-26 2023-10-26 基于can总线的群组并机地址分配方法和节点设备

Country Status (1)

Country Link
CN (1) CN117135143B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005039476A1 (de) * 2005-08-18 2007-02-22 Micronas Gmbh Verfahren zum Betreiben eines Bussystems bzw. Buseinrichtung dafür
CN102685274A (zh) * 2012-06-08 2012-09-19 陈梓平 智能家居网络中智能设备的组地址分配方法
CN115002070A (zh) * 2022-06-10 2022-09-02 北京东土科技股份有限公司 芯片集群、地址分配方法、电子设备和存储介质
CN116132404A (zh) * 2022-12-28 2023-05-16 超聚变数字技术有限公司 Can总线节点地址分配方法、节点设备和计算设备
CN116708375A (zh) * 2023-08-07 2023-09-05 宁波德业储能科技有限公司 一种集装箱储能系统的设备地址分配方法、装置及介质
CN116846871A (zh) * 2023-06-25 2023-10-03 杭州微慕科技有限公司 一种电池模组的地址分配系统及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005039476A1 (de) * 2005-08-18 2007-02-22 Micronas Gmbh Verfahren zum Betreiben eines Bussystems bzw. Buseinrichtung dafür
CN102685274A (zh) * 2012-06-08 2012-09-19 陈梓平 智能家居网络中智能设备的组地址分配方法
CN115002070A (zh) * 2022-06-10 2022-09-02 北京东土科技股份有限公司 芯片集群、地址分配方法、电子设备和存储介质
CN116132404A (zh) * 2022-12-28 2023-05-16 超聚变数字技术有限公司 Can总线节点地址分配方法、节点设备和计算设备
CN116846871A (zh) * 2023-06-25 2023-10-03 杭州微慕科技有限公司 一种电池模组的地址分配系统及方法
CN116708375A (zh) * 2023-08-07 2023-09-05 宁波德业储能科技有限公司 一种集装箱储能系统的设备地址分配方法、装置及介质

Also Published As

Publication number Publication date
CN117135143A (zh) 2023-11-28

Similar Documents

Publication Publication Date Title
CN107332876B (zh) 区块链状态的同步方法及装置
US9596187B2 (en) Time-triggered Ethernet-based data transmission method and node device
CN103856578B (zh) Modbus RTU从站自动获取站地址方法及从站
CN103152390A (zh) 分布式存储系统的节点配置方法、装置、节点及系统
CN113395198B (zh) 设备的组网方法及装置、数据传输系统
CN113645278B (zh) 一种区块链的跨链消息传输方法、设备、存储介质
CN113114545B (zh) 设备自组网方法、装置及空调系统
CN103944974A (zh) 一种协议报文处理方法、控制器故障处理方法及相关设备
CN106648440A (zh) 操作存储设备的控制方法和存储设备
CN110708400B (zh) 网络地址分配方法、装置、节点设备及存储介质
CN104363581B (zh) 一种关联终端的确定方法及相关设备
CN117135143B (zh) 基于can总线的群组并机地址分配方法和节点设备
CN107295117B (zh) 一种地址池的分配方法及装置
CN107094085B (zh) 一种信令传送方法及装置
CN109861791B (zh) 一种周期型数据报文传输方法、系统、装置和存储介质
CN105744494A (zh) 一种短信发送方法和装置
CN107483310B (zh) 一种终端与转发节点之间组网的方法和系统
CN112000019B (zh) 用于共享设备指令控制的方法、装置及设备
CN110888892B (zh) 一种区块同步方法、装置及存储介质
CN107231284B (zh) 一种消息的发送方法和终端设备
CN108846085A (zh) 一种id生成方法、装置、电子设备及系统
CN114173396B (zh) 终端联网时间的确定方法和装置、电子设备和存储介质
CN116016445A (zh) 一种主从式总线通信系统的地址分配方法
CN113179338B (zh) 通信方法、电子设备及存储介质
CN106559439A (zh) 一种业务处理方法及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant