基于Labview电压表的仿真_第1页
基于Labview电压表的仿真_第2页
基于Labview电压表的仿真_第3页
基于Labview电压表的仿真_第4页
基于Labview电压表的仿真_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本科课程设计报告题目 基于labview的电压表的仿真 课程名称:电子测量技术基础指导教师:李建明班级学生姓名(学号)同组学生姓名同组学生姓名09电本二*完成时间:2012年6月2日星期一物理与电子信息学院电子信息系二一二年目录第一章 labview简介11、labview总体概述12、虚拟仪器简介13、使用和自定义vi和子vi第二章 设计任务2.1设计思路2.2前面板的设计2.3流程图的设计第三章 数据分析3.1生成信号设置3.2 显示测量数据 3.3误差分析3.4性能分析第四章 小结附录:参考文献第一章 labview简介1、labview总体概述labview(laboratory vi

2、rtual instrument engineering workbench)是一种用图标代替文本行创建应用程序的图形化编程语言。传统文本编程语言根据语句和指令的先后顺序决定程序执行顺序,而labview则采用数据流编程方式,程序框图中节点之间的数据流向决定了vi及函数的执行顺序。vi指虚拟仪器,是labview的程序模块。labview提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。用户界面在labview中被称为前面板。前面板创建完毕后,便可使用图形化的函数添加源代码来控制前面板上的对象。在程序框图上添加图形化代码,即g代码或程序框图代码。因此又被称作程序框

3、图代码。 如需开发特定程序,可购买各类附加软件工具包。所有工具包都可与labview无缝集成。 (windows) 如需查看相关主题,单击本窗口上方工具栏左侧的定位按钮。labview帮助的目录栏中将高亮显示该主题,以便查看相关内容。2、虚拟仪器简介labview程序又称虚拟仪器,即vi,其外观和操作均模仿现实仪器,如示波器和万用表。每个vi都使用函数从用户界面或其它渠道获取信息输入,然后将信息显示或传输至其它文件或计算机。vi由以下三部分构成:、前面板如下所示的前面板是vi的用户界面。前面板由输入控件和显示控件组成。这些控件是vi的输入输出端口。输入控件是指旋钮、按钮、转盘等输入装置。显示控

4、件是指图表、指示灯等显示装置。输入控件模拟仪器的输入装置,为vi的程序框图提供数据。显示控件模拟仪器的输出装置,用以显示程序框图获取或生成的数据。、程序框图前面板创建完毕后,便可使用图形化的函数添加源代码来控制前面板上的对象。程序框图是图形化源代码的集合,图形化源代码又称g代码或程序框图代码。前面板上的对象在程序框图中显示为接线端。下列vi中含有接线端、函数和连线等程序框图对象。 接线端接线端用以表示输入控件或显示控件的数据类型。在程序框图中可将前面板的输入控件或显示控件显示为图标或数据类型接线端。默认状态下,前面板对象显示为图标接线端。如:旋钮接线端代表前面板上的一个旋钮,如下所示。 接线端

5、底部dbl代表的是双精度浮点数数据类型。如下所示的dbl接线端代表一个双精度浮点数输入控件。 接线端是在前面板和程序框图之间交换信息的输入输出端口。在前面板输入控件中输入的数据(如上述前面板中的a和b)通过输入控件接线端进入程序框图。然后,数据进入加和减函数。加减运算结束后,输出新的数据值。数据将传输至显示控件接线端,更新前面板显示控件中的数据(如上述前面板中的a+b和a-b)。 节点节点是程序框图上的对象,具有输入输出端,在vi运行时进行运算。节点相当于文本编程语言中的语句、运算符、函数和子程序。上述程序框图中的加、减连线程序框图中对象的数据传输通过连线实现。在上述程序框图中,输入控件和显示

6、控件接线端通过连线实现加减运算。每根连线都只有一个数据源,但可以与多个读取该数据的vi和函数连接。不同数据类型的连线有不同的颜色、粗细和样式。断开的连线显示为黑色的虚线,中间有个红色的x。出现断线的原因有很多,如试图连接数据类型不兼容的两个对象时就会产生断线。结构结构是节点的一种,是文本编程语言中的循环和条件语句的图形化表示。使用程序框图中的结构可对代码块进行重复操作,有条件执行或按特定顺序执行代码。、图标和连线板创建vi的前面板和程序框图后,请创建图标和连线板,以便将该vi作为子vi调用。图标和连线板相当于文本编程语言中的函数原型。每个vi都显示为一个图标,位于前面板和程序框图窗口的右上角,

