时间同步方法、设备、存储介质及系统与流程

专利检索2022-05-10  12


时间同步方法、设备、存储介质及系统
【技术领域】
1.本技术涉及一种时间同步方法、设备、存储介质及系统,属于计算机技术领域。


背景技术:

2.现有的清洁机器人往往具有环境识别、路径规划、地图构建等功能。此时,清洁机器人通常通过采集工作区域的环境数据,并对该环境数据进行分析和处理,以实现相应的功能。
3.然而,清洁机器人采集环境数据的范围是有限的。基于此,工作区域还可以额外设置相机,该相机用于对自移动设备进行监控。此时,将清洁机器人采集的环境数据与相机监控过程中采集的环境数据进行融合,以对融合后的环境数据进行分析,可以提高数据分析的准确性。
4.为了保证数据融合时的准确性,清洁机器人和相机在使用前需要进行时间同步。传统的时间同步方法仅包括对清洁机器人上的各个传感器进行时间同步,同步方式包括:通过硬件接口将各个传感器和微处理器连接,使各个传感器使用同一个时间体系。
5.但是,由于协同清洁机器人工作的相机并不是安装在清洁机器人上,因此,使用传统方式无法实现清洁机器人与相机之间的时间同步。


技术实现要素:

6.本技术提供了时间同步方法、设备、存储介质及系统,可以解决传统的时间同步方法仅包括对清洁机器人上的各个传感器进行时间同步,在协同清洁机器人工作的相机不是安装在清洁机器人时,无法实现清洁机器人与相机之间的时间同步的问题。本技术提供如下技术方案:
7.第一方面,提供一种时间同步方法,用于待同步设备中,所述待同步设备包括清洁机器人或者为与所述清洁机器人协同工作的相机,所述方法包括:
8.响应于触发的时间同步指令,建立所述待同步设备与目标设备之间的通信连接;
9.基于所述通信连接向所述目标设备发送测试数据;所述测试数据用于触发所述目标设备向所述待同步设备反馈同步参数;
10.基于所述目标设备反馈的所述同步参数将所述待同步设备的时间同步为所述目标设备的时间。
11.可选地,所述测试数据包括第一时间的第一时间标识,所述第一时间标识用于标识所述待同步设备生成所述测试数据时的第一时间;
12.所述同步参数包括所述测试数据的接收时间与所述第一时间之间的第一差值;或者,所述同步参数包括第二时间与所述第一时间之间的第二差值,所述第二时间为所述目标设备基于所述测试数据的接收时间推测出的所述测试数据的生成时间。
13.可选地,所述基于所述目标设备反馈的所述同步参数将所述待同步设备的时间同步为所述目标设备的时间,包括:
14.在所述同步参数包括所述第一差值时,在所述第一差值大于第一阈值的情况下,基于所述第一差值和所述第一阈值将所述待同步设备的时间同步为所述目标设备的时间;
15.或者,
16.在所述同步参数包括所述第二差值时,在所述第二差值大于第二阈值的情况下,基于所述第二差值将所述待同步设备的时间同步为所述目标设备的时间。
17.可选地,所述方法还包括根据以下方式对所述待同步设备的时间同步结果进行验证:
18.执行所述基于所述通信连接向所述目标设备发送测试数据的步骤;
19.在所述同步参数包括第一差值时,若所述第一差值小于或等于第一阈值,则验证通过;
20.或者,
21.在所述同步参数包括第二差值时,若所述第二差值小于或等于第二阈值,则验证通过。
22.可选地,所述方法还包括:
23.在未验证通过的情况下,基于所述目标设备反馈的所述同步参数将所述待同步设备的时间同步为所述目标设备的时间。
24.可选地,所述同步参数包括所述目标设备接收到所述测试数据时的接收时间;
25.所述基于所述目标设备反馈的所述同步参数将所述待同步设备的时间同步为所述目标设备的时间,包括:
26.基于所述待同步设备与所述目标设备之间的传输延迟、第一时间和所述接收时间,将所述待同步设备的时间同步为所述目标设备的时间,所述第一时间为所述待同步设备生成所述测试数据的时间。
27.可选地,所述基于所述待同步设备与所述目标设备之间的传输延迟、第一时间和所述接收时间,将所述待同步设备的时间同步为所述目标设备的时间,包括:
28.在所述接收时间与所述第一时间之间的差值大于第三阈值的情况下,基于所述待同步设备与所述目标设备之间的传输延迟、所述第一时间和所述接收时间,将所述待同步设备的时间同步为所述目标设备的时间。
29.可选地,所述基于所述待同步设备与所述目标设备之间的传输延迟、所述第一时间和所述接收时间,将所述待同步设备的时间同步为所述目标设备的时间之前,还包括:
30.获取当前的网络传输环境信息;
31.基于所述网络传输环境信息确定所述传输延迟。
32.可选地,所述网络传输环境信息包括传输距离、当前时间段和网络类型中的至少一种;所述基于所述网络传输环境确定所述传输延迟,包括:
33.将所述网络传输环境信息输入预先训练的延迟预测模型中,得到所述传输延迟;所述延迟预测模型是使用训练数据对神经网络进行训练得到的,每组训练数据包括样本传输距离、样本时间段、样本网络类型和对应的实际传输延迟。
34.第二方面,提供一种时间同步方法,用于目标设备中,所述目标设备用于对待同步设备进行时间同步,所述待同步设备包括清洁机器人或者为与所述清洁机器人协同工作的相机,所述方法包括:
35.建立与所述待同步设备之间的通信连接;
36.响应于接收到所述待同步设备基于所述通信连接发送的测试数据,生成同步参数;
37.向所述待同步设备反馈同步参数;所述同步参数用于供所述待同步设备将时间同步为所述目标设备的时间。
38.可选地,所述测试数据包括第一时间的第一时间标识,所述第一时间标识用于标识所述待同步设备生成所述测试数据时的所述第一时间;
39.所述生成同步参数,包括:
40.计算所述测试数据的接收时间与所述第一时间之间的第一差值,得到所述同步参数;
41.或者,
42.基于所述测试数据的接收时间推测出的所述测试数据的生成时间,得到第二时间;计算所述第二时间与所述第一时间之间的第二差值,得到所述同步参数。
43.可选地,所述基于所述测试数据的接收时间推测出的所述测试数据的生成时间,包括:
44.获取当前的网络传输环境信息;
45.基于所述网络传输环境信息,确定所述待同步设备与所述目标设备之间的传输延迟;按照所述传输延迟和所述接收时间确定所述第二时间。
46.可选地,所述生成同步参数,包括:
47.基于所述测试数据的接收时间生成所述同步参数。
48.第三方面,提供一种电子设备,所述设备包括处理器和存储器;所述存储器中存储有程序,所述程序由所述处理器加载并执行以实现第一方面提供的时间同步方法;或者,实现第二方面提供的时间同步方法。
49.第四方面,提供一种计算机可读存储介质,所述存储介质中存储有程序,所述程序被处理器执行时用于实现第一方面提供的时间同步方法;或者,实现第二方面提供的时间同步方法。
50.第五方面,提供一种时间同步系统,所述系统包括待同步设备和目标设备,所述待同步设备包括清洁机器人和与所述清洁机器人协同工作的相机;
51.所述待同步设备,用于响应于触发的时间同步指令,建立所述待同步设备与目标设备之间的通信连接;基于所述通信连接向所述目标设备发送测试数据;所述测试数据用于触发所述目标设备向所述待同步设备清洁机器人反馈同步参数;
52.所述目标设备,用于响应于接收到所述待同步设备基于所述通信连接发送的测试数据,生成同步参数;向所述待同步设备反馈同步参数;所述同步参数用于供所述待同步设备将时间同步为所述目标设备的时间;
53.所述待同步设备,还用于基于所述目标设备反馈的所述同步参数将所述待同步设备的时间同步为所述目标设备的时间。
54.本技术的有益效果至少包括:通过响应于触发的时间同步指令,建立待同步设备与目标设备之间的通信连接;待同步设备基于通信连接向目标设备发送测试数据;测试数据用于触发目标设备向待同步设备反馈同步参数;目标设备响应于接收到待同步设备基于
通信连接发送的测试数据,生成同步参数,并向待同步设备反馈同步参数;同步参数用于供待同步设备将时间同步为目标设备的时间;待同步设备基于目标设备反馈的同步参数将待同步设备的时间同步为目标设备的时间;可以解决清洁机器人与相机之间无法实现时间同步的问题;本技术创建了一种数据传输机制,以将清洁机器人和相机时间同步为目标设备的时间,可以实现清洁机器人与相机之间的时间同步。
55.另外,目标设备在第二差值大于第二阈值时发送同步参数,即是否执行时间同步的判断不在待同步设备中执行,可以节约待同步设备的计算资源。
56.另外,由于在不同场景下不同的待同步设备与目标设备之间的网络传输类型和距离可能不同,不同时间段的网络拥挤程度可能不同,这样导致不同网络情况下的传输延迟也可能不同。基于此,本实施例通过利用延迟预测模型自适应地计算传输延迟,可以提高预测第二时间的准确性,从而提高使用第二时间或者传输延迟进行时间同步时的准确性。
57.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,并可依照说明书的内容予以实施,以下以本技术的较佳实施例并配合附图详细说明如后。
【附图说明】
58.图1是本技术一个实施例提供的清洁机器人的工作系统的结构示意图;
59.图2是本技术一个实施例提供的时间同步系统的结构示意图;
60.图3是本技术一个实施例提供的时间同步方法的流程图;
61.图4是本技术一个实施例提供的时间同步方法的流程图;
62.图5是本技术一个实施例提供的时间同步方法的流程图;
63.图6是本技术一个实施例提供的时间同步方法的流程图;
64.图7是本技术一个实施例提供的时间同步方法的流程图;
65.图8是本技术一个实施例提供的时间同步方法的流程图;
66.图9是本技术一个实施例提供的时间同步装置的框图;
67.图10是本技术一个实施例提供的时间同步装置的框图;
68.图11是本技术一个实施例提供的电子设备的框图。
【具体实施方式】
69.下面结合附图和实施例,对本技术的具体实施方式做进一步详细描述。以下实施例用于说明本技术,但不用来限制本技术的范围。
70.首先,对本技术实施例涉及的若干名词进行介绍。
71.神经网络:是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。神经网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。
72.时间同步:是通过对本地时钟的某些操作,达到为分布式系统提供一个统一时间标度的过程。比如:分布式系统包括待同步设备和与待同步设备通信连接的目标设备,时间同步是指将所有待同步设备的时间均同步为目标设备的时间。
73.时间戳:是使用数字签名技术产生的数据,签名的对象包括了原始文件信息、签名参数、签名时间等信息。时间戳可以用于标记数据的生成时间。
74.传统的清洁机器人上通常设置有传感器来采集当前工作区域的环境数据。传感器包括但不限于激光雷达传感器、避障传感器、测距传感器、视觉传感器等,本实施例不对该传感器的类型一一列举。清洁机器人基于传感器采集到的环境数据可以实现工作区域的地图构建、避障、路径规划、目标识别等功能。
75.然而,清洁机器人上安装的传感器的传感范围往往较小、且采集数据的姿态固定,因此,在利用传感器采集到的环境数据实现相应功能时,可能由于对环境数据的分析不够准确,导致实现相应功能的效果较差的问题。
76.基于此,参考图1,本技术中提出一种清洁机器人101的工作系统,该工作系统包括清洁机器人101和相机102,其中,清洁机器人101和相机102均设置在同一工作区域内。
77.可选地,清洁机器人101可以是扫地机、拖地机、或者洗地机等具有自移动功能的设备,本技术不对清洁机器人101的类型作限定。
78.相机102可以是智能相机,或者是安装有微控制单元(micro control unit,mcu)并具有摄像功能的设备(如手机、平板电脑等),本技术不对相机102的类型作限定。
79.相机102的安装高度高于清洁机器人101的设备高度,这样,在清洁机器人101上安装有传感器时,相机102可以以与该传感器的采集姿态不同的姿态对工作区域的环境数据进行采集。之后,将相机102采集的环境数据与自身采集的环境数据相融合,使用融合后的环境数据进行分析,从而提高相应功能的实现效果。
80.清洁机器人101和相机102在使用之前,需要进行时间同步。传统的时间同步方法包括对清洁机器人101上的各个传感器进行时间同步。具体同步方式包括:将各个传感器通过硬件接口与清洁机器人101上的微处理器连接,使各个传感器使用微处理器的时间体系。
81.但是,由于协同清洁机器人101工作的相机102并不是安装在清洁机器人101上,因此,使用传统方式无法实现清洁机器人101与相机102之间的时间同步。
82.基于上述技术问题,本实施例提供了一种时间同步系统和方法,下面对该系统和方法分别进行介绍。
83.图2是本技术一个实施例提供的时间同步系统的结构示意图。如图2所示,该系统至少包括待同步设备110和目标设备120。本实施例提供的时间同步系统用于对图1提供的工作系统中的清洁机器人101和相机102进行时间同步。相应地,待同步设备110包括清洁机器人101和与清洁机器人101协同工作的相机102。
84.目标设备120用于为待同步设备110提供统一的时间机制。目标设备120可以为手机、电脑、或可穿戴式设备等具有通信功能和计算功能的设备,本实施例不对目标设备120的设备类型作限定。
85.本实施例中,待同步设备110,用于响应于触发的时间同步指令,建立待同步设备110与目标设备120之间的通信连接;基于通信连接向目标设备120发送测试数据。
86.相应地,目标设备120用于响应于接收到待同步设备110基于通信连接发送的测试数据,生成同步参数;向待同步设备110反馈同步参数。同步参数用于供待同步设备110将时间同步为目标设备120的时间。测试数据用于触发目标设备120向待同步设备110反馈同步参数。
87.待同步设备110,还用于接收目标设备120发送的同步参数;基于同步参数将待同步设备110的时间同步为目标设备120的时间。
88.其中,时间同步是指将多个待同步设备110之间的时间同步为目标设备120的时间。
89.可选地,时间同步指令可以由待同步设备110生成的,即由清洁机器人101或者相机102生成;或者,时间同步指令也可以是由目标设备120生成后发送的,本实施例不对时间同步指令的获取方式作限定。
90.比如:以目标设备120向待同步设备110发送时间同步指令为例进行说明,目标设备120中显示有时间同步界面,该时间同步界面包括时间同步控件。目标设备120接收到作用于时间同步控件上的触发操作时,生成时间同步指令,并向待同步设备110发送时间同步指令。
91.本实施例中,目标设备120与待同步设备110均安装有通信组件,目标设备120中的通信组件与待同步设备110中的通信组件建立有通信连接。
92.其中,目标设备120中的通信组件与待同步设备110中的通信组件之间的通信连接方式可以是基于蓝牙连接,或者也可以是基于无线通信技术(wifi)连接等,本实施例不对目标设备120中的通信组件与待同步设备110中的通信组件之间的通信连接方式作限定。
93.可选地,同步参数包括但不限于以下三种实现方式中的一种。第一种方式,同步参数包括测试数据的接收时间与第一时间之间的第一差值;第二种方式,同步参数包括第二时间与第一时间之间的第二差值;第三种方式,同步参数包括测试数据的接收时间。其中,同步参数的实现方式不同,对应的时间同步方式也有所不同。下面针对同步参数的不同实现方式,对相应的时间同步方式分别进行介绍。
94.为了方便理解,首先对本技术中的第一时间、第二时间和接收时间进行介绍。本技术中,第一时间是指待同步设备110生成测试数据的时间,即测试数据的实际生成时间。接收时间为目标设备120接收到测试数据的时间,即测试数据的实际接收时间。第二时间为目标设备120基于测试数据的接收时间推算出的测试数据的生成时间,即第二时间为测试数据的推测生成时间,或者说是理论生成时间。
95.第一种方式:同步参数包括接收时间与第一时间之间的第一差值。此时,测试数据包括第一时间的第一时间标识。第一时间标识用于标识待同步设备110生成测试数据时的第一时间。
96.在一个示例中,第一时间标识为时间戳。待同步设备110基于通信连接向目标设备120发送测试数据之前,还用于:利用时间戳生成算法生成第一时间对应的第一时间标识;使用第一时间标识生成测试数据。
97.其中,时间戳生成算法可以为基于协调世界时间(universal time coordinated,utc)生成时间戳的算法,或者,也可以是基于世界时(universal time,ut)生成时间戳的算法,本实施例不对时间戳生成算法的类型作限定。
98.可选地,测试数据除了包括第一时间标识外,还可以包括其它数据内容,比如:数据类型、校验位等,本实施例中不对测试数据的数据内容作限定。
99.在第一种方式中,目标设备120生成同步参数,包括:计算测试数据的接收时间与第一时间之间的第一差值,得到同步参数。
100.在目标设备120生成同步参数之后,时间同步方式包括但不限于以下两种情况,第一种情况由待同步设备110确定是否需要进行时间同步,若需要则执行时间同步的过程;第
二种情况由目标设备120确定是否需要进行时间同步,若需要则触发待同步设备110执行时间同步的过程。下面对这两种情况分别进行介绍。
101.第一种情况:由待同步设备110确定是否需要进行时间同步。此时,目标设备120生成同步参数之后,将该同步参数发送至待同步设备110。
102.相应地,待同步设备110基于目标设备120反馈的同步参数将待同步设备110的时间同步为目标设备120的时间,包括:在第一差值大于第一阈值的情况下,基于第一差值和第一阈值将待同步设备110的时间同步为目标设备120的时间。
103.在第一差值小于或等于第一阈值的情况下,待同步设备110与目标设备120之间的时间同步完成,待同步设备110不执行基于第一差值和第一阈值将待同步设备110的时间同步为目标设备120的时间的过程。
104.其中,第一阈值基于待同步设备110与目标设备120之间的最大传输延迟设置的,第一阈值预存于待同步设备110中,本实施例不对第一阈值的取值作限定。
105.在一个示例中,基于第一差值和第一阈值将待同步设备110的时间同步为目标设备120的时间,包括:计算第一差值与第一阈值的差值;将待同步设备110的当前时间加上该差值得到同步后的时间。
106.比如:对于同一时刻,目标设备120在该时刻的时间为10:00:00,待同步设备110在该时刻的时间为10:01:00。假设待同步设备110生成测试数据时的第一时间为10:01:00(按照待同步设备110的时间机制),目标设备120接收该测试数据的接收时间为10:00:10(按照目标设备120的时间机制)。此时,第一差值为

