收藏 分销(赏)

基于Protues的十字路口交通灯模拟实验仿真.doc

上传人:精*** 文档编号:3939986 上传时间:2024-07-24 格式:DOC 页数:6 大小:44.54KB
下载 相关 举报
基于Protues的十字路口交通灯模拟实验仿真.doc_第1页
第1页 / 共6页
基于Protues的十字路口交通灯模拟实验仿真.doc_第2页
第2页 / 共6页
基于Protues的十字路口交通灯模拟实验仿真.doc_第3页
第3页 / 共6页
基于Protues的十字路口交通灯模拟实验仿真.doc_第4页
第4页 / 共6页
基于Protues的十字路口交通灯模拟实验仿真.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、基于Protues的十字路口交通灯模拟实验仿真摘要:为满足城市道路交通管理的需求变化,提高城市交通的运行效率,将单片机引入交通道路控制系统的设计当中。利用Proteus仿真平台,设计了基于51单片机的十字路口交通灯模拟控制系统,并与Keil C51实现了软件、硬件和系统的联合调试。从实验模拟的角度检验了十字路口交通灯控制系统的可靠性,提高了开发效率、降低了设计成本,实现了单片机技术与实际的综合应用,加深了对单片机技术的理解。关键词:Proteus仿真;51单片机;交通灯系统中图分类号:TH-3 文献标识码:AProteus simulationexperiment of crossroads

2、traffic lightsAbstract:In order to satisfy the demand of the city road transportation management, improve the operation efficiency of urban traffic, and design a traffic control system by Single Chip Microcomputer。 By using Proteus simulation platform, explains the design of crossroads traffic light

3、scontrol system which based on 51 Single Chip Microcomputer, and uniting with the Keil C51。It has completed software debugging,hardware testing and system debugging。 From the view of the experimental simulation, test the reliability of the crossroads traffic light control system, enhance the develop

4、ment efficiency, reduce the design cost, combine the theory of Single Chip Microcomputerwith practice, and deepen the understanding of the technology。Keywords:Proteus simulation;51 Single Chip Microcomputer;traffic lights system交通是一个城市的经济命脉,它不但体现了城市的发展活力,也直接与人们的生活息息相关。随着我国经济的高速发展,人们对私家车、公交车的需求量越来越大。

5、但是车辆的增加无疑会给我国城市交通系统带来沉重的压力。而交通灯在这个环境中起着一个重要的角色。智能的交通灯能有效地缓解城市的交通压力,减少交通事故,节省大量的出行时间.创造更多的社会价值.经过调查发现,在贺兰山西路与文萃北街的十字交叉路口中,贺兰山西路为主干道,车辆较多,通行时间较长,文萃北街为副干道,车辆较少,通行时间较短.该模拟实验以此十字路口为实际原型,设计了一套基于Proteus的十字路口交通灯系统控制方案。1Proteus简介Proteus ISIS是英国Labcenterelectronics公司开发的电路分析与实物仿真软件.它运行在Windows操作系统上,可以仿真和分析各种模拟

6、器件和集成电路.该软件具有以下特点: (1) 实现了单片机仿真和SPICE电路相结合。Proteus具有模拟电路仿真、单片机及外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LED系统仿真的功能;还有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。 (2) 支持主流单片机系统的仿真。Proteus目前支持的单片机类型有:68000系列、8051系列(本设计中采用该系列)、AVR系列、PIC16系列、Z80系列、HC11系列、ARM7系列以及各种外围芯片。 (3) 提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,可以同时观察各个变量、寄存器

7、等的当前状态,因此在Proteus系统仿真中,也必须具有这些功能;Proteus同时还支持第三方的软件编译和调试环境,如Keil C51集成开发环境。 (4) 具有强大的原理图绘制功能.2总体方案设计2。1 系统模拟交通灯的控制要求控制要求:在十字路口,每条道路各有两组红、黄、绿灯用来指挥车辆和行人的有序通行,保障车辆和行人安全通过.假定十字路口交通灯的初始运行状态为东西绿灯南北红灯.表1中是十字路口红绿灯的六种运行状态方案。运行时从状态一到状态六依次执行,最后由状态六转换到状态一,实现循环动作。表十字路口红绿灯运行状态方案Tab。1 The operation status programo

