一种用于无人驾驶获取数据同步的方法及装置与流程

文档序号:18890288发布日期:2019-10-15 21:42阅读:309来源:国知局
一种用于无人驾驶获取数据同步的方法及装置与流程

本发明设涉及机动车技术领域,具体涉及无人驾驶车辆技术领域,特别是一种用于无人驾驶获取数据同步的方法及装置。



背景技术:

近年来,随着计算机技术以及传感器技术的发展,使得无人驾驶汽车越来越贴近人们的曰常生活,在增强高速公路安全、缓解交通拥堵、减少空气污染等领域,无人驾驶会带来颠覆性的改善,具有广阔的应用前景。由于无人驾驶面临一系列复杂环境的影响,单一的传感器无法满足在各样环境下感知周围环境的需求,因此需要多个传感器协同工作。不同类型的传感器由于硬件参数不同,采集周期和采集频率存在一定的差异,传回来的数据存在一定的时间差,不同步的数据会对后期的数据融合和算法开发产生极大的影响。而现有的无人驾驶感知系统都从软件的层面对传感器传回的数据进行二次的处理之后发布,并未实际解决硬件上存在的时间差的问题。



技术实现要素:

为了解决现有技术存在的上述问题,本发明目的在于提供一种能对无人驾驶感知系统中通过激光雷达、视觉和惯性测量单元获得的数据进行同步处理的方法和装置。

本发明是通过以下技术方案来实现的:

一种用于无人驾驶获取数据同步的方法,无人驾驶车辆设置有至少一个惯性测量单元(imu)、激光雷达传感器和摄像头传感器,以及至少一台工业计算机和一块硬件同步电路板,方法包括:

步骤一,硬件同步电路板获取所述至少一个惯性测量单元中采集的数据信息以及该传感器发送的一定频率的脉冲信号;

将获得的惯性测量单元发送的脉冲信号降低频率至预设值之后发送给激光雷达传感器;

步骤二,设置摄像头传感器分频数为惯性测量单元采集频率除以摄像头传感器采集频率;

步骤三,利用获得的惯性测量单元采集信息得到当前惯性测量单元已发送数据包个数,在其为摄像头传感器分频数整数倍时向摄像头传感器发送触发信号,控制摄像头传感器开始采集图像;

步骤四,对已经得到的惯性测量单元发送数据包个数执行以下处理步骤:利用数据包个数得到一个含有utc时间的nmea语句,其中utc为hh:mm:ss格式,hh为小时数,mm为分钟数,ss为秒数,将hh和mm转换成秒数,即分别乘以3600和60,同ss相加得到一个总秒数s,令s等于当前得到的imu已经发送的数据包个数;

激光雷达传感器在收到惯性测量单元降频脉冲信号和nmea语句时进行时间同步,步骤一先执行,步骤二三四同步执行,不分先后顺序。

作为进一步地改进,本发明所述的惯性测量单元、激光雷达传感器和摄像头传感器均将各自采集的数据信息发送给工业计算机,且所有数据包均带有时间戳。

作为进一步地改进,本发明所述的激光雷达传感器在收到惯性测量单元降频脉冲信号和nmea语句时进行时间同步,主要是指在脉冲信号上升沿到达时,用nmea语句中的utc时间覆盖激光雷达原先的时间,并根据该时间逆向推算出激光雷达采集该数据时惯性测量单元发送的数据包数,结合已经收到的采集该数据包数据的时间,将该时间作为激光雷达该数据的时间戳。

作为进一步地改进,本发明所述的具体步骤为利用串口通讯在每一次惯性测量单元发送的数据包个数加一时给激光雷达发送nmea语句,此外,给激光雷达发送一个频率为1赫兹的脉冲触发信号,在信号上升沿到来时进行一次时间校正,即用nmea语句中的utc时间来覆盖原先的激光雷达数据的时间,利用这个时间推算出总秒数,从而推理得当前时刻imu所发送的数据包的数值,再通过已经获得的对应数值的数据包采样时间t1,来赋值给当前的激光雷达数据,同时记录此时的系统时间t2,在下一个脉冲信号的上升沿到来前,每次传来的激光雷达数据的系统时间记为ta,则将该数据的时间戳记为t1+ta-t2,每秒钟重复上述操作。

