>
首页 » 业界动态 » 基于LabVIEW的电机数据采集系统

基于LabVIEW的电机数据采集系统

作者:胡文彪,马伟明  时间:2007-05-01 09:50  来源:

摘要:介绍了基于LabVIEW的电机数据采集系统的硬件组成和软件设计,提出了在LabVIEW下高速连续采集及存盘技术的实现方法,以及自动搜索基波频率的谐波分析方法,还分析了循环采样方式造成的各采样通道之间的相对相位误差产生的原因,提出采用分组采样方式减小这种误差,并给出了部分程序。最后给出了部分试验结果,证明所提方法的正确性。

关键词:电机测试;虚拟仪器;LabVIEW;高速采集;相对相位误差

电机从研制、投产,到运行和维修,其间的各个阶段都要进行一系列试验,以获取电机的各种物理参数和性能指标。近年来,一些新型电机(如双绕组电机等)的应用日益广泛。这些电机的试验特点是测试项目多、各个项目测试的参量多,而且往往要求对多个参数同时测量,测试要求精度高。使用传统的测试仪表进行测试,由于自动化程度低,操作十分复杂,工作量大,而且精度也难以达到要求。因此,建立一种高精度的自动化程度高的测试手段变得十分重要。虚拟仪器是全新概念的新一代的测量仪器。自1987年诞生以来,这一技术与前几代测试仪器相比,以前所未有的速度迅猛发展。本文介绍了虚拟仪器的概念和LabVIEW的软件开发环境,以及已开发成功的基于LabVIEW的电机数据采集系统的硬件组成和软件开发,并重点介绍了在LabVIEW下一些关键技术的实现方法和数据分析方法。

虚拟仪器的概念和LabVIEW的软件开发环境

虚拟仪器的概念
虚拟仪器(virtual instrument,VI)是现代计算机技术和仪器技术深层次结合的产物,是当今计算机辅助测试领域的一项重要技术。虚拟仪器是计算机硬件资源、仪器与测控系统硬件资源和虚拟仪器软件资源三者的有效结合。

早在20世纪80年代初期就有人提出“软件就是仪器”,用虚拟的计算机“软面板”代替传统仪器的“硬面板”。其间的内涵绝不仅仅是两个面板的替换,这是一场革命,在虚拟仪器系统中,硬件变得仅仅负责信号的输入输出,而系统的开发、功能的提升,在很大层度上都要依靠软件,软件成为整个仪器的关键。

LabVIEW的软件开发环境
LabVIEW是Lab Virtual Instrument Engineering Workbench(实验室虚拟仪器集成环境)的简称,是由美国NI公司创立的一个功能强大而又灵活的仪器和分析软件应用开发工具。它是一种图形化的编程语言(G编程语言),用户只要连接各个框图就能构成程序。即使是只有很少编程经验的人也能学会LabVIEW.LabVIEW下构成的程序被称为VI.LabVIEW还提供了大量的虚拟仪器和丰富的函数库来帮助编程。本系统采用的就是LabVIEW的软件开发环境,极大地缩短了系统的开发周期。

系统的硬件组成

系统的硬件配置如图1所示。这里的信号转换电路将各种不同量程范围的电压和电流信号转换成±10V的电压信号以便于采集卡进行采集。考虑到系统的安全性问题,不能直接将强电信号送入虚拟仪器。本系统采用的数据采集卡是阿尔泰公司的采集卡PCI2006.PCI2006是一种基于计算机PCI总线的数据采集卡,可直接插在计算机的PCI插槽上使用,卡上装有14位精度的A/D转换器,提供了16双/32单模拟输入通道,最大采样频率可达到400KS/s。它同时还提供了8K的FIFO的存储器,以满足连续采集的需要。


图1 硬件配置图

系统的软件开发和分析方法

本系统在软件开发上引入了“虚拟仪器”的概念,开发了3块虚拟的仪器面板,包括数据采集面板、数据分析面板和参数设置面板。其中数据采集面板主要进行采样设置(采样通道和采样频率),开始采样后实时显示各采样通道的波形,实时显示频率转速,数据实时存盘。数据分析面板主要是读取存盘的采样数据,进行数据分析,包括频谱分析和各种性能参数的计算。参数设置面板进行传感系数设定和各通道的偏移校正。

