CN108881514A - 总线系统的地址分配方法、通讯设备和总线系统 - Google Patents
总线系统的地址分配方法、通讯设备和总线系统 Download PDFInfo
- Publication number
- CN108881514A CN108881514A CN201810707487.5A CN201810707487A CN108881514A CN 108881514 A CN108881514 A CN 108881514A CN 201810707487 A CN201810707487 A CN 201810707487A CN 108881514 A CN108881514 A CN 108881514A
- Authority
- CN
- China
- Prior art keywords
- address
- communication apparatus
- bus
- unit
- judging
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5038—Address allocation for local use, e.g. in LAN or USB networks, or in a controller area network [CAN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种总线系统的地址分配方法、通讯设备和总线系统,包括:设定初始地址为i,各通讯设备均执行如下步骤:S1、判断自身的通讯地址是否为i;若步骤S1的判断结果为是,则执行步骤S2;否则执行步骤S3;S2、向总线发送自身的通讯地址为i的信息;S3、判断在第一预设时间内是否从总线处接收到其他通讯设备所发出的通讯地址为i的信息;若步骤S3的判断结果为是,则执行步骤S4;否则执行步骤S5;S4、执行i=i+1,并继续执行步骤S1;S5、判断自身是否已经分配有通讯地址;若步骤S5的判断结果为否,则执行步骤S7;S7、进行总线竞争,并判断是否竞争成功;若步骤S7的判断结果为是,则执行步骤S8;S8、将自身的通讯地址分配为i。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种总线系统的地址分配方法、通讯设备和总线系统。
背景技术
总线型智能家居控制通讯设备在安装部署时,需要对其通讯地址进行设定;传统设定方式为拨码开关,或者遥控器输入,其效率非常低。
为解决该技术问题,现有技术提供了一种针对总线系统内通讯设备的自动分配通讯地址的方法,其原理如下:在总线中设置一个主机模块,将各通讯设备作为从机模块,利用主机模块来对各从机模块来进行地址分配。然而,这种设置主机模块的方式会使得总线系统的部署成本增高,且在地址分配过程中主机模块需要多次与从机模块进行握手,分配效率低。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一,提出了一种总线系统的地址分配方法、通讯设备和总线系统。
为实现上述目的,本发明提供了一种总线系统的地址分配方法,包括:
设定初始地址为i,并开始进行地址分配流程,所述总线系统中与总线连接的各通讯设备均执行如下步骤:
S1、判断自身的通讯地址是否为i;
若步骤S1的判断结果为是,则执行步骤S2;否则执行步骤S3;
S2、向总线发送自身的通讯地址为i的信息;
S3、判断在第一预设时间内是否从所述总线处接收到其他通讯设备所发出的通讯地址为i的信息;
若步骤S3的判断结果为是,则执行步骤S4;否则执行步骤S5;
S4、执行i=i+1,并继续执行步骤S1;
S5、判断自身是否已经分配有通讯地址;
若步骤S5的判断结果为否,则执行步骤S7;
S7、进行总线竞争,并判断是否竞争成功;
若步骤S7的判断结果为是,则执行步骤S8;
S8、将自身的通讯地址分配为i。
可选地,若步骤S5的判断结果为是,则执行步骤S6;
S6、判断在第二预设时间内是否从所述总线处接收到其他通讯设备所发出的通讯地址为i的信息;
若步骤S6的判断结果为是,则执行步骤S4;否则,地址分配流程结束。
可选地,在步骤S8结束之后,继续执行步骤S2;
若步骤S7的判断结果为否,则执行步骤S9;
S9、等待并接收其他通讯设备通过所述总线所发出的通讯地址为i的信息,并在接收到其他通讯设备所发出的通讯地址为i的信息之后执行步骤S4。
可选地,步骤S7包括:
S701、根据预设的伪随机函数生成随机延迟时间;
S702、判断在所述延迟时间内是否从所述总线处接收到其他通讯设备所发出竞争信息;
若步骤S702的判断结果为是,则判断出竞争失败;否则,判断出竞争成功,并执行步骤S703;
S703、向所述总线发送竞争信息。
为实现上述目的,本发明还提供了一种通讯设备,所述通讯设备为总线系统中与总线连接的通讯设备,总线系统内设定初始地址为i;
所述通讯设备包括:
第一判断单元,用于判断所述通讯设备自身的通讯地址是否为i;
第一发送单元,用于在所述第一判断单元的判断结果为是时,向总线发送所述通讯设备自身的通讯地址为i的信息;
第二判断单元,用于在所述第一判断单元的判断结果为否时,判断在第一预设时间内是否从所述总线处接收到其他通讯设备所发出的通讯地址为i的信息;
运算单元,用于在所述第二判断单元的判断结果为是时,执行i=i+1的操作,并控制第一判断单元再次进行工作;
第三判断单元,用于在所述第二判断单元的判断结果为否时,判断所述通讯设备自身的是否已经分配有通讯地址;
竞争单元,用于在所述第三判断单元的判断结果为否时,进行总线竞争,并判断是否竞争成功;
分配单元,用于在所述竞争单元的判断结果为是时,将所述通讯设备自身的通讯地址分配为i。
可选地,还包括:
第四判断单元,用于在所述第三判断单元的判断结果为是时,判断在第二预设时间内是否从所述总线处接收到其他通讯设备所发出的通讯地址为i的信息;
所述运算单元还用于在所述第四判断单元的判断结果为是时,执行i=i+1的操作,并控制第一判断单元再次进行工作。
可选地,所述第一发送单元还用于在所述分配单元将所述通讯设备自身的通讯地址分配后i之后,向总线发送所述通讯设备自身的通讯地址为i的信息;
所述通讯设备还包括:
第一接收单元,用于在所述竞争单元的判断结果为否时,等待并接收其他通讯设备通过所述总线所发出的通讯地址为i的信息;
所述运算单元还用于在所述第一接收单元接收到其他通讯设备通过所述总线所发出的通讯地址为i的信息之后,执行i=i+1的操作,并控制第一判断单元再次进行工作。
可选地,所述竞争单元包括:
第一生成模块,用于根据预设的伪随机函数生成随机延迟时间;
第一判断模块,用于判断在所述延迟时间内是否从所述总线处接收到其他通讯设备所发出竞争信息,并在判断结果为是时则判断出竞争失败,在判断结果为否时判断出竞争成功;
第一发送模块,用于在所述第一判断模块判断出竞争成功时,向所述总线发送竞争信息。
可选地,还包括:
分配流程发布单元,用于在通讯设备与总线连接且上电后,检测通讯设备自身是否具有通讯地址,并当检测出自身没有通讯地址时,则设定初始地址为i且向总线发送进行地址分配流程的信息。
为实现上述目的,本发明还提供了一种总线系统,包括:总线和与总线连接的若干个通讯设备,所述通讯设备采用上述的通讯设备。
附图说明
图1为总线系统的结构示意图;
图2为本发明实施例一提供的一种总线系统的地址分配方法的流程图;
图3为本发明实施例而提供的一种通讯设备的结构示意图。
具体实施方式
为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图对本发明提供的一种总线系统的地址分配方法、通讯设备和总线系统进行详细描述。
图1为总线系统的结构示意图,如图1所示,在本发明中,总线系统包括:总线和与总线连接的各通讯设备,总线在进行数据传输过程中具有一对多的特性,即一个通讯设备向总线发送数据,与总线连接的其他通讯设备都能接收到该数据。此外,为避免产生总线冲突,在任意时刻只能有一个通信设备拥有总线的上传数据控制权(向总线发送数据的权利)。此外,总线系统中不同的通讯设备分配有不同的通讯地址。
本发明的计算方案基于总线系统的上述特性,设计了一种自动分配通讯地址的方法,与传统的主机式地址分配方法相比,本发明的地址分配过程无需设置主机模块,其成本低且效率高。
在下面描述中,以总线系统为RS-485总线系统为例。
图2为本发明实施例一提供的一种总线系统的地址分配方法的流程图,如图2所示,该地址分配方法包括:
步骤S0、设定初始地址为i,并开始进行地址分配流程。
在本发明中,步骤S0是由新接入至总线的通讯设备执行,或由与总线连接的控制设备执行。
作为一种应用场景,可在与总线连接的通讯设备中写入相应的程序,当通讯设备与总线连接且上电后,该通讯设备会检测自身是否具有通讯地址,当检测出自身没有通讯地址(新接入的通讯设备)时,则会向总线发送进行地址分配流程的信息(包含“设定初始地址为i”的内容),总线系统进入地址分配流程。
作为又一种应用场景,总线上连接有一个控制设备(例如计算机),该控制设备每隔一定周期检测总线上是否存在未分配通讯地址的通讯设备,若存在,则向总线发送进行地址分配流程的信息,总线系统进入地址分配流程。
作为又一种应用场景,设计人员刚搭建完总线系统,总线系统内的各通讯设备均没有通讯地址,此时设计人员可通过与总线连接的一个控制设备向总线发送进行地址分配流程的信息,总线系统进入地址分配流程。
本发明中向总线发送进行地址分配流程的信息可由通讯设备发出,也可由与总线连接的控制设备发出。本领域技术人员应该知晓的是,本发明的技术方案还可适用于除上述列举的三种应用场景之外的其他应用场景,此处不再一一举例说明。
此外,一般而言,总线系统中所分配的初始地址为0x01。在本实施了中,以步骤S0中的初始地址i=0x01为例进行示例性描述。当然,本发明中还可根据需要来设定初始地址为其他地址。
在步骤S0结束时,总线系统中至少有一个通讯设备未分配有通讯地址。
在步骤S0结束后,总线系统中与总线连接的各通讯设备均执行如下步骤:
步骤S1、判断自身的通讯地址是否为i。
在各通讯设备接收到进行地址分配流程的信息后,各通信设备知晓整个总线系统进入地址分配流程,此时各通讯设备检测自身的通讯地址是否为0x01。
此时,有如下两种情形:
1)全部通讯设备的判断结果均为否。
2)有一个通讯设备的判断结果为是,而其他通讯设备的判断结果为否。
当为情形1)时,表明初始通讯地址i=0x01未被分配,后续可对地址0x01进行分配。
当为情形2)时,表明初始通讯地址i=0x01已被分配。
在各通讯设备执行完步骤S1后,判断结果为是的通讯设备执行步骤S2,其他通讯设备执行步骤S3。
步骤S2、向总线发送自身的通讯地址为i的信息。
当存在通讯设备的通讯地址为0x01时,则在步骤S1结束后该通讯设备会向总线发送自身的通讯地址为0x01的信息。
步骤S3、判断在第一预设时间内是否从总线处接收到其他通讯设备所发出的通讯地址为i的信息。
对应于情形1),当不存在通讯地址为0x01的通讯设备时,由于没有通讯设备向总线发送自身的通讯地址为0x01的信息(没有有通讯设备执行步骤S2),则在第一预设时间内各通讯设备均不会接收到信息,表明通讯地址i=0x01未被分配。
其中,可选的,第一预设时间可设置为该总线系统中通讯设备发送一帧数据包所需的最长时间。当然,该第一预设时间还可以根据实际需要进行设定和调整。
对应于情形2),当存在通讯地址为0x01的通讯设备时,由于该通讯设备会向总线发送自身的通讯地址为0x01的信息(有通讯设备执行步骤S2),因此总线系统中的其他通讯设备均为接收到通讯地址为0x01的该通讯设备所反馈的信息,表明通讯地址i=0x01已被分配。
当为情形1)时,则各通讯设备在执行步骤S3的判断结果均为否,此时各通讯设备执行步骤S5。当为情形2)时,各通讯设备在执行步骤S3的判断结果均为是,此时各通讯设备执行步骤S4。
需要说明的是,当为情形2)时,通讯地址为i=0x01的设备可在向总线发送自身的通讯地址为0x01的信息之后执行步骤S4,或者是在地址分配流程之前不再执行任何操作。此两种情况均属于本发明的保护范围。
步骤S4、执行i=i+1。
当通讯地址0x01已经被分配时,则在步骤S4中执行加1运算后,i=0x02,此时继续执行步骤S1,通过步骤S1~步骤S3来判断通讯地址i=0x02是否已经被分配。
通过上述步骤S1~步骤S4的循环,可找到总线系统内未被分配且最小的一个通讯地址。为方便描述,将通过步骤S1S~步骤S4的循环所找出的总线系统内未被分配且最小的通讯地址记为i=0xmn。
步骤S5、判断自身是否已经分配有通讯地址。
在进入执行步骤S5之前,表明通讯地址i=0xmn未被分配。此时,可对通讯地址i=0xmn进行分配。
各通设备执行步骤S5,其中已经分配有通讯地址的通讯设备的判断结果为是,后序执行步骤S6,未分配有通讯地址的通讯设备的判断结果为否,则执行步骤S7。
步骤S6、判断在第二预设时间内是否从总线处接收到其他通讯设备所发出的通讯地址为i的信息。
已经分配有通讯地址的通讯设备在第二预设时间内等待接收由其他通讯设备所发出的通讯地址为i=0xmn的信息。其中,第二预设时间可设置为该总线系统中通讯设备发送一帧数据包所需的最长时间的两倍。在本发明中,可选地,第一预设时长为T1,第二预设时长为T2,其中,T2=2*T1。
若判断结果为是(接收到相应信息),表明通讯地址i=0xmn在步骤S5之后已经被分配(具体可参见步骤S7及其之后的步骤),此时在步骤S6之后执行步骤S4;否则,表明系统内各通讯设备均已分配通讯地址,地址分配流程结束。
步骤S7、进行总线竞争,并判断是否竞争成功。
可选地,步骤S7包括:
步骤S701、根据预设的伪随机函数生成随机延迟时间。
通讯设备中预设存储有伪随机函数,该伪随机函数可随机输出一个在0~t之前的数,以作为延迟时间;t可取值为该总线系统中通讯设备发送一帧数据包所需的最短时间。
步骤S702、判断在延迟时间内是否从总线处接收到其他通讯设备所发出竞争信息。
若步骤S702的判断结果为是,则判断出竞争失败;否则,判断出竞争成功,并执行步骤S703。
步骤S703、向总线发送竞争信息。
通过上述步骤S701~步骤S703,在未分配有通讯地址的通讯设备中,延迟时间最小的通讯设备会拥有总线的上传数据控制权,即总线竞争成功,总线竞争成功的通讯设备将进行步骤S8。
需要说明的是,上述基于随机延时来进行总线竞争的技术手段为本发明中的可选技术手段,其不会对本发明的技术方案产生现在,在本发明中,还可采用其他技术手段来进行总线竞争,此处不再一一举例。
步骤S8、将自身的通讯地址分配为i。
在步骤S7中总线竞争成功的通讯设备将自身的通讯地址分配为i=0xmn。
由此可见,本发明技术方案可在没有主机模块的情况下,实现为总线系统中的一个未分配有通讯地址的通讯设备分配一个通讯地址(当前未被分配且最小的一个通讯地址),其分配速度快,效率高。
在本实施例中,为实现对总线系统内全部未分配有通讯地址的通讯设备均分配通讯地址,优选地,新分配有通讯地址i=0xmn的通讯设备在执行完步骤S8执行完之后,其继续执行步骤S2,即向总线发送自身的通讯地址为0xmn的信息,此时在步骤S5中判断自身已经分配有通讯地址的通讯设备以及未分配有通讯地址且总线竞争失败的通讯设备均会接收到该信息。
需要说明的是,新分配有通讯地址i=0xmn的通讯设备,其从进行总线竞争开始至完成向总线发送自身的通讯地址为0xmn的信息截止,该对应的时间小于第二预设时间(执行一次步骤S8和步骤S2的时间小于第二预设时间)。
此外,在执行步骤S7完之后且判断结果为否的通讯设备,其会执行步骤S9。
步骤S9、等待并接收其他通讯设备通过总线所发出的通讯地址为i的信息。
在步骤S7中总线竞争失败的通讯设备将等待并接收总线竞争成功的通讯设备所发出自身的通讯地址为0xmn的信息,并在接收相应信息之后执行步骤S4。
通过上述循环,给将总线系统内当前未被分配且最小的一个通讯地址分配给未分配通讯地址的通讯模块,且新分配有通讯地址的通讯模块在设置自身新通讯地址后会将其通讯地址发送给其他通讯设备,直至总线中不再有通讯设备上传自身的通讯地址的信息,表明总线系统中所有通讯地址的通讯设备,地址分配流程结束。
图3为本发明实施例而提供的一种通讯设备的结构示意图,如图3所示,该通讯设备为总线系统中与总线连接的通讯设备,总线系统内设定初始地址为i;该通讯设备包括:第一判断单元1、第一发送单元2、第二判断单元3、运算单元4、第三判断单元5、竞争单元7和分配单元8。
其中,第一判断单元1用于判断通讯设备自身的通讯地址是否为i。
第一发送单元2用于在第一判断单元1的判断结果为是时,向总线发送通讯设备自身的通讯地址为i的信息。
第二判断单元3用于在第一判断单元1的判断结果为否时,判断在第一预设时间内是否从总线处接收到其他通讯设备所发出的通讯地址为i的信息。
运算单元4用于在第二判断单元3的判断结果为是时,执行i=i+1的操作,并控制第一判断单元1再次进行工作。
第三判断单元5用于在第二判断单元3的判断结果为否时,判断通讯设备自身的是否已经分配有通讯地址。
竞争单元7用于在第三判断单元5的判断结果为否时,进行总线竞争,并判断是否竞争成功。
分配单元8用于在竞争单元7的判断结果为是时,将通讯设备自身的通讯地址分配为i。
可选地,通讯设备还包括:第四判断单元6,第四判断单元6用于在第三判断单元5的判断结果为是时,判断在第二预设时间内是否从总线处接收到其他通讯设备所发出的通讯地址为i的信息。
此时,运算单元4还用于在第四判断单元6的判断结果为是时,执行i=i+1的操作,并控制第一判断单元再次进行工作。
可选地,第一发送单元2还用于在分配单元8将通讯设备自身的通讯地址分配后i之后,向总线发送通讯设备自身的通讯地址为i的信息;通讯设备还包括:第一接收单元9,第一接收单9元用于在竞争单元7的判断结果为否时,等待并接收其他通讯设备通过总线所发出的通讯地址为i的信息;
此时,运算单元4还用于在第一接收单元接收到其他通讯设备通过总线所发出的通讯地址为i的信息之后,执行i=i+1的操作,并控制第一判断单元再次进行工作。
需要说明的是,本实施例中的第一判断单元1可用于执行上述实施例一中的步骤S1,第一发送单元2可用于执行上述实施例一中的步骤S2,第二判断单元3可用于执行上述实施例一中的步骤S3,运算单元4可用于执行上述实施例一中的步骤S4,第三判断单元5可用于执行上述实施例一中的步骤S5,第四判断单元6用于执行上述实施例一中的步骤S6,竞争单元7可用于执行上述实施例一中的步骤S7,分配单元8可用于执行上述实施例一中的步骤S8,第一接收单元9可用于执行上述实施例一中的步骤S9。对于上述各单元的具体描述可参见前述实时一中的内容,此处不再赘述。
可选地,竞争单元7包括:第一生成模块、第一判断模块和第一发送模块。
其中,第一生成模块用于根据预设的伪随机函数生成随机延迟时间。
第一判断模块用于判断在延迟时间内是否从总线处接收到其他通讯设备所发出竞争信息,并在判断结果为是时则判断出竞争失败,在判断结果为否时判断出竞争成功。
第一发送模块用于在第一判断模块判断出竞争成功时,向总线发送竞争信息。
需要说明的是,第一生成模块可用于执行上述实施例一中的步骤S701,第一判断模块可用于执行上述实施例一中的步骤S702,第一发送模块可用于执行上述实施例一中的步骤S703。对于上述各模块的描述可参见前述实施例一中的内容,此处不再赘述。
可选地,通讯设备还包括:分配流程发布单元10,分配流程发布单元10用于在通讯设备与总线连接且上电后,检测通讯设备自身是否具有通讯地址,并当检测出自身没有通讯地址时,则设定初始地址为i且向总线发送进行地址分配流程的信息。需要说明的是,分配流程发布单元10可用于执行上述实施例一中的步骤S0。
本发明实施例三提供了一种总线系统,包括总线和与总线连接的若干个通讯设备,其中该通讯设备采用上述实施例二中的通讯设备,各通讯设备基于上述实施例一中的地址分配方法可实现对总线系统中未分配有通讯地址的至少一个通讯设备自动分配通讯地址。
可选地,该总线系统为RS-485总线系统。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
Claims (10)
1.一种总线系统的地址分配方法,其特征在于,包括:
设定初始地址为i,并开始进行地址分配流程,所述总线系统中与总线连接的各通讯设备均执行如下步骤:
S1、判断自身的通讯地址是否为i;
若步骤S1的判断结果为是,则执行步骤S2;否则执行步骤S3;
S2、向总线发送自身的通讯地址为i的信息;
S3、判断在第一预设时间内是否从所述总线处接收到其他通讯设备所发出的通讯地址为i的信息;
若步骤S3的判断结果为是,则执行步骤S4;否则执行步骤S5;
S4、执行i=i+1,并继续执行步骤S1;
S5、判断自身是否已经分配有通讯地址;
若步骤S5的判断结果为否,则执行步骤S7;
S7、进行总线竞争,并判断是否竞争成功;
若步骤S7的判断结果为是,则执行步骤S8;
S8、将自身的通讯地址分配为i。
2.根据权利要求1所述的总线系统的地址分配方法,其特征在于,
若步骤S5的判断结果为是,则执行步骤S6;
S6、判断在第二预设时间内是否从所述总线处接收到其他通讯设备所发出的通讯地址为i的信息;
若步骤S6的判断结果为是,则执行步骤S4;否则,地址分配流程结束。
3.根据权利要求1或2所述的总线系统的地址分配方法,其特征在于,在步骤S8结束之后,继续执行步骤S2;
若步骤S7的判断结果为否,则执行步骤S9;
S9、等待并接收其他通讯设备通过所述总线所发出的通讯地址为i的信息,并在接收到其他通讯设备所发出的通讯地址为i的信息之后执行步骤S4。
4.根据权利要求1所述的总线系统的地址分配方法,其特征在于,步骤S7包括:
S701、根据预设的伪随机函数生成随机延迟时间;
S702、判断在所述延迟时间内是否从所述总线处接收到其他通讯设备所发出竞争信息;
若步骤S702的判断结果为是,则判断出竞争失败;否则,判断出竞争成功,并执行步骤S703;
S703、向所述总线发送竞争信息。
5.一种通讯设备,其特征在于,所述通讯设备为总线系统中与总线连接的通讯设备,总线系统内设定初始地址为i;
所述通讯设备包括:
第一判断单元,用于判断所述通讯设备自身的通讯地址是否为i;
第一发送单元,用于在所述第一判断单元的判断结果为是时,向总线发送所述通讯设备自身的通讯地址为i的信息;
第二判断单元,用于在所述第一判断单元的判断结果为否时,判断在第一预设时间内是否从所述总线处接收到其他通讯设备所发出的通讯地址为i的信息;
运算单元,用于在所述第二判断单元的判断结果为是时,执行i=i+1的操作,并控制第一判断单元再次进行工作;
第三判断单元,用于在所述第二判断单元的判断结果为否时,判断所述通讯设备自身的是否已经分配有通讯地址;
竞争单元,用于在所述第三判断单元的判断结果为否时,进行总线竞争,并判断是否竞争成功;
分配单元,用于在所述竞争单元的判断结果为是时,将所述通讯设备自身的通讯地址分配为i。
6.根据权利要求5所述的通讯设备,其特征在于,还包括:
第四判断单元,用于在所述第三判断单元的判断结果为是时,判断在第二预设时间内是否从所述总线处接收到其他通讯设备所发出的通讯地址为i的信息;
所述运算单元还用于在所述第四判断单元的判断结果为是时,执行i=i+1的操作,并控制第一判断单元再次进行工作。
7.根据权利要求5或6所述的通讯设备,其特征在于,所述第一发送单元还用于在所述分配单元将所述通讯设备自身的通讯地址分配后i之后,向总线发送所述通讯设备自身的通讯地址为i的信息;
所述通讯设备还包括:
第一接收单元,用于在所述竞争单元的判断结果为否时,等待并接收其他通讯设备通过所述总线所发出的通讯地址为i的信息;
所述运算单元还用于在所述第一接收单元接收到其他通讯设备通过所述总线所发出的通讯地址为i的信息之后,执行i=i+1的操作,并控制第一判断单元再次进行工作。
8.根据权利要求5所述的通讯设备,其特征在于,所述竞争单元包括:
第一生成模块,用于根据预设的伪随机函数生成随机延迟时间;
第一判断模块,用于判断在所述延迟时间内是否从所述总线处接收到其他通讯设备所发出竞争信息,并在判断结果为是时则判断出竞争失败,在判断结果为否时判断出竞争成功;
第一发送模块,用于在所述第一判断模块判断出竞争成功时,向所述总线发送竞争信息。
9.根据权利要求5所述的通讯设备,其特征在于,还包括:
分配流程发布单元,用于在通讯设备与总线连接且上电后,检测通讯设备自身是否具有通讯地址,并当检测出自身没有通讯地址时,则设定初始地址为i且向总线发送进行地址分配流程的信息。
10.一种总线系统,其特征在于,包括:总线和与总线连接的若干个通讯设备,所述通讯设备采用上述权利要求5-9中任一所述的通讯设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810707487.5A CN108881514B (zh) | 2018-07-02 | 2018-07-02 | 总线系统的地址分配方法、通讯设备和总线系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810707487.5A CN108881514B (zh) | 2018-07-02 | 2018-07-02 | 总线系统的地址分配方法、通讯设备和总线系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108881514A true CN108881514A (zh) | 2018-11-23 |
CN108881514B CN108881514B (zh) | 2021-10-01 |
Family
ID=64298049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810707487.5A Active CN108881514B (zh) | 2018-07-02 | 2018-07-02 | 总线系统的地址分配方法、通讯设备和总线系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108881514B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111654557A (zh) * | 2020-05-29 | 2020-09-11 | 宋斌 | 一种rs485地址码的自动分配方法、上位机、下位机 |
CN112929465A (zh) * | 2021-03-12 | 2021-06-08 | 珠海格力电器股份有限公司 | 总线地址分配方法及总线系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1655081A (zh) * | 2004-02-10 | 2005-08-17 | 上海新时达电气有限公司 | 自动分配串行总线设备地址分配器及其控制方法 |
CN101167341A (zh) * | 2005-04-27 | 2008-04-23 | 菲尼克斯电气公司 | 对现场总线安全用户的地址分配 |
WO2008155273A1 (de) * | 2007-06-20 | 2008-12-24 | Endress+Hauser Flowtec Ag | Feldbuseinheit und verfahren zur konfiguration einer feldbuseinheit |
CN101958939A (zh) * | 2010-10-15 | 2011-01-26 | 德讯科技股份有限公司 | 多机通讯节点设备按键地址自动分配方法及其系统 |
CN101981901A (zh) * | 2008-04-04 | 2011-02-23 | 宗拓贝尔照明器材有限公司 | 借助冲突检查的总线地址自动分配 |
CN107835266A (zh) * | 2017-09-22 | 2018-03-23 | 北京机械设备研究所 | 一种为通信总线上相同节点自动分配地址的方法 |
CN108200226A (zh) * | 2018-03-15 | 2018-06-22 | 百纳德(扬州)电能系统股份有限公司 | 一种并联ups自动分配通信地址的系统 |
-
2018
- 2018-07-02 CN CN201810707487.5A patent/CN108881514B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1655081A (zh) * | 2004-02-10 | 2005-08-17 | 上海新时达电气有限公司 | 自动分配串行总线设备地址分配器及其控制方法 |
CN101167341A (zh) * | 2005-04-27 | 2008-04-23 | 菲尼克斯电气公司 | 对现场总线安全用户的地址分配 |
WO2008155273A1 (de) * | 2007-06-20 | 2008-12-24 | Endress+Hauser Flowtec Ag | Feldbuseinheit und verfahren zur konfiguration einer feldbuseinheit |
CN101981901A (zh) * | 2008-04-04 | 2011-02-23 | 宗拓贝尔照明器材有限公司 | 借助冲突检查的总线地址自动分配 |
CN101958939A (zh) * | 2010-10-15 | 2011-01-26 | 德讯科技股份有限公司 | 多机通讯节点设备按键地址自动分配方法及其系统 |
CN107835266A (zh) * | 2017-09-22 | 2018-03-23 | 北京机械设备研究所 | 一种为通信总线上相同节点自动分配地址的方法 |
CN108200226A (zh) * | 2018-03-15 | 2018-06-22 | 百纳德(扬州)电能系统股份有限公司 | 一种并联ups自动分配通信地址的系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111654557A (zh) * | 2020-05-29 | 2020-09-11 | 宋斌 | 一种rs485地址码的自动分配方法、上位机、下位机 |
CN112929465A (zh) * | 2021-03-12 | 2021-06-08 | 珠海格力电器股份有限公司 | 总线地址分配方法及总线系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108881514B (zh) | 2021-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106874237A (zh) | 基于二总线的数据同步方法及系统 | |
CN104901858A (zh) | 一种基于can总线的系统通信方法 | |
CN108881514A (zh) | 总线系统的地址分配方法、通讯设备和总线系统 | |
CN107508930A (zh) | Id分配方法及系统 | |
CN203705928U (zh) | 交直流电源供应器的主从控制系统 | |
CN106789498B (zh) | Modbus通信网络的网络地址分配方法、从节点设备与通信系统 | |
CN108800446A (zh) | 空调系统及空调系统中机组间的通信方法 | |
CN102110860B (zh) | 分布式电池管理系统及其标识分配方法 | |
CN108592310A (zh) | 空调系统及空调系统中机组间的通信方法 | |
CN103645975A (zh) | 一种异常恢复的方法及串行总线传输装置 | |
CN108647180A (zh) | 一种运算系统及相应的电子设备 | |
CN105812504B (zh) | 一种智能型通信地址编码方法 | |
CN108736077A (zh) | 电池管理系统的从控制器的配置方法和配置系统 | |
CN116319683A (zh) | 分配组网地址的方法、系统、装置以及电子设备 | |
CN104794079A (zh) | 一种总线仲裁的方法、装置及系统 | |
CN104348922B (zh) | 一种线控节点的地址竞争方法和电路 | |
CN107734082A (zh) | 一种地址分配方法及系统 | |
CN105706326A (zh) | 用于对微电网中的电功率进行控制的方法以及包括分布式发电机的装置 | |
CN106656711B (zh) | 一种令牌总线时隙预定义方法 | |
CN110418362B (zh) | 一种一键自配置并组网的方法及其系统 | |
CN112084126A (zh) | 一种rs485自动地址生成方法 | |
US7539206B2 (en) | Communication apparatus and method for supporting carrier sense multiple access/collision detection | |
CN105978779A (zh) | 基于工业互联网的实时通信方法、装置及系统 | |
US10243887B2 (en) | Switch unit, ethernet network, and method for activating components in an ethernet network | |
CN106982156B (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 |