项目3、交通信号灯控制系统设计_第1页
项目3、交通信号灯控制系统设计_第2页
项目3、交通信号灯控制系统设计_第3页
项目3、交通信号灯控制系统设计_第4页
项目3、交通信号灯控制系统设计_第5页
已阅读5页,还剩78页未读 继续免费阅读

下载本文档

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

文档简介

1、公司公司徽标徽标项目项目3 3、交通信号灯控制系统设计、交通信号灯控制系统设计目录目录 任务任务3-1 3-1 霓虹灯控制霓虹灯控制 任务任务3-2 3-2 数字式显示器控制数字式显示器控制 任务任务3-3 3-3 交通信号灯控制系统交通信号灯控制系统公司公司徽标徽标霓虹灯控制实训电子与电气工程学院电子与电气工程学院 虚拟仪器课程小组虚拟仪器课程小组目 录教学目标教学目标1项目背景项目背景2项目实施项目实施3项目评价项目评价4项目总结项目总结51、教学目标、教学目标 能借助能借助ELVIS平台实现数字输入与平台实现数字输入与输出控制;输出控制; 学会软数字信号记录仪、数字信号学会软数字信号记录

2、仪、数字信号监视仪的使用;监视仪的使用; 能较熟练地编制和调试能较熟练地编制和调试LabVIEW程序;程序;1、教学目标、教学目标 学会循环结构和移位寄存器的学会循环结构和移位寄存器的使用;使用; 学会数组的创建及其常用数组学会数组的创建及其常用数组函数的使用;函数的使用;1、教学目标、教学目标 培养学生综合职业能力如:能培养学生综合职业能力如:能够对所从事的工作承担责任、具备够对所从事的工作承担责任、具备独立工作能力、自学能力、团队合独立工作能力、自学能力、团队合作、文献检索、口头表达、作、文献检索、口头表达、5S管管理素养理素养 2. 项目背景项目背景演示演示 模拟现实生活中的霓虹彩灯,控

3、制彩灯闪烁时间及顺序。实现一个8个彩灯循环闪烁的控制系统。控制要求如下:单向自动控制;反向自动控制;多功能综合控制。 相关知识介绍 数组概述(定义、创建方法); 常用数组函数的使用; NI ELVIS的DI/O函数的使用;数组定义 数组是同类型元素的集合。一个数组可以是数组是同类型元素的集合。一个数组可以是一维或者多维,可以通过数组索引访问其中的每一维或者多维,可以通过数组索引访问其中的每个元素。索引的范围是个元素。索引的范围是0到到n-1,其中,其中n是数组中是数组中元素的个数。下图所显示的是由数值构成的一维元素的个数。下图所显示的是由数值构成的一维数组。注意第一个元素的索引号为数组。注意第

4、一个元素的索引号为0,第二个是,第二个是1,依此类推。数组的元素可以是数据、字符串等,依此类推。数组的元素可以是数据、字符串等,但所有元素的数据类型必须一致。但所有元素的数据类型必须一致。 前面板创建各种数组控件;前面板创建各种数组控件; 框图程序窗口创建数组常量;框图程序窗口创建数组常量; 利用循环结构的自动索引功能创建数组;利用循环结构的自动索引功能创建数组;创建数组创建数组的方法创建数组的方法 (1 1)放置数组框)放置数组框 (2 2)定义数组类型)定义数组类型1、在前面板上创建数组、在前面板上创建数组 创建数组数组元素的显示 多维数组创建方法(多维数组创建方法(2种)种)数组的初始化

