当前位置:文档之家› labview课程设计

labview课程设计

1

虚拟仪器》课程设计

题 目 : 摩托车仪表盘

学院名称 : 物理与电子工程学院

专业班级 : 电子信息科学与技术

学生姓名 : 方皖南

学 号 : 201540620302

指导教师 : 胡楠

时间 : 2018-10-25 2

目录

一、labVIEW 介绍 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ ................... 3

二、 摩托车仪表盘的设计 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ ................... 4

2.1前面板图示 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ ............ 4

2.2程序框图 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ .............. 4

2.3 程序说明 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ ⋯ ...................................... 5

( 1) 左转灯以及右转灯的控制 ⋯⋯⋯⋯⋯⋯⋯ ⋯ ................................. 5

( 2)让左右等闪烁的控制 ⋯⋯⋯⋯⋯ ⋯ ............................................. 6

( 3)里程表控制 ⋯⋯⋯⋯⋯ ⋯ ....................................................... 6

( 4)速度表控制 ⋯⋯⋯⋯⋯ ⋯ ....................................................... 7

( 5)油罐的控制 ⋯⋯⋯⋯ ⋯ .......................................................... 7

( 6)所有数值归零控制 ⋯⋯⋯⋯ ⋯ ................................................ 7

三、设计小结 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ ............... 7

四、 参考文献 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ ................ 83

、 labVIEW介绍

LabVIEW (Laboratory Virtual Instrument EngineeringWorkbench ,实验室虚拟仪器集

成环境 )是一个基于 G(Graphic )语言的图形编程开发环境,在工业界和学术界中广泛用作 开发数据采集系统、仪器控制软件和分析软件的标准语言,对于科学研究和工程应用来说是 很理想的语言。它含有种类丰富的函数库,科学家和工程师们利用它可以方便灵活地搭建功 能强大的测试系统。 LabVIEW编程语言最主要的两个特点是图形化编程和数据流驱动: (1)图形化编程

LabVIEW与 Visual C++、Visual Basic 、LabWindows/CVI等编程语言不同,后几种都 是基于文本的语言,而 LabVIEW则是使用图形化程序设计语言 G语言,用框图代替了传统的 程序代码,编程的过程即是使用图形符号表达程序行为的过程,源代码不是文本而是框图。 一个 VI 有三个主要部分组成:框图、前面板和图标/连接器。框图是程序代码的图形表示。

LabVIEW的框图中使用了丰富的设备和模块图标,与科学家、工程师们习惯的大部分图

标基本一致,这使得编程过程和思维过程非常的相似。多样化的图标和丰富的色彩也给用户

带来不一样的体验和乐趣。

前面板是 VI 的交互式用户界面, 外观和功能都类似于传统仪器面板, 用户的输入数据通 过前面板传递给框图,计算和分析结果也在前面板上以数字、图形、表格等各种不同方式显 示出来。

图标是 VI 的图形符号,连接器则用来定义输入和输出,每一个 VI 都有图标和连接器。 用户要做的工作就是恰当地设置参数,并连接各个子 VI 。编程一般步骤就是使用鼠标选取合 适的模块、连线和设置参数的过程,与烦琐枯燥的文本编程相比更为简单、生动和直观。

如果将虚拟仪器与传统仪器作一类比,前面板就像是仪器的操作和显示面板,提供各种

参数的设置和数据的显示,框图就像是仪器内部的印刷电路板,是仪器的核心部分,对用户

来讲是透明的,而图标和连接器可以比作电路板上的电子元器件和集成电路,保证了仪器正

常的逻辑和运算功能。

(2)数据流驱动

宏观上讲, LabVIEW的运行机制已不再是传统上的冯·诺伊曼式计算机体系结构的执行 方式了。传统计算机语言(如 C 语言)中的顺序执行结构在 LabVIEW中被并行机制所代替。 本质上讲它是一种带有图形控制流结构的数据流模式,程序中的每一个函数节点只4

