智能信号交通灯微机控制系统设计

上传人:沈*** 文档编号:46005171 上传时间:2021-12-10 格式:DOC 页数:44 大小:1.40MB
收藏 版权申诉 举报 下载
智能信号交通灯微机控制系统设计_第1页
第1页 / 共44页
智能信号交通灯微机控制系统设计_第2页
第2页 / 共44页
智能信号交通灯微机控制系统设计_第3页
第3页 / 共44页
资源描述:

《智能信号交通灯微机控制系统设计》由会员分享,可在线阅读,更多相关《智能信号交通灯微机控制系统设计(44页珍藏版)》请在装配图网上搜索。

1、智能信号交通灯微机控制系统设计(软件设计)摘 要本系统主要介绍了以89C51单片机为核心的新交通控制控制系统的设计。这个系统采用手动控制,定时控制和实时车流量控制。实时车流量控制是交通控制中的一种较新颖且有效的方法,该方法应用最优控制理论中的控制思想,动态、实时地控制当前绿灯时间,在保证交通安全的前提下最大限度地提高了交通效率。软件设计:设计一个具有手动和自动方式切换的,可以检测并记录各个方向车流量的,并且能通过控制器运算合理分配各方向指示灯显示时间的智能交通灯系统。要求南北方向和东西方向两个交叉路口的车辆交替运行,两个方向能根据车流量大小自动调节通行时间,车流量大,通行时间长,车流量小,通行

2、时间短。本设计基于仿真软件Proteus,采用c语言编程设计。关键词: 89C51,定时控制,实时控制,紧急情况,c语言,仿真Design of intelligent signal traffic light control system by microcomputer (Software)ABSTRACTThe system introduces the 89C51 microcontroller as the core of the new traffic control system design . This system with manual control, timing c

3、ontrol, and real-time traffic control. Real-time traffic control traffic control is a relatively new and effective method of optimal control theory control theory , dynamic , real-time control of the current green time , to ensure the traffic safety under the premise of maximizing traffic efficiency

4、.Software Design : Design a switch with manual and automatic mode , you can detect and record traffic in all directions , and the rational allocation of computing through the controller to display the time in each direction indicator intelligent traffic light system . North-south and east-west direc

5、tion requires two intersections of vehicles run alternately in both directions can automatically adjust the size according to traffic flow travel time , traffic is heavy, pass a long time, little traffic , access time is short.Keywords : 89C51, Timing control , Real-time control , Emergency situatio

6、ns , C language , Simulation目 录第一章 绪论11.1交通信号灯的作用与研究意义11.1.1 交通信号灯的作用11.1.2交通信号灯的研究意义11.2交通信号灯的发展历史21.3国内外发展现状31.4设计概述3第二章 使用工具概述52.1单片机概述52.2 单片机89C51概述62.2.1主要特性62.2.2特性概述72.3 所用编程语言C语言概述72.3.1 C语言概述72.3.2历史发展72.4 编程软件Keil uVision292.5仿真软件protues102.5.1概述102.5.2功能特点11第三章 软件方案133.1 智能交通灯实现功能概述133.1

7、.1交通灯基本运行说明133.1.2交通信号亮灯的顺序设定153.1.3 开关按键实现各种功能转换过程163.1.4 三种状态模式简介163.1.5基本原理173.1.6信号指示灯的真值表183.2 程序框图19第四章 智能交通灯方案的局部仿真244.1仿真244.2仿真总结26第五章 总结27参考文献28附录29程序29致谢39第一章 绪论1.1交通信号灯的作用与研究意义1.1.1 交通信号灯的作用 交叉路口是城市交通系统重要的组成部分,是城市道路网的咽喉,其通行能力制约着城市道路的通达,是影响道路畅通的瓶颈。众所周知,提高交叉路口通行能力的最有效办法是修建立交桥。鉴于我国道路基础设施现状以

8、及从各个城市的经济水平情况,立交桥尚不能推广普及。因此,人们更多的采用交通控制这一方式来充分利用交叉路口的时空资源,按照现实的交通流给予相应的最适宜的交通控制,最大程度的提高交叉路口的通行能力,不但能提高车辆通过交叉路口的速度、减少延误、节约人们的出行时间,同时能避免该交叉路口发生堵车,影响交叉路口临近路段及更远路段的顺利通行。 由于修建道路并不能从根本上解决城市交通拥挤的问题,人们开始寻求新的解决途径。随着人们对控制理论的认识和利用的不断深入以及计算机技术的发展,利用控制理论和计算机技术来解决交通问题显得越来越重要了。交通信号灯由红灯、绿灯、黄灯组成。红灯表示禁止通行,绿灯表示准许通行,黄灯