高速连续采集与存盘技术
本系统采用的数据采集卡PCI2006上的FIFO存储器容量是8K,而系统要求进行连续不间断的采集,同时要求实时显示波形、实时存盘,计算量很大。在高速采集条件下,特别是在总采样频率(总采样频率=单通道的采样频率×采样通道数)接近400KS/s时,容易造成缓存溢出、数据丢失、串道等异常情况。

针对这一情况,该系统采用了一种软件仿真的二级缓存,即在内存中开辟一个二维数组。整个处理过程分2个流程,数据采集流程和数据处理流程(包括数据显示和数据保存),2个流程独立运行。在软件实现时,先建立一个m行的二维数组,建立2个变量WriteIndex和ReadIndex,分别记录二维数组中数据采集流程写入数据的位置和数据处理流程读出数据的位置。数据采集流程从FIFO存储器中取出采集的数据存放在二维数组中,同时变量WriteIndex加1,下次运行数据采集流程时,它会接着上一次的位置将采集的数据传递到二维数组中去。当WriteIndex减去ReadIndex大于n时,数据处理流程就会从二维数组中按ReadIndex指定的位置取出n行数据进行处理,同时ReadIndex加n。当WriteIndex和ReadIndex大于m时,就将它们减去m,这样就实现了循环的送入数据和读出数据。这里的n是一个常数,表示每次从二维数组中取出多少行数据进行处理。n的大小可以根据二位数组的行数m的大小来进行不同的设置。

这里的二维数组并不是真正意义上的缓存,而是通过程序使系统内存实现缓存的功能。这样就轻松实现了数据采集和数据处理的并行运行,提高了数据吞吐量,极大地提高了程序运行的速度,避免了高速采集下容易发生的异常情况。图2是该算法的LabVIEW子程序。


图2 连续采集子程序

用分组采样的方式减小各通道之间的相对相位误差
在一些新型电机的试验中,往往要求同时对多个通道进行采集,并对各通道相位进行比较。而在进行A/D采样时,通常是轮流接通各个模拟输入通道进行A/D转换,也就是通常所说的循环采样。这种采样方式带来了各个采样通道的不同时性,各通道采样的不同时性将使得相位计算产生一个相对误差。


图3 循环采样方式

如图3所示,假设采样的起始通道为N,终止通道为M,每通道的采样周期为T,则此时A/D转换周期为Ts=T/(M-N+1),也就是相邻两个采样点之间的时间间隔。对于任意2个采样通道I和J(J>I),在同一轮采样中的时间间隔为(J-I)•Ts。但是在数据分析和处理时,通常并没有考虑这个时间间隔,认为采样是同时进行的,这就造成了各个通道的非同时性,进而造成相对相位误差。减小这种误差的方法是尽可能地提高采样频率,减小通道的采样周期T。

而在通道采样频率的确定上,往往也是根据客观的需要,采用适当的采样频率。采样频率过低,会影响数据处理的精度。理论上,若进行谐波分析,则采样频率应选为想要分析的最高次谐波频率的2倍以上。采样频率过高,会造成数据量过大,影响数据的存放,同时也影响实时处理的速度,特别是进行较长时间的采样。如何处理这样一个矛盾,既可以选取一个适当的采样频率,保证数据分析和处理的精度和速度,又可以尽可能地减小各通道之间的相对相位误差。针对这一情况,本系统设计了一种分组采样的方式,供用户在对各通道采样同时性要求高的测试中选择使用。


图4 分组采样方式