50s。假设第一阈值为10s,则第一差值与第一阈值的差值为

60s,待同步设备110将当前时间加上

60s,即调慢60s,得到同步后的时间。
107.可选地,待同步设备110还用于,对待同步设备110的时间同步结果进行验证。
108.具体地,待同步设备110执行基于通信连接向目标设备120发送测试数据的步骤;若第一差值小于或等于第一阈值,则验证通过;在未验证通过(即第一差值大于第一阈值)的情况下,基于目标设备120反馈的同步参数将待同步设备110的时间同步为目标设备120的时间。
109.第二种情况:目标设备120确定是否需要进行时间同步。此时,目标设备120生成同步参数之后,向待同步设备110反馈同步参数,包括:在第一差值大于第一阈值时发送同步参数。
110.在第一差值小于或等于第一阈值时不发送同步参数。
111.相应地,待同步设备110基于目标设备120反馈的同步参数将待同步设备110的时间同步为目标设备120的时间,包括:响应于接收到第一差值,基于第一差值和第一阈值将待同步设备110的时间同步为目标设备120的时间。
112.响应于未接收到第一差值,待同步设备110与目标设备120之间的时间同步完成,待同步设备110不执行基于第一差值将待同步设备110的时间同步为目标设备120的时间的过程。
113.在第二种情况下,待同步设备110发送测试数据后,在预定时长内检测是否接收到第一差值。若接收到第一差值,说明需要进行时间同步,待同步设备110执行时间同步过程。若未接收到第一差值,说明不需要进行时间同步,待同步设备110不执行时间同步过程。
114.其中,基于第一差值和第一阈值将待同步设备110的时间同步为目标设备120的时
间的描述参见第一种情况,本实施例在此不再赘述。
115.可选地,待同步设备110还用于,对待同步设备110的时间同步结果进行验证。
116.具体地,待同步设备110执行基于通信连接向目标设备120发送测试数据的步骤;若在预定时长内检测未接收到第一差值,则验证通过;在未验证通过(即在预定时长内检测接收到第一差值)的情况下,基于目标设备120反馈的同步参数将待同步设备110的时间同步为目标设备120的时间。
117.第二种方式:同步参数包括第二时间与第一时间之间的第二差值。此时,测试数据包括第一时间的第一时间标识。目标设备120生成同步参数,包括:基于测试数据的接收时间推测出的测试数据的生成时间,得到第二时间;计算第二时间与第一时间之间的第二差值,得到同步参数。
118.可选地,基于测试数据的接收时间推测第二时间,包括:获取当前的网络传输环境信息;基于网络传输环境信息,确定待同步设备110与目标设备120之间的传输延迟;按照传输延迟和接收时间确定第二时间。
119.网络传输环境信息包括传输距离、当前时间段和网络类型中的至少一种。其中,传输距离与传输延迟呈正相关关系。不同时间段对应的网络拥挤程度不同。比如:在凌晨2:00至6:00的时间段,网络使用率较低,相应地,网络拥挤程度较低;而在早晨7:00至下午6:00,网络使用率较高,相应地,网络拥挤程度较高。网络类型包括无线网络和数据网络。
120.在实际实现时,网络传输环境信息还可以包括影响数据传输延迟的其它信息,本实施例不对网络传输环境信息包括的信息类型作限定。
121.具体地,基于网络传输环境信息,确定待同步设备110与目标设备120之间的传输延迟,包括:将网络传输环境信息输入预先训练的延迟预测模型中,得到传输延迟。其中,延迟预测模型是使用训练数据对神经网络进行训练得到的,每组训练数据包括样本传输距离、样本时间段、样本网络类型和对应的实际传输延迟。
122.示意性地,延迟训练模型的训练过程包括:创建初始网络模型;将样本传输距离、样本时间段、样本网络类型输入初始网络模型,得到模型结果;基于模型结果和对应的实际传输延迟迭代更新初始网络模型的参数,在迭代次数达到预设次数,或者更新后的模型收敛时,得到延迟预测模型。
123.其中,神经网络可以为bp神经网络(back propagation neural network)、art神经网络、rbf神经网络或者lvm神经网络,本实施例不对神经网络的类型作限定。
124.在一个示例中,按照传输延迟和接收时间确定第二时间,包括:计算接收时间与传输延迟的差值,得到第二时间。
125.在第二种方式中,目标设备120在生成同步参数之后,时间同步方式包括但不限于以下两种情况,第一种情况由待同步设备110确定是否需要进行时间同步,若需要则执行时间同步的过程;第二种情况由目标设备120确定是否需要进行时间同步,若需要则触发待同步设备110执行时间同步的过程。下面对这两种情况分别进行介绍。
126.第一种情况:由待同步设备110确定是否需要进行时间同步。此时,目标设备120生成同步参数之后,将该同步参数发送至待同步设备110。
127.相应地,待同步设备110基于目标设备120反馈的同步参数将待同步设备110的时间同步为目标设备120的时间,包括:在第二差值大于第二阈值的情况下,基于第二差值将
待同步设备110的时间同步为目标设备120的时间。
128.在第二差值小于或等于第二阈值的情况下,待同步设备110与目标设备120之间的时间同步完成,待同步设备110不执行基于第二差值将待同步设备110的时间同步为目标设备120的时间的过程。
129.其中,第二阈值的取值接近于0,第二阈值是基于推测第二时间时的计算误差确定的。第二阈值的取值预存在待同步设备110中,本实施例不对第二阈值的取值作限定。
130.在一个示例中,基于第二差值将待同步设备110的时间同步为目标设备120的时间,包括:将待同步设备110的当前时间加上第二差值得到同步后的时间。
131.比如:对于同一时刻,目标设备120在该时刻的时间为10:00:00,待同步设备110在该时刻的时间为10:01:00。假设目标设备120接收该测试数据的接收时间为10:00:10(按照目标设备120的时间机制),传输延迟为10s。此时,第二时间为10:00:00。假设待同步设备110生成测试数据时的第一时间为10:01:00(按照待同步设备110的时间机制),则第二差值为