9、表示警示。交通信号灯分为机动车信号灯、人行横道信号灯。交通信号灯用于道路平面交叉路口,通过对车辆、行人发出行进或停止的指令,使各同时到达的人、车交通流尽可能减少相互干扰,从而提高路口的通行能力,保障路口畅通和安全。 (1)机动车信号灯:由绿黄红三种颜色的灯组成,绿灯亮时,准许车辆通行,但转弯车辆不得妨碍被放行的直行车辆、行人通行;黄灯亮时,已越过停止线的车辆可继续通行;红灯亮时,禁止车辆通行。 (2)人行横道信号灯:人行横道信号灯由绿灯和红灯组成,绿灯亮时,准许行人通过人行横道;红灯亮时,禁止行人进入人行横道,但是已经进入人行横道的,可以继续通过或者在道路中心线处停留等候。1.1.2交通信号灯

10、的研究意义随着社会经济的发展,城市交通问题越来越引起人们关注。人、车、路三者关系的协调已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据监测、交通灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。交通灯的出现使交通得以有效管制。对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。但是随着社会、经济的快速发展,原先的交通灯控制系统已经不能适应现在日益繁忙的交通状况。如何改善交通灯控制系统,使其适应现在的交通状况,成为研究的课题。传统的十字路口交通控制灯,通常的做法是:事先经过车辆流量的调查,运用统计的方法将两个方向红绿灯的延时

11、预先设置好。然而,实际上车辆流量的变化往往是不确定的,有的路口在不同的时段甚至可能产生很大的差异。即使是经过长期运行、较适用的方案,仍然会发生这样的现象:绿灯方向几乎没有什么车辆,而红灯方向却排着长队等候通过。这种流量变化的偶然性是无法建立准确模型的,统计的方法已不能适应迅猛发展的交通现状,更为现实的需要是能有一种能够根据流量变化情况自适应控制的交通灯。随着科学技术的日新月异,自动化程度要求越来越高,原有的交通灯装置远远不能满足当前高度自动化的需要。智能信号交通灯微机控制系统集成自动控制技术、计量技术、新传感器技术、计算机管理技术于一体的机电一体化产品;充分利用计算机技术对生产过程进行集中监视

12、、控制管理和分散控制;充分吸收了分散式控制系统和集中控制系统的优点,采用标准化、模块化、系统化设计,配置灵活、组态方便。为了实现交通道路的管理,力求交通管理先进性、科学化,用智能信号交通灯微机控制系统可实现交通灯管制,以便使该系统简单、经济,能够有效地疏导交通,提高交通路口的通行能力。1.2交通信号灯的发展历史 红绿灯的起源可追溯到19世纪初的英国。那时,在英国的约克城,着红装的女人表示“已婚”,而着绿装的女人则是“未婚”。当时,伦敦议会大厦前经常发生马车轧人的事故。受红绿装启发,英国机械师德?哈特于1868年设计了红、绿两色的煤气交通信号灯,由一名手持长杆的警察通过牵动皮带来转换灯的颜色。可

13、惜的是,这盏灯的历史只有23天,中断的原因是煤气灯突然爆炸使一位警察殉职。 1914年,克里夫兰市率先在街道中恢复交通信号灯,随后纽约、芝加哥等城市也开始出现。这时的交通信号灯已从煤气进化为电气,这与现代的交通信号灯已经没有多少差距,除了信号灯本身,美国人还完善了信号控制系统。中国最早的红绿灯出现在上海的英租界。有资料显示,早在1923年,上海公共租界开始在部分十字路口使用机械装置指示车辆停止和前进,该年4月13日,南京路两个重要十字路口,最先安装红绿灯交通信号装置。图为上世纪20年代,上海租界印度锡克族交警用手控制红绿交通信号灯。 关于黄色信号灯的发明有不同说法。一种说法称黄灯的发明者是中国

14、人胡汝鼎,时间是1927年。据解放日报报道,这种说法并不可靠。1899年,美国铁路系统就使用了三色灯,其中黄色代表“谨慎”。公路方面,1920年10月,美国就已经安装了三色的信号灯。另一种说法是美国警察威廉?波茨发明了第一盏红黄绿三色、四方向的交通信号灯,并在1920年10月投入使用,被安装在了底特律伍德沃德大街和福特街的交界处,其三色灯光的含义与今天基本一致,亨利福特纪念馆收藏了这一文物并进行展出。 1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定:绿灯是通行信号,面对绿灯的车辆可以相应的直行、左转弯或右转弯,除非另一种标志禁止某一种转向。转弯车辆都必须让合法地正在路口

