收藏 分销(赏)

基于80C51单片机的十字路口交通信号灯模拟控制系统的设计.docx

上传人:胜**** 文档编号:941116 上传时间:2024-04-08 格式:DOCX 页数:30 大小:1.10MB
下载 相关 举报
基于80C51单片机的十字路口交通信号灯模拟控制系统的设计.docx_第1页
第1页 / 共30页
基于80C51单片机的十字路口交通信号灯模拟控制系统的设计.docx_第2页
第2页 / 共30页
基于80C51单片机的十字路口交通信号灯模拟控制系统的设计.docx_第3页
第3页 / 共30页
基于80C51单片机的十字路口交通信号灯模拟控制系统的设计.docx_第4页
第4页 / 共30页
基于80C51单片机的十字路口交通信号灯模拟控制系统的设计.docx_第5页
第5页 / 共30页
点击查看更多>>
资源描述

1、 毕业论文(设计)题 目 基于80C51单片机的十字路口交通信号灯模拟控制系统的设计学生姓名 学 号 专业班级 电气工程与自动化 指导教师 完成时间: 2016 年 6 月 3 日 目 录摘 要IABSTRACTII第1章 绪论11.1 课题研究的背景及意义11.2 当前的研究现状21.3 本文的主要工作和难点3第2章 道路交通灯的总体系统的设计方案52.1 总体设计方案52.1.1 系统机构总框架52.1.2 交通管理的方案论证52.1.3 控制电路框图62.2 电路的工作原理62.3 本章小结7第3章 硬件设计83.1 MCS-51单片机介绍83.1.1 简介83.1.2 管脚说明123.

2、1.3 时钟脉冲电路133.1.4 复位电路143.1.5 电源电路143.1.6八段数码管结构153.1.7红外线对射传感器153.2 硬件原理图223.3 本章小结23第4章 软件设计244.1 主程序设计244.2 初始化程序254.3 延时程序254.4中断程序254.5 本章小结25第5章 调试分析265.1 KEIL51软件简介265.1.1 系统概述265.1.2 单片机软件开发系统的整体结构275.2 调试步骤285.2.1 逻辑的调试285.2.2 模拟电路板的调试305.3调试中的问题及解决方案305.4 本章小结31结论32致谢33参考文献34附录35 实物图35 源程序

3、37摘 要交通信号灯的出现,使交通得以有效管制,对于疏导交通流量,提高道路通行能力,减少交通事故有明显效果。本人选择制作交通灯作为课题加以研究。分析了现代城市交通控制与管理问题的现状,结合城乡交通的实际情况阐述了交通灯控制系统的工作原理,利用单片机89S51为核心部件,外加定时器、复位电路、晶振电路、显示电路、车流量电路等,设计一个比较符合交通规则的车行道基本的交通灯的功能,给出了一种简单实用的城市交通灯控制系统的硬件电路设计方案。本文主要介绍了一个基于由80C51单片机、八段数码管、红外线传感器、交通灯演示组成。该系统可以方便的利用检测车流量来实现交通灯控制。该系统结构简单,可靠性高,修改程

4、序简单(方便加入或改变功能),有较好的应用前景。 关键词:交通控制;车流量;红外线传感器;80C51;ABSTRACTThis paper describes a 80C51 microcontroller-based traffic light control system, detailed description of the use 89C51 development process of the traffic light control system. Focus on a detailed analysis of the hardware design, software pro

5、gramming, analysis and debugging process of the modular system, on the part of the circuit are introduced one by one. The system is made up of 80C5l microcomputer, keyboard and traffic lights display. The system can easily achieve traffic light control The system is simple, high reliability, easy to

6、 modify the program (easy add or change functions), has good prospects.KEY WORDS: Traffic Control, Single Chip Microcomputer , 80C51 第1章 绪论1.1 课题研究的背景及意义1.2 当前的研究现状交通控制系统是近现代社会随着物流、出行等交通发展产生的一套独特的公共管理系统。要保证高效安全的交通次序,除了制定一系列的交通规则,还必须通过一定的科技手段加以实现。本文在对目前交通控制进行深入分析的基础上,介绍了交通控制的发展及研究现状,同时提出了目前交通控制仍然存在的问