作为进一步地改进,本发明为保证惯性测量单元数据时间戳的精准性,避免由于系统时间的误差对整个系统产生影响,对其传回数据的时间戳做如下修改:设置惯性测量单元传回数据的格式,使其传回的数据中含有采集数据时传感器自身记录的采集时刻,记录系统稳定工作开始时惯性测量单元传回来的第一个数据包的系统时间t3和imu自身记录的采集时间t4,接下来每此传回来的第i个数据包的系统时间ti,则第i个数据包的时间戳重新赋值为t4+ti-t3。

作为进一步地改进,本发明所述的摄像头传感器处于被动触发状态,在惯性测量单元触发信号到来前并不主动采集图像,在惯性测量单元触发信号的控制下仅采集单张图像然后等待下一个触发信号到来再继续采集下一张图像。

本发明还公开了一种无人驾驶获取数据同步的方法的装置,所述装置包括:

电源模块、输入模块、控制模块、转换模块和输出模块,其中:

所述电源模块,用于对于输入电源的稳压和电压转换以及对输出电源给传感器供电;

所述输入模块,用于接收惯性测量单元采集到的数据信息,以及惯性测量单元发出的一定频率的用于同步的脉冲信号;

所述控制模块,用于对从输入模块获取到的信息进行分析处理,同时控制输出模块的信号输出;

所述转换模块,用于转换数据信息格式类型以满足不同通信方式的需求;

所述输出模块,对除惯性测量单元外的各类传感器输出信息,由控制模块决定其信息内容和输出时间;

所述的输入模块分别与控制模块、转换模块和输出模块相连,所述的转换模块分别与输出模块和控制模块相连。

作为进一步地改进,本发明所述控制模块对数据模块的信息分析得到惯性测量单元已经发送数据包个数,达到一定值时,通过输出模块触发摄像机传感器进行图像采集。

作为进一步地改进,本发明控制模块将惯性测量单元已发送数据包个数转换成nmea语句发送通过输出模块发送给激光雷达传感器,同时控制模块将惯性测量单元发送脉冲信号降频后发送给激光雷达传感器,在其上升沿时刻发送进行时间同步。

作为进一步地改进,本发明所述的控制模块不限于某一型号的单片机,也包括树莓派一类的微型计算机、arduino一类的微型控制器。

相比于现有技术,本发明的有益效果在于:

1.本发明对惯性测量单元、激光雷达和视觉摄像头传感器同时尽行了同步,同步的传感器类型多,获得的数据种类丰富。

2.本发明采用硬件电路对信号进行处理,由于硬件本身采用时钟精度高的控制器,由硬件本身产生的数据间的时间差为微秒级,同步精度高。

3.本发明采用计算时间差,从而重新得到时间戳的方式,避免了由于系统时钟误差和系统通信机制导致的数据冲突造成的数据时间差不精准的问题,提高了数据同步的精度。

4.本发明采用惯性测量单元采集数据时传感器自身记录的时刻而非接收到数据时的系统时间作为数据的起始时间,避免了由于传输延迟造成的误差。

5.本发明采用惯性测量单元自身产生的脉冲信号作为其他传感器的触发信号,由于惯性测量单元内部时钟精度高,所以产生的信号可靠性高。同时相比于现有的一些利用gps的信号作为触发信号的方案比,惯性测量单元并不依赖外部信号输入,对不同复杂环境的适应能力强(例如地下、山区等)

6.本发明采用模块化各功能单元,可将各模块集成在比较小的一个空间上,集成度高体积小,易于移植进不同无人驾驶系统。

附图说明

通过阅读参照以下附图所做的对非限制性实施所做的详细描述,本申请的其它特征、目的和优点将会更加明显:

图1是本发明方法的系统框架图;

图2是本发明装置的模块化结构框图;

图3是应用本发明装置用于无人驾驶获取数据同步方法的实例示意图。

具体实施方式

本发明公开了一种用于无人驾驶获取数据同步的方法,具体步骤如下:

第一步,接收惯性测量单元发送来的采集信息,包括角速度、加速度和已经发送的数据包个数等以及用于同步的固定频率的脉冲信号。

