第3章基于LabVIEW的数学分析
LabVIEW作为自动化测试、测量领域的专业软件,在测量信号的时域分析和处理中,用户经常需要对信号进行数学运算和分析,LabVIEW内部集成了600多个分析函数,其中包含了丰富而功能强大的数学分析函数节点,这些函数节点涵盖了初等与特殊函数、函数计算与微积分、线性代数、概率统计、曲线拟合、*优化等方面的应用,为用户的编程提供了极大的方便。LabVIEW本身所具有的强大的数学分析能力可以方便地完成对数据的各种分析和处理,同时也是数字信号处理节点的有益支持,因此,用户熟练掌握这些数学分析函数节点可以在编程实现中达到事半功倍的效果。
从LabVIEW 80版本后,LabVIEW软件特别加强了数学分析与信号处理的能力,除了增强的数学函数库,还极大地增强了MathScript节点的功能和应用。此外,LabVIEW还与MATLAB联合编程,从而实现更为强大的数学分析功能(对于该部分内容介绍详见第7章)。
本章内容将详细讲述LabVIEW集成的常用的数学分析VI函数的使用方法及相应的应用实例实现。
31图形化编程与数学分析
LabVIEW作为图形化编程语言,与传统的基于文本编程语言有很大的不同。若使用传统的文本编程语言来实现数学分析,用户可能要编写很多文本代码,而LabVIEW是通过连线和图标的方式编程,但是如果仅仅使用LabVIEW的基本运算符号和程序结构来实现复杂的数学分析算法,可能会导致杂乱无章的连线,使程序的可读性大大降低。针对这一缺点,LabVIEW封装了大量的数学函数致力于数学分析,并且提供了基于文本编程语言的公式节点、MathScript节点和MATLAB脚本,用户可以通过封装好的VI函数结合基于文本编程语言的节点来实现编程,*终使得程序框图变得非常简洁。因此,用户通过LabVIEW集成的数学分析函数节点,实现数学分析的功能不仅不会导致繁杂的连线,反而由于采取了图形化编程和文本语言编程相结合的方式,它比单纯的文本编程语言具有更大的优势,使得程序的可读性和效率性大大增强。
LabVIEW 2017提供的数学分析函数节点主要位于“函数”选板→“数学”子函数选板下,如图31所示。
图31数学分析函数节点
由图31可以看出,根据不同的数学分析功能,在“数学”子函数选板下数学分析函数节点VI被分为12个子选板,其主要功能如下所示。
●数值:主要用于对数值创建和执行算术及复杂的数学运算,或将数从一种数据类型转换为另一种数据类型等数值操作。
●初等与特殊函数:主要用于执行三角函数、指数函数、双曲线函数、对数函数、离散函数和贝塞尔函数等一些常用的数学函数。
●线性代数:主要是进行线性代数方面的数学分析,包括求解一些线性方程组,进行与矩阵相关的计算与分析等操作。
●拟合:主要用于进行曲线拟合的分析或回归运算,主要包括线性拟合、非线性曲线拟合、高斯曲线拟合、曲线拟合、指数拟合、球面拟合等拟合VI,其中,包含的**曲线拟合VI主要用于计算拟合统计量和系数。
●内插与外推:主要用于进行一维和二维插值、分段插值、多项式插值和傅里叶插值。
●积分与微分:主要用于执行积分和微分操作。
●概率与统计:主要用于执行概率、叙述性统计、方差分析和插值函数。
●*优化:主要用于确定一维或n维实数的局部*大值和*小值、Chebyshev逼近准则等。
●微分方程:主要用于求解微分方程,包括常微分方程VI和偏微分方程VI。
●几何:主要用于进行坐标和角运算,该子选板上的VI可返回数学错误代码。
●多项式:主要用于进行多项式的计算和求解,该子选板上的VI可返回数学错误代码。
●脚本与公式:主要用于计算程序框图中的数学公式和表达式。该子选板上的节点可返回公式解析错误代码、LabVIEW MathScript错误代码或数学错误代码。
关于数值VI子选板的一些基本的数学操作,在第2章相关部分已经详细介绍,这里不再赘述。本章将针对其余的11种数学分析函数节点VI进行介绍,基于LabVIEW的数学分析函数节点有数百个,在此不可能面面俱到、一一阐述,因此,本章将对一些常用的数学分析函数节点VI按照功能应用进行介绍,并采用实例实现,使用户对于其应用有个直观的认识,对其他没有作介绍的VI,用户在设计编程时需要进行详细了解和掌握,同时可参考LabVIEW即时帮助信息自行学习、了解并掌握其应用功能,这里就不再一一赘述。