基于LabVIEW的功率谱的设计资料.docx
- 文档编号:2951371
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:11
- 大小:235.17KB
基于LabVIEW的功率谱的设计资料.docx
《基于LabVIEW的功率谱的设计资料.docx》由会员分享,可在线阅读,更多相关《基于LabVIEW的功率谱的设计资料.docx(11页珍藏版)》请在冰豆网上搜索。
基于LabVIEW的功率谱的设计资料
基于LabVIEW的功率谱的设计
摘要
LabVIEW是由美国国家仪器公司所开发的一种基于G语言的虚拟仪器软件开发工具。
诞生于1986年,是一种图形化虚拟仪器编程语言。
功率谱,主要用来测量马达、发动机、变压器、电机等功率转换装置的总效率和电机效率,目前被广泛用于混合动力电动电动车、汽车,太阳能发电,燃料电池和风力发电。
本课题通过虚拟功率谱的设计,了解使用基于Labview进行虚拟仪器编程的方法与实现技术。
主要实现方法是对同频率的正弦电压和正弦电流的有效值,相位差及其功率和瞬时功率进行测试和显示,实现对电压信号和电流信号的功率谱分析,对视在功率、有功功率、无功功率的测量。
LabVIEW虚拟仪器可以克服传统仪器测量成本高、准确度低、扩展性差的缺点,具有良好的可操作性和可维护性。
关键字:
LabVIEW,虚拟仪器,功率谱
1.LabVIEW概述
1.1LabVIEW与G语言
LabVIEW[1](LaboratoryVirtualInstrumentEngineering),即实验室虚拟仪器集成环境,是一种用图标代替文本行创建应用程序的图形化编程语言。
和Perl、VisualC++、Delphi、VisualBasic等文本型程序代码的程序语言不一样的是,LabVIEW是一种利用图形化的结构框图构建程序代码的语言,所以,运用这种图形化的语言编程时,基本不用写文本行程序代码,取代的是使用连线、图标构成的流程图表。
LabVIEW是一种面向最终用户的编程平台,它不必去记忆那眼花缭乱的文本式程序代码,提供了实现数据采集系统和仪器编程的便捷方法。
使用它进行测试、原理设计、研究并且实现仪器系统的功能时,因而可以促进提高工作效率。
LabVIEW是一个图形编程虚拟仪器系统开发环境,它集中了图形化编程方式的灵活性与高性能以及数据采集、控制、数据分析、数据表示等功能,能为数据显示、测量分析、数据采集和仪器控制等各种实际应用提供因要的开发平台,所以,LabVIEW环境可以缩短应用程序开发时间和项目成本帮助程序员们促进工作效率。
当我们厌烦于对于文本模式编程语言,陷入数组、函数、表达式、指针以及对象、继承、封装等枯燥的概念和代码中时,我们急切的需求一种层次清晰、简单易用、代码直观而且功能强大的编程方法,G语言就是一种这样的新颖的编程,而LabVIEW则是G语言的新颖的编程方法的代表。
LabVIEW基于G语言的基本特征——用软件模块和流程方框图产生块状程序,编程就像是设计电路图一样[2]。
1.2虚拟仪器的基本概念
虚拟仪器(VisualInstrument)是一种基于计算机的仪器,计算机和仪器有两种结合方式。
一是计算机装入仪器:
最典型的是智能化的仪器,这类仪器随着计算机功能的强大和体积的缩小,目前已出现嵌入式系统的仪器。
二是仪器装入计算机:
虚拟仪器主要是指这种方式,它是以计算机硬件以及操作系统为依托,实现各种仪器功能。
虚拟仪器利用计算机显示器(CRT)的显示功能模拟传统仪器的控制面板,以多种形式表达输出检测结果;利用计算机强大的软件功能实现信号数据的运算,分析,处理,由I/O接口设备完成信号的采集,测量与调理,从而完成各种调试功能的一种计算机仪器系统。
虚拟仪器中硬件仅仅是解决信号的输入/输出的方法和软件赖以生存,运行的物理环境,软件才是整个仪器的核心构件。
它由计算机,模块化功能硬件和应用软件三大部分组成。
目前已有多种虚拟仪器的软件开发工具,一是文本式编程语言:
如C,VisualC++,VisualBasic,Labwindows/CVI等。
二是图形化编程语言:
本文介绍的NI公司的Labview,HP公司的VEE,CapitalEquipment公司的Testpoint2.0和HEM公司的Snap-Master等。
1.3LabVIEW软件的特点
Labview运用图形化的编程方式,设计者无需写任何文本格式的代码,是真正的工程师的语言;提供了丰富的数据采集,分析及存储的库函数;既提供了传统的程序调试手段,如设置断点,单步运行,同时提供有独到的高亮执行工具,使程序动画式运行,利于设计者观察程序运行的细节,使程序的调试和开发更为便捷;32bit的编译器编译生成32bit的编译程序,保证用户数据采集,量方案的高速执行。
利用Labview,可产生独立运行的可执行文件,Labview提供了Windows,UNIX,Linux等多种版本;囊括了DAQ,GPIB,PXI,VXI,RS-232/485在内的各种仪器通信总线标准的所有功能函数;提供大量与外部代码或软件进行连接的机制,如DLLS(连接库),DDE(共享库),ActiveX等;强大的Internet功能,支持常用网络协议,方便网络,远程测控仪器的开发。
1.4Labview中的基本概念
1.4.1VI的概念
利用LabVIEW开发出的图形化应用编程环境被称作VI(VirtualInstrument的英文简称,即虚拟仪器[2])。
VI是由框图、图标以及连线构成的应用软件程序,Labview应用程序以.VI后缀,由FrontPanel(前面板)、BlockDiagram(框图或流程图程序)以及图标/连接器(Icon)三部分构成。
前面板是应用程序的主界面,是人机交互的窗口,主要由Indicators(显示量)和Controls(控制量)组成。
在程序运行时,用户通过使用控制量(例如用户输入数据的开关以及一些文本框、按钮等)控制程序和输入数据的运行,而显示量(例如显示波形的示波器控件等)则主要用于显示程序运行的结果。
如果将一个VI程序比作一台仪器,那么,显示量则是仪器的显示窗口,用于显示经过处理、程序分析后的结果,而控制量是仪器的数据输入端口的控制开关,用于给程序提供控制信号和输入数据。
若是把VI的前面板比作一台仪器的操作面板,用于信号的结果的显示、输入以及仪器控制的运行,那么后面板就是仪器中的电路原件和电路板,主要对信号进行处理和分析[3]。
1.4.2框图程序
每一个程序前面板都对应着一段框图程序。
框图程序用Labview图形编程语言编写,可以理解为传统程序的源代码。
框图程序由端口,节点,图框和连线四种元素构成。
端口是框图程序与前面板的控制件和指示器间传递数据的起点与终点。
节点是实现程序功能的基本单元,它具有输入和输出端口,在程序运行时完成一定操作。
图标是LabVIEW作为G语言这种图形化的编程语言的特点之一,是图形化的函数、变量、常量,以及ExpressVIs和VIs。
一般情况下,LabVIEW中的每一个图标至少都有一个端口,用来向其他图标传输数据。
连线是图标的数据端口之间的数据通道,这等同于一般程序中的赋值语句。
数据是单向流动的,从“源数据端口”往一个或多个“目的数据端口”流动。
不同的线型表示着不同的数据结构类型。
在屏幕上,不同数据类型不同的颜色标注。
框图是用来实现LabVIEW中的流程顺序。
例如条件分支控制、顺序控制和循环控制等,程序员使用它们控制着VI程序的执行顺序方式。
在LabVIEW中,框图的使用是保证其结构化的程序设计运行的最重要手段。
2.LabVIEW功率谱基础
2.1虚拟功率谱参数及基本结构
(1)视在功率:
测得的正弦电压和电流有效值得乘积,即S=UI
(2)相位差:
通常用φ表示,是两个频率相同的交流电相位的差,功率因数:
用λ表示,λ=cosφ
(3)有功功率:
指一端口实际消耗的功率,在正弦波中,电路的有功功率就是其平均功率P=UIcosφ,无功功率:
Q=UIcosφ
(4)瞬时功率:
正弦波任一时刻的电流与电压的乘积
2.2LabVIEW中功率谱功能函数
2.2.1正弦信号发生器
图2-1正弦波功能引脚图
如图2-1所示,以下介绍各端口的功能。
重置相位确定正弦波的初始相位。
默认值为TRUE。
如重置相位的值为TRUE,LabVIEW将把初始相位设置为相位输入。
如重置相位的值为FALSE,LabVIEW将把正弦波的初始相位设置为上一次VI执行时相位输出的值。
采样是正弦波的采样数。
默认值为128。
幅值是正弦波的幅值。
默认值为1.0。
频率是正弦波的频率,单位为周期/采样的归一化单位。
默认值为1周期/128采样或7.8125E–3周期/采样。
相位输入是重置相位的值为TRUE时正弦波的初始相位,以度为单位。
正弦波是输出的正弦波。
相位输出是正弦波下一个采样的相位,以度为单位。
错误返回VI的任意错误或警告。
如将错误连线至错误代码至错误簇转换VI,错误代码或警告可转换为错误簇。
正弦波详细信息
如序列Y表示正弦波,正弦波VI根据下列等式生成一个信号。
yi=a*sin(phase[i])
i=0,1,2,..,n-1,其中,
a是幅值,
相位[i]=初始相位+频率*360*i,
频率是以归一化周期/采样为单位的频率,
如重置相位为TRUE,则初始相位是相位输入。
如重置相位为FALSE,则初始相位是上一次执行的相位输出。
“正弦波”VI可重入,所以可使用该VI模拟从正弦波函数生成器进行连续采集。
如输入控件重置相位为FALSE,则此后对正弦波VI的调用将产生含有下个采样的输出正弦波数组。
该VI在下次执行时,将相位输出作为新的相位输入。
2.2.2幅值和电平测量
图2-2幅值和电平测量功能引脚图
如图2-2所示,以下介绍各端口的功能。
信号:
包含一个或多个输入信号。
重新开始平均:
指定是否重新开始选定的平均过程。
默认值为FALSE。
第一次调用ExpressVI时,平均过程会自动开始。
勾选平均复选框后将出现输入端。
错误输入(无错误):
说明VI或函数运行前发生的错误。
直流:
采集信号的直流分量。
最大峰:
测量信号的最高正峰值。
输入信号:
显示输入信号。
若将数据连ExpressVI后运行,输入信号将会显示实际数据。
如关闭后再打开ExpressVI,输入信号将显示示例数据,直到再次运行VI。
2.2.3功率谱
图2-3功率谱功能引脚图
如图2-3所示,以下介绍各端口的功能。
X是输入序列。
功率谱[6]返回X的双边功率谱。
如输入信号以伏特为单位(V),功率谱的单位为伏特-rms平方(Vrms2)。
如输入信号不是以伏特为单位,则功率谱的单位为输入信号单位-rms平方。
错误返回VI的任意错误或警告。
如将错误连线至错误代码至错误簇转换VI,错误代码或警告可转换为错误簇。
功率谱详细信息
函数x(t)的功率谱Sxx(f)定义为Sxx(f)=X*(f)X(f)=|X(f)|2,
其中X(f)=F{x(t)},X*(f)是X(f)的复共扼。
“功率谱”VI根据FFT和DFT例程计算功率谱
其中Sxx表示输出序列功率谱,n是输入序列X中的采样数。
当输入序列X的采样数n为一个有效的2的幂
n=2m
m=1,2,3,…,23,
“功率谱”VI以快速基2FFT算法计算实数值序列的快速傅立叶变换并缩放幅度平方。
该VI以FFT可计算的最大功率谱为223(8,388,608或8M)。
当输入序列X中的采样数不是一个有效的2的幂而是可分解因子的小质数的积时,“功率谱”VI以高效DFT算法计算实数值序列的离散傅立叶变换并缩放幅度平方。
VI以快速DFT可计算的最大功率谱为222–1(4,194,303or4M–1)。
2.2.4公式节点
公示节点[7]是一种程序结构,利用公示节点,用户不仅可以实现复杂的数学公式还能通过文本编程写一些基本的逻辑语句。
公式节点基本上弥补了图形化开发语言相对于文本语言的缺陷。
公示节点的语法和C语言的语法基本相同。
公式节点,如图2-4所示。
计算程序框图上的数学公式和与C相似的表达式。
在公式中实用下列内置函数:
abs,aco
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 LabVIEW 功率 设计 资料
![提示](https://static.bdocx.com/images/bang_tan.gif)