LABVIEW课程设计概念钟.docx
《LABVIEW课程设计概念钟.docx》由会员分享,可在线阅读,更多相关《LABVIEW课程设计概念钟.docx(11页珍藏版)》请在冰豆网上搜索。
LABVIEW课程设计概念钟
目录
第一章概述
1.labview整体介绍
第二章设计题目与方案
2.1设计目标
2.2设计方案
第3章软件设计与调试
3.1程序启动基本结构
3.2产生布尔灯闪烁
3.3分针触发标志
3.4提取数字各位
3.5七段布尔显示控件编码
3.6整点声音提醒
3.7时间归零重置
3.8定时备忘便签
第四章总结
4.1实习心得
附录
1.程序框图前面板
2.程序面板部分程序框图
第一章绪论
虚拟仪器技术就是利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试、测量和自动化的应用。
自1986年问世以来,世界各国的工程师和科学家们都已将NIlabview图形化开发工具用于产品设计周期的各个环节,从而改善了产品质量、缩短了产品投放市场的时间,并提高了产品开发和生产效率。
使用集成化的虚拟仪器环境与现实世界的信号相连,分析数据以获取实用信息,共享信息成果,有助于在较大范围内提高生产效率。
虚拟仪器提供的各种工具能满足我们任何项目需要。
美国国家仪器公司NI(NationalInstruments)最早提出的虚拟测量仪器(VI)概念,引发了传统仪器领域的一场重大变革,使得计算机和网络技术得以长驱直入仪器领域,和仪器技术结合起来。
“软件即是仪器”这是NI公司提出的虚拟仪器理念的核心思想。
从这一思想出发,基于电脑或工作站、软件和I/O部件来构建虚拟仪器。
I/O部件可以是独立仪器、模块化仪器、数据采集板(DAQ)或传感器。
虚拟仪器(virtualinstrumention)是基于计算机的仪器。
计算机和仪器的密切结合是目前仪器发展的一个重要方向。
粗略地说这种结合有两种方式,一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。
随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。
另一种方式是将仪器装入计算机。
以通用的计算机硬件及操作系统为依托,实现各种仪器功能。
虚拟仪器主要是指这种方式。
虚拟仪器的主要特点有:
1.尽可能采用了通用的硬件,各种仪器的差异主要是软件。
2.可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。
3.用户可以根据自己的需要定义和制造各种仪器。
虚拟仪器实际上是一个按照仪器需求组织的数据采集系统。
虚拟仪器的研究中涉及的基础理论主要有计算机数据采集和数字信号处理。
目前在这一领域内,使用较为广泛的计算机语言是美国NI公司的LabVIEW。
LabVIEW是一种程序开发环境,由NI公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:
其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。
LabVIEW提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。
用户界面在LabVIEW中被称为前面板。
使用图标和连线,可以通过编程对前面板上的对象进行控制。
这就是图形化源代码,又称G代码。
LabVIEW的图形化源代码在某种程度上类似于流程图,因此又被称作程序框图代码。
相对于传统的标准仪器来说,LabVIEW由于是基于软件的,所以提供了更大的灵活性。
通过LabVIEW开发的虚拟仪器是由用户而不是仪器生产商定义仪器功能的。
一台计算机、数采板卡和LabVIEW的结合就能够变成一个可配置的虚拟仪器来完成用户设定的任务。
通过LabVIEW就可以用传统仪器几分之一的价格创建一个用户所需要的虚拟仪器。
当需要改变这个虚拟仪器的时候,只几分钟的时间通过LabVIEW修改就可以了。
为了便于使用,LabVIEW还集成了大量的函数库以及子程序来帮助完成绝大多数的编程任务。
在使用这些子函数的时候,可以忘掉传统编程语言中的令人头痛的指针操作、内存分配等编程问题。
除此之外,LabVIEW还包含了针对应用的数据采集(DAQ)、GPIB、串口、数据分析、数据显示、数据存储以及Internet网络通信的函数库。
第二章设计题目与方案
设计目标
本课题设计一个智能电子概念时钟。
通过循环结构获取最基本的振动时间,并分离出给数字,在通过布尔灯显示。
数字的显示主要是圆形布尔灯和七个长条状的布尔显示组成。
七段数码管显示不同的数字主要通过其7个布尔不同的真假值控制,将0-9对应的7段布尔显示值依次存入一个布尔数组里,只需提取此数组的不同段即可让其显示不同的值。
温度计随着电子钟的计数按照固定时差采集温度并在超出范围的温度给出警报。
用户也可以使用时钟的备忘便签功能,时钟会给出一分钟的显示并给出红灯提示。
设计方案
此次设计可以用59个布尔灯的闪烁来表示秒针的状况,并用另外59个布尔灯的闪烁来表示分针的状况。
布尔灯按一般时钟规律循环点亮,每盏灯亮灭一次表示1秒。
每个循环包含秒针顺序亮灭59次,并由于60秒已到,触发表示分针的布尔灯亮起,并保持长亮状态,并且在59分钟也就是59盏分针布尔灯全部亮起,在下一分钟也就是60分到来时,分针布尔量全部熄灭。
七段数码管组成的小时显示会由于分针的全部熄灭而自动加一,本电子钟暂按照每个月30天计算,七段数码管显示完24小时之后,会将自动显示的日期加一并至30号之后从一重新开始。
并用定时结构使要显示的字符在预定的时间显示而且红灯警报,在默认情况下显示“万事如意”。
第三章程序设计
程序启动基本结构
LabVIEW中的循环结构主要通过while和for循环实现。
这两种循环的功能基本相同,但使用上有一些差别。
for循环必须确定循环次数,循环一定次数后自动退出循环;而while循环不用确定循环次数,只需要指定退出循环的条件。
本次课程设计中有的循环的次数不能确定,所以就用到了while循环。
While循环可以从程序框图中的【结构】子选板中创建,while循环包括两个端口:
条件端口和重复端口。
它在此课程设计中,条件端口一直为真常量,所以会一直不断地循环。
如图所示while循环:
产生布尔灯闪烁
选择循环结构里嵌套顺序结构,并在顺序结构内构件真假变量的判断,这样就可以在循环次数内条件下依次闪烁,并且可以通过延时程序,控制闪烁的时间。
分针触发标志
利用输入数值控件,并创建其局部变量,使用自加1控件,就能实现分针的自加功能。
提取数字的各位
通过除60或者10取余便可得到分针,时针或者日期。
如下图所示:
七段布尔显示控件编码
取出各位数字后,并不能直接显示,要通过统一编码规范显示的格式,这样才能显示各位数,编码各段如下:
A、B、C、D、E、F、G分别对应着七段布尔显示控件,要显示“0”时A~G的赋值分别为:
1111110(1代表真,0为假),其他数字也是按此做法的。
最后将此9个值串接起来。
这里我们采用双段数码的形式,省去乏味的编码数字的过程。
只需要编写一段0~9的数码管,另一段复制即可。
此种形式可以显示00~99的任何两位数数字。
整点声音提醒
当时间走到整点时,选择蜂鸣声,给予适当的延时,就能发出提示音。
时间归零重置
在外圈大while循环的边框上,创建移位寄存器。
然后在里面使用真假判断结构。
当条件为假时,程序继续运行;条件为真时,赋值给移位寄存器为零。
如图所示为时针归零:
如图所示为日期归零:
定时备忘便签功能
把预定时间与程序运行相比较,并采用与逻辑关系。
即分钟与时针全部与预定的相符合,才能触发便签的字符展示,并给出红灯警报。
第四章实习心得
在课程设计中,我感受到了虚拟仪器的优越性,“软件即仪器”,仅仅在Labview上写入一些图形程序,就可以实现相应的仪器的功能,只需要借助一台计算机,一个LabVIEW软件,就可以实现很多仪器的功能。
在这之前我们做了数字电子技术课程设计、PLC课程设计,与实实在在的数字电路和PLC相比,在LabVIEW上完成的仪器有更大的优越性,它的内容可以完全由自己定义,而且不必用到其他的任何硬件,可以非常方便地修改做成的仪器。
LabVIEW功能太强了,虚拟仪器会在更广泛地领域得到应用。
学好虚拟仪器技术以后有更大发展。
通过这次课程设计,我总结了使用LabVIEW编程的几个要点:
第一,熟悉每个控件的用途、使用方法和在软件中的位置。
如果我们不清楚每个单元的用途,那就根本谈不上应用它们了,只有在知道这个控件是做什么用的,我们才会去使用它。
要想很快地做成一个虚拟仪器,就得熟悉每个单元所在的位置,以免在使用过程中找半天找不到它在哪个菜单中。
第二,对于虚拟仪器设计来说,因果朔源的设计方法是一种比较好的设计方法,知道要做什么,知道需要哪些单元,我们就添加那些单元,按需求增添元件。
课程设计的过程中,我遇到了不少的问题,但最终我终究还是战胜困难,取得了成功,当然其中很大一部分功劳都要归功于指导老师和同学们。
要不是有指导老师的指导和与同学们的相互交流学习,我的
课程设计肯定不会如此轻松。
第三,一定要有坚持不懈和勇于克服困难的勇气。
在LABVIEW设计过程中,免不了的会暂时性遇到麻烦的问题,但我们不能轻言放弃,要勤动脑筋,找XX,问同学,寻朋友,发现问题的结症在哪里,最后一定会取得的满意的结果。
最后感谢学校老师给我们这样的实践机会。
附录
前面板如图所示:
后面板部分程序所示(截图太大不方便黏贴,具体可在VI中查看):