基于LabVIEW的信号发生器.docx

上传人:b****3 文档编号:5309722 上传时间:2022-12-15 格式:DOCX 页数:10 大小:165.08KB
下载 相关 举报
基于LabVIEW的信号发生器.docx_第1页
第1页 / 共10页
基于LabVIEW的信号发生器.docx_第2页
第2页 / 共10页
基于LabVIEW的信号发生器.docx_第3页
第3页 / 共10页
基于LabVIEW的信号发生器.docx_第4页
第4页 / 共10页
基于LabVIEW的信号发生器.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

基于LabVIEW的信号发生器.docx

《基于LabVIEW的信号发生器.docx》由会员分享,可在线阅读,更多相关《基于LabVIEW的信号发生器.docx(10页珍藏版)》请在冰豆网上搜索。

基于LabVIEW的信号发生器.docx

基于LabVIEW的信号发生器

LabVIEW软件大作业

题目:

基于LabVIEW的信号发生器的设计

学院(系):

机电信息工程学院自动化系

班级:

测控081

学号:

2008024106

姓名:

姜丽

提交时间:

2011-11-26

基于Labview的信号发生器的设计

1摘要

本文实现了基于Labview8.0的虚拟正弦,余弦,方波,三角波信号发生器.可以根据需要,改变波形的频率和幅值,保存波形的分析参数到指定文件,并介绍了基于USB数据采集卡的虚拟信号输出。

本论文首先简介了虚拟函数信号发生器的开发平台,及虚拟信号发生器的设计思路,并且给出了基于labview的虚拟信号发生器的前面板和程序设计流程图,讲述了功能模块的设计步骤,提供了虚拟发生器的面板。

在设计信号发生器的过程中经过深入的思考,结合Labview的具体功能作了一定创新。

本仪器系统操作简便,设计灵活,具有很强的适应性。

关键词:

虚拟函数labview信号发生器

2实验目的

①掌握利用D/A转换和计算机资源实现数字式信号发生器的设计方法。

②了解虚拟信号发生器对信号频率的控制方法。

③了解虚拟信号发生器信号频率上下限的决定因素。

④设计虚拟信号发生器。

3实验内容与要求

①利用实验室提供的仪器设备、软件等,学生亲自设计虚拟信号发生器。

②实现虚拟信号发生器的仿真显示。

在虚拟信号发生器的图形显示窗上观察模拟输出信号的波形,要求观察正弦波、方波、三角波。

③实现虚拟信号发生器的模拟信号输出。

频率的测量。

使用用频率计测量信号频率。

滤波。

选择不同的截止频率对输出信号进行滤波。

失真度的测量。

对滤波前后的模拟输出电压波形进行失真度的测量。

 

4功能介绍

4.1Labview软件的发展背景

自从1986年美国NI(NationalInstrument)公司提出虚拟仪器的概念以来,随着计算机技术和测量技术的发展,虚拟仪器技术也得到很快的发展。

虚拟仪器是指:

利用现有的PC机,加上特殊设计的仪器硬件和专用软件,形成既有普通仪器的基本功能,又有一般仪器所没有的特殊功能的新型仪器。

与传统的仪器相比其特点主要有:

具有更好的测量精度和可重复性;测量速度快;系统组建时间短;由用户定义仪器功能;可扩展性强;技术更新快等。

虚拟仪器以软件为核心,其软件又以美国NI公司的Labview虚拟仪器软件开发平台最为常用。

Labview是一种图形化的编程语言,主要用来开发数据采集,仪器控制及数据处理分析等软件,功能强大。

目前,该开发软件在国际测试、测控行业比较流行,在国内的测控领域也得到广泛应用。

函数信号发生器是在科学研究和工程设计中广泛应用的一种通用仪器。

下面结合一个虚拟函数信号发生器设计开发具体介绍基于图形化编程语言Labview的虚拟仪器编程方法与实现技术。

虚拟仪器技术是测量技术和计算机技术综合集成的产物,代表了现代测试技术和仪器技术发展。

所谓虚拟仪器(VirtualInstrument),就是用户在计算机平台上,根据要求定义和设计仪器的测试功能,使得使用者在操作这台计算机时,就像是在操作一台他自己设计的仪器。

VI是由用户利用一些基本硬件及软件编程技术组成的各种各样的仪器系统,它的功能是可由用户自己定义的。

自从引进了VI的技术,这就使用户可以随心所欲地根据自己的意愿,设计自己的仪器系统,就像温度测量计、电压表、图表记录器、数字仪和信号分析计等,都可在同一基本硬件上配置不同的软件而实现。

VI的另一用途是方案论证,用于在设计方案的论证过程中。

对于一种设计要求,我们可能有各种不同的实现方法,如每个方法都用传统的仪器试验一遍不仅花大量的人力,还要大量的财力。