第二步,对摄像头传感器进行同步,将摄像头传感器设置成外部触发模式,确保其可以在外部有上升沿信号的时候触发摄像头传感器采集图像,计算惯性测量单元已发送的数据包个数,当其为摄像头传感器分频数整数倍时,对摄像头传感器输出一个高电平的脉冲触发信号,触发摄像头传感器进行图像采集,其中摄像头传感器分频数为惯性测量单元发送的脉冲触发频率除以摄像头传感器采集频率得到的值。

第三步,对激光雷达进行同步,计算惯性测量单元已经发送的数据包个数,利用数据包个数得到一个含有utc时间的nmea语句,其中utc为hh:mm:ss格式,hh为小时数,mm为分钟数,ss为秒数,将hh和mm转换成秒数,即分别乘以3600和60,同ss相加得到一个总秒数s,令s等于当前得到的惯性测量单元已经发送的数据包个数,利用串口通讯在每一次惯性测量单元发送的数据包个数加一的时候给激光雷达发送nmea语句,此外,给激光雷达发送一个频率为1赫兹的脉冲触发信号,在信号上升沿到来时进行一次时间校正,即用nmea语句中的utc时间来覆盖原先的激光雷达数据的时间,利用这个时间推算出总秒数,从而推理得当前时刻惯性测量单元所发送的数据包的数值。再通过已经获得的惯性测量单元对应数值的数据包采样时间t1,来赋值给当前的激光雷达数据,同时记录此时的系统时间t2,在下一个脉冲信号的上升沿到来前,每次传来的激光雷达数据的系统时间记为ta,则将该数据的时间戳记为t1+ta-t2,每秒钟重复上述操作。

以上步骤先执行第一步,接下来第二、三步同时进行,并不分先后的顺序。以上各传感器传回的数据都有时间戳,默认值为工业计算机接收到对应信息时的系统时间,其中摄像头传感器采集到图像信息的时间戳和激光雷达传回点云数据的时间戳需经上述第二步、第三步中同步操作修改后重新赋值。

为保证惯性测量单元数据时间戳的精准性,避免由于系统时间的误差对整个系统产生影响,对惯性测量单元传回数据的时间戳做如下修改:设置惯性测量单元传回数据的格式,使其传回的数据中含有采集数据时惯性测量单元传感器自身记录的采集时刻,记录系统稳定工作开始时惯性测量单元传回来的第一个数据包的系统时间t3和惯性测量单元自身记录的采集时间t4,接下来每此传回来的第i个数据包的系统时间ti,则第i个数据包的时间戳重新赋值为t4+ti-t3。

本发明相应一种用于同步无人驾驶获取数据的方法提供了一种装置,装置包括:电源模块,用于对于输入电源的稳压和电压转换以及对输出电源给传感器供电;输入模块,用于接收惯性测量单元采集到的数据信息,以及惯性测量单元发出的一定频率的用于同步的脉冲信号;控制模块,用于对从输入模块获取到的信息进行分析处理,同时控制输出模块的信号输出;转换模块,用于转换数据信息格式类型以满足不同通信方式的需求;输出模块,对除惯性测量单元外的各类传感器输出信息,由控制模块决定其信息内容和输出时间。其中,控制模块不限于某一型号的单片机,也包括树莓派一类的微型计算机、arduino一类的微型控制器等。其中,所述的输入模块分别与控制模块、转换模块和输出模块相连,所述的转换模块分别与输出模块和控制模块相连。

控制模块对数据模块的信息分析得到惯性测量单元已经发送数据包个数,达到一定值时,通过输出模块触发摄像机传感器进行图像采集;控制模块将惯性测量单元已发送数据包个数转换成nmea语句发送通过输出模块发送给激光雷达传感器,同时控制模块将惯性测量单元发送脉冲信号降频后发送给激光雷达传感器,在其上升沿时刻发送进行时间同步。

下面结合附图和实施例对本申请作进一步的详细说明。可以理解是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。下面将参考附图来详细说明本申请。