7、题以及将来的发展趋势,比较了PLC和单片机控制的交通灯系统的优缺点,并阐述了单片机交通控制系统的主要研究内容。随着人口快速的增多,交通工具爆炸性的发展,以及道路资源有限性,交通控制就应运而生,在人类的生活、工作环境中,交通扮演着极其重要的角色,人们的出行都无时无刻与交通息息相关。自18世纪工业革命以来,工业发展带动整个交通运输的发展,从而催生了单独的交通控制学问与管理机构。交通控制系统是近现代社会随着物流、出行等交通发展产生的一套独特的公共管理系统。要保证高效安全的交通次序,除了制定一系列的交通规则,还必须通过一定的科技手段加以实现。现代人类科学技术,特别是电子科技的发展和成熟能比较好的解决系

8、统建立中软硬件方面要求的科技难题。目前交通控制方面的研究能完全实现自动智能化,甚至将整个区域整合成一个统一的系统范围,还能根据正常时段以及突发时段的情况进行科学的自动调整。交通对于社会的工业发展和人类的生活生产中有着十分重要的意义。随着单片机和传感器技术的迅速发展,自动检测领域发生了巨大的变化,交通监控方面的研究有了明显的进展,并且必将以其优异的性能比,逐步取代传统的交通控制措施。城市进路交通自动控制系统的发展是以城市交通信号控制技术为前导,与汽车工业并行发展的。在其各个发展阶段,由于交通的各种矛盾不断出现,人们总是尽可能地把各个历史阶段当时的最新科技成果应用到交通自动控制中来,从而促进了交通

9、自动控制技术的不断发展。 早在1850年,城市交叉口处不断增长的交通就引发了人们对安全和拥堵的关注。世界上第一台交通自动信号灯的诞生,拉开了城市交通控制的序幕,1868年,英国工程师纳伊特在伦敦威斯特敏斯特街口安装了一台红绿两色的煤气照明灯,用来控制交叉路口马车行,但一次煤气爆炸事故致使这种交通信号灯几乎销声匿迹了近半个世纪。1914年及稍晚一些时候,美国的克利夫兰、纽约和芝加哥才重新出现了交通信号灯,它们采用电力驱动,与现在意义上的信号灯己经相差无几。1926年英国人第一次安装和使用自动化的控制器来控制交通信号灯,这是城市交通自动控制的起点。早期的交通信号灯使用“固定配时”方式实行自动控制,

10、这种方式对于早期交通量不大的情况曾起过一定的作用。但随着汽车工业的发展、交通流量增加、随机变化增流强,采用以往那种单一模式的“固定配时”方式己不能满足客观需要,于是一种多时段多方案的信号控制器开始出现并逐步取代了传统的只有一种控制方案的控制器20世纪30年代初,美国最早开始用车辆感应式信号控制器,之后是英国,当时使用的车辆检测器是气动橡皮管检测器。车辆感应控制器的特点是它能根据检测器测量的交通流量来调整绿灯时问的长短,使绿灯时间更有效地被利用,减少车辆在交叉口的时问延误,比定时控制方式有更大的灵活性。车辆感应控制的这一特点刺激了车辆检测器技术的发展。继气动橡皮管式检测器之后,雷达、超声波、光电

11、、地磁、电磁、微波、红外以及环形线圈等检测器相继问世。当今在城市道路交通自动控制、交通监测和交通数据采集系统中,应用最广的是环形线圈车辆检测器。超声波检测器主要在日本等少数国家得到广泛应用。 计算机技术的出现为交通控制技术的发展注入了新的活力,更是实现了以一个城市或者更大地域,而非简单的一个路口的交通总体控制系统。1952年,美国科罗拉多州丹佛市首次利用模拟计算机和交通检测器实现了对交通信号机网的配时方案自动选择式信号灯控制,而加拿大多伦多市于1964年完成了计算机控制信号灯的实用化,建立了一套由IBh1650型计算机控制的交通信号协调控制系统,成为世界上第一个具有电子数字计算机城市交通控制系

12、统的城市。这是道路交通控制技术发展的里程碑。 可以说,在近百年的发展中,道路交通信号控制系统经历了手动到自动,从固定配时到灵活配时,从无感应控制到有感应控制,从单点控制到干线控制,从区域控制到网络控制的长远过程。交通控制研究的发展,旨在解决人类交通因需求的增多而日益繁重带来的问题,局限于进路建设的暂时不足和交通工具的快速增长,就要使更多的车辆安全高效的利用有限的道路资源,避免因无序和抢行等无控制原因造成的不必要阻塞甚至瘫痪,另外,针对整个交通线路车辆的多少实时调整和转移多条线路的分流也十分必要。 交通网络是城市的动脉,象征着一个城市的工业文明水平。交通关系着人们对于财产、安全和时间相关的利益。