15、内行驶的车辆,过人行横道的行人更要优先通行;红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车;黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。此后,这一规定在全世界开始通用。1.3国内外发展现状当前世界广泛使用的最具代表性却有实施的城市道路交通信号控制系统有英国的TRANSYT与SCOOTS交通控制系统和澳大利亚的SCATS系统。在信号机的发展过程中,自适应理论一直受到各研究机构的欢迎,比如上面所说的SCOOTS与SCATS系统。最近几年,国外仍偏向于引进自适应理论来对交通控制系统进行研制,特别是美国有十几个大学或研制机构正在研制

16、自适应交通信号控制系统,具有代表性的有美国亚利桑那大学研制的RHODES. 我国交通领域的发展起步比较晚,基本是从新中国建国之后,随着各方面的条件的成熟以及社会发展的要求,才建立及健全交通系统的。城市交通是一个高度综合而又复杂的问题,必须从政策,机构,体质,管理,收费价格,基础设施和投资各个方面同时入手解决。国内城市交通控制系统研究状况 国内应用和研究城市交通控制系统的工作起步较晚,20世纪80年代以来,国家一方面进行以改善城市市中心交通为核心的UTSM(urban traffic system manage)技术研究;另一方面采取引进与开发相结合的方针,建立了一些城市道路交通控制系统。以北京

17、、上海为代表的大城市,交通控制系统主要是简易单点信号机、SCOOT系统、TRANSYT系统和SCATS系统其中几个结合使用;而如湘潭、岳阳等国内中小城市,交通控制系统主要还是使用国产的简易单点信号机和集中协调式信号机。这些信号系统虽然取得了较好的效果,但我国实际情况决定了需要对这些系统进行改进。与国外相比,我国目前的交通控制很落后,目前中国城市的问题呈现如下些问题:管理不力,秩序混乱;没有科学、合理、有效的城市交通监控系统。由此带来的后果表现为道路的通行能力明显低于设计要求且波动性大、出行难,交通事故发生率高,交通环境恶化,出行者易疲劳等问题。 我国城市经济和社会的高速发展使得社会对交通的需求

18、急剧增加,也对此提出了严峻的挑战。因此我国城市发展的规划,建设以及运行,在广泛借鉴和吸取国外先进经验的基础上应当建立并完善适合我国国情的城市交通系统。1.4设计概述本设计灯控制系统为设计对象,以AT89C51片机为控制器,设计一个具有手动和自动方式切换的,可以检测并记录各个方向车流量的,并且能通过控制器运算合理分配各方向指示灯显示时间的智能交通灯系统。(1)设计一个十字路口的交通灯控制电路,要求南北方向和东西方向两个交叉路口的车辆交替运行,两个方向能根据车流量大小自动调节通行时间,车流量大,通行时间长,车流量小,通行时间短。(2)每次绿灯变红灯时,要求黄灯先亮3S,才能变换运行车辆。(3)东西

19、方向、南北方向车道除了有红、黄、绿灯指示外,每一种灯亮的时间都用LED显示器显示(采用倒计时方法)。(4)具有手动控制、定时控制和实时控制。本设计基于仿真软件Proteus,采用c语言编程设计。设计中增加了车流量检测电路,车流量较大时可改变十字路口的各个方向的通车时间,使交通更顺畅,减少堵塞。自动调整红绿灯时间,实时的控制当前交通灯时间使LED显示器进行倒计时工作并与状态灯保持同步,在保持交通安全的同时最大限度的提高交通的顺畅交替运行,大大提高交通运输的运行效率。 用proteus 做模拟仿真,该软件是多功能的EDA软件,真正实现了虚拟物理原型的功能,在目标板没有制作或投产前,就可以对硬件系统

20、的功能、合理性和性能指标进行充分调整并可以在没有硬件的情况下,进行相应的程序设计和调试。第二章 使用工具概述2.1单片机概述单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit), 常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器,控制器,存储器,输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解

21、计算机原理与结构的最佳选择。它最早是被用在工业控制领域。 由于单片机在工业控制领域的广泛应用,单片机由仅有CPU的专用处理器芯片发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的8080是最早按照这种思想设计出的处理器,当时的单片机都是8位或4位的。其中最成功的是INTEL的8051,此后在8051上发展出了MCS51系列单片机系统。因为简单可靠而性能不错获得了很大的好评。尽管2000年以后ARM已经发展出了32位的主频超过300M的高端单片机,直到现在基于8051的单片机还在广泛的使用。在很多

