大家先看一下虚拟示波器整体虚拟面板和程序框图,我采用的都是最基本的操作,没有复杂的程序。
内部信号发生器产生的信号源
内部信号发生器的程序框图
声卡采集的信号
采集声音程序框图
声音回放程序框图
好,首先我们先看一下整体的流程图:
程序流程图
2.2.1数据采集模块:
对于内部信号源来说,功能主要是对A、B通道的波形进行选择,参数进行设置,包括频率、幅值、还有一些噪声的标准差、顺序、均值的控制。波形包括有三角波、正弦波、方形波、锯齿波、Gamma噪声、高斯白噪声、均匀白噪声和泊松噪声。对于外部信号源来说,功能主要是对采集到的声音格式进行配置,包括采样率、通道数、每采样比特数和每通道采样数等参数。对系统所设置频率越高说明质量越好,但将使用更多资源并且受声卡限制。每通道采样数的值越大,产生的突波会越少,但会出现信号的延迟。
2.2.2波形显示模块
该部分设计可以实现A通道显示,B通道显示,A、B通道叠加显示和测量游标显示位置的功能,可以分别对A、B通道显示波形的偏移量(水平位置决定波形在水平位置的调节,垂直位置决定通道波形在垂直方向上的位置)进行调节,对图形的时基(水平方向上的比例因子)和幅值(垂直方向上的比例因子)进行分别调节。幅值有6个调节范围(1V/div、2V/div、3V/div、4V/div、5V/div、6V/div),时基有5个调节范围(40ms/div、80ms/div、120ms/div、160ms/div、200ms/div),A、B通道偏移量有三个范围(-5V~5V、-10V~10V、-15V~15V),该方法主要是通过波形控件的属性节点来实现。
2.2.3滤波模块
该设计不管是内部信号源还是外部信号源都进行滤波处理,包括Butterworth(巴特沃思)滤波器和Chebyshev(切比雪夫)滤波器。巴特沃思滤波器滤波器的一个重要特性是它的幅频特性随频率单调下降,而且在过渡带下降缓慢,在阻带下降较快。在滤波器中,如果想提高阻带衰减就必须增加滤波器的阶数。但是,如果牺牲衰减的单调性,对于相同的滤波器阶数,在阻带可以得到更高衰减,这种逼近的一个典型例子是切比雪夫滤波器。通带内等波纹波动,通带外单调下降,下降速度高于同阶的巴特沃思滤波器。滤波可以消除噪声信号。对于常见的测试系统,混入的一般为高频噪声,所以在测试系统中,一般采用低通滤波器,用于通过直流、低频交流信号。交流信号通常需要抗混叠的低通滤波器,因为这样的滤波器有一个陡峭的截止频率,几乎能够完全消除高频干扰信号。
2.2.4参数测量模块
参数测量模块主要完成虚拟示波器的电压参数、频率和周期参数的测量和显示。主要测量参数为:幅值和电平测量、平均直流-均方根测量和窗运算(汉宁窗、汉明窗、高斯窗、指数窗)、最高电圧、最低电压、平均电压等。
2.2.5频谱分析模块
频谱分析模块完成频域分析是利用快速傅立叶基本变换算法,将PC声卡采集到的数据输入,利用窗函数对整个采集到的信号中的一个片段进行分析,然后在计算机内做后续处理,分析出数据的幅值和相位及它们之间的相互关系。窗函数的主要目的是为了减少频谱能量泄露,应该采取不同的截取函数对采样信号进行截取。
要完成频谱分析仪功能,可以通过两种方式,即可通过离散傅里叶变换公式,调用虚拟仪器LabVIEW的公式节点完成,也可以将时域至频域的输入数据进行信号变换,调用对应的数字信号处理模块进行编程,完成信号的频谱分析。
2.2.6触发模块
触发控制包括电平、滞后和触发斜率的配置,当触发发生时,触发显示灯会变成红色。电平必须通过阀值在检测触发前的信号输入。为了方便用户更准确的观察触发位置,将触发位置在波形图中进行了跟踪标注,这样用户不但可以准确的获得波形某点的数据,同时能够准确观察在某两个点之间的时间差dt。如图1所示。
图1
2.2.7数据存储和回放模块
该模块的主要功能是保存和加载系统的实时结果,以及写入磁盘和读取磁盘的功能。它存储测量数据的相关信息,以满足以后的查询或统计分析的需要。信号被保存为Lvm格式(LabVIEW测量文件)。Lvm格式是一种特定格式,它的特点之一是信息非常全面,除了保存数据外,还保存数据生成的日期时间等信息。所需要的操作是将写入的声音文件存储到当前VI所在路径,这样做的目的是便于用户查找文件,如图2、3所示
图2
图3
大家完全可以通过Labview中的实例完成自学,都是非常经典的例子,谢谢大家!
声明:本站部分文章内容及图片转载于互联 、内容不代表本站观点,如有内容涉及侵权,请您立即联系本站处理,非常感谢!