LabVIEW 课堂
作业
学生姓名:黄学琴
学生学号:100103040033
专业班级:生物医学工程 2 班
任课教师:赵勇
LabVIEW 课堂作业
一﹑总方案的确定
本次我们是通过采用基于虚拟仪器的交通灯控制系统的设计,自动
控制十字路口四组红、绿﹑黄以及人行道八组红﹑绿交通灯的状态转换的
方法,指挥各种车辆和行人安全通行,实现十字路口交通管理的自动化。南
北绿灯亮时,东西红灯亮,准许行人南北方向通行,车辆南北方向通行;
南北黄灯亮时,人行东西的绿灯闪烁,提醒行人赶快过马路;南北红灯亮
时,东西绿灯亮,准许行人东西方向通行,车辆东西方向通行;东西黄灯
亮时,南北人行绿灯闪烁,提醒行人赶快过马路。使这个虚拟的交通灯程
序更好用。
我采用的控制逻辑顺序如下(因为相对的两个方向顺序一样所以只
列出了北方和东方的逻辑顺序):
(1) 北绿灯,东红灯,东西人行绿灯亮(7 秒);
(2) 北黄灯,东红灯,东西人行绿灯闪(3 秒);
(3) 北红灯,东绿灯,南北人行绿灯亮(7 秒);
(4) 北红灯,东黄灯,南北人行绿灯闪(3 秒);
二﹑面板的设计
前面板是 VI 的用户界面。创建 VI 时,通常应先设计前面板,然后在
前面板上创建输入/输出任务。
1、指示灯及控制按钮
在本设计中前面板比较简单,需要用 28 盏灯、一个停止按键即可。
其中的 28 盏灯,在控件选板中选择指示灯,将它放在前面板合适的位置,
单击鼠标右键,更改指示灯的属性,改变指示灯的大小,做出一个合适的
指示灯,再用框将每组灯框起来,做成一个交通灯。在前面板合适的位置
放置一个开关按钮,控制循环的停止。
2、自定义控件
前面板中的人行道上在准许通行时移动的小人是一个自定义的滑动
杆控件,先在前面板插入一个滑动杆控件,再选择将其制作自定义控件,
切换到自定义模式,设置滑动杆背景和填充颜色都为一样的颜色,再插入
1
一个小人的图片,一个自定义控件就做好了,做好的自定义控件如图 1 所
示,然后将自定义控件插入前面板。
3、控件的排版
因为是十字路口的交通灯,所以有东南西北四个方向,行车交通灯有
四组,人行道也有四组,每组人行道的两边都有一组人行交通灯,为红和
绿,自定义的小人放在人行道的内侧,再加入一个十字路口的公路图片,
这样十字路口的交通灯系统的前面板就做好了,前面板的图如图 2 所示。
图 1 行人自定义控件
2
图 2 交通灯的前面板
三、定时信号的产生
时间延迟是在LabVIEW中的一个计时单元,它的图标与用途如图2所
示。在函数选板的【编程】→【定时】子选板中选择时间延迟选定该单元。
四、各组时间信号的动作
图 3 时间延迟
1、条件结构是 LabVIEW 最基本的结构之一,也是状态机的基本构成
3
之一,条件结构类似于文本编程语言中的 switch 语句或者 if…then…
else 语句。条件结构可以从【结构】子选板中创建,它的图标及功能如
图 3 所示。
图 4 条件结构
2、本程序设计的关键就是使用的是状态机,图 5 就是一个典型的状
态机结构,主要由条件结构,枚举常量,移位寄存器以及 while 循环构成,
通过枚举常量选择不同的状态并通过移位寄存器将上一次循环的结果传
递给下一次循环,作为下一次循环的初始值,在条件结构的程序框中编写
不同的程序结构,其为选择结构的不同状态,从而实现在各个状态之间的
自由转换,并且使程序在修改时更加容易。状态转移图的流程由 while 循
环实现,每一个状态对应于条件结构中的每一个分支,while 循环上的移
位寄存器保存当前运行是状态,并将当前状态传递给条件结构的输入。
4
3、局部变量
图 5 状态机
图 6 将局部变量
这就是一个局部变量,通过局部变量,前面板的对象既可以作为输入
访问也可以作为输出访问,可以从一个 VI 的不同位置访问前面板对象,
并将无法用连线连接的数据在程序框图上的节点之间传递。其创建方法有
两种:
(1)鼠标右键单击一个前面板中已有的对象,从弹出的快捷菜单中
选择“创建”选项下的“局部变量”选项,便可创建为该对象的一个局部
变量。
(2)从“结构”子选版中选择“局部变量”并将其拖放到程序框图
上,此时局部变量的图标上带有一个“?”的矩形框,这时,可以在前面
板中添加控件来填充其内容,或者,在创建的局部变量上单击鼠标右键,
可从弹出的快捷菜单中的“选择项”看见前面板中所有已建立的对象的名
称菜单,可以选择其中的一个作为该局部变量的定义。
4、在条件结构中,选择端口相当于 switch 语句中的“表达式”,框
图表示符相当于“表达式 n”。编程时,将外部控制条件连接至选择端口
5
上,程序运行时选择端口会判断送来的控制条件,引导选择结构执行相应
框架中的内容。在本程序中的控制条件为从判定范围并强制转换“?”端
口输出地判断值。
当各组条件满足时,将执行各条件结构里的程序。每个条件结构里的
程序基本相同。用需要点亮的灯与布尔真常量连接,不需要点亮的与布尔
假常量连接,各结构里的程序略有不同,具体程序如图 7 到图 10 所示。
图 7 南北绿灯亮
6
图 8 南北红灯亮
图 9 南北黄灯亮
7