一种基于FPGA的TDC激光测距方法技术

技术编号:15544545 阅读:362 留言:0更新日期:2017-06-05 15:33
本发明专利技术提出一种基于FPGA的TDC激光测距方法,由FPGA和TDC共同完成;其中,TDC用于计算开始信号与截止信号之间的时间差;FPGA用于提供脉冲信号,并将TDC时间差转换为距离信息;脉冲信号用于驱动激光发射器以及作为触发TDC进行时间差测量的开始信号;所述TDC为TDC-GP2。本发明专利技术提高测量精度,增强了数据稳定性并能实时得到距离信息。

A TDC laser ranging method based on FPGA

The invention provides a TDC laser ranging method based on FPGA, by FPGA and TDC together; among them, TDC is used to signal the start and stop signal calculation between the time difference; FPGA is used to provide the pulse signal, and the TDC time difference into the distance information; pulse signal is used to drive the laser transmitter as well as the TDC signal to trigger time difference measurement; the TDC TDC-GP2. The invention improves measurement accuracy, enhances data stability, and obtains distance information in real time.

【技术实现步骤摘要】
一种基于FPGA的TDC激光测距方法
本专利技术属于激光或红外等脉冲测距
,具体涉及一种基于FPGA的TDC激光测距方法,可应用于激光雷达汽车智能防撞、遥感成像等方面。
技术介绍
激光测距系统是通过测量激光从发射到返回之间的时间来计算距离的。在如图1所示的脉冲式激光测距测距中,时差测量成为了一个影响整个测量精度最关键的因素。一般完成时差测量有两种基本途径:一是利用可编程门阵列,例如FPGA或CPLD,自己编程开发,二是使用商品化的通用TDC芯片。利用可编程门阵列自己编程时差测量的优势是:能够在单个芯片上同时完成时间测量、控制与读出逻辑以及测量结果的后续处理,具有较高的性价比,但存在难以克服供电电压和环境温度波动的影响、难以保持多通道测量工作一致性以及测量精度低的缺点。与之相比,通用TDC芯片可以较好地解决上述缺点。TDC芯片具有较高的测量精度,例如要测量1公里的距离,分辨率要求1cm,则时间间隔测量的分辨率则要求高达67ps,其中时间数字转换芯片TDC单次测量分辨率为65ps。另外,TDC芯片功耗低,集成度高,测量灵活性高,功能完善、使用者不需要了解TDC芯片的内部实现细节即可实现时差测量。但是,利用通用TDC芯片实现时差测量又也存控制接口复杂,需要配合单片机或FPGA逻辑才能实现芯片的配置和测量结果的读出等缺点。
技术实现思路
本专利技术提出一种基于FPGA的TDC激光测距方法,提高了测量精度,增强了数据稳定性并能实时得到距离信息。为了解决上述技术问题,本专利技术提供一种基于FPGA的TDC激光测距方法,由FPGA和TDC共同完成;其中,TDC用于计算开始信号与截止信号之间的时间差;FPGA用于提供脉冲信号,并将TDC时间差转换为距离信息;脉冲信号用于驱动激光发射器以及作为触发TDC进行时间差测量的开始信号;所述TDC为TDC-GP2。进一步,通过FPGA对TDC进行配置以及控制TDC进行时间差测量。进一步,所述脉冲信号在驱动激光发射器发射激光的同时触发TDC;光电探测器一旦接收到反射脉冲,FGPA就将截止信号输入给TDC的STOP通道。进一步,目标回波信号先进入FPGA,FPGA将回波信号转换为数字信号后送给TDC。进一步,TDC的管脚电压Vio与电源电压Vcc均采用FPGA的内部电压供电,且Vio>Vcc-0.5V。进一步,FPGA采用三段式状态机控制其SSN信号的拉低、拉高以及读和写操作;所述三段式状态机共有五个状态,分别为:IDLE、READ_SSN、WRITE_SSN、READ_DATA及WRITE_DATA;空闲时,状态机处于IDLE状态,当需要往TDC写数据时,先从IDLE状态跳转到WRITE_SSN状态,将SSN信号拉低;之后立即跳转到WRITE_DATA状态,将八位数据写到串行外设接口SPI的发送寄存器,通过发送寄存器移位转化成串行输出,利用MOSI信号线将数据发送给TDC;数据发送完成后重新跳转到WRITE_SSN状态,拉高SSN信号。进一步,FPGA对TDC进行配置的方法为:FPGA向TDC写入50h进行上电复位;然后配置6个寄存器,FPGA向TDC内写入80000422h配置寄存器0,使得TDC选择测量范围1,进行自动校准,晶振上电后一直起振并且选择START信号上升沿触发,STOP_1信号下降沿触发;FPGA向TDC写入81014100h配置寄存器1,定义TDC内部计算方式为用STOP_1通道的第一个脉冲的上升沿减去START通道第一个脉冲的上升沿;FPGA向TDC写入82E00000h配置寄存器2,开启所有中断源,使得在TDC收到截止信号后开启中断;FPGA向TDC写入83000000h和84200000h配置寄存器3和寄存器4;FPGA向TDC写入85080000h,关闭噪声单元。进一步,FPGA控制TDC进行时间差测量的过程为:FPGA向TDC写入70h进行初始化测量,使TDC进入测量准备状态;当START通道和STOP_1通道都接收到脉冲信号完成测量后,TDC产生中断,当INTN中断信号为低时,TDC发送读命令,FPGA读取MISO线上的读状态寄存器数据,判断是否溢出,若读取为0200h,则代表TDC溢出,FPGA向TDC写入70h来初始化,若读取为0009h,则代表在测量范围内,继续向TDC写入B0h,FPGA读取寄存器0中的数据,存放在OUT寄存器中,获得最初的时间差数据;FPGA在读完一次数据后,三段式状态机返回到IDLE状态,重新上电复位。进一步,TDC在完成时间差计算后将时间差传输给FPGA,FPGA将TDC时间差转换为距离信息后将距离信息送显示器显示。本专利技术与现有技术相比,其显著优点在于,考虑到脉冲激光测距对时差测量精度的要求,以及为了尽可能的减小供电电压和环境温度波动产生的测量误差,本专利技术选用时间数字转换芯片TDC_GP2进行激光测距,TDC_GP2芯片时差测量从接收到的开始信号到截止信号,计算产生的高速单元的数目得到时间信息;本专利技术提出在FPGA配合实现TDC-GP2芯片的配置,实现测量结果的输出以及后续结果处理。附图说明图1为TDC_GP2激光测距原理框架图。图2为TDC_GP2时间测量系统示意图。图3为本专利技术基于FPGA的TDC精确时差测量的原理图。图4为SPI串口状态机流程图。图5为TDC工作流程图。图6为FPGA最初距离与修正后距离关系图。具体实施方式容易理解,依据本专利技术的技术方案,在不变更本专利技术的实质精神的情况下,本领域的一般技术人员可以想象出本专利技术基于FPGA的TDC激光测距方法的多种实施方式。因此,以下具体实施方式和附图仅是对本专利技术的技术方案的示例性说明,而不应当视为本专利技术的全部或者视为对本专利技术技术方案的限制或限定。本专利技术中,基于TDC的脉冲飞行时间的测量,即开始信号和截止信号之间的时间差测量,由;FPGA和TDC共同完成。TDC用于精确计算出接收到的开始信号和截止信号之间的时间差;FPGA用于提供激光发射的脉冲信号,还用于与TDC通讯,提供开始信号和截止信号,并将TDC所测的时间差信息处理成距离信息,提高了测量精度。测量原理为:FPGA产生的脉冲信号,在驱动激光二极管发射激光脉冲的同时,输入到TDC的START通道,用于触发开始信号和截止信号之间的时间差测量,一旦从物体传回的反射脉冲到达光电探测器(接收电路),则FGPA将截止信号输入到TDC的STOP_1通道,此时时差测量完成。通过FPGA对于TDC进行寄存器配置以及时间测量控制,TDC完成测量后将时间测量结果传回给FPGA通过算法进行距离的精确计算,从而将结果通过RS-422串口显示在电脑上,完成整个脉冲激光测距功能。测量步骤为:步骤1,FPGA产生开始信号接入TDC的START通道,测距激光产生的回波信号先通过FPGA然后接入DC_GP2芯片的STOP_1通道,并且配置好FPGA和TDC的接口。步骤2,FPGA通过SPI协议与TDC芯片通讯,对TDC上电及寄存器配置后,将测得的时差信息再传回FPGA进行处理。步骤3,FPGA采用时间距离转换算法将TDC所测的时差数据转换成实际距离数据。步骤4,FPGA将实际距离数据通过RS-422串口显示在电脑上,完成整个测距工作。对于本文档来自技高网...
一种基于FPGA的TDC激光测距方法

