掌桥专利:专业的专利平台
掌桥专利
首页

多设备同步方法、系统、电子设备和存储介质

文献发布时间:2024-04-18 19:59:31


多设备同步方法、系统、电子设备和存储介质

技术领域

本发明涉及仪控系统技术领域,尤其是一种多设备同步方法、系统、电子设备和存储介质。

背景技术

现有技术的多设备同步方法多为网络方式同步,包括时钟同步、广播同步方式,其中时钟同步的方式由于每台设备处理器、晶振不完全相同,所以需要进行对时操作,以保证多设备时钟的一致性,广播同步同样的也会依赖于网络状况,网络状况存在延时的情况下,广播同步就存在较大的误差。因此,现有技术的多设备同步方法依赖于网络环境的稳定性,对网络设备的稳定性要求较高,无法确保多设备同步的稳定性和一致性。

发明内容

本发明要解决的技术问题是为了克服现有技术中同步对网络环境的稳定性要求高,无法实现高精度同步的缺陷,提供一种多设备同步方法、系统、电子设备和存储介质。

本发明是通过下述技术方案来解决上述技术问题:

第一方面,提供一种多设备同步方法,应用于控制设备,系统网络包括所述控制设备和若干受控设备,所述控制设备包括trigger(触发)信号输出口,所述受控设备包括trigger信号接收口;所述多设备同步方法包括:

向每一所述受控设备发送对应的任务指令;其中,所述任务指令包含所述受控设备的待执行任务;

在所述受控设备处于准备状态时,通过所述trigger信号输出口向所述受控设备发送trigger同步信号,以使所述受控设备同步执行所述待执行任务。

可选地,在所述在所述受控设备处于准备状态时,通过所述trigger信号输出口向所述受控设备发送trigger同步信号的步骤之前,所述多设备同步方法还包括:

检测所述受控设备的工作状态。

可选地,所述检测所述受控设备的工作状态的步骤,具体包括:

响应于所述受控设备发送的准备信号,确定所述受控设备的工作状态为所述准备状态。

第二方面,提供一种多设备同步方法,应用于受控设备,系统网络包括控制设备和若干所述受控设备,所述控制设备包括trigger信号输出口,所述受控设备包括trigger信号接收口;所述多设备同步方法包括:

响应于所述控制设备发送的任务指令,切换至准备状态;其中,所述任务指令包含所述受控设备的待执行任务;

在处于准备状态时,响应于通过所述trigger信号接收口接收到的所述控制设备发送的trigger同步信号,执行所述待执行任务。

可选地,在所述在处于准备状态时,响应于通过所述trigger信号接收口接收到的所述控制设备发送的trigger同步信号,执行所述待执行任务的步骤之前,所述多设备同步方法还包括:

解析所述任务指令,以获得所述待执行任务;

向所述控制设备发送准备信号;其中,所述准备信号表示所述受控设备处于准备状态。

可选地,至少两个所述受控设备的trigger信号接收口并联。

第三方面,提供一种多设备同步系统,应用于控制设备,系统网络包括所述控制设备和若干受控设备,所述控制设备包括trigger信号输出口,所述受控设备包括trigger信号接收口;所述多设备同步系统包括:

任务指令发送模块,用于向每一所述受控设备发送对应的任务指令;其中,所述任务指令包含所述受控设备的待执行任务;

同步信号发送模块,用于在所述受控设备处于准备状态时,通过所述trigger信号输出口向所述受控设备发送trigger同步信号,以使所述受控设备同步执行所述待执行任务。

可选地,所述多设备同步系统还包括:检测模块,用于检测所述受控设备的工作状态。

可选地,所述检测模块包括:准备信号接收单元,用于响应于所述受控设备发送的准备信号,确定所述受控设备的工作状态为所述准备状态。

第四方面,提供一种多设备同步系统,应用于受控设备,系统网络包括控制设备和若干所述受控设备,所述控制设备包括trigger信号输出口,所述受控设备包括trigger信号接收口;所述多设备同步系统包括:

