《基于LabVIEW的电子万年历的设计毕业论文》由会员分享,可在线阅读,更多相关《基于LabVIEW的电子万年历的设计毕业论文(20页珍藏版)》请在金锄头文库上搜索。
1、青岛大学本科生毕业论文(设计)本科毕业论文(设计)题目:基于LabVIEW的电子万年历设计与工程简化学院: 物理学科学学院 专业:微电子学 姓名: 崔晓坤 指导教师: 徐 胜 2015年5月18日基于LabVIEW的电子万年历设计与工程简化The design and engineering simplify of a electronic calendar based on LabVIEW摘 要本文主要综述了LabVIEW编写电子万年历程序的各个过程,以及程序编写与实际工程设计的联系,其中主要介绍了基于LabVIEW的电子万年历程序中24时模块、年月日模块、星期模块和闹钟模块各自的完成原理和
2、相互串接时需进行的各种调整。另外本文中还讨论了以LabVIEW模型为蓝图进行工程设计较之直接进行设计的几项优点。本文还对LabVIEW在实例中体现出的特性与可行的应用场景进行了论述。关键词:LabVIEW 虚拟仪器 仿真 模块 万年历 Abstract This review focuses on the electronic calendar program written in LabVIEW various processes, and procedures for the preparation and the actual engineering design links, whic
3、h introduces the LabVIEW modules electronic calendar program 24 based on the date module, module and alarm module each week of complete theory and various adjustments connected with each other to be carried out. Also we discussed in this article with LabVIEW model as a blueprint for engineering seve
4、ral advantages compared to direct the design. This paper also reflected in the LabVIEW example features and possible scenarios were discussed.Key words:LabVIEW Virtual Instruments Simulation Module Calendar目录前 言11 虚拟仪器技术的概念22 LabVIEW的概念和应用22.1 LabVIEW的基本概念22.2 LabVIEW的应用领域32.3 LabVIEW相较文本语言的优缺点33 基于
5、LabVIEW的电子万年历43.1 电子万年历的模块化分析43.2 电子万年历的模块间综合分析44 基于LabVIEW的电子万年历的编写过程44.1 核心时间模块的编写54.2 七段式数码管子VI的编写64.3 年月日模块的编写及进制转换算法74.4 星期模块的编写及数码管显示矩阵算法94.5 闹钟模块的编写及智能化的加入105 纵观LabVIEW电子万年历105.1 LabVIEW电子万年历编制工作总结105.2 从万年历看向LabVIEW的全方位13谢辞14参考文献15前 言随着电子信息技术的发展和集成芯片的出现,人们身边的各种工具正在以惊人的速度不断地更新换代,手机、电脑就不用多说了,现
6、在就连手表也具备了更繁杂的功能而被冠以“智能手表”的名号。这一切的变化都要归功于集成电路的诞生。通过对集成芯片的编码,也就是单片机技术中常说的“烧录”,来使芯片实现固定的功能,不同语言的烧录能够写出拥有不同功能的芯片。编码语言的神奇可见一斑,而且编码语言本身也存在多样性,有看起来枯燥无味又十分难懂的C语言,也有像本文就要提到的LabVIEW一样的图形化直观易懂的语言。1诸多的语言种类的编写过程其实都是大同小异,都是通过一系列简单功能的叠加嵌套来实现纷繁复杂的功能。2在编写比较简单的程序时,LabVIEW较之C语言有一个十分显著的优点,那就是它极度仿真的程序框图外观,直白明了的编辑过程可以让我们
7、在编辑时就可以按照实际的逻辑进行模块和子VI的铺设,极大地减少了逻辑错误发生的可能性,避免了文字输入错误。但在见繁杂程序编写时,过多的逻辑关系嵌套串接等等难免会产生错误,这也是LabVIEW无法避免的弊病,所以根据需要和个人喜好选择程序语言是首要的。3在编写方面,LabVIEW具有简洁明了的特点,而在实际应用中仿真模拟的应用中,LabVIEW以其便捷直观的特点也深受工程人士的喜爱,在了解硬件工作原理的基础上,4甚至可以用LabVIEW编辑的子VI固定实现某一硬件芯片的功能,并设计引脚合理串接已形成仿真电路。本文就以基于LabVIEW的电子万年历的设计编写为例,讲述LabVIEW编写的整个过程以
8、及注意事项,通过模块化串接的功能实现方式体现其在工程简化上的参考价值。1 虚拟仪器技术的概念虚拟仪器顾名思义就是虚拟的、没有真实物理形态的仪器设备。虚拟仪器技术(Virtual instrument)就是利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试、测量和自动化的应用。5用通俗的话讲,虚拟仪器技术就是用高性能的集成技术芯片辅以编写完成的程序语言来实现相应电路功能的技术。就如同用烧录机给89S51芯片写入程序一样。虚拟仪器的产生是集成电路发展的必然,传统机械结构和非编程电路的不稳定性和功能局限性决定了它们不可能实现复杂的功能,而且同一个设计造就的产品只能完成固定仅有的一个功能,这就意
9、味着你身边要有各种各样的设备以满足日常生活中为数不多的基本需求。6这一点可以举一个路人皆知的例子就是埃尼阿克,庞大的体积和超乎想象的重量,完成的功能却少得可怜。可以看出,虚拟仪器技术才是集成电路的核心,7就好比是灵魂,集成电路只是将各种元器件小尺寸化,而虚拟仪器技术却能够合适的调用这数以亿计的晶体管中的一部分来实现你想要的功能。82 LabVIEW的概念和应用 2.1 LabVIEW的基本概念LabVIEW是一种图形化的编程语言,又称为“G语言”,其各个部件类似于普通文本式的编程语言中的函数固定语言或者子程序,LabVIEW开发出的软件也就是我们所说的虚拟仪器。9LabVIEW的编辑界面有程序
10、框图和前面板。程序框图显示的是各个部件或者子VI之间的逻辑关系图,可以根据需要合理的添加或去除相应部件;10前面板与现实中的仪器相仿,可以设置旋钮、按键、显示装置或者是其他输入输出装置,甚至还能够按照个人喜好对界面进行美化。LabVIEW系统的构成相当复杂,但大体上由数据采集、数据分析、数据显示及保存模块构成;按软硬件分类,LabVIEW由两部分组成:硬件获取测试对象的被测信号;测试软件的控制。11本身作为一种编程语言就具备了操作使用灵活的特点,其编程所能实现的功能远远超出实际器件的范围;加之本身极强的可辨识性和简单的学习难度,在许多应用领域都能被人们很快的接受。12当然,图形语言也不仅仅指L
11、abVIEW,各种语言都有着各自的优缺点,LabVIEW也不例外,在简单程序语句的编写中LabVIEW要比文本性语言快捷得多,但是复杂功能的实现就略显乏力,除非是经常使用LabVIEW的工程师,每次使用都将日后可能用到的各个子VI单独封装保存,这样即便是较繁琐的程序编辑也会变得比较简单。 2.2 LabVIEW的应用领域LabVIEW作为一种简单实用的图形化编程语言,被广泛的应用于精细测量、建筑测量、设计模拟、生物医药、精密化工等各个高新技术领域。13 2.3 LabVIEW相较文本语言的优缺点与C语言等纯文本性语言相比,LabVIEW更加直观可视,操作也更加便捷,在常用功能的编辑中,LabV
12、IEW可以直接调用一个或多个部件完成C语言中数以百计的单词编写出的程序的功能。另一方面,由于没有大量文本的编写,LabVIEW避免了像C语言中字符输入错误这样的问题,编写过程更加精准,减少了反复查找纰漏的过程。另外,LabVIEW还有前面板编辑,经过美化的前面板几乎可以与显示仪器设备的面板相媲美,实际测量操作更接近现实,还可以输入或输出数字、文字、图形、表格等多种信息格式,这样多自由度的操作也是LabVIEW的亮点之一。14但LabVIEW也有无法避免的缺点,那就是子VI的缺乏,不同的系统需要不同的子VI支持,就算是相同的系统,鉴于不同使用者的喜好,子VI也不可能完全相同,很少有用户能够做到保
13、存所有自己编写过的子VI,这样一来,在编写大型复杂化的软件程序时,每次都要浪费人力物力在相同的子VI部件的编写上,这是LabVIEW模块化部件工作的固有弊端。153 基于LabVIEW的电子万年历 3.1 电子万年历的模块化分析不一定每个人都熟悉或者电子万年历的构造,但是我们大多都了解电子万年历是如何发展过来的:从滴水计时到计时12时的钟表、能计算日期的钟表、能计算日期和星期的钟表,到现在的万年历,纵观其中的各个过程我们不难发现:后一代产物无法完全摒弃前一代的技术基础,计时12时的钟表也需要秒为单位的基本计时模块,计算日期的钟表也必须要有秒单位和计时12时的功能,由此看来,万年历也肯定是前面所
14、有种类计时器具优点的集合加上其特有的功能所诞生的产品。那么我们不难分析出:万年历是以秒计时单位为核心,按照相关进制转换计算分、时、日、月、年以及星期的步进式结构,而添加的闹钟工作时间可随意调节,可见闹钟是万年历中一个独特的单位,它每时每刻都会从万年历获取时间信息,与所定时间对比,而这时间相同时,闹钟工作。也就是说闹钟模块独立于计时循环模块之外,但对万年历时间的读取工作模块处于计时模块之内。 3.2 电子万年历的模块间综合分析鉴于LabVIEW本身的模块式部件语句编写模式,对电子万年历的分解只停留在部件是不够的,由3.1的分析可以得知:万年历的主体由秒表模块、秒转分模块、分转时模块、时转日模块、
15、日转月模块、月转年模块和星期计算模块以及闹钟模块构成,另外还要有数码管显示模块和闹钟调节模块以及初始调节模块的补充和完善。各个转换模块之间按顺序串接,就形成了一个以秒表为核心的基本自主计时体系;星期计算模块需要实时获取年信息、月信息以及日信息进行相应公式计算得出相应的星期;闹钟模块随时获取相应信息对比时间决定开关即可;这一整体辅以数码管显示模块和闹钟调节、初始调节模块完善整个系统的输入输出,以实现电子万年历功能。4 基于LabVIEW的电子万年历的编写过程由于之前也没有编写万年历程序的经历,所以编写过程是先编写主要核心,然后主次添加所需模块来完成的,为了讲述方便,本文就按照编写进度顺序撰写: 4.1 核心时间模块