1 引言
虚拟仪器(VI)概念的提出是测控技术领域的一次革命。由于虚拟仪器可借助PC机强大的计算及处理能力,可由用户定义和扩展功能,且价格低廉,深受广大用户青睐。目前,虚拟仪器已经逐渐走进大学实验室,开始为实验教学和科研服务。本文介绍一种虚拟信号分析仪的软件设计方法,以美国NI公司的LabVIEW6.1为开发平台,配合NI公司的6024E采集卡,实现虚拟信号分析仪设计。
2 分析仪功能介绍
信号分析仪是用来对电信号进行测量、显示、波形存储、时域和频域分析的仪器。虚拟信号分析仪主要由参数设置、功能选择、信号一、信号二和互相关分析五个模块构成:
(1) 参数设置模块。完成通道配置,设置扫描率、扫描数和缓冲区大小。
(2) 功能选择模块。实现波形显示、波形存储、读取波形数据、更新信号和退出。
(3) 信号一。对应采集通道一控制工程网版权所有,可实现滤波及加窗、自相关分析、自功率谱分析、统计分析和幅值分析。
(4) 信号二。对应采集通道二,功能与信号一类似。
(5) 互相关分析。对信号一和信号二进行互相关分析和功率谱分析。
程序运行时,首先通过往通道控件中输入
3 波形采集
波形采集的框图程序如图1所示。框图程序中用到的子函数功能如下。
图1 波形采集框图程序
AI Config VI:设置采样前的各种参数。
DAQ Occurrence Config VI:设置一个数据采集事件。
AI Start VI:指定程序中用于开始采集的参数控制工程网版权所有,如设置扫描次数、采样率等。
AI Read VI:设定从采样缓存区读取数据的那些参数,如设定每次读取的数量。
Clear VI:把task ID废除,从而将采样所用的内存缓存区和其它资源释放。
Simple Error Handler VI:将出错信息通知用户。
Wait On Occurrence VI:处理事件等待。
在波形采集程序中控制工程网版权所有,用上述函数,根据数据流将它们组合起来,再对其进行一些必要的处理。第一个DAQ Occurrence Config VI设置一个数据采集事件。在While循环中控制工程网版权所有,Wait On Occurrence函数在后台休眠,也就有效地把While循环设置于休眠状态。在设定的数据采集事件发生后,即采集到事先指定数量的数据,LabVIEW通知Wait On Occurrence函数停止等待。由于Wait On Occurrence函数的time out(超时)输出参数连接到包含有AI Read VI的选择结构的选择端口上,就一定在 Wait On Occurrence函数停止等待后,才会用AI Read VI。
4 波形存储
图2波形存储框图程序
波形存储的框图程序如图2所示。框图程序中用到的子函数功能如下。
Open/Creat/Replace File VI:提示数据是以BIN(二进制)为后缀的形式存储在文件中。
AI Config VI:设置采样前的各种参数。
AI Start VI:指定程序中用于开始采集的参数控制工程网版权所有,如设置扫描次数、采样率等。
AI Read VI:设定从采样缓存区读取数据的那些参数,如设定每次读取的数据点数。
AI Clear VI:把task ID作废,从而将采样所用的内存缓存区和其它资源释放。
Simple Error Handler VI:将出错信息告诉用户。
时间日期子VI:显示数据存储时的具体时间和日期。
Match Pattern VI:把输入的字符串分成3段来表示,如年、月、日。
Scan Form String VI:把输入的字符串转换为相关格式的字符串。
Concatenate String VI:把输入的字符串放在一个数组中输出。
Format Date/Time String:把输入的时间、日期字符串以规定的格式输出。
Replace Array Subset VI:用其它的数据代替索引所指数组中的数据。
Search 1D Array VI:从一维数组的第一个数开始寻找指定的元素。