任务指令接收模块,用于响应于所述控制设备发送的任务指令,切换至准备状态;其中,所述任务指令包含所述受控设备的待执行任务;

同步信号接收模块,用于在处于准备状态时,响应于通过所述trigger信号接收口接收到的所述控制设备发送的trigger同步信号,执行所述待执行任务。

可选地,所述多设备同步系统还包括:

解析模块,用于解析所述任务指令,以获得所述待执行任务;

准备信号发送单元,用于向所述控制设备发送准备信号;其中,所述准备信号表示所述受控设备处于准备状态。

可选地,所述多设备同步系统还包括:并联模块,用于将至少两个所述受控设备的trigger信号接收口并联。

第五方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的多设备同步方法。

第六方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的多设备同步方法。

在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。

本发明的积极进步效果在于:本发明通过控制设备先向受控设备发送对应的任务指令,在受控设备均处于准备状态时,再发送trigger同步信号,以使受控设备同步执行任务指令中包含的待执行任务,从而进行多设备同步的任务执行,无需依赖网络环境,实现高精度同步,提高多设备任务执行的一致性和稳定性。

附图说明

图1为本发明一示例性实施例提供的一种多设备同步方法的流程图;

图2为本发明一示例性实施例提供的一种多设备同步方法中的系统网络的结构示意图;

图3为本发明一示例性实施例提供的另一种多设备同步方法的流程图;

图4为本发明一示例性实施例提供的一种多设备同步系统的模块示意图;

图5为本发明一示例性实施例提供的另一种多设备同步系统的模块示意图;

图6为本发明一示例实施例示出的一种电子设备的结构示意图。

具体实施方式

下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。

图1为本发明一示例性实施例提供的一种多设备同步方法的流程图。该多设备同步方法应用于控制设备,系统网络包括控制设备和若干受控设备,控制设备包括trigger信号输出口和网络接口,受控设备包括trigger信号接收口和网络接口。trigger信号为触发信号,触发方式和触发电平可根据实际情况设置,在此不做特别限定。

多设备同步方法包括以下步骤:

步骤101、向每一受控设备发送对应的任务指令。

其中,任务指令包含受控设备的待执行任务。

具体的,控制设备自动获取预先设定的待执行任务队列,按照待执行任务的执行顺序,通过网络接口向受控设备发送对应的任务指令。其中,待执行任务队列包括受控设备的待执行任务和执行时间。

待执行任务可以包括但不限于产生电气量信号,采集电气量信号,采集通信信号,采集画面状态,具体可根据实际情况选择,在此不做特别限定。

步骤102、在受控设备处于准备状态时,通过trigger信号输出口向受控设备发送trigger同步信号,以使受控设备同步执行待执行任务。

若受控设备的数量为至少两个,当所有受控设备均处于准备状态时,通过trigger信号输出口向受控设备发送trigger同步信号。

控制设备和所有受控设备配置在同一网段下,通过交换机连接。控制设备可以包括但不限于个人工作站电脑,受控设备可以包括但不限于:可程控的仪器仪表、NI(National Instruments,美国国家仪器)卡件、NI(National Instruments,美国国家仪器)机箱、图像识别卡、图像采集卡、串口读取卡,用于读取其他设备的相关信息,相关信息包括但不限于:电压、电流、电阻、通断、画面、串口通信数据等,也可以产生电信号,用于模拟信号发送至其他设备,该信号包括但不限于:电压、电流、电阻、通断、高频信号等。控制设备和受控设备具体可根据实际情况选择,在此不做特别限定。

控制设备与受控设备根据运行不同的软件进行区分。需要说明的是,控制设备和受控设备可以同时具有trigger信号输出口和trigger信号接收口,根据控制设备和受控设备运行的程序不同,可以自由配置控制设备和受控设备。例如,一个同时具有trigger信号输出口和trigger信号接收口的设备在运行控制设备对应的程序时,该设备作为控制设备,进行任务指令的发送、trigger同步信号的发送;当该设备在运行受控设备对应的程序时,该设备作为受控设备,进行任务指令的响应、trigger同步信号的接收以及待执行任务的执行。