22、方面单片机比专用处理器更适合应用于嵌入式系统,因此它得到了广泛的应用。事实上单片机是世界上数量最多处理器,随着单片机家族的发展壮大,单片机和专用处理器的发展便分道扬镳。 现代人类生活中所用的几乎每件有电子器件的产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电子产品中都含有单片机。 汽车上一般配备40多片单片机,复杂的工业控制系统上甚至可能有数百片单片机在同时工作!单片机的数量不仅远超过PC机和其他计算机的总和,甚至比人类的数量还要多。应用分类单片机作为计算机发展的一个重要分支领域,根据发展情况,从不同角度单片机大致可以分为通用型/专用型、总线型/非总线型及工

23、控型/家电型。线型这是按单片机是否提供并行总线来区分的。总线型单片机普遍设置有并行地址总线、 数 据总线、控制总线,这些引脚用以扩展并行外围器件都可通过串行口与单片机连接,另外,许多单片机已把所需要的外围器件及外设接口集成一片内,因此在许多情况下可以不要并行扩展总线,大大减省封装成本和芯片体积,这类单片机称为非总线型单片机。2.2 单片机89C51概述AT89C51是一种带4K字节FLASH存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪

24、存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如图2.1所示 图2.1 AT89C51外形及引脚排列Fig. 2.1 AT89C51 shape and pin arrangement2.2.1主要特性(1)与MCS-51 兼容 。(2)4K

25、字节可编程FLASH存储器。(3)寿命:1000写/擦循环。(4)数据保留时间:10年。(5)全静态工作:0Hz-24MHz。(6)三级程序存储器锁定(7)1288位内部RAM。(8)32可编程I/O线。(9)两个16位定时器/计数器。 (10)5个中断源。(11)可编程串行通道。(12)低功耗的闲置和掉电模式(13)片内振荡器和时钟电路.。2.2.2特性概述AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的

26、静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。2.3 所用编程语言C语言概述2.3.1 C语言概述C语言是1972年由美国的Dennis Ritchie设计发明的,并首次在UNIX操作系统的DEC PDP-11计算机上使用。它由早期的编程语言BCPL(Basic Combined Programming Language)发展演变而来,在1970年,AT&T贝尔实验室的Ken Thompson根据BCPL语言设计出较先进的并

27、取名为B的语言,最后导致了C语言的问世。 而B语言之前还有A语言,取名自世界上第一位女程序员Ada(艾达)。随着微型计算机的日益普及,出现了许多C语言版本。由于没有统一的标准, 使得这些C语言之间出现了一些不一致的地方。为了改变这种情况,美国国家标准研究所(ANSI)为C语言制定了一套ANSI标准,成为现行的C语言标准。注:国际标准化组织ISO也制定的C语言的标准,被很多编译器所采用,如:GCC等。C语言是世界上最流行、使用最广泛的高级程序设计语言之一。2在操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,许多大型应用软件都是用C语言编写的。C语言绘图能力强,具

28、有可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画。它是数值计算的高级语言。2.3.2历史发展早期发展C语言之所以命名为C,是因为 C语言源自Ken Thompson(如图2.2)发 图2.2 C语言创始人D.M.RitchieFig. 2.2 C language founder D.M.Ritchie明的B语言,而 B语言则源自BCPL语言。 1967年,剑桥大学的Martin Richards对CPL语言进行了简化,于是产生了BCPL(Basic Combined Programming Language)语言。 1970年,美国贝尔实验室的 Ken Tho

29、mpson。以BCPL语言为基础,设计出很简单且很接近硬件的B语言(取BCPL的首字母)。并且他用B语言写了第一个UNIX操作系统。 1972年,美国贝尔实验室的 D.M.Ritchie 在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,这就是C语言。 1977年,Dennis M.Ritchie发表了不依赖于具体机器系统的C语言编译文本可移植的C语言编译程序。K&R C 1978年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言。Brian Kernighan 和 Dennis Ritchie 出版了一本书,名叫The C Programming

30、 Language。这本书被 C语言开发者们称为K&R,很多年来被当作 C语言的非正式的标准说明。人们称这个版本的 C语言为K&R C。ANSI C 1970到80年代,C语言被广泛应用,从大型主机到小型微机,也衍生了C语言的很多不同版本。 1983年美国国家标准局 (American National Standards Institute,简称ANSI)成立了一个委员会,来制定 C语言标准。 1989年 C语言标准被批准,被称为 ANSI X3.159-1989 Programming Language C。这个版本的C语言标准通常被称为ANSI C。C99 1990年,国际标准化组织IS

