FPGA/ASIC技术
原始数据不总能即刻传递有用信息。通常,用户必须变换信号、去除噪声干扰、纠正因设备故障损坏的数据或补偿环境影响(如:温度与湿度)。为此,信号处理,作为对信号的分析、解释和操作,是几乎各类工程应用中的基本需求。借助LabVIEW软件完整的分析功能,无需浪费时间移动不相容工具之间的数据,无需编写自己的分析规程,就能处理各类信号。
自由选择最适合分析的方法
用户可选用多种方式将分析纳入配有LabVIEW的应用中。通常,用户希望将最适合的决策方式作为分析结果。
借助在线分析, 加快决策
在线分析表明:数据接受相同应用程序的分析和采集。若应用程序可根据进入数据的特征监测信号并改变行为,用户就需要在采集数据时加以分析。通过测量和分析信号的某些方面,用户能让应用适合某些情况并启用合适的执行参数——可以将数据保存至磁盘或提高采样率。尽管这只是一个范例,但有数千种应用程序都需要一定的智能(根据不同的条件作出相应决定的能力);适应性也是必需的,只能将分析算法添加到应用程序中才有实现的可能。
通常,作出决定基于数据自动化。这意味着:逻辑被构建至应用程序,以处理某些行为。例如,当温度越过阈值或振动水平过高时,工厂监控系统会点亮1个LED来给出提示。然而,并非所有基于采获数据的决定都是自动作出的。为确定系统是否按预期运行,用户往往必须监测执行。您不应记录数据、从文件或数据库中提取数据,再对它进行离线分析只为发现采集中的问题,而应在采集数据时辨识问题。这些时候,应用程序必须处理采获的数据,再用一种最适用的方式对数据进行处理、简化、规范化和显示。LabVIEW中对话的内置套件,可令创建的应用程序向操作人员或用户提供选件。例如,若温度过高,对话可以敦促操作人员采用指定操作,然后按“确定(OK)”或“继续(Continue)”按钮,继续应用程序。
无论决策是由内置逻辑还是人类用户做出,LabVIEW均提供分析和数学规程,从而完美结合数据采集函数和显示功能。这让它们可能被轻松构建至各类应用程序;用户无需按照各色工具的需要繁琐地为数据赋予不同格式。此外,LabVIEW提供用于逐点执行的分析规程;这些规程的设计可专门满足实时应用程序中在线分析的需求。
逐点分析带来更贴近输入信号的智能
逐点分析是在线分析的子集;其结果在单个而非一组样本获取后计算得到。在处理能提供高速、确定单点数据采集的控制过程中,此类分析是必要的。逐点的方法简化了设计、实施和测试过程,因为应用程序流和应用程序所监视和控制的真实世界中的自然流动十分相似。
图1. 基于数组的分析较之逐点分析
借助精简式逐点分析,采集和分析过程能够趋近控制点,因为采集和决策之间的延迟被最大程度缩减了。如需进一步缩减这类采集延时,可将分析部署至现场可编程门阵列(FPGA)芯片、数字信号处理(DSP)芯片、嵌入式控制器、专用CPU、ASIC。
将强大的算法与规程添加至应用程序后,您能减少猜测并创建智能处理,从而在运行时分析结果、提高效率并且反复地将实验或处理性能与输入变量相关联。
通过离线分析查看数据
采用分析规程时,在线分析不总是正确的方法。若用户无需在采集数据时做决定,可选择进行离线分析。通常,离线分析应用的目的是:通过多个数据集的相互关联,识别变量的成因和影响。由于此类分析在数据采集后做出,用户不受数据采集的定时和内存限制;进行此类分析只需获得足够用的计算资源。这为分析提供了几项优势。首先,离线分析提供强大许多的数据交互性,令您能够真正探究原始数据和分析实现结果。直方图、趋势分析和曲线拟合都是常见的离线分析任务。另外,考虑到处理大数据量数据时,信号处理算法所耗用的大量时间,在线采集的瓶颈不再是关注的焦点。
在LabVIEW中保存并调回适合更多分析的数据
分析采集范畴外被采获的数据通常需要用户将数据传输至文件,无论它具有二进制、文本还是自定义格式。LabVIEW兼容各类标准文件格式,但DataPlugins扩展了LabVIEW的数据文件支持能力。用户可使用DataPlugins来描述各类自定义文件格式并告诉LabVIEW如何诠释包含存储数据的数据文件。将信号处理应用于采集到的数据,无论是从硬件设备实时采集还是直接打开文件获取数据,流程都是一样的。
数据便携性确保您永不触及盲端
使用LabVIEW时,用户无需脱离LabVIEW环境,就能解决更多的应用问题。有时用户仍需将数据带入另一个工具,在公司内进行离线分析或推广。例如:迁移Microsoft Excel等程序,要先将采集的数据保存至格式可被Excel理解的文件,再在Excel中打开该数据。通常,诠释格式化和不同应用程序之间文件兼容性差异的必要步骤,对您而言只是另一项开发者需承担的任务。所幸,LabVIEW有助通过内置和附加工具,简化这些通常累赘的步骤。LabVIEW提供的内置函数,既能将数据直接传输至Microsoft Excel从而将数据保存为兼容格式,也能通过LabVIEW报告生成工具包帮助用户自动创建源自采集和分析代码的报告。如需对数据加强交互式分析,LabVIEW可很好地配合NI DIAdem数据管理和交互式分析软件。
通过保存仅需数据节省时间
想在屏幕上查看数据,单凭数据的采集和处理往往是不够的。您有时需要保存采集的数据以备今后参考;在硬盘和数据库中存储数百或数千兆字节的数据也并不稀奇。应用程序运行了一次乃至上百次后,用户继而可以提取信息以便作出决定、比较结果、对过程做适当的修改,直到获得满意的结果。
盲目存储所有采集的数据,使累积大量数据相对容易,以至其变得无法管理。借助快速数据采集卡和足量的通道数,只需数毫秒就能获取数千个值[NI PCI-6115 S系列数据采集(DAQ)卡每秒采集超过57 MB的原始数据]。搞清所有数据的意义并不是一项琐碎的任务。工程师和科学家一般会提出报告,创建图形,并最终用经验数据来证实任何评估和结论。缺乏正确的工具,任务艰巨的同时,还导致效率下降。
借助LabVIEW,在将数据存储到磁盘前,可先轻松执行重要的数据压缩和规范化,这样在提取已保存的数据做进一步分析或预览时,就显得更容易。重采样、平均和数学变换,如:快速傅立叶变换(FFT),可将大量原始数据转换为更有用的结果以便记录和今后参考。
全面、可靠的功能
将分析与数据采集和数据显示结合在单个应用程序中,这在大多数软件开发环境中不可能实现。典型的软件包可以是:缺乏信号处理库的通用编程语言、只执行单个任务(即采集)的专项即用型(turnkey)应用,就是结合对硬件和实际信号有限支持的数值分析工具。很少能够满足测量系统的全部需求(如:分析),这迫使您花时间传输工具之间的数据并在中间数据格式间进行转换。有别于仅为数据采集或信号处理设计的软件开发工具,LabVIEW从开发时就提供完全集成的解决方案,帮助用户在单一环境中同时采集并分析数据。
图2. 显示采集、分析并运用ExpressVI记录至文件的单个VI
作为一类针对工程应用的工具,LabVIEW图形化编程及其扩展的整套信号处理和测量函数,极大简化了测量和在线分析应用程序的开发。LabVIEW用户可将这些函数集成到应用程序中,进行智能测量并更快地获取数据。
内置函数的扩展程序库
LabVIEW包含超过850个内置信号处理、分析和数学函数,可简化多类应用程序的开发。此类函数的范畴从高级且基于配置的助手延伸至低层次程序块,便于您通过结合完全定制算法。使用这些范围宽广的函数,令您能在需要时灵活应用必要的算法。
使用Express VI来交互式配置分析
基于配置的Express VI能够最为简单地将在线测量分析和信号处理加入LabVIEW应用。将Express VI添加至程序框图时,显示的对话有助您配置自己需要进行的分析。这降低了将分析和信号处理算法添加至应用造成的难度。众多的信号分析Express VI,既为LabVIEW开发提供配置方法,也包含LabVIEW的许多低层次信号处理功能。
图3. 信号分析选板展现适合信号处理的广泛Express VI
借助Express VI,用户在交互地查看各类分析算法设置时,可立即看到配置对话中的结果。例如,幅值和电平测量Express VI执行多类电平测量,如:直流、均方根、最大和最小峰、峰-峰计算、周期平均和周期均方根。
图4. 配置窗口, 面向幅值和电平测量Express VI
类似的,滤波器Express VI提供的工具能够配置低通、高通、带通和带阻等数字滤波器。针对该Express VI的配置对话可通过控制交互地配置滤波器设置,如:高和低截止频率、针对有限脉冲响应(FIR)滤波器的抽头数、针对无限脉冲响应(IIR)滤波器(Butterworth、Chebyshev、反Chebyshev、椭圆和Bessel)的拓扑选择、阶次选择。
图5. 配置窗口, 面向滤波器Express VI
分析数据中的一项普遍挑战是:处理多个拥有不同采样率却须接受关联的信号。然而,用户能够使用对齐和重采样Express VI采集2个或多个信号,并通过工具对凭不同采样率和采集参数采获的信号进行对齐和重采样。该Express VI提供的工具,可选择采集类型、对齐间隔、重采样特性(最小dt、用户自定义dt或基于参考信号)。
图6. 配置窗口, 面向对齐和重采样Express VI
LabVIEW还包含Express VI来实现以下高级功能:
频谱测量
失真测量
单频测量
幅值和电平测量
信号的时间与瞬态特性测量
曲线拟合
统计
卷积和相关
仿真信号
信号掩区和边界
对齐和重采样
借助可靠的分析函数节省时间
LabVIEW还包含一个完整的低电平信号分析函数库,可执行特定分析任务。这些VI被归为两大类:信号处理和数学。信号处理库中的函数适合:滤波、信号生成、信号分析、变换、波形调理、波形生成、波形测量、加窗。仅在滤波VI子集中,就有面向Bessel、Butterworth、Chebyshev、椭圆、FIR加窗、反Chebyshev等内容的滤波VI。数学库中的函数适合不同方程、曲线拟合、几何、积分、插值、线性代数、优化、多项式、概率和统计。
低电平信号分析库的一个范例是频谱分析库(如图7所示)。
图7. 频谱分析选板
该选板内的一项常用VI是自功率谱VI,可计算时域信号的单边且经缩放的自功率谱。用户无须从头开发功率谱代码,就能立即使用该VI并能节省大量时间。如图8所示:如需查看或编辑包含自功率谱等VI的代码,用户可双击其程序框图图标以访问对应的程序框图,从而立刻查看源代码。
图8. 自动功率谱VI程序框图
这些分析库拥有20年的可靠使用历史;NI继续向图形数学和信号处理库集中注资,并且加入新型函数以及单核与多核性能。
在LabVIEW中结合数学方法和自然基于文本的数学
使用LabVIEW的用户在开发算法、分析结果或处理信号时,可自由选择偏爱的语法用于分析。虽然LabVIEW是大众熟知的针对图形化编程语言的开发环境,它却还通过针对.m文件的本地编译器,提供面向数学的文本编程。这款LabVIEW MathScript编译器,使用.m文件脚本语法并且纳入800多种针对数学、信号处理、分析和控制的常用函数。
LabVIEW MathScript RT模块是针对LabVIEW的附加工具,通过将LabVIEW MathScript编译器与2个接口一同安装来执行自定义.m文件。
通过MathScript窗口交互地查看数据
LabVIEW MathScript窗口提供的交互界面有助用户下载、保存、设计和执行自身的.m文件。它的设计适合概念探索;为此,用户既能使用命令行界面一次一个地输入命令,也能在简单的文本编辑器窗口中构建批处理脚本。图9展现了LabVIEW MathScript窗口;用户可通过选择工具?MathScript窗口,由LabVIEW菜单进行访问。
图9. LabVIEW MathScript窗口适合与自定义.m文件交互
LabVIEW MathScript窗口以图形和文本等各种形式提供即时反馈。用户可选用各类绘图命令来生成源自LabVIEW MathScript窗口的图形,类似图10所示。
图10. 通过LabVIEW MathScript生成的绘图窗口范例
用户可利用MathScript生成以下多种图:
栏 (二维和三维)
等高线 (二维和三维)
误差棒
羽状图
网格
饼
极坐标
散点
曲面
树形
瀑布
这些绘图功能有助可视化显示数据的结果,从而确定分析规程的输出。
查看使用MathScript交互式窗口进行算法开发的更多信息。
通过LabVIEW图形化代码和MathScript节点, 嵌套自定义.m文件
采用脚本节点接口,还可以将文本编程与传统的LabVIEW图形化编程相结合。脚本节点是LabVIEW程序框图上大小可变的文本输入区域,可被添加至图形化程序。通过MathScript节点,用户可在VI的运行时执行过程中执行脚本。数据进入节点的左侧边界,在顺序执行脚本时被使用或修改,再通过节点右侧边界上的输出变量退出节点。
图11. MathScript节点通过图形化G代码, 在线放置自定义.m文件代码
用户能够进行脚本的分类、复制和粘贴,或者将它们从文件中导出。借助MathScript节点,即便不通过LabVIEW MathScript开发自定义.m文件,也能重复使用它们,进而将基于文本的数学编程与图形化LabVIEW环境中的数据采集内联。
借助LabVIEW MathScript和LabVIEW图形化编程,用户能够选择最适合的语法;此类语法往往由2部分组成。脚本方面,请参考颇受欢迎的教材——由Sanjit Mitra编著的数字信号处理实验指导书(MATLAB版)。它先生成1个测试信号,再将移动平均滤波器应用于该信号。
% Simulation of an M-point Moving Average Filter
% Generate the input signal
n = 0:100;
s1 = cos(2*pi*0.05*n); % A low-frequency sinusoid
s2 = cos(2*pi*0.47*n); % A high frequency sinusoid
x = s1+s2;
% Implementation of the moving average filter
M = input('Desired length of the filter = ');
num = ones(1,M);
y = filter(num,1,x)/M;
% Display the input and output signals
clf;
subplot(2,2,1);
plot(n, s1);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('Signal #1');
subplot(2,2,2);
plot(n, s2);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('Signal #2');
subplot(2,2,3);
plot(n, x);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('Input Signal');
subplot(2,2,4);
plot(n, y);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('Output Signal');
axis;
该脚本生成2个正弦信号、将它们加在一起,再将移动平均滤波器用于2个组分的和上。图10是由该脚本生成的图表。LabVIEW MathScript窗口提供的界面,可在运行时与脚本交互。然而,该图表与LabVIEW图形化编程范例结合后,可极佳地实现脚本自动化,令您能够实时地与输入参数进行交互。
图12. 程序框图范例将基于文本的数学与LabVIEW中的G代码集成
图12 展现了如何使用MathScript节点将脚本集成至LabVIEW程序框图。脚本经过2项修改:
输入参数flow、fhigh和M使用前面板输入控件接受控制。
脚本的最后23行用于生成图表。它们被删除;这些图通过标准的LabVIEW图形接受配置。
图13. 前面板范例, 将LabVIEW用户界面组件和基于文本的数学集成
借助该LabVIEW前面板,用户可控制生成的正弦信号的低频率和高频率以及滑动平均滤波器接受使用时的长度。当LabVIEW VI运行时,用户可改变这些值并且轻松视觉化显示分析规程的输出和它如何受输入值改变的影响。将LabVIEW VI的交互性投入基于文本的脚本的通用流程,被称为算法实现。
验证算法
面向LabVIEW的内置规程扩展程序库,会同执行这些例程的选件,可节省大量的开发时间。由于National Instruments开发并测试这些例程已超过20年,用户无需花过多时间验证例程是否正确。在许多缺乏此类内置库的通用编程语言中,用户不仅要从头构建例程,还要验证输出是否正确。
轻松定制规程
面向LabVIEW的内置规程扩展程序库,让用户能够使用预定义算法,如:那些在Express VI中的部分。然而,底层库还让用户有机会定制这些最符合应用要求的规程。无论是选择逐点操作,还是处理复杂数据,用户均能轻松制定这些规程,以优化实现自身目标的的内置库。
通过信号生成功能简化开发
为测试或原型目的生成数据,往往是一项被忽视的编程语言功能。用户可用LabVIEW生成各类信号,在VI中代表实际信号。
图14. LabVIEW中的信号生成函数选板
这些函数,如图14所示,令用户能够通过仿真源自硬件的输入,灵活开发应用程序,无需做时而较累赘的硬件设置。该函数有利于大多数项目的测试与原型,它往往极易替代现有硬件。
通用信号的生成也以Express VI形式呈现。仿真信号Express VI,如图15所示,既能生成正弦波、方波、三角波、锯齿波和直流信号,也能获得仿真任意信号 Express VI的补充,继而用于定义信号分量。
图15. 配置窗口面向仿真信号Express VI
通过附加工具扩展分析
LabVIEW信号处理、分析和数学库的设计,适合科学与工程领域内的通用应用程序。除了这些内置分析库,用户还能使用附加工具包和模块来削减开发时间,以满足特定应用或产业中的专项需求。在自定义应用程序中使用该工具包的组件后,您不再过多依赖开发更多垂直应用[如:高级数字信号处理、声音和振动测量、阶次分析、图像处理、比例积分微分(PID)控制、仿真]时通常需要的特定技能。
高级信号处理
LabVIEW高级信号处理工具包提供专为高级数字信号处理(DSP)设计的函数。它们被分为三大类:联合时频分析、小波分析、超分辨率频谱分析。此外,工具包提供的图形化工具有助交互式设计数字滤波器。
联合时频分析 (JTFA)
有别于常见的分析技术,联合时频分析(JTFA)规程可同步检测时域和频域中的信号。JTFA几乎适合FFT涉及的各类应用,如:生物医学信号、雷达图像处理、振动分析、机器测试、动态信号分析。然而,借助JTFA,您能通过同步分析时域和频域获得更多信息。
与经典的傅立叶分析类似,JTFA包含2种主要方式:线性和二次方程式。线性算法包含:短时傅立叶变换(STFT)和Gabor展开(逆短时傅立叶变换)。LabVIEW用户可利用这些线性变换,将信号从时域变换至联合时频域;反之亦然。这些规程极具降噪功效。二次型方法包含:自适应谱、Choi-Williams分步、Cone-Shaped分步、基于Gabor Expansion的谱图(也称为Gabor谱图)、基于STFT的时频图、Wigner-Ville分布。可应用二次变换轻松查看信号的功率谱如何随时间演进。Gabor谱图可在高分辨率和交期干扰之间取得最佳平衡。
小波
小波是较新的信号处理方式。小波变换几乎总能作为一组滤波器,将一个信号分解为多个信号。它能分隔并保留这些子带中一个或多个成分的信号特征。因此,运用小波变换的一项最大优势是:用户能够轻松提取信号特征。多数情况下,小波变换在特性提取和降噪的表现上,优于常规的FFT。由于小波变换能够提取信号特征,因而被用于诸多针对数据压缩、回声探测、模式识别、边缘检测、消除、语音识别、纹理分析和图像压缩的应用程序中。
基于模型的频谱分析
用于频谱分析的主要工具是:快速傅立叶变换(FFT)。对于高分辨率的谱而言,基于FFT的方式需要大量采样数。然而,多数情况下,由于的确缺少数据,或者由于用户需要确保信号的光谱特性不随数据记录的持续而变更,数据集是有限的。如果数据样本的数量有限,用户可使用基于模型的分析来确定光谱特性。凭借该技术,用户可采用适当的信号模型并确定模型的系数。基于该模型,应用可接着预测给定的有限数据集中的缺失点,从而获得高分辨率的谱。此外,用户可使用基于模型的方式,估计衰减正弦信号的幅值、相位、阻尼因子和频率。超分辨率频谱分析还适合生物医学研究、经济、地球物理、噪声、振动、语音分析等各类应用。
数字滤波器设计
数字滤波器的重要性毋庸置疑。数字滤波器,更通常的情况下,数字信号处理(DSP)算法按照离散时间系统分类。它们通常用于通用计算机上、专用DSP芯片上或FPGA芯片内。凭借众所周知的优势,数字滤波器通常用于替换典型模拟滤波器。LabVIEW数字滤波器设计工具包的亮点包括:能对实时信号进行实际滤波器测试、能自动生成LabVIEW和ANSI C代码从而将DSP、FPGA或其他嵌入式系统作为目标。
声音与振动分析
NI分析软件有助进行许多常见声音和振动分析应用,如:音频测试、声音测量、环境噪音测试、振动分析以及噪声、振动和声振粗糙度(NVH)测量。 专业分析能力包含:符合ANSI和IEC的分数倍频程分析和功率谱缩放。此外,NI声音和振动测量套件包含诸多适合音频测量的函数,如:增益、相位、THD、IMD、动态范围、相位线性、正弦扫频分析。NI声音与振动助手(Sound and Vibration Assistant)中易用、交互且基于配置的环境,适合分析和数据记录。
函数包含:全程、1/3、1/6、1/12和1/24倍频程;用户定义的采样频率;用户定义的谱带数量;时域中的A、B和C加权;标准守则;指数平均(慢速、快速和自定义时间常数);互功率谱;频率响应(H1、H2和H3);相干;相干输出功率。套件还提供其他视觉化工具(如:瀑布图、色图、倍频程条线图、倍频程线图),以便用户轻松创建到LabVIEW应用程序的前面板。
声音和振动测量套件提供的库,可创建基于LabVIEW具有阶次分析功能的自定义测量和自动化应用,如:阶次跟踪、阶次提取和转速表信号处理。
Gabor阶次追踪算法有助用户借助循环或往复组件,分析源自机械系统的声音、振动和其他动态信号。它提供联合时频域中灵活的有序能选择。另外,用户既能绘制与时间或rpm相对的单个阶次(多阶次),也能用阶次提取工具将特定阶次的信号分量与采获的数据分离、用自动阶次选择工具来查找并指定最重要的阶次、用自定义阶次选择进行分析。
图像处理
NI视觉开发模块集合了面向广泛编程语言(如:NI LabVIEW与Microsoft C++、Visual Basic、.NET)的图像处理和机器视觉功能。通过这些功能,即可增强图像、检查显像、定位特征、识别对象并测量部件。搭配程序库的视觉开发模块还包含NI视觉助手(Vision Assistant)和NI视觉采集软件。
视觉开发模块的特性如下:
数百种图像处理功能, 包含模式与几何匹配、OCR、条形码阅读器、目标分类和颗粒分析
亚像素 (subpixel)精度, 降至像素的1/10和度数 (degree)的1/10
通过视觉助手(Vision Assistant), 快速进行应用原型和代码生成
驱动软件适用于数千款相机, 包含千兆以太网相机和IEEE 1394相机
RF
如今,复杂的RF系统需要快捷而灵活的测试平台,实现从原型设计到制造过程的可靠测量。事实上,与传统仪器相比,NI模块化RF仪器通过结合多核(multicore)处理器、PCI Express等技术,将自身在自动化测试应用中的测量速度提升了5至10倍。这款通信测试平台的操作范围从直流延伸到6.6 GHz,RF瞬时带宽高达100 MHz。有效分析此类信号需要借助多个LabVIEW附加工具中的特定函数。
WLAN
NI无线LAN (WLAN)测量套件可借助业界领先的速度和精度,进行常见的IEEE 802.11a/b/g测量。结合高性能的多核处理器,PXI Express无线局域网(WLAN)测量系统可完成绝大多数802.11测量,其执行速度是传统箱式仪器的5至10倍。此外,由于PXI Express RF仪器接受软件自定义,用户可使用相同仪器集合测试多个标准。因此,用户可借助相同硬件,测试DVB-T、GPS、WiMAX、WCDMA、ZigBee、蓝牙和其他许多标准。
NI提供的灵活软件工具和模块化RF仪器,适用于射频识别(RFID)阅读器与标签的仿真和测量。
全部0条评论
快来发表一下你的评论吧 !