郝亮,孟立凡,刘灿,高建中
(中北大学 仪器科学与动态测试教育部重点实验室,太原030051)
电缆故障是通信行业中的常见故障,而电缆测距是排除故障的前提条件。准确的电缆测距可以缩短发现故障点的时间,利于快速排除故障,减少损失。窄脉冲时域反射仪利用时域反射技术来测定电缆断点位置,可以同时检测出同轴传输系统中多个不连续点的位置、性质和大小。窄脉冲信号持续的时间非常短暂,为了能够有效地捕捉到窄脉冲信号,对A/D采样率和处理器速率提出了较高的要求,传统的数据采集已经不能满足系统设计需求。本文介绍的单路多次低速数据采集方案硬件结构简单,成本低,能够满足系统设计要求。
根据电磁波理论,电缆即传输线。假若在电缆的一端发送一探测脉冲,它就会沿着电缆进行传输,当电缆线路发生障碍时会造成阻抗不匹配,电磁波会在障碍点产生反射。在发射端,由测量仪器将发送脉冲和反射脉冲波形记录下来。实际测试中,具体障碍的波形有所差异:断线(开路)障碍时,反射脉冲与发射脉冲极性相同;而短路、混线障碍时,反射脉冲与发射脉冲极性相反。波形如图1所示。
图1 发射脉冲与反射脉冲波形
设从发射窄脉冲开始到接收到反射脉冲波的时间为Δt,则 :
其中,v为脉冲波在电缆中的传输速度;l为电缆故障点与脉冲波送入端的距离。
由以上分析可知,在同一个固定障碍的线路上多次送入同一脉冲电压,其反射脉冲将同样地在同一位置多次出现。
要实现对反射窄脉冲的捕获和1 m的测距分辨率(在波速为200 m/μ s的情况下),则=10 ns。即要求抽样的时间分辨率为10 ns,对应的数据采集系统频率高达100 MHz。同时,最大测量范围是2 km时,要求发射脉冲的重复周期实际上,电磁波在电缆中的传播速度可能小于200 m/μ s,这就要求发射脉冲的重复周期大于20 μ s。该时域反射已发射脉冲的重复周期 T=40 μ s,因此需要存储的数据是40 μ s的时间间隔,每10 ns采集一个点,共需要4 K个存储单元。
采集系统的硬件电路由单片机、A/D转换器、隔离器、存储器、地址发生器及相应的控制逻辑组成,其结构如图2所示。本文选用TI公司的单片机MSP430F149。
图2 系统硬件结构框图
脉冲波形和反射波形在同一测试电缆线上是可多次重复出现的。只要发射脉冲产生一次,反射脉冲就会产生一次,而且波形是相似的。当要求对波形进行100 M Hz的数据采集时,只需使用转换速率为25 MHz的 A/D转换器进行4次采样,每次的间隔时间为是10 ns。因此,可以采用该方案进行数据采集,将系统设计的成本降到最低,满足电缆测试的高精度要求。
单片机控制部分主要完成系统清零和数据读出。其具体功能是:负责A/D转换过程的启动及控制;对采样后存储于存储器内的采集数据进行处理。其中,P2口用作数据端口,P1.0为系统清零位(包括地址以及控制逻辑部分),P1.1控制A/D转换器与存储器的连接和断开,P1.2为采集完成位,P1.3读出数据地址信号控制,P1.4完成对存储器的读写控制。
系统上电后,单片机首先控制A/D转换器直接和存储器连接,接着给出系统清零信号,将地址和控制逻辑的计数器清零,等待触发脉冲的到来,单片机进入低功耗模式。开始数据采集后,单片机以中断方式来判断采集是否完成;采集完成后P1.2产生中断信号,唤醒单片机;系统再一次清零并断开A/D转换器和存储器的连接,控制地址发生器将存储在里面的数据读出,一次采集就完成了。
窄脉冲时域反射仪要求的分辨率较高,所以要求的采样频率相当高。例如,要实现1 m的测距分辨率(在波速为200 m/μ s的情况下),要求波形抽样的时间分辨率约为10 ns,对应的数据采样频率达100 MHz[3]。
逻辑控制要实现对一固定波形多次采样,并进行波形拼凑。实现高速数据采集电路,即将需一次完成的100 MHz高速采样[2]转换为较低频率的4次采样,将各次采样的结果进行重新组合,以拼凑出一个完整的100 M Hz采样波形。系统的实际数据采样速率为25 MHz,采样时间间隔为40 ns。每完成一次波形测试,仪器要连续发射4次脉冲,数据采集电路启动 4次。由于障碍点是固定的,每次发射脉冲时仪器接收到的脉冲反射波形是相似的,只不过发射脉冲的时刻与启动采样的时刻延时分别从0 ns、以10 ns为间隔增加到40 ns。
3.2.1 FPGA的控制流程
FPGA的控制流程如图3所示。硬件逻辑控制模块可以产生高速数据采集所需的A/D转换器和存储器的控制信号。
图3 FPGA的控制流程
3.2.2 FPGA控制逻辑的具体实现
高速数据采集[1]控制逻辑的设计主要包括:脉冲个数检测电路的设计和读写存储器的地址逻辑生成部分的设计。
OP信号产生原理图如图4所示。
图4 OP信号产生原理图
脉冲个数检测电路是通过2个2位的计数器来实现的。连接 TRIG(触发启动信号)的计数器(启动计数器),判断当前是第几个脉冲,它的状态过程是00→01→10→11,连接 100 MHz晶体振荡器的计数器(晶振计数器)用来统计10 ns脉冲的个数。也就是说,当连接触发启动信号的计数器从 00→01时,晶振计数器是00状态,这时后面的状态选择输出一个由低到高的跃变OP(输出脉冲),控制后面25 M Hz数据采集开始。当启动计数器又有一个触发过来(从01→10)时,晶振计数器就开始从00→01,也就是统计一个10 ns。统计完以后,后面的状态选择又输出一个由低到高的跃变OP,开始 25 MHz数据采集。以次类推,分别是延迟20 ns和30 ns开始数据采集。
得到的OP仿真图如图5所示。
在逻辑控制设计完成后,将最后得到的25 MHz时钟输入17位计数器。每次上升沿到来,地址加1,生成的地址信号使得采样的信号存入对应的地址单元。使用Q9位是为了让输出端可以产生低电平,从而在采样数据到达所需个数时,有一个上升沿来触发其所控制的触发器,使得数据采样暂停,等待下一次采样。Q12用作反馈,数据采样到了4K后通过它进行反馈,停止A/D芯片的工作,同时将地址计数器清零,准备数据读出。当存储器存满4K的数据,AP_OE输出高电平,用于控制A/D芯片和内部地址计数器。可以看到,地址计数器在数据采集到达4K后也清零,在初始的位置等待数据的读出。系统控制原理图如图6所示。
系统控制仿真图如图7所示。
本系统在 MSP430F149单片机和FPGA控制下,通过多次低速数据采集并对采样到的数据进行重组,实现了高达到100 M Hz的高速数据采集与存储。该系统不但具有硬件成本低、系统功耗低的优点,而且数据采样频率完全不受单片机速度的影响,只取决于所选用A/D转换电路的速度和控制逻辑的设计。其测量结果准确度高,环境实用性强,可有效解决电缆断点测定的难题。
图5 OP仿真图
图6 系统控制原理图
图7 系统控制仿真图
[1]杨理践,于潇宇,高松巍.基于FPGA的海量数据采集系统的设计[J].测控技术,2009(5).
[2]皮代军,张海勇,叶显阳.基于FPGA的高速实时数据采集系统设计[J].现代电子技术,2009(6).
[3]章勇勤,艾勇,邓德,等.基于FPGA的超高速数据采集与处理系统[J].数控采集与处理,2009(2).
[4]马育锋,龚沈光.基于MSP430单片机的多路信号采集系统[J].武汉理工大学学报:交通科学与工程版,2009(2).
[5]刘军,周东辉,周亚楠.一种深海长期观测低功耗数据采集装置[J].微计算机信息,2009(10).
[6]马雄楠,方方,邱远法.基于MSP430的微功耗计数电路的设计[J].核电子学与探测技术,2008(4).