本发明属于激光测距技术领域,涉及一种基于fpgaidelay高精度脉冲激光测距方法。
背景技术:
目前激光脉冲测距法利用脉冲激光器发射一个或一列很窄的激光脉冲,通过测量回波与发射主波之间的脉冲延迟时间来测量距离,如图1所示即测量飞行时间法。在灵敏度足够和不产生测距模糊的情况下,其最大测量距离为:
式中:c是光速,tr是激光往返于发射器和目标之间的飞行时间,在这里它等于发射脉冲的重复周期;fr是激光发射脉冲的重复频率。
时间间隔测量电路的主要作用是准确测量激光主波信号和回波信号之间的时间间隔。目前脉冲测距时间测量方法主要是数字插入法。数字插入法是在数字法的基础上,通过插入法提高测量精度。这种方法利用fpga内部逻辑单元实现延迟线,如图2所示,而fpga的分段式布线决定其延迟的不可预测性,在采用fpga时,为了减小逻辑单元连线所带来的延迟,这部分电路需要采取人工布局,布线并锁定的手段实现。另外,不同速度等级的器件,其基本的延迟单元也不一样。另外采用fpga采用内部逻辑单元实现延迟,这种办法受温度的影响比较大。
技术实现要素:
(一)发明目的
本发明的目的是:提供一种基于fpgaidelay实现高精度脉冲激光测距方法,用于激光脉冲测距,提高测距精度。
(二)技术方案
为了解决上述技术问题,本发明提供一种基于fpgaidelay高精度脉冲激光测距系统,其包括激光发射模块、激光接收模块和数据处理模块。激光发射模块用于发射测距激光,激光接收模块接收反射激光,数据处理模块包括xilinxfpga,测距激光作为主波信号依次传输给fpga的n个主波管腿,反射激光作为回波信号依次传输给fpga的n个回波管腿,同时利用fpga的高速时钟对主波信号和回波信号进行粗计数,计数结果记为n,并在高速时钟的每一个上升沿分别对n个主波管腿和n个回波管腿进行采样,如果检测到有大于等于一个管腿为高电平,则对采样结果进行锁存;最后,对主波信号的采样结果进行时间反演t1,对回波信号的采样结果进行时间反演t2,n*2+t1+t2再乘以光速的一半即得到测距结果。
其中,所述fpga有31个主波管腿和31个回波管腿。
其中,所述主波信号依次传输给相邻的2个主波管腿之间的时间间隔为65皮秒,回波信号依次传输给相邻的2个回波管腿之间的时间间隔为65皮秒。
其中,所述高速时钟采用的500m高速时钟。
本发明还提供一种基于fpgaidelay高精度脉冲激光测距方法,其包括以下步骤:
步骤1:测距激光作为主波信号依次进入fpga的主波管腿1-主波管腿31;
步骤2:反射激光作为回波信号依次进入fpga的回波管腿1-回波管腿31;
步骤3:利用高速时钟对进入主波管腿1的主波信号和进入回波管腿1的回波信号分别进行粗计数,计数结果记为n;
步骤4:在fpga中,在高速时钟的每一个上升沿对主波信号的31个主波管腿进行采样,如果检测到有大于等于一个管腿为高电平,则对主波采样结果进行锁存;
步骤5:在fpga中,在高速时钟的每一个上升沿对回波信号的31个回波管腿进行采样,如果检测到有大于等于一个管腿为高电平,则对计数结果n和回波采样结果进行锁存;
步骤6:对主波的采样结果进行时间反演t1,对回波的采样结果进行时间反演t2;
步骤7:n*2+t1+t2得到测时结果t,t乘以光速的一半得到测距结果。
其中,步骤1中,所述主波管腿1-主波管腿31共31个管腿依次紧邻,保证主波信号依次进入这31个管腿,即主波信号先进入主波管腿1,再进入主波管腿2,......,最后进入主波管腿31。
其中,步骤1中,利用xilinxfpga的chipsync技术,调用fpga内部可编程idelay资源,对主波管腿分别采用idelay进行不同延时设置,主波管腿1-主波管腿31延迟分别对应为0-30节拍,即主波管腿1延迟为0节拍,主波管腿2延迟为1节拍,波管腿3延迟为2节拍,......,主波管腿31延迟为30节拍,每个节拍延时为65皮秒。
其中,步骤2中,所述回波管腿1-回波管腿31共31个管腿依次紧邻,保证回波信号依次进入这31个管腿,即回波信号先进入回波管腿1,再进入回波管腿2,......,最后进入回波管腿31。
其中,步骤2中,对回波管腿分别采用idelay进行不同延时设置,回波管腿1-回波管腿31延迟分别对应为0-30节拍,即回波管腿1延迟为0节拍,回波管腿2延迟为1节拍,回波管腿3延迟为2节拍,......,回波管腿31延迟为30节拍,每个节拍延时为65皮秒。
其中,步骤3中,高速时钟采用的是500m高速时钟,每一个计数值为2纳秒。
(三)有益效果
上述技术方案所提供的基于fpgaidelay高精度脉冲激光测距方法,利用xilinxfpga的chipsync技术,调用fpga内部可编程idelay资源,对不同管脚进行idelay时延设置,时延最小单元为65皮秒,时延精度高,不受温度变化的影响,测距精度高,达到9.75毫米。
附图说明
图1为现有技术中激光测距时序图。
图2为现有技术中fpga内部逻辑单元实现延迟线。
图3为本发明实施例fpgaidelay激光测距方法硬件连接示意图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
如图3所示,本实施例首先提供一种基于fpgaidelay高精度脉冲激光测距系统,其包括激光发射模块、激光接收模块和数据处理模块。激光发射模块用于发射测距激光,激光接收模块接收反射激光,数据处理模块包括xilinxfpga,测距激光作为主波信号依次传输给fpga的n个主波管腿,反射激光作为回波信号依次传输给fpga的n个回波管腿,同时利用fpga的高速时钟对主波信号和回波信号进行粗计数,计数结果记为n,并在高速时钟的每一个上升沿分别对n个主波管腿和n个回波管腿进行采样,如果检测到有大于等于一个管腿为高电平,则对采样结果进行锁存;最后,对主波信号的采样结果进行时间反演t1,对回波信号的采样结果进行时间反演t2,n*2+t1+t2再乘以光速的一半即得到测距结果。
本实施例中,fpga有31个主波管腿和31个回波管腿。主波信号依次传输给相邻的2个主波管腿之间的时间间隔为65皮秒,回波信号依次传输给相邻的2个回波管腿之间的时间间隔为65皮秒。高速时钟采用的500m高速时钟。
进一步地,本发明还提供一种基于fpgaidelay高精度脉冲激光测距方法,其包括以下步骤:
步骤1:测距激光作为主波信号依次进入fpga的主波管腿1-主波管腿31;
其中,主波管腿1-主波管腿31共31个管腿依次紧邻,保证主波信号依次进入这31个管腿,即主波信号先进入主波管腿1,再进入主波管腿2,......,最后进入主波管腿31;31个管腿依次紧邻能够实现较小传输时间延迟和延迟的一致性。
本步骤中,利用xilinxfpga的chipsync技术,调用fpga内部可编程idelay资源,对主波管腿分别采用idelay进行不同延时设置,主波管腿1-主波管腿31延迟分别对应为0-30节拍,即主波管腿1延迟为0节拍,主波管腿2延迟为1节拍,波管腿3延迟为2节拍,......,主波管腿31延迟为30节拍,每个节拍延时为65皮秒,实现相邻的2个主波管腿之间的时间间隔为65皮秒。
步骤2:反射激光作为回波信号依次进入fpga的回波管腿1-回波管腿31;
其中,回波管腿1-回波管腿31共31个管腿依次紧邻,保证回波信号依次进入这31个管腿,即回波信号先进入回波管腿1,再进入回波管腿2,......,最后进入回波管腿31;31个管腿依次紧邻能够实现较小传输时间延迟和延迟的一致性。
本步骤中,对回波管腿分别采用idelay进行不同延时设置,回波管腿1-回波管腿31延迟分别对应为0-30节拍,即回波管腿1延迟为0节拍,回波管腿2延迟为1节拍,回波管腿3延迟为2节拍,......,回波管腿31延迟为30节拍,每个节拍延时为65皮秒,实现相邻的2个回波管腿之间的时间间隔为65皮秒。
步骤3:利用高速时钟对进入主波管腿1的主波信号和进入回波管腿1的回波信号分别进行粗计数,计数结果记为n。
高速时钟选用500m高速时钟。
步骤4:在fpga中,在高速时钟的每一个上升沿对主波信号的31个主波管腿进行采样,如果检测到有大于等于一个管腿为高电平,则对主波采样结果进行锁存,本步骤在fpga中利用状态机实现。
步骤5:在fpga中,在高速时钟的每一个上升沿对回波信号的31个回波管腿进行采样,如果检测到有大于等于一个管腿为高电平,则对计数结果n和回波采样结果进行锁存;
步骤6:对主波的采样结果进行时间反演t1,即:将采样结果转换为时间,对回波的采样结果进行时间反演t2;例如对主波管腿1-主波管腿31的采样结果为0000000000000000000000000001111,则反演结果为65皮秒*4,t1为260皮秒。对回波管腿1-回波管腿31的采样结果0000000000000000000000000111111,则反演结果为65皮秒*6,t2为380皮秒。
步骤7:n*2+t1+t2得到测时结果t,t乘以光速的一半得到测距结果。n采用的是500m高速时钟,每一个计数值为2纳秒。
由以上技术方案可以看出,本发明采用fpga中的idelay对不同的管腿设置不同的延时,然后用同一时钟对不同管腿进行采样,在脉冲到来时刻进行锁存,实现精确测时。测时精度可达65皮秒,对应测距精度为9.75毫米。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。