脉冲激光测距中高精度时间间隔系统设计
田海军+杨婷+赵杨辉
摘 要: 时间间隔测量系统采用基于时间数字转换芯片TDC?GP22实现了高精度脉冲激光测距。采用高性能STM32单片机作为主控器,SPLLL90_3半导体激光二极管,AD500?9作为接收的光电探测器。测量结果通过SPI通信接口传送给单片机,经单片机处理后的数据传给LCD12864显示器。测试结果表明,该测量方法精度可达65 ps,系统结构简单、可行性高。
关键词: 时间间隔测量; TDC?GP22; 高精度脉冲激光测距; 光电探测器
中图分类号: TN835?34; TP212.9 文献标识码: A 文章编号: 1004?373X(2017)04?0155?04
Design of high?precision time interval measuring system for pulsed laser range finding
TIAN Haijun, YANG Ting, ZHAO Yanghui
(School of Automation Engineering, Northeast Electric Power University, Jilin 132000, China)
Abstract: In the time interval measurement system, the time digital converter chip TDC?GP22 is adopted to realize the high?precision pulsed laser range finding, the high?performance microcomputer STM32 is taken as the main controller, and the semiconductor laser diode SPLLL90?3 and AD500?9 are served as the receiving photoelectric detectors. The measured results are transmitted to the microcontroller through SPI communication interface, and then the processed data is transmitted to the display LCD12864. The test results indicate that the precision of the measuring method can reach up to 65 ps, and the system has simple structure and high feasibility.
Keywords: time interval measurement; TDC?GP22; high?precision pulsed laser range finding; photoelectric detector
0 引 言
脉冲激光测距具有测距精度高、探测距离远、峰值功率高、对光源相干性要求低等特点,广泛用于工业、民用、航天、医药等领域。目前激光测距方法有脉冲测距法、光子计数测距法和三角测距法。相比后两者,脉冲测距法测程长、精度高、反应时间短及没有光圈。脉冲的工作波长、上升时间、宽度、占空比、峰值功率及大气折射率影响时间间隔测量精度,其中脉冲宽度越窄精度越高,脉冲功率越大测程越长。在火电厂激光煤矿地质测量系统中需要对煤堆高度进行精确测量。实践中,通过时间间隔测量仪器测量激光飞行的时间间隔,测量占空比和功率会限制时间间隔的测量。因此,在激光煤矿地质测量系统中时间间隔测量单元在整个系统中起着关键作用。本文提出了一种脉冲激光测距中高精度时间间隔测量系统的设计,TDC?GP22[1]芯片记录激光接收和发射的时间信号差值,单片机STM32通过接口技术读取测量结果并将结果送入显示器,以实现距离测量。
1 脉冲激光测距系统
脉冲激光测距系统工作原理即单片机控制激光发射装置发射占空比一定的激光脉冲,其中一小部分能量到达接收电路,然后光电探测器将微弱的光脉冲信号变成电脉冲信号并看作Start信号触发时差测量。激光的大部分能量在空间中传播,遇到目标物后反射传播到达接收电路,看作Stop信号结束测量,至此完成时差测量[2]。TDC?GP22芯片记录Start脉冲到Stop脉冲之间的时差,用于计算目标物到发射端的距离[3?4]。在上面的测量中,除了TDC?GP22芯片的时间间隔精度外,还有很多因素影响距离测量精度[5],比如光的传输介质、光束的散射程度以及接收单元的灵敏度等。图1为激光测距系统的结构框图。
2 TDC?GP22芯片的工作原理
德国ACAM公司生产的TDC?GP22芯片是CMOS结构设计的高精度时间数字转换芯片,时间间隔由逻辑门的传输延迟来量化,通过测量两个或多个脉冲之间的时间间隔进行精确测量[6]。TDC?GP22芯片的系统结构主要由TDC模块、温度测量模块、ALU算术逻辑模块、控制时钟模块及串行接口模块等组成。TDC?GP22芯片有两种测量范围,每个测量范围的分辨率均能达到65 ps,测量范围1为0~1.8 μs;测量范围2为500 ns~4 ms。根据本系统测量要求,选择芯片的测量范围1实现高精度时间间隔测量。
TDC时间数字转换单元由信号通过门电路的传输延迟实现高精度时间测量[7?9]。首先进行系统初始化,由Start接收到有效脉冲信号触发,并在接收到Stop有效脉冲信号后结束工作。Start信号和Stop信号之间的时间间隔由粗值计数器的计数值和环形振荡器的位置计算出来。
温度和电压对TDC时间测量系统有较大影响,因此通过测量一个时间间隔和外部脉冲,对比两者之间的测量值校准消除温度和电压变化带来的误差。在校准时,TDC?GP22芯片能产生稳定的时钟信号,当其对外部信号测量完成后,再测量1倍的Cal1内部基准时钟周期和2倍的Cal2内部基准时钟周期。参考时钟周期值分别为Cal1,Cal2,参考时钟信号是RefClk,即可得出Cal1, Cal2的值。
通过下式计算可得出校准之后的精确时间差:
式中:RES_X为TDC时间间隔计数值;t为TDC校准时间测量值。
3 系统硬件设计
3.1 激光发射电路设计
采用DALLLA公司生产的DS1040可编程脉冲发生器,DS1040芯片的P0~P2引脚分别与单片机的PA4~PA6引脚相连,通过单片机的I/O口输出高低电平控制DS1040。驱动芯片采用东芝公司的EL7104C芯片,具有高速、响应时间短、供电电流小、单通道的特点,通过内部电路集成的增压电路来增大输入电压。电容C1,C2滤除电源带来的杂波。为了防止大电流烧坏芯片,电阻R1起限流作用。激光二极管采用OSRAM公司的SPLLL90_3,它是一款集成度高、体积小、低功耗的激光器,中心波长为905 nm、输出峰值功率为70 W,主要应用在激光测距领域内。激光发射电路如图2所示。
3.2 激光接收电路和鉴时电路设计
激光接收电路和鉴时测量电路设计如图3所示,光电探测器选择Silicon Sensor公司生产的AD500?9雪崩二极管[10]实现光电转换,它具有响应时间快、探测灵敏度高、增益大的特点,可提高测量精度和减少噪音干扰,因此把它看作脉冲计数单元的触发信号。为保证探测器采集的数据不丢失,采用德州公司生產的UA733放大器将雪崩二极管转换的电脉冲信号放大,它具有较高的稳定性、低相位失真和快速的信息处理能力,能够对信号放大10~400倍。为了提高信噪比,在接收模块中采用MAX913比较器,它是一款高速低耗的电平输出比较器,通过设定电平值滤波。
在鉴时电路中,时间数字芯片TDC?GP22通过外接32.768 kHz基准时钟和4 MHz的石英晶振来控制和校准时钟。微控制器选用STM32F103C8T6单片机,工作最高频率为72 MHz,FLASH程序存储器是64 KB和高达20 KB的SRAM,多达9个通信接口,其中包括2个I2C接口和2个SPI接口。支持2种JTAG接口调试模式和串行单线调试,能满足低功耗要求。STM32系列单片机具有丰富的库函数、成本低、功耗低、性能高的优点,因此易于开发产品。单片机主要对TDC?GP22芯片的时间控制和寄存器配置,时间测量结果通过SPI接口技术送入单片机,对整个系统进行控制。
在图3中TDC?GP22芯片的Stop1和Stop2端口控制脉冲的接收和发射信号,RSTN中断输入信号引脚和单片机的PA9引脚相连,低电平有效,未工作前芯片要复位。TDC?GP22的SSN,SO,SI,SCK引脚分别与单片机的PA4~PA7引脚相连,使用SPI1接口进行数据通信。EN_START,EN_STOP1,EN_STOP2引脚分别与单片机的PC13~PC15引脚相连,INTN引脚接地。JTCK,JTMS,JNRST,JTDI,JTDI,RET引脚看作JTAG的引脚,为单片机调试和下载程序使用。在使用STM32系列单片机时需注意,所有VSS引脚须接地、VDD引脚须接VCC。
4 软件设计
系统软件设计流程图如图4所示,系统初始化包括LCD初始化、寄存器配置、TDC?GP22初始化。在未工作前,TDC?GP22芯片的en_start和en_stop引脚低电平有效,未选通Start和Stop通道。在对TDC?GP22寄存器配置完成之后,分别设置每个通道的采样个数和测量范围并确定ALU的计算方法。单片机给TDC?GP22发送开启命令,确保TDC?GP22进入测量状态,一旦TDC?GP22的start通道接收到有效信号时,此信号看作激光的一部分能量。
当反射的激光信号到达接收单元时,反射光线对信号进行处理后,TDC?GP22的Stop通道开始测量,在完成一次测量之后关闭Start和Stop通道。校准TDC?GP22之后,单片机在中断响应到来后会读取寄存器数值,若没溢出,则TDC?GP22会记录出时间间隔测量值。数据校准格式是16进制的32位浮点数,每8位数据通过单片机的SPI口读取一次,即分4次读出校准值。若有6次的数据一样,则认为测量结果正确,若不正确则删除,重新校准TDC?GP22并继续测量。为了提高测量精度,在整个测量系统中需要每次对TDC?GP22初始化。在单片机系统设计中,C语言编写的特点是易于维护、编写代码的效率及其重复率高等,因此C语言在单片机系统设计中得到了广泛的应用。
5 实验结果
文中实现了脉冲激光测距中高精度时间间隔测量系统的设计,基于 TDC?GP22的测量范围1和测量范围2
进行了大量的实验测试。
分别计算出每组数据的平均值和标准差,绘制脉冲时间?测量误差曲线如图5所示。
6 结 论
测试结果表明,系统标准差的均值约为68 ps,与TDC?GP22标准相差3 ps。这是由于传感器的制造工艺及外部因素难免出现一些误差,致使测量误差增加。该系统有效地提高了脉冲飞行时间的测量精度和稳定性,优化了系统的性能和电路结构,满足了脉冲激光测距系统的精度要求。
参考文献
[1] 杨佩,徐军,王菲.基于TDC?GP2的高精度时间间隔测量系统的设计[J].电子科技,2010,23(7):45?48.
[2] 宋建辉,袁峰,丁振良.脉冲激光测距中高精度时间间隔的测量[J].光学精密工程,2009,17(5):1046?1050.
[3] 纪荣袆,赵长明,任学成.脉冲激光测距时刻鉴别方法的研究[J].红外,2010,31(11):34?37.
[4] 张黎明,张毅,赵欣.基于TDC的激光测距传感器飞行时间测量[J].传感器与微系统,2011,30(12):71?74.
[5] 杨成伟,陈千颂,林彦.脉冲激光测距时间间隔测量及误差分析[J].红外与激光工程,2003,32(2):132?136.
[6] HSIAO M J, HUANG J R, CHANG T Y. A built?in parametric timing measurement unit [J]. IEEE design and test of computers, 2004, 21(4): 322?330.
[7] 施智勇,潘晓声,张谦.利用延时法进行高精度脉冲激光测距[J].光学精密工程,2014,22(2):253?258.
[8] 仲峰,万莉萍,岳宇军.高精度时间测量芯片TDC?GP2在激光测距中的应用[J].工业控制计算机,2007,20(4):69?70.
[9] 岱钦,耿岳,李业秋,等.利用TDC?GP21的高精度激光脉冲飞行时间测量技术[J].红外与激光工程,2013,42(7):1706?1709.
[10] 万小强.基于AD500型APD的激光测距硬件电路的研究[D].武汉:武汉理工大学,2012.
摘 要: 时间间隔测量系统采用基于时间数字转换芯片TDC?GP22实现了高精度脉冲激光测距。采用高性能STM32单片机作为主控器,SPLLL90_3半导体激光二极管,AD500?9作为接收的光电探测器。测量结果通过SPI通信接口传送给单片机,经单片机处理后的数据传给LCD12864显示器。测试结果表明,该测量方法精度可达65 ps,系统结构简单、可行性高。
关键词: 时间间隔测量; TDC?GP22; 高精度脉冲激光测距; 光电探测器
中图分类号: TN835?34; TP212.9 文献标识码: A 文章编号: 1004?373X(2017)04?0155?04
Design of high?precision time interval measuring system for pulsed laser range finding
TIAN Haijun, YANG Ting, ZHAO Yanghui
(School of Automation Engineering, Northeast Electric Power University, Jilin 132000, China)
Abstract: In the time interval measurement system, the time digital converter chip TDC?GP22 is adopted to realize the high?precision pulsed laser range finding, the high?performance microcomputer STM32 is taken as the main controller, and the semiconductor laser diode SPLLL90?3 and AD500?9 are served as the receiving photoelectric detectors. The measured results are transmitted to the microcontroller through SPI communication interface, and then the processed data is transmitted to the display LCD12864. The test results indicate that the precision of the measuring method can reach up to 65 ps, and the system has simple structure and high feasibility.
Keywords: time interval measurement; TDC?GP22; high?precision pulsed laser range finding; photoelectric detector
0 引 言
脉冲激光测距具有测距精度高、探测距离远、峰值功率高、对光源相干性要求低等特点,广泛用于工业、民用、航天、医药等领域。目前激光测距方法有脉冲测距法、光子计数测距法和三角测距法。相比后两者,脉冲测距法测程长、精度高、反应时间短及没有光圈。脉冲的工作波长、上升时间、宽度、占空比、峰值功率及大气折射率影响时间间隔测量精度,其中脉冲宽度越窄精度越高,脉冲功率越大测程越长。在火电厂激光煤矿地质测量系统中需要对煤堆高度进行精确测量。实践中,通过时间间隔测量仪器测量激光飞行的时间间隔,测量占空比和功率会限制时间间隔的测量。因此,在激光煤矿地质测量系统中时间间隔测量单元在整个系统中起着关键作用。本文提出了一种脉冲激光测距中高精度时间间隔测量系统的设计,TDC?GP22[1]芯片记录激光接收和发射的时间信号差值,单片机STM32通过接口技术读取测量结果并将结果送入显示器,以实现距离测量。
1 脉冲激光测距系统
脉冲激光测距系统工作原理即单片机控制激光发射装置发射占空比一定的激光脉冲,其中一小部分能量到达接收电路,然后光电探测器将微弱的光脉冲信号变成电脉冲信号并看作Start信号触发时差测量。激光的大部分能量在空间中传播,遇到目标物后反射传播到达接收电路,看作Stop信号结束测量,至此完成时差测量[2]。TDC?GP22芯片记录Start脉冲到Stop脉冲之间的时差,用于计算目标物到发射端的距离[3?4]。在上面的测量中,除了TDC?GP22芯片的时间间隔精度外,还有很多因素影响距离测量精度[5],比如光的传输介质、光束的散射程度以及接收单元的灵敏度等。图1为激光测距系统的结构框图。
2 TDC?GP22芯片的工作原理
德国ACAM公司生产的TDC?GP22芯片是CMOS结构设计的高精度时间数字转换芯片,时间间隔由逻辑门的传输延迟来量化,通过测量两个或多个脉冲之间的时间间隔进行精确测量[6]。TDC?GP22芯片的系统结构主要由TDC模块、温度测量模块、ALU算术逻辑模块、控制时钟模块及串行接口模块等组成。TDC?GP22芯片有两种测量范围,每个测量范围的分辨率均能达到65 ps,测量范围1为0~1.8 μs;测量范围2为500 ns~4 ms。根据本系统测量要求,选择芯片的测量范围1实现高精度时间间隔测量。
TDC时间数字转换单元由信号通过门电路的传输延迟实现高精度时间测量[7?9]。首先进行系统初始化,由Start接收到有效脉冲信号触发,并在接收到Stop有效脉冲信号后结束工作。Start信号和Stop信号之间的时间间隔由粗值计数器的计数值和环形振荡器的位置计算出来。
温度和电压对TDC时间测量系统有较大影响,因此通过测量一个时间间隔和外部脉冲,对比两者之间的测量值校准消除温度和电压变化带来的误差。在校准时,TDC?GP22芯片能产生稳定的时钟信号,当其对外部信号测量完成后,再测量1倍的Cal1内部基准时钟周期和2倍的Cal2内部基准时钟周期。参考时钟周期值分别为Cal1,Cal2,参考时钟信号是RefClk,即可得出Cal1, Cal2的值。
通过下式计算可得出校准之后的精确时间差:
式中:RES_X为TDC时间间隔计数值;t为TDC校准时间测量值。
3 系统硬件设计
3.1 激光发射电路设计
采用DALLLA公司生产的DS1040可编程脉冲发生器,DS1040芯片的P0~P2引脚分别与单片机的PA4~PA6引脚相连,通过单片机的I/O口输出高低电平控制DS1040。驱动芯片采用东芝公司的EL7104C芯片,具有高速、响应时间短、供电电流小、单通道的特点,通过内部电路集成的增压电路来增大输入电压。电容C1,C2滤除电源带来的杂波。为了防止大电流烧坏芯片,电阻R1起限流作用。激光二极管采用OSRAM公司的SPLLL90_3,它是一款集成度高、体积小、低功耗的激光器,中心波长为905 nm、输出峰值功率为70 W,主要应用在激光测距领域内。激光发射电路如图2所示。
3.2 激光接收电路和鉴时电路设计
激光接收电路和鉴时测量电路设计如图3所示,光电探测器选择Silicon Sensor公司生产的AD500?9雪崩二极管[10]实现光电转换,它具有响应时间快、探测灵敏度高、增益大的特点,可提高测量精度和减少噪音干扰,因此把它看作脉冲计数单元的触发信号。为保证探测器采集的数据不丢失,采用德州公司生產的UA733放大器将雪崩二极管转换的电脉冲信号放大,它具有较高的稳定性、低相位失真和快速的信息处理能力,能够对信号放大10~400倍。为了提高信噪比,在接收模块中采用MAX913比较器,它是一款高速低耗的电平输出比较器,通过设定电平值滤波。
在鉴时电路中,时间数字芯片TDC?GP22通过外接32.768 kHz基准时钟和4 MHz的石英晶振来控制和校准时钟。微控制器选用STM32F103C8T6单片机,工作最高频率为72 MHz,FLASH程序存储器是64 KB和高达20 KB的SRAM,多达9个通信接口,其中包括2个I2C接口和2个SPI接口。支持2种JTAG接口调试模式和串行单线调试,能满足低功耗要求。STM32系列单片机具有丰富的库函数、成本低、功耗低、性能高的优点,因此易于开发产品。单片机主要对TDC?GP22芯片的时间控制和寄存器配置,时间测量结果通过SPI接口技术送入单片机,对整个系统进行控制。
在图3中TDC?GP22芯片的Stop1和Stop2端口控制脉冲的接收和发射信号,RSTN中断输入信号引脚和单片机的PA9引脚相连,低电平有效,未工作前芯片要复位。TDC?GP22的SSN,SO,SI,SCK引脚分别与单片机的PA4~PA7引脚相连,使用SPI1接口进行数据通信。EN_START,EN_STOP1,EN_STOP2引脚分别与单片机的PC13~PC15引脚相连,INTN引脚接地。JTCK,JTMS,JNRST,JTDI,JTDI,RET引脚看作JTAG的引脚,为单片机调试和下载程序使用。在使用STM32系列单片机时需注意,所有VSS引脚须接地、VDD引脚须接VCC。
4 软件设计
系统软件设计流程图如图4所示,系统初始化包括LCD初始化、寄存器配置、TDC?GP22初始化。在未工作前,TDC?GP22芯片的en_start和en_stop引脚低电平有效,未选通Start和Stop通道。在对TDC?GP22寄存器配置完成之后,分别设置每个通道的采样个数和测量范围并确定ALU的计算方法。单片机给TDC?GP22发送开启命令,确保TDC?GP22进入测量状态,一旦TDC?GP22的start通道接收到有效信号时,此信号看作激光的一部分能量。
当反射的激光信号到达接收单元时,反射光线对信号进行处理后,TDC?GP22的Stop通道开始测量,在完成一次测量之后关闭Start和Stop通道。校准TDC?GP22之后,单片机在中断响应到来后会读取寄存器数值,若没溢出,则TDC?GP22会记录出时间间隔测量值。数据校准格式是16进制的32位浮点数,每8位数据通过单片机的SPI口读取一次,即分4次读出校准值。若有6次的数据一样,则认为测量结果正确,若不正确则删除,重新校准TDC?GP22并继续测量。为了提高测量精度,在整个测量系统中需要每次对TDC?GP22初始化。在单片机系统设计中,C语言编写的特点是易于维护、编写代码的效率及其重复率高等,因此C语言在单片机系统设计中得到了广泛的应用。
5 实验结果
文中实现了脉冲激光测距中高精度时间间隔测量系统的设计,基于 TDC?GP22的测量范围1和测量范围2
进行了大量的实验测试。
分别计算出每组数据的平均值和标准差,绘制脉冲时间?测量误差曲线如图5所示。
6 结 论
测试结果表明,系统标准差的均值约为68 ps,与TDC?GP22标准相差3 ps。这是由于传感器的制造工艺及外部因素难免出现一些误差,致使测量误差增加。该系统有效地提高了脉冲飞行时间的测量精度和稳定性,优化了系统的性能和电路结构,满足了脉冲激光测距系统的精度要求。
参考文献
[1] 杨佩,徐军,王菲.基于TDC?GP2的高精度时间间隔测量系统的设计[J].电子科技,2010,23(7):45?48.
[2] 宋建辉,袁峰,丁振良.脉冲激光测距中高精度时间间隔的测量[J].光学精密工程,2009,17(5):1046?1050.
[3] 纪荣袆,赵长明,任学成.脉冲激光测距时刻鉴别方法的研究[J].红外,2010,31(11):34?37.
[4] 张黎明,张毅,赵欣.基于TDC的激光测距传感器飞行时间测量[J].传感器与微系统,2011,30(12):71?74.
[5] 杨成伟,陈千颂,林彦.脉冲激光测距时间间隔测量及误差分析[J].红外与激光工程,2003,32(2):132?136.
[6] HSIAO M J, HUANG J R, CHANG T Y. A built?in parametric timing measurement unit [J]. IEEE design and test of computers, 2004, 21(4): 322?330.
[7] 施智勇,潘晓声,张谦.利用延时法进行高精度脉冲激光测距[J].光学精密工程,2014,22(2):253?258.
[8] 仲峰,万莉萍,岳宇军.高精度时间测量芯片TDC?GP2在激光测距中的应用[J].工业控制计算机,2007,20(4):69?70.
[9] 岱钦,耿岳,李业秋,等.利用TDC?GP21的高精度激光脉冲飞行时间测量技术[J].红外与激光工程,2013,42(7):1706?1709.
[10] 万小强.基于AD500型APD的激光测距硬件电路的研究[D].武汉:武汉理工大学,2012.