【技术保护点】
一种基于FPGA的TDC激光测距方法,其特征在于,由FPGA和TDC共同完成;其中,TDC用于计算开始信号与截止信号之间的时间差;FPGA用于提供脉冲信号,并将TDC时间差转换为距离信息;脉冲信号用于驱动激光发射器以及作为触发TDC进行时间差测量的开始信号;所述TDC为TDC‑GP2。

【技术特征摘要】
1.一种基于FPGA的TDC激光测距方法,其特征在于,由FPGA和TDC共同完成;其中,TDC用于计算开始信号与截止信号之间的时间差;FPGA用于提供脉冲信号,并将TDC时间差转换为距离信息;脉冲信号用于驱动激光发射器以及作为触发TDC进行时间差测量的开始信号;所述TDC为TDC-GP2。2.如权利要求1所述基于FPGA的TDC激光测距方法,其特征在于,通过FPGA对TDC进行配置以及控制TDC进行时间差测量。3.如权利要求2所述基于FPGA的TDC激光测距方法,其特征在于,所述脉冲信号在驱动激光发射器发射激光的同时触发TDC;光电探测器一旦接收到反射脉冲,FGPA就将截止信号输入给TDC的STOP通道。4.如权利要求2所述基于FPGA的TDC激光测距方法,其特征在于,目标回波信号先进入FPGA,FPGA将回波信号转换为数字信号后送给TDC。5.如权利要求2所述基于FPGA的TDC激光测距方法,其特征在于,TDC的管脚电压Vio与电源电压Vcc均采用FPGA的内部电压供电,且Vio>Vcc-0.5V。6.如权利要求2所述基于FPGA的TDC激光测距方法,其特征在于,FPGA采用三段式状态机控制其SSN信号的拉低、拉高以及读和写操作;所述三段式状态机共有五个状态,分别为:IDLE、READ_SSN、WRITE_SSN、READ_DATA及WRITE_DATA;空闲时,状态机处于IDLE状态,当需要往TDC写数据时,先从IDLE状态跳转到WRITE_SSN状态,将SSN信号拉低;之后立即跳转到WRITE_DATA状态,将八位数据写到串行外设接口SPI的发送寄存器,通过发送寄存器移位转化成串行输出,利用MOSI信号线将数据发送给TDC;数据发送完成后重新跳转到WRITE_SSN状态,拉高SSN信号。7.如权...

【专利技术属性】
技术研发人员:顾国华唐彦琴周玉蛟杨成章
申请(专利权)人:南京理工大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1