而用基本硬件和基本软件组合的VI可方便地实现各种方法,以比较各个方案的优缺点。

如今,计算机是开放的工业标准化结构,可以提供处理、存储和显示的能力,所以可将计算机用作电子仪器的助动器,使用户自定义各种仪器功能成为现实。

 现在流行的DAQ(数据采集)卡、GPIB(通用接口总线)卡、VXI(系统控制接口卡)等可以插入计算机的槽口。

VI通过改变软件的方法来适应各种不同的需求。

美国NI(国家仪器)公司数字化技术的插入式DAQ卡,具有构造一系列传统测量仪器的能力。

它配上该公司的Labview软件包(包含有DAQ的驱动程序)使用户方便迅速组建自己的应用系统。

传统的电子仪器是自封闭的系统,它具有信号输入、输出的能力,并有固定的用户界面,比如:

输入、输出信号接插件、旋钮、按钮、显示仪表、显示面板等。

一个仪器包括传感器、信号处理器、A/D转换器、微处理器、存储器和内部总线等专门化的电路。

通过这些电路来转换、测量、分析实际信号,并将结果以各种方式显示。

然而,有时为了构成具有一定功能的系统,配置了一套仪器,但对其中的某些仪器,只用到了其中一部分功能,而将它作其他功能使用时,却不具备或达不到所需指标。

如另配置一套仪器,不断效率不高,而且价格高。

要是能将原有的仪器稍加改动,就可以扩大其使用范围。

但是传统的仪器功能是由制造商决定的,用户不能任意更改,用户如按自己的要求定制仪器需要昂贵的价格。

虚拟仪器概念的提出是仪器发展史上的一场革命,代表着仪器发展的最新方向和潮流。

以下是传统测试仪器和虚拟仪器的一个比较:

表1-1:

传统仪器与虚拟仪器对照表

传统仪器

虚拟仪器

开发和维护费用高

基于软件体系的结构,大大节省开发和维护的费用

功能由仪器厂商定义

功能由用户自己定义

与其他仪器设备的连接十分有限

面向应用的系统结构,可以方便地与外设、网络或其他应用连接

数据无法编辑数

数据可编辑、存储、打印

硬件是关键部分

软件是关键部分

价格昂贵

价格低廉(是传统价格的五至十分之一)

技术更新慢(5--10年)

技术更新快(一般1--2年)

系统封闭、功能固定、扩展性低

基于计算机技术开放的功能模块可构成多种仪器

正是因为意识到了虚拟仪器的诸多优点及传统仪器的一些弊端,所以,我们计划开发了这样一台基于Labview(美国NI公司)的多功能虚拟数字发生器。

其集成了示波,,动态/静态波形分析,频谱分析,频率计,波形参数分析,信号发生,以及远程示波等功能。

在示波功能上,除了对波形的精确显示外,还的波形参数进行了显示和对其时域信号、频域信号进行了分析。

4.2功能模板(FunctionsPalette)

功能模板是创建框图程序的工具。

该模板上的每一个顶层图标都表示一个子模板。

若功能模板不出现,则可以用Windows菜单下的ShowFunctionsPalette功能打开它,也可以在框图程序窗口的空白处点击鼠标右键以弹出功能模板。