13、具有优良科学的交通控制技术对资源物流和人们出行都是十分有价值的,保证交通线路的畅通安全,才能保证出行舒畅,物流准时到位,甚至是生命通道的延伸。1.3 本文的主要工作和难点 道路交通灯的总体系统的设计方案2.1 总体设计方案2.1.1 系统机构总框架2.1.2 交通管理的方案论证2.1.3 控制电路框图图2.1 控制电路框图2.2 电路的工作原理本系统2.3 本章小结 硬件设计3.1 MCS-51单片机介绍MCS-51单片机广泛应用在简单的设计中,例如交通灯、遥控器等,在我们的生活中都有应用。单片机已经称为我们生活不可缺少的东西。3.1.1 简介CPUROM中断系统串行I/O口并行I/O口定时器

14、RAM图3.1 单片机内部结构示意图复位电路电源电路单片机时钟电路输入/输出图3.2 单片机最小系统示意图EPROM程序存储器RAM数据存储器A/DD/A并行接口串行接口复位电路时钟电路输入/输出电源电路单片机 图3.3 单片机扩展系统钢结构示意图3.1.2 管脚说明图3.4 MCS-51引脚图3.1.3 时钟脉冲电路3.1.4 复位电路3.1.5 电源电路 3.1.6八段数码管结构3.53.1.7红外线对射传感器3.63.73.73.83.83.2 硬件原理图3.3 本章小结 软件设计4.1 主程序设计设计出程序的流程图以及初始、延时程序及源程序。4.1.1 主程序流程图图4.1 信号灯状态

15、流程图4.2 初始化程序4.3 延时程序4.4 中断程序图4.2中断程序流程图4.5本章小结 调试分析5.1 KEIL51软件简介5.1.1 系统概述5.1.2 KeilC51单片机软件开发系统的整体结构5.2 调试步骤进行逻辑调试、模拟电路的调试,还有解决在调试中出现的问题5.2.1 逻辑的调试Keil 51 编译指南:第1步: 打开Keil51软件,首先弹出一个开机启动画面。第2步: 然后进入Keil51的开发界面。下面简要介绍一下Keil51开发环境中各个区域的功能。Keil51开发环境可以分为四个区域,分别为:菜单条、项目文件管理窗口、代码编译窗口和代码编译信息窗口四个部分。菜单条分为

16、十项,所有的命令都可以在这里找到。下面的命令是一些常用的菜单命令,如文件的打开、关闭及保存。其中编译命令最为常用。中间靠左是项目文件管理窗口,这里可以看到当前项目中所包含的所有带编译的文件。项目文件管理窗口的右侧是代码编译窗口,这事我们最主要的工作区域。最底层显示了代码编译的信息。当代码有语法错误时,可以在这里轻松的找到问题的所在。第3步:下面以建立一个简单的项目为例,来说明Keil51开发项目的一般方法。单击Project菜单项,选择New Project项。第4步:此时弹出Create New Project对话框,选择合适的路径口,在文件名一栏中填入新工程的名字。单击保存。第5步: 根据

17、所用的器件,选择CPU的型号,单击确定。第6步:Keil51询问是否生成默认的配置文件,这个可选可不选,这里选定。单击Yes,观察项目文件管理窗口的变化。第7步:在File菜单下单击New选项,新建文件。此时在代码窗口出现一“Text1”空白文档。第8步: 在“Text1”中编辑完代码后,单击File菜单中的保存项,弹出保存对话框。保存名写为text.c。单击保存。注意在对文件命名时必须加扩展名。第9步: 在项目导航栏中Source Group 上单击右键,选Add File to Group Source Group 1。第10步: 此时弹出Add File 对话框。选中刚才保存的text.

18、c文件。单击Add。此时在项目文件管理窗口中就会出现刚才所添加的文件text.c。 第11步: 单击快捷菜单栏中的编译按钮,可以编译程序。第12步: 单击Project菜单项,选择Option for Target Target 1选项。在弹出的对话框中可以对Project进行总体配置。第13步: 选择Output 选项卡,单击Create HEX File ,代码输出格式应为HEX-80 。第14步: 单击确定后,并重新编译。可以看到编译成功之后,Build 选项卡里又多了一项。这是生成的HEX 文件。第15步: 单击Debug 菜单项中的Start/Stop Debug Session 命