在同一时间,控制设备仅可存在一个,而受控设备可以存在多个,且整个系统网络中至少存在一个受控设备。

当控制设备与受控设备仅有一个,且物理结构上为同一设备时,则该设备为独立控制设备,例如同一台工程师站,该工程师站既运行控制设备对应的程序,也运行受控设备对应的程序,控制设备对应的程序通过本地IP(互联网协议)与受控设备对应的程序通信,无需进行多设备同步,仅需进行任务指令的发送和待执行任务的执行。

参见图2,当控制设备与受控设备存在多个,且存在一个既运行控制设备对应的程序,也运行受控设备对应的程序的设备,则该设备为从设备2,从设备2既受主设备1的控制,同时又控制下级受控设备3,也即为多级控制场景。从设备2的trigger信号接收口并联至主设备1的trigger信号输出口,从设备2的下级受控设备3的trigger信号接收口并联至从设备2的trigger信号输出口。需要说明的是,当从设备2作为控制设备,也即运行控制设备对应的程序时,连接的受控设备为下级受控设备3。从设备2既使用trigger信号输出口发送trigger同步信号,也使用trigger信号接收口接收trigger同步信号。

具体的,主设备1获取预先设定的待执行任务队列,按照待执行任务的执行顺序,通过网络接口向从设备2发送对应的任务指令,从设备2接收到任务指令后,将任务指令发送至下级受控设备3,下级受控设备3接收到任务指令并对任务指令进行解析后,发送准备信号至从设备2,从设备2接收到准备信号后,将准备信号发送至主设备1。主设备1接收到准备信号后,将trigger同步信号发送至从设备2,从设备接收到trigger同步信号后,将trigger同步信号发送至下级受控设备3,下级受控设备接收到trigger同步信号时,下级受控设备同步执行待执行任务。

本实施例中,通过控制设备向受控设备发送对应的任务指令,在受控设备处于准备状态时,再发送trigger同步信号,以使受控设备同步执行任务指令中包含的待执行任务,从而进行多设备同步的任务执行,无需依赖网络环境,实现高精度同步,提高多设备任务执行的一致性和稳定性。

在一个实施例中,在步骤102之前,多设备同步方法还包括:检测受控设备的工作状态。

本实施例中,控制设备在向受控设备发送trigger同步信号之前,检测受控设备的工作状态,以确定受控设备当前是否完成接收到任务指令,从而确定受控设备能否执行待执行任务,提高了受控设备执行待执行任务的一致性和稳定性。

在一个实施例中,检测受控设备的工作状态的步骤,具体包括:

响应于受控设备发送的准备信号,确定受控设备的工作状态为准备状态。

需要说明的是,受控设备发送准备信号表示受控设备已完成任务指令的接收。

本实施例中,通过受控设备发送的准备信号,确定受控设备是否处于准备状态,便于及时进行trigger同步信号的发送,从而实现高精度的硬件级同步,提高多设备任务执行的一致性和稳定性。

图3为本发明一示例性实施例提供的另一种多设备同步方法的流程图。该多设备同步方法应用于受控设备,网络包括控制设备和若干受控设备,控制设备包括trigger信号输出口,受控设备包括trigger信号接收口。

多设备同步方法包括:

步骤201、响应于控制设备发送的任务指令,切换至准备状态。

其中,任务指令包含受控设备的待执行任务。待执行任务可以包括但不限于产生电气量信号,采集电气量信号,采集通信信号,采集画面状态,具体可根据实际情况选择,在此不做特别限定。

步骤202、在处于准备状态时,响应于通过trigger信号接收口接收到的控制设备发送的trigger同步信号,执行待执行任务。

本实施例中,通过受控设备响应任务指令,在处于准备状态时,再接收trigger同步信号,从而实现同步执行任务指令中包含的待执行任务,进行多设备同步的任务执行,无需依赖网络环境,实现高精度同步,提高多设备任务执行的一致性和稳定性。

