CN102546340B - 一种小型can总线网络组网的方法 - Google Patents

一种小型can总线网络组网的方法 Download PDF

Info

Publication number
CN102546340B
CN102546340B CN201210034238.7A CN201210034238A CN102546340B CN 102546340 B CN102546340 B CN 102546340B CN 201210034238 A CN201210034238 A CN 201210034238A CN 102546340 B CN102546340 B CN 102546340B
Authority
CN
China
Prior art keywords
node
network
nodes
networking
generates
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.)
Expired - Fee Related
Application number
CN201210034238.7A
Other languages
English (en)
Other versions
CN102546340A (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.)
Shandong Normal University
Original Assignee
Shandong Normal University
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 Shandong Normal University filed Critical Shandong Normal University
Priority to CN201210034238.7A priority Critical patent/CN102546340B/zh
Publication of CN102546340A publication Critical patent/CN102546340A/zh
Application granted granted Critical
Publication of CN102546340B publication Critical patent/CN102546340B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种能自行分配ID,实现CAN网络通讯的小型CAN总线网络组网的方法,主要针对网络节点数目较少的场合。它的步骤为:第一步,CAN网络中各个节点的ID均为初始值ID0,选定其中一个为起始的目标节点,然后在CAN网络上广播发送生成ID的命令;第二步,其他节点在接收到生成ID的命令后,开始随机生成一个整数作为自己的ID,各个节点生成自己的ID后,把ID0作为目标地址,将自己新ID发送出去;第三步,ID0节点将接收到的ID号码加上ID0组成一个ID表;第四步,ID0节点将生成的ID表发送给各个其他节点,至此,CAN网络ID分配完成。

Description

一种小型CAN总线网络组网的方法
技术领域
本发明涉及CAN总线技术领域,尤其涉及一种小型CAN总线网络组网的方法。
背景技术
 CAN 即控制器局域网络,属于工业现场总线的范畴。与一般的通信总线相比,CAN总线的数据通信具有突出的可靠性、实时性和灵活性。由于其良好的性能及独特的设计,CAN总线越来越受到人们的重视。其应用范围目前已不再局限于汽车行业,而向自动控制、航空航天、航海、过程工业、机械工业、纺织机械、农用机械、机器人、数控机床、医疗器械及传感器等领域发展。
