测试信号处理技术实验报告2012年11月23日星期五实验二LabVIEW编程及信号处理一、实验目的1.学习LabVIEW软件的编程思想及编程方法;2.学习使用LabVIEW操作数据采集卡的方法;3.学习使用LabVIEW产生信号及叠加噪声的方法;4.学习使用LabVIEW的相关功能进行信号分析与处理的方法。二、实验原理1.数据采集卡原理试验用数据采集卡型号为PCI-9111DG,利用32位PCI总线与计算机连接;1)16路12位A/D输入:采样速率100kHz,双极性输入;具有可编程增益x1、x2、x4、x8、x16;信号输入范围±10V、±5V、±2.5V、±1.25V、±0.625V。2)1路12位D/A输出:可输出单极性0~10V信号和双极性-10V~10V信号(默认)(由硬件控制)。3)数据采集卡的使用:实验中,用Labview中不同的模块完成以下三步:初始化、数据输入输出、释放设备。a)初始化模块用来完成板卡PCI-9111DG的初始化,获得板卡的相关信息,如获得板卡设备句柄、打开设备等。b)模拟输出模块用来向D/A转换器写数据。板卡仅有一路D/A,分辨率为12位,可进行单极性和双极性信号的设置。c)模拟输入模块用来采集D/A输入的数据。板卡有12路A/D,分辨率为12位,可设置放大器倍数和输入信号的电压范围。d)设备释放模块释放A/D、释放D/A、释放设备,释放内存空间。2.利用Labview构建系统1)程序总体采用顺序结构,可分为三层:数据采集卡初始化层、信号产生和处理层、设备释放层。2)所使用的控件:除板卡设备的控件外,还有:图形显示控件、信号产生控件、信号处理控件、数值输入控件、布尔控件、数组控件、簇等。3)信号处理利用各种窗函数及滤波器,采用频谱分析方法,在实验中观察各种信号处理的特点及作用。三、实验仪器计算机(带数据采集卡)1台接口板1块万用数字表1个示波器1台四、实验步骤1.打开Labview软件,建立新程序文件;2.利用Labview的信号产生功能产生多种信号(正弦波、三角波、方波、锯齿波),信号参数可改变(如正弦信号的幅值、频率、相位等可变),并利用Labview的图形显示功能显示产生的信号;3.利用数据采集卡的D/A功能将信号输出计算机,用示波器可在数据采集卡的接口板的端子AO1测到输出信号;4.将数据采集卡的接口板的端子AO1与接口板的A/D输入相连接;5.利用Labview的板卡输入模块将A/D输入端的信号采入计算机;6.将Labview的板卡输入模块将A/D输入端的信号接入示波器,观察波形是否与Labview程序运行结果一致,否则加入延时模块进行修正。7.对采入的信号叠加白噪声并显示,对该信号进行频谱分析并显示信号频谱;8.对叠加白噪声的信号进行加窗处理(可选择矩形窗、汉明窗、汉宁窗等),显示加窗后的信号;9.对叠加白噪声的信号进行滤波(低通滤波器、高通滤波器、带通滤波器、IIR滤波器、FIR滤波器等可选,并可改变通频带),显示滤波后的信号;对滤波后的信号进行频谱分析并显示信号频谱;10.运行程序,分析结果。五、实验结果分析1.实验结构框图及程序框图1)数据采集卡部分a)b)程序框图:初始化设备产生一个规则的信号(正弦、方波、三角波等类型可选,幅值、频率等参数可设置)由数据采集卡输出开始接示波器进行显示对照2)信号分析处理部分信号分析:将一个复杂信号分解为若干简单信号的叠加,并以简单信号分量的组成情况考察整个信号的特性。频谱分析是信号分析中的一个基本方法。信号处理:对信号进行某种变换或运算,如:滤波、变换、增强、压缩、估计、识别等a)结构框图b)程序框图:利用Labview示波器模块进行显示、观察由数据采集卡输出由数据采集卡输入并叠加白噪声形成待测信号对待测信号进行FFT变换,并显示信号频谱对待测信号加窗(矩形窗、汉明窗、汉宁窗等可选,可改变通频带范围)选择滤波器(低通滤波器、高通滤波器、带通滤波器、IIR滤波器、FIR滤波器等可选)显示信号频谱显示加窗后信号显示滤波后信号对滤波后的信号进行FFT变换显示滤波后信号频谱2.实验过程总结实验中遇到的最大的问题是将数据源采集卡采集到的波形接到示波器上显示时,可以观察到示波器上的波形与程序运行结果并不一致,于是想到了加上一个延时环节,如下:但是,由于对Labview软件编程的不熟悉,导致运行结果的不正确。没有得到正确的结果,只是用标准的正弦信号叠加白噪声进行了加窗和滤波的一些操作,下面是实验的结果。图为输入正弦信号,采用巴特沃斯滤波器。加上汉宁窗,通带选择为低通的结果。可以看出。加窗能够选择出某一段需要的信号,滤波能够去除噪声,还原原始信号,通过频谱图还能知道,滤波后把高频信号滤掉了,只保留能量集中的低频段。但是,通过试验我们知道,该信号不能用inverseChebyshev滤波器,因为不能得出正确的原始信号。如下图:可以得出结论,不同的滤波器使用于不同的信号,只有使用了正确的滤波器才能得出正确的结果。六、实验总结与反思总体来说,本次试验之所以没有得出正确的结果,是因为对Labview该软件的编程不够熟悉,导致延时模块的使用不正确。因此,下次实验前一定要做好充分的预习,学习相关的知识,只有这样,才能够顺利地完成实验。