31、O(International Organization for Standards)接受了89 ANSI C 为I SO C 的标准(ISO9899-1990)。1994年,ISO修订了C语言的标准。1995年,ISO对C90做了一些修订,即“1995基准增补1(ISO/IEC/9899/AMD1:1995)”。 1999年,ISO又对C语言标准进行修订,在基本保留原来C语言特征的基础上,针对应该的需要,增加了一些功能,命名为ISO/IEC9899:1999。在ANSI标准化后,C语言的标准在一段相当的时间内都保持不变,尽管C继续在改进。(实际上,NormativeAmendment1在19

32、95年已经开发了一个新的C语言版本。但是这个版本很少为人所知。)它被ANSI于2000年3月采用。C11 2001年和2004年先后进行了两次技术修正。 2011年12月8日,ISO正式公布C语言新的国际标准草案:ISO/IEC 9899:2011,即C11。2.4 编程软件Keil uVision2Keil uVision2是德国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,使用接近于传统C语言的语法来开发,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用,而且大大的提高了工作效率和项目开发周期,他还能嵌入汇编,您可以在关键的位置嵌

33、入,使程序达到接近于汇编的工作效率。KEILC51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效,快速的特点。C51编译器的功能不断增强, 使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到uVision2的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uVision2 IDE可为它们提供单一而灵活的开发环境。图2.3 Keil uVision2Fig. 2.3 Keil uVision2Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面,使您能在很短的时间内就能学会

34、使用Keil C51来开发您的单片机应用程序 。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。操作界面如图2.4图2.4 Keil uVision2操作界面Fig. 2.4 Keil uVision2 Operator interface2.5仿真软件protues2.5.1概述Protues软件是英国Labcenter electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及

35、外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持

36、IAR、Keil和MATLAB等多种编译图2.5 Proteus 7Fig. 2.5 Proteus 72.5.2功能特点一般特点Protues软件具有其它EDA工具软件(例:multisim)的功能。这些功能是:(1)原理布图(2)PCB自动或人工布线(3)SPICE电路仿真革命性的特点:(1)互动的电路仿真。用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。(2)仿真处理器及其外围电路。可以仿真51系列、AVR、PIC、ARM、等常用主流单片机。还可以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果

37、。配合系统配置的虚拟逻辑分析仪、示波器等,Protues建立了完备的电子设计开发环境。操作界面如图2.6图2.6 Proteus 7原件操作Fig. 2.6Proteus 7 Original Operation图2.7 Proteus 7操作界面Fig. 2.7 Proteus 7 Operator interface第三章 软件方案 交通信号控制系统的程序设计采用的是单片机C语言设计。在软件的设计中采用模块化设计,即将系统分成不同的功能。每个模块都是一个相对独立特定子功能。这种设计是软件结构清晰,测试和调试都相对容易。3.1 智能交通灯实现功能概述本设计灯控制系统为设计对象,以AT89C5

38、2单片机为控制器,设计一个具有手动和自动方式切换的,可以检测并记录各个方向车流量的,并且能通过控制器运算合理分配各方向指示灯显示时间的智能交通灯系统。(1)设计一个十字路口的交通灯控制电路,要求南北方向和东西方向两个交叉路口的车辆交替运行,两个方向能根据车流量大小自动调节通行时间,车流量大,通行时间长,车流量小,通行时间短。(2)每次绿灯变红灯时,要求黄灯先亮3S,才能变换运行车辆。(3)东西方向、南北方向车道除了有红、黄、绿灯指示外,每一种灯亮的时间都用LED显示器显示(采用倒计时方法)。(4)具有手动控制、定时控制和实时控制。3.1.1交通灯基本运行说明对于交通信号灯来说,应该有东西南北共

39、四组灯,但由于同一道上的两组的信号灯的显示情况是相同的,所以只要用两组就行了,因此,采用单片机内部的I/O口上的P1口中的6个引脚即可来控制6个信号灯。通过编写程序,实现对发光二极管的控制,来模拟交通信号灯的管理。每延时一段时间,灯的显示情况都会按交通灯的显示规律进行状态转换。通过延时时间送显,可以在原有的交通信号灯系统的基础上,增添其倒计时间的显示功能,实现其功能的扩展。本系统十字路口的相位及步伐设置为四相位:第一相位为东西向直行,禁止左转及南北直行;第二相位为东西左转,禁止直行及南北左转;第三相位是南北直行,禁止左转及东西直行;第四相位是南北左转,禁止直行及东西左转。而在这四个相位运行中,

40、右转是不被禁止的,可以随时通过的。其相位方案见图3.1 第一相位 第二相位 第三相位 第四相位图3.1十字路口四相位信号控制示意图Fig.3.1 Schematic phase signal controlled crossroads four设有一个南北(SN)向和东西(WE)向的十字路口,两方向各有两组相同交通控制信号灯,每组各有四盏信号灯,分别为直行信号灯(G)、左拐信号灯(L)、红灯(R)和黄灯(Y),交通控制信号灯布置如图3.2所示。图3.2十字路口交通控制信号灯布置示意图Fig.3.2 Schematic layout of intersection traffic control

