论文基于LabVIEW计算器的设计5030.pdf

上传人:得** 文档编号:79376025 上传时间:2023-03-21 格式:PDF 页数:22 大小:889.88KB
返回 下载 相关 举报
论文基于LabVIEW计算器的设计5030.pdf_第1页
第1页 / 共22页
论文基于LabVIEW计算器的设计5030.pdf_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《论文基于LabVIEW计算器的设计5030.pdf》由会员分享,可在线阅读,更多相关《论文基于LabVIEW计算器的设计5030.pdf(22页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、Xx 理工学院毕业设计(论文)I 基于 LabVIEW 计算器的设计 摘 要 本次毕业设计是基于 LabVIEW 所设计的计算器,目的是为了实现两个数之间的加、减、乘、除四则运算及开方、求倒、取负运算,达到简易计算器的功能。编程的思想是完成一种运算的完整过程是:输入第一个数,存储并显示 输入要进行运算的类型并存储 输入第二个数,存储并显示 按“=”或则按其它运算符号“+、*、/”进行连续的运算时显示运算结果。关键词:LabVIEW,计算器,四则运算,函数功能,Xx 理工学院毕业设计(论文)II Based on the Design of LabVIEW Calculator ABSTRACT

2、 This experiment is to realize the sum of two Numbers,subtract,multiply,divide and root,then pour,simple operation,to bear the calculator.Programming is a complete thoughts of the operation process is complete,the number,storage and input to the input operations and storage input number of the secon

3、d type,storage and press=or by other operations symbol+,-,*,/continuous operation result shows.KEY WORDS:LabVIEW,Calculator,Arithmetic,Function,Xx 理工学院毕业设计(论文)III 目 录 前 言.1 第 1 章 LabVIEW.2 1.1 LabVIEW 简介.2 1.2 主要特点.3 1.3 实际应用.3 第 2 章 程序流程图.5 第 3 章 实现过程.6 3.1 键入感应.6 3.2 数字的读入.7 3.3 多零问题.7 3.4 小数点问题.8

4、 3.5 非小数前面出现 0 开头的问题.9 3.6 操作类型.10 3.7 常用键.11 3.7.1 等号键.11 3.7.2 清零键.11 3.7.3 退出键.11 3.7.4 开方键.12 3.7.5 倒数键.12 3.7.6 反号键.12 3.7.7 backspace 键.12 3.8 去掉小数末尾为 0 的功能.13 3.9 美化面板.13 第 4 章寄存器及布尔变量的作用解释.15 结 论.16 谢 辞.17 参考文献.18 Xx 理工学院毕业设计(论文)1 前 言 创建 3 个字符串显示控件 num1,num2,num3,其中:第一个输入数据存储在 num1 中,第二个输入数据

5、存入 num2 中,将其赋给 num3,并使num2 为空,以便输入的数据存入 num2,所有的运算是在 num1 和 num3间进行,运算结果都赋给 result,同时赋给 num1,用于下一次的运算。创建 4 个布尔开关按钮 change,change1,change2,change3,其中:Change 的真假用来判断是第一个数据还是第二个数据,change1 的功能是在输入=,运算完后,不需要初始化即可进行下一次运算,change2 用来去掉数据小数末尾的 0,change3 用来保证 backspace 键仅对输入的数据有效,对运算结果无效。创建 2 个数值显示控件 type1,ty

6、pe2,并分别在其后面板的属性数据类型表示法中选择 U8 其中:type1 用来存储运算符号,type2 用来保证连续“+、*、/”的正确性,所有的运算结果都赋给 result,result经过去零处理后得到 result1,将数据显示在前面板上。此计算器可以实现基本的加减乘除以及开方、取倒、取反功能,可以进行数据的连续运算以及简单的报错、纠错功能,在此计算器模版上,可以继续添加条件分支,实现更多功能的运算,但是不支持第二个数位为开方、取反、取倒的功能。Xx 理工学院毕业设计(论文)2 第 1 章 LabVIEW 1.1 LabVIEW 简介 LabVIEW 是一种程序开发环境,由美国国家仪器

7、(NI)公司研制开发的,类似于 C 和 BASIC 开发环境,但是 LabVIEW 与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW 使用的是图形化编辑语言 G 编写程序,产生的程序是框图的形式。与 C 和 BASIC 一样,LabVIEW 也是通用的编程系统,有一个完成任何编程任务的庞大函数库。LabVIEW 的函数库包括数据采集、GPIB、串口控制、数据分析、数据显示及数据存储,等等。LabVIEW 也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子 VI)的结果、单步执行等等,便于程序的调试。虚拟仪器(virtual inst

8、rumention)是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地说这种结合有两种方式,一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指这种方式。下面的框图反映了常见的虚拟仪器方案。Xx 理工学院毕业设计(论文)3 1.2 主要特点 虚拟仪器的主要特点有:(1)尽可能采用了通用的硬件,各种仪器的差异主要是软件。(2)可充分发挥计算机的能力,有强大的数据

