《毕业设计交通灯控制电路设计.doc》由会员分享,可在线阅读,更多相关《毕业设计交通灯控制电路设计.doc(26页珍藏版)》请在三一办公上搜索。
1、湘 潭 大 学基于电子技术的交通灯控制电路设计班级:机电一体化技术0901 组别:第四小组每一位同学有个人的毕业设计指导教师:冷爱莲2012年 3月摘 要本课题是关于交通灯控制电路的设计。本文从课程设计的题目要求出发,设计了一个南北方向和东西方向十字路口的交通灯控制电路。本交通灯控制电路采用74LS193可预置四位二进制双时钟可逆计数器实现计数功能,并通过一系列集成逻辑门电路芯片控制红绿灯的交替显示。本交通灯控制电路系统是基于石英晶体,以及CD4060分频器、74LS74分频器、74LS193可预置四位二进制双时钟可逆计数器、CD4511译码器等中小规模集成芯片,数码管显示器和绿黄红发光二极管
2、指示灯所组成的电路,采用Proteus软件进行电路仿真。通过对各单元电路的分析设计,实现总体电路的功能。由石英晶体组成的石英晶体振荡器电路输出时钟脉冲信号。采用74LS193组成计数电路,通过一系列逻辑门电路实现红绿灯的交替显示。按照课题的要求,用74LS193设计了倒计时电路,通过译码器连接数码管显示红绿灯的倒计时。它的计时周期为50秒,其中主车道通行时间为30秒,支干道每次通行时间为20秒。(设计任务书提出要求:各方向通行时间均设为30S)本电路设计的优点是,用了尽量少的芯片实现了课题所要求的功能,既实现了红绿灯的指示,又以倒计时的方法对红绿灯的时间进行了显示。由于采用了石英晶体振荡器,大
3、大提高了电路的稳定性与精度。关键词 交通灯 控制电路 proteus仿真 电路设计目 录1 设计题目 12 设计任务 12.1 设计任务及指标 12.2 设计相关提示 13 交通灯控制电路系统设计 13.1 方案比较 13.2 交通灯电路结构框图 13.3 交通灯电路设计 23.3.1 脉冲电路 23.3.2 计数电路 33.3.3 灯控制电路 33.3.4 倒计时电路 54 硬件介绍 75 课程设计的收获、体会和建议 16致谢参考文献附录一 交通灯电路原理图附录二 元器件表附录二 交通灯实物图1 设计题目基于电子技术的交通灯控制电路设计2.1 设计任务及指标 1. 主要利用电子技术的相关知识
4、完成交通灯控制硬件电路设计。设计控制两路口方向的红、黄、绿三种交通灯,并用数字指示通停时间,用于对十字路口东西南北方向通行车辆进行自动转换控制; 2. 各方向通行时间均设为30S; 3. 每次换向过程中,黄灯提示,持续6S; 4.设计时间显示电路时要求用两位显示两个方向的通、停时间。时间数字显示为倒计时方式; 5.工作时钟电路的参数设计计算及器件选择。3 交通灯控制电路系统设计3.1 方案比较根据倒计时显示方式的不同,我们设计了两套方案作比较:方案一:主车道的倒计时按照25秒、5秒、20秒循环显示,分别对应绿灯、黄灯、红灯;而支车道则按照30秒、20秒、5秒循环显示,分别对应红灯、绿灯、黄灯。
5、所以主干道与支干道的倒计时是不一样的,需要4个CD4511译码器。方案二:根据题目的要求南北方向(主干道)车道和东西方向(支干道)车道两条交叉道路上的车辆交替运行,主干道每次通行时间都设为30秒,支干道每次通行时间为20秒,也就是一个循环是50秒。如此先显示30秒倒计时(对应绿灯,到了5秒后换黄灯亮)后显示20秒倒计时,然后再显示30秒倒计时,以此类推。由于主干道的通行时间也就是支干道的禁行时间,所以两组数码管显示的倒计时是一样的,只需2个CD4511译码器即可。两种方案均不完全符合要求!请修改方案!可以借鉴,但要研究搞懂后整理成符合要求的自己的毕业设计。两种方案均符合要求,对比之下方案二的元
6、件要少很多,线路的复杂程度也减小了,对于焊接与调试都降低了难度与风险,所以我们组决定采用方案二进行设计。3.2 交通灯电路结构框图图1 交通灯电路结构框图3.3 交通灯电路设计3.3.1 脉冲电路图2 脉冲电路图由石英晶体组成的秒脉冲产生电路如图2所示。它将为整个电路提供脉冲信号。图中的晶振频率为32768HZ。CD4060是14级二进制分频器,从它的引脚3出来的是2HZ的方波信号。因此,还需要通过一个74LS74(D触发器)对此信号进行2分频,最后从5脚输出的即为1HZ的方波脉冲信号。3.3.2 计数电路此模块不完全符合要求!请修改方案!由于交通灯电路中主干道通行时间为30秒,支干道通行时间
7、为20秒,所以周期为50秒,所以需要一个50进制计数器。如图3所示,计数电路由3片74LS193组成。从左到右依次为计数电路的地位到高位。对于74LS193(0),取Q2、Q1、Q0为输出端。芯片的UP时钟端输入时钟脉冲,芯片从000开始加计数,到101时,Q2、Q0通过与门反馈到清零端,从而芯片马上回到000状态,共有000到100五种状态。同时,与门给了74LS193(1)的UP时钟端一个由0到1的脉冲信号,芯片也开始计数,同理,它也有五种状态。而最右边的74LS193(2),取Q0为输出端,芯片在Q1为1时瞬间清零,芯片只有两种状态。综上所述,电路共有255=50种状态,3片74LS19
8、3构成了50进制计数器。图3 计数电路图3.3.3 灯控制电路此模块不完全符合要求!请修改方案!如图4所示,灯控制电路是由计数电路控制的。对于主干道,前25秒亮绿灯,接着的5秒亮黄灯,最后20秒亮红灯。情况如下:前25秒对应计数部分的前25种状态,在这个过程中计数部分(见图3)的74LS193(2)的Q0一直为0,经过3个非门连接到绿灯,绿灯的状态为1,所以前25秒绿灯是一直亮着的。到第26秒时,74LS193(2)的Q0变为1,绿灯的状态变为0,绿灯灭。此时计数部分的状态为001 000 000,74LS193(1)的Q2、Q1、Q0经或非门输出为1,74LS193(2)的Q0为1,两者再经
9、过一个与门输出为1。为了使黄灯亮时能每秒闪一次, 在黄灯那里加入一个与门,把黄灯发亮的信号当成是与门的开通信号,与门的另一端接入时间脉冲,那么黄灯就可以实现每秒闪亮一次的功能了。因此,在前25秒时黄灯的状态一直是0,到了26秒才变为1。当计数部分状态为001 001 000时,黄灯熄灭。从001 000 000到001 001 000,电路经历了五个状态,时间为5秒。由于红灯要在绿灯和黄灯熄灭后才亮,因此在绿灯和黄灯前各引出一条线接入或非门,用这个或非门来控制红灯。所以,当绿灯和黄灯有一个状态为1时,红灯的状态均为0;当绿灯和黄灯状态均为0时,红灯的状态为1,此时红灯亮。这个过程将持续20秒。
10、图4 灯控制电路图以上是车道的情况。对于人行横道,因为车道通行的时候人行横道静止通行,因此从车道的红灯前引出一条线接入非门,用非门控制人行横道的红灯。对于人行横道的绿灯,则与人行横道的红灯状态相反,用非门即可。这样,车道红灯亮时人行横道的绿灯亮,红灯灭。对于支干道,也是用同样的原理设计的,不过灯的亮灭次序与主干道有所不同:前30秒亮红灯,接着15秒亮绿灯,最后5秒亮黄灯。3.3.4 倒计时电路此模块不完全符合要求!请修改方案!倒计时电路应从30开始倒计,当倒数到0时,再从6开始倒计并倒数到0图5 倒计时电路图倒计时电路如图5所示。此部分电路仍由计数电路控制,这样可以保证与灯控制电路的状态保持同
11、步。由于倒计时要通过数码管显示出来,所以此部分电路用到了CD4511译码器。74LS193是双时钟4位二进制同步可逆计数器。74LS193的特点是有两个时钟脉冲(计数脉冲)输入端CPU和CPD,可作加计数,也可以作减计数。此外,74LS193还具有异步清零和异步预置数的功能。这里的倒计时用到了74LS193的减计数功能。图6 倒计时电路执行部分 倒计时电路的执行部分如图6所示。其中左边的74LS193(1)为高位,右边的74LS193(0)为低位。对于74LS193(0),运行时从0000开始倒数,然后到1111。这时,由于四个输出端口连接了一个4输入与非门,输出0到74LS193(1)的DN
12、时钟端和74LS193(0)的预置端PL,74LS193(0)置入了1001,也就是9,输出也为1001。此时与非门输出为1,相当于给了74LS193(1)的DN时钟端一个上升沿脉冲,使其输出的数减1。因此,1111是一个瞬时状态,74LS193(0)实现了从9到0的倒数功能。对于74LS193(1),则电路一开始运行时,计数电路给74LS193(1)的预置端PL加入一个低电平,则芯片置入0011这个数字,也就是3。电路从30开始倒计时,当倒数到0时,计数电路又给74LS193(1)的预置端加入一个低电平,这时芯片置入的是0010,也就是2。这时电路就从20开始倒计时。以此循环反复,周期为50
13、秒。当主干道亮绿灯、支干道亮红灯时,数码管显示30秒倒数;当主干道亮红灯灯、支干道亮绿灯时,数码管显示20秒倒数。四硬件介绍基础知识交通灯控制器实例主要使用了89C51单片机的定时器计数器,基础知识主要包括交通灯的变化规律、定时器计数器的概念、定时器计数器的相关寄存器、定时器计数器的4种工作方式、以及定时器计数器的变成。4.1定时器/计数器定时器计数器是单片机中最常用、最重要的功能模块之一,本节通过交通灯控制器实例来演示定时器的使用,并复习如何使用散转程序。首先介绍交通灯以及定时器计数器的基础知识,接着介绍本实例的硬件电路构成,然后逐步分析定时器的变成以及程序的全貌,最后总结一下本实例的技巧与
14、注意点。4.2定时器计数器的概念89C51单片机内有两个可编程的定时器计数器T0、T1。当定时器计数器用作“定时器”时,每经过1个机器周期(12个时钟周期),计数器加1。当定时器计数器用作“计数器”时,计数器在对应的外部输入管脚(T0为P3.4引脚,T1为P3.5引脚)上每发生一次1到0的跳变时加1。使用“计数器”功能时,外部输入每个机器周期被采样一次。当某一周期管脚状态采样为高电平而下一周期采样为低电平时,计数器加1。由于检测下降沿跳变需要两个机器周期(24个时钟周期)的时间,所以技术频率最大值只能为时钟周期的124。计数器对外部输入信号的占空比并无限制,但为了保证给定的电平信号在其改变之前
15、至少被采样一次,外部输入信号必须至少保持一个完整的机器周期。4.3定时器计数器的相关寄存器与定时器计数器相关的寄存器有定时器计数器工作方式寄存器(TMOD)、定时器计数器控制寄存器(TCON)。TCON已经在2.5节受控输出实例中介绍过,因此,在本例中主要介绍TMOD寄存器。定时器计数器工作方式寄存器(TMOD),字节地址89H,不可进行位寻址。定时器计数器工作方式寄存器(TMOD)的8位分为两组,高4位控制T1,低4位控制T0。TMOD每一位的功能如下。GATE:门控位。GATE0,仅由运行控制位TRX(X0,1)1来启动定时器计数器运行;GATE1,由运行控制位TRX(X0,1)1和外部中
16、断引脚上的高电平共同来启动定时器计数器运行。CT:定时器模式和计数器模式选择位。CT0,为定时器模式;CT1,为计数器模式。M1、M0:工作方式选择位。M1、M0的4中编码对应4种工作方式,对应关系见表210。4.5定时器计数器的4种工作方式定时器计数器的4种工作方式下的逻辑结构如表所示。M1M2工作方式00方式0,为13位定时器/计数器01方式1,为16位定时器/计数器10方式2,为初值自动重装的8位定时器/计数器11方式3,仅T0有效,将T0分为两个8位定时器/计数器(1)方式0。定时器计数器的工作方式0称为13位定时器计数器的。它由TLX的低5位和TLX的8位构成13位的计数器,此时TL
17、X的高3位未使用。改工作方式是为了和48系列单片机兼容而设计的一种工作方式,一般情况不使用方式0进行定时计数。方式0的控制方式与方式1完全相同,下面重点介绍方式1的控制方式 。(2)方式1定时器计数器的工作方式1称为16位定时器计数器。它由TLX和THX构成,TLX计数溢出向THX进位,THX计数溢出置位TCON中溢出标志位TFX。GATE位的状态定时器计数器运行控制取决于TRX一个条件还是TRX和INTX引脚这两个条件。当GATE=0时,则只要TRX被置为1,定时器计数器即被允许计数(定时器计数器的计数控制仅由TRX的状态确定,TRX=1计数,TRX=0停止计数)。当GATE=1时,定时器计
18、数器是否计数由INTX输入的电平和TRX的状态共同确定:当TRX=1,且INTX=1时,才允许定时器计数器计数(定时器计数器的计数控制由TRX和INTX两个条件控制)。(3)方式2定时器计数器的工作方式0和方式1再计数溢出后,计数器的值为0,需要通过程序重新装入计数初值。定时器计数器的工作方式1称为初值自动重装的8位定时器计数器。在该工作方式下,TLX作为计数器,当TLX计数溢出时,在置1溢出标志TFX的同时,还自动的将THX中的常数送至TLX,使TLX从该常数开始重新计数。这种工作方式可以省去用户软件中重装常数的程序,简化定时常数的计算方法(确定计数初值),可以相当精确地确定定时时间。(4)
19、方式3工作方式3仅对定时器计数器0有效,在该工作方式之下,定时器计数器的0被拆成2个独立的定时器计数器:TL0、TF1。TL0使用T0的状态控制CT、GATE、TR0、INT0,而TH0被固定位一个8位定时器(不能作外部计数方式),并使用定时器计数器1的状态控制位TR1、和TF1,同时占用定时器T1的中断源。此时,定时器计数器1可设定为方式0、方式1和方式2,作为串行口的波特率发生器。4.5 定时器计数器的编程(1)初始化定时器计数器的初始化编程包括以下几个部分。根据要求给定时器计数器方式寄存器(TMOD)送一个方式控制字,以设定定时器计数器的工作方式。根据需要给TH和TL寄存器送初值,以确定
20、需要的定时时间或计数的初值。根据需要给中断允许寄存器(IE)送中断控制字,以开放相应的中断和设定中断优先级。给TCON寄存器送命令字以启动或禁止定时计数器的运行。(2)定时器计数器初值的计算。计数器初值:设计算器的模值位M,所需的计数值为C,计数初值设定为TC,则TC=M-C (M等于2的13次方,16次方,8次方)。定时器初值:设定时器的模值为M,需要的定时时间为T,定时器的初值设定为TC,则TC=M-T/t(M等于2的13次方,16次方,8次方)。五软件程序设计交通灯控制器实例使用了89C51单片机的定时器/计数器,首先分定时器初始化,定时器中断服务程序两个部分介绍定时器计数器的软件编程,
21、其次在画出程序流程图的基础上编写软件程序,并给出完整的交通灯控制器程序实例。5.1定时器初始化为了使定时器时间准确,避免因为定时器重装而引起的累计误差,应将定时器设置为初值自动装置的8位定时器/计数器,即定时器工作在工作方式2.在12MHz晶振条件下,8位定时器的最长定时时间是0.256ms,为了方便计算取定时时间为0.25ms,所以,定时0.5s需要定时器中断2000次。下面计算定时器的初值。定时器初值TC=M-T/t=256-250/1=6,因此TH0=06H,TL0=06H.定时器初始化程序如下,定时器T0设定为工作方式2,初始值为06H,自动重装入值为06H。T0-INIT; MOV
22、TMOD,#00000010B ; 定时器T0工作方式2MOV TL0,#06H ; 设定时器T0的初始值 MOV TH0,#06H ; 设定时器T0的自动重装值 MOV TCON,#00010000B ; 定时器T0的使能 SETB EA ;中断允许总控制位使能 SETB ET0 ;T0中断使能RET5.2定时器中断服务程序T0-INIT; DJNZ TIME-COUNT0,T0-INT-EXIT MOV TIME-COUNT0,#250DJNZ TIME-COUNT1, T0-INT-EXITMOV TIME-COUNT1,#8SETB SECOND-FLAG ;T0-INT-EXIT;
23、RETI每0.25ms定时器中断发生,程序跳转到中断服务程序T0-INT开始执行。中断服务程序每次将定时器中断计数变量减1,但定时器中断计数变量为0时,0.5s定时时间到,将位变量SECOND-FLAG置为1.定时器中断服务程序通过RETI指令返回,程序将跳转到进入中断前的断点继续执行。5.3程序流程图 程序较为简单,可以直接进行程序的编写,但本实例的程序流程比较复杂,在编写程序前,应当先画出程序流程图。程序流程图是描述程序运行流程的一种图表。它不仅描绘程序从头到尾的运行顺序,也描述程序运行过程中的所有可能发生的状况。开始初始化变量0.5s定时时间到状态标志变量的值时间计数变量减1南北红东西黄
24、时间计数=4状态变量=5南北绿东西红状态变量=0东西绿灯时间计数变量减1时间计数变量减1时间计数变量减1时间计数变量减1时间计数变量减1状态变量=3南北红东西绿状态变量=4时间计数=6时间计数=40南北绿灯南北黄东西红状态变量=2时间计数=40时间计数=4时间计数=6状态标志变量=1时间计数变量为0时间计数变量为0时间计数变量为0时间计数变量为0时间计数变量为0时间计数变量为0六电路图及仿真设计6.1设计完成原理图如下在电路连接完成后,将写好的程序放入单片机,运行。6.2在初始状态南北绿灯,东西红灯,持续时间为25s6.3南北跳转到黄灯5s,东西仍为红灯在南北转换为红灯的同时,东西灯转换到绿灯
25、持续25s;东西转换为黄灯持续5s,南北红灯不变;如此循环,从而实现交通灯的作用。四、五、六部分为基于单片机的交通灯系统设计,请理清思路!如果要保留,说明与第一种基于电子技术的方案的不同点(优劣之处)!7设计原理分析此部分内容进一步充实,安排在全文中设计要求之后方案之前。7.1交通灯显示时序的理论分析与计算对于一个交通路口来说,能在最短的时间内达到最大的车流量,就算是达到了最佳的性能,我们称在单位时间内多能达到的最大车流为车流量,用公式:车流量= 车流 / 时间 来表示。先设定一些标号如图21 所示。说明:此图为直方图,上边为北路口灯,右边为东路口灯,下边为南路口灯,左边为西路口灯。 图22
26、所示为一种红绿灯规则的状态图,分别设定为S1、S2、S3、S4,交通灯以这四的状态为一个周期,循环执行(见图23)。图21请注意图21b和图21d,它们在一个时间段中四个方向都可以通车,这种状态能在一定的时间内达到较大的车流量,效率特别高。依据上述的车辆行驶的状态图,可以列出各个路口灯的逻辑表,由于相向的灯的状态图是一样的,所以只需写出相邻路口的灯的逻辑表;根据图23 可以看出,相邻路口的灯它们的状态在相位上相差180。因此最终只需写出一组S1、S2、S3、S4的逻辑状态表。如表21 所示。表21表中的“”代表是红灯亮(也代表逻辑上的0),“”是代表绿灯亮(也代表逻辑上的1),依上表,就可以向
27、相应的端口送逻辑值。7.2交通灯显示时间的理论分析与计算东西和南北方向的放行时间的长短是依据路口的各个方向平时的车流量来设定,并且S1、S2、S3、S4各个状态保持的时间之有严格的对应关系,其公式如下示。T-S1+T-S2=T-S3T-S2=T-S4T-S1=T-S3我们可以依据上述的标准来改变车辆的放行时间。按照一般的规则,一个十字路口可分为主干道和次干道,主干道的放行时间大于次干道的放行时间,我们设定值时也应以此为参考5 课程设计的收获、体会和建议为期两周的电子线路综合设计,我们的收获和体会良多。通过这次课程设计,加强了我们思考和解决问题的能力以及动手实践的能力。平时在实验室做实验时有老师
28、在现场指导,而这次课程的设计和焊接都是在宿舍进行的,要求我们有很强的自学能力。遇到不懂的问题除了向周围的同学请教外,还需要翻阅相关书籍、上网查找资料。在这个过程中,我们加深了对课本内容的理解,也扩展了自己的知识面,学到了很多平时没有接触到的东西。这两周的实习过程曲折可谓一语难尽。虽然电路的原理图在软件上仿真成功了,但在现实中运行却不那么顺利,因为软件仿真时的环境是理想化的,而现实中存在着很多不确定因素的干扰。由于选择交通灯电路设计课题的人比较少,因此出现问题后也很难与他人比较找出原因。电路的调试过程是非常艰巨的,线路较复杂,仿佛每个地方都有可能出现异常状况。越是这样,我们越要细心,分主要模块进
29、行测试,最后一定能找出原因,使电路正常运作。根据小组成员的特点,我们这样分配了各位成员的任务:XXX同学主要负责电路设计与软件仿真,XXX同学主要负责电路的焊接,XXX同学主要负责课程设计报告的撰写。当然,这三个过程都是很重要的,在进行每一个步骤时我们都在不断地交流各自的意见,更正错误。这次实习锻炼了我们团队合作的能力。“三人行,必有我师焉”,小组成员之间可以互相取长补短,共同合作,把课程设计的任务做好。团队需要个人,个人也离不开团队,团队需要个人,个人也离不开团队,必须发扬团结协作的精神。这一点是非常宝贵的。致 谢感谢学校给了我们这次弥足珍贵的锻炼机会,感谢老师们的指导!在组员们的努力下以及
30、同学们的热情帮助下,我们得以最终设计出电路来,非常感谢在实习过程中帮助过我们的每一个人! 在电路设计和论文写作的过程中,许多同学给我们提出了宝贵的建议,同时还给予热情的支持和帮助;在调试电路的过程中,也得到了老师们的热情指导,在此一并致以诚挚的谢意! 参 考 文 献1康华光.电子技术基础数字部分.第5版.北京:高等教育出版社,2006.225-3012电子技术试验.华南农业大学工程学院电工电子教研室.2009.29-643康华光.电子技术基础模拟部分.第5版.北京:高等教育出版社,2006.54-934江晓安等 数字电子技术 西安电子科技大学西安电子科技大学出版社, 2004 5宋春荣 通用集
31、成电路速查手册山东科学技术出版社,2004 6陈大钦电子技术基础实验高等教育出版社,2002 7童诗白 数字电子技术高等教育出版社 2001 8何小艇等电子系统设计浙江大学出版社,2000 9潘松. VHDL实用教程 电子科技大学出版社, 2004 10郑家龙等集成电子基础教程高教出版社,2002 11康华光. 电子技术基础. 北京:高等教育出版社,2005 12何伟 现代数字系统实验及设计 重庆大学出版社,2005 13金唯香等. 电子测试技术. 湖南大学出版社,2004 附录一 交通灯电路原理图图7 交通灯电路原理图附录二 元器件清单表表3 元器件清单表 器件名称 数量 74LS193 5 CD4060 1 74LS27 4 74LS74 1 74LS04 2 74LS08 4 CD4511 2 74LS20 2 2位数码管 1 100电阻 3 22M电阻 1可调电容50pF 2晶振32768Hz 1发光二极管 10IC座14脚 13IC座16脚 8IC座24脚 1 附录三 交通灯实物图图8 交通灯实物图如图8所示为交通灯实物图。其中,右上角的电源线用来连接5V电压和接地,在它左边是电源开关。中间部分是一个2位数码管,用于倒计时显示。右下角是交通灯显示部分,分别显示主干道和支干道的红绿灯。