41、 lights3.1.2交通信号亮灯的顺序设定 由于交叉路口不仅是车辆通过,而且行人也一样要穿越马路,有些较大的十字路口都设有人行地下通道或过街天桥,这样避免了行人与车辆抢道现象,提高了交叉路口的通行率。但是目前还有许多路口还没有修建地下通道,这样在步伐设定中就要考虑对行人绿灯的控制,本系统交通灯灯色分为:直行绿灯、左转绿灯、黄灯、红灯和人行道红、绿灯如图3.3。图3.3十字路口交通控制信号灯顺序示意图Fig.3.3 Intersection traffic control lights Sequence Diagram3.1.3 开关按键实现各种功能转换过程开关按键硬件电路如图3.4下图3.

42、4开关按键图Fig.3.4 Switch button Figure硬件电路图中,单刀三掷开关作为控制三种模式的主控开关,控制交通灯的三种运行模式,分别为定时运行、实时车流量控制运行、手动控制运行。时间加、时间减两个按键通过中断可以人为设定交通灯显示时间。双功能按键在手动模式下,按下则所有红灯亮,为紧急模式。松开时,为人为控制交通灯模式,通过单刀双掷开关来选择东西放行还是南北放行。 3.1.4 三种状态模式简介(1) 定时模式默认时间 东西人行道红灯,南北人行道绿灯,东西红灯,南北绿灯 25秒南北人行道红灯,东西人行道红灯,南北黄灯,东西红灯 3秒南北左拐绿灯,东西红灯,南北红灯 10秒南北黄

43、灯,东西红灯 3秒南北人行道红灯,东西人行道绿灯,南北红灯,东西绿灯 25秒南北人行道红灯,东西人行道红灯,南北红灯,东西黄灯 3秒东西左拐绿灯,南北红灯,东西红灯 10秒南北红灯,东西黄灯 3秒时间按键通过外部中断,对定时模式中的时间进行加减。时间加按键按下,东西方向绿灯时间加5秒,东西方向红灯时间减5秒,南北方向绿灯时间减5秒,南北方向红灯时间加5秒。时间减按键按下,东西方向绿灯方向减5秒,东西方向红灯时间减5秒,南北时间绿灯方向加5秒,南北方向红灯时间减5秒更改后的时间送入时间寄存器,交通灯系统使用更改后的时间运行。(2) 车流量实时控制运行模式通过外部车流量检测装置,读取输入脉冲的上升

44、沿从而读取每分钟汽车通过的流量,通过计算,得到修改后的时间参数送入时间寄存器,交通灯系统使用更改后的时间运行。(3) 手动控制模式手动控制模式下,紧急按键按下,全部红灯亮,进入紧急模式。按键松开,手动控制选择交通灯模式。模式一:南北方向红灯亮,南北方向绿灯灭;东西方向绿灯亮,东西方向红灯灭。3.1.5基本原理由于本设计采用单片机AT89C51设计交通灯控制系统,用单片机直接控制信号灯的状态变化,基本上可以指挥交通的具体通行,当然,接入LED数码管就可以显示倒计时以提醒行使者,更具人性化。据此,本设计系统以单片机为控制核心,连接成最小系统,由按键设置模块产生输入,信号灯状态模块,LED倒计时模块

45、接受输出。系统的总体框图如图3所示。单片机AT89C51最小系统外围接口电路LED数码管显示红黄绿信号灯按键控制电路图3.4系统总体框图Fig.3.4 Overall system block diagram3.1.6信号指示灯的真值表 交通信号灯的状态的变换是P1口赋值的不同表现出来的,指示灯不同状态的真值如表3.1所示。表3.1 信号指示灯真值表Table3.1 Signal indicator Truth 灯类别状态SN-RSN-YSN-GWE-RWE-YWE-GLSNLWESN直行11001111SN黄灯闪烁10110111SN左行01101101WE直行01101111WE黄灯闪烁0

46、1110111WE左行011011102、共阳极数码管显示P0口赋值如表3.2所示表3.2 共阳极数码管显示P0口赋值Table3.2 Common anode LED display P0 port assignment数字0123456789P1值0xC00xF90xA40xB00x990x920x820xF80x800x903.2 程序框图系统程序由系统主程序,显示子程序,中断处理,手动控制子程序,定时控制子程序,实时控制子程序。主程序调用各功能子程序,并将它们联系起来,从而形成一个整体,以实现对系统的管理。 程序框图是算法的一种,又叫流程图,是一种用规定的程序框、流程线及文字说明来准确