8、f the crossroads traffic lights状态一状态二状态三东西南北人行道东西南北人行道东西南北人行道直行左转直行左转东西南北直行左转直行左转东西南北直行左转直行左转东西南北绿绿红红绿红黄黄红红绿红红红绿红红绿状态四状态五状态六东西南北人行道东西南北人行道东西南北人行道直行左转直行左转东西南北直行左转直行左转东西南北直行左转直行左转东西南北红红黄红绿红红红红绿红红红红红黄红红2。2系统模拟交通灯的设计方案目前交通灯的设计方案有很多,有用CPLD实现交通信号灯控制器的设计,有用PLC来实现对交通灯控制系统的设计,也有用单片机实现交通信号灯设计的方法.此次模拟实验是以51单片机

9、来实现十字路口交通灯的控制,并利用Keil C51实现程序的联调.2。3系统模拟交通灯的设计思路用16只发光二极管模拟人行通道信号灯,用Proteus软件库中的TRAFFIC LIGHTS元件模拟车辆交通信号灯,以AT89C51单片机的P0、P2口控制东西南北走向以及人行通道。对车辆交通灯来说,控制口输出高电平则信号灯亮,控制口输出低电平则信号灯灭;对人行通道来说,控制口输出低电平则信号灯亮,控制口输出高电平则信号灯灭。各控制口控制功能及相应的控制码如表2所示:表2各控制口控制功能及相应的控制码Tab.2 The control function and the corresponding c

10、ontrol code of each portP0。0P0。1P0。2P0。3P0。4P0。5P0。6P0.7东西直红 东西直黄东西直绿南北直红南北直黄南北直绿东西人行红东西人行绿P2.0P2。1P2.2P2。3P2.4P2.5P2。6P2。7东西左红东西左黄东西左绿南北左红南北左黄南北左绿东西人行红东西人行绿2.3系统模拟交通灯的硬件设计原理图利用Proteus自带的元件库,选择AT89C51单片机、交通灯、电阻、发光二极管、晶振、电容、电解电容、排阻等元件,并画出如图1所示的原理图。图1 系统电路原理图Fig。1 The system of the circuit principle d

11、iagram3 系统仿真Proteus在设计时已经充分考虑到和单片机各种编译程序的整合,它可以实现和Keil编译软件的结合使用。由于Keil使用方便,具备强大的软件仿真和硬件仿真功能。把Proteus和Keil结合起来调试硬件就十分方便。本次模拟仿真便是采用“Proteus+Keil”的仿真方法。在电路图绘制完成后,进行控制程序的编译工作。打开Keil uVision4,创建新的工程,选择单片机的厂商Atmel、型号AT89C51,接着将添加c语言程序并进行编译以及创建hex文件.然后双击原理图中的单片机,添加hex文件,便可进行下一步的仿真工作。仿真结果如图2、3、4、5、6、7所示。图2状

12、态一仿真图 图3 状态二仿真图Fig。2 Simulation diagram of state one Fig。3 Simulation diagram of state two图4 状态三仿真图 图5 状态四仿真图 Fig。4 Simulation diagram of state three Fig.5 Simulation diagram of state four图6 状态五仿真图 图7 状态六仿真图 Fig。4 Simulation diagram of state five Fig。6 Simulation diagram of state six4 总结基于Proteus的十字

13、路口交通灯模拟实验,从仿真的结果可以看出,该设计能够满足十字路口的交通灯控制,具有一定的实际意义。但在实际使用中,红绿灯并不会放在同一个电路板中,而是需要放在不同的路口,互相需要协同工作,这就需要利用单片机通信技术,才能真正实现交通灯控制的目标.该设计方案的不足之处是没有数码管显示红绿灯的具体控制时间,不便于人们对通行的具体的时间作出反应。参考文献:1 杨术明。单片机原理及接口技术M。华中科技大学出版社,2013.2。2 范海绍,李方园。零起点学Proteus单片机仿真技术M。北京:机械工业出版社,2012。1。3 周越,张平。单片机技术实验实训教程M.北京:中国水利水电出版社,2007。4