图1是本发明方法的系统框架图;系统框架包括摄像头传感器、激光雷达和惯性测量单元三种类型的传感器,本发明还包括硬件同步电路和工业计算机,接收从惯性测量单元发送的用于同步的脉冲信号,通过硬件同步电路的分析处理输出控制信号给摄像头传感器和激光雷达传感器。惯性测量单元采集的数据信息通过硬件同步电路板的转换发送给工业计算机。摄像头传感器和激光雷达传感器通过各种连接方式同工业计算机进行通信,包括有线、无线通信链路、网线或者usb数据线等等,将采集到的数据信息传送给工业计算机。

图1中的激光雷达传感器、摄像头传感器、惯性测量单元传感器和工业计算机数量仅仅是示意性的。根据实现需要,可以具有任意数目的激光雷达传感器、摄像头传感器、惯性测量单元传感器和工业计算机。

图2是本发明装置的模块化结构框图;图2将系统不同部分模块化,进一步解释了本申请的用于无人驾驶采集数据同步的方法,其中电源模块,用于为整个系统提供稳定的电源,包括将外部电源转换为稳定的直流电源给控制模块供电和为摄像头传感器、激光雷达传感器和惯性测量单元供电。从输入模块接收惯性测量单元采集到的数据信息,以及惯性测量单元发出的一定频率的用于同步的脉冲信号,发送给控制模块,通过预设的分频数对从输入模块处接收的脉冲信号分频后发送给激光雷达用于控制其进行时间同步的时刻。

同时,控制模块对处输入的惯性测量单元采集信息进行分析得到惯性测量单元已经发送的数据包总数,在该数值到达预设摄像头传感器分频数(惯性测量单元采集频率除以摄像头传感器采集频率)的整数倍时,摄像头传感器输出发送一个上升沿信号触发摄像头传感器进行拍照,此外控制模块利用数据包总数得到一个含有utc时间的nmea语句,其中utc为hh:mm:ss格式,hh为小时数,mm为分钟数,ss为秒数,将hh和mm转换成秒数,即分别乘以3600和60,同ss相加得到一个总秒数s,令s等于当前得到的惯性测量单元已经发送的数据包个数,通过激光雷达输出将nmea语句发送给激光雷达,在激光雷达传感器输出发送的脉冲信号中上升沿到来时进行一次时间校正,即用nmea语句中的utc时间来覆盖原先的传感器数据的时间,利用这个时间推算出总秒数,从而推理得当前时刻惯性测量单元所发送的数据包的数值。再根据usb输出的惯性测量单元已经采集到的数据时间逆向推算出激光雷达传感器数据时间,保证其时间与惯性测量单元同步。在数据传送中,存在ttl和rs232两种不同电信号格式,转换模块用于对前述数据传输流程中出现的不同电信号格式进行转换。

图3是应用本发明装置用于无人驾驶获取数据同步方法的实例示意图,从外部接入12v电源并联分两路,一路接到电源输入模块,转换成5v电压输出给控制芯片供电,另一路接入电源输出模块,稳压后通过12vout端口输出给摄像头传感器、激光雷达传感器供电,即图中所示dc引脚连接部分。惯性测量单元传感器以串口通信方式,发送rs232信号到转换模块,经过转换模块转换成ttl电平信号后通过其惯性测量单元tx端发送到控制芯片的串口1信号接收端,即rx1端。控制模块的控制芯片解析后在上述方法所示适合阶段,通过控制芯片gpio引脚,即pa2,发送上升沿信号到摄像头传感器的引脚控制端syncin,触发摄像头传感器采集图像。同时控制芯片将rx1端接收到的信息按上述方法转换成nmea语句,通过串口2的发送端,即tx2发送到转换模块,转换成rs232电平信号后发送到激光雷达模块。

3惯性测量单元模块产生固定频率的脉冲信号,发送给控制芯片降频至预设的激光雷达所需同步脉冲频率后,通过控制芯片的gpio引脚,即图3中所示pa3,发送到激光雷达传感器。惯性测量单元模块的电源从控制芯片处获得。

除惯性测量单元外的传感器直接同工业计算机相连,惯性测量单元模块通过其串口传输端,tx232和rx232,发送rs232电平信号至usb转换模块,经转换模块转换成usb信号发送至工业计算机。

图3中给出的传感器个数仅为示意,即摄像头传感器、激光雷达传感器和惯性测量单元个数至少为1个,可根据实际需要扩展传感器数量。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1