基于Compact RIO的多路信号采集及处理平台设计*

2013-11-23 04:18:50
舰船电子工程 2013年5期
关键词:采集卡信号处理控件

(91388部队94分队 湛江 524022)

1 引言

利用水听器基阵接收信号是水声学研究中最常用的手段之一,现在大多数的水声试验仍然使用模拟基阵获取水声信号,将多路模拟信号直接上传至信号接收端。这就涉及到多路模拟信号的同步采集问题。本文基于LabVIEW语言和Compact RIO 硬件平台,实现了多路信号的实时同步采集,采集到的信号可以在Compact RIO 的FPGA 模块上直接进行信号处理,解决了普通采集卡只能在计算机中进行信号处理的问题,大大提高了程序运行的速度。

图1 系统硬件结构图

2 系统硬件简介

系统硬件设计主要包括PC 机和Compact RIO。本设计利用信号发生器发射信号,经水听器发送出来,由于水听器出来的信号很小,采集卡不能够采集,所以在接收端我们加了一个信号预处理器,对水声信号进行滤波、放大,便于采集卡采集。为了实时的采集处理信号,我们选用CRIO9014编程控制器和NI 9215 采集卡,其分辨率为16位,4路差分模拟输入,最大采样率为100kS/s。

NI Compact RIO 硬件平台是一个基于FPGA 技术的嵌入式系统,包含一个嵌入式实时处理器和一个可重复配置I/O FPGA 核的底板。FPGA 芯片是Compact RIO 体系结构的核心,内置数据传输机制,负责把数据传到嵌入式处理器以进行实时分析、离线处理、数据记录或与联网主机通信。同时,利用LabVIEW FPGA 基本的I/O 功能,用户可以直接访问Compact RIO 平台的每个I/O 模块的输入输出电路。所有的I/O 模块都包含内置的接口,信号调理、转换电路(如ADC或DAC),以及可选的隔离屏蔽,用户根据测试需求可选用不同的I/O 模块。Compact RIO 实物如图2所示。

图2 Compact RIO 实物图

3 信号采集及处理平台设计

为了信号采集及处理平台软件开发的周期,同时又便于程序的可读性与可维护性,设计过程中采用了模块化和结构化编程的基本思路。软件设计基于LabVIEW 2011开发环境,利用Real-Time和FPGA 工具包,并借助信号采集及处理函数实现信号的采集、滤波、时域分析及频域分析等功能。软件结构分为两层:Compact RIO 平台的程序设计以及上位PC机的程序设计。

3.1 Compact RIO 平台的程序设计

数据的采集与处理是基于Compact RIO 平台由Lab-VIEW RT 和LabVIEW FPGA 实现的。FPGA VI部分程序框图如图3所示,While循环中,采用顺序结构执行定时采集四通道的数据采集。数据在缓存过程中,由于是四通道的数据采集,为了保证通道之间的数据互不影响,使用函数选板中Build Array函数建立一维数组,然后将数据依次写入DMA FIFO 缓存区中。

图3 FPGA 程序框图

3.2 上位PC机主程序设计

信号采集及处理平台程序的前面板是与用户交互的操作面板,因此要求其界面友好、直观、便于操作。主程序功能模块由4部分组成:数据采集、数据处理分析、文件管理以及帮助信息。主程序VI对各功能子VI动态调用是基于事件结构节点实现的,通过点击界面上各功能模块按钮就可以调用相应的功能。

3.3 主要功能模块设计

3.3.1 数据采集模块

数据采集模块是整个软件的核心,只有采集到正确的信号才能够对信号进行后续的处理,Compact RIO 的数据采集是利用FPGA 技术控制采集卡采集信号。在进行数据采集时,必须协调同步FPGA 程序和RT 程序,两者工作采用握手方式,使RT 程序通过触发FPGA 程序相应的属性控制FPGA 程序运行。在运行过程中,RT 程序中首先需要配置FIFO 的存储深度;在FPGA 程序中,主要用到两个控件:FPGA I/O Node控件和Write FIFO 控件。FPGA I/O Node控件用来执行数据采集的操作;Write FIFO 控件是将采集到的数据写入FIFO 中,在数据传输时,FPGA 程序将采集到的数据先存储到FIFO 中,RT 程序再从FIFO 中读取数据。通过FIFO 实现了FPGA 与RT 的数据传递。

图4 RT 程序框图

3.3.2 数据处理与分析模块