9、处理功能,可以创造出功能更强的仪器。(3)用户可以根据自己的需要定义和制造各种仪器。虚拟仪器实际上是一个按照仪器需求组织的数据采集系统。虚拟仪器的研究中涉及的基础理论主要有计算机数据采集和数字信号处理。目前在这一领域内,使用较为广泛的计算机语言是美国 NI 公司的 LabVIEW。虚拟仪器的起源可以追溯到 20 世纪 70 年代,那时计算机测控系统在国防、航天等领域已经有了相当的发展。PC 机出现以后,仪器级的计算机化成为可能,甚至在 Microsoft 公司的 Windows 诞生之前,NI 公司已经在Macintosh 计算机上推出了 LabVIEW2.0 以前的版本。对虚拟仪器和LabV

10、IEW 长期、系统、有效的研究开发使得该公司成为业界公认的权威。目前 LabVIEW 的最新版本为 LabVIEW2009,LabVIEW 2009 为多线程功能添加了更多特性,这种特性在 1998 年的版本 5 中被初次引入。使用LabVIEW 软件,用户可以借助于它提供的软件环境,该环境由于其数据流编程特性、LabVIEW Real-Time 工具对嵌入式平台开发的多核支持,以及自上而下的为多核而设计的软件层次,是进行并行编程的首选。普通的 PC 有一些不可避免的弱点。用它构建的虚拟仪器或计算机测试系统性能不可能太高。目前作为计算机化仪器的一个重要发展方向是制定了 VXI 标准,这是一种插

11、卡式的仪器。每一种仪器是一个插卡,为了保证仪器的性能,又采用了较多的硬件,但这些卡式仪器本身都没有面板,其面板仍然用虚拟的方式在计算机屏幕上出现。这些卡插入标准的 VXI 机箱,再与计算机相连,就组成了一个测试系统。VXI 仪器价格昂贵,目前又推出了一种较为便宜的 PXI 标准仪器。1.3 实际应用 Xx 理工学院毕业设计(论文)4 虚拟仪器研究的另一个问题是各种标准仪器的互连及与计算机的连接。目前使用较多的是 IEEE 488 或 GPIB 协议。未来的仪器也应当是网络化的。LabVIEW(Laboratory Virtual instrument Engineering Workbench

12、)是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW 集成了与满足 GPIB、VXI、RS-232 和 RS-485 协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用 TCP/IP、ActiveX 等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。图形化的程序语言,又称为“”语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW

13、 是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。利用 LabVIEW,可产生独立运行的可执行文件,它是一个真正的 32位编译器。像许多重要的软件一样,LabVIEW 提供了 Windows、UNIX、Linux、Macintosh 的多种版本。Xx 理工学院毕业设计(论文)5 第 2 章 程序流程图 根据实验作出程序流程图如下:图 1 程序流程图 开 始 输入第一个数 输入运算类型 输入第二个数 显 示 结果 结束 按“EXIT“按“C“按“+、*、/”按“

14、=“显示结果 按“C“洛阳理工学院毕业设计(论文)6 第 3 章 实现过程 3.1 键入感应 首先建立一个簇,然后在簇中再建立布尔量,复制 20 个以满足键的需求。包括 0-9 十个数字键,一个小数点键,一个等号键,四则运算键,一个开方键,一个倒数键,一个反号键,一个清零键及一个退出键。然后通过将簇中元素按产生的顺序组成一个一维数组,这样就实现了每个键与数字(0-20)之间的对应。每次按下一个键时,通过查找出对应的键并把结果(对应的数字)连接到一个 case 结构,然后执行对应 case 结构中的程序,至此就完成了对一个键的感应过程(图2):图 2 键的感应 洛阳理工学院毕业设计(论文)7 3

