基于FPGA软核的参数可变的压力测试系统设计

2015-05-12 03:15夏永乐赵化彬
山西电子技术 2015年4期
关键词:参数设置冲击波上位

夏永乐,杨 志,赵化彬

(中北大学仪器与电子学院,山西太原030051)

爆炸冲击波压力测试是对常规武器系统杀伤力评价的有效技术手段,可为武器的威力对比,性能评估提供重要的依据[1,2]。为了获取整体信息,往往需要在测试现场布设数目较多的测试装置[3]。由冲击波超压经验公式分析,超压峰值随着弹药的当量和测点距爆心的距离产生十分显著的变化[4]。在实际测试中,要求测试系统根据实验对象和测试环境合理设置参数。传统的测试系统设计中,为了完成不同的测试任务,往往需要重新设计PCB电路。而设计新的系统不仅花费较大工作量和成本,并且开发周期长。另外,倘若测试系统需要完善和升级时,则难度较大。

本文根据不同环境下的冲击波压力测试需求,设计了可配置的FPGA软核,在硬件电路的基础上,通过移植可配置的软核[5],在较短的开发周期内,设计出测试参数可变的测试系统。解决了传统测试系统的开发周期长、成本高、电路可复用性差等问题。对测试系统进行了实验验证后,应用到静爆测试中,有效获得了压力数据。结果表明,系统具有很高的可靠性。

1 系统组成

由于测试环境恶劣并且爆炸存在极大的破坏性,极易造成测试系统的损坏。为了提高了系统的存活率和智能化,采用存储测试技术,将传感器及其调理电路、采集存储电路、电源等集成一体,构成一个可独立工作的微小系统。将其植入爆炸现场,完成冲击波信号采集与存储,实验完成后回收测试系统,由计算机回读数据并再现测试信息。测试系统总体组成如图1所示,硬件由ICP压力传感器、调理电路(程控放大器、运算放大器、低通滤波器)、AD转换器、FPGA、SDRAM存储器及USB芯片等组成。软件设计主要包括FPGA软核和上位机。上位机采用LabVIEW设计,具有良好的人机交互界面,实现测试参数设置与回读,数据读取与显示的功能。

图1 系统基本结构图

本文研究重点是设计出满足不同测试环境下的压力测试系统可移植、可复用的软核。通过调用所需要的功能控制软核,配合周围电路,完成冲击波压力测试。

2 软核设计

FPGA具有可静态重复编程和可动态系统重构的优点,因此可通过编程来达到修改硬件功能的目的。软核设计是通过反复验证的、具有特殊功能的宏模块,可使这些编程数据进行移植和修改。只要对FPGA内部的逻辑模块和I/O模块进行配置后,即可实现相应的电路功能。同一FPGA输入配置好的软核,便可完成压力测试的逻辑功能。软核设计包括有:数据采集模块软核、参数设置模块软核、数据存储模块软核、USB通信模块软核。

2.1 数据采集模块软核

时钟是同步电路系统设计的关键,系统采用了数字时钟管理单元(DCM)管理和控制时钟信号,以提供优质的时钟信号源。由于每次实验准备的时间不同,而触发具有随机性,有可能在准备期间因现场干扰造成系统误触发,导致测试失败。为了提高系统可靠性和降低系统功耗,设计了定时和参数可变的功能。测试系统在现场布置好后,根据离弹药爆破时刻设置定时长度。在定时时间内系统处于低功耗模式并且只有内部计数器在工作,其他模块不工作。当定时结束后,唤醒系统,加载事先设置好的测试参数,进入待触发模式,等待冲击波信号的到来,完成数据的采集与存储。数据采集模块工作流程图如图2所示。

图2 数据采集模块工作流程图

2.2 参数设置软核设计

冲击波超压随弹药当量和距爆心的距离变化而变化,实验前需根据布点的位置及测试对象,合理设置测试参数。主要包括:定时时长,触发电平、放大倍数、采样频率、存储长度、负延时。参数设置模块原理图如图3所示,可通过上位机利用USB接口设置参数。

图3 参数设置模块原理图

首先设定了一个合理的触发电平值,当AD芯片采样所得的电平值大于预设值时,则满足触发条件,否则不触发。冲击波信号一旦到来,此时给采集控制模块一个信号以完成采集。然后根据测试环境预测测点的压力大小,以选择合理的放大倍数。模块提供了1M,2M等不同采样频率,以完成不同测试任务。为了实现能观测信号来之前的一段信息,设置了负延时,其大小决定了触发前存储的长度。另外,也可对数据存储长度进行设置。以容纳完整的信号为原则,对存储长度、负延时进行合理的设置,以确保冲击波压力信号的完整性和连续性。

2.3 数据存储软核设计

