logo资料库

基于LabVIEW的振动信号采集系统设计.pdf

第1页 / 共8页
第2页 / 共8页
第3页 / 共8页
第4页 / 共8页
第5页 / 共8页
第6页 / 共8页
第7页 / 共8页
第8页 / 共8页
资料共8页,全文预览结束
中国科技论文在线 http://www.paper.edu.cn 基于 LabVIEW 的振动信号采集系统设计# 田桂云,刘初升** (中国矿业大学机电工程学院,徐州 221116) 5 摘要:本信号采集系统主要用于振动筛振动监测,采用虚拟仪器开发平台软件 LabVIEW 进 行系统的程序编写和界面设计。本文结合振动测试使用的特定传感器及数据采集卡,对信号 采集程序的设计进行详细的阐述。对振动筛的振动监测往往需要多个测点同时进行,因此本 文的信号采集程序实现的是多个测试通道的信号同步采集。振动监测往往针对振动位移信 号,由于系统选用的是加速度传感器,本文设计了信号积分环节的程序将加速度信号转换为 位移信号。 关键词:虚拟仪器;振动监测;信号采集;LabVIEW 中图分类号:TD452 10 15 Design of Vibration Signal Acquisition System Based on LabVIEW Tian Guiyun, Liu Chusheng 20 25 (School of Mechatronic Engineering,China University of Mining and Technology,Xuzhou 221116) Abstract: This data acquisition system is mainly used in vibration monitoring of vibrating screen. Programming and interfacial design of the system are based on LabVIEW which is a virtual instrument software development platform. This paper elaborates the detailed procedure of the data acquisition program in accordance with specific sensors and DAQ cards used in the system. The system is designed for achieving the function of multi-channel signal synchronization acquisition as vibration monitoring of vibrating screen always needs multiple points to be detected at the same time. Vibration monitoring is often aimed at monitoring the Vibration displacement signal, the sensors used in the system are acceleration sensors, so signal Integration program is designed in this paper in order to convert acceleration signal into displacement signal. Key words: Virtual Instrument; Vibration Test; Data Acquisition; LabVIEW 30 0 引言 随着计算机技术和软件技术的不断进步,可以用来开发测试系统的软件也越来越多,传 统的编程软件平台 Visual Basic 和 Visual C++的编程方式都是基于文本语言,具有学习和 开发难度大、可扩展性较差,开发周期长且不经济等缺点。而 LabVIEW 软件则是采用基于图 形化语言,或者称 G 语言的编程方式进行程序的编写,其编程环境形象直观、简单易懂,具 35 有良好的人机界面,使用者根据自己的测试需要可以方便的编写程序完成测试任务。LabVIEW 软件能够在保证其运行速度几乎不受影响的前提下,节约 70%以上的软件开发时间[1][2]。 将虚拟仪器技术用于振动测试系统的研制是当今振动测试技术发展的一个重要趋势[3]。 跟传统的测试仪器不相同的是,虚拟仪器将几乎所有的测试功能用其自身的函数模块来实 现,利用图形化编程语言,简单直观的表达软件各个模块之间的关系,通过底层驱动程序, 40 将所需的硬件设备(比如传感器和采集卡)与软件进行结合,从而将测试仪器虚拟化,通过 软件来控制实现振动信号的采集和处理[4][5]。实现虚拟仪器测试系统的软件有很多,本文采 用的是 NI 公司推出的虚拟仪器开发平台软件 LabVIEW。 基金项目:高等学校博士学科点专项科研基金(20120095110001) 作者简介:田桂云(1989-),男,硕士研究生,机械振动 通信联系人:刘初升(1963-),男,教授,机械振动. E-mail: liuchushengcumt@163.com - 1 -
中国科技论文在线 1 系统设计 http://www.paper.edu.cn 系统信号采集功能正确、科学的实现是测试系统后续分析和处理功能能够实现的前提条 45 件。信号采集模块的软件实现首先需要根据测试需要选择科学的编程方案,然后进行数据采 集线程的搭建、设置采集模块的各项参数以及设计界面。 1.1 信号采集程序的设计 使用虚拟仪器开发平台软件 LabVIEW 2011 时,有两种实现数据采集功能的编程方法: 一种是利用 DAQ 助手进行数据采集,另一种是利用 DAQmx 数据采集 VI 和函数编程。DAQ 50 助手 Express VI 这种高度集成的通道选择和参数设置模式在系统开发人员进行编程开发时 具有节省时间、方便快捷的优势,并且在系统的参数非常固定,系统的测试对象也比较固定 的情况下,利用 DAQ 助手还可以起到保护系统参数不被随意更改的作用。但是,由于其将 很多功能集成于内部,使得运行它时占用的计算机内存比一般 VI 大很多,在做比较大型的 项目的时如果过多地使用它,在程序运行时,频繁地调用 DAQ 助手会严重影响程序的运行 55 效率;在数据采集模块的设计时,有时候 DAQ 助手中集成的一些功能并不需要,但是在程 序调用 DAQ 助手时那些不用的功能程序也会被载入并占用内存,造成计算机资源的浪费, 影响程序运行效率;此外,DAQ 助手的使用灵活性较差,当需要改变数据采集模块的参数 时,只能通过更改 DAQ 助手的配置参数来实现,不能在程序的前面板中进行各个通道参数 和采样参数的设置,这对用户的使用是很不方便的。因此,本文使用 DAQmx 数据采集 VI 60 和函数进行自定义程度更高的编程,不但可以克服 DAQ 助手在使用时的诸多不足,更好地 实现测试系统的功能,同时也增加了程序的可扩展性。 图 1 为本文的信号采集程序的基本构架。鉴于 LabVIEW 软件利用图形化语言进行编程 的特点,程序以框图的形式呈现,对于不是十分复杂的程序,其执行过程往往一目了然。图 1 所示的信号采集程序的基本构架图中的各个组成部分下面的各个 VI 是为完成对应组成部 65 分的功能服务的 VI,图中的箭头表示程序的执行顺序。 图 1 信号采集程序的基本构架 Fig. 1 Basic structure of data acquisition program 70 根据信号采集程序的基本构架,利用 DAQmx 数据采集 VI 和函数库设计的信号采集程 序,如图 2 所示。 - 2 -
中国科技论文在线 http://www.paper.edu.cn 75 图 2 利用 DAQmx 函数库设计的信号采集程序 Fig. 2 Data acquisition program designed by DAQmx function library 图 2 是本文设计的振动信号采集系统实现信号采集功能的程序基本线程。在如图 2 所示 的信号采集程序中,首先利用 DAQmx Create Task.vi(图 2,1)创建一个数据采集任务,可 80 以给新任务起一个任务名称用以标记特定的测试任务,然后使用 DAQmx Create Virtual Channel.vi(图 2,2)配置数据采集设备的通道参数信息,DAQmx Create Virtual Channel.vi 是一个典型的多态 VI,可以根据测试信号的类型以及系统所用传感器的类型,在其选择控 件的下拉列表框中选择合适的实例应用于特定的测量任务,该多态 VI 的实例是根据通道的 I/O 类型(比如模拟输入、数字输入或者计数器输出)、测量或生成操作以及在某些情况下 85 使用的传感器。本文中使用的是应变式加速度传感器,根据传感器的测试原理和它的技术参 数给出的信息,可以设置其输出是电压比率或者应变值,这里选择设置为电压比率,因此可 以选择 AI 桥实例进行测量,使用该实例创建通道,利用惠斯通电桥测量电压比值,再根据 传感器说明书提供的换算系数,利用自定义换算将电压比值换算成物理量单位的值。 本文设计的测试系统需要实现对 12 个通道的同时测试,虽然在图 2 所示的信号采集程 90 序中的 DAQmx Create Virtual Channel.vi(图 2,2)的物理通道接线端口提供了同时配置多个 物理通道的解决方法,但是却不能让每个通道可以单独设置通道参数,因此,对于本文中的 各个物理通道的参数不完全一样的情况,为了系统设计的严谨性,不适合采用为 DAQmx Create Virtual Channel.vi 的物理通道接线端口设置多个物理通道的方法,需要需求新的程序 解决方案来解决这个问题,当然,在 DAQ 助手中可以方便地解决这个问题,但是本文已经 95 将不使用 DAQ 助手的原因做了说明,这里不再赘述。经过研究和编程调试,确定了一种在 图 2 所示的数据采集程序基础上改进的编程方案,那就是为数据采集线程配置多个 DAQmx Create Virtual Channel.vi,每个 VI 只负责一个通道的参数设置,那么,本文需要采用 12 个 DAQmx Create Virtual Channel.vi 为数据采集线程服务,程序的实现并不复杂,将图 2 中的 DAQmx Create Virtual Channel.vi(图 2,2)的物料通道的连线端改为连接输入控件,然后将 100 12 个 DAQmx Create Virtual Channel.vi 的任务输入和任务输出端依次相连,同时也将它们的 错误输入和错误输出端依次相连,然后再将它们连接于 DAQmx Create Task.vi(图 2,1)和 DAQmx Timing.vi(图 2,3)之间即可。这样,就可以将各个通道的参数单独设置了。图 3 即为系统的参数设置界面。 - 3 -
中国科技论文在线 http://www.paper.edu.cn 105 图 3 系统参数设置界面 Fig. 3 Interface of system parameter setting 如图 3 所示,系统参数设置界面根据测个测点的不同测试方向设置各自的通道参数,主 要是物理通道的选择、自定义换算系数的选择和额定桥电阻的设置,本文中桥信息中的其他 110 设置一样。将通道参数置于程序界面有利于用户对系统参数的统一管理、并且将实际测试的 设备的各个测点和它们的各个测试方向与各个物理通道一一对应,便于用户对通道的参数进 行检查和修改,从而保证参数设置的正确性。 DAQmx Timing.vi(图 2,3)用于配置采集任务的采样信息,它是一个多态 VI,这里选 用其中的采样时钟实例 VI,采样模式接线端用于设定采集任务是采用连续采样、有限采样 115 还是硬件定时单点采样,本文选用连续采样的模式,它是指在程序运行过程中不断地连续采 样,将采集到的数据都存入缓存区,再利用软件从缓存区中读取采样进行信号的实时显示、 处理和保存等操作,当缓存区满时,新的采样会覆盖之前的采样,因此要保证程序读取采样 的速度不能过快,每秒读取的采样应不超过缓存区内采样。连续采样模式下的缓存区通常是 根据采样率确定的,如表 1 所示,也可以通过 DAQmx Timing.vi(图 2,3)的每通道采样引 120 脚设置,根据连续采样模式下的每通道采样数属性值确定缓存区,但是当每通道采样数属性 的值小于表 1 所列的值,NI-DAQmx 将使用表 1 的值。DAQmx Timing.vi 的采样率引脚用于 设置采样频率,即每秒钟的采样点数。采样信息的设置和通道参数设置均在系统参数设置界 面(图 3)中。 125 表 1 NI-DAQmx 的缓存区大小 Tab.1 Buffer size of NI-DAQmx 采样率 缓存区大小 未指定速率 10kS 0-100 S/s 1kS 100-10,000 S/s 10kS 10,000-1,000,000 S/s 100kS >1,000,000 S/s 1 MS - 4 -
中国科技论文在线 http://www.paper.edu.cn DAQmx Perform Bridge Offset Nulling Calibration.vi(图 2,4)用于对基于电桥的传感器 的各个通道进行失调清零校准,是通过软件实现补偿内在的电桥失衡,确保无应变时读数为 130 零,即进行偏移量清零操作。 在完成了任务的创建、通道的配置、定时设置和偏置校准后,利用 DAQmx Start Task.vi (图 2,5)开始信号采集任务,LabVIEW 程序是数据流驱动的,程序开始运行后,当之前的 所有配置信息形成数据流到达 DAQmx Start Task.vi,采集设备就开始按照之前的配置进行信 号的采集。 135 DAQmx Read.vi(图 2,6)用于读取缓存区的数据,它也是一个多态 VI,根据测试需要, 本文选择其中的 1D 波形 N 通道 N 采样实例来实现对多个模拟输入通道可进行各个通道同 时读取多个波形的操作,在连续采样模式中,会不断有信号数据存入缓存区,缓存区的空间 有限,因此需要不断地将缓存区中的数据读取出来,本文采用循环结构,将 DAQmx Read.vi 置于 While 循环中,DAQmx Read.vi 的接线引脚中的每通道采样数引脚用于设定读取缓冲区 140 的采样数,采用其默认值-1 时表示读取缓冲区中当前可用的全部采样,如果仅仅对数据采 集线程来说,这样设置是可以,但如果存在后续的分析和处理,很多 VI 的运行将需要大于 0 的采样数属性值,采用默认值时会导致程序运行时出错,因此这里的每通道采样数不采用 默认值进行设置,根据本文使用的采样率,设定这里的每通道采样数为 5000,即每秒读取 5000 个采样点。 145 当程序运行出错或者停止数据采集是,程序会跳出循环,这时候 DAQmx Clear Task.vi (图 2,7)会自动清除内存中的数据采集线程任务信息。在整个数据采集线程中,连接各个 VI 的紫色的线是任务输入/输出线,用于任务信息的流动,黄色的线是错误线,用于错误簇 信息的流动,当程序在运行时出现错误时,Simple Error Handler.vi(图 2,8)将返回错误描 述。在 While 循环中提取错误簇信息的状态信息(布尔值),并与停止按钮一起连接到循环 150 的停止条件接线端,共同控制采集任务的停止。 1.2 信号积分环节程序的设计 为了把传感器采集得到的振动加速度信号变换为需要检测的振动位移信号,本文设计信 号的积分变换程序如图 4 所示,通过设置积分次数即可实现对加速度信号的一次积分和两次 积分,得到速度信号和位移信号。由于在 LabVIEW 中集成了专门针对振动信号积分运算的 155 VI,所以在进行信号积分环节的程序设计时比较方便。与信号采集程序一样,本文设计的系 统是针对多个测试通道的,而每个测试通道测试的原始信号均为加速度信号,故信号积分程 序在每个测试通道中均要运用。 - 5 -
中国科技论文在线 http://www.paper.edu.cn 160 2 系统功能实验验证 图 4 信号积分变换程序 Fig. 4 Program of signal integral transform 利用实验室的振动筛模型机进行振动测试实验,显示系统采集的振动加速度信号和积分 得到的速度信号和位移信号,验证系统的信号采集和积分功能。图 5、图 6 和图 7 分别为系 165 统的加速度、速度和位移信号波形显示。 图 5 加速度信号波形显示 Fig. 5 Waveform display of acceleration signal - 6 -
中国科技论文在线 http://www.paper.edu.cn 170 图 6 速度信号波形显示 Fig. 6 Waveform display of speed signal 175 3 结论语 图 7 位移信号波形显示 Fig. 7 Waveform display of displacement signal 在进行振动信号采集系统的设计时,利用 LabVIEW 软件中 DAQmx 函数选板中的 VI 180 和函数来进行编程虽然没有直接利用 DAQ 助手方便,但是利用 DAQmx 函数选板可以进行 自定义程度更高的系统设计,将系统的关键参数的设置权限留给了使用者,也因为 DAQ 助 手集成了许多测试时不需要的功能,使用 DAQmx 进行信号采集系统的设计可以避免程序运 行时造成的计算机资源的浪费,提高了程序运行的效率。通过振动测试实验中振动加速度信 号、速度信号和位移信号的显示很好地验证了系统信号采集和积分功能。 185 - 7 -
中国科技论文在线 http://www.paper.edu.cn [参考文献] (References) [1] 陈敏,汤晓安.虚拟仪器软件 LabVIEW 与数据采集[J].小型微型计算机系统,2001,22(4):501-503 [2] 朱岩.基于 LabVIEW 的振动测试系统设计[D].成都:西华大学,2009 [3] 张玉华,蒋书波,程明霄.基于虚拟仪器的振动测试系统的设计[J].微计算机信息,2007,23(4):170-171 [4] 陈兴文,刘燕.基于 LabVIEW 实现振动信号测试分析[J].电子测量技术,2008,31(6):108-110 [5] 刘鹏,郭智威.基于 LabVIEW 的振动信号采集与分析系统的开发[J].科技信息,2010,(18):215-215 190 - 8 -
分享到:
收藏