一般在组成CAN网络时,需要先定义好CAN网络中每个节点的ID,这样使得CAN网络的建立需要大量的准备时间,需要有专业人员设置好每个节点的ID。对于一般的CAN网络,用户无法使自行完成CAN网络中ID的分配。
虽然现有的CAN组网的方法中,也可由网络分配ID,但多采用一个主机来管理和分配地址,各个节点需要依次连接到网络,在节点接入过程中容易在网络中引入干扰,组网复杂度较高,操作较不方便。
发明内容
本发明的目的在于针对上述问题而设计了一种能自行分配ID,实现CAN网络通讯的小型CAN总线网络组网的方法,主要针对网络节点数目较少的场合,本方法无需主机分配地址,各个节点在组网时都已经接入CAN总线网络,不需要依次连接到网络,算法简单,操作简单,在现有硬件条件下只需加入简单代码就可以实现本方法。
为实现上述目的,本发明采用如下方法:
一种小型CAN总线网络组网的方法,它的步骤为:
第一步,CAN网络中各个节点的ID均为初始值ID0,选定其中一个为起始的目标节点,然后在CAN网络上广播发送生成ID的命令;由于节点初始值均为ID0,所以CAN通讯模块可以批量生产,装配简单,无需像传统组网那样,需要提前设定好每个节点的ID。由于各个节点的CAN通讯模块并无差异,所以起始的目标节点可以按用户的需要选定,无任何限制,而现有的能自行分配ID的网络中,都采用一个专门用来管理和分配ID的节点,这个节点是唯一确定的,在实际安装网络中很不方便。
第二步,其他节点在接收到生成ID的命令后,开始随机生成一个整数作为自己的ID,各个节点生成自己的ID后,把ID0作为目标地址,将自己新ID发送出去;由于节点初始ID都为ID0,所以目标节点发送的生成ID的命令,各个节点在同一时间均可接收到,然后利用随机数函数生成自己的ID。较之用固定的管理节点来对依次接入网络的节点进行ID的分配,可以节约大量的时间,且通讯稳定性好,不会因节点的依次接入而引入干扰;算法简单可靠,直接调用现有的随机数函数即可。
第三步,ID0节点将接收到的ID号码加上ID0组成一个ID表;起始的目标节点暂时对网络中的ID进行管理,可以快速的判断出组网是否成功。固定的管理节点需要时时刻刻的对总线进行监听,这样不仅浪费资源,而且还大量占用总线时间,降低有效通讯。与采用固定的管理节点不同,起始的目标节点只是被动的接收各个节点发送来的数据,全部为有益通讯,总线利用率高,而且只是暂时管理ID表。
第四步,ID0节点将生成的ID表发送给各个其他节点,至此CAN网络ID分配完成。将完整的ID表发送给其他各个节点,从而取消了起始的目标节点的差异性,使网络中各个节点的地位均相同,使用固定的管理节点的网络,这一管理节点始终处于管理者的地位,其他节点均受到管理。
所述第三步中,如果各个节点随机生成的ID号均不一样,则ID表中含有N个不相同的ID号,则表示ID分配成功,进入第四步。
所述第三步中,如果生成的ID表中出现相同的ID,或者ID表中ID的数目少于N,ID0节点则按照当前的ID表重发生成ID的命令,跳至第二步继续进行。
本发明是针对小型的CAN网络提出的组网方法,具体说是针对节点数50以内的CAN网络的组网方法。它先将CAN网络中各节点的地址一致化,然后从中选择一个节点作为起始的目标节点,随即向CAN网络发布ID生成信息,除目标节点外的其余各节点都会自动生成一个地址,并向目标节点发送自己的地址,为防止冲突出现,只有当所有节点发布的自己地址不同时,组网才算成功,只要有任何两个或多个节点的地址出现相同,则本次组网失败,将重新进行组网操作。
本发明的有益效果是:
1)方法实现简单,从而降低了开发成本,只需加入简单的代码就可以实现本方法,无需任何的硬件改动。     2)本方法中最初各个节点的初始ID相同,各个节点的CAN通讯部分软硬件完全相同,所以适合于产量化的生产节点通讯器件。     3)组网操作简单,可由用户自行完成,用户只要连接好线路,即可完成整个网络的ID分配,使用方便。
附图说明
图1为本发明CAN网络示意图。
具体实施方式
下面结合附图与实施例对本发明作详细说明。
图1中,
第一步,先按附图所示连接好各个节点,各个节点的ID初始值均为ID0,且使用的为10位二进制ID。
第二步,选取一节点,例如节点3,输入CAN网络中节点总数N,开启ID分配功能。
第三步,节点3以ID0作为目标地址,在CAN网络中发送生成ID的命令。
第四步,CAN网络中其他节点接收到生成ID的命令后,开始随机生成一个10位二进制的正整数作为自己的ID,并将此ID发送给节点3。例如,节点1在接收到生成ID的命令后,节点1会随机生成一个10位二进制数,将此二进制数作为自己的ID,并将此ID发送给节点3。
第五步,节点3会在一定时间里接收各个节点发来的ID号,并生成ID表。超过此时间后,节点3开始开始计算ID表中不相同ID的数目n,如果n等于N,则表示网络中各个节点的ID都不相同,ID分配成功,进入第六步。否则,节点3将根据当前的ID表,向其他各个节点重发生成ID的命令,转至第四步继续进行。
第六步,节点3将ID表发送给其他各个节点。
关于此方法在CAN网络中适用范围的计算。
   假设采用10位二进制ID,则可用ID为1024个,我们以1000个可用ID计算。
(CAN网络中节点总数N)-1 第一次ID分配成功的概率
10 94.63%
20 80.94%
30 62.51%
40 43.55%
50 27.33%
60 15.44%
70 7.84%
由表中可知,当采用10位二进制ID时,CAN网络节点总数在40个以内时,ID分配成功率较高,可以在短时间内完成ID分配。当节点总数大于50个时,ID分配成功率较低,要完成ID分配可能会需要较长时间。因此,此方法比较适用于CAN网络规模较小的场合,具体使用可参考上述表格。

Claims (1)

1.一种小型CAN总线网络组网的方法,其特征是,它的步骤为:
第一步,CAN网络中各个节点的ID均为初始值ID0,选定其中一个为起始的目标节点,然后在CAN网络上广播发送生成ID的命令;
第二步,其他节点在接收到生成ID的命令后,开始随机生成一个整数作为自己的ID,各个节点生成自己的ID后,把ID0作为目标地址,将自己新ID发送出去;
第三步,ID0节点将接收到的ID号码加上ID0组成一个ID表;
如果各个节点随机生成的ID号均不一样,则ID表中含有N个不相同的ID号,则表示ID分配成功,进入第四步;
如果生成的ID表中出现相同的ID,或者ID表中ID的数目少于N,ID0节点则按照当前的ID表重发生成ID的命令,跳至第二步继续进行;
第四步,ID0节点将生成的ID表发送给各个其他节点,至此,CAN网络ID分配完成。
CN201210034238.7A 2012-02-16 2012-02-16 一种小型can总线网络组网的方法 Expired - Fee Related CN102546340B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210034238.7A CN102546340B (zh) 2012-02-16 2012-02-16 一种小型can总线网络组网的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210034238.7A CN102546340B (zh) 2012-02-16 2012-02-16 一种小型can总线网络组网的方法

Publications (2)

Publication Number Publication Date
CN102546340A CN102546340A (zh) 2012-07-04
CN102546340B true CN102546340B (zh) 2014-02-19

Family