爆炸冲击波具有初值高、衰减快、持续时间短等特点,其测试是一个瞬态过程。为了有效地捕抓冲击波压力信号,选用PCB公司的ICP压电压力传感器,其响应时间小于1 us,同时存储器采用存取速度快的SDRAM。在AD采集完成后,不停地将数据循环存储到SDRAM中,同时原数据将会不断被新数据刷新覆盖,当达到设定的存储长度后会停止覆盖,以存储有用的数据。数据存储模块原理设计如图4所示。

图4 数据存储读取控制模块原理图

2.4 USB通信模块软核及其时序仿真

测试系统与上位机的通信是系统设计的关键环节。USB总线具有传输速度快、即插即用等优点[6]。但复杂的USB传输协议和驱动,很大程度上限制了系统的设计与开发。为此,USB芯片选用FT245R,其内部集成了USB协议,完成并行数据与串行数据的双向转换[6]。系统的参数设置和数据读取是通过上位机完成的,上位机将相应的控制命令以串行数据存储在FT245R的内部接收FIFO中;而FPGA的回读信号和数据则以8位并行数据存储在发送FIFO中。通过通信模块软核控制FT245R,实现数据的传输。

为了验证通信软核功能的正确性,利用Modelsim SE对其进行了时序仿真,如图5所示。先进行读操作,图中高亮的data_usb的前4个bytes数据,表示上位机从FPGA中回读的4个参数;然后进行写操作,图中data_usb的中间4个bytes数据表示上位机对FPGA设置的4个参数;而data_usb的最后2个bytes数据则表示上位机设置的2个命令。从时序图可得,rxf和rd、txe和wr的时序,与FT245R芯片读时序和写时序完全相符,说明该模块设计正确,功能满足要求。

图5 通信模块时序仿真图

3 系统性能验证

为了验证采用软核设计压力测试系统的准确性和可靠性,进行了信号采集试验。首先利用Agilenl公司的33521A信号发生器,产生频率为1 kHz、幅值为2 V的正弦信号,如图6所示。然后设置测试系统的参数,具体包括放大倍数:1倍,触发电平:1172,采样频率:1 M,负延时:64 k,存储长度:1 M。设置完成后,测试系统对正弦波信号进行采集。利用上位机通过USB接口读取采集数据,并将数据及测试信息进行显示,如图7所示。

图6 正弦波输入波

由图可知:正弦信号实际频率为1.000 0 kHz、幅值为2.018 V,而采集到的波形频率为0.999 kHz、幅值为 2.012 V,测试误差为0.297%,满足设计要求,验证了测试系统的准确性。另外,图7右下方回读的测试信息与之前设置的参数一致,进一步验证了参数设置功能的正确性。

图7 系统测试波形图

4 弹药静爆试验

将20 kg的某裸装弹药架高1.5 m进行静爆实验,根据测试要求并尽可能保护测试系统,将设计好的2套测试系统分别埋设于在同一直线上距爆心7.5 m、15 m处。根据经验公式,计算的冲击波超压峰值理论值分别为0.148 3 MPa,0.038 8 MPa。设置好合理的参数后,让其均处于定时状态,实验人员安全撤离后按时进行爆破。实验完成后,回读数据。测试系统在7.5 m、15 m处测的冲击波超压峰值为0.139 2 MPa,0.034 3 MPa,接近理论值,实测压力曲线如图8所示。多次实验表明测试系统可靠、稳定。

图8 实测压力曲线

5 结论

针对不同环境下的冲击波压力测试,设计了可配置的FPGA软核,实现对周围硬件电路的控制,完成了瞬态冲击波压力信号的采集。根据不同测试条件,可对软核进行重新配置,实现系统快速设计,提高了电路复用性。测试系统在多次实弹测试实验中得到了应用,其稳定性、可靠性得到了验证,并能有效获取数据。

[1]张志杰,王代华,王文廉,等.具有无线数据传输与控制功能的冲击波超压测试系统[J].计测技术,2010,30(1):22-25.

[2]王代华,宋林丽,张志杰.存储测试系统的USB接口设计[J].现代电子技术,2012,11:133 -135.

[3]马铁华,祖静.冲击波超压存储测试技术研究[J].仪器仪表学报,2004,25(4):134 -136.

[4]赵岩,杜红棉,马铁华.参数可变的无线式冲击波超压测试系统的研究[J].传感器与微系统,2011,30(5):58-60.

[5]徐文波,田耘.Xilinx FPGA开发使用教程[M].北京:清华大学出版社,2012.

[6]裴峰,吴健,魏海潮,等.面向存储测试系统的FT245RL数据传输控制器设计[J].电子测试,2011,8:78-80.

猜你喜欢
参数设置冲击波上位
武汉冲击波
能源物联网冲击波
特斯拉 风云之老阿姨上位
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
医生集团冲击波
蚁群算法求解TSP中的参数设置
RTK技术在放线测量中的应用
以新思路促推现代农业上位
基于STM32处理器的大棚温湿度监控系统设计