有在获得 它的全部输入数据后才能够被执行。既然 LabVIEW程序是数据流驱动的,数据流程序设计规 定,一个目标只有当它的所有输入有效时才能够被执行;而目标的输出只有当它的功能完全 时才是有效的。于是 LabVIEW中被连接的函数节点之间的数据流控制着程序的执行次序,而 不像文本程序那样受到行顺序执行的约束。我们可以通过相互连接函数节点简洁高效地开发 应用程序,还可以有多个数据通道同步运行,即所谓的多线程。

在 LabVIEW 中单击加亮执行( Highlight Execution)按钮,即可以动画方式演示框图的 执行过程,可以观察到数据流流动的方式,数据以有色小圆点表示,在各种不同颜色(代表 不同数据类型)的连线上流动。

二、摩托车仪表盘的设计

2.1 前面板图示

2.2 程序框图5

图 2.2 摩托车仪表盘的程序框图

2.3 程序说明

(1)左转灯以及右转灯的控制 6

(示意图)

思路:用条件结构分别控制,令大于 0时为“真”,输出 1,那么“假”还存在两种情况, 等于 0 和小于 0,在嵌套一个条件结构,令等于 0 时为“真”,输出 0,小于 0 时为“假”,输 出-1 。并整体输出,并连接一个条件结构,此时有 3种情况,即

-1,0,1 。令等于 0时两灯均 灭,则两灯均连接一个假常量; “ 1”时右等亮左灯灭,即在左灯连接一个假常量,右灯连接 一个真常量;“-1 ”时,则反之。

(2)让左右等闪烁的控制

(示意图) 思路:用奇数偶数来控制,当为基数时亮,为偶数时灭,因此在 while 循环中,添加一 个移位寄存器,每次加 1 做循环,然后每次除以 2 取余,当余数等于 0 时灯灭,不等于 0时 灯亮。

示意) 7

思路:在 while 循环里面添加一个移位寄存器,并每次加 2 循环下去,直到程序停止

(4)速度表控制

(示意图)

思路: 0——1 的随机数乘以 120(书读表盘上面的最大速度)使速度表盘在每次循环中 显示 0—— 120 中任意数值。

(5)油罐的控制

(示意图)

思路:以 10(油罐上的最大值)为基数每个循环减 0.2 即每次循环油罐下降 02 升,当油罐 值小于等于 0 时程序终止。

(6)所有数值归零控制

(示意图) 思路:利用顺序结构,添加局部变量,即当油罐值小于等于 0时前部分, while 循环程序终 止,进入下一程序执行,利用局部变量控制远光灯、左灯、右灯,全部变暗。

三、设计小结

首先,这次虚拟仪器课程设计的题目是实现基于 LabVIEW的摩托车仪表盘。这次的课程 设计是从课堂上学到的 Labiew 软件操作知识的实际运用。通过这次课程设计,我对 Labiew 的认识又有了很大程度的提升,并且和同学的团结协作更加亲密了,并且提升了自己遇到问 题解决问题的自我动手能力。

其次,这次课程设计让我明白了这门课的重要性和实用性。 通过对 Labiew 软件的合理操 作和运用,我们可以做出各种各样的东西,解决生活中的很多问题。但是,要想解决这些困 难,我们必须勤学多问,多钻研,多动手,熟练的掌握这么软件的应用技术和其他各方面的 知识,这就对我们提出了更高的要求。 8

最后,通过对 labview 的课程设计,让我理论联系了实际。理论为实践奠定了基础,但 是实践也为理论的学习指明了方向,二则缺一不可。我们绝不能简单的将实践与理论隔离开 来,在课程设计的末端,对对我进行了帮助的同学和老师致一由衷的感谢。

参考文献

[1] 牛群峰 王莉 胡红生 吴才章, Labiew 虚拟仪器系统开发与实践 . 中国电力出版社, 2011.07

[2] 陈锡辉 张银鸿, Labiew8.2 程序设计从入门到精通,清华大学出版社, 2007.9

相关主题