5、 数组元素尚未定义数组元素尚未定义 数组元素赋值与显示数组元素赋值与显示 常数数组空壳常数数组空壳 布尔常数数组布尔常数数组 2、在框图程序中创建数组、在框图程序中创建数组 创建数组创建数组使用函数产生数组使用函数产生数组:3、其他创建数组方法、其他创建数组方法 数组函数选项板数组函数选项板数组函数介绍常用数组函数:介绍常用数组函数:Array Size数组大小数组大小Initialize Array初始化数组初始化数组Build Array构建数组构建数组Array Subset数组子集数组子集Index Array索引数组索引数组1.Array Size (1.Array Size (数组

6、大小数组大小) )函数函数2.Initialize Array (2.Initialize Array (初始化数组初始化数组) ) 数组函数3. Build Array(3. Build Array(构建数组构建数组) )函数函数例例:Build ArrayBuild Array函数的使用函数的使用。 输出一个新数组输出一个新数组 数组函数若在函数弹出菜单若在函数弹出菜单选择选择Concatenate Concatenate InputsInputs项项, ,则函数会则函数会将两个数组按输入将两个数组按输入顺序合并成一个一顺序合并成一个一维数维数组组输出。输出。输出二维数组输出二维数组 输出

7、一维数组输出一维数组 数组函数4 4Array Subset( Array Subset( 数组子集数组子集 ) )函数函数 该函数该函数返回数组中从返回数组中从 Index Index 开始的开始的长度为长度为 length length 的的部分部分数组数组元素元素。 例例:ArrayArray Subset Subset 函数的使用函数的使用。数组函数5. Index Array (5. Index Array (索引数组索引数组) ) 函数函数 用于用于访问数组访问数组中指定位置的元素。中指定位置的元素。数组函数NI ELVIS的数字I/O 利用LabVIEW和带有数字I/O的DAQ设

8、备,可以方便地实现数字信号的输入与输出。对于产生数字信号并输出到数据总线上的虚拟仪器可称为数字信号发生器digital bus writer;NI ELVIS的数字I/O 能够从数据总线上读取各条数据线的高低电平状态的虚拟仪器可称为数字信号监控仪digital bus reader ; NI ELVIS实验台包含DAQ DIO线以提供数字输入和数字输出的电路。在LabVIEW中可以利用ELVIS中一些现成的函数模块进行自定义,来实现对数字信号的输入与输出控制,下图为一个数字输入的简单应用,包括初始化、读取数字数据、最后关闭DIO几个模块,初始化主要是进行DAQ设备号的设置和数字操作的配置。NI

9、 ELVIS的数字I/ONI ELVIS的数字I/O 下图为一个数字输出的简单应用,包括初始化、输出数字数据、最后关闭DIO几个模块。 项目实施 1、硬件接线: 原型面包板DO0DO7 与LED0LED7分别对应连接; 2、打开ELVIS设备电源,启动ELVIS界面,分别用Digital bus Reader和Digital bus Writer观察数字输入输出变化; 3、编程实现首先从DI0DI7端口读取数字信号,然后再将数字信号输出到DO0DO7端口;项目实施4、设计霓虹彩灯,控制彩灯闪烁时间及顺序; 利用循环、数组及相关函数设计实现软件彩灯循环功能; 改变彩灯循环方式; 学习使用硬件数字

10、输入输出的相关函数; 编程控制外部硬件八盏灯循环点亮; 增加左右移选择控制;项目评价1、项目实现过程中的注意事项;2、项目完成情况评价; 项目总结 本次实训主要学习了软数字信号记录仪、数字信号监视仪的使用,介绍了在LabVIEW中如何创建数组和常用数组函数的使用,并利用NI ELVIS的数字I/O来实现霓虹彩灯的闪烁控制。 公司公司徽标徽标数字式显示器控制实训 电子与电气工程学院电子与电气工程学院 虚拟仪器课程小组虚拟仪器课程小组目 录1. 教学目标教学目标 2. 项目背景项目背景 3. 项目实施项目实施 4. 项目验收项目验收 5. 项目总结项目总结 1、教学目标、教学目标 能熟练使用分支结

11、构、循环结构、顺序结能熟练使用分支结构、循环结构、顺序结构进行程序设计;构进行程序设计; 能借助数据采集助手进行模拟量信号采集;能借助数据采集助手进行模拟量信号采集; 能借助能借助ELVIS平台实现数字量输入输出控平台实现数字量输入输出控制;制; 能根据设计要求进行项目方案设计、编制、能根据设计要求进行项目方案设计、编制、调试运行;调试运行;1、教学目标、教学目标掌握循环结构、分支结构、顺序结掌握循环结构、分支结构、顺序结构的使用;构的使用;掌握簇及簇函数的使用;掌握簇及簇函数的使用;模拟量的数据采集方法;模拟量的数据采集方法;数据采集助手;数据采集助手;1、教学目标、教学目标 培养学生综合职