60s,待同步设备110将当前时间加上

60s,即调慢60s,得到同步后的时间。
132.可选地,待同步设备110还用于,对待同步设备110的时间同步结果进行验证。
133.具体地,待同步设备110执行基于通信连接向目标设备120发送测试数据的步骤;若第二差值小于或等于第二阈值,则验证通过;在未验证通过(即第二差值大于第二阈值)的情况下,基于目标设备120反馈的同步参数将待同步设备110的时间同步为目标设备120的时间。
134.第二种情况:目标设备120确定是否需要进行时间同步。此时,目标设备120生成同步参数之后,向待同步设备110反馈同步参数,包括:在第二差值大于第二阈值时发送同步参数。
135.相应地,待同步设备110基于目标设备120反馈的同步参数将待同步设备110的时间同步为目标设备120的时间,包括:响应于接收到第二差值,基于第二差值将待同步设备110的时间同步为目标设备120的时间。
136.响应于未接收到第二差值,待同步设备110与目标设备120之间的时间同步完成,待同步设备110不执行基于第二差值将待同步设备110的时间同步为目标设备120的时间的过程。
137.在第二种情况下,待同步设备110发送测试数据后,在预定时长内检测是否接收到第二差值。若接收到第二差值,说明需要进行时间同步,待同步设备110执行时间同步过程。若未接收到第二差值,说明不需要进行时间同步,待同步设备110不执行时间同步过程。
138.其中,基于第二差值将待同步设备110的时间同步为目标设备120的时间的描述参见第一种情况,本实施例在此不再赘述。
139.可选地,待同步设备110还用于,对待同步设备110的时间同步结果进行验证。
140.具体地,待同步设备110执行基于通信连接向目标设备120发送测试数据的步骤;若在预定时长内检测未接收到第二差值,则验证通过;在未验证通过(即在预定时长内检测接收到第二差值)的情况下,基于目标设备120反馈的同步参数将待同步设备110的时间同步为目标设备120的时间。
141.第三种方式:同步参数包括目标设备120接收到测试数据时的接收时间。此时,目标设备120生成同步参数,包括:基于测试数据的接收时间生成同步参数。
142.相应地,基于目标设备120反馈的同步参数将待同步设备110的时间同步为目标设备120的时间,包括:基于待同步设备110与目标设备120之间的传输延迟、第一时间和接收时间,将待同步设备110的时间同步为目标设备120的时间,第一时间为待同步设备110生成测试数据。
143.可选地,基于待同步设备110与目标设备120之间的传输延迟、第一时间和接收时间,将待同步设备110的时间同步为目标设备120的时间,包括:计算接收时间与第一时间的差值,得到实际传输时间;计算实际传输时间与传输延迟的差值;将待同步设备110的当前时间加上该差值得到同步后的时间。
144.比如:对于同一时刻,目标设备120在该时刻的时间为10:00:00,待同步设备110在该时刻的时间为10:01:00。假设待同步设备110生成测试数据时的第一时间为10:01:00(按照待同步设备110的时间机制),目标设备120接收该测试数据的接收时间为10:00:10(按照目标设备120的时间机制)。此时,实际传输时间为

