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