15、.2 数字的读入 图 3 数字读入程序图 具体赋给哪个操作数通过布尔量 change 的状态决定,该布尔量状态在输入运算类型键后改变。这里要注意的是:在第二个数键入时,要把结果赋给 num3,最终是在 num1 和 num3 之间进行运算运算,这样做是为了在一种运算结束后能实现连续的运算。3.3 多零问题 进行运算的数不能以多个零开头。虽然不影响运算结果,但在形式上洛阳理工学院毕业设计(论文)8 是错误的。解决这个问题的方法是如图 4:图 4 多零问题解决程序图 3.4 小数点问题 一个数中不可能出现两个或两个以上的小数点。解决方法如图 5:洛阳理工学院毕业设计(论文)9 图 5 小数点问题程

16、序图 3.5 非小数前面出现 0 开头的问题 进行运算的非小数不能以零开头。虽然不影响运算结果,但在形式上是错误的。解决这个问题的思路如图 6,具体解决程序在数据输入时(如图 6):洛阳理工学院毕业设计(论文)10 图 6 “0”开头的问题框图 3.6 操作类型 当按下运算类型键时,存储对应的数字序号到 type,以按下“=”号时进行运算类型的确定。操作类型默认为“空”。在此操作类型 case 中同时执行对 change 状态转换。在其中再用一个 case 结构用于实现“+、-、*、/”的连续运算(如图 7):输入第二位数据把第一位数据与“0”比较=0 将第一位数据赋为空并显示第二位数 顺序显

17、示数据 洛阳理工学院毕业设计(论文)11 图 7 操作类型程序图 3.7 常用键 3.7.1 等号键 在 11 键的 case 中实现加、减、乘、除、开方及倒数运算。连续按此键可以实现第一操作数对第二操作数的连续运算。并且对 type1、type2、change、change1、num2 分别清 0、清 0、F、T,赋空。3.7.2 清零键 在 16 键的 case 中对 num1、num2、num3 赋空字符,显示框中显示 0,change、change1 复位 F 状态,type1、type2 赋 0。3.7.3 退出键 在 17 键的 case 中首先对显示框赋空字符,然后终止程序。即以

18、不显洛阳理工学院毕业设计(论文)12 示任何字符退出程序。3.7.4 开方键 在 18 键的 case 中对当前操作数进行开方运算即可。3.7.5 倒数键 在 19 键的 case 中对当前操作数进行倒数运算即可。3.7.6 反号键 在 20 序号的 case 中对当前操作的进行乘以负 1 的运算实现反号。3.7.7 backspace 键 在 21 序号的 case 中对当前操作的进行操作以清除输入的错误键(如图 8)。计算字符串的长度,把长度减 1 位后显示。图 8 backspace 程序图 洛阳理工学院毕业设计(论文)13 3.8 去掉小数末尾为 0 的功能 由于经过前面的运算,数据都

19、保持 6 位小数,不可避免的会出现小数末尾为 0 的情况。利用 while 循环,检测 result 最后一位是否为 0,若为0,则减去末位后赋值给本身;若不为 0,则退出循环显示数据,从而实现去 0 的功能(图 9):图 9 去掉小数末尾为 0 程序图 3.9 美化面板 对前面板进行美化,把 num1、num2、num3、type1、type2、result、洛阳理工学院毕业设计(论文)14 change 隐藏。计算器前面板如图 10:图 10 前面板 图 11 windows 系统简易计算器 洛阳理工学院毕业设计(论文)15 第 4 章寄存器及布尔变量的作用解释 num1 用来存储第一个输

20、入数据。第二个输入数据存入 num2 中,然后将其赋给 num3,并使 num2 为空,以便输入的数据存入 num2,所有的运算是在 num1 和 num3 间进行,运算结果都赋给 num1 和 result。Change 用来判断是第一个数据还是第二个数据。change1 的功能是在输入=,运算完后,不需要初始化即可进行下一次运算。change2 用来去掉数据小数末尾的 0。change3 用来保证 backspace 键仅对输入的数据有效,对运算结果无效。type1 用来存储运算符号,type2 用来保证连续“+、-、*、/”的正确性。所有的运算结果都赋给 result。result1 用

