[发明专利]一种基于FPGA的TDC激光测距方法有效
申请号: | 201510829584.8 | 申请日: | 2015-11-25 |
公开(公告)号: | CN106772405B | 公开(公告)日: | 2019-08-30 |
发明(设计)人: | 顾国华;唐彦琴;周玉蛟;杨成章 | 申请(专利权)人: | 南京理工大学 |
主分类号: | G01S17/08 | 分类号: | G01S17/08 |
代理公司: | 南京理工大学专利中心 32203 | 代理人: | 朱显国 |
地址: | 210094 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提出一种基于FPGA的TDC激光测距方法,由FPGA和TDC共同完成;其中,TDC用于计算开始信号与截止信号之间的时间差;FPGA用于提供脉冲信号,并将TDC时间差转换为距离信息;脉冲信号用于驱动激光发射器以及作为触发TDC进行时间差测量的开始信号;所述TDC为TDC‑GP2。本发明提高测量精度,增强了数据稳定性并能实时得到距离信息。 | ||
搜索关键词: | 一种 基于 fpga tdc 激光 测距 方法 | ||
【主权项】:
1.一种基于FPGA的TDC激光测距方法,其特征在于,由FPGA和TDC共同完成;其中,TDC用于计算开始信号与截止信号之间的时间差;FPGA用于提供脉冲信号,并将TDC时间差转换为距离信息;脉冲信号用于驱动激光发射器以及作为触发TDC进行时间差测量的开始信号;所述TDC为TDC‑GP2;通过FPGA对TDC进行配置以及控制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信号;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状态,重新上电复位。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京理工大学,未经南京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510829584.8/,转载请声明来源钻瓜专利网。