Professional Documents
Culture Documents
基于labview的虚拟频谱分析仪设计
基于labview的虚拟频谱分析仪设计
基于 LabVIEW 的虚拟频谱分析仪设计
郑利锋 杨小雪 张汉全
( 西南交通大学计算机与通信工程学院 四川成都 ,610031)
0 前 言 (4) 其开放 、
灵活的架构可随计算机同步发展 ,
随着微电子技术 、 计算机技术 、网络通信技术和 与周边设备 、 网络互联容易 ;
软件技术的高速发展 , 传统的仪器开始向计算机化 (5) 依托计算机强大的资源 , 虚拟仪器具有很
的方向发展 。虚拟仪器 (VI) 概念的产生正是基于这 强的数据处理 、 存储和分析能力 [6 - 7 ] 。
样一种技术背景 。虚拟仪器是指具有虚拟仪器面板 在测试领域中 , 频谱分析仪是一种重要的常用
的个人计算仪器 。它利用软件在微机屏幕上构成虚 仪器 。但是这种仪器的加工工艺复杂 , 生产技术要
拟仪器面板 ,在硬件的支持下对信号进行采样 ,既可 求高 ,价格昂贵 [5 ] 。采用虚拟仪器技术 ,只需在相应
以进行实时的信号分析 、 显示 ,又可以在离线条件下 的硬件支持下 ,即可以用软件编程来实现虚拟频谱
对存储的采集结果进行各种软件处理 。通过软件编 分析仪 。基于计算机强大的分析处理功能 , 可以将
写及硬件配置 ,虚拟仪器可以实现完全由用户自己 一些先进的数字信号处理方法运用于软件的设计
定义 、 适合不同应用环境和对象的各种功能 [1 - 2 ] 。 中 ,不断的增强虚拟仪器的功能 。在已有硬件的基
虚拟仪器技术在国内正处于蓬勃发展之中 , 在 础上 ,通过软件的调整与修改 ,还可以生成其他的仪
测试 、测 控 、教 学 、科 研 等 领 域 获 得 了 广 泛 的 应 器 ,例如虚拟示波器 、 虚拟函数发生器 、 虚拟毫伏表
用 [3 - 4 ] 。其优越性主要体现在以下几方面 : 等 ,使仪器的功能更加强大 、 灵活 。
(1) 可以根据不同单位各种特殊的要求 , 量身
定做各种测量 、 测试仪器 ,以提高工作效率 ; 1 虚拟频谱分析仪的结构和功能
(2) 可自行开发软件来升级各种测量 、 测试仪 1. 1 仪器结构与工作原理
器 ,以适应不断发展的需求 ; 虚拟频谱分析仪是由信号调理器 、ISA 总线的
(3) 仪器的核心是软件 ,虚拟仪器升级周期短 , 数据采集卡组成的外部采集系统加上软件构成的分
费用低廉 ; 析处理系统组成 , 它的系统结构如图 1 所示 。被测
4
© 1995-2004 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
信号传送到信号调理电路 , 由信号调理电路对它进 1. 2 仪器性能
行放大 、
滤波 、 隔离等处理 , 调理后的信号经数据采 虚拟频谱分析仪的面板如图 2 所示 , 它能提供
集卡进行 A/ D 转换 , 将模拟信号转换为数字信号 , 一个高精度的频谱分析功能 , 并且能够同时观察输
最后由控制软件对测试信号进行频谱分析和处理 , 入信号的频域显示或时域显示 。该虚拟频谱分析仪
得到测试结果 ,并按要求显示或存储结果 。 受数据采集卡采样速率的限制 , 频率范围为 0 ~
50kHz 。用户可以通过改变采样速率和数据长度 ,选
择频率分辨率 ( 频率分辨率 = 采样速率/ 数据长度) 。
例如 ,当频率分辨率为 1Hz 时 ,频谱相隔为 1Hz 的两
个等幅正弦波信号测得的分析仪响应如图 3 所示 。
提供硬盘存储 ,存储深度为 32 K。另外 ,在传统的扫
本设计采用了 NI 公司的 ISA 总线 Lab - PC - 频式频谱分析仪中 , 用户必须通过设定 span/ div 控
1200 数据采集卡 。它有八个模拟输入通道 , 支持八 制器和调节显示图像中的中心频率或起始频率 , 来
路单端或 4 路差动模拟信号输入 ; 具有 12 位的连续 确定分析仪要扫多宽的一个频带和频带在什么位
A/ D 转换 ,24 线 TTL 型数字化的输入输出 ,3 个 16 置 。而在虚拟频谱分析仪中通过程序可以直接读出
位的定时计数器 。允许系统设置 DMA 、 中断和基本 并在面板上显示基波频率和峰值大小 , 用户可参考
的输入/ 输出地址 ,避免了同系统中的其它板卡的地 这个值 ,手动调整采样速率的大小和显示图形中 X 、
址冲突 。最大抽样速率为 100kS/ s ,输入信号范围为 Y 轴的坐标 , 来观察自己感兴趣部分的频谱图 。这
- 5V~ + 5V 或 0V~10V 。另外 ,它还具有两个模拟 样就避免了扫频式频谱分析仪中用户需要对频率进
输出通道 。 行估计的过程 ,操作更为直观 、
简便 。
© 1995-2004 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
钮、 按钮 、
图形和其它的控制与显示对象 。图 2 所示
即为前面板部分 。流程图包含 VI 的图形化源代码 。
在流程图中 , 对 VI 进行编程 , 以控制和操纵定义在
前面板的输入和输出功能 ,对数据进行分析和处理 。
图 4 所示为本程序中用于进行频谱分析部分流程图
程序 。此外 ,LabVIEW 还可以通过动态连接库调用
其它语言编写的程序 , 扩展程序功能 。LabVIEW 编
程具有简单易学 、编程效率高 、
通用性好 、 交叉平台
交互性好等优点 ,是虚拟仪器开发的快捷 、 方便和功
[2 ]
能强大的软件工具 。
© 1995-2004 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
的频率值和功率值 。 为了提高存储器效率 , 我们要尽量减少冗余数
( 7) 数据存储 的产生 。由 FFT 产生的频谱中 , 只取一半频谱范围
采集进来的信号可以存储为数据型的历史文 ( 0~0. 5f s ,f s 是抽样速率) 显示 ,因为另一半数据 ( 0.
件 ,或存于 ACCESS 等桌面数据库 。供以后分析研 5f s~f s) 与 0 ~f s , 之间的数据是对称的 , 没有必要显
究 ; 也可以通过外接打印机直接打印出来 。 示。
2. 3 设计要点 另外 ,如果每个数据点是双精度格式存储 ,会占
( 1) 避免混迭现象 用 16 个字节 ,进行精确的频谱分析所需的数据非常
根据奈奎斯特采样定律 , 采样速率是待测信号 多 ,占用空间很大 。如果采用单精度格式 ,会降低一
频率的两倍 ,就可以避免时域取样而引起的频谱混 半的存储空间 。
迭现象 。但是根据这个理论值得出的波形实际中有 ( 3) 用平均法提高准确度
失真 ,据实际情况分析 ,这个比值应取为 10 ∶1 , 在数 如果被测信号在时域中是一种随机过程 , 那么
据采集卡的最高采样速率固定的情况下 , 要提高测 它在频域中也是一种随机过程 。因此 , 必须用平均
量频率的范围 ,我们采用了内插法 ,通过线性或正弦 技术来获得实际的频谱 。对于一个随机过程 , 频谱
内差使采样速率∶
待测频率的比值降为 4∶1 ,为了补 是功率谱 ,它定义为时域信号自相关函数的傅立叶
救内插带来的失真 ,在显示中又采用了平滑功能 。 变换 。因为功率谱与沿着频率轴的信号功率的分配
( 2) 性能优化 有关 ,所以通过功率平均得到的频谱曲线能够对其
对 N 点序列 x ( n) , 其傅立叶变换对 ( DFT) 定义 进行最佳预测 。
为: 帕塞瓦耳 ( Parsevel ) 理论表明 :
π ∞ ∞
∫ | x (t) | ∫ | X(f) |
N- 1
j ×2 × 2 2
x ( k) = ∑x ( n) WNnk k = 0 ,1 , …,N - 1 ,WN = e - N ( 1) dt = df ( 5)
n=0 - ∞ - ∞
1 N- 1 其中 x ( t ) 和 X (f ) 是一对傅立叶变换 , 因此 , 对
x ( n) = ∑x ( k) WN- nk n = 0 ,1 , …,N - 1 (2)
N k- 0 时域中功率求平均值 ,可以得到同样的频谱曲线 。
显然 ,求出 N 点 x ( k) 需要 N2 次复数乘法 ,N ( N
- 1) 次复数加法 , 若 N = 1024 , 则需要 1 ,048 ,576 次 3 结束语
复数乘法 , 即 4 ,194 ,403 实数乘法 , 而根据 Wi 因子 虚拟频谱分析仪的设计与实现充分运用了计算
的周期性和对称性 : 机的强大功能 ,不仅实现了一般的频谱分析仪所具
0 N/ 2
W = 1 ,W = - 1; ( 3) 有的功能 ,而且增强了分析处理能力 。它的主要技
WNN + r = WNr ,W N/ 2 + r r
= - W; ( 4) 术特点如下 :
N (1) 采用了 LabVIEW 作为开发平台 , 软件编程
可以将 DFT 的乘法计算量由 N2 降为 log2N
2 方便 、 简洁 ,效率高 ;
次 ,仍以 N = 1024 为例 ,计算量降为 5120 次 ,仅为原
( 2) 图形界面友好 ,操作简单 ,人机交互性强 ;
来的 4. 48 % 。在快速傅立叶变换 ( FFT) 里 , 如果是
( 3) 能够方便的与外设相连 ,进行打印输出 ;
基 2 算法 ,则 N 一定要为 2 的整数次幂 ,当 N 为非 2
(4) 兼容性好 , 可以随时更换高性能的数据采
的整数次幂的数时 , 要采用补零技术 。表 1 给出了
集卡 ,提高仪器性能 ;
不同数据长度的 N 值在 FFT 运算中所需时间的对
(5) 在现有硬件基础上 , 可以通过改变软件的
比 。从表 1 中可以看出 ,N = 215 - 1 时 , 所需的时间
设计 ,实现别的仪器功能 , 例如虚拟示波器 、
虚拟函
不仅比 N = 215时长 , 而且比 N = 216 时还要长 。这个
数发生器等 。
测试结果是在 CPU 为 P - Ⅱ566M 的台式机上测得 ,
参考文献
每个数据取 10 次运行的平均值 。 1 顾郁莲 ,蔡宣平 ,颜飞翔 . 虚拟仪表的可视化技术 . 电子技
表 1 不同数据长度 N 的 FFT 执行时间比较 术应用 ,2000 , (6) :29~31
数据长度 N 32 ,768 32 ,767 65 ,536 2 National Instruments Corporation. LanVIEW user’s manual.
分析方法 (215 ) (215 - 1) (216 ) 1998 ,1~8
FFT 0. 254s 0. 558s 0. 518s ( 下转第 40 页)
7
© 1995-2004 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
型的电能表 ,有广阔的发展空间和利用价值 。 定 ,采用的装置有 : 深圳科陆公司生产的 CL311 多功
2 电子式电能表的软件部分 能标准表 ,准确度是 0. 05 级 ; 深圳科陆公司生产的
为了实现电能表的功能 ,软件可划分为 : 功能操 CL302 多功能电测产品检定装置 ,额定电压是 220V ,
作模块及系统参数自校正模块。系统功能操作模块 标称电流是 10A 。实验测得数据如表 1 所示 :
的主要功能为 :为系统与操作人员之间提供友好的交 表 1 电能表测试数据 ( cosφ = 0. 5)
互界面 ,对系统进行有效的管理。因此该功能模块为 电流 UA (V) IA (A) PA ( W)
该电能表的核心部分。其工作流程图如图 4 所示。 实际表 220. 284 2. 0012 221. 687
2A 标准表 220. 263 2. 00189 221. 776
误差 0. 00953 % 0. 03447 % 0. 04013 %
实际表 220. 284 4. 0074 442. 61
4A 标准表 220. 268 4. 01001 442. 806
误差 0. 00726 % 0. 06509 % 0. 04426 %
实际表 220. 273 6. 0064 662. 884
6A 标准表 220. 263 6. 008 663
误差 0. 00454 % 0. 02663 % 0. 01750 %
实际表 220. 278 8. 0102 883. 191
8A 标准表 220. 271 8. 0104 883. 48
误差 0. 00318 % 0. 00250 % 0. 03271 %
实际表 220. 281 10. 0099 1103. 252
10A 标准表 220. 269 10. 0095 1103. 46
误差 0. 00545 % 0. 00400 % 0. 01885 %
实际表 220. 28 12. 0144 1323. 509
其中系统参数包括波特率 、 电能常数等 ,相应的 12A 标准表 220. 265 12. 0146 1323. 84
初始化流程包括初始化 GPIB 地址及波特率 ,初始化 误差 0. 00681 % 0. 00166 % 0. 02500 %
40
© 1995-2004 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.