【好设计论文】基于FPGA的光纤振动定位系统的设计与实现
摘要:针对防区周界被入侵时无法实时定位报警的问题,设计并实现了一种可实时定位的分布式光纤振动定位系统。以马赫-曾德尔光纤干涉技术为基础搭建光路,采用以FPGA结合高速ADC的硬件平台,对光路传来的两路信号进行转换、采集,并以互相关为主要算法处理采集信号得到振动位置。在一段160 m的光路上进行试验,系统能在振动发生后500 ms内给出振动位置。设置采样率为10 MHz,经过多次定位测试得出系统实际的定位误差为±10 m。且定位不需要上位机,提高了装置便携性,降低了成本。
中文引用格式: 罗义军,方理. 基于FPGA的光纤振动定位系统的设计与实现[J].电子技术应用,2018,44(10):60-63.
英文引用格式: Luo Yijun,Fang Li. Design and implementation of fiber-optic vibration positioning system based on FPGA[J]. Application of Electronic Technique,2018,44(10):60-63.
光纤传感器可探测光纤铺设沿线任意点的振动信息,其中干涉型传感器光纤中光功率损耗小,适用于复杂环境监测、周界安防等[1]。基于双马赫-曾德尔干涉结构的分布式光纤振动定位系统具有检测距离长、不受电磁干扰等优点[2]。很多研究者对此技术进行开发并已取得一定成果,但仍存在检测慢、误差较大等问题[3]。多数研究者在采集数据后算法部分由上位机完成,这样将大大增加一个计算过程的时长。而FPGA运行速度高,有很高的灵活性,在处理数据吞吐量大、速度高等问题上具有明显优势[4]。基于这些优点,本文以FPGA为平台,设计了一种基于马赫-曾德尔干涉技术的光纤振动定位安防系统。
1.1 定位原理
系统中光路模型如图1所示。
图中L1、L2分别为振动臂和参考臂,L3为导引光纤,C1、C4、C5为光耦合器,C2、C3为光环形器。光路模型以双马赫-曾德尔光纤干涉技术为基础,假设振动臂上距离C4 R处发生一入侵行为,振动位置为[5]:
式中c为光速,n为光纤的折射率,L1、L3为固定值,因此只需测两路信号到达两探测器的时间差tΔ即可求得入侵位置R。
系统精度可由相邻两采样点之间的时长即采样周期时长求得,即:
1.2 振动信号分析
实际应用中外部因素会影响信号质量,需首先对信号进行分析以得到振动信号的特征以保证算法可行性。本文使用FPGA结合高速ADC对振动信号和底噪进行采集,使用MATLAB对所采集信号进行频谱分析。经多次采集分析得振动信号的频率范围主要分布在200 Hz到10 kHz,且振动信号的幅度远大于噪声幅度。据此可设计对应的滤波器滤除噪声而只保留振动信号。图2和图3分别表示某次入侵振动信号波形和频谱。
1.3 定位算法设计
经滤波处理的两路波形形状仍相似度很高且信号时间延迟不变,故可采用互相关算法处理该信号求得两路信号时间差。互相关公式如式(7)所示:
2.1 系统框图
基于以上分析,可设计出如图4所示系统。
光路中振动发生后的干涉光信号转换为电信号后经调理电路,由FPGA高速采集板采集数据并进行算法处理,可由上位机显示检测结果。
2.2 主要算法的FPGA实现
FPGA程序框图如图5所示。
为定位振动位置,首先要判断哪段信号为振动信号。光纤在静止状态下发生振动会导致所采集数据的离散程度增大,因此可使用方差算法得到振动的起始点。设计中持续对采集到的数据进行方差计算,并设置方差阈值,若连续多次计算结果均大于该阈值,则判断振动发生,之后所采集到的一段数据即为振动数据,每次振动时长为500 ms以上,若按10 MS/s采样率计算,每次可采集最少5 000 000个数据,这些数据可满足互相关模块进行多次运算。因此在FPGA中设计方差程序对振动进行判断。图6为设计的FPGA程序中方差的结构图,图7为Quartus II中设计的方差模块顶层图。
判断振动发生后将此后经过滤波的信号送到互相关运算模块。本文设计了一种并行计算的互相关结构,不需存储且可实时进行计算。由于主要振动信号低频约为200 Hz,需至少对信号进行一个周期即50 ms的采集,若采用10 MS/s采样率,该结构即可在50 ms内对500 000个数据进行处理完成一次互相关计算,则一次振动可进行约10次互相关计算。图8为设计的FPGA程序中互相关的结构图,图9为Quartus II中互相关模块顶层图。
一次计算结果不足以证明该位置发生了振动,刮风下雨等情况可能导致整个振动臂发生振动,为排除这种情况影响,对连续10次互相关结果进行记录,共耗时约500 ms。若10次中有超过5次结果一样则判定该位置发生了入侵行为。这种简单的处理有效地避免了很多非入侵情况造成的误触发。图10为Quartus II中互相关结果处理模块顶层图。
互相关计算结果为两路数据延迟的点数,因此需根据采样率、光纤折射率、光速等值将延迟点数转换为实际的振动位置。
根据以上分析和设计,制作了一套实验装置。装置系统中光路部分使用市面上普通8芯光缆,铺设于小区围栏之上,振动臂总长约160 m。光电转换部分使用PIN激光管。这种激光管相较于大多系统使用的PINFET光电探测器具有更高的抗噪性,且成本更低。耦合器和光环形器收纳于尾纤盒中以免受外界干扰和破坏。
系统电路部分置于实验室内。模数转换器使用ADI公司高速ADC AD9643,双路采样时每路采样率最高125 MS/s,测试中设置ADC采样率为100 MS/s,对采样数据进行下抽,使数据速率即实际采样率为f=10 MS/s,则系统定位精度为:
FPGA使用Altera公司CycloneIV系列产品EP4CE115F23I,这款FPGA芯片价格低廉,引脚多,逻辑资源丰富,可满足系统设计要求。开发软件使用Altera公司的Quartus II 。通过JTAG将程序下载进FPGA,用signalTapII对各模块关键信号进行抓取验证。图11为方差模块信号波形,图12为采集到的振动波形及互相关信号波形图,可看出两路波形相似,有很高的相关性。
经观察抓取的信号进行调整,使FPGA工作时序与设计相符。之后进行整体功能测试。整体测试中以小区大门为0起点,对铺设的光纤每隔10 m一个点进行多次测试,测试时采用手握或敲击光纤等方式来模拟入侵动作。图13为使用MATLAB绘制70 m处某次互相关计算的结果。
为方便观察,将定位结果上传到上位机,每次测试可直观地观察定位结果。图14为某次100 m处振动测试的结果的上位机显示。
由于使用的光缆外层较硬,测试时测试点的振动会带动附近一段光纤振动,会导致出现定位偏差,因此需对每个点进行大量测试观察实际的定位偏差。表1为其中3个测试点测试得到的定位结果,每个点进行了100次测试。
由上测试结果可看出该系统具有较稳定的报警,误报漏报率小,系统定位误差稳定在入侵位置左右10 m之间,满足长距离安防需求。
本文以FPGA为平台,设计了一种可实时定位的分布式光纤振动定位系统,算法处理在硬件中完成,防区上发生振动时系统能在500 ms左右做出响应并给出定位,而入侵动作为秒级,因此几乎在振动的瞬间即可做出反应。根据实际需求,上位机可有可无,因此节省了成本,提高了装置便携性。实测结果表明,设置采样率为10 MHz,系统精度为±10 m,可根据需要调节采样率。但实际环境常常较为复杂,可能导致不确定性触发,故后期可增加其他算法排除此类情况。
参考文献
[1] 林文台,梁生,娄淑琴,等.一种低误报率的新型光纤分布式振动传感系统[J].红外与激光工程,2015,44(6):1845-1848.
[2] 郑潜,刘海.光纤地波周界安防设备设计与实现[J].光通信研究,2016(4):45-48.
[3] 陈沁楠.双马赫—曾德型分布式光纤振动传感若干关键技术研究[D].天津:天津大学,2015.
[4] 许义宝.基于FPGA的远距离多节点光纤传输系统设计与实现[D].合肥:安徽大学,2017.
[5] 王晓锋,王辅东,陈焕新.双马赫-曾德尔光纤传感系统的定位原理与算法[J].中国高新技术企业,2017(8):19-20.
[6] 薛迎勃,李宏.互相关运算算法在微传感器检测中的应用[J].电子设计工程,2015,23(1):93- 95.
作者信息:
罗义军,方 理
(武汉大学 电子信息学院,湖北 武汉430072)