基于 CPLD的多目标脉冲激光测距系统的设计与实现
基于 CPLD的多目标脉冲激光测距系统的设计与实现
作者:邢刚;许冬生;夏云
脉冲激光测距仪是基于对光波在本机与目标间传输时间的计量而感知目标距离 ,属于“时基法 ”测距 ,其优点是操作方便、系统设计简单 。其电路系统包括激光主波发射单元、回波接收单元、计时器单元、距离信息处理及控制单元。传统测距方式主要是首目标测距方式 ,即一次只能针对测量量程和测量方向上的第一个测量目标 ,结果只能显示一个目标的测距数据 ,这样的设计方案已经不能满足对集群式多目标测量功能的需求 ,因此一次测量多个目标并将多个目标的测距数据保存在系统内部 ,供作战人员选用的多目标测距就成为要解决的重要技术问题。
2 多目标脉冲激光测距原理
脉冲激光测距机是通过测量激光器发出光脉冲的时刻与光脉冲到达目标并由目标返回接收机的时间差计算出目标距离的。假设目标距离为 R ,光脉冲往返时间为 T,光在空气的传播速度为 c,则 :
R = c ×T /2 (1)传统脉冲测距系统中 ,时间 T由计数器采用直接计数法完成测量 ,主波作为开门信号 ,计数器开始工作 ,回波作为关门信号 ,计数器停止工作。在门被打开期间 ,计数器计算出时间测量基准单位的晶振脉冲的个数 ,从而求出待测时间 T。假设晶振频率为 f,计数器的计数结果为 N ,则 :T =N / f (2)将式 (2)代入式 (1) ,则被测距离 R为 :R = c ×N /2f (3)可见 ,传统测距只能得到单一的 N 值 , 完成单一目标测量。在多目标测距系统中 , 回波信号不作为关门信号 ,而是经过处理作为捕捉信号 ,捕获某个目标回波时刻的计数结果 ,求出待测时间。假设第一个目标的计数结果为 N1 , 待测时间为 T1 , 则第 m个目标的计数结果为 Nm ,待测时间为 Tm ,如图 2所示。计数器溢出时 ,停止计数并清零 ,等待下次开门信号。假设被测目标 m 的距离 Rm , 计数器的计数结果为 Nm ,则 :Rm = c ×Nm /2f (4)多目标激光脉冲测距系统的目标分辨距离由回波信号的脉宽决定 , 回波在高电平时计数器不能处理其他回波 ,假设回波脉宽 TH ,目标分辨距离 d,即相距大于 d距离的不同目标才能被测距系统分辨出来 ,则 :d = c ×TH /2
3 多目标脉冲激光测距系统的实现
多目标脉冲激光测距系统由单片复杂可编程逻辑器件 CPLD 实现 ,系统的设计方案如图 3 所示。主波送入逻辑控制单元产生开门信号 ,计数器开始工作。多目标激光回波反射后 ,多个回波经过逻辑控制单元分别产生捕捉信号 , 捕捉对应目标的 N值 ,计算出其距离值存入相应寄存器。距离值处理单元对多次测量结果进行处理 ,控制距离数据的有效性和精确性。串口收发单元实现与上位机的异步通信 ,接收上位机指令 ,发送测距系统距离数据供上位机使用。逻辑控制单元根据上位机指令产生激光部件的控制信号。
在设计开发过程中 ,使用 altera公司的 Quartus II软件做为开发平台。选用了 MAX II系列的复杂可编程逻辑器件 ( CPLD )作为硬件载体 , MAX II系列是新一代 PLD器件 ,采用 0. 18μm falsh工艺 ,采用 FPGA 结构 ,配置芯片集成在内部 ,和普通 PLD一样上电即可工作。容量比上一代大大增加 ,内部集成一片 8Kbits串行 EEPROM。MAX II采用 2. 5 V或者 3. 3 V内核电压 。使用硬件描述语言 VHDL进行电路设计与输入 ,与传统的原理图设计输入法相比 ,硬件描述语言利于由顶层向底层设计 ,利于模块的划分和复用 ,可移植性好 ,通用性好 ,设计不因芯片的工艺与结构的不同而变化。
多目标测距系统测程 300~10000 m ,采用 16位计数器 ,在测量范围内测量方向上同时可测 8个目标。回波脉宽 60 ns,目标分辨率 10 m。采用同步设计原则 ,在基准时钟上升沿进行各种逻辑控制、处理及计算。同步时序电路可以很好的避免毛刺、竞争。
其中 , clk为基准时钟信号 ,上升沿驱动 ; em it为主波输入信号 ; echo为回波输入信号 ; RX为异步串口接收 ; TX为异步串口发送 ; syn, start, lop为激光部件控制信号。
3. 1逻辑控制单元
根据上位机指令产生激光部件的控制信号。当收到测距指令 ,逻辑控制单元输出启动、预然、时统等信号 ,激光部件开始工作 ;当收到待机指令后 ,激光部件停止工作。
根据主波、回波信号状态产生开门信号和捕捉信号。主波信号送入以 clk为时钟的 D 触发器 , D触发器的输出即为开门信号 em it - flag。捕捉信号是多目标测距的关键 ,决定了能够获得距离的目标个数及精度。捕捉信号的产生如图 5所示。回波echo送入以 clk为时钟的 D触发器 , D触发器输出延时一个 clk周期的 echo0, echo0再经过 1个 D触发器 ,得到延时信号 echo1,捕捉信号 echo - flag = echo0 xor echo1 and echo0。
3.2计数器单元
计数器在 clk上升沿检测开门信号、捕捉信号状态 ,开门信号有效时 ,计数器开始工作。捕捉信号有效时 ,捕获计数结果并计算出距离值 ,存入相应地址的寄存器 ,寄存器地址加 1,等待下一个有效的捕捉信号。寄存器存储数据格式如表 1所示。当被测目标个数大于 8时 ,寄存器地址溢出 ,计数器停止计数 ,否则计数器溢出后停止工作并清零 ,等待下一个主波开门信号。
3. 3 串口收发单元
系统与上位机采用 115200 bp s的波特率进行通信。串口收发单元产生与数据率相同频率的发送时钟 TXC,在发送时钟上升沿发送待发数据。产生数据率 8倍的接收时钟 RXC,接收时钟启动后 ,单元内部计数器从 0开始计数 ,当计数器数值为 4时 ,即此时基本处于数据信息位的中央位置 ,数据稳定 ,输出采样时钟 SCLK。此后 RXC每 8个时钟周期输出一个 SCLK,每次采样都能保证在数据信息位的中央 ,即数据稳定值处 ,直到接收到“停止位 ”为止。
4 实验结果
基于 CPLD的多目标脉冲激光测距系统是实现多目标测距的理想途径。在实验中 ,使用 Borland Delphi 7编写的计算机软件模拟上位机 ,利用计算机串口与多目标脉冲激光测距机进行通信 ,软件显示测量结果。多目标测距机对大约 5 km处楼群测距 ,楼群前方有树木及电线遮挡 ,系统返回的距离值分别为 450 m , 600 m, 5050 m , 5225 m。
5 结 论
本文的多目标脉冲激光测距系统可以对测量方向上的 300~10000 m范围内的 8个目标进行测量 ,并传输给上位机 ,达到了设计要求。该方案与传统的激光测距系统相比较 ,减小了系统体积 ,增强可移植性 ,提高了激光测距系统的灵活性和可靠性 ,可以提供更多的目标距离信息。
在本文多目标脉冲激光测距系统的基础上 ,对原方案加以改进和完善 ,根据概率理论进一步处理距离数据 ,可以提高接收系统的信噪比 ,降低虚警率 ,可以提高脉冲激光测距系统的测距能力 ,抗干扰性、准确性和灵活性 ;本系统测距精度较低 ,可以很好地移植到具有锁相环功能的 FPGA中 ,利用锁相环提高基准时钟的频率 ,从而提高测距精度。
本文章转自爱学术(aixueshu.com),如有侵权,请联系删除