50s。假设传输为10s,则计算误差为

60s,待同步设备110将当前时间加上

60s,即调慢60s,得到同步后的时间。
145.在一个示例中,待同步设备110在接收时间与第一时间之间的差值大于第三阈值的情况下,基于待同步设备110与目标设备120之间的传输延迟、第一时间和接收时间,将待同步设备110的时间同步为目标设备120的时间。
146.在接收时间与第一时间之间的差值小于或等于第三阈值的情况下,待同步设备110与目标设备120之间的时间同步完成,待同步设备110不执行基于待同步设备110与目标设备120之间的传输延迟、第一时间和接收时间,将待同步设备110的时间同步为目标设备120的时间的过程。
147.其中,第三阈值是基于待同步设备110与目标设备120之间的最大传输延迟设置的,第三阈值预存于待同步设备110中,本实施例不对第三阈值的取值作限定。
148.可选地,基于待同步设备110与目标设备120之间的传输延迟、第一时间和接收时间,将待同步设备110的时间同步为目标设备120的时间之前,还包括:获取当前的网络传输环境信息;基于网络传输环境信息确定传输延迟。
149.传输延迟的计算过程参考第二种方式,本实施例在此不再赘述。
150.可选地,待同步设备110还用于,对待同步设备110的时间同步结果进行验证。
151.具体地,待同步设备110执行基于通信连接向目标设备120发送测试数据的步骤;若接收时间与第一时间之间的差值小于或等于第三阈值,则验证通过;在未验证通过(即接收时间与第一时间之间的差值大于第三阈值)的情况下,基于目标设备120反馈的同步参数将待同步设备110的时间同步为目标设备120的时间。
152.需要补充说明的是,本实施例中,以相机102的数量和清洁机器人101的数量均为一个为例进行说明,在实际实现时,相机102的数量和清洁机器人101的数量也可以为多个,即至少两个相机102和至少两个清洁机器人101与目标设备120通信相连。
153.另外,本实施例中,对清洁机器人101进行时间同步是指将清洁机器人101中控制器的时间同步为目标设备120的时间;和/或,将清洁机器人101上安装的各个传感器的时间同步为目标设备120的时间。
154.在将清洁机器人101中控制器的时间同步为目标设备120的时间时,控制器与目标设备120通信相连。此时,同一清洁机器人101上的各个传感器可以通过硬件接口与该清洁
机器人101上的控制器相连,以使各个传感器使用控制器的时间机制。这样,在将控制器的时间机制同步为目标设备120的时间机制后,各个传感器的时间机制也会同步为目标设备120的时间机制。
155.在将清洁机器人101上安装的各个传感器的时间同步为目标设备120的时间时,该清洁机器人101上安装的每个传感器还可以通过通信组件与目标设备120通信相连。此时,各个传感器的时间机制均可以同步为目标设备120的时间机制。
156.综上所述,本实施例提供的时间同步方法,通过响应于触发的时间同步指令,建立待同步设备110与目标设备120之间的通信连接;待同步设备110基于通信连接向目标设备120发送测试数据;测试数据用于触发目标设备120向待同步设备110反馈同步参数;目标设备120响应于接收到待同步设备110基于通信连接发送的测试数据,生成同步参数,并向待同步设备110反馈同步参数;同步参数用于供待同步设备110将时间同步为目标设备120的时间;待同步设备110基于目标设备120反馈的同步参数将待同步设备110的时间同步为目标设备120的时间;可以解决清洁机器人101与相机102之间无法实现时间同步的问题;本实施例创建了一种数据传输机制将清洁机器人101和相机102时间同步为目标设备120的时间,可以实现清洁机器人101与相机102之间的时间同步。
157.另外,目标设备120在第二差值大于第二阈值时发送同步参数,即是否执行时间同步的判断不在待同步设备110中执行,可以节约待同步设备110的计算资源。
158.另外,由于在不同场景下不同的待同步设备110与目标设备120之间的网络传输类型和距离可能不同,不同时间段的网络拥挤程度可能不同,这样导致不同网络情况下的传输延迟也可能不同。基于此,本实施例通过利用延迟预测模型自适应地计算传输延迟,可以提高预测第二时间的准确性,从而提高使用第二时间或者传输延迟进行时间同步时的准确性。
159.下面对本技术提供的时间同步方法进行详细介绍。
160.图3是本技术一个实施例提供的时间同步方法的流程图。本实施例以该方法用于图2所示的时间同步系统中为例进行说明。该方法至少包括以下几个步骤:
161.步骤301,待同步设备响应于触发的时间同步指令,建立待同步设备与目标设备之间的通信连接。
162.步骤302,待同步设备基于通信连接向目标设备发送测试数据。
163.步骤303,目标设备响应于接收到待同步设备基于通信连接发送的测试数据,生成同步参数。
164.步骤304,目标设备向待同步设备反馈同步参数。
165.步骤305,待同步设备基于目标设备反馈的同步参数将待同步设备的时间同步为目标设备的时间。
166.本实施例提供的时间同步方法,通过触发的时间同步指令,建立待同步设备与目标设备之间的通信连接;待同步设备基于通信连接向目标设备发送测试数据;目标设备响应于接收到待同步设备基于通信连接发送的测试数据,生成同步参数,并向待同步设备反馈同步参数;待同步设备基于目标设备反馈的同步参数将待同步设备的时间同步为目标设备的时间;可以解决清洁机器人与相机之间无法实现时间同步的问题;本实施例创建了一种数据传输机制将清洁机器人和相机时间同步为目标设备的时间,可以实现清洁机器人与
相机之间的时间同步。
167.可选地,步骤301、302和305可以单独实现为待同步设备侧的方法实施例;步骤303和304可以单独实现为目标设备侧的方法实施例。
168.图4是本技术一个实施例提供的时间同步方法的流程图;本实施例以该方法用于图2所示的时间同步系统中的第一种实现方式的第一种情况为例进行说明。该方法至少包括以下几个步骤:
169.步骤401,待同步设备响应于触发的时间同步指令,建立待同步设备与目标设备之间的通信连接。
170.步骤402,待同步设备基于通信连接向目标设备发送测试数据,该测试数据包括第一时间的第一时间标识。
171.步骤403,目标设备响应于接收到待同步设备基于通信连接发送的测试数据,计算测试数据的接收时间与第一时间之间的第一差值,得到同步参数。
172.步骤404,目标设备生成同步参数之后,将该同步参数发送至待同步设备。
173.步骤405,待同步设备在第一差值大于第一阈值的情况下,基于第一差值和第一阈值将待同步设备的时间同步为目标设备的时间,并执行步骤402;在第一差值小于或等于第一阈值的情况下,待同步设备与目标设备之间的时间同步完成。
174.本实施例中,同步参数为测试数据的接收时间与第一时间之间的第一差值,故在计算同步参数的过程中不用计算当前的网络传输延迟,可以节约目标设备的计算资源。
175.可选地,步骤401、402和405可以单独实现为待同步设备侧的方法实施例;步骤403和404可以单独实现为目标设备侧的方法实施例。
176.图5是本技术一个实施例提供的时间同步方法的流程图;本实施例以该方法用于图2所示的时间同步系统中的第一种实现方式的第二种情况为例进行说明。该方法至少包括以下几个步骤:
177.步骤501,待同步设备响应于触发的时间同步指令,建立待同步设备与目标设备之间的通信连接。
178.步骤502,待同步设备基于通信连接向目标设备发送测试数据,该测试数据包括第一时间的第一时间标识。
179.步骤503,目标设备响应于接收到待同步设备基于通信连接发送的测试数据,计算测试数据的接收时间与第一时间之间的第一差值,得到同步参数。在第一差值大于第一阈值的情况下,执行步骤504;在第一差值小于或等于第一阈值的情况下,流程结束。
180.步骤504,目标设备向待同步设备反馈同步参数。
181.步骤505,待同步设备响应于接收到第一差值,基于第一差值和第一阈值将待同步设备的时间同步为目标设备的时间,并执行步骤502;响应于未接收到第一差值,待同步设备与目标设备之间的时间同步完成。
182.本实施例中,通过目标设备在第一差值大于第一阈值时发送同步参数,即是否执行时间同步的判断不在待同步设备中执行,可以节约待同步设备的计算资源。
183.可选地,步骤501、502和505可以单独实现为待同步设备侧的方法实施例;步骤503和504可以单独实现为目标设备侧的方法实施例。
184.图6是本技术一个实施例提供的时间同步方法的流程图;本实施例以该方法用于
图2所示的时间同步系统中的第二种实现方式的第一种情况为例进行说明。该方法至少包括以下几个步骤:
185.步骤601,待同步设备响应于触发的时间同步指令,建立待同步设备与目标设备之间的通信连接。
186.步骤602,待同步设备基于通信连接向目标设备发送测试数据,该测试数据包括第一时间的第一时间标识。
187.步骤603,目标设备响应于接收到待同步设备基于通信连接发送的测试数据,基于测试数据的接收时间推测出的测试数据的生成时间,得到第二时间;计算第二时间与第一时间之间的第二差值,得到同步参数。
188.步骤604,目标设备生成同步参数之后,将该同步参数发送至待同步设备。
189.步骤605,待同步设备在第二差值大于第二阈值的情况下,基于第二差值将待同步设备的时间同步为目标设备的时间,并执行步骤602;在第二差值小于或等于第二阈值的情况下,待同步设备与目标设备之间的时间同步完成。
190.本实施例中,同步参数为第二时间与第一时间之间的第二差值,而第二时间是基于测试数据的接收时间推测出的测试数据的生成时间,由于推测过程是基于当前的网络传输延迟的,所以可以提高时间同步的准确性。
191.可选地,步骤601、602和605可以单独实现为待同步设备侧的方法实施例;步骤603和604可以单独实现为目标设备侧的方法实施例。
192.图7是本技术一个实施例提供的时间同步方法的流程图;本实施例以该方法用于图2所示的时间同步系统中的第二种实现方式的第二种情况为例进行说明。该方法至少包括以下几个步骤:
193.步骤701,待同步设备响应于触发的时间同步指令,建立待同步设备与目标设备之间的通信连接。
194.步骤702,待同步设备基于通信连接向目标设备发送测试数据,该测试数据包括第一时间的第一时间标识。
195.步骤703,目标设备响应于接收到待同步设备基于通信连接发送的测试数据,基于测试数据的接收时间推测出的测试数据的生成时间,得到第二时间;计算第二时间与第一时间之间的第二差值,得到同步参数。在第二差值大于第二阈值的情况下,执行步骤704;在第二差值小于或等于第二阈值的情况下,流程结束。
196.步骤704,目标设备向待同步设备反馈同步参数。
197.步骤705,待同步设备响应于接收到第二差值,基于第二差值将待同步设备的时间同步为目标设备的时间,并执行步骤702;响应于未接收到第二差值,待同步设备与目标设备之间的时间同步完成。
198.本实施例提供中,通过目标设备在第二差值大于第二阈值时发送同步参数,即是否执行时间同步的判断不在待同步设备中执行,可以节约待同步设备的计算资源。
199.可选地,步骤701、702和705可以单独实现为待同步设备侧的方法实施例;步骤703和704可以单独实现为目标设备侧的方法实施例。
200.图8是本技术一个实施例提供的时间同步方法的流程图;本实施例以该方法用于图2所示的时间同步系统中的第三种实现方式为例进行说明。该方法至少包括以下几个步
骤:
201.步骤801,待同步设备响应于触发的时间同步指令,建立待同步设备与目标设备之间的通信连接。
202.步骤802,待同步设备基于通信连接向目标设备发送测试数据。
203.步骤803,目标设备响应于接收到待同步设备基于通信连接发送的测试数据,基于测试数据的接收时间生成同步参数。
204.步骤804,目标设备生成同步参数之后,将该同步参数发送至待同步设备。
205.步骤805,待同步设备在接收时间与第一时间之间的差值大于第三阈值的情况下,基于待同步设备与目标设备之间的传输延迟、第一时间和接收时间,将待同步设备的时间同步为目标设备的时间,并执行步骤802;在接收时间与第一时间之间的差值小于或等于第三阈值的情况下,待同步设备与目标设备之间的时间同步完成。
206.本实施例中,同步参数为测试数据的接收时间,可以减少目标设备生成同步参数时的计算量,从而节约目标设备的计算资源。
207.可选地,步骤801、802和805可以单独实现为待同步设备侧的方法实施例;步骤803和804可以单独实现为目标设备侧的方法实施例。
208.图9是本技术一个实施例提供的时间同步装置的框图,该装置应用于图2所示的时间同步系统中的待同步设备110,该装置至少包括以下几个模块:指令接收模块910、数据发送模块920和数据接收模块930。
209.指令接收模块910,用于响应于触发的时间同步指令,建立待同步设备与目标设备之间的通信连接;
210.数据发送模块920,用于基于通信连接向目标设备发送测试数据;测试数据用于触发目标设备向待同步设备反馈同步参数;
211.数据接收模块930,用于基于目标设备反馈的同步参数将待同步设备的时间同步为目标设备的时间。
212.图10是本技术一个实施例提供的时间同步装置的框图,该装置应用于图2所示的时间同步系统中的目标设备120,该装置至少包括以下几个模块:连接模块1010、生成模块1020和发送模块1030。
213.连接模块1010,用于建立与待同步设备之间的通信连接;
214.生成模块1020,用于响应于接收到待同步设备基于通信连接发送的测试数据,生成同步参数;
215.发送模块1030,用于向待同步设备反馈同步参数;同步参数用于供待同步设备将时间同步为目标设备的时间。
216.相关细节参考上述方法实施例。
217.需要说明的是:上述实施例中提供的时间同步装置在进行时间同步时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将时间同步装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的时间同步装置与时间同步方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
218.图11是本技术一个实施例提供的电子设备的框图。电子设备可以为图2中的待同
步设备110或者为图2中的目标设备120。该电子设备至少包括处理器1101和存储器1102。
219.处理器1101可以包括一个或多个处理核心,比如:4核心处理器、8核心处理器等。处理器1101可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1101也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1101可以在集成有gpu(graphics processing unit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1101还可以包括ai(artificial intelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。
220.存储器1102可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1102还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1102中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1101所执行以实现本技术中方法实施例提供的时间同步方法。
221.在一些实施例中,电子设备还可选包括有:外围设备接口和至少一个外围设备。处理器1101、存储器1102和外围设备接口之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口相连。示意性地,外围设备包括但不限于:射频电路、触摸显示屏、音频电路、和电源等。
222.当然,电子设备还可以包括更少或更多的组件,本实施例对此不作限定。
223.可选地,本技术还提供有一种计算机可读存储介质,计算机可读存储介质中存储有程序,程序由处理器加载并执行以实现上述方法实施例的时间同步方法。
224.可选地,本技术还提供有一种计算机产品,该计算机产品包括计算机可读存储介质,计算机可读存储介质中存储有程序,程序由处理器加载并执行以实现上述方法实施例的时间同步方法。
225.以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
226.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
转载请注明原文地址:https://win.8miu.com/read-50211.html

最新回复(0)