47、、直观地表示算法的图形。程序框图中,圆角长方形表示起、止框,平行四边形表示输入、输出框,长方形表示处理框、执行框,用于赋值、计算,菱形表示判断框,成立写是或Y,不成立则写否或N。程序框图的三种基本逻辑结构:顺序结构、条件结构、循环结构. 顺序结构是最简单的结构,也是最基本的结构,循环结构必然包含条件结构. 这三种基本逻辑结构是相互支撑的,它们共同构成了算法的基本结构,无论怎样复杂的逻辑结构,都可以通过它们来表达. 如下图所示为系统的主程序流程框图,系统主程序在上电复位后,首先将系统的状态标志位、秒计数清零,然后初始化设置,即设置堆栈指针,初始化RAM单元和地址等,接着四面启动黄灯闪烁,表明此时

48、路口的交通灯处于不稳定状态,司机需要小心驾驶。随后进行各控制判断,再进入相应的程序处理。若经检测无误后,即进入正常的工作。开始初始化全部黄灯亮手动控制?读取红绿灯时间参数东西人行道红灯南北人行道绿灯东西红灯,南北绿灯显示时间,倒计时南北人行道红灯东西人行道红灯南北黄灯,东西红灯显示时间,倒计时南北左拐绿灯东西红灯显示时间,倒计时南北人行道红灯东西人行道绿灯南北红灯,东西绿灯显示时间,倒计时南北黄灯,东西红灯显示时间,倒计时南北人行道红灯东西人行道红灯南北红灯,东西黄灯显示时间,倒计时南北红灯,东西黄灯东西左拐绿灯南北红灯显示时间,倒计时显示时间,倒计时车流量控制车流量检测实时子程序N车流量控制

49、YNYN手动控制子程序图3.2.1主程序框图Fig.3.2.1 Main diagram在交通信号控制系统中,设置手动控制模式。在手动模式下,按下相应的按钮,则执行灯状态。开始是否紧急模式东西方向绿灯?全部红灯亮东西方向绿灯南北方向红灯南北方向绿灯东西方向红灯YNYN返回图3.2.2手动子程序框图Fig.3.2.2 Manually subdiagram开始接受车流量数据东西方向车流量-南北方向车流量=DD0T5南北绿灯时间20s东西方向绿灯时间加5秒,红灯减5秒南北方向红灯时间加5秒,绿灯减5秒南北方向绿灯时间加5秒,红灯减5秒东西方向红灯时间加5秒,绿灯减5秒东西绿灯时间20s修改后时间送

50、入Flash返回NYNNYYNYYN南北绿灯时间20秒,红灯40秒东西绿灯时间40秒,红灯20秒南北绿灯时间40秒,红灯20秒东西绿灯时间20秒,红灯40秒图3.2.3车流量检测子程序Fig.3.2.3 Traffic detection subroutine红灯时间+5s直行时间+5s按键为+红灯时间=100?红灯时间100s,绿灯80s,左拐20s送入FlashNYY红灯时间-5s直行时间-5s按键为-红灯时间=40?红灯时间40s,绿灯20s,左拐20s送入FlashNYYN红灯60s,绿灯40s左拐20s送入FlashNY开始,有按键按下是干扰?中断,保存交通灯值N返回返回中断值图3.

51、2.3按键中断子程序Fig.3.2.3 Key interrupt subroutine第四章 智能交通灯方案的局部仿真4.1仿真PROTEUS嵌入式系统仿真软件在设计时已经注意到和单片机各种编译程序的整合了,具备强大的软件仿真和硬件仿真功能。具体步骤如下:(1)首先运行PROTEUS VSM 的ISIS,选择“源代码”设置代码生成工具菜单项,将出现如图所示定义代码生成工具对话框。图4.1定义代码生成工具对话框Fig.4.1 Custom code generation tool box 选择“源代码”添加/移除源代码菜单项对话框,如图所示:图4.2添加/删除源文件对话框Fig.4.2 Add

52、 / Delete Source Files dialog box在在目标处理器选项区,单击下三角按钮,选择ASEM52工具。(2) 单击“新建”按钮,将出现如图所示对话框。图4.3创建源代码对话框Fig.4.3 Creating a Source dialog创建好的110.ASM文件,即完成了文件的创建。图4.4 AT89C51添加程序文件Fig 4.4 AT89C51 Add Program Files电路图绘制完成后, 再添加AT89C51 的应用程序。将鼠标移至AT89C51 上, 单击鼠标右键使之处于选中状态, 在该器件上单击左键, 打开如图11所示的对话框。在 Program F