12、业能力如:能培养学生综合职业能力如:能够对所从事的工作承担责任、具备够对所从事的工作承担责任、具备独立工作能力、自学能力、团队合独立工作能力、自学能力、团队合作、文献检索、口头表达、作、文献检索、口头表达、5S管管理素养理素养 2. 项目背景项目背景 根据外部电压信号进行实时采集、数据分析处理,并实现数字式显示控制。演示演示相关知识介绍 1、什么是簇? 2、簇的创建 3、簇的顺序 4、簇函数的使用 簇(Clusters) 使用簇可以为编程带来以下便利使用簇可以为编程带来以下便利: 把程序框图中不同位置,不同数据类型的多个把程序框图中不同位置,不同数据类型的多个数据攒在一起,减少了连线的混乱;数

13、据攒在一起,减少了连线的混乱; 子程序有多个不同数据类型的参数输入输出时,子程序有多个不同数据类型的参数输入输出时,把它们攒成一个簇可以减少连接板上的端口的把它们攒成一个簇可以减少连接板上的端口的数量;数量; 某些控件和函数必须要簇这种数据类型的参数某些控件和函数必须要簇这种数据类型的参数; 簇是由不同类型的数据元素组成的一种数簇是由不同类型的数据元素组成的一种数据类型。据类型。 簇(Clusters)1、在前面板上创建簇、在前面板上创建簇 簇的创建 (a) (a) 混合簇控制件混合簇控制件 (b) (b) 混合簇指示器混合簇指示器 (c)(c)数值型簇控制件数值型簇控制件 a. a. 混合簇

14、控制端点混合簇控制端点 b.b.混合簇指示端点混合簇指示端点 c. c. 数值型控制簇数值型控制簇 在程序框图中的端点图标在程序框图中的端点图标 簇的创建 先从先从Cluster函数子模板中选择簇的空壳函数子模板中选择簇的空壳放到程序框图中,然后根据需要选择一些数放到程序框图中,然后根据需要选择一些数据常量放到空簇中。据常量放到空簇中。簇的创建2、在程序框图中创建簇常量、在程序框图中创建簇常量 注意注意 在一个簇对象中,簇的成员可以是任意的数据类型,在一个簇对象中,簇的成员可以是任意的数据类型,但必须同时是控制件或同时是指示件但必须同时是控制件或同时是指示件, ,不能同时包含两不能同时包含两种

15、。一个簇是控制簇还是指示簇,取决于放进簇中的第种。一个簇是控制簇还是指示簇,取决于放进簇中的第一个元素。一个元素。 簇控件和簇指簇控件和簇指示器的转换示器的转换簇的创建簇的顺序簇的成员有一种逻辑上的顺序,这是由它簇的成员有一种逻辑上的顺序,这是由它们放进簇的先后顺序决定的,与它们在簇们放进簇的先后顺序决定的,与它们在簇中摆放的位置无关。中摆放的位置无关。改变簇成员逻辑顺序的方法是在簇上弹出改变簇成员逻辑顺序的方法是在簇上弹出快捷菜单,选快捷菜单,选Reorder Controls In Cluster弹出对话框,为簇成员设置新的弹出对话框,为簇成员设置新的逻辑顺序。逻辑顺序。Unbundle解

16、捆簇函数解捆簇函数Unbundle By Name按名称按名称Bundle 捆绑簇函数捆绑簇函数Bundle By Name按名称按名称Build Cluster Array建立簇数组函数建立簇数组函数Index&Bundle Cluster Array插接簇数组函数插接簇数组函数Array To ClusterCluster To Array簇函数UnbundleUnbundle ( (解捆解捆) ) 函数函数 例:将一个簇中的各个元素值分别取出。例:将一个簇中的各个元素值分别取出。Bundle (Bundle (捆绑捆绑) )函数函数 例例: BundleBundle函数的使用。函

