摘要:介绍了基于图形化编程语言LabVIEW的低频虚拟信号源的设计方法。该低频虚拟信号源可以产生各种基本信号,扫频信号,具有频率与峰峰值显示等功能。
关键词:虚拟仪器 低频虚拟信号源 LabVIEW
1. 引言
在控制领域低频信号源的使用十分广泛,一般最高频率在1k-2k之间。传统的设计方法先是采用RC振荡器或LC振荡器,后采用石英晶体振荡器为核心,提供一个高稳定度的信号源,但是其电路复杂,结构庞大造价也很高。随着高精度大动态范围数字/模拟(D/A)转换器的出现和广泛应用,直接数字合成(DDS)技术异军突起,它有很多优点但是造价很贵。随着虚拟仪器的产生和发展,考虑设计主要用于控制领域的基于LabVIEW的低频虚拟信号源,产生各种标准的模拟信号,对各种输出信号的幅度、频率等进行测量和显示,有足够大的实验平台,用以搭接各种电子电路,这样的设备对科技人员来说无疑具有很大的使用价值。
2. 低频虚拟信号源的结构与组成
一台虚拟仪器的组成主要包括两部分,硬件部分和软件部分。在本设计中低频虚拟信号源的基本组成结构如图1所示。低频虚拟信号源的外围硬件选用的是NI公司的PCI-6024E作为数据采集卡,它是利用PCI总线技术实现的。本数据采集卡确保了实时信号不间断的采集与存储。它支持双极性的模拟信号输入,分辨率12bits。两路模拟量输出通道,分辨率是12bits,双极性输出电压范围是正负10伏。8路数字输入输出通道,2个24位的定时计数器等多种功能。PCI-6024E使用的是系统定时控制器,总共包括7个24位的计数器和3个16位的计数器,和一个最大分辨率为50ns的定时器。这些功能不仅使得我们可以用该卡设计低频虚拟信号源,还可以设计虚拟示波器或是虚拟计数器,做到一卡多用。在使用之前,必须对DAQ卡的硬件进行配置,这些控制程序用到了相应的低层DAQ驱动程序。
图1
3. 低频虚拟信号源的功能
测试机器低频震荡现象、测试伺服阀特性需要低频信号源产生的基本信号。对噪声的自适应有源控制的研究要用到低频信号源产生的白噪声信号。当测试某一机器或是装置的频率特性,做幅频特性分析时会用到低频信号源产生扫频信号的功能。此外要允许用户自行设置信号的发生频率,幅值,偏移量,初始相位,手动调节信号发生频率,信号暂停。在交互界面上能够显示当前信号的频率以及信号的峰峰值。对于扫频信号还应具有更多的功能,要求信号源提供两种扫频信号的发生方式,时域扫频和对数扫频。另外,研究机器的频率特性时,要允许用户自行设定某一频率信号发生的时间长度,因为各种频率的信号对机器的频率特性有不同的影响,应可以任意的增减其发生的时间,如机器不易长时间处于高频信号下,避免高频震荡现象的发生。用户也可能要保持某一频率信号一段时间,那么还要求该低频虚拟信号源具有扫频信号的频率保持功能,同时扫频信号还应具有频率递增与递减的功能。
了解了低频虚拟信号源所需要完成的功能之后就可以进行软件编程工作了。软件设计是低频虚拟信号源设计的关键,低频虚拟信号源软件设计主要包括前面板和框图程序的设计。
4. 低频虚拟信号源软件设计
4.1 低频虚拟信号源前面板设计
根据低频信号源的功能进行前面板设计。虚拟仪器的前面板就像是传统仪器的外观,要求产生一个友好的图形接口界面,用于显示,操作各种控件,进行参数设置。用户可以通过控制虚拟仪器前面板上的开关和按钮,通过键盘和鼠标,实现对虚拟信号源的控制。
前面板上要有各种基本信号与扫频信号的选择控件,对于扫频信号还要有发生方式与扫频信号积分时间的选择控件。前面板上还要有各种参数,如:信号的发生频率,幅值,偏移量,初始相位等等的设置控件,对于扫频信号,用户会选取一个有用的频率范围进行频率测试,因此,扫频信号需要设置信号的初始频率,截止频率。此外,扫频信号还有一个重要的参数需要设置,信号频率的增幅即deltf,这些参数确保用户得到需要的信号。
另外,在设计时前面板上还要设有暂停按钮,保持、递增、递减三个按钮,以及显示控件来显示当前发生信号频率的频率值,峰峰值。低频虚拟信号源所有的功能集中在前面板上,在前面板的设计中对这些功能提供了友好的交互界面。
本文设计的低频虚拟信号源的前面板(图2)
4.2 低频虚拟信号源程序框图设计
低频虚拟信号源的框图程序与相应的前面板相对应,连线表示信号的流向。流程图包含虚拟仪器的图形化源代码,在流程图中,对VI进行编程,以控制和操作定义在前面板上的功能。低频虚拟信号源的软件组成模块有基本信号发生模块;扫频信号发生模块;参数显示模块;数据采集模块。低频虚拟信号源功能模块组成框图如图3所示。
图3
(1) 基本信号发生模块:
这是构成信号源的基本组成部分,用户可以通过前面板上的按键选择所需要产生的波形。基本波形包括正弦波、三角波、方波、锯齿波、白噪声。波形的频率,幅值,初始相位,偏移量由用户自行设置。峰峰值以及发生信号的频率值在前面板上显示。
(2) 扫频信号发生模块:
两种发生方式,时域扫频和对数扫频。所谓时域扫频就是指信号以相等的时间间隔发生,信号频率按相等时间间隔增加或减少。对数扫频指的是信号以对数间隔发生,信号频率以相等的对数间隔递增或是递减。信号的初始频率,截止频率,频率增量由用户设置。其中频率增量是扫频信号的重要参数,在时域扫频中不同频率的信号是以相等的时间间隔发生的,频率增量deltf在整个扫频信号发生的过程中保持不变,信号的频率随着时间递增或递减。而在对数扫频中,坐标是以十倍频程为单位的,因此信号频率增量不再像时域内频率增量一样,保持不变,随着坐标的变化在对数扫频中deltf是不断变化的,每十倍频程为一个交界,每十倍频程deltf成对数变化。这是低频虚拟信号源软件编程工作的难点和重点,也是低频虚拟信号源最重要的组成部分。解决的方法是不断的比较当前信号频率与对数坐标之间的大小,每到一个交界处,deltf成十倍变化。用户输入的是第一个十倍频程之间的频率增量。每一个频率值的积分时间即持续时间可由用户自行选择,前面板上给出了6个积分时间供用户选择,其默认值是1秒。同样,扫频信号的峰峰值以及扫频信号当前频率值可以通过前面板进行显示。
(3) 参数显示模块:
主要是将当前所发生的信号频率以及峰峰值通过前面板进行显示。
(4) 数据采集模块:
数据采集模块的功能是将用户选择的信号波形数据送到PCI-6024E卡上,并控制该卡进行D/A转换,在指定的模拟量输出通道上输出相对应的模拟波形。
图6
5. 结论
本文设计的低频虚拟信号源采用的是LabVIEW图形化编程语言,软件界面友好,操作简单,人机交互性强,编程容易,方便快捷,扩展性好。利用该信号源发生的信号波形稳定,功能齐全,所发生信号可以暂停,其中扫频信号还具有保持,递增,递减的功能。该低频虚拟信号源能够方便的与外界进行连接,进行打印输出,兼容性好,可以随时更换更高性能的数据采集卡。
参考文献
[1] 张易知,肖啸,张喜斌,卫跃春. 虚拟仪器的设计与实现[M]. 西安电子科技大学出版社. 2002.
[2] 杨乐平. 虚拟仪器技术概论[M]. 电子工业出版社. 2003.
[3] 连海洲,赵英俊. 基于LabVIEW技术的虚拟仪器系统[J]. 仪器与测控. 1999,(5):10-14.