53、ile 栏添加编译好的十六进制格式的程序文件110.hex(可以接受3 种格式的文件) ,给AT89C51输入晶振频率,此处默认为12MHZ, 单击“OK”按钮完成程序添加工作, 下面就可以进行系统仿真了。单击主界面下方的按钮开始系统仿真。PROTEUS VSM 所进行的是一种交互式仿真, 在仿真进行中可以对各控制按钮、开关等进行操作, 系统对输入的响应会被真实的反映出来如图4.5。图4.5 交通灯仿真界面Fig 4.5 Traffic light simulation interface4.2仿真总结 这次仿真很好的实现了课题任务的要求,通过这次仿真发现和解决了很多问题,例如,在调试过程中还

54、是遇到了硬件电路图布局不合理,按键抖动的现象,不过通过调整布局电路图趋于规范合理,通过增加去抖动函数显示也稳定了很多。第五章 总结随着社会经济的发展,城市交通问题越来越引起人们关注。人、车、路三者关系的协调已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据监测、交通灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。交通灯的出现使交通得以有效管制。对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。但是随着社会、经济的快速发展,原先的交通灯控制系统已经不能适应现在日益繁忙的交通状况。如何改善交通灯控制系统,使其适应现在的交通状

55、况,成为研究的课题。本系统以AT89C51单片机为核心,程序是有C语言实现,用keil软件进行编译,可大大加快调试进度。设计的交通灯可用于十字路口的车流量控制车辆的交通管理,显示采用8数码管,可以直观的显示红绿灯的开放和关闭的时间;交通灯的通行时间可根据大中小城市进行更改。南北通行时间相同,东西通行时间相同,不能单独控制。通过这次毕业设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是C语言)的掌握方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。通过这次毕业设计,我不仅将理论很

56、好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新可以是在原有的基础上进行改进,使之功能不断完善,成为真己的东西。在整个毕业设计过程中,我花费了大量的时间和精力,更重要的是,我在学会创新的基础上,同时还懂得合作精神的重要性,学会了与他人合作。我在老师的精心指导和严格要求下,获得了丰富的理论知识,极大地提高了实践能力,单片机领域这对我今后进一步学习计算机方面的知识有极大的帮助。在此,忠心感谢老师以及许多同学的指导和支持。我会继续努力的学习,大胆创新,使自己得到更大的提升。参考文献1 赵佩华.单片机接口技术及应用M.北京:机械工业出版社 ,2003.2

57、 沈红卫.单片机应用系统设计实例与分析M.北京:航空航天大学出版社 ,2003.3 李朝青.单片机原理及接口技术(修订版)M.北京:北京航空航天大学出版社,1998.4 李广弟.单片机基础M.北京:北京航空航天大学出版社,1992.5 何立民.单片机应用技术大全M.北京:北京航空航天大学出版社, 1994.6 张毅刚.单片机原理及接口技术M.哈尔滨:哈尔滨工业大学出版社,1990.7 谭浩强.单片机课程设计M. 北京:清华大学出版社,1989.8 赵晶.Protel99高级应用M.北京:人民邮电出版社,20019 沈精虎.电路设计与制版Protel99入门与提高M.人民邮电出版社,2004.1

58、0 张毅刚.单片机原理及接口技术M.哈尔滨:哈尔滨工业大学出版社,1990.11 郭天祥.51单片机C语言教程:电子工业出版社,201212 施威铬.PIC单片机轻松入门M.北京:清华大学出版社,200113 何信龙.PIC16F87x快速上手M.北京:清华大学出版社,200114 沈精虎.电路设计与制版Protel99入门与提高M.人民邮电出版社,2004.15 陈海宴.51单片机原理及应用M.北京航空航天大学出版社,2010.16 刘守义等.单片机技术基础M.西安电子科技大学出版社,2007.17 钟富昭等.8051单片机典型模块设计与应用M.人民邮电出版社,2007.18 李平等.单片机

59、入门与开发M.机械工业出版社,2008.19 .附录程序头文件与定义控制位#include #include #include /插入延时头文件#define uchar unsigned char#define uint unsigned int/*定义控制位*/sbit EW_LED2=P23;sbit EW_LED1=P22;sbit SN_LED2=P21;sbit SN_LED1=P20;sbit SN_Yellow=P16;sbit EW_Yellow=P12;sbit EW_Manred=P24; /东西人行道线红灯sbit SN_Manred=P25; /南北人行道线红灯sbit Busy_LED=P27; /交通繁忙指示灯sbit Special_Button=P32;/交通急救按键sbit SET=P33; /恢复初始值按键bit Flag_SN_Yellow;/南北黄灯标志位bit Flag_EW_Yellow;bit EW_Manred_temp;bit SN_Manred_temp;/-char Time_EW;/东西方向倒计时单元char Time_SN;uchar P1_temp;/灯的临时变量,保存中断前灯的状态uchar EW,SN,EWL,SNL;/程序初始化赋值uchar EW1 _at_ 0x3

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!