实验四:数据采集虚拟仪器设计电气工程学院测控技术与仪器1201班麻豪杰201223030106一、实验目的1、练习labVIEW的编程能力。2、熟练掌握DAQ的使用方法,理解数据采集功能。二、实验内容:设计一个基于labVIEW的数据采集的虚拟仪器,本实验设计基于Labview的温度控制器。三、实验环境:labVIEW8.6、NI-DAQmx14.0、计算机四、实验步骤:1、前面板的设计启动LabVIEW8.6后,在启动界面上选择新建VI,创建一个新VI,然后按下面的步骤进行设计。(1)在控件选板的【经典】→【经典数值】面板上选择“温度计”控件,放置到前面版设计窗口的合适位置。(2)在控制选板的【经典】→【经典波形】子选板中选择【波形图】控件,放置到前面板设计窗口的合适位置。(3)在控制选板的【经典】→【经典I/O】子选板中选择两个【波形】控件,放置到前面板设计窗口的合适位置。然后,用鼠标右键单击该控件,在弹出的快捷菜单中外观选项中“标签”选择可见,分别为“通道一波形数据”、“通道二波形数据”。(4)在控制选板的【经典】→【经典布尔】子选板中选择“圆形按钮”控件,放置到前面板设计窗口的合适位置。然后,用鼠标右键单击该控件,在弹出的快捷菜单中,标签改为“滤波开关”。(5)在控件选板的【新式】→【修饰】子选板中选择“标签”控件,放置到前面板设计窗口的合适位置,并输入文本“基于LABVIEW数据采集卡的多通道数据采集系统”。(6)在控件选板的【新式】→【修饰】子选板中选择“平面凹框”控件,放置到前面板设计窗口的合适位置,并设置合适的大小。完成以上6个步骤后的虚拟数据采集系统的前面版如图所示。图1数据采集前面板2、程序框图的设计(1)首先要创建一个DAQ助手,在流程图设计窗口中打开【函数】模块,执行【函数】→【express】→【DAQ助手】调入DAQ后,用右键单击调入的“DAQ助手”,选择【属性】选项,就会出现如图2所示。在生成信号中选择【模拟输出】→【电压】输出,选择通道a1和a0,设置模拟输入系统为RSE,采样点数100采样频率1000Hz,DAQ创建完成。图2创建DAQ(2)将外部信号从DAQ导入,再将其分成两路就得到了两路信号,图3是本设计接收信号的程序框图的设计。图3接收信号的程序框图3、信号的滤波处理在实际应用中几乎所有的数据采集系统,都会不同程度的受到来自电源线的50HZ工频干扰。因此在设计程序框图时因该设置低通滤波器,最大限度的剔除50HZ噪声。交流信号往往需要抗混叠滤波器,它具有非常陡峭的截止频率,几乎可以将除了有用频率外的所有噪声信号剔除。图4温度显示程序框图用条件结构来控制滤波功能的使用,为真时通过滤波器进行滤波,前面板有相应控制按钮。用来决定是否使用滤波功能。对此滤波器的设置如下:因为数据采集系统设计中涉及的最大干扰为50Hz工频电压干扰,因此我选择了低通滤波器,并且设置其截止频率为40Hz,目的是使干扰信号最大限度的剔除。4、信号存储部分设计我们要对采集的数据进行存储,因此用电子表格对这些数据进行存储,电子表格是一种特殊的文件,数据记录文件只需进行少量处理,因而其读/写速度更快,数据记录文件将原始数据块作为一个记录重新读取,无需读取该记录之前的记录,因此简化了数据查询的过程。仅需记录号就可以访问记录。虚拟仪器的对文件的存储功能使编程者带来了很大的方便。图5信号存储程序框图当按下前面板的存储键时,开始对数据进行存储,再按一下则停止当前存储,我用条件结构来实现对存储数据的控制.上图中的电压值和温度值为创建的局部变量,用来实现与采集数据的同步,她们有for循环中的循环次数I构成数组,一起存入电子表格中,其中我把电压值存在D盘的lxm1中,把温度值存在D盘的lxm2中。这样就可以对数据进行实时存储了。5、工作演示首先我们需要采集两路信号,直流电压0到5伏,还有温度信号,因为我们没有适当的传感器设备,因此我们两路均用直流信号来模拟。下图是没添加滤波时的输入信号前面板波形显示:因为数据采集卡DAQ上有两路模拟通道输入端,因此面板上显示两个波形,类似于50Hz正弦信号的波形是我们输入的0到5伏直流电压信号,理想状态下的输入信号应该为一条直线,因为存在较为严重的工频干扰,导致信号严重失真。波形2是模拟输入的第二个通道,因为此通道没有连电源线,因此干扰较小,趋近于一条直线。波形图2是没通过滤波器的结果,因此与图1相同。由上图可以看出输入信号存在较为严重的干扰,因此需要对其进行滤波下图是滤波前与滤波后的两路波形对比图:从波形图的对比可以看出通过截止频率为40Hz的低通滤波器对信号的处理,基本上把高于40Hz的信号滤掉,使我们得到了较为准确的直流信号,并且通过电位器可以得到0到5伏之间的任何一个电压值。第二路温度信号的模拟显示:通过对0到5伏直流电压扩大20倍来模拟0到100的温度,从而实现多通道数据采集,温度显示控件显示当前温度数据。通过条件结构对两路数据进行实时存储,分别存储在D盘的lxm1和lxm2中,以下是我在excel中所存储的数据,第一组为电压数据,第二组为温度数据。采用前面板的波形控件对数据进行实时显示,左面的为通道一采集的直流电压数据,右面的为采集的温度数据。五、实验体会:通过本次实验,我对DAQ的认识更加深入,对用虚拟仪器进行数据的采集有了一定的认识,利用DAQ能很方便地对采集到的数据进行同真实仪器效果几乎相同的分析与应用,这极大地方便了测试人员,并且能很大程度上缩短仪器开发的时间和节省开支。