17、数的使用。用名称捆绑与分解簇 如果不需要汇集或分解整个簇,而仅仅需要对其一、两个元素操作。这时可以用名称来捆绑与分解簇。在Cluster 工具模板中除了Bundle及Unbundle功能外,还提供有Bundle By Name和Unbundle By Name功能。它们允许根据元素的名称(而不是其位置)来查询元素。与Bundle不同,使用Bundle By Name可以访问所需要的元素,但不能创建新簇;它只能重置一个已经存在的簇的元素,同时必须给Bundle By Name图标中间的输入端子一个输入以申明要替换其元素的簇。Unbundle可返回指定名称的簇元素,不必考虑簇的序和大小。数组和簇的

18、互换 由于LabVIEW包括的关于数组的操作功能多于簇,有时需要将数组和簇进行互相转换。将数组变为簇(或者相反)很方便。例如,前面板上有一个多按钮的簇,如果要颠倒这些按钮值的序。Reverse 1D Array功能正好可用,但是它仅可用于数组。可以使用功能Cluster to Array将簇转换为数组,使用Reverse 1D Array切换开关的值,最后再利用Array to Claster 变换回簇。 3、项目实施 数字式显示器控制设计具体要求: 每隔0.5秒采集一次可调电源SUPPLY+的电压并将电压值在前面板显示,同时(取整后)用一个外部数码管显示,当电压超过9V时数码管显示“E”,同

19、时外部LED报警灯亮。 前面板设计要求:设计开始按钮和停止采集按钮,电压值数字显示和变化趋势图显示,最大、最小、平均电压值显示、超过9V报警灯显示。 功能加强:按下开始按钮:先驱动数码管(所有段)闪烁3下、再开始采集,每次采集到新的数据再送数码管显示前先驱动数码管暗一下。程序运行过程中根据当前状态显示相关的提示信息(如:请按下开始按纽、正在准备采集请稍候)。3、项目实施1Step1:实现软件手动选择数实现软件手动选择数字,数码管软硬件显字,数码管软硬件显示设计;示设计;2Step2:采集外部采集外部supply+电 压 , 手 动 调 节电 压 , 手 动 调 节Supply+外部硬外部硬件调

20、节旋钮,实现件调节旋钮,实现对应数码管显示;对应数码管显示;3Step3:对采集的电压进行对采集的电压进行数据分析,实现历数据分析,实现历史趋势图显示,最史趋势图显示,最值分析、越限报警值分析、越限报警等功能;等功能;3、项目实施Step1 根据设计要求实现软件手动选择数字,数码根据设计要求实现软件手动选择数字,数码管软硬件显示设计;管软硬件显示设计;Step1 采集外部采集外部supply+电压,手动调节电压,手动调节Supply+外部硬件调节旋钮,实现对应数码管显示;外部硬件调节旋钮,实现对应数码管显示;3、项目实施Step2Step2 对采集的电压进行数据分析,实现历史趋势图显对采集的电

21、压进行数据分析,实现历史趋势图显示,最值分析、越限报警等功能;示,最值分析、越限报警等功能;3、项目实施Step3Step34、项目评价1、项目实现过程中的注意事项; 注意数据类型转换; 动态数据类型转换; 簇与数组的转换;2、项目完成情况评价; 5、项目总结 通过本次实训要求学生掌握基于NI ELVIS平台的模拟信号采集和数字I/O控制方法,能根据设计要求进行项目方案设计、编制、调试运行。公司公司徽标徽标交通信号灯控制实训交通信号灯控制实训 电子与电气工程学院电子与电气工程学院 虚拟仪器课程小组虚拟仪器课程小组虚拟仪器应用技术虚拟仪器应用技术本课程项目教学已进行到本课程项目教学已进行到项目项