19、令或工具栏中的进入调试界面。第16步: 单击调试界面Debug 菜单项中的Go命令或工具栏中的运行程序,单击Stop Running 命令或来结束程序。观察运行结果,若结果正确,便可通过下载软件将它烧写到目标板上去。5.2.2 模拟电路板的调试通过查找资料选择了合适的LED和电阻,合适阻值的电阻和LED串联能保证在通上电后LED的内部电流在允许范围内,防止LED因内部电流过大而被烧毁。调试过程中,因不慎短路造成一个LED烧毁,相应的面包板的孔也烧毁。经过分析发现,LED和电阻两端的引线都过长,在调试过程中如果不慎碰一下会造成LED被烧毁。所以,剪短阴线后重新安插面包板,消除了隐患。5.3调试中

20、的问题及解决方案调试过程中遇到不少问题问题一:上文逻辑调试中提到的问题,即LED并未按照预期的流程点亮,而且也没有状态变化。解决方案:经过进一步分析后,发现把每个状态设置成一个独立的子函数然后在主函数中调用的方法并不能很好的按照理想状态执行。所以,对程序进行了整体修改,在主函数中直接给P1口赋值,如P1=0xff即表示所有LED不点亮。这样,程序变得精简而且易行,不用调用太多子函数,减少出错。问题二:个别状态LED的点亮状态和理想的状态并不相符。个别不该点亮的却点亮了,而该点亮的却未亮。解决方案:仔细检查P1口赋值情况,发现有赋值错误的情况,及时改正,最终实现了使LED按照理想状态点亮。问题三

21、:在调试过程中经过观察发现,本系统设置的交通灯点亮规律有漏洞,比如最初在状态4时只设置东西左转绿灯和所有右转绿灯以及南北红灯亮,没有考虑到对东西方向直行车辆和行人的指示。状态8也有类似的问题。解决方案:在有漏洞的地方修复漏洞。比如,给状态4重新赋值,使其在原有基础上再点亮东西直行方向红灯和人行道红灯。5.4 本章小结本章主要介绍本论文的调试分析。文中除较为详细地介绍Keil51软件系统外,重点介绍了关于本设计的调试过程和在调试过程中遇到的问题以及最终的解决方案。通过本章,使我对Keil51软件有了更深入的了解和学习,使我熟练了调试程序的方法,更重要的是,深刻体会到如何发现问题和解决问题。下图为

22、本系统的运算结果:图5.3 仿真运算结果图结论本论文在深入探讨分析交通控制原理的基础上设计出了一套基于单片机控制之下的交通控制系统,通过阅读大量相关文献,对当前交通控制技术有了比较深入的了解,并在此基础上进行了硬件选型和软件系统的设计,经过在实验室调试,分析及验证了设计方案的可行性。在开发过程中,运用了Protel开发软件、编程开发软件,在编程方面使用了C语言。课题完成的主要工作与结论如下:(1)阅读了大量资料,对交通控制系统进行了综合分析,明确了论文的方向,确定了基于80C51单片机的研究与设计的总体设计方案;(2)分析了具体要求,题注硬件总体设计方案,对硬件进行了选型,在过程中熟悉了八段数

23、码管和红外线传感器以及发光二级管的工作原理,并且画出了原理图,然后进行了编程,调试以及仿真,最后做出了能够正常运行的实物。基本达到了预期要求。(3)深入分析、总结了系统软件部分的原理,对C语言的编程熟练度进一步提高。(4)经过实验验证,本系统准确达到了本次设计的要求,进而验证了系统的可行性。本设计功能实用性强,系统参数容易修改,便于根据实际情况操作。不足之处:因个人能力有限平时焊接做得比较少,所做外接电路也比较粗糙,线路设计得比较复杂容易混淆,只能够勉强运行,希望将来能够改进!本次设计经历让我对交通控制系统有了更深入的认识,也了解到现有交通控制系统存在的不足。希望通过努力,最终能将本系统修改为

24、可以指挥交通的应用型系统,弥补现有交通控制系统的不足。致谢参考文献1杨栓科,徐正红等.模拟电子技术基础M.北京:高等教育出版社,2007.5.2张克农,段军政等.数字电子技术基础M.北京:高等教育出版社,2008.1.3申忠如, 申淼 ,谭亚丽. MCS-51单片机原理及系统设计M.西安:西安交通大学出版社,2008.3.4戴仙金.51单片机及其C语言程序开发实例M.北京:北京大学出版社,2006.1.5范立南,谢子殿.单片机原理及应用教程 M.北京:北京大学出版社,2008.2.6胡汉才.单片机原理及接口技术M.北京:清华大学出版社,1996.7.7薛钧义,张彦斌.MCS-51/96系列单片