7、如下图所示。图标是vi的图形化表示,可包含文字、图形或图文组合。如果将一个vi当作子vi使用,程序框图上将显示代表该子vi的图标,如将vi添加至选板,vi图标也将出现在函数选板上。双击前面板或程序框图窗口的图标,可进行自定义或编辑。注:推荐用户自己定制vi图标,但这个操作不是必须的。使用默认的labview图标不会影响功能。如需使用子vi,还需要创建连线板,连线板用于显示vi中所有输入控件和显示控件接线端,类似于文本编程语言中调用函数时使用的参数列表。连线板标明了可与该vi连接的输入和输出端,以便将该vi作为子vi调用。连线板在其输入端接收数据,然后通过前面板的输入控件传输至程序框图的代码中,

8、并从前面板的显示控件中接收运算结果传输至其输出端。 注:一个vi的接线端应尽量控制在16个以内。接线端太多将影响vi的可读性和可用性。3、使用和自定义vi和子vi创建一个vi,设定图标和连线板,该vi即可作为子vi调用。保存vi为单独的文件,也可将多个vi集合保存在llb中。 也可自定义vi的外观和运行方式。可为所创建的每个vi创建自定义菜单,也可以设定显示或隐藏菜单栏。第二章 设计任务21、设计思路 虚拟电压表是基于计算机和标准总线技术的模块化系统,通常它由控制模块、仪器模块和软件组成,由软件编程来实现仪器的功能。在虚拟仪器中,计算机显示器是惟一的交互界面,物理的开关、按键、旋钮以及数码管等

9、显示器件均由与实物外观相似的图形控件来代替,操作人员只要通过鼠标或键盘操作虚拟仪器面板上的旋钮、开关、按键等设置各种参数,就能根据自己的需要定义仪器的功能。在虚拟电压表的设计中,考虑到仪器主要用于教学和实验,使用对象是学生,因此将引言中提到的三种检波方式的仪器合为一体,既简化了面板操作,又便于直接对比。该电压表主要用于电路分析和模拟电子技术等实验课的教学和测量仪器,能够使学习者了解和掌握电压的测量和电压表对各种波形的不同响应。因此,虚拟电压表应具备电源开关控制、波形选择,以及显示峰值、有效值和平均值三种结果,且输入信号的大小可调节等功能。虚拟电压表由硬件设备与接口、设备驱动软件和虚拟仪器面板组

10、成。其中,硬件设备与接口包括仪器接口设备和计算机,设备驱动软件是直接控制各种硬件接口的驱动程序,虚拟仪器通过底层设备驱动软件与真实的仪器系统进行通信,并以虚拟仪器面板的形式在计算机屏幕上显示与真实仪器面板操作相对应的各种控件。在此,用软件虚拟了一个信号发生器。该信号发生器可产生正弦波、方波和三角波,还可以输入公式,产生任意波形。根据需要,可调节面板上的控件来改变信号的频率和幅度等可调参数,然后检测电压表的运行情况。因此,在labview图形语言环境下设计的虚拟电压表主要分为两个部分:第一部分是虚拟电压表前面板的设计;第二部分是虚拟电压表流程图的设汁。2.2 前面板的设计前面板模拟真实电压表的前

11、面板,用于设置输入数值和观察输出量。由于虚拟面板直接面向用户,是虚拟电压表控制软件的核心。设计这部分时,主要考虑界面美观、操作简洁,用户能通过面板上的各种按钮、开关等控件来控制虚拟电压表进行测量工作。根据传统电压表面板控件的功能,利用 labview中的控制模板,分别在设计面板上放入模拟实际电压表控件的数据输入控件、显示器、数据输出控件、开关、选择器,显示器用于显示输入的信号波形;数据输入控件主要用于输入被测信号的信号频率、采样频率、采样数、振幅和相位;数据输出控件则用于输出被测信号经过处理后得到的峰值、平均值和有效值及标准频率的有效显示。打开labview前面板的编辑窗口,点击鼠标右键,显示

12、控制模板,选择图形一波形图,作为电压表的显示器。在显示器模板上点击鼠标右键,对其进行属性设置,例如根据示波器的频率与幅度值的变化,利用工具模板中的文字工具,对示波器横(时间)、纵(幅度)坐标的刻度进行重新设置。用graph控件设计的示波器是完全同步的,且波形稳定。选择控件数值数值输入控件/数值显示控件,作为电压表参数设置中输入和测试结果的数据显示。选择控件下拉列表与枚举菜单下拉列表,放置对输入波形选择开关,在下拉列表中单击鼠标右键,选择“编辑项”对其进行编辑。“电源开关”控件选择经典经典布尔方形按钮,当按下开关时,虚拟电压表开始运行,同时电源开关的指示灯亮。同样,当弹起开关时,虚拟电压表停止运