如图4所示,采集起始通道为N,终止通道为M,每通道的采样周期为T。每次从通道N到通道M的采样为一组采样,采样开始后采集卡以最快的速度从通道N到通道M进行循环采样,相邻通道之间的时间间隔为Tm,即A/D转换器的最小转换周期Tm。M通道采样完后,等待一段时间,再从N通道开始,进行下一组的采样。从M通道采样结束到下一组N通道采样开始,这一段时间间隔为Td=T-(M-N)•Tm。而任意2个通道I和J(J>I),在同一组采样中的时间间隔为(J-I)•Tm。这样就既保证了各个通道合适的采样频率,又充分地利用了硬件的工作性能,极大地减小了各通道之间的相对相位误差。本系统采用了这种分组采样的方式。PCI2006采集卡的最小A/D转换周期为2.5μs。即使是同时对几十个通道进行采样,在同一组采样中,第一个通道和最后一个通道之间的时间间隔也不过几十个微秒。这个时间间隔对于通常50Hz的工频信号来说误差是非常小的。

各通道的偏移校正
由于各采集通道的信号调理电路在零输入条件下固有的偏移会随时间和环境的变化而变化,考虑到系统精度的问题,可以在各通道不加输入的情况下进行采集,每通道采1000点,再计算平均值作为通道的偏移。以后采集的数据都要减去这个偏移值,再进行分析计算,这样就进一步提高了系统的精度。通道偏移的表达式为:

式中:xi为通道在零输入条件下的采样值。偏移校正可以在每次采集之前进行,也可以隔一段较长时间进行一次。

数据分析和报表打印
本系统通过打开保存的数据文件,经分析计算可以显示各通道信号的频率、平均值、有效值、波形畸变率、调整率、脉动系数、偏离系数、各次谐波的含有率和相位等。

LabVIEW在数据分析软件包中提供了Extract Single Tone Information.vi,使用这个子vi可以搜索出输入信号在指定频段内的幅值最大的正弦信号的频率,并分析出幅值、相位。这样就可以先使用这个子vi在整个频域内搜索出基波的频率、幅值、相位,再以基波频率的倍频为中心频率在较小的频率范围内搜索出各次谐波的幅值相位。这种方法可以自动搜索出信号的基波频率。该方法的子程序如图5所示。


图5 谐波分析的子程序

报表打印主要包括各通道信号波形和各次谐波的含有率、相位的打印。LabVIEW中的Report Generation Toolkitfor Microsoft Office工具包提供了各种子vi,能在LabVIEW下生成各种复杂的基于Word和Excel的表格,使编写生成报表的程序变得十分方便和快捷。

部分实验结果

我们进行了大量的试验,结果证明该系统运行可靠,测试精度达到设计要求,误差范围保持在5‰以内。另外,还在总采样频率达到400KS/s的条件下进行长时间连续采集几个通道,效果良好。保存的数据1000多兆,没有出现数据丢失和串道的问题。以下是利用标准信号发生器产生方波信号作为信号源进行测试的试验结果。方波信号的频率为50Hz,采样频率为5000Hz,测试出的基波频率为50.008Hz。通过表1中所示的各次谐波含有率测试值与理论值的比较,可以看出本系统的谐波分析有很高的精度,误差没有超过国家A级谐波测量仪的允许范围。


表1 谐波含有率

结论

本文提出了一种基于LabVIEW的电机数据采集系统,相对于传统的测试仪表,具有精度高、自动化程度高的特点,能同时实现谐波分析仪、示波器、电压表、电流表、转速表等多种仪器的功能。本系统还可用于长时间高速连续采集,不会出现数据丢失和串道的问题。所有的数据处理都在计算机内部完成,速度快、精度高。谐波分析方法能准确分析出信号的基波频率和各次谐波的幅值、相位。而且系统的精度易于校正。总之,本系统自动化程度高、操作简单、测试精度高、投入使用后效果良好。

相关推荐

浅析目前虚拟仪器监测系统的特点及优点

虚拟仪器  监测  2013-12-19

智能仪器仪表发展新趋势:虚拟仪器兴起

仪器仪表  虚拟仪器  2013-08-01

LabVIEW天下会广召天下英雄

NI  LabVIEW  2012-04-16

NI携手FIRST共同推出第二届FTC科技挑战赛

NI  FTC  LabVIEW  2012-03-14

nextboard助力中科大虚拟仪器实验室建设

NI全方位助力哈尔滨工业大学教学和创新实践

NI  虚拟仪器  CompactRIO  PXI  2011-12-12
在线研讨会
焦点