ID=46352341

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210034238.7A Expired - Fee Related CN102546340B (zh) 2012-02-16 2012-02-16 一种小型can总线网络组网的方法

Country Status (1)

Country Link
CN (1) CN102546340B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102830685B (zh) * 2012-09-19 2015-02-18 三一矿机有限公司 一种电动轮自卸车及控制系统
CN105337826B (zh) * 2014-06-20 2019-05-10 奇点新源国际技术开发(北京)有限公司 一种获取总线上挂载节点信息的方法和装置
CN104192654B (zh) * 2014-07-29 2016-03-23 广州日滨科技发展有限公司 电梯召唤装置和电梯系统
CN105573174A (zh) * 2016-02-03 2016-05-11 惠州市蓝微新源技术有限公司 一种电池管理系统从控单元标识信息自动分配方法
CN106657263A (zh) * 2016-11-11 2017-05-10 宁波柯力传感科技股份有限公司 一种称重传感器can网络节点号自动分配方法
CN108123860A (zh) * 2017-01-19 2018-06-05 山西智舒智能科技有限公司 基于can总线的智能家居系统节点设备的id自动分配及管理方法
CN106817438A (zh) * 2017-02-09 2017-06-09 浙江风向标科技有限公司 一种基于控制器局域网络的设备管理方法及装置
CN107786405B (zh) * 2017-10-17 2020-10-27 南京博兰得电子科技有限公司 基于can总线的多节点自动组网方法
CN109873676B (zh) * 2017-12-05 2020-07-03 艾乐德电子(南京)有限公司 一种基于光纤的can总线异步通信方法及网络
CN109586978B (zh) * 2018-12-28 2022-03-18 浙江中控研究院有限公司 总线拓扑网络自组网方法
CN110311824B (zh) * 2019-07-25 2021-12-28 江苏小牛电动科技有限公司 一种电池管理系统can通讯动态组网方法
CN113347070B (zh) * 2021-05-31 2022-11-04 上海汇解科技有限公司 一种智能楼宇现场总线自组网方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1409516A (zh) * 2001-09-28 2003-04-09 深圳市中兴通讯股份有限公司上海第二研究所 一种用于监控系统的动态组网方法
CN1988503A (zh) * 2006-11-13 2007-06-27 西北工业大学 无线传感器网络路由方法
EP2104277A1 (fr) * 2008-03-10 2009-09-23 Delphi Technologies, Inc. Détection de pannes et isolation d'un réseau CAN highspeed AVAL

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1409516A (zh) * 2001-09-28 2003-04-09 深圳市中兴通讯股份有限公司上海第二研究所 一种用于监控系统的动态组网方法
CN1988503A (zh) * 2006-11-13 2007-06-27 西北工业大学 无线传感器网络路由方法
EP2104277A1 (fr) * 2008-03-10 2009-09-23 Delphi Technologies, Inc. Détection de pannes et isolation d'un réseau CAN highspeed AVAL

Also Published As

Publication number Publication date
CN102546340A (zh) 2012-07-04

Similar Documents

Publication Publication Date Title
CN102546340B (zh) 一种小型can总线网络组网的方法
US20230198257A1 (en) Establishing Communication and Power Sharing Links Between Components of a Distributed Energy System
CN111147619B (zh) 本地实现rs485从机设备自动分配地址的方法和系统
CN108696298B (zh) 数据传输方法及装置、电力线通信网络、电力系统
EP3375146B1 (en) Systems and methods relating to a smart home manager
CN104166384A (zh) 一种家电互联互通底层传输的方法及专用装置
CN103280894A (zh) 一种配电网控制应用网络拓扑自动识别方法
CN102711139A (zh) 一种数据流量统计方法及终端
CN112583677A (zh) 一种为从设备分配地址的方法、装置、存储介质和系统
CN101266490A (zh) 无mac地址的总线家庭有线控制网络的即插即用方法
CN102710809B (zh) 地址分配方法
CN104113435A (zh) 生成标识的方法及装置
CN104950829A (zh) 一种总线系统功耗控制方法及装置
CN101986656A (zh) 光伏网络自适应控制系统
CN102685274B (zh) 智能家居网络中智能设备的组地址分配方法
CN106532960B (zh) 一种适用于供配电领域的自适应scada监控方法
CN103164262A (zh) 一种任务管理方法及装置
CN106953809B (zh) 一种基于485分时通信的设备资源采集方法
CN116233200B (zh) 一种基于后续帧动态注册的电能表通信方法及系统
CN111371659B (zh) 一种rs485从设备地址自动分配的方法
CN102694883A (zh) 智能家居网络中的地址分配方法及设备
CN113660353B (zh) 基于蓝牙Mesh的Provisioner地址管理的方法、装置、设备和介质
CN102694882A (zh) 智能家居网络中智能设备的组地址分配方法
CN109905300A (zh) 一种基于家庭成员的家电设备绑定控制方法
CN104899174A (zh) 光伏逆变器多台串联自动分配地址的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140219

Termination date: 20150216

EXPY Termination of patent right or utility model