22、目3 3交通信号交通信号灯控制系灯控制系统设计统设计任务任务3-1 3-1 霓虹灯控制霓虹灯控制实训实训能借助能借助ELVISELVIS平平台进行数字量台进行数字量输入与输出的输入与输出的控制控制数字量输入数字量输入输出控制输出控制操作演示、操作演示、学生独立练学生独立练习、结果展习、结果展示并点评示并点评程序提交程序提交实训报告实训报告任务任务3-2 3-2 数字式显示数字式显示器控制实训器控制实训能熟练使用分能熟练使用分支结构、循环支结构、循环结构、顺序结结构、顺序结构进行程序设构进行程序设计计分支结构、分支结构、顺序结构、顺序结构、循环结构设循环结构设计计操作演示、操作演示、学生独立练学

23、生独立练习、结果展习、结果展示并点评示并点评程序提交程序提交实训报告实训报告任务任务3-3 3-3 交通信号灯交通信号灯控制控制能进行基本的能进行基本的数字对象状态数字对象状态分析,能熟练分析,能熟练进行较简单的进行较简单的数字对象控制数字对象控制交通信号灯交通信号灯工作状态工作状态操作演示、操作演示、学生独立练学生独立练习、结果展习、结果展示并点评示并点评程序提交程序提交实训报告实训报告目 录教学目标教学目标1项目背景项目背景2项目实施项目实施3项目评价项目评价4项目总结项目总结51、教学目标、教学目标能进行基本的数字对象状态分析,能熟能进行基本的数字对象状态分析,能熟练进行较简单的数字对象

24、控制练进行较简单的数字对象控制;能借助能借助NI ELVIS平台实现数字输入与输平台实现数字输入与输出控制;出控制;熟练掌握选择、顺序、循环结构和循环熟练掌握选择、顺序、循环结构和循环结构的自动索引功能的使用;结构的自动索引功能的使用;掌握数组与数组函数、簇与簇函数使用掌握数组与数组函数、簇与簇函数使用; 掌握簇与数组的灵活转换;掌握簇与数组的灵活转换;培养团队合作能力;培养团队合作能力;培养学生调试、分析和解决问题的能力;培养学生调试、分析和解决问题的能力;培养学生养成良好的职业素质;培养学生养成良好的职业素质; 2、项目背景、项目背景 随着社会经济的发展,城市随着社会经济的发展,城市交通问

25、题越来越引起人们的关注。交通问题越来越引起人们的关注。人、车、路三者关系的协调,已人、车、路三者关系的协调,已成为交通管理部门需要解决的重成为交通管理部门需要解决的重要问题之一。城市交通控制系统要问题之一。城市交通控制系统是用于城市交通数据监测、交通是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交综合管理系统,它是现代城市交通监控指挥系统中最重要的组成通监控指挥系统中最重要的组成部分。部分。演示演示3、项目实施Step 1Step 2Step 5设计要求设计要求学生讨论学生讨论Step 3Step 4方案讨论方案讨论设计调试设计调

26、试项目归纳项目归纳3.1项目设计要求项目设计要求 设计一个智能交通信号灯的控制器,能够实现红绿灯的自动指挥。设计一个智能交通信号灯的控制器,能够实现红绿灯的自动指挥。(1 1)东西、南北各三盏红、黄、绿灯,交通灯亮灭规律为:)东西、南北各三盏红、黄、绿灯,交通灯亮灭规律为:初始态:路口东西南北灯均灭;初始态:路口东西南北灯均灭;次态次态1 1:东西路口的红灯亮,南北路口的绿灯亮,南北方向通车,:东西路口的红灯亮,南北路口的绿灯亮,南北方向通车, 延时延时2525秒后,秒后,次态次态2 2:南北路口绿灯灭,黄灯亮:南北路口绿灯灭,黄灯亮5s5s后;后;次态次态3 3:东西路口绿灯亮,同时南北路口