在一个实施例中,在处于准备状态时,步骤202之前,多设备同步方法还包括:解析任务指令,以获得待执行任务。向控制设备发送准备信号。

其中,准备信号表示受控设备处于准备状态。

需要说明的是,受控设备发送准备信号表示受控设备已完成任务指令的接收。

本实施例中,受控设备向控制设备发送准备信号,以使控制设备能够确定受控设备的工作状态,便于控制设备确定受控设备当前是否完成接收到任务指令,提高了受控设备执行待执行任务的一致性和稳定性。

在一个实施例中,至少两个受控设备的trigger信号接收口并联。

本实施例中,受控设备的trigger信号接收口并行接收trigger同步信号,提高运行效率,可并行完成待执行任务,节省时间,提高多设备任务执行的效率。

与前述多设备同步方法实施例相对应,本发明还提供了多设备同步系统的实施例。

图4为本发明一示例性实施例提供的一种多设备同步系统的模块示意图。该多设备同步系统,应用于控制设备,系统网络包括控制设备和若干受控设备,控制设备包括trigger信号输出口,受控设备包括trigger信号接收口。

该多设备同步系统包括:

任务指令发送模块11,用于向每一受控设备发送对应的任务指令;其中,任务指令包含受控设备的待执行任务。

同步信号发送模块12,用于在受控设备处于准备状态时,通过trigger信号输出口向受控设备发送trigger同步信号,以使受控设备同步执行待执行任务。

可选地,所述多设备同步系统还包括:检测模块,用于检测所述受控设备的工作状态。

可选地,所述检测模块包括:准备信号接收单元,用于响应于所述受控设备发送的准备信号,确定所述受控设备的工作状态为所述准备状态。

图5为本发明一示例性实施例提供的另一种多设备同步系统的模块示意图。该多设备同步系统应用于受控设备,系统网络包括控制设备和若干受控设备,控制设备包括trigger信号输出口,受控设备包括trigger信号接收口。

该多设备同步系统包括:

任务指令接收模块21,用于响应于控制设备发送的任务指令,切换至准备状态;其中,任务指令包含受控设备的待执行任务;

同步信号接收模块22,用于在处于准备状态时,响应于通过trigger信号接收口接收到的控制设备发送的trigger同步信号,执行待执行任务。

可选地,所述多设备同步系统还包括:

解析模块,用于解析所述任务指令,以获得所述待执行任务;

准备信号发送单元,用于向所述控制设备发送准备信号;其中,所述准备信号表示所述受控设备处于准备状态。

可选地,所述多设备同步系统还包括:并联模块,用于将至少两个所述受控设备的trigger信号接收口并联。

对于系统实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

图6为本发明一示例实施例示出的一种电子设备的结构示意图,示出了适于用来实现本发明实施方式的示例性电子设备30的框图。图6显示的电子设备30仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图6所示,电子设备30可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备30的组件可以包括但不限于:上述至少一个处理器31、上述至少一个存储器32、连接不同系统组件(包括存储器32和处理器31)的总线33。

总线33包括数据总线、地址总线和控制总线。

存储器32可以包括易失性存储器,例如随机存取存储器(RAM)321和/或高速缓存存储器322,还可以进一步包括只读存储器(ROM)323。

存储器32还可以包括具有一组(至少一个)程序模块324的程序工具325(或实用工具),这样的程序模块324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

处理器31通过运行存储在存储器32中的计算机程序,从而执行各种功能应用以及数据处理,例如上述任一实施例所提供的方法。

电子设备30也可以与一个或多个外部设备34(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口35进行。并且,模型生成的电子设备30还可以通过网络适配器36与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器36通过总线33与模型生成的电子设备30的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的电子设备30使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。

应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一实施例所提供的方法。

其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。

在可能的实施方式中,本发明实施例还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行实现上述任一实施例的方法。

其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

技术分类

06120116516246