logo好方法网

多个IMU时间同步方法、装置、终端


技术摘要:
本发明实施例公开了一种多个IMU时间同步方法、装置、终端,该方法包括:基于相机对多个IMU进行外参标定以获取各IMU之间的外部参数并将各IMU获取到的角度数据转换至同一坐标系下后计算各IMU在预先选取的姿态角的角度变化值;以采样频率最大的IMU的时间戳为基准,根据当  全部
背景技术:
随着惯性测量单元(以下简称IMU)成本的不断下降以及集成式惯性传感器的出 现,越来越多的机器人等平台都配备了多个IMU。通常地,这些平台的共同之处主要在于,将 主IMU用于定位和对齐(即安装在靠近重心的位置并与平台的主轴对齐),辅助IMU安装在受 阻程度较小的地方。对于大多数平台,这两个位置有很大的区别,为了融合多个IMU的数据, 需要对它们进行时间戳的对齐操作。 然而,就目前的常见的多个IMU的时间戳对齐或称同步主要有两种: 一是采用硬件同步的方法,例如已有的专利公开号为CN110217178A的专利申请《一种 基于硬件同步的无人驾驶感知系统及其工作方法》,即利用高精度的硬件来解决多个IMU的 数据同步问题,当然还有如专利公开号为CN102736591A的《一种分布式POS子IMU数据同步 采集系统》等等。这类方法虽然精度较高,但其成本也高,对于大部分用户或企业而言并不 太适合等。 二是采用软件同步的方法,主要是根据两个IMU的不同时间戳信息,采用线程锁的 方式来对齐两组IMU的数据,该方法虽然比较方便,但是却无法达到高精度需求,对于一些 要求高精度的场合并不适用。此外,还有一些其他的软件与硬件结合的时间同步方法,例如 专利公开号为CN109729277A的《多传感器采集时间戳同步装置》在解决时间同步的问题时, 主要是通过串口传输来实现时间戳同步而且每个传感器都能获取到时间戳信息,而这一点 对于相机自身不具有时间戳的场景来说无法适用,具有较大的局限性;又例如,专利公开号 为CN109951248A的《一种水下传感器网络时间同步方法》其主要是利用待同步传感器节点 与邻居节点交换数据包的发送/接受钟面时刻,拟合各邻居节点钟面时间与自身钟面时间 的线性回归式,不断迭代更新自身钟面时刻参数,从而实现传感器节点间的时间同步。由于 该方法需要传感器之间能进行通讯,而这点对于不具有相互通讯能力且彼此独立工作的 IMU而言也不适用,即同样具有一定的局限性等。为此,考虑到硬件成本的问题,本发明提出 一种采用软件同步却能达到较高精度的时间同步方法。
技术实现要素:
有鉴于此,本发明实施例提出一种多个IMU时间同步方法、装置、终端。 本发明的一实施例提出一种多个IMU时间同步方法,包括: 基于相机对多个IMU进行外参标定以获取各IMU之间的外部参数,并利用所述外部参数 将各IMU获取到的角度数据转换至同一坐标系下后计算各IMU在预先选取的姿态角的角度 变化值; 以采样频率最大的IMU的时间戳为基准,根据当前IMU与作为基准的IMU各自的起始时 5 CN 111580596 A 说 明 书 2/9 页 刻之间的初始时间差进行时间戳粗略同步,然后根据所述初始时间差对应的第一预设取值 范围对所述当前IMU进行第一预设次数的时间戳平移,以计算得到第一精度对应的最优时 间差;其中,每次平移后均根据所述当前IMU的所述角度变化值进行插值及数据截取,以计 算所述当前IMU与作为基准的IMU之间的角度数据累计差值,然后从多个所述累计差值中获 取最小累计差值对应的平移时间值,以作为所述第一精度对应的最优时间差; 然后根据所述第一精度的所述最优时间差对应的第二预设取值范围对所述当前IMU进 行第二预设次数的时间戳平移,以得到第二精度对应的最优时间差,如此类推,直到得到满 足预设精度对应的最优时间差,以作为所述当前IMU与作为基准的IMU之间的最终同步时 间。 进一步地,在上述的多个IMU时间同步方法中,所述“基于相机对多个IMU进行外参 标定以获取各IMU之间的外部参数,并利用所述外部参数将各IMU获取到的角度数据转换至 同一坐标系下后计算各IMU在预先选取的姿态角的角度变化值”包括: 利用标定板并基于相机对多个IMU进行外参标定,以获取每一IMU与所述相机之间的外 部参数; 根据每一IMU与所述相机之间的所述外部参数计算得到所述各IMU之间的外部参数; 从所述多个IMU中选取其中一IMU的坐标系作为基准坐标系,然后根据其他的IMU与作 为所述基准坐标系的IMU之间的所述外部参数将所述其他的IMU获取到的角度数据转换至 所述基准坐标系中; 然后在所述基准坐标系中计算每一IMU在预先选取的姿态角的角度变化值。 进一步地,在上述的多个IMU时间同步方法中,所述多个IMU包括第一IMU和第二 IMU,若所述第一IMU与所述相机之间的外部参数记为 ,所述第二IMU与所述相机之间的 外部参数记为 ,则所述第一IMU和所述第二IMU之间的外部参数 满足如下公式: 。 进一步地,在上述的多个IMU时间同步方法中,所述“以采样频率最大的IMU的时间 戳为基准,根据当前IMU与作为基准的IMU各自的起始时刻之间的初始时间差进行时间戳粗 略同步,然后根据所述初始时间差对应的第一预设取值范围对所述当前IMU进行第一预设 次数的时间戳平移”包括: 从所述多个IMU中选取采样频率最大的IMU作为角度数据插值的时间基准; 根据当前IMU的起始时刻与作为基准的IMU的起始时刻之间的初始时间差对所述当前 IMU的时间戳进行整体平移,以进行粗略同步; 从第一精度对应的所述第一预设取值范围中依次取值与所述初始时间差进行累加以 得到对应的平移时间值;所述第一预设次数等于当前取值的次数; 按照每次得到的所述平移时间值分别对所述当前IMU的时间戳进行整体平移。 进一步地,在上述的多个IMU时间同步方法中,所述“计算得到第一精度对应的最 优时间差;其中,每次平移后均根据所述当前IMU的所述角度变化值进行插值及数据截取, 以计算所述当前IMU与作为基准的IMU之间的角度数据累计差值,然后从多个所述累计差值 中获取最小累计差值对应的平移时间值,以作为所述第一精度对应的最优时间差”包括: 对于其他的每一IMU,在作为基准的IMU的各采样时刻处根据当前IMU对应的角度变化 6 CN 111580596 A 说 明 书 3/9 页 值进行角度或角速度插值,以得到所述当前IMU的含插值在内的角度数据集; 对作为基准的IMU的角度数据集和当前IMU各自的角度数据集进行等时间等数量截取, 并在每一所述采样时刻处计算当前IMU与作为基准的IMU之间的角度数据的差值并累加,以 得到当前平移对应的累计差值; 然后重复上述步骤,得到平移所述第一预设次数对应的所有累计差值; 从所有累计差值中选取出最小值,并将所述最小值作为所述第一精度对应的最优时间 差。 进一步地,在上述的多个IMU时间同步方法中,所述第二精度小于所述第一精度, 且所述“然后根据所述第一精度的所述最优时间差对应的第二预设取值范围对所述当前 IMU进行第二预设次数的时间戳平移,以得到第二精度对应的最优时间差”包括: 从所述第二精度对应的所述第二预设取值范围中依次取值与所述第一精度的最优时 间差进行累加以得到对应的平移时间值;所述第二预设次数等于当前取值的次数; 按照每次得到的所述平移时间值分别对所述当前IMU的时间戳进行整体平移,然后计 算每次平移后对应的所述累计差值并从中选取最小累计差值对应的平移时间值,以作为所 述第二精度对应的最优时间差。 进一步地,在上述的多个IMU时间同步方法中,当设置有所述多个IMU的设备在地 面上移动时,所述预先选取的姿态角为绕方向向上的Z轴的旋转角度。 本发明的另一实施例提出一种多个IMU时间同步装置,包括: 外参标定模块,用于基于相机对多个IMU进行外参标定以获取各IMU之间的外部参数, 并利用所述外部参数将各IMU获取到的角度数据转换至同一坐标系下后计算各IMU在预先 选取的姿态角的角度变化值; 初始同步计算模块,用于以采样频率最大的IMU的时间戳为基准,根据当前IMU与作为 基准的IMU各自的起始时刻之间的初始时间差进行时间戳粗略同步,然后根据所述初始时 间差对应的第一预设取值范围对所述当前IMU进行第一预设次数的时间戳平移,以计算得 到第一精度对应的最优时间差;其中,每次平移后均根据所述当前IMU的所述角度变化值进 行插值及数据截取,以计算所述当前IMU与作为基准的IMU之间的角度数据累计差值,然后 从多个所述累计差值中获取最小累计差值对应的平移时间值,以作为所述第一精度对应的 最优时间差; 精确同步计算模块,用于然后根据所述第一精度的所述最优时间差对应的第二预设取 值范围对所述当前IMU进行第二预设次数的时间戳平移,以得到第二精度对应的最优时间 差,如此类推,直到得到满足预设精度对应的最优时间差,以作为所述当前IMU与作为基准 的IMU之间的最终同步时间。 本发明的又一实施例提出一种终端,包括:处理器和存储器,所述存储器存储有计 算机程序,所述处理器用于执行所述计算机程序以实施上述的多个IMU时间同步方法。 本发明的再一实施例提出一种计算机可读存储介质,其存储有计算机程序,在所 述计算机程序被执行时,实施根据上述的多个IMU时间同步方法。 本发明实施例提出的方法通过采用纯软件的同步方法,通过获取各IMU之间的外 参,然后根据该外参信息将所有的IMU转换至同一坐标系下进行某一姿态角的角度变化分 析;通过时间戳平移算法并基于插值算法以计算各IMU之间的角度数据累计差值,并选取使 7 CN 111580596 A 说 明 书 4/9 页 差值最小的平移时间作为对应精度的最优时间差;然后按照不同的精度来逐渐缩小时间差 范围,以得到的能够满足所需精度对应的最终同步时间。相对于现有技术而言,采用本发明 实施例的方法,通过计算机软件技术实现所需精度的传感器同步,其也无需增加其他硬件, 相对于硬件同步方式可降低硬件成本。 可以解决硬件成本的问题,时间同步上也得到了极大的提高等。 附图说明 为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简 单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对本发明 保护范围的限定。在各个附图中,类似的构成部分采用类似的编号。 图1示出了本发明实施例多个IMU时间同步方法的第一流程示意图; 图2示出了本发明实施例多个IMU时间同步方法的第二流程示意图; 图3示出了本发明实施例多个IMU时间同步方法的第三流程示意图; 图4示出了本发明实施例多个IMU时间同步方法的第四流程示意图; 图5示出了本发明实施例多个IMU时间同步方法的第五流程示意图; 图6示出了本发明实施例多个IMU时间同步装置的结构示意图。 主要元件符号说明: 10-多个IMU时间同步装置;110-外参标定模块;120-初始同步计算模块;130-精确同步 计算模块。
分享到:
收藏