27、红灯亮,东西方向开始通车,:东西路口绿灯亮,同时南北路口红灯亮,东西方向开始通车, 延时延时2525秒后,秒后,次态次态4 4:东西路口绿灯灭,黄灯亮:东西路口绿灯灭,黄灯亮5s5s后,再次切换到次态后,再次切换到次态1 1重复。重复。(2 2)在东西和南北十字路口添加倒计时功能;)在东西和南北十字路口添加倒计时功能; 基本功能基本功能 在实现基本功能的基础上,完成以下拓展功能设在实现基本功能的基础上,完成以下拓展功能设计:计:(3 3)红绿灯交替时黄灯以每秒)红绿灯交替时黄灯以每秒1 1次频率闪亮;次频率闪亮;(4 4)夜间无人值守时)夜间无人值守时, , 以每秒以每秒1 1次的黄灯闪亮次的

28、黄灯闪亮, , 提提醒司机安全驾驶醒司机安全驾驶; ; 3.1项目设计要求项目设计要求拓展功能拓展功能3.2学生讨论问题问题1:1: 根据设计要求仔细分析,画出交通灯显示根据设计要求仔细分析,画出交通灯显示控制时序图。控制时序图。问题问题2:2: 交通灯如何按给定时序实现亮灭控制交通灯如何按给定时序实现亮灭控制? ?问题问题3:3: 如果软件已实现交通信号灯时序控制,如如果软件已实现交通信号灯时序控制,如何实现硬件数字输出控制?何实现硬件数字输出控制?问题问题1:1:请同学们根据设计要求仔细分析,并画出交请同学们根据设计要求仔细分析,并画出交通灯显示控制时序图。通灯显示控制时序图。3.2学生讨

29、论交通灯显示控制时序图交通灯显示控制时序图问题问题2:2:按给定时序,交通灯如何实现软件的按给定时序,交通灯如何实现软件的亮灭控制亮灭控制? ?3.2学生讨论分分 析析 这里交通灯控制是基于一个这里交通灯控制是基于一个60s60s的运行周期,的运行周期,其中东西向红灯亮其中东西向红灯亮30s30s,然后是绿灯亮,然后是绿灯亮25s25s,再接,再接着黄灯亮着黄灯亮5s5s。南北向首先绿灯亮。南北向首先绿灯亮25s25s,然后黄灯亮,然后黄灯亮5s5s,接着红灯亮,接着红灯亮30s30s。对于两个通道的灯,比如说。对于两个通道的灯,比如说南北方向的黄灯亮时,东西方向红灯亮。这南北方向的黄灯亮时,

30、东西方向红灯亮。这30s30s周周期正好使南北方向期正好使南北方向5s5s的黄灯和的黄灯和25s25s的绿灯的周期之的绿灯的周期之和。对于两通道的十字路口,和。对于两通道的十字路口,4 4个时间周期分别记个时间周期分别记为:为:T1T1,T2T2,T3T3,T4T4。3.2学生讨论交通灯交通灯红黄绿红黄绿红黄绿红黄绿8位代码位代码数值数值方向方向南北南北东西东西位位012456T1T125s001100T2T25s010100T3T325s100001T4T45s100010根据给定时序图可以分析交通灯的工作情况:根据给定时序图可以分析交通灯的工作情况: 交通信号灯控制代码表交通信号灯控制代码

31、表00010100200001001018010000016500100001333.2学生讨论问题问题3:3:如果软件已实现交通信号灯时序控制,如何如果软件已实现交通信号灯时序控制,如何实现硬件数字输出控制?实现硬件数字输出控制?3.2学生讨论知识回顾知识回顾NI ELVIS的数字的数字I/O NI ELVISNI ELVIS实验台包含实验台包含DAQ DIODAQ DIO线以提供数字输入和数字输线以提供数字输入和数字输出的电路。在出的电路。在LabVIEWLabVIEW中可以利用中可以利用ELVISELVIS中一些现成的函数中一些现成的函数模块进行自定义,来实现对数字信号的输入与输出控制,模块进行自定义,来实现对数字信号的输入与输出控制,下图为一个数字输出的简单应用,包括初始化、输出数字下图为一个数字输出的简单应用,包括初始化、输出数字数据、最后

温馨提示

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

评论

0/150

提交评论