1、江苏技术师范学院毕业设计说明书(论文) 第 1 页 共 67 页 基于 89C51 的智能交通灯设计(软件) 学院名称: 电气信息工程学院 专 业: 电气工程及其自动化 班 级: 05 自控 1W 姓 名: 王士林 指导教师姓名: 路子 赟 刘伟 指导教师职称: 助教 副教授 2009 年 6 月 JIANGSU TEACHERS UNIVERSITY OF TECHNOLOGY 本 科 毕 业 设 计( 论 文 )江苏技术师范学院毕业设计说明书(论文) 第 2 页 共 67 页 基于 89C51的智能 交通灯设计 摘要 : 本设计 将运动检测技术与交通灯控制结合起来,除了具有正常的交通灯时序
2、控外,当发现有闯红灯的情况时还能发出报警,从而使交通灯控制系统具有初步的视觉感知功能。系统 是由显示模块、控制模块、 运动检测 处理 模块, 以及 MATLAB环境下 PC 机 STC89C51单片机 的实时 串 口 通信 模块 等组成。 本次 设计中 的关键技术环节是用软件 模拟 了一个 串行口 ,即用 P1口的 P1.6和 P1.7来分别模拟 RXD和 TXD,通过模拟串口 控制 74HC164来实现数码管 的 显示; PC机串口与单片机 原有串 口 之间 通过 MAX232电平转换芯片和 RSR-232数据总线进行硬件连接 , 利用 MATLAB设备控制工具箱中 提供 的 serial函
3、数 来创建串口设备对象, PC机对串口的读写操作都通过调用 设备控制工具箱 的各种函数对串口 对象 的 操作来 实现。 运动检测模块属于图像处理 的 内容,采用简单的帧间差分和阈值判断来实现,程序在 MATLAB环境下运行 。 最后,做出了实物,并且实验表明达到了设计目标。 关键词 :89C51 单片机;交通灯;模拟 串行 口 ;运动检 测 ; MATLAB The design of intelligent traffic lights based on 89C51 Abstract: This design unifies the movement examination technolo
4、gy and the traffic light control, besides has the normal traffic light sequential control, when discovered has when situation which runs a red light also can send out reports to the police, thus enable the traffic light control system to have the preliminary visual sensation function.The system is b
5、y the demonstration module, the control module, the movement examination processing module, as well as under the MATLAB environment PC machine and the STC89C51 monolithic integrated circuit real-time serial port connection module and so on compose.In this design key technologies link has simulated a
6、 serial port with the software, namely simulated 江苏技术师范学院毕业设计说明书(论文) 第 3 页 共 67 页 RXD and TXD separately with P1 mouth P1.6 and P1.7, controlled 74HC164 through the simulation serial port to realize the nixietube demonstration; Between the PC machine serial port and the monolithic integrated circuit
7、 original serial port carries on the hardware connection through the MAX232 level transformation chip and the RSR-232 data bus, uses the serial function which in the MATLAB device control toolbox provides to found the serial port equipment object, PC machine to the serial port read-write operation a
8、ll through transfer device control toolbox each kind of function to the serial port object operation realizes.The movement examination module belongs to the imagery processing content, uses during the simple frame the difference and the threshold value judgment realizes, the procedure moves under th
9、e matlab environment.Finally, has made the material object, and tests indicated has achieved the design goal. Key words: 89C51 single-chip computer ; Traffic lights ; Simulation serial port ; Motion detection ; MATLAB 江苏技术师范学院毕业设计说明书(论文) 第 4 页 共 67 页 目 录 引言 .1 第 1 章 交通管理方案论证 .3 2.1 设计任务 .3 2.2 方案介绍
10、.3 第 2 章 交通灯控制系统硬件设计 .7 2.1 单片机概述 .7 2.2 系统构成 .8 2.3 芯片选择与介绍 .9 2.3.1 STC89C51 芯片 .9 2 3 2 89 系列单片机的优点 .9 2 3 3 ATMEL89 系列单片机的分类 .10 2 3 4 I/O 口的功能 .10 2 3 5 结构框图 .11 2 3 6 引脚描述 .12 第 3 章 交通灯控制系统软件设计 3.1 程序设计流程图 .20 3.2 延时的设定 .22 3.2.1 计数器初值计算 .22 3.2.2 相应程序代码 .23 3.3 MATLAB 的运用 .24 3.4 MAX232 实现单片机
11、与 PC机之间的通讯 .31 3.5 程序的主控制循环调用 .35 江苏技术师范学院毕业设计说明书(论文) 第 5 页 共 67 页 3.6 对现有程序的扩充 .36 第 4 章 系统测试 4.1 实验平台 .38 4.2 实验步骤 .38 4.2.1 编写 程序代码 .38 4.2.2 按照系统硬件连线图连接好系统并调试 .38 结论 .41 参考文献 .42 附录 1 .44 附录 2 . .49 附录 3 . 51 附录 4.53江 苏技术师范学院毕业设计说明书(论文) 第 1 页 共 67 页 引言 今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在
12、19世纪就已出现了。 1858 年,在英国伦敦主要 街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。 1868 年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两块以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。 1869 年 1月 2日,煤气灯爆炸,使警察受伤,遂被取消。 1914 年,电气启动的红绿灯出现在美国。这种红绿灯由红绿黄三色圆形的投光器组成,安装在纽约市 5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 1918 年,又出现了带 控制的红绿灯和红
13、外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,当车辆接近时 ,红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下喇叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。 信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。 1968 年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车 辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的
14、车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。 随着经济的发展,交通运输中出现了一些传统方法难以解决的问题。道路拥挤现象日趋严重,造成的经济损失越来越大,并一直保持大比例的增长。现在交通系统已不能满足经济发展的需求。由于生活水平的提高,人们对交通运输的安全性及服务 水平提出了更高的要求。在交通中管理引入单片机交通灯控制代替交管人员在交叉路口服务,有助于提高交通运输的安全性、提高交通管理的服务质量。并在一定程度上尽可能的降低由道路拥挤造成的经济损失,
15、同时也减小了工作人员的劳动强度。 中国车辆数量不断增加,交通管制的工作量越来越大,利用计算机代替人进行高效江 苏技术师范学院毕业设计说明书(论文) 第 2 页 共 67 页 交通管理是必然的发展趋势,而让计算机控制的交通灯拥有类似人类的感知智能,具有很强的现实意义,比如通过摄像机让交通灯控制系统获得视觉感知功能,就可以代替人类 的眼睛,使系统根据所“看到”交通情况自适应改变管制策略,提高了交通管理的自动化水平,使得交通更高效、更顺畅。 江 苏技术师范学院毕业设计说明书(论文) 第 3 页 共 67 页 第 1 章 交通管理方案论证 2.1 设计任务 东西( A)、南北( B)两干道交于一个十字
16、路口,各干道有一组红、左转绿、绿三个指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。红灯的设计时间为 40 秒,绿灯及左转绿灯各为 20 秒,并通过图像处理来检测是否闯红灯 ,如果有闯红灯,通过报警灯报警。设 A道和 B 道的车流量相同。 2.2 方案介绍 把设计任务细化为四个状态,其对应状态:如图 1-1: 图 1-1 状态转换图 A 道为 40 秒红灯, B 道绿灯 20 秒 A 道为 20 秒红灯, B 道左转 20 秒绿灯 A 道为 20 秒绿灯, B 道为 40 秒红灯 A 道左转 20 秒绿灯, B 道为 20 秒红灯 江 苏技术师范学院毕业设计说明书(论文) 第
17、4 页 共 67 页 整个交通灯控制由四个状态组成,可以用程序设计实现,也可用时序逻辑实现 .以下方案就是分别用了这两种方法。 方案 1 设计思想: 采用分模块设计的思想,程序设计实现的基本思想是一个计数器 , 选择一个单片机,其内部为一个计数,是十六进制计数器,模块化后,通过设置或程序清除来实现状态的转换, 由于每一个模块的 计数多不是相同, 这里的各模块是以预置数和计数器计数共同来实现的,所以要考虑增加一个置数模块,其主要功能细分为,对不同的状态输入要产生相应状态的下一个状态的预置数, 如图中 A 道和 B道 ,分别为次干道的置数选择和主干道的置数选择。以主干道为例,简述其设计思想。如前分
18、析,已经确定该系统有四个状态,而置数子模块 可定要将下一状态的预置数准备好,所以很容易得到主干道的置数表如 表 1-1: 表 1-1 置数表 状态 主干道预置数 次干道预置数 00 40 20 01 20 20(左转) 10 20 40 11 20(左转) 20 由该表,就可以通过程序循环的方法设计该模块,主要思想是通过数据判断指令、跳转指令实现,由主控制器计时和中断产生的四个状态去译码,从而得到不同的输出,即预置数,由上分析可用一个计数器和跳转指令去完成的预置数。 而红绿灯的显示也是一样,由状态分析可以得出红绿灯的变化表如 表 1-2: 江 苏技术师范学院毕业设计说明书(论文) 第 5 页
19、共 67 页 表 1-2 红绿灯变化表 状态 主干道灯显示 次干道灯显示 00 红灯 绿灯 01 红灯 左转绿灯 10 绿灯 红灯 11 左转绿灯 红灯 通过这张表就可以用组合电路实现该功能了,可以用数据选择器 的思想,在本系统中,直接通过门电路的译码,接下来就是计数模块了,其主要的功能细分为,要从预置数开始递减计数,一个状态结束,通过判断,通知主控制模块,使之进入下一模块。还有一个必须考虑到的就是,预置数必须在下一个状态来之前准备好,而红绿灯的状态变化,必须和计数状态同步,于是引起预置数变化的程序要超前于系统本身的状态变化,所以,系统中的两个状态转换时,在上一状态结束时设置预置数,而控制红绿灯的是随着系统本身状态的变化而变化,体现在本子电路中就是有两组电路去判断符合的状态。 方案 2 设计思想: 状态转换表如 表 1-3: 表 1-3 状态转换表 状态 主干道灯显示 次干道灯显示 00(15S) 红灯 绿灯 01(05S) 红灯 黄灯 10(15S) 绿灯 红灯 11(05S) 黄灯 红灯 本方案分三步: ( 1)要建立三路信号灯的控制系统,本设计采用 7408 芯片通过组合逻辑控制三路灯的显示关系。