25、微型计算机及其应用M.西安:西安交通大学出版社,1997.8.8高涛等.C语言程序设计M.西安:西安交通大学出版社,2007.2.9David Conger. 软件开发:编程与设计(C语言版).朱剑平.北京:清华大学出版社,2006.8.10H.M.Deitel,P.J.Deitel.C程序设计教程.薛万鹏译.北京:机械工业出版社,2000.7.12周立功.增强型80C51单片机速成与实战M.北京航空航天大学出版社2004.513雷丽文等.微机原理与接口技术M.北京:电子工业出版社,1997.214周航慈,单片机应用程序设计技术 M.北京:航空航天大学出版社,199115胡汉才.单片机原理及其

26、接口技术 M.清华大学出版,199616蔡美琴.MCS-51系列单片机系统及其应用M.高等教育出版社 2004.217付家才.单片机控制工程实践技术M.化学工业出版社,2004.518潘新民.微型计算机控制技术 M.人民邮电出版社,1999.919蒋万君.在论循环时序电路的简便设计J.机电一体化,2005 第5期21何立民.MCS-51系列单片机应用系统设计M.北京航空航天大学出版社, 199722Marvin Gerth. Transformers for the ElectricianM. Cengage Learning,2010.23Stanley H.Horowitz、Arun G.

27、Phadke. Power System RelayingM.24Robert L Smith、Stephen L.HermanElectrical Wiring IndustrialM.附录实物图源程序C语言控制交通灯程序:#include#define uint unsigned int#define uchar unsigned charsbit D1=P20;sbit D2=P21;sbit D3=P22;sbit D4=P23;sbit L1GREEN=P30;sbit L1RED=P31;sbit L1YELLOW=P32;sbit L2GREEN=P33;sbit L2RED=P

28、34;sbit L2YELLOW=P35;uchar tt;int nub1,nub2;int flag1,flag2;int num1,num2;float bi;uchar code table=0xaf,0x82,0x3b,0x9b,0x96,0x9d,0xbd,0x83,0xbf,0x9f;void delay(uint z);void display(int A,int B) int a1,a2,b1,b2; a1=A/10;a2=A%10; b1=B/10;b2=B%10; D1=1;D2=0;D3=0;D4=0; P0=tablea1; delay(1); D1=0;D2=1;D

29、3=0;D4=0; P0=tablea2; delay(1); D1=0;D2=0;D3=1;D4=0; P0=tableb1; delay(1); D1=0;D2=0;D3=0;D4=1; P0=tableb2; delay(1);void flagled(int a,int b) if(a=1) L1YELLOW=1; L1RED=1; L1GREEN=0; if(a=2) L1YELLOW=0; L1RED=1; L1GREEN=1; if(a=3) L1YELLOW=1; L1RED=0; L1GREEN=1; if(b=1) L2YELLOW=1; L2RED=1; L2GREEN=

30、0; if(b=2) L2YELLOW=0; L2RED=1; L2GREEN=1; if(b=3) L2YELLOW=1; L2RED=0; L2GREEN=1; void main() tt=0; TMOD=0x01;/设置定时器0为工作方式1 TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1;/开总中断 ET0=1;/开定时器0中断 EX0=1;/开外部中断0 IT0=1; EX1=1;/开外部中断0 IT1=1; TR0=1;/启动定时器0 P3=0xff; nub1=28;nub2=30; flag1=3;flag2=1; num1

31、=1;num2=1;bi=1.0; while(1) display(nub1,nub2); flagled(flag1,flag2); if(tt=20) tt=0; nub1-;nub2-; if(nub1=0) flag1-; if(flag1=0) flag1=3; bi=num1/num2; if(flag1=1) if(bi0.2&bi0.5&bi2&bi5) nub1=50; if(flag1=2) nub1=2; if(flag1=3) if(bi0.2&bi0.5&bi2&bi5) nub1=8; if(nub2=0) flag2-; if(flag2=0) flag2=3;

32、 num1=1;num2=1; if(flag2=1) if(bi0.2&bi0.5&bi2&bi5) nub2=10; if(flag2=2) nub2=2; if(flag2=3) if(bi0.2&bi0.5&bi2&bi5) nub2=48; void delay(uint z) uint x,y; for(x=z;x0;x-) for(y=110;y0;y-);void time0() interrupt 1 TH0=(65536-50000)/256; TL0=(65536-50000)%256; tt+;void exter0() interrupt 0 num1+; void exter1() interrupt 2 num2+;

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服