Labview课程设计报告交通灯.doc_第1页
Labview课程设计报告交通灯.doc_第2页
Labview课程设计报告交通灯.doc_第3页
Labview课程设计报告交通灯.doc_第4页
Labview课程设计报告交通灯.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

虚拟仪器课程设计报告 学 年:2011-2102(下)任课教师:汤占军学 号:200910401352姓 名:李德成班 级:自动化093专 业:自动化系: 自动化 学 院:信息工程与自动化学院2012年6月12Labview交通灯综合设计报告1、 前言 虚拟仪器(Virtual Instrumention)是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地说这种结合有两种方式,一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指这种方式。虚拟仪器的主要特点有: 1、尽可能采用了通用的硬件,各种仪器的差异主要是软件。 2、可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。 3、用户可以根据自己的需要定义和制造各种仪器。 LabVIEW是一种程序开发环境,由NI公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。 LabVIEW提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。用户界面在LabVIEW中被称为前面板。使用图标和连线,可以通过编程对前面板上的对象进行控制。这就是图形化源代码,又称G代码。LabVIEW的图形化源代码在某种程度上类似于流程图,因此又被称作程序框图代码。为了便于使用,LabVIEW还集成了大量的函数库以及子程序来帮助完成绝大多数的编程任务。在使用这些子函数的时候,可以忘掉传统编程语言中的令人头痛的指针操作、内存分配等编程问题。除此之外,LabVIEW还包含了针对应用的数据采集(DAQ)、GPIB、串口、数据分析、数据显示、数据存储以及Internet网络通信的函数库。本次课程设计在掌握了LabVIEW基本构建知识及相关控件知识运用的基础上,完成对向前向右交通信号灯的设计。2、 设计功能 本次课程综合设计实现的功能是实现了一个十字路口的交通灯设计,这个交通信号灯系统能为向前和向右两个方向行驶的车辆指示能否通行。这个交通路口每一个方向上的红绿黄灯按绿黄红的顺序循环,每个循环的时间为70s,其中通行(绿灯)的时间为30s,等待通行(黄灯)的时间为5s,禁止通行(红灯)的时间为35s。在运行程序前可以预先设置好交通灯自行运转次数,运行后,已运转次数和已设置运行次数会在前面板上显示。当已运转次数达到设置的次数事,程序终止。若想提前结束本次循环,可以点击重新运转按钮。3、 设计步骤(一)、总体设计思想分析 交通灯系统向前、向右各三盏红、黄、绿灯,交通灯的亮灭规律为: 初始态:全灭,运行后; 次态1:前方黄灯亮,右方红灯亮,交通灯投入运行,前方与右方均开始倒计时,时间为5秒; 次态2:前方红灯亮,前倒计时开始35秒,右方绿灯亮,右倒计时开始30秒; 次态3:前方红灯亮,右方黄灯亮,倒计时均为5秒; 次态4:前方绿灯亮,前方倒计时30秒,右方红灯亮,右方倒计时35秒如此一个周期设计分析完成。(二)、关于时间的设计1. 计时的实现 首先,由上面分析可知,交通灯毎工作一个周期的时间为70秒。在这个设计中计时是用一个“编程-定时”中的“获取时间/日期”的控件及“等待时间”控件来实现的。控件图标如图:计时以秒为单位,每完成一个循环后又从零开始计时。2.各个状态时间段的划定 这里t的区间判定用大于等于控件及小于控件再加上逻辑控件与的组合来完成: 然后将结果送入“条件结构”中执行相关程序的内容。3.各种时间段或者说各种状态下倒计时的实现由分析可知计时从0-70,为了叙述方便,下面用t表示已计时的时间t1表示前方时间显示的数值、t2表示右方时间显示的数值,即满足条件,以此条件与停止按钮的或来判断是否需要结束While循环。下面对各个时间段状态的倒计时设计进行分析: 这里初始态即灯全灭的分析略。 次态1: 因开始红黄灯倒计时均为5秒,故t1=5-t t2=5-t 后面板编程实现如下图: 次态2: 此时前方红灯亮,倒计时从35秒开始;右方绿灯亮,倒计时从30秒开始。 故t1=40-t t2=35-t 程序框图与次态1类似。 次态3: 此时前方红灯亮,倒计时从5秒开始;右方黄灯亮,倒计时从5秒开始。 有t1=40-t t2=40-t 程序框图与次态1类似。 次态4: 此时前方绿灯亮,倒计时从30秒;右方红灯亮倒计时从35秒开始。有 t1=70-t t2=75-t 程序框图与次态1类似。 4. 各状态时间显示的整合 由于各个状态下倒计时时间的输出均为一个整数,所以这里可以通过一个符合运算控件来对各个时间段输出的时间进行复合加运算,最终连接到显示控件上,如图:(3) 、关于灯亮灭的控制设计 灯亮灭的控制是根据各个状态下需要亮的灯,然后采用逻辑或运算将他们练到相应布尔显示灯上即可。其中若某个灯只在其中一个状态中亮,则可以将那个时间段的判定结果直接连到布尔灯的输入端中。如图:(四)、循环运行的设计1. While循环程序中的while循环用来实现计时的循环控制2. For循环For循环用来设置能自动运行的次数总体如图:(5) 、前面板的设计如图: 四、设计结果 第一次设计结果如下:前面板:为了美化全面板的目的,对前面板做了些调整:在这里加入了“列表框”作为道路的模型,又对相关控件的名称做了些修改,修改结果如下:进一步优化设计,考虑到演示实验的演示时间问题,将程序稍加改动,使时间的变化加快,加入一个输入控件,做复合运算,以缩小演示时间。程序改动的结果如下:为了让前面板更美观,删除“列表框”的道路模型,插入一张图片,调整界面如图:由于删除了原先的“列表框”道路模型,所以总体程序面板如下图:五、设计总结 通过本次LabVIEW课程的设计,经过努力所得的结果,我感很不错。由于平时大家都是学习理论知识,没有过实际运用LabVIEW开发设计具有特定功能系统的经验,对于软件中有的控件知识不是很了解,甚至对于很多控件不知道实现什么功能,或者不知道如何去运用它。虽然上课的时候讲过很多关于LabVIEW的应用,但还是对它不是很熟悉。但通过计算机对LabVIEW进行了几天的摸索学习,通过各种相关资料的查阅,我终于把交通灯控制系统课程设计做好了,并发现了LabVIEW的强大功能。通过这次课程设计我基本学会了虚拟仪器设计的步聚和基本方法,提高了动手能力,增强了理论联系实际的能力。 通过这次设计实践。我总结了使用LabVIEW编程的两个要点。第一,熟悉每个控件的用途、使用方法和在软件中的位置。LabVIEW有这么多控件,有这么单元,如果我们不知道每个单元是用来干什么的,那就根本谈不上应用它们了,只有在知道这个空间是做什么用的,我们才会去使用它。知道需要用到某个单元,但是不知道怎么使用,怎么连线,这也是很让人郁闷的事,所以我们得熟悉一些基本单元的用法。要想很快地做成一个虚拟仪器,就得熟悉每个单元所在的位置,以免在使用过程中找半天找不到它在哪个菜单中。第二,对于虚拟仪器设计来说,因果朔源的设计方法是一种比较好的设计方法,知道要做什么,知道需要哪些单元,我们就添加那些单元,按需求增添元件。 课程设计的过程中,我遇到了不少的问题,比如在选择课程设计题目时,我也尝试过虚拟示波器的设计,但由于对示波器相关原理知识的不了解,最后没有实现具体的功能,虽然没有结果,但我还是学习到了许多控件及模块的知识,给我在交通灯的设计中带来了相当大的好处。通过努力,最后完成

温馨提示

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

评论

0/150

提交评论