数据的处理与分析模块可以对采集到的信号进行时域、频域以及时频联合分析。程序的前面板由Tab控件来组织,用户可以点击不同选项来查看分析结果;程序面板由While循环和Case Structure(选择结构)组成。其中,时域分析主要包括时域波形显示、特征参数分析、自相关分析和互相关分析;频域分析包含FFT、功率谱、幅值相位谱等多种分析,用户可以在列表中选择。

图5 数据的处理与分析模块框图

3.3.3 文件管理模块

文件管理模块实现数据存储功能。数据存储完成原始信号的记录,在需要进行数据回放或后续处理时,可以读取原始信号记录文件;在帮助信息模块中,用户可以点击“帮助信息”按钮获得使用说明和实时帮助。

4 试验与结果分析

为了验证系统的可行性,在实验室对整个系统进行了实验,利用信号发生器发射频率为10KHz,宽度为10ms的单频信号,通过换能器将信号发射出来,信号经过信号预处理器后传送至采集卡。本文选择的是NI CRIO-9014及9215采集卡,可实现四通道的动态信号采集,最大采样率为100kS/s。基于Compact RIO 平台实现四通道的数据采集,上位PC通过以太网进行实时远程监测,四路水听器接收水声信号,经NI 9215采集卡采集后在CRIO-9014的FPGA 底版上直接进行信号处理,对信号经过滤波、取包络、判决大小、测时延等一系列处理,得出每路信号测得的目标声源的时延值。用户还可以通过点击数据处理与分析模块中不同选项来查看时域、频域以及其它信息。结果表明,本文开发的信号采集及处理平台能够满足测试的要求。

图6 相关分析显示面板

5 结语

本文利用虚拟仪器技术,结合NI公司的Compact RIO编程控制器及主控计算机,建立了一套集数据采集、存储、显示和信号实时处理于一身的综合系统。系统可以独立完成水声阵列信号的采集和大运算量的实时信号处理,同时可以通过波形显示控件的设置,实现示波器的部分功能。本系统开发周期短、效率高,其可靠性、稳定性、测试精度等方面性能优越,并具备良好的扩展性和可维护性,有着广泛的应用前景。

[1]张桐,陈国顺,王正林.精通LabVIEW 程序设计[M].北京:电子工业出版社,2008.

[2]林正盛.虚拟仪器技术及其应用[J].电子技术应用,1997(3).

[3]何芝霞,黄昶.共享变量技术在Compact RIO 中的应用[J].计算机系统应用,2008(12):121-123.

[4]李猛,金世俊.基于Compact RIO 的应变采集系统的设计和实现[J].研究与开发,2007,26(7):12-14.

[5]佟春明,王天利.基于LabVIEW 的信号处理系统开发[J]辽宁工学院学报,2003,23(6):17-20.

[6]张旭,张春梅,王尚锦.虚拟仪器软件LabVIEW 和数据采集[J].微机发展,2004(3):77-79.

[7]刘丽桑.基于LabVIEW 的虚拟信号处理系统[J].工业控制计算机,2007(9):53-54.

[8]李守军,包更生,吴水根.水生定位技术的发展现状与展望[J].海洋技术,2005(1):130-135.

[9]林涛,谢永兴,刘旭东.基于CompactDAQ 的电路板控制与采集系统设计[J].计算机与数字工程,2011,39(3).

[10]于平.两种水声导航定位算法的应用与分析[J].靶场试验与测量,2004,1:21-23.

猜你喜欢
采集卡信号处理控件
高精度AD采集卡性能测试及评价方法研究
中国测试(2022年2期)2022-03-19 09:57:30
《信号处理》征稿简则
信号处理(2018年5期)2018-08-20 06:16:02
《信号处理》第九届编委会
信号处理(2018年5期)2018-08-20 06:16:00
关于.net控件数组的探讨
软件(2018年7期)2018-08-13 09:44:42
《信号处理》征稿简则
信号处理(2018年8期)2018-07-25 12:25:42
《信号处理》第九届编委会
信号处理(2018年8期)2018-07-25 12:24:56
面向数控机床的多通道传感数据采集卡设计
并行高速采样在地震物理模拟采集中的应用
PCI-e高速数据采集卡的驱动与上位机软件设计
电子器件(2015年5期)2015-12-29 08:43:12
就这样玩会VBA中常见的自定义控件
电脑迷(2012年24期)2012-04-29 00:44:03