13、行。前面板如图1所示。图1 前面板2.3 流程图的设计每一个前面板都对应一个流程图程序。前面板的设计完成后,可对流程图程序进行设计。打开labview设计环境中的窗口显示程序框图,进入流程图编辑窗口,与前面板各控件对应的端口图标自动出现在流程图编辑窗口中。利用labview中的功能模块,根据虚拟示波器前面板各控件的作用和联系,虚拟示波器运作后数据流的控制,分别在流程图设计面板中放置各个功能模块,合理摆放后,在用连线工具依次连接,以实现虚拟示波器的功能。数据流的编辑主要是对端口图标的连接。用连线工具进行连线时,如果端口闪烁,说明相连的数据类型匹配,否则不能连接。(1) 虚拟信号发生器的实现由于虚

14、拟电压表主要用于演示,所以为了方便,可直接利用labview软件产生仿真信号。在该设计中,设置了正弦波、方波和三角波以及由公式确定的任意波形。在程序设计框图中,使用一个case(选择)语句对四种波形进行选择。case语句中,每一个数字(0,1,2,3,4)都代表一种波形,与前面板控件中5种状态相对应。至于case语句的制作,只需将4个图标中的一个,例如正弦波发生程序,用case框起来,然后在上面的空白处写上相应的数字,例如 1;然后点击箭头,可以设置第二个图标,如果要添加一个case的话,可以点击鼠标右键,直接添加,编辑相应的基本信号发生器vi中相应的节点即可。在添加公式波时,要把基本信号发生

15、器vi换成公式波形vi,0代表默认状态,表示无任何波形输入。本文给出了case结构的一个分支,公式波形的流程图如图2 所示。该子可使用指定时间函数的公式字符串生成一个函数波形,它要求公式的自变量必须是t,它所支持的运算符和常用的函数详见参考文献。图2 公式波形的流程图 另外,在模拟状态下,信号频率以赫兹或者每秒周期数为单位。但是在数字系统中,通常使用数字频率,它是信号频率与采样频率的比值,被称为标准频率。所以,在框图程序中,应当在信号频率与采样频率之间加载一个除法器。在波形发生程序按照规定的参数产生波形后,如果将波形直接输入波形显示控件,那将是错误的。因为波形显示控件,并不像数据显示控件那样只

16、需要一个或一组数据,因此波形能否按规定显示出来,取决于输入的几组不同且具有决定性的数据,例如周期、相位等。在该设计中,将z轴起始坐标、周期、波形捆绑成一个数组,同时输入到波形显示控件中。(2) 数据处理部分数据处理部分的作用,就是将产生出的信号通过不同形式的检波、计算,得出规定的不同的结果。在该设计中同时显示交流有效值、峰值和平均值。对于一个纯粹的交流电压,正半周期信号与负半周期信号对称,u的平均值等于零,所以一般不直接测量平均值。在设计时,按函数数值绝对值取交流电压的绝对值,然后求平均值,取全波平均值。交流电压中的最大值,即为峰值。可以通过比较数据求出最大值,这需要使用波形最大、最小子虚拟仪

17、器来处理框图。有效值显示:在函数信号处理波形测量中选择基本平均直流均方根。其框图符号如图3所示。图3 有效值和平均值的子程序框图图3中,dcvalue为测量的直流分量;rms为value测量有效值;reset用于重启过去记录的时间信号、平均测量的参数;averagingtype是测量中的平均类型,在单个模块vi中,可依据输入记录长度自动设置平均时间;window是在dc/rms计算之前,用于记录时间的窗;erroein是在该vi运行之前描述错误环境,默认值为noerror。如果错误已经发生,该vi在errorout端返回错误代码,子vi在无错误时才正常运行。(3) 开关部分用一个while条件

18、语句设计整个框图程序,当模拟电压开关为“1”时,虚拟电压表工作,条件语句中的程序开始运行;当模拟开关为“0”即关时,条件语句中的程序停止运行,虚拟电压表不工作。设计好的流程图如图4所示。图4 虚拟电压表流程图第三章 数据分析3.1生成信号设置3.2 显示测量数据3.3误差分析系统分析 虚拟直流电压表针对不同的直流输入,其量程的大小影响测试的精度,在测量电压时,应使被测电压在量程的23以上。一般量程应选定在被测电压的3倍值以上。当输入直流测试信号在03v时,测试的量程应选在10v,其测试的误差基本为o0012v。交流测试时,利用信号发生器发出测试信号,将虚拟电压表和万用表与示波器的测试值进行比较,虚拟电压表测试值如表1所示。在测试中,应注意合理设置采样率,其是减小测量误差的重要途径。由于电压信号的对称性和周期性,他的直流平均为零,有效值等于模拟电压所测的数值。3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论