CN114827173A - 数据同步系统、方法、装置、设备及存储介质 - Google Patents
数据同步系统、方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114827173A CN114827173A CN202210418989.2A CN202210418989A CN114827173A CN 114827173 A CN114827173 A CN 114827173A CN 202210418989 A CN202210418989 A CN 202210418989A CN 114827173 A CN114827173 A CN 114827173A
- Authority
- CN
- China
- Prior art keywords
- data
- peripheral device
- clock
- count value
- clock signal
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本申请涉及机器人技术领域,提供一种数据同步系统、方法、装置、设备及存储介质,所述系统包括:主控模块和多个外围设备,所述主控模块与所述多个外围设备连接,其中:所述主控模块用于生成基准时钟信号;所述外围设备用于生成所述基准时钟信号的时钟计数值;所述主控模块还用于读取各所述外围设备采集的数据和所述时钟计数值中所述外围设备采集数据时生成的目标时钟计数值,并根据各所述目标时钟计数值同步各所述外围设备采集的数据。本申请提供的数据同步系统将生成的时钟信号作为各个外围设备参考的基准时钟,根据各个外围设备在采集数据时对应的基准时钟信号的目标时钟计数值对齐数据时间轴,可以快速实现对各外围设备采集的数据的同步。
Description
技术领域
本申请涉及机器人技术领域,尤其涉及数据同步系统、方法、装置、设备及存储介质。
背景技术
随着科技的发展,机器人在各个行业领域的应用也越来越广泛。目前,机器人本体上一般都设置有多个外围设备用于辅助机器人完成特定的人物或实现特定的功能,外围设备比如激光雷达、深度相机等。各个外围设备一般都有自己的晶振和计时系统,并且,各外围设备执行数据采集的频率不同,当计时系统出现偏差的时候,容易造成外围设备之间系统时间不同步的问题,在数据采集不同步的情况下,更是无法确定不同外围设备采集的数据之间的对应关系,从而出现数据不同步的情况,给后续的数据处理造成困难。
发明内容
本申请旨在至少解决现有技术中存在的技术问题之一。为此,本申请提出一种数据同步系统,可以实现不同机器人外围设备之间采集的数据的同步。
本申请还提出一种数据同步方法、装置、设备及存储介质。
根据本申请第一方面实施例提供的数据同步系统,所述数据同步系统包括主控模块和多个外围设备,所述主控模块与所述多个外围设备连接,其中:
所述主控模块用于生成基准时钟信号;所述外围设备用于生成所述基准时钟信号的时钟计数值;
所述主控模块还用于读取各所述外围设备采集的数据和所述时钟计数值中所述外围设备采集数据时生成的目标时钟计数值,并根据各所述目标时钟计数值同步各所述外围设备采集的数据。
根据本申请实施例的数据同步系统,通过主控模块生成独立的基准时钟信号,并作为各个外围设备参考的基准时钟,根据各个外围设备在采集数据时对应的基准时钟信号的目标时钟计数值对齐数据时间轴,可以快速实现对各外围设备采集的数据的同步,解决了机器人的外围设备采集数据时间不同步的问题。
根据本申请的一个实施例,所述主控模块包括时钟发生器,用于生成所述基准时钟信号;
所述外围设备包括时钟计数器以及时钟透传模块,所述时钟计数器与所述时钟透传模块连接;所述时钟计数器用于接收所述基准时钟信号并生成所述基准时钟信号的时钟计数值;
所述多个外围设备包括依次连接的N个外围设备;其中,第1个外围设备的时钟计数器与所述时钟发生器连接,第M个外围设备的时钟计数器与第M-1个外围设备的时钟透传模块连接,所述时钟透传模块用于将所述基准时钟信号从第M-1个外围设备中的时钟计数器传输给第M个外围设备中的时钟计数器,并保持所述基准时钟信号的周期和相位不变,1<M≤N,M与N为正整数。
根据本申请的一个实施例,所述主控模块包括时钟发生器,用于生成所述基准时钟信号,所述外围设备包括时钟计数器,各所述外围设备中的时钟计数器与所述时钟发生器连接,用于接收所述基准时钟信号并生成所述基准时钟信号的时钟计数值。
根据本申请的一个实施例,所述外围设备还包括动作触发模块,所述动作触发模块与所述时钟计数器连接,其中:
所述动作触发模块在所述时钟计数值的变化量对应的累计时长为预设时长时,驱动所述外围设备采集数据。
根据本申请的一个实施例,所述外围设备还包括存储模块,所述存储模块与所述动作触发模块连接,用于存储所述外围设备采集的数据,以及所述外围设备采集数据时所述时钟计数器的目标时钟计数值。
根据本申请的一个实施例,所述主控模块还包括数据读取子模块,其中:
所述数据读取子模块与各所述外围设备的存储模块连接,用于读取所述存储模块中存储的各所述外围设备采集的数据和所述目标时钟计数值;
所述主控模块具体用于根据各所述目标时钟计数值对齐各所述外围设备采集的数据的时间轴,以同步各所述外围设备采集的数据。
根据本申请实施例的数据同步系统,通过将基准时钟信号传输到各个外围设备中,或者通过时钟透传模块,在保持基准时钟信号的周期和相位不变的情况下,将基准时钟信号传输到各个外围设备中,以供各个外围设备参照基准时钟信号进行数据采集,保证了采集的数据时间轴上的对齐,有利于后续的数据同步。
根据本申请第二方面实施例的数据同步方法,应用于数据同步系统,所述数据同步系统包括主控模块和多个外围设备,所述主控模块与所述多个外围设备连接,所述数据同步方法包括以下步骤:
利用所述主控模块生成基准时钟信号,并利用各所述外围设备生成所述基准时钟信号的时钟计数值;
根据所述时钟计数值驱动各所述外围设备采集数据;
利用所述主控模块读取各所述外围设备采集的数据,以及所述时钟计数值中所述外围设备采集数据时生成的目标时钟计数值,并根据所述目标时钟计数值同步各所述外围设备采集的数据。
根据本申请实施例的数据同步方法,通过生成可供各个外围设备参考的基准时钟信号,并生成该基准时钟信号的时钟计数值进而驱动各外围设备进行数据采集,根据各外围设备采集数据时生成的时钟计数值可以对齐采集的数据的时间轴,从而快速实现对各外围设备采集的数据的同步。
根据本申请第三方面实施例的数据同步装置,所述数据同步装置包括:
时钟生成模块,用于生成基准时钟信号,并生成所述基准时钟信号的时钟计数值;
数据采集模块,用于根据所述时钟计数值驱动各外围设备采集数据;
数据同步模块,用于获取各所述外围设备采集的数据,以及所述时钟计数值中所述外围设备采集数据时生成的目标时钟计数值,并根据所述目标时钟计数值同步各所述外围设备采集的数据。
根据本申请第四方面实施例的电子设备,所述电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述的数据同步方法。
根据本申请第五方面实施例的非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述的数据同步方法。
本申请实施例中的上述一个或多个技术方案,至少具有如下技术效果之一:
本申请实施例通过主控模块生成独立的基准时钟信号,并作为各个外围设备参考的基准时钟,根据各个外围设备在采集数据时对应的基准时钟信号的目标时钟计数值对齐数据时间轴,可以快速实现对各外围设备采集的数据的同步,解决了机器人的外围设备采集数据时间不同步的问题。
进一步的,本申请实施例在保持基准时钟信号的周期和相位不变的情况下,将生成基准时钟信号传输到各个外围设备中,以供各个外围设备参照基准时钟信号进行数据采集,保证了采集的数据时间轴上的对齐,有利于后续的数据同步。
更进一步的,本申请实施例可以同时驱动各个外围设备进行数据,保证数据采集的同步,从而确保不同外围设备采集的数据的同步,也可以异步驱动各个外围设备进行数据采集,基于各外围设备采集数据时对应的时钟计数值,同步不同外围设备采集的数据,且对各外围设备采集数据的同步,不受外围设备数量的影响,确保了数据同步的稳定性和鲁棒性。
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的数据同步系统的结构示意图之一;
图2是本申请实施例提供的数据同步系统的结构示意图之二;
图3是本申请实施例提供的数据同步系统的结构示意图之三;
图4是本申请实施例提供的数据同步系统的结构示意图之四;
图5是本申请实施例提供的数据同步方法的流程示意图之一;
图6是本申请实施例提供的数据同步装置的功能结构示意图之一;
图7是本申请实施例提供的电子设备的实体结构示意图。
具体实施方式
下面结合附图和实施例对本申请的实施方式作进一步详细描述。以下实施例用于说明本申请,但不能用来限制本申请的范围。
在本申请实施例的描述中,需要说明的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请实施例和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请实施例的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本申请实施例的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请实施例中的具体含义。
在本申请实施例中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
参照图1,图1为本申请实施例提供的数据同步系统的结构示意图之一,本申请实施例提供的数据同步系统可以应用于机器人,在图1中,数据同步系统包括主控模块和多个外围设备,主控模块和多个外围设备连接,其中,主控模块与多个外围设备可以如图1所示依次串联,各外围设备也可以分别与主控模块直接连接形成并联,在此不做限定。其中:主控模块用于生成基准时钟信号,外围设备用于生成基准时钟信号的时钟计数值。主控模块还用于读取外围设备采集的数据,以及,外围设备采集数据时生成的目标时钟计数值,根据该目标时钟计数值对齐采集的数据的时间轴,从而同步各个外围设备采集的数据,实现不同设备采集数据的同步。
进一步地,生成的基准时钟信号包括包含高低电平的脉冲信号,可以作为所有外围设备的参考时钟,时钟计数值用于统计基准时钟信号的脉冲信号的数量,可知地,基准时钟信号可以是按照一定的频率生成的,因此,相邻的两个高电平脉冲信号、或者相邻的两个低电平信号之间、或者相邻的高电平信号和低电平信号之间的间隔,表示一定的时长,通过统计高电平或低电平脉冲信号的数量,可以计算出相应的时长,外围设备以此为参考执行数据采集。通过确定外围设备采集数据时生成的时钟信号计数值,可以确定外围设备是在第几个时钟信号时采集的数据,从而以基准时钟信号为时间轴,基于目标时钟计数值将不同外围设备采集的数据转换到基准时钟信号的时间轴下,从而对齐各外围设备采集数据的时间轴,实现数据同步。
在本实施例中,通过主控模块生成独立的基准时钟信号,并作为各个外围设备参考的基准时钟,根据各个外围设备在采集数据时对应的基准时钟信号的目标时钟计数值对齐数据时间轴,可以快速实现对各外围设备采集的数据的同步,解决了机器人的外围设备采集数据时间不同步的问题。
在一个实施例中,参照图2,主控模块包括时钟发生器,用于生成基准时钟信号,外围设备包括时钟计数器和时钟透传模块,时钟计数器用于接收时钟发生器生成的基准时钟信号并生成基准时钟信号对应的时钟计数值,具体地,时钟计数器可以通过统计基准时钟信号中高电平脉冲或低电平脉冲的数量,生成时钟计数值。时钟透传模块用于传递基准时钟信号。进一步地,多个外围设备包括依次连接的N个外围设备;其中,第1个外围设备的时钟计数器与所述时钟发生器连接,第M个外围设备的时钟计数器与第M-1个外围设备的时钟透传模块连接,时钟透传模块用于将基准时钟信号从第M-1个外围设备中的时钟计数器传输给第M个外围设备中的时钟计数器,并保持基准时钟信号的周期和相位不变,1<M≤N,M与N为正整数。
具体地,在依次连接的N个外围设备中,第一个外围设备中的时钟计数器与时钟发生器连接,在其余各个外围设备中,时钟计数器与时钟透传模块连接,在各个外围设备之间,时钟计数器与时钟透传模块依次交替串联,时钟透传模块将基准时钟信号在外围设备中的时钟计数器之间传输,即时钟透传模块将基准时钟信号从一个外围设备中的时钟计数器中,传递到下一个外围设备中的时钟计数器中。时钟透传模块在传递基准时钟信号时,保持基准时钟信号的周期和相位不变。外围设备根据时钟计数器生成的时钟计数值采集数据,例如,外围设备每隔1s采集一次数据,则当时钟计数值的变化量对应的累计时长达到1s时,外围设备则执行数据采集操作。主控模块读取各个外围设备采集的数据,以及各个外围设备采集数据时的时钟计数器生成的目标时钟计数值,并根据该目标时钟计数值同步不同的外围设备采集的数据。
可以理解的是,数据同步系统中包括多个时钟透传模块,分别设置于多个外围设备中,与各个外围设备中的时钟计数器交替串联,在保持基准时钟信号的周期和相位不变的情况下,将基准时钟信号传递到各个外围设备中,从而保证各个外围设备中输入和输出的时钟信号是同步的。
进一步地,时钟发生器设置于主控模块中,主控模块中的时钟发生器产生基准时钟信号并发送至外围设备中,以供外围设备参照基准时钟信号进行数据采集。可以理解的是,时钟发生器的设置并不限于此,时钟发生器也可以设置于主控模块外,与主控模块通信并通过主控模块将产生的基准时钟信号发送至外围设备,在此不再赘述。而多个外围设备之间的连接顺序可以根据实际需要进行设置,在此并不做具体限定。
需要说明的是,时钟透传模块在各个外围设备之间传递基准时钟信号时,会添加基准时钟信号传输存在的延时时间,因此,在对齐数据的时间轴时,会在基准时钟信号的基础上添加时钟信号传递产生的延时时间,从而确保数据同步的准确性。或者,基于时钟透传模块添加基准时钟信号传输的延时时间,确保在各外围设备的时钟计数值相同时,同时驱动各外围设备进行数据采集,确保不同外围设备采集数据的同步,并根据时钟计数器在外围设备采集数据时生成的时钟计数值,区分不同时间段内采集的数据。基准时钟信号在各外围设备中的传递顺序,是根据外围设备之间的连接顺序确定的,而外围设备之间的连接顺序可以自定义设置,也可以根据外围设备之间的交互、数据采集顺序等进行设置,在此不做具体限定。
进一步地,各外围设备中的时钟计数器还可以分别与时钟发生器连接,各时钟计数器直接接收时钟发生器产生的基准时钟信号,并生成该基准时钟信号的时钟计数值,在此不再赘述。
在本实施例中,通过将基准时钟信号传输到各个外围设备中,或者通过时钟透传模块,在保持基准时钟信号的周期和相位不变的情况下,将基准时钟信号传递到各个外围设备中,以供各个外围设备参照基准时钟信号进行数据采集,保证了采集的数据时间轴上的对齐,有利于后续的数据同步。
进一步地,时钟透传模块在基准时钟信号传递过程中添加信号传递的延时时间,在对齐数据时间轴时基于添加的延时时间,确保了数据同步的准确性。
在一个实施例中,参照图3,外围设备还包括动作触发模块,具体地,外围设备根据时钟计数值采集数据时,是由动作触发模块驱动的,动作触发模块与时钟计数器连接,在时钟计数器的计数值的变化量对应的累计时长达到设定阈值时,驱动外围设备进行数据采集,从而确定外围设备采集数据时的目标时钟计数值。而不同的外围设备的数据采集频率可以是相同的,也可以是不同的,各外围设备可以参考各自的时钟计数器,由动作触发模块进行驱动,按照设定的周期,每隔一定时长执行数据采集操作。如图3所示,动作触发模块可以有多个,与外围设备可以是一一对应关系,每个动作触发模块用于驱动特定的外围设备,可以理解的是,动作触发模块也可以包括一个,与各外围设备中的时钟计数器连接,通过同一个动作触发模块驱动各个外围设备,在此不再赘述。
进一步地,各外围设备执行数据采集的节奏可以相同,也可以不同,动作驱动模块驱动各外围设备进行数据采集时,可以是同时驱动,也可以是异步驱动。当各外围设备采集数据的时间节奏不同时,例如,深度相机1s可以采集10帧图像,而激光雷达1s只能采集1帧点云数据,不同的外围设备可以设定相同的采集频率,通过动作触发模块,每隔一定时长同时驱动各外围设备进行数据采集,保证不同外围设备同步采集数据,并获取数据采集时的时钟计数值,从而便于后续的数据同步。具体地,当各外围设备中的时钟计数器与时钟发生器直接连接时,若时钟计数器的时钟计数值对应的时长达到设定值,动作触发模块则驱动各外围设备同时执行数据采集操作,实现数据采集的同步。当各外围设备的时钟计数器通过时钟透传模块串联时,利用时钟透传模块添加基准时钟信号的传输延时时间,保证在先接收到基准时钟信号的外围设备与在后接收到基准时钟信号的外围设备同步执行数据采集。当时钟计数器的计数值达到设定值时,动作驱动模块同时驱动各外围设备进行数据采集,从而保证各外围设备数据采集频率的一致性。对于同一个外围设备,通过动作触发模块可以对其进行连续驱动或断续驱动,连续驱动包括将外围设备每次采集数据所需的时长作为驱动间隔时长,当外围设备上一次数据采集结束后,立即驱动外围设备进行下一次数据采集。断续驱动则是驱动外围设备进行数据采集的间隔时长大于外围设备每次采集数据所需的时长,当外围设备上一次数据采结束后,停止一定时间后再进行下一次驱动,在此不再赘述。
更进一步地,参照图4,图4为本申请实施例提供的又一数据同步系统结构示意图,基于图4,外围设备还包括存储模块,用于存储外围设备采集的数据,以及时钟计数器在外围设备采集数据的过程中生成的时钟计数值,即目标时钟计数值。主控模块还包括数据读取子模块,该数据读取子模块与各外围设备中的存储模块连接,用于读取各外围设备中的存储模块中存储的数据。主控模块中的数据读取子模块读取数据存储模块中缓存的数据以及对应的目标时钟计数值,主控模块根据读取的目标时钟计数值对齐不同外围设备采集的数据的时间轴,从而实现对各个外围设备采集的数据的同步。主控模块中的数据读取子模块在读取数据存储模块中缓存的数据时,可以是实时读取,也可以是每隔预设时长定时读取,当定时读取且有多个存储模块时,读取不同的存储模块中缓存的数据的间隔时长可以相同,也可以不同,在此不做具体限定。可以理解的是,该存储模块包括一个或多个,当包括一个数据存储模块时,将各个外围设备采集的数据及对应的目标时钟计数值统一存储到同一存储模块中进行缓存,当包括多个数据存储模块时,将不同的外围设备采集的数据及对应的目标时钟计数值存放到不同的存储模块中分别进行缓存,在此不再赘述。
进一步地,以下以深度相机和激光雷达作为外围设备为例,对本实施例提供的数据同步系统进行详细说明:假设深度相机一秒钟可以采集30帧图像,激光雷达一秒钟可以采集包含1万个数据点的点云,二者采集数据的节奏不同,例如深度相机每间隔1s采集一次数据,每次采集数据用时1s采集30帧图像,激光雷达每间隔3s采集一次数据,每次采集数据用时3s采集一帧包含3万各数据点的点云图像。当按照各自的时钟系统进行数据采集时,在数据采集频率也不同的情况下,后续在对深度相机和激光雷达采集的数据进行处理时,对于深度相机采集的图像和激光雷达采集的点云,难以确定哪一帧图像对应哪些点云数据点,从而导致数据不同步。基于本申请实施例提供的数据同步系统,数据采集和同步的具体过程例如,若深度相机每间隔1s采集一次数据,且在第46个时钟信号时(即时钟计数器生成的时钟计数值为46)采集了数据A,此时深度相机中时钟计数器生成的时钟计数值距离上次采集数据时的变化量对应的累计时长刚好达到1s,而激光雷达同样是每间隔1s采集一次数据,且在第50个时钟信号时采集了数据B,此时激光雷达中的时钟计数器生成的时钟计数值距离激光雷达上次采集数据时的变化量对应的累计时长也刚好达到1s,则将深度相机采集的数据A和对应的目标时钟计数值46,以及激光雷达采集的数据B和对应的目标时钟计数值50,保存到存储模块中。主控模块中的数据读取子模块读取数据存储模块中缓存的数据,根据目标时钟计数值46和50,对齐数据A和数据B的时间轴,从而实现深度相机采集的每帧图像和激光雷达采集的点云数据的数据同步。可知地,深度相机和激光雷达等不同的外围设备采集数据的间隔时长可以相同,也可以不同,上述时间间隔和采集数据所需时长仅用于示例性说明,不同外围设备采集数据的实际间隔时长,以及每次采集数据所需的时长可以更长或更短,在此不做限定。
同样以深度相机和激光雷达作为外围设备为例,当实现各外围设备同步采集数据时,深度相机和激光雷达采集数据的节奏不同,则可以每间隔设定时长同时驱动深度相机和激光雷达进行数据采集,例如,每隔10s采集一次数据,当时钟计数值的变化量对应的累计时长达到10s时,同时驱动深度相机和激光雷达进行数据采集,从而保证数据采集的同步。而数据采集的间隔时长,可以基于外围设备中,数据采集周期较长的设备的间隔时间进行自定义设置,在此不做限定。
在本实施实施例中,动作触发模块通过时钟计数器生成的时钟计数值驱动外围设备进行数据采集,使得外围设备采集的数据具有统一的时钟参考,便于后续对不同外围设备采集的数据的同步。
进一步地,通过动作触发模块,可以同时驱动各个外围设备进行数据,保证数据采集的同步,从而确保不同外围设备采集的数据的同步,也可以异步驱动各个外围设备进行数据采集,基于各外围设备采集数据时对应的时钟计数值,同步不同外围设备采集的数据,且对外围设备采集数据的同步,不受外围设备数量的影响,确保了系统的稳定性和鲁棒性。
本申请实施例还提供一种数据同步方法,可以应用于机器人的数据同步系统,该数据同步系统包括机器人主控模块和多个外围设备,主控模块与多个外围设备连接。参照图5,图5为本申请实施例提供的数据同步方法的流程示意图之一,该数据同步方法包括以下步骤:
步骤100,利用所述主控模块生成基准时钟信号,并利用各所述外围设备生成所述基准时钟信号的时钟计数值;
本申请实施例提供的数据同步方法可应用于机器人,该机器人包括主控模块和和多个外围设备,外围设备中包括时钟计数器,其中,主控模块中设有时钟发生器,外围设备中包括时钟计数器。首先,通过时钟发生器生成基准时钟信号,该基准时钟信号是包含有高低电平的脉冲信号,外围设备中的时钟计数器通过统计高电平或低电平的脉冲信号的数量,生成时钟计数值。通过时钟发生器生成基准时钟信号作为外围设备的参考时钟,从而建立各外围设备的统一参考时间,并利用时钟计数器统计时钟发生器产生的时钟信号的数量,从而生成时钟计数值。
步骤200,根据所述时钟计数值驱动各所述外围设备采集数据;
可知地,时钟发生器是按照一定频率生成时钟信号的,生成的时钟信号中,相邻的两个高电平脉冲信号之间,或者相邻的两个低电平脉冲信号之间,或者相邻的高电平和低电平脉冲信号之间,代表的间隔时长是一定的。根据生成的时钟计数值驱动各外围设备进行数据采集,使得采集的数据具有以基准时钟信号为统一标准的参考时钟。在驱动外围设备进行数据采集时,可以是同时驱动各个外围设备进行数据,保证数据采集的同步,从而确保不同外围设备采集的数据的同步,也可以按照不同外围设备执行数据采集的频率和数据采集时的节奏,异步驱动各个外围设备进行数据采集,基于各外围设备采集数据时对应的时钟计数值,同步不同外围设备采集的数据。
在一个实施例中,各外围设备采集数据的频率可以相同,也可以不同,不同的外围设备以时钟计数值为参考基准进行数据采集,具有统一的时钟参考而又相互独立,在采集数据时互不影响,从而使得对外围采集数据的同步不受外围设备数量的影响。时钟计数器可以有多个,不同的外围设备以不同的时钟计数器生成的时钟计数值为参考,从而保证外围设备数据采集的独立性。
步骤300,利用所述主控模块读取各所述外围设备采集的数据,以及所述时钟计数值中所述外围设备采集数据时生成的目标时钟计数值,并根据所述目标时钟计数值同步各所述外围设备采集的数据。
进一步地,利用主控模块读取各个外围设备采集的数据,以及各个外围设备在采集数据时,时钟计数器生成的目标时钟计数值,从而确定数据采集时间,基于该目标时钟计数值,可以将数据采集时间转换到时钟发生器对应的标准时间,基于该标准时间对齐不同外围设备采集的数据的时间轴,实现数据同步。
具体地,同样以深度相机和激光雷达作为外围设备为例,假设激光雷达在第30个时钟信号的时候采集到距离数据a,在第35个时钟信号的时候采集到距离数据为b,在第1000个时钟信号的时候采集到距离数据为c;深度相机在第20到800个时钟信号的时候采集一帧数据,并标记为数组A,在第800到1500个时钟信号的时候采集一帧数据,并标记为数组B。那么根据两个外围设备采集数据时对应的时钟计数值,可以对齐数据a,b,c和数组A、B之间的时间轴,从而可以得知,激光雷达采集的数据a、b是和深度相机采集的第一帧数据(即数组A)同步的,而激光雷达采集的数据c是和深度相机采集的第二帧数据(即数组B)同步的。
需要说明的是,当时钟计数器有多个时,不同的外围设备以不同的时钟计数器生成的时钟计数值为参考,基准时钟信号传递到不同的时钟计数器的时间是不同,也即,基准时钟信号的传递存在延时,因此,可以通过实验手段确定基准时钟信号传递到不同的时钟计数器中时的延时时间。在对齐数据的时间轴时,在基准时钟信号的基础上添加信号传递产生的延时时间,从而确保数据同步的准确性。
在本实施例中,通过生成可供各个外围设备参考的基准时钟信号,并生成该基准时钟信号的时钟计数值驱动各外围设备进行数据采集,根据各外围设备采集数据时的时钟计数值可以对齐采集的数据的时间轴,从而快速实现对各外围设备采集的数据的同步,且不受外围设备数量的影响,解决了机器人外围设备采集数据时间不同步的问题。
本申请实施例还提供一种数据同步装置,该装置与上文描述的数据同步方法可相互对应参照。
参照图6,本申请实施例还提供一种数据同步装置,包括:
时钟生成模块10,用于生成基准时钟信号,并生成所述基准时钟信号的时钟计数值;
数据采集模块20,用于根据所述时钟计数值驱动各外围设备采集数据;
数据同步模块30,用于获取各所述外围设备采集的数据,以及所述时钟计数值中所述外围设备采集数据时生成的目标时钟计数值,并根据所述目标时钟计数值同步各所述外围设备采集的数据。
本申请实施例提供的数据同步装置,通过生成可供各个外围设备参考的基准时钟信号,并生成该基准时钟信号的时钟计数值驱动各外围设备进行数据采集,根据各外围设备采集数据时的时钟计数值可以对齐采集的数据的时间轴,从而快速实现对各外围设备采集的数据的同步,且不受外围设备数量的影响,解决了机器人外围设备采集数据时间不同步的问题。
图7示例了一电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(Communications Interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行如下方法:
利用所述主控模块生成基准时钟信号,并利用各所述外围设备生成所述基准时钟信号的时钟计数值;
根据所述时钟计数值驱动各所述外围设备采集数据;
利用所述主控模块读取各所述外围设备采集的数据,以及所述时钟计数值中所述外围设备采集数据时生成的目标时钟计数值,并根据所述目标时钟计数值同步各所述外围设备采集的数据。
此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
进一步地,本申请实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的数据同步方法,例如包括:
利用所述主控模块生成基准时钟信号,并利用各所述外围设备生成所述基准时钟信号的时钟计数值;
根据所述时钟计数值驱动各所述外围设备采集数据;
利用所述主控模块读取各所述外围设备采集的数据,以及所述时钟计数值中所述外围设备采集数据时生成的目标时钟计数值,并根据所述目标时钟计数值同步各所述外围设备采集的数据。
另一方面,本申请实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的数据同步方法,例如包括:
利用所述主控模块生成基准时钟信号,并利用各所述外围设备生成所述基准时钟信号的时钟计数值;
根据所述时钟计数值驱动各所述外围设备采集数据;
利用所述主控模块读取各所述外围设备采集的数据,以及所述时钟计数值中所述外围设备采集数据时生成的目标时钟计数值,并根据所述目标时钟计数值同步各所述外围设备采集的数据。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的数据同步方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
以上实施方式仅用于说明本申请,而非对本申请的限制。尽管参照实施例对本申请进行了详细说明,本领域的普通技术人员应当理解,对本申请的技术方案进行各种组合、修改或者等同替换,都不脱离本申请技术方案的精神和范围,均应涵盖在本申请的权利要求范围中。
Claims (10)
1.一种数据同步系统,其特征在于,所述数据同步系统包括主控模块和多个外围设备,所述主控模块与所述多个外围设备连接,其中:
所述主控模块用于生成基准时钟信号;所述外围设备用于生成所述基准时钟信号的时钟计数值;
所述主控模块还用于读取各所述外围设备采集的数据和所述时钟计数值中所述外围设备采集数据时生成的目标时钟计数值,并根据各所述目标时钟计数值同步各所述外围设备采集的数据。
2.根据权利要求1所述的数据同步系统,其特征在于,所述主控模块包括时钟发生器,用于生成所述基准时钟信号;
所述外围设备包括时钟计数器以及时钟透传模块,所述时钟计数器与所述时钟透传模块连接;所述时钟计数器用于接收所述基准时钟信号并生成所述基准时钟信号的时钟计数值;
所述多个外围设备包括依次连接的N个外围设备;其中,第1个外围设备的时钟计数器与所述时钟发生器连接,第M个外围设备的时钟计数器与第M-1个外围设备的时钟透传模块连接,所述时钟透传模块用于将所述基准时钟信号从第M-1个外围设备中的时钟计数器传输给第M个外围设备中的时钟计数器,并保持所述基准时钟信号的周期和相位不变,1<M≤N,M与N为正整数。
3.根据权利要求1所述的数据同步系统,其特征在于,所述主控模块包括时钟发生器,用于生成所述基准时钟信号,所述外围设备包括时钟计数器,各所述外围设备中的时钟计数器与所述时钟发生器连接,用于接收所述基准时钟信号并生成所述基准时钟信号的时钟计数值。
4.根据权利要求2或3所述的数据同步系统,其特征在于,所述外围设备还包括动作触发模块,所述动作触发模块与所述时钟计数器连接,其中:
所述动作触发模块在所述时钟计数值的变化量对应的累计时长为预设时长时,驱动所述外围设备采集数据。
5.根据权利要求4所述的数据同步系统,其特征在于,所述外围设备还包括存储模块,所述存储模块与所述动作触发模块连接,用于存储所述外围设备采集的数据,以及所述外围设备采集数据时所述时钟计数器的目标时钟计数值。
6.根据权利要求5所述的数据同步系统,其特征在于,所述主控模块还包括数据读取子模块,其中:
所述数据读取子模块与各所述外围设备的存储模块连接,用于读取所述存储模块中存储的各所述外围设备采集的数据和所述目标时钟计数值;
所述主控模块具体用于根据各所述目标时钟计数值对齐各所述外围设备采集的数据的时间轴,以同步各所述外围设备采集的数据。
7.一种数据同步方法,应用于数据同步系统,其特征在于,所述数据同步系统包括主控模块和多个外围设备,所述主控模块与所述多个外围设备连接,所述数据同步方法包括以下步骤:
利用所述主控模块生成基准时钟信号,并利用各所述外围设备生成所述基准时钟信号的时钟计数值;
根据所述时钟计数值驱动各所述外围设备采集数据;
利用所述主控模块读取各所述外围设备采集的数据,以及所述时钟计数值中所述外围设备采集数据时生成的目标时钟计数值,并根据所述目标时钟计数值同步各所述外围设备采集的数据。
8.一种数据同步装置,其特征在于,所述数据同步装置包括:
时钟生成模块,用于生成基准时钟信号,并生成所述基准时钟信号的时钟计数值;
数据采集模块,用于根据所述时钟计数值驱动各外围设备采集数据;
数据同步模块,用于各所述外围设备采集的数据,以及所述时钟计数值中所述外围设备采集数据时生成的目标时钟计数值,并根据所述目标时钟计数值同步各所述外围设备采集的数据。
9.一种电子设备,所述电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求7所述数据同步方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求7所述数据同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210418989.2A CN114827173B (zh) | 2022-04-20 | 2022-04-20 | 数据同步系统、方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210418989.2A CN114827173B (zh) | 2022-04-20 | 2022-04-20 | 数据同步系统、方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114827173A true CN114827173A (zh) | 2022-07-29 |
CN114827173B CN114827173B (zh) | 2023-10-10 |
Family
ID=82505396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210418989.2A Active CN114827173B (zh) | 2022-04-20 | 2022-04-20 | 数据同步系统、方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114827173B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117545060A (zh) * | 2023-11-10 | 2024-02-09 | 北京唯得科技有限公司 | 一种基于5g移频双路系统的主从设备中的数据传输方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107402597A (zh) * | 2017-07-31 | 2017-11-28 | 上海联影医疗科技有限公司 | 一种数据与时钟对齐的方法、装置、介质及磁共振设备 |
CN111416617A (zh) * | 2020-03-18 | 2020-07-14 | 广州土圭垚信息科技有限公司 | 一种时钟同步方法、装置及电子设备 |
CN112181273A (zh) * | 2020-10-13 | 2021-01-05 | 恒玄科技(上海)股份有限公司 | 数据同步系统及音频设备 |
CN112769516A (zh) * | 2020-12-24 | 2021-05-07 | 深兰人工智能(深圳)有限公司 | 数据同步采集方法、装置、电子设备及存储介质 |
CN112865902A (zh) * | 2020-12-24 | 2021-05-28 | 深兰人工智能(深圳)有限公司 | 数据采集和时间同步方法、装置、电子设备及存储介质 |
-
2022
- 2022-04-20 CN CN202210418989.2A patent/CN114827173B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107402597A (zh) * | 2017-07-31 | 2017-11-28 | 上海联影医疗科技有限公司 | 一种数据与时钟对齐的方法、装置、介质及磁共振设备 |
CN111416617A (zh) * | 2020-03-18 | 2020-07-14 | 广州土圭垚信息科技有限公司 | 一种时钟同步方法、装置及电子设备 |
CN112181273A (zh) * | 2020-10-13 | 2021-01-05 | 恒玄科技(上海)股份有限公司 | 数据同步系统及音频设备 |
CN112769516A (zh) * | 2020-12-24 | 2021-05-07 | 深兰人工智能(深圳)有限公司 | 数据同步采集方法、装置、电子设备及存储介质 |
CN112865902A (zh) * | 2020-12-24 | 2021-05-28 | 深兰人工智能(深圳)有限公司 | 数据采集和时间同步方法、装置、电子设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117545060A (zh) * | 2023-11-10 | 2024-02-09 | 北京唯得科技有限公司 | 一种基于5g移频双路系统的主从设备中的数据传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114827173B (zh) | 2023-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107231533B (zh) | 一种同步曝光方法、装置及终端设备 | |
CN114827173A (zh) | 数据同步系统、方法、装置、设备及存储介质 | |
CN107588726B (zh) | 光学计测装置 | |
CN105763280A (zh) | 一种时间标定板之间的时钟同步方法和装置 | |
CN115834793B (zh) | 视频模式下的图像数据传输控制方法 | |
DE112012006890T5 (de) | Korrekturparameterberechungsgerät, System, Korrekturparameterberechnungsverfahren, und Computerprogramm | |
CN111813716A (zh) | 多传感器数据同步、电子设备及存储介质 | |
CN110212916A (zh) | 一种广分布低抖动同步时钟分发系统和方法 | |
CN106656642A (zh) | 一种往返时延的测量方法、装置及系统 | |
CN111107248A (zh) | 一种多路视频采集的同步系统、方法和采集控制器 | |
CN114598786A (zh) | 多摄像头的帧同步控制方法及自行走设备 | |
US4870664A (en) | Continuous counting device | |
CN114006672B (zh) | 一种车载多传感器数据同步采集方法及系统 | |
CN209433024U (zh) | 一种时钟同步电路和海底地震仪 | |
EP4202498A1 (en) | Lidar controlling method and device, electronic apparatus and storage medium | |
CN104918037A (zh) | 3d图像显示装置和方法以及移动终端 | |
CN116708991A (zh) | 一种多视觉传感器的同步曝光系统和方法 | |
CN113099211A (zh) | 一种具备时间同步的立体视觉数据采集系统及方法 | |
CN112461932B (zh) | 对象扫查方法、装置及存储介质 | |
CN116505919B (zh) | 一种脉冲信号捕获电路、微处理芯片 | |
CN113995431B (zh) | Ct扫描系统、方法、电子设备及存储介质 | |
CN108521861A (zh) | 图像同步存储方法、图像处理设备 | |
RU2765835C1 (ru) | Способ и система децентрализованной автономной синхронизации взаимодействия цифровых мобильных объектов | |
CN115884026A (zh) | 一种用于分布式麦克风阵列采集声学信息的时序同步方法 | |
WO2023041966A1 (en) | Image synchronization method and apparatus, and device and computer storage medium |
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 |