(注:

只有打开了框图程序窗口,才能出现功能模板。

功能模板如右图所示。

以下介绍几个常用的模板:

结构子模板:

包括程序控制结构命令,例如循环控制等,以及全局变量和局部变量。

数值运算子模板:

包括各种常用的数值运算符,如+、-等;以及各种常见的数值运算式,如+1运算;还包括数制转换、三角函数、对数、复数等运算,以及各种数值常数。

布尔逻辑子模板:

包括各种逻辑运算符以及布尔常数。

群子模板:

包括群的处理函数,以及群常数等。

这里的群相当于C语言中的结构。

比较子模板:

包括各种比较运算函数,如大于、小于、等于。

时间和对话框子模板:

包括对话框窗口、时间和出错处理函数等。

 

信号处理子模板:

包括信号发生、时域及频域分析功能模块。

“选择…VI子程序”子模板:

包括一个对话框,可以选择一个VI程序作为子程序(SUBVI)插入当前程序中。

4.2.1Labview中的框图程序

框图程序是由节点、端子、图框和连线四种元素构成的。

节点类似于文本语言程序的语句、函数或者子程序。

Labview有二种节点类型----函数节点和子VI节点。

两者的区别在于:

函数节点是Labview以编译好了的机器代码供用户使用的,而子VI节点是以图形语言形式提供给用户的。

用户可以访问和修改任一子VI节点的代码,但无法对函数节点进行修改。

端子是只有一路输入/输出,且方向固定的节点。

Labview有三类端子----前面板对象端子、全局与局部变量端子和常量端子。

对象端子是数据在框图程序部分和前面板之间传输的接口。

一般来说,一个VI的前面板上的对象(控制或显示)都在框图中有一个对象端子与之一一对应。

当在前面板创建或删除面板对象时,可以自动创建或删除相应的对象端子。

控制对象对应的端子在框图中是用粗框框住的。

它们只能在VI程序框图中作为数据流源点。

显示对象对应的端子在框图中是用细框框住的。

图框是Labview实现程序结构控制命令的图形表示。

如循环控制、条件分支控制和顺序控制等,编程人员可以使用它们控制VI程序的执行方式。

代码接口节点(CIN)是框图程序与用户提供的C语言文本程序的接口。

连线是端口间的数据通道。

它们类似于普通程序中的变量。

数据是单向流动的,从源端口向一个或多个目的端口流动。

不同的线型代表不同的数据类型。

在彩显上,每种数据类型还以不同的颜色予以强调。

当需要连接两个端子时,在第一个端子上点击连线工具(从工具模板栏调用),然后移动到另一个端子,再点击第二个端子。

端子的先后次序不影响数据流动的方向。

当把连线工具放在端子上时,该端子区域将会闪烁,表示连线将会接通该端子。

当把连线工具从一个端口接到另一个端口时,不需要按住鼠标键。

当需要连线转弯时,点击一次鼠标键,即可以正交垂直方向地弯曲连线,按空格键可以改变转角的方

4.2.2虚拟信号发生器的设计思想

虚拟仪器通过底层设备驱动软件与真实的仪器系统进行通讯,并以虚拟仪器面板的形式在计算机屏幕上显示与真实仪器面板操作元素相对应的各种控键.虚拟信号发生器可产生正弦波、方波和三角波等信号,根据需要,可调节其中面板上的控键,改变信号的频率、幅度与相位,并可以进行数据存储,所有信号发生的结果都可以通过软件设计的虚拟面板显示..

4.3虚拟信号发生器的软件设计

 4.3.1前面板的设计

根据传统信号发生器面板控键的功能,利用Labview中的控制模板,分别在设计面板上放入模拟实际信号发生器控键的数据输入控键、显示器、数据输出控件、开关、选择器.显示器用于显示输出的信号波形,数据输入控键用于输出信号的信号频率、采样频率、采样数、振幅和相位,数据输出控键则用于选择信号类型.

打开Labview前面板编辑窗口,点击鼠标右键,显示控制模板,选择Graph>>WaveformGraph,作为信号发生器的显示器.在显示器模板上点击鼠标右键,对其进行属性设置,如根据被显示波形的频率与幅度值的变化,利用工具模板中的文字工具,对显示器横(时间)、纵(幅度)坐标的刻度重新设置.用Graph控键设计的显示器是完全同步的,波形稳定.

4.3.2 参数设置控件

(1)在前面板的设计窗口中,打开控制模块执行Allcontrolls>>Numeric>>Knob操作,得到幅值等控制旋钮.

(2)将鼠标移至旋钮单击右键选择属性(Proper2ties)选项,在随后弹出的对话框中的外观(Appear2ance)选项的标签中将这些旋钮分别命名为“频率调节”、“幅度调节”和“相位调节”等.

(3)最后定义精度.根据频率和幅度的数值范围,我们将其精度定义为双精度浮点型(DBL).具体操作仍然是在属性(Properties)选项的数据范围(Data

range)选项中的Representation内完成.

4.3.3输出波形选择按钮

用一个Case结构来控制波形的产生.可以选择输出为正弦信号或是方波信号、三角波等.具体操作为:

在前面板的设计窗口中,打开控制模块,执行Almontroll→ring&Enum→Textring,修改名称为waveselect(波形选择).然后右键点击properties选择EditItems项,在表格中添加和编辑sinewave、ttriangle、squarewave等,并设置其先后顺序.

4.4.虚拟函数信号发生器的硬件构成

本虚拟函数信号发生器的输入输出的硬件部分为一数据采集卡和具有一定配置要求的PC机,数据的输入输出靠对数据采集卡输出输入口的定义来实现。

本设计采用的PCI-1200数据采集卡是一块性价比较好的产品,具备数/模转换的功能,能将产生的数字信号转换成模拟信号且数模转换精度高,而且还具备滤波功能,从而使输出波形光滑。

4.4.1数字波形产生模块

波形产生模块是虚拟函数信号发生器软件的核心。

利用该模块可实现正弦波、方波、锯齿波、三角波等波形。

正弦波的产生原理是通过调用sin(x)函数来实现。

在本次设计,设计每一正弦波周期由1000点组成,利用类似C语言中的For循环为x赋值,这样执行一次For循环,便可以产生生成一个周期正弦波所需的数据,然后利用While循环,使程序反复执行,就可以连续输出正弦波.方波、锯齿波、三角波的产生原理与正弦波产生原理相近,都是通过数学运算来实现代表波形的数字序列。

与模拟信号相比,利用软件的方法产生的波形数字序列虽然存在着一定的误差,但只要一个周期内选的点数足够的多,就可以使误差降到最低,对结果的影响最小。

利用软件产生波形的一个最大的优点是使仪器的成本大大降低,而且使仪器小型化,智能化。

4.4.2频率单位变化控制模块

当输出频率动态范围较大时,用单个旋转按钮控制时,由于旋转一个很小的角度就会产生较大的频率变动,给频率的准确设置带来了较大困难,通过使用一个旋钮和频率倍乘相结合,可大大提高频率的输出控制精度。

为了提高频率的输出控制精度,在本次的设计当中,通过使用频率单位变化控制模块,使输出控制精度可达到0.001Hz。

5.信号发生的具体实现

在前面已经对发生器的设计作了介绍,首先做的是正弦波发生器,依次是方波,锯齿波,三角波发生器。

5.1虚拟正弦波发生器的设计

5.1.1设计步骤

1.正弦波发生器前面板的设计

图5.1.1虚拟正弦波发生器前面板的设计

2、运行结果如下图:

图5.1.2正弦波运行结果图

5.2虚拟方波发生器的设计

虚拟方波发生器的设计和正弦波发生器的设计大体相同

5.2.1设计步骤

运行结果如下图:

图5.2.1方波运行结果图

5.3虚拟三角波发生器的设计

虚拟三角波发生器的设计和正弦波.方波.锯齿波发生器的设计一样.

5.3.1设计步骤

运行结果:

图5.3.1三角波运行结果图

结语:

Labview作为一个图形化编程软件,是开发测试系统的一种功能强大、方便快捷的编程工具。

其良好的相通性、开放性、专用性,使测试系统的开发周期短、成本低、质量高。

基于Labview的虚拟函数信号发生器具有机交互性好、易于操作等特点,能够广泛的应用与于科研、生产等领域.

本论文是在老师耐心指导下完成的,从课题的论证,设计到最后的论文定稿,都得到了导师细心而富有启发性的指点,导师精深的学术造诣、严谨的治学态度、灵活开放的思路、平等待人的作风都深深地教育了我,在此谨表示我所能表达的最深切的感谢!

这次实验也是我学到了很多关于labview的设计、仿真的知识。

让我真正的理解了该软件的实用性、灵活性。

这次的设计实验中,遇到了很多困难,比如labview软件的某些特殊功能、其实现波形仿真的设计程序,很多知识都是以前所不掌握的。

鉴于一般终端服务不提供信号传输的功能,所以需要考虑其他的办法。

我们可以使用FTP服务器。

但是FTP服务器通常被认为是不安全的,它也可以通过Zebedee增强其安全性,方法是直接在终端服务上传输虚拟信号。

首先需要做一个通信模块,把虚拟信号发生器产生的虚拟正弦波,方波,三角波,锯齿波等信号通过通信模块传输到另一终端计算机上,使基于labview设计出的信号发生器产生的信号可以在两个或更多的远程终端计算机上进行观察,分析及研究。

但是经过实验,让我自己能够通过向老师同学寻求帮助、查阅资料等方式都解决了,成功地完成了本次信号发生器的设计。

在软件中调试出了模拟的正弦波、方波及三角波。

是我的理论知识能够和时间的工作联系起来,加深了对本门可能的理解和掌握。

再次感谢指导我完成本次实验的老师和帮助过我的同学。

 

参考文献:

[1]杨乐平吕英军虚拟数字示波器的设计与实现电子技术应用2000年第7期

[2]戎舟基于Labview的虚拟示波器及远程测控微计算机信息2004年第20卷第5期66-67

[3]杨乐平李海涛杨磊Labview程序设计与应用(第2版)北京电子工业出版社2006

[4]蔡建安陈洁华基于Labview的工程软件应用重庆大学出版社2006

[5]马双宝基于Labview7.0虚拟信号发生器的实现微计算机信息2005年01期89-90.

[6]美国国家仪器公司《Labview7ExpressMeasurementsManual》

[7][美]GaryW.jhonson,RichardJennings著《Labview图形编程》北京大学出版社

[8]杨乐平,李海涛等著《虚拟仪器技术概论》电子工业出版社

[9]刘君华,贾惠芹,丁晖阎晓艳编著《虚拟仪器图形化编程语言LABVIEW教程》西安电子科技大学出版社

[10]雷振山 《Labview7Express实用技术教程》中国铁道出版社

[11]邓焱 王磊 等编著 Labview 7.1测试技术与仪器应用机械工业出版社 2004年8月

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 外语学习 > 其它语言学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1