21、来将数据显示在前面板上。后面板及所有的寄存器及布尔变量的初值如图 12:图 12 后面板 洛阳理工学院毕业设计(论文)16 结 论 经过演示,本计算器可实现界面上所有按键的功能,可实现连续运算、报错提示(除数为 0、对负数开方)、纠错(非小数前面为 0、多个小数点、多零、清除前一位错误输入)等功能。具体操作和功能与 WINDOWS 系统的简易计算器(图 11)一样。但是由于该计算器仅使用了一些比较简单的结构,所以程序框图不够简化,比较繁琐,这是需要改进的地方,但是这不影响其正常使用。总之,由于 LabVIEW 能够为用户提供简明、直观、易用的图形编程方式,能够将繁琐复杂的语言编程简化成为以菜单

22、提示方式选择功能,并且用线条将各种功能连接起来,十分省时简便,深受用户青睐。与传统的编程语言比较,LabVIEW 图形编程方式能够节省 85以上的程序开发时间,其运行速度却几乎不受影响,体现出了极高的效率。使用虚拟仪器产品,用户可以根据实际生产需要重新构筑新的仪器系统。例如,用户可以将原有的带有 RS232 接口的仪器、VXI 总线仪器以及 GPIB 仪器通过计算机,联接在一起,组成各种各样新的仪器系统,由计算机进行统一管理和操作。可以预见,由于 LabVIEW 这些其他语言无法比拟的优势,已经成为该领域的一朵奇葩!最终将引发传统的仪器产业一场新的革命。洛阳理工学院毕业设计论文 17 谢 辞

23、这次毕业设计得到了老师和同学的帮助,另外,感谢校方给予我们这样一次机会,能够独立地完成一个课题,并在这个过程当中,给予我们一些机会,使我们在即将离校的最后一段时间里,能够更多学习一些实践应用知识,增强了我们实践操作和动手应用能力,提高了独立思考的能力。再一次对我的母校表示感谢。感谢在整个毕业设计期间给予过我帮助的伙伴们,在大学生活即将结束的最后的日子里,我把一个庞大的,从来没有上手的课题,圆满地完成了。正是因为有了你们的帮助,才让我不仅学到了本次课题所涉及的新知识,更让我感觉到了知识以外的东西。最后,感谢所有在这次毕业设计中给予过我帮助的人。再一次真诚地表示感谢,你们!洛阳理工学院毕业设计论文

24、 18 参考文献 1 叶齐鑫 侯国屏 赵伟.虚拟仪器环境下的频率特性测试方法J.电测与仪表,2005(6):10-13.2 高聪杰 李松岩.基于 LabVIEW 的信号输出与数据采集系统J.数采与监测,2008,(24):135-136.3 马银平 宣亮亮 彭如 基于 LabVIEW 的数据采集系统分析与设计 电子元器件应用2009 年第 11 卷第 10 期 4 夏俊芳 周勇 张平华.基于虚拟仪器技术的排种器漏播检测技术J.华中农业大学学报,2008,27(4):540-544.5 刘雁征 滕光辉.虚拟仪器技术在设施农业中的应用现状及趋势J.华中农业大学学报,2004(增刊 35):81-8

25、6.6 陈 秀 清.关 于 虚 拟 实 验 室 的 建 设 J.福 建 广 播 电 视 大 学 学报,2003(1):40-43.7 杨乐平 李海涛.北京 LabVIEW 高级程序设计M.北京:清华大学出版社,2003.1-350.8 龙华伟 顾永刚.LabVIEW8.2.1 与 DAQ 数据采集M.北京:清华大学出版社,2008.9 陈锡辉.Labview8.20 程序设计从入门到精通M.北京:清华大学出版社,2007.10 美Robert H Bishop 乔瑞萍 译.LabVIEW 7 实用教程M.北京:电子工业出版社,2005.11 侯国屏 王坤 叶齐鑫.LabVIEW 7.1 编程与虚拟仪器设计M.北京:清华大学出版社,2005.12 张桐 陈国顺 王正林.精通 LabVIEW 程序设计M.北京:电子工业出版社,2008.洛阳理工学院毕业设计论文 19

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com