14、夏西泉,王锡惠.51单片机基础实验与课程实训教程(C语言版)M.北京:北京理工大学出版社,2012.8。附件1:原理图附件2:源程序#include define uchar unsigned char #define uint unsigned intsbit RED_A=P00; /东西直行指示灯sbit YELLOW_A=P01; sbit GREEN_A=P02; sbit RED_C=P20; /东西左转指示灯sbit YELLOW_C=P21; sbit GREEN_C=P22; sbit RED_B=P03; /南北直行指示灯sbit YELLOW_B=P04; sbit GRE

15、EN_B=P05; sbit RED_D=P23; /南北左转指示灯sbit YELLOW_D=P24; sbit GREEN_D=P25; sbit RED_E=P06; /东西向人行道指示灯sbit GREEN_E=P07; sbit RED_F=P26; /南北向人行道指示灯sbit GREEN_F=P27; /延时倍数,闪烁次数,操作类型变量uchar Flash_Count=0,Time_Count=0,Operation_Type=1; uint t=0,Second=0; /定时器0中断函数void T0_INT() interrupt 1 TH0=(65536-50000)/2

16、56; TL0=(6553650000)256; switch(Operation_Type) case 1: /东西直行绿灯、左转绿灯与南北直行红灯、左转红灯亮5s RED_A=0;YELLOW_A=0;GREEN_A=1; RED_C=0;YELLOW_C=0;GREEN_C=1;RED_B=1;YELLOW_B=0;GREEN_B=0; RED_D=1;YELLOW_D=0;GREEN_D=0; RED_E=1;GREEN_E=0;RED_F=0;GREEN_F=1;t+;if (t=20) t=0; Second+; if(Second=5) Second=0; Operation_T

17、ype=2; break; case 2: /东西直行黄灯、左转黄灯开始闪烁,绿灯关闭if(+Time_Count!=6) return; Time_Count=0; YELLOW_A=!YELLOW_A;GREEN_A=0; YELLOW_C=!YELLOW_C;GREEN_C=0; if(+Flash_Count!=6) return; Flash_Count=0; Operation_Type=3; break; case 3: /东西直行红灯、左转红灯与南北直行绿灯、左转红灯亮5s RED_A=1;YELLOW_A=0;GREEN_A=0; RED_C=1;YELLOW_C=0;GRE

18、EN_C=0; RED_B=0;YELLOW_B=0;GREEN_B=1; RED_D=1;YELLOW_D=0;GREEN_D=0;RED_E=0;GREEN_E=1;RED_F=1;GREEN_F=0;t+;if (t=20) t=0; Second+; if(Second=5) Second=0; Operation_Type=4; return; break; case 4: /南北直行黄灯开始闪烁,绿灯关闭if(+Time_Count!=6) return; Time_Count=0; YELLOW_B=!YELLOW_B;GREEN_B=0; if(+Flash_Count!=6)

19、 return; /闪烁Flash_Count=0; Operation_Type=5; break; case 5: /东西直行红灯、左转红灯与南北直行红灯、左转绿灯亮5sRED_A=1;YELLOW_A=0;GREEN_A=0; RED_C=1;YELLOW_C=0;GREEN_C=0; RED_B=1;YELLOW_B=0;GREEN_B=0; RED_D=0;YELLOW_D=0;GREEN_D=1;RED_F=0;GREEN_F=1;t+;if (t=20) t=0; Second+; if(Second=5) Second=0; Operation_Type=6; break; case 6: /南北左转黄灯开始闪烁,绿灯关闭if(+Time_Count!=6) return; Time_Count=0; YELLOW_D=!YELLOW_D;GREEN_D=0; if(+Flash_Count!=6) return; /闪烁Flash_Count=0; Operation_Type=1; break; /主程序void main() EA=1;ET0=1;TMOD=0x01; /T0方式1 TH0=(65536-50000)/256; TL0=(65536-50000)256; TR0=1; while(1);

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 学术论文 > 其他

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

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

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

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

gongan.png浙公网安备33021202000488号   

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

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

客服