CN103297090A - 工频载波通讯总线的抢占方法和装置 - Google Patents
工频载波通讯总线的抢占方法和装置 Download PDFInfo
- Publication number
- CN103297090A CN103297090A CN2012100507021A CN201210050702A CN103297090A CN 103297090 A CN103297090 A CN 103297090A CN 2012100507021 A CN2012100507021 A CN 2012100507021A CN 201210050702 A CN201210050702 A CN 201210050702A CN 103297090 A CN103297090 A CN 103297090A
- Authority
- CN
- China
- Prior art keywords
- equipment
- communication bus
- frequency carrier
- carrier communication
- work frequency
- 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
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种工频载波通讯总线的抢占方法和装置,其中,该方法包括:连接在工频载波通讯总线上的多个从设备对检测工频载波通讯总线上传输的载波时的检测开始时刻进行同步;多个从设备从检测开始时刻开始根据仲裁码以及工频载波通讯总线上与仲裁码中的每个比特对应的周波内的调制状态来判断是否退出对工频载波通讯总线的抢占,判断出需要退出的从设备退出对工频载波通讯总线的抢占,其中,每个仲裁码唯一地对应一个从设备;未退出对工频载波通讯总线的抢占的从设备通过工频载波通讯总线与连接在工频载波通讯总线上的主设备进行通信。本发明解决了现有技术中采用主设备轮询的方式导致的工频载波通讯总线的抢占效率较低的问题。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种工频载波通讯总线的抢占方法和装置。
背景技术
目前,随着工频载波通讯技术的逐渐成熟,工频载波的应用也越来越广泛,主要采用的是扩频载波和常规载波技术。在目前的载波通讯技术中,一般都采用主从结构的应答模式来进行主从设备之间的通信,主要有单播、广播、组播三种通信方式。
由于工频载波通讯以电力线作为系统数据传输总线,对于如图1所示的一主多从的应用设备系统,其中包括一个主设备和多个从设备。如果从设备在需要和主设备进行通信时,采用同时主动上报的方式,因所有从设备共用一条总线,必然会造成总线互斥的问题。为了解决上述问题,目前一般采用主设备轮询的方式来询问自己所属的从设备是否需要和自身进行通信,从而避免了总线互斥的问题。然而,采用轮询的方式会导致当从设备需要和主设备进行通信时,必须要等到主设备轮询到自身时,才可以建立起和主设备之间的通信,主从设备的交互性的效率比较低。例如,有一个主设备A,有5个从设备(1、2、3、4、5),主设备采用周期性的轮询方式,例如:主设备A先询问从设备1是否需要与主设备进行通信,如果不需要进行通信,则主设备再询问从设备2是否需要与主设备进行通信,如果从设备2需要与主设备进行通信,则从设备2抢占到工频载波通讯总线,并使用工频载波通讯总线与主设备进行通信,依次类推。然而,当设备5需要立刻与主设备进行通信时,必须要等到主设备A轮询到自身时才可以与主设备进行交互。由上述例子可以看出,采用主设备轮询的方式依次与各个从设备确定是否与主设备进行通信,使得编号靠后的从设备要等待较长的时间才能有机会与主设备进行交互,抢占到用于与主设备进行通信的工频载波通讯总线,从而无法快速有效地实现对工频载波通讯总线进行抢占。此外,依据现有的主设备轮询的方式,即使部分从设备不需要和主设备进行通信,也会对其进行轮询操作,从而造成了资源和时间的浪费。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明提供了一种工频载波通讯总线的抢占方法和装置,以至少解决了现有技术中采用主设备轮询的方式导致的工频载波通讯总线的抢占效率较低的问题。
根据本发明的一个方面,提供了一种工频载波通讯总线的抢占方法,包括:连接在工频载波通讯总线上的多个从设备对检测工频载波通讯总线上传输的载波时的检测开始时刻进行同步;多个从设备从检测开始时刻开始根据仲裁码以及工频载波通讯总线上与仲裁码中的每个比特对应的周波内的调制状态来判断是否退出对工频载波通讯总线的抢占,判断出需要退出的从设备退出对工频载波通讯总线的抢占,其中,每个仲裁码唯一地对应一个从设备;未退出对工频载波通讯总线的抢占的从设备通过工频载波通讯总线与连接在工频载波通讯总线上的主设备进行通信。
优选地,多个从设备从检测开始时刻开始根据仲裁码以及工频载波通讯总线上与仲裁码中的每个比特对应的周波内的调制状态来判断是否退出对工频载波通讯总线的抢占,判断出需要退出的从设备退出对所述工频载波通讯总线的抢占的步骤包括:每个从设备依次对分配给该从设备的仲裁码中的每个比特执行以下判断操作,其中,对当前执行判断操作的比特称为当前比特:若当前比特的取值为第一值,则从设备检测工频载波通讯总线上与当前比特对应的周波内是否存在过零点调制;若存在过零点调制,则从设备退出对工频载波通讯总线的抢占,若不存在过零点调制,则从设备对当前比特的下一个比特执行判断操作;若当前比特的取值为第二值,则从设备在工频载波通讯总线上与当前比特对应的周波内进行过零点调制,并对当前比特的下一个比特执行判断操作。
优选地,从设备在工频载波通讯总线上与当前比特对应的周波内进行过零点调制的步骤包括:若当前比特的取值为第一值,则从设备在与当前比特对应的周波内的第M个过零点上进行过零点调制;若当前比特的取值为第二值,则从设备在与当前比特对应的周波内的第N个过零点上进行过零点调制;其中,第M个过零点与N个过零点相差至少1个周波,M和N为自然数。
优选地,仲裁码中的每个比特对应至少2个周波。
优选地,连接在工频载波通讯总线上的多个从设备对检测工频载波通讯总线上传输的载波时的检测开始时刻进行同步的步骤包括:主设备通过工频载波通讯总线向多个从设备发送广播命令,其中,广播命令中携带有过零点的序号i,其中,i用于指示将工频载波通讯总线上传输的周波中的第i个过零点作为检测开始时刻,i为自然数;多个从设备将工频载波通讯总线上传输的周波中的第i个过零点作为检测开始时刻。
优选地,连接在工频载波通讯总线上的多个从设备对检测工频载波通讯总线上传输的载波时的检测开始时刻进行同步的步骤包括:多个从设备均将工频载波通讯总线上传输的周波中预定的第j个过零点作为检测开始时刻,其中,j为自然数。
根据本发明的另一方面,提供了一种工频载波通讯总线的抢占装置,位于连接在工频载波通讯总线上的从设备中,包括:同步单元,用于与连接在工频载波通讯总线上的其他从设备对检测工频载波通讯总线上传输的载波时的检测开始时刻进行同步;处理单元,用于从检测开始时刻开始根据仲裁码以及工频载波通讯总线上与仲裁码中的每个比特对应的周波内的调制状态来判断抢占装置所位于的从设备是否退出对工频载波通讯总线的抢占,当判断出抢占装置所位于的从设备需要退出时,使得抢占装置所位于的从设备退出对工频载波通讯总线的抢占,其中,每个仲裁码唯一地对应一个从设备;通信单元,用于当抢占装置所位于的从设备未退出对工频载波通讯总线的抢占时,通过工频载波通讯总线与连接在工频载波通讯总线上的主设备进行通信。
优选地,处理单元包括:判断模块,用于对分配给抢占装置所位于的从设备的仲裁码中的每个比特执行以下判断操作,其中,对当前执行判断操作的比特称为当前比特:当当前比特的取值为第一值时,检测工频载波通讯总线上与当前比特对应的周波内是否存在过零点调制;若存在过零点调制,则使得抢占装置所位于的从设备退出对工频载波通讯总线的抢占,若不存在过零点调制,则对当前比特的下一个比特执行判断操作;当当前比特的取值为第二值时,在工频载波通讯总线上与当前比特对应的周波内进行过零点调制,并对当前比特的下一个比特执行判断操作。
优选地,判断模块包括:第一调制子模块,用于当当前比特的取值为第一值时,在与当前比特对应的周波内的第M个过零点上进行过零点调制;第二调制子模块,用于当当前比特的取值为第二值时,在与当前比特对应的周波内的第N个过零点上进行过零点调制;其中,第M个过零点与N个过零点相差至少1个周波,M和N为自然数。
优选地,同步单元包括:接收模块,用于接收主设备通过工频载波通讯总线发送的广播命令,其中,广播命令中携带有过零点的序号i,其中,i用于指示将工频载波通讯总线上传输的周波中的第i个过零点作为检测开始时刻,i为自然数;设置模块,用于将工频载波通讯总线上传输的周波中的第i个过零点作为检测开始时刻。
在本发明中,利用工频载波通讯总线的过零点调制的特性,从设备根据分配给自身的仲裁码以及工频载波通讯总线上与仲裁码中的每个比特对应的周波内的调制状态来判断自身是否需要退出对工频载波通讯总线的抢占,最终未退出的从设备建立使用工频载波通讯总线和主设备之间进行通讯。本发明中所涉及的工频载波通讯总线抢占方式,使得多个从设备能够同时主动对工频载波通讯总线进行抢占,而不需要被动地等待主设备的轮询,从而解决了现有技术中采用主设备轮询的方式导致的工频载波通讯总线的抢占效率较低的问题,提高了工频载波通讯总线抢占的效率;此外,在本发明中,不需要与主设备进行通信的从设备不会主动发起对工频载波通讯总线的抢占,从而避免了不必要的系统资源和时间的开销,节省了系统所消耗的资源和时间。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据相关技术的一主多从的应用设备系统的结构示意图;
图2是根据本发明实施例的工频载波通讯总线的抢占装置的一种优选结构框图;
图3是根据本发明实施例的工频载波通讯总线的抢占装置的另一种优选结构框图;
图4是根据本发明实施例的工频载波通讯总线的抢占方法中调制波形的一种优选示意图;
图5是根据本发明实施例的工频载波通讯总线的抢占方法中调制波形的另一种优选示意图;
图6是根据本发明实施例的工频载波通讯总线的抢占方法中过零调制的一种优选示意图;
图7是根据本发明实施例的工频载波通讯总线的抢占方法中过零调制的另一种优选示意图;以及
图8是根据本发明实施例的工频载波通讯总线的抢占方法的一种优选流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
实施例1
如图2所示,本实施例提供了一种优选的工频载波通讯总线的抢占装置200,位于连接在工频载波通讯总线上的从设备中,该装置包括:同步单元202,用于与连接在工频载波通讯总线上的其他从设备对检测工频载波通讯总线上传输的载波时的检测开始时刻进行同步;处理单元204,用于从检测开始时刻开始根据仲裁码以及工频载波通讯总线上与仲裁码中的每个比特对应的周波内的调制状态来判断自身是否退出对工频载波通讯总线的抢占,当判断出抢占装置所位于的从设备需要退出时,使得抢占装置所位于的从设备退出对工频载波通讯总线的抢占,其中,每个仲裁码唯一地对应一个从设备;通信单元206,用于当抢占装置所位于的从设备未退出对工频载波通讯总线的抢占时,通过工频载波通讯总线与连接在工频载波通讯总线上的主设备进行通信,其中,上述未退出指的是对仲裁码的所有比特完成上述判断操作之后还未退出对工频载波通讯总线的抢占。
例如,工频载波通讯总线上有4个从设备(设备1、2、3、4),这4个从设备将开始进行检测的时间点设置在同一时刻。用2比特的二进制来表示仲裁码,设备1对应仲裁码00、设备2对应仲裁码01、设备3对应仲裁码10以及设备4对应仲裁码11,从设备根据分配给自身的仲裁码中的各个比特所对应的周波的调制状态判断是否退出对总线的抢占。如果到最终从设备4未退出抢占,则表明从设备4总线抢占成功,从设备4在抢占到总线后,向主设备进行数据的上报。
在上述优选实施方式中,利用工频载波通讯总线的过零点调制的特性,从设备根据分配给自身的仲裁码以及工频载波通讯总线上与仲裁码中的每个比特对应的周波内的调制状态来判断自身是否需要退出对工频载波通讯总线的抢占,最终未退出的从设备建立使用工频载波通讯总线和主设备之间进行通讯。本发明中所涉及的工频载波通讯总线抢占方式,使得多个从设备能够同时主动对工频载波通讯总线进行抢占,而不需要被动地等待主设备的轮询,从而解决了现有技术中采用主设备轮询的方式导致的工频载波通讯总线的抢占效率较低的问题,提高了工频载波通讯总线抢占的效率;此外,在本发明中,不需要与主设备进行通信的从设备不会主动发起对工频载波通讯总线的抢占,从而避免了不必要的系统资源和时间的开销,节省了系统所消耗的资源和时间。
本发明对同步单元202进行了改进,如图3所示,同步单元202包括:接收模块302,和设置模块304。同步单元202可以采用如下两种方式对工频载波通讯总线上传输的载波时的检测开始时刻进行同步:
1)接收模块302接收主设备通过工频载波通讯总线发送的广播命令,其中,广播命令中携带有过零点的序号i,其中,i用于指示将工频载波通讯总线上传输的周波中的第i个过零点作为检测开始时刻,i为自然数;设置模块304将工频载波通讯总线上传输的周波中的第i个过零点作为检测开始时刻。在上述优选实施方式中,主设备向从设备发送广播命令,在该广播命令中携带总线抢占的同步时间点,从而可以基于现有的总线结构实现对从设备对总线的抢占,实现简单、同步性较高。
2)设置模块304将工频载波通讯总线上传输的周波中预定的第j个过零点作为检测开始时刻,其中,j为自然数。在上述优选实施方式中,预定周波中的某个过零点位置作为各个从设备抢占总线的同步时间,实现起来比较简单,且同步性较高。
在本发明一个优选实施方式中,处理单元204依次对分配给该从设备的仲裁码中的每个比特执行以下判断操作,以比特0代表退出、比特1代表抢占为例进行说明,其中,对当前执行判断操作的比特称为当前比特:
1)当该从设备对应的仲裁码的当前比特的取值为0时,该从设备检测工频载波通讯总线上与当前比特对应的周波内是否存在过零点调制;
当存在过零点调制时,该从设备退出对工频载波通讯总线的抢占,若不存在过零点调制,则该从设备对当前比特的下一个比特执行判断操作;
2)当该从设备对应的仲裁码的当前比特的取值为1时,该从设备在工频载波通讯总线上与当前比特对应的周波内进行过零点调制,并对当前比特的下一个比特执行判断操作。
值得注意的是,上述实施方式只是以比特0代表退出、比特1代表抢占为例进行说明,反之亦然。
例如,假设设备1对应仲裁码00、设备2对应仲裁码01、设备3对应仲裁码10以及设备4对应仲裁码11、且从设备1、2、3、4共同抢占工频载波通讯总线,在这种场景下,如图4所示,从设备1-4先进行检测开始时刻的同步,从同步得到的检测开始时刻开始,从设备1-4同时判断自身的仲裁码的第一个比特,此时,由于设备3和设备4对应的仲裁码中的第一个比特为比特1,因此设备3和设备4在第一个比特所对应的第1-2个周波上进行过零点调制;相应的,由于设备1和设备2对应的仲裁码的第一个比特为0,因此设备1和设备2在第一个比特所对应的第1-2个周波上检测工频载波通讯总线是否被调制。由于设备3和设备4在第一个比特所对应的第1-2个周波上进行了过零点调制,因此,设备1和设备2在第一个比特所对应的第1-2个周波上检测到工频载波通讯总线存在过零调制,从而设备1和设备2退出对工频载波通讯总线的抢占。设备3和设备4继续进行仲裁码的第二个比特的判断。
在仲裁码的第二个比特对应的周波上,由于设备4的仲裁码中第二个比特为比特1,因此设备4在第二个比特对应的第3-4个周波上进行过零点调制;相应的,由于设备3对应的仲裁码的第二个比特为0,因此设备3在第二个比特所对应的第3-4个周波上检测工频载波通讯总线是否被调制。由于设备4在第二个比特所对应的第3-4个周波上进行了过零点调制,因此,设备3在第二个比特所对应的第3-4个周波上检测到工频载波通讯总线存在过零调制,从而设备3退出对工频载波通讯总线的抢占。
在执行完上述判断操作之后,未退出的设备4抢占到工频载波通讯总线,从而设备4使用工频载波通讯总线和主设备之间进行通讯。
如果只有设备1和设备2进行工频载波通讯总线的抢占,设备1对应仲裁码00、设备2对应仲裁码01、如图5所示,从设备1和2先进行检测开始时刻的同步,从同步得到的检测开始时刻开始,从设备1和2同时判断自身的仲裁码的第一个比特,此时,由于设备1和设备2对应的仲裁码中的第一个比特都为比特0,因此设备1和设备2在第一个比特所对应的第1-2个周波上检测工频载波通讯总线是否被调制。设备1和设备2判断出第一个比特所对应的第1-2个周波上工频载波通讯总线没有被调制,因此设备1和设备2继续进行仲裁码的第二个比特的判断。
在仲裁码的第二个比特对应的周波上,由于设备2的仲裁码中第二个比特为比特1,因此设备2在第二个比特对应的第3-4个周波上进行过零点调制;相应的,由于设备1对应的仲裁码的第二个比特为0,因此设备1在第二个比特所对应的第3-4个周波上检测工频载波通讯总线是否被调制。由于设备2在第二个比特所对应的第3-4个周波上进行了过零点调制,因此,设备1在第二个比特所对应的第3-4个周波上检测到工频载波通讯总线存在过零调制,从而设备1退出对工频载波通讯总线的抢占。设备2抢占到工频载波通讯总线,从而设备2使用工频载波通讯总线和主设备之间进行通讯。
在上述优选实施方式中,可以根据从设备的优先级为从设备分配不同的仲裁码,从而实现优先级低的从设备先退出总线的抢占,优先级高的从设备可以优选抢占到总线的使用权,达到了对总线资源的合理分配。
在本发明一个优选实施方式中,处理单元204可以采用如下方式在工频载波通讯总线上与当前比特对应的周波内进行过零点调制:
以仲裁码的1个比特对应2个周波,比特1在该比特对应的周波的第2个过零点进行过零点调制、比特0在该比特对应的周波的第4个过零点进行过零点调制为例,若当前比特的取值为0,则从设备在与当前比特对应的周波内的第4个过零点上进行过零点调制;若当前比特的取值为1,则从设备在与当前比特对应的周波内的第2个过零点上进行过零点调制。本发明里,2个周波指的是2个周期长度的载波。其中,比特0和比特1对应的调制波形如图6所示。上述只是以1个比特对应2个周波为例进行说明,当然也可以如图7所示:1个比特对应3个周波或者多个周波,只要保证比特0和比特1所对应的过零点调制之间相差至少1个周波。
在上述优选实施方式中,上一比特和下一比特所对应的过零点调制的调制点之间相差至少一个周波,使得两个不同比特之间的过零调制不会碰撞,从而保证了从设备对过零调制判断的准确性。
实施例2
基于上述优选的频载波通讯总线的抢占装置,本实施例提供了一种优选的工频载波通讯总线的抢占方法,如图8所示,该方法具体步骤包括:
S802:连接在工频载波通讯总线上的多个从设备对检测工频载波通讯总线上传输的载波时的检测开始时刻进行同步;例如,工频载波通讯总线上有4个从设备(设备1、2、3、4),这4个从设备将开始进行检测的时间点设置在同一时刻。
S804:多个从设备从检测开始时刻开始根据仲裁码以及工频载波通讯总线上与仲裁码中的每个比特对应的周波内的调制状态来判断是否退出对工频载波通讯总线的抢占,判断出需要退出的从设备退出对工频载波通讯总线的抢占,其中,每个仲裁码唯一地对应一个从设备;例如,用2比特的二进制来表示仲裁码,设备1对应仲裁码00、设备2对应仲裁码01、设备3对应仲裁码10以及设备4对应仲裁码11,从设备根据分配给自身的仲裁码中的各个比特所对应的周波的调制状态判断是否退出对总线的抢占。
S806:未退出对工频载波通讯总线的抢占的从设备通过工频载波通讯总线与连接在工频载波通讯总线上的主设备进行通信。其中,上述未退出指的是对仲裁码的所有比特完成上述判断操作之后还未退出对工频载波通讯总线的抢占。如果到最终从设备4未退出抢占,则表明从设备4总线抢占成功,从设备4在抢占到总线后,即刻向主设备进行数据的上报。
在上述优选实施方式中,利用工频载波通讯总线的过零点调制的特性,从设备根据分配给自身的仲裁码以及工频载波通讯总线上与仲裁码中的每个比特对应的周波内的调制状态来判断自身是否需要退出对工频载波通讯总线的抢占,最终未退出的从设备建立使用工频载波通讯总线和主设备之间进行通讯。本发明中所涉及的工频载波通讯总线抢占方式,使得多个从设备能够同时主动对工频载波通讯总线进行抢占,而不需要被动地等待主设备的轮询,从而解决了现有技术中采用主设备轮询的方式导致的工频载波通讯总线的抢占效率较低的问题,提高了工频载波通讯总线抢占的效率;此外,在本发明中,不需要与主设备进行通信的从设备不会主动发起对工频载波通讯总线的抢占,从而避免了不必要的系统资源和时间的开销,节省了系统所消耗的资源和时间。
因在工频载波通讯总线抢占的过程中,需要对从设备进行抢占的时间点进行同步,优选的,可以采用如下两种方式对工频载波通讯总线上的多个从设备对检测工频载波通讯总线上传输的载波时的检测开始时刻进行同步:
1)主设备可以通过工频载波通讯总线向多个从设备发送广播命令,其中,广播命令中携带有过零点的序号i,其中,i用于指示将工频载波通讯总线上传输的周波中的第i个过零点作为检测开始时刻,i为自然数;多个从设备将工频载波通讯总线上传输的周波中的第i个过零点作为检测开始时刻。在上述优选实施方式中,主设备向从设备发送广播命令,在该广播命令中携带总线抢占的同步时间点,从而可以基于现有的总线结构实现对从设备对总线的抢占,实现简单、同步性较高。
2)多个从设备均将工频载波通讯总线上传输的周波中预定的第j个过零点作为检测开始时刻,其中,j为自然数。在上述优选实施方式中,预定周波中的某个过零点位置作为各个从设备抢占总线的同步时间,实现起来比较简单,且同步性较高。
在本发明一个优选实施方式中,对于从设备从检测开始时刻开始根据仲裁码以及工频载波通讯总线上与仲裁码中的每个比特对应的周波内的调制状态来判断是否退出对工频载波通讯总线的抢占的步骤可以包括:从设备可以依次对分配给该从设备的仲裁码中的每个比特执行以下判断操作,以比特0代表退出、比特1代表抢占为例进行说明,其中,对当前执行判断操作的比特称为当前比特:
1)当该从设备对应的仲裁码的当前比特的取值为0时,该从设备检测工频载波通讯总线上与当前比特对应的周波内是否存在过零点调制;
当存在过零点调制时,该从设备退出对工频载波通讯总线的抢占,若不存在过零点调制,则该从设备对当前比特的下一个比特进行判断操作;
2)当该从设备对应的仲裁码的当前比特的取值为1时,该从设备在工频载波通讯总线上与当前比特对应的周波内进行过零点调制,并对当前比特的下一个比特进行判断操作。
值得注意的是,上述实施方式只是以比特0代表退出、比特1代表抢占为例进行说明,反之亦然。
例如,假设设备1对应仲裁码00、设备2对应仲裁码01、设备3对应仲裁码10以及设备4对应仲裁码11、且从设备1、2、3、4共同抢占工频载波通讯总线,在这种场景下,如图4所示,从设备1-4先进行检测开始时刻的同步,从同步得到的检测开始时刻开始,从设备1-4同时判断自身的仲裁码的第一个比特,此时,由于设备3和设备4对应的仲裁码中的第一个比特为比特1,因此设备3和设备4在第一个比特所对应的第1-2个周波上进行过零点调制;相应的,由于设备1和设备2对应的仲裁码的第一个比特为0,因此设备1和设备2在第一个比特所对应的第1-2个周波上检测工频载波通讯总线是否被调制。由于设备3和设备4在第一个比特所对应的第1-2个周波上进行了过零点调制,因此,设备1和设备2在第一个比特所对应的第1-2个周波上检测到工频载波通讯总线存在过零调制,从而设备1和设备2退出对工频载波通讯总线的抢占。设备3和设备4继续进行仲裁码的第二个比特的判断。
在仲裁码的第二个比特对应的周波上,由于设备4的仲裁码中第二个比特为比特1,因此设备4在第二个比特对应的第3-4个周波上进行过零点调制;相应的,由于设备3对应的仲裁码的第二个比特为0,因此设备3在第二个比特所对应的第3-4个周波上检测工频载波通讯总线是否被调制。由于设备4在第二个比特所对应的第3-4个周波上进行了过零点调制,因此,设备3在第二个比特所对应的第3-4个周波上检测到工频载波通讯总线存在过零调制,从而设备3退出对工频载波通讯总线的抢占。
在执行完上述判断操作之后,未退出的设备4抢占到工频载波通讯总线,从而设备4使用工频载波通讯总线和主设备之间进行通讯。
如果只有设备1和设备2进行工频载波通讯总线的抢占,设备1对应仲裁码00、设备2对应仲裁码01、如图5所示,从设备1和2先进行检测开始时刻的同步,从同步得到的检测开始时刻开始,从设备1和2同时判断自身的仲裁码的第一个比特,此时,由于设备1和设备2对应的仲裁码中的第一个比特都为比特0,因此设备1和设备2在第一个比特所对应的第1-2个周波上检测工频载波通讯总线是否被调制。设备1和设备2判断出第一个比特所对应的第1-2个周波上工频载波通讯总线没有被调制,因此设备1和设备2继续进行仲裁码的第二个比特的判断。
在仲裁码的第二个比特对应的周波上,由于设备2的仲裁码中第二个比特为比特1,因此设备2在第二个比特对应的第3-4个周波上进行过零点调制;相应的,由于设备1对应的仲裁码的第二个比特为0,因此设备1在第二个比特所对应的第3-4个周波上检测工频载波通讯总线是否被调制。由于设备2在第二个比特所对应的第3-4个周波上进行了过零点调制,因此,设备1在第二个比特所对应的第3-4个周波上检测到工频载波通讯总线存在过零调制,从而设备1退出对工频载波通讯总线的抢占。设备2抢占到工频载波通讯总线,从而设备2使用工频载波通讯总线和主设备之间进行通讯。
在上述优选实施方式中,可以根据从设备的优先级为从设备分配不同的仲裁码,从而实现优先级低的从设备先退出总线的抢占,优先级高的从设备可以优选抢占到总线的使用权,达到了对总线资源的合理分配。
在本发明一个优选实施方式中,从设备可以采用如下方式在工频载波通讯总线上与当前比特对应的周波内进行过零点调制:
以仲裁码的1个比特对应2个周波,比特1在该比特对应的周波的第2个过零点进行过零点调制、比特0在该比特对应的周波的第4个过零点进行过零点调制为例,若当前比特的取值为0,则从设备在与当前比特对应的周波内的第4个过零点上进行过零点调制;若当前比特的取值为1,则从设备在与当前比特对应的周波内的第2个过零点上进行过零点调制。本发明里,2个周波指的是2个周期长度的载波。其中,比特0和比特1对应的调制波形如图6所示。上述只是以1个比特对应2个周波为例进行说明,当然也可以如图7所示:1个比特对应3个周波或者多个周波,只要保证比特0和比特1所对应的过零点调制之间相差至少1个周波。
在上述优选实施方式中,上一比特和下一比特所对应的过零点调制的调制点之间相差至少一个周波,使得两个不同比特之间的过零调制不会碰撞,从而保证了从设备对过零调制判断的准确性。
实施例3
本发明提供了一种优选的实施例来进一步对本发明进行解释,但是值得注意的是,该优选实施例只是为了更好的描述本发明,并不构成对本发明不当的限定。
本发明所应用的总线结构同图1所示的结构,该工频载波通讯总线系统包括:一个主设备和多个从设备。载波的编码方式需要至少两个周波对应仲裁码中的一个比特位,例如,第一个比特位对应第一个和第二个周波,第二个比特位对应第三和第四个周波。各个从设备需要在同一时间点上开始进行工频载波通讯总线的抢占,也就是多个从设备抢占工频载波通讯总线的开始时间点需要一致。优选的,可以通过主设备的广播命令进行同步,也可以通过载波过零点进行同步,也可以通过实时时钟进行同步,例如,当主设备需要对从设备进行巡检时,主设备可以发送广播命令,在广播命令中携带用于从设备抢占工频载波通讯总线的开始时间点,从设备根据广播命令进行同步,需要与主设备进行通信的从设备在主设备指示的开始时间点开始进行工频载波通讯总线占有权的抢占。
根据工频载波通讯的编码特点,可以为优先级比较高的从设备分配先抢占到总线的比特值,从而实现了根据比特位判断各自是否退出总线的方式来实现高优先的从设备优选获得总线占有权,达到了采用较为经济方便方式解决了工频载波通讯的总线互斥问题。
以仲裁码的每个比特对应两个周波,比特1对应在第一个周波进行过零调制、比特0对应在第二个周波进行过零调制。从设备1对应仲裁码00、从设备2对应仲裁码01、从设备3对应仲裁码10、从设备4对应仲裁码11。以0比特作为退出比特。
基于上述描述,本实施例提供了一种优选的总线抢占方法,具体步骤包括:
各个从设备同步抢占总线的占有权,各个从设备先判断自己的仲裁码中的第一个比特,如果仲裁码中的第一个比特为0,则在与第一个比特对应的周波上检测工频载波通讯总线是否已被调制,若已经调制,则退出对工频载波通讯总线的抢占,若未经调制,则继续对仲裁码中的下一个比特进行判断;如果仲裁码中的第一个比特为1,则在与第一个比特对应的周波上对工频载波通讯总线进行过零点调制。
依据上述的抢占方法,如果从设备1-4都对总线进行抢占,则在判断完仲裁码中的第一个比特时,从设备1和从设备2退出抢占,从设备3和4继续进行工频载波通讯总线的抢占,对仲裁码中第二比特进行判断,由于从设备3对应的仲裁码中第二比特为0、从设备4对应的仲裁码中第二比特为1,因此从设备3退出抢占,从设备4抢占到工频载波通讯总线的使用权,即,在对仲裁码的所有比特执行完上述判断操作后,只有从设备4未退出对工频载波通讯总线的抢占。。
从设备4在抢占到工频载波通讯总线后,使用工频载波通讯总线与主设备进行通信,例如,在通信的过程中,从设备4设置上报标志,例如设置上报标志为1,从设备1-3判断上报标志是否为1,若为1,则继续等待,若为0,则说明从设备4已完成与主设备的通信,则重新对工频载波通讯总线进行抢占。当从设备4已完成与主设备的通信时,将上报标志设置为0,从设备1、从设备2和从设备3继续抢占工频载波通讯总线,依据上述的判断操作,从设备3抢占到工频载波通讯总线的使用权,然后,从设备3使用工频载波通讯总线与主设备进行通信。依次类推,直到需要与主设备进行通信的从设备均完成数据通信。以上只是以两比特仲裁码为例进行说明,根据从设备的数量可以采用不同的比特位数。例如,当有7个从设备时可以采用三位的仲裁码,原理和上述相同,在此不再赘述。
从以上的描述中,可以看出,本发明实现了如下技术效果:
1)位于同一通讯总线上需要和主设备进行通讯的从设备主动采取对总线进行抢占来获取总线的使用权,从设备根据为自身分配的仲裁码来判断自身是否需要退出对总线的抢占,对于未退出的从设备建立和主设备之间的通讯,进而实现了主从设备之间的通讯的建立,解决了现有技术中主设备采用轮询的方式来确定是否与某个从设备进行通讯建立而造成的资源的浪费,达到了主从设备之间通讯的灵活建立,提高了总线资源的利用率。
2)可以为优先级比较高的从设备分配先抢占到总线的比特值,从而实现了根据比特位判断各自是否退出总线的方式来实现高优先的从设备优选获得总线占有权,达到了采用较为经济方便方式解决了工频载波通讯的总线互斥问题。
3)通过本发明提供的基于编码方式的工频载波通讯总线的仲裁方法,可以实现在不增加任何单独的仲裁控制线也不增加任何仲裁辅助设备的情况下,完全利用原本的工频载波通讯总线和基于载波的编码方式来完成从设备对总线的抢占。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种工频载波通讯总线的抢占方法,其特征在于,包括:
连接在工频载波通讯总线上的多个从设备对检测所述工频载波通讯总线上传输的载波时的检测开始时刻进行同步;
所述多个从设备从所述检测开始时刻开始根据仲裁码以及所述工频载波通讯总线上与所述仲裁码中的每个比特对应的周波内的调制状态来判断是否退出对所述工频载波通讯总线的抢占,判断出需要退出的从设备退出对所述工频载波通讯总线的抢占,其中,每个所述仲裁码唯一地对应一个所述从设备;
未退出对所述工频载波通讯总线的抢占的从设备通过所述工频载波通讯总线与连接在工频载波通讯总线上的主设备进行通信。
2.根据权利要求1所述的方法,其特征在于,所述多个从设备从所述检测开始时刻开始根据仲裁码以及所述工频载波通讯总线上与所述仲裁码中的每个比特对应的周波内的调制状态来判断是否退出对所述工频载波通讯总线的抢占,判断出需要退出的从设备退出对所述工频载波通讯总线的抢占的步骤包括:
每个所述从设备依次对分配给该从设备的仲裁码中的每个比特执行以下判断操作,其中,对当前执行判断操作的比特称为当前比特:
若所述当前比特的取值为第一值,则所述从设备检测所述工频载波通讯总线上与所述当前比特对应的周波内是否存在过零点调制;若存在过零点调制,则所述从设备退出对所述工频载波通讯总线的抢占,若不存在过零点调制,则所述从设备对所述当前比特的下一个比特执行所述判断操作;
若所述当前比特的取值为第二值,则所述从设备在所述工频载波通讯总线上与所述当前比特对应的周波内进行过零点调制,并对所述当前比特的下一个比特执行所述判断操作。
3.根据权利要求2所述的方法,其特征在于,所述从设备在所述工频载波通讯总线上与所述当前比特对应的周波内进行过零点调制的步骤包括:
若所述当前比特的取值为第一值,则所述从设备在与所述当前比特对应的周波内的第M个过零点上进行过零点调制;
若所述当前比特的取值为第二值,则所述从设备在与所述当前比特对应的周波内的第N个过零点上进行过零点调制;
其中,第M个过零点与所述N个过零点相差至少1个周波,所述M和N为自然数。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述仲裁码中的每个比特对应至少2个周波。
5.根据权利要求1所述的方法,其特征在于,所述连接在工频载波通讯总线上的多个从设备对检测所述工频载波通讯总线上传输的载波时的检测开始时刻进行同步的步骤包括:
所述主设备通过所述工频载波通讯总线向所述多个从设备发送广播命令,其中,所述广播命令中携带有过零点的序号i,其中,所述i用于指示将所述工频载波通讯总线上传输的周波中的第i个过零点作为所述检测开始时刻,所述i为自然数;
所述多个从设备将所述工频载波通讯总线上传输的周波中的第i个过零点作为所述检测开始时刻。
6.根据权利要求1所述的方法,其特征在于,所述连接在工频载波通讯总线上的多个从设备对检测所述工频载波通讯总线上传输的载波时的检测开始时刻进行同步的步骤包括:
所述多个从设备均将所述工频载波通讯总线上传输的周波中预定的第j个过零点作为所述检测开始时刻,其中,所述j为自然数。
7.一种工频载波通讯总线的抢占装置,位于连接在工频载波通讯总线上的从设备中,其特征在于,包括:
同步单元,用于与连接在工频载波通讯总线上的其他从设备对检测所述工频载波通讯总线上传输的载波时的检测开始时刻进行同步;
处理单元,用于从所述检测开始时刻开始根据仲裁码以及所述工频载波通讯总线上与所述仲裁码中的每个比特对应的周波内的调制状态来判断所述抢占装置所位于的从设备是否退出对所述工频载波通讯总线的抢占,当判断出所述抢占装置所位于的从设备需要退出时,使得所述抢占装置所位于的从设备退出对所述工频载波通讯总线的抢占,其中,每个所述仲裁码唯一地对应一个所述从设备;
通信单元,用于当所述抢占装置所位于的从设备未退出对所述工频载波通讯总线的抢占时,通过所述工频载波通讯总线与连接在工频载波通讯总线上的主设备进行通信。
8.根据权利要求7所述的装置,其特征在于,所述处理单元包括:
判断模块,用于对分配给所述抢占装置所位于的从设备的仲裁码中的每个比特执行以下判断操作,其中,对当前执行判断操作的比特称为当前比特:
当所述当前比特的取值为第一值时,检测所述工频载波通讯总线上与所述当前比特对应的周波内是否存在过零点调制;若存在过零点调制,则使得所述抢占装置所位于的从设备退出对所述工频载波通讯总线的抢占,若不存在过零点调制,则对所述当前比特的下一个比特执行所述判断操作;
当所述当前比特的取值为第二值时,在所述工频载波通讯总线上与所述当前比特对应的周波内进行过零点调制,并对所述当前比特的下一个比特执行所述判断操作。
9.根据权利要求8所述的装置,其特征在于,所述判断模块包括:
第一调制子模块,用于当所述当前比特的取值为第一值时,在与所述当前比特对应的周波内的第M个过零点上进行过零点调制;
第二调制子模块,用于当所述当前比特的取值为第二值时,在与所述当前比特对应的周波内的第N个过零点上进行过零点调制;
其中,第M个过零点与所述N个过零点相差至少1个周波,所述M和N为自然数。
10.根据权利要求7所述的装置,其特征在于,所述同步单元包括:
接收模块,用于接收所述主设备通过所述工频载波通讯总线发送的广播命令,其中,所述广播命令中携带有过零点的序号i,其中,所述i用于指示将所述工频载波通讯总线上传输的周波中的第i个过零点作为所述检测开始时刻,所述i为自然数;
设置模块,用于将所述工频载波通讯总线上传输的周波中的第i个过零点作为所述检测开始时刻。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210050702.1A CN103297090B (zh) | 2012-02-29 | 2012-02-29 | 工频载波通讯总线的抢占方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210050702.1A CN103297090B (zh) | 2012-02-29 | 2012-02-29 | 工频载波通讯总线的抢占方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103297090A true CN103297090A (zh) | 2013-09-11 |
CN103297090B CN103297090B (zh) | 2015-04-08 |
Family
ID=49097480
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210050702.1A Active CN103297090B (zh) | 2012-02-29 | 2012-02-29 | 工频载波通讯总线的抢占方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103297090B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105302038A (zh) * | 2015-11-04 | 2016-02-03 | 深圳市泛海三江电子有限公司 | 一种防火门监控系统的抢占式监控通信方法、系统及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4642630A (en) * | 1982-12-28 | 1987-02-10 | At&T Bell Laboratories | Method and apparatus for bus contention resolution |
CN1787473A (zh) * | 2004-12-08 | 2006-06-14 | 中兴通讯股份有限公司 | 采用485接口实现抢占式总线通信的方法 |
CN101251951A (zh) * | 2008-04-03 | 2008-08-27 | 中国电力科学研究院 | 一种配电网工频通讯方法及系统 |
CN101296149A (zh) * | 2008-06-06 | 2008-10-29 | 北京航空航天大学 | 高速实时总线的通信方法及装置 |
CN201341158Y (zh) * | 2008-12-17 | 2009-11-04 | Tcl集团股份有限公司 | Rs485网络的状态检测电路 |
CN101938518A (zh) * | 2010-09-03 | 2011-01-05 | 上海大学 | 一种低压电力线扩频通信数据链路层协议 |
-
2012
- 2012-02-29 CN CN201210050702.1A patent/CN103297090B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4642630A (en) * | 1982-12-28 | 1987-02-10 | At&T Bell Laboratories | Method and apparatus for bus contention resolution |
CN1787473A (zh) * | 2004-12-08 | 2006-06-14 | 中兴通讯股份有限公司 | 采用485接口实现抢占式总线通信的方法 |
CN101251951A (zh) * | 2008-04-03 | 2008-08-27 | 中国电力科学研究院 | 一种配电网工频通讯方法及系统 |
CN101296149A (zh) * | 2008-06-06 | 2008-10-29 | 北京航空航天大学 | 高速实时总线的通信方法及装置 |
CN201341158Y (zh) * | 2008-12-17 | 2009-11-04 | Tcl集团股份有限公司 | Rs485网络的状态检测电路 |
CN101938518A (zh) * | 2010-09-03 | 2011-01-05 | 上海大学 | 一种低压电力线扩频通信数据链路层协议 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105302038A (zh) * | 2015-11-04 | 2016-02-03 | 深圳市泛海三江电子有限公司 | 一种防火门监控系统的抢占式监控通信方法、系统及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103297090B (zh) | 2015-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103098419B (zh) | 用于以可转换的数据速率进行串行数据传输的方法和装置 | |
CN102325201B (zh) | 在Modbus通信网络中为从节点设备分配网络地址的方法 | |
CN104317765B (zh) | 一种基于串口通讯的一对多通讯系统和实现方法 | |
CN105354159A (zh) | 一种基于rs485分布式总线系统的控制方法 | |
CN105324960A (zh) | 控制器局域网络灵活的数据率 | |
CN102819512A (zh) | 一种基于spi的全双工通信装置及其方法 | |
CN104079677A (zh) | Rs485通讯端口地址的自动分配方法 | |
CN101610145A (zh) | 一种实现分布式系统的同步控制的方法和系统 | |
CN103281261A (zh) | 一种以太网通信方法和系统 | |
CN105743757A (zh) | Rs485通讯终端自由组网的方法 | |
CN103546355A (zh) | 多主无损总线竞争技术 | |
CN102279834A (zh) | 一种串行通讯方法 | |
CN102664781A (zh) | 一种多节点rs485总线数据发送权的控制方法 | |
CN102929830A (zh) | 一种软件模拟快速通信协议 | |
CN102970300B (zh) | 一种异步通信方法 | |
CN104486187B (zh) | 一种动态同步的can通讯设备和方法 | |
CN106953809B (zh) | 一种基于485分时通信的设备资源采集方法 | |
CN103297090B (zh) | 工频载波通讯总线的抢占方法和装置 | |
CN107465487B (zh) | 一种总线数据发送方法、系统和分设备 | |
CN104243189B (zh) | 一种基于同一信道的多设备通信方法及其通信系统 | |
CN105141483A (zh) | 基于can总线的多节点网络最小通信间隔测定方法 | |
WO2015109524A1 (zh) | 一种发射同步信号的方法及装置 | |
CN109586978B (zh) | 总线拓扑网络自组网方法 | |
CN103455461B (zh) | 用于提高rs485总线通信可靠性的方法 | |
JP5078857B2 (ja) | リアルタイム制御ネットワークシステム |
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 | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20160719 Address after: 100085, room 906, building E, Ka Wah Street, 3rd Street, Beijing, Haidian District Patentee after: BEIJING AIPUZHICHENG NETWORK TECHNOLOGY CO., LTD. Address before: 100085, Room 903, block E, No. 9, 3rd Street, Beijing, Haidian District Patentee before: Beijing Along Technology Co., Ltd. |