找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 8962|回复: 18
打印 上一主题 下一主题
收起左侧

数字电路交通灯Proteus仿真电路设计

  [复制链接]
跳转到指定楼层
楼主
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)

有设计方案文档,工程文件。
1 前言
1.1 设计背景
1.2 设计目标
1.3 实施计划
2 总体方案设计
2.1 方案比较
2.2 方案论证
2.3 方案选择
3 单元模块设计
3.1 各单元模块功能介绍及电路设计
3.1.1 主控电路模块设计
3.1.2 倒计时控制电路模块设计
3.1.3 置数存储电路模块设计
3.1.4 控制置数电路和逻辑表达式电路模块设计
3.1.5 555定时器电路模块设计
3.2 主要器件的介绍
3.2.1 74LS192器件介绍
3.2.2 74LS161器件介绍
3.2.3 555定时器介绍
3.2.4 74LS245器件介绍
4 系统调试
4.1 调试环境
5 结论
6 总结与体会
7 谢辞
8 参考文献
附录

1         前言

随着现代化科学技术和社会经济的快速发展,城市车辆的数目大幅度增加,随之而来的交通堵塞等问题也被受人们的关注。本文设计的目的是要设计一种能够更好的使用于现实交通情况的交通信号灯控制系统。

1.1 设计背景

由一条主干道和一条支干道的汇合点形成十字交叉路口,为确保车辆安全、迅速地通行,在交叉路口的每个入口处设置了红、绿、黄三色信号灯。红灯亮禁止通行;绿灯亮允许通行;黄灯亮则给行驶中的车辆有时间停靠在禁行线内。实现红、绿灯的自动指挥对城市交通管理现代化有着重要的意义。

1.2 设计目标

设计一个交通灯能实现以下功能:

(1)当主干道允许通行亮绿灯时,支干道亮红灯,而支干道允许亮绿灯时,主干道亮红灯。
    (2)主支干道交替允许通行,主干道每次放行30s、支干道20s。设计30s和20s计时显示电路。
    (3)在过程中间,要亮5s的黄灯作为过渡,设置5s计时显示电路。

1.3 实施计划

(1)设计一个十字路口的交通灯控制电路,十字路口分为主干道、次干道,两干道交替运行,红灯亮表示禁止通行,绿灯亮表示可以通行。主干道放行时间为30秒,次干道为20秒。

(2)主干道和支干道交替放行,主干道每次放行30s,支干道每次放行20s

(3)每次绿灯变红灯时,黄灯先亮5s,此时红灯不变

(4)用十进制数字显示放行及等待时间

(5)用74LS163,74LS192,74LS245,逻辑符号,显示译码器等器件组成交通信号灯电路并在protues软件上进行仿真与调试。

(6)画出各单元电路图、整个系统逻辑框图和逻辑电路图,写出设计、实验总结报告。

2         总体方案设计2.1 方案比较

方案一原理框图如图2-1所示:

图2-1  方案一的原理框图

设主干道方向红绿黄灯分别为R,G,Y,次道路方向红绿黄灯分别为RR,GG,YY。用十进制减数计数器控制三种状态的保持和切换,主干道和次干道共用同步的脉冲信号,主干道方向先由30s减数到0s的时候切换为黄灯并开始5s倒计时,到第二次减数到0s时切换为绿灯并开始20s倒计时,待减数到0s时在切换为绿灯,为一个循环(周期为55s)。同理,次干道方向红黄绿三灯保持亮的时间分别为30s、5s、20s,一个循环也是55s,可实现红黄绿的切换。

方案二原理框图如图1-2所示。

图2-2  方案的原理框图

主干道方向红绿黄灯分别为R0,G0,Y0,次道路方向红绿黄灯分别为R1,G1,Y1。用同步十进制可逆计数器控制三种状态的保持和切换,主干道和次干道共用同步的脉冲信号,主干道通行,支干道不通行,此时主绿灯和支红灯亮,持续时间为30s。30秒后,主干道停车,支干道任不通行,此时主黄灯和支红灯亮,持续时间为5s。5s后,主干道不通行,支干道通行,此时主红灯和黄灯亮,持续时间为20s。20s后,主干道仍不通行,支干道停车,此时主红灯和支黄灯亮,持续时间5s,可实现红黄绿的切换。

2.2 方案论证

方案一:由方案一的原理描述可得,方案一采用的是基本数字电路,原理比较简单。而其中采用的器件例如74LS163,74LS192等器件都是数字电路基础中所学过的,对其原理的掌握更透彻,更容易实现本次交通灯信号控制器的设计。但是此方案也有一个大的缺陷:它对两路时间对称的系统容易实现,但对设计要求的两路时间不对称的系统较难实现,如果要实现两路时间不对称的控制就要多加控制信号,这样实现就很麻烦,且条理不清晰。

方案二:由方案二的原理描述可得, 方案二用的也是数字电子基础中所学的基本原理与芯片,具有和方案一的全部优点,并且设计的思路清晰。每一个部分都可以划分为一个模块,可以便于前期连接时检查错误和后期的测试。在设计时可以先将每个模块分别连接完成后再将其连接为一个整体。更加有利于本次交通信号控制系统的设计的实现。

2.3 方案选择

综上分析,此设计方案选择方案二,其原理简单,便于连线,便于调试,且容易实现与灯控制信号同步的倒计时功能。

3         单元模块设计

本节主要介绍系统各单元模块的具体功能、电路结构、工作原理、以及各个单元模块之间的联接关系;同时本节也会对相关电路中的参数计算、元器件选择、以及核心器件进行必要说明。

3.1 各单元模块功能介绍及电路设计

本系统主要分为7个单元模块,它们分别是:主控电路模块、倒计时控制电路模块、置数存储电路模块、控制置数电路模块、555定时器电路模块、控制黄灯闪烁电路模块和逻辑电路表达式电路模块。各单元模块功能及相关电路的具体说明如下。

3.1.1     主控电路模块设计
  • 模块的具体功能和原理

该模块可以控制交通灯信号系统的四种状态,选择四位二进制同步加法计数器74LS161和反相器74LS04组成该模块,电路共有4种状态,这四个状态可以用二进制编码表示,S0用00表示,S1用01表示,S2用10表示,S3用11表示:

S0状态:表示主路绿灯亮,支路红灯亮,30s计时器开始计时,且通车时间为已经到30秒。

S1状态:表示主路通车时间已经到30秒,此时,主路黄灯亮,支路红灯亮,5s计时器开始计时。

S2状态:表示主干道黄灯时间已经到5s,此时,主路红灯亮,支路绿灯亮,20s计时器开始计时。

S3状态:表示支路通车时间已经到20秒,此时,主路红灯亮,支路黄灯亮,5s计时器开始计时。

  • 模块的结构框图

图3-1

  • 模块的具体电路

图3-2


将74LS161的CP输入端连接在倒计时十位的输出端,由74LS161的芯片功能可知,当第一个CP上升沿信号到来时,芯片通过同步并行置数功能开始计数随后保持状态,直到下一个CP上升沿信号到来的时候,就实现“置零”的功能,从而实现S0,S1,S2,S3之间的状态转换。

3.1.2     倒计时控制电路模块设计
  • 模块的具体功能和原理

该电路主要是由2片十进制计数器74LS192芯片组成,实现30秒倒计时,20秒倒计时,5秒倒计时计时功能,然后通过主控制电路实现转换,最终各个方向的倒计时公用一套译码显示数码管显示出来。交通灯的减计数分主干道和支干道两部分,由于两部分的计数时间不同因而要分别采用两个计数器对其进行计数,计数采用倒计时的方式,因而需要采用带减计数功能的计数芯片。

  • 模块的结构框图

                           

图3-3

4、模块的具体电路

              

                                     图3-4

该电路模块选择利用双时钟控制的可逆计数器74LS192两片级联,并且利用十位

在0之后的“9”态进行异步置数。74LS192的个位用555振荡电路提供的秒脉冲,实现0-9递减,当个位递减到零时,TCD会在后半个CP中有一个下降沿和一个上升沿,为十位提供减计数器秒脉冲,而当十位也递减到0时,TCD的后半个CP也会产生一个下降沿和一个上升沿。这个CP用来控制主控电路切换状态的脉冲。在主控电路的作用下,从而实现S0,S1,S2,S3之间的状态转换。D0-D7用于状态切换后的置数输入。当十位减到0时,TCD将会产生错位脉冲,待主控电路切换状态后,置数存储电路已经切换到所需要置数的电路,当十位减法计时器从0借位后即将切换到9的瞬间,用与非门74lLS00将十位的Q0和Q3与非,此时置数,即完成了一次完整的状态切换。同理,每个状态的切换原理相同。

3.1.3     置数存储电路模块设计
  • 模块的具体功能和原理

置数存储模块需要预置,所以通过3片74LS245来预置30秒,20秒,5秒到减计数器,3片74LS245的输入数据分别接入30、20、5这3个不同的数字,74LS245的输出数据和减法计数器相连,实现设计要求的计时时间。当接低电平时数据由B传到A,当接高电平时数据由A传到B。

  • 模块的结构框图

图3-5

  • 模块的具体电路

图3-6

将DIR端接入1,实现端输入端输出功能,将三块74LS245A端分别接入“00110000”即30,“0010000”即20,“00000101”即5。通过或门将Q1,Q2接入置数为30的74LS245的端,当输入为0时,将在显示屏上显示30。同理可得20和5。

3.1.4     控制置数电路和逻辑表达式电路模块设计

1、模块的具体功能和原理

该模块由74LS32、74LS00、74LS04、74LS08组成,G控制预置为30的始能端,R控制预置为20的始能端,Y控制预置为5的始能端。

2、模块的结构框图

图3-7

3、模块的具体电路

图3-8

=,,,=,=,=根据逻辑表达式选择合适的器件组成逻辑电路。

表3-1 主控制器四种状态真值表

主控制器

主干道

支干道


Q0

Q1

R0

Y0

G0

R1

Y1

G1

S0

0

0

0

0

1

1

0

0

S1

0

1

0

1

0

1

0

0

S2

1

0

1

0

0

0

0

1

S3

1

1

1

0

0

0

1

0


3.1.5     555定时器电路模块设计

1、模块的具体功能

振荡电路输出频率为1Hz、幅度为5V的时钟脉冲,为提高精度,本设计系统利用555定时器设计一个输出频率为1Hz的脉冲信号。

  • 模块的组成和工作原理

该模块由555定时器和电阻、电容组成。555定时器是一种多用途的模拟、数字混合集成电路,在波形的产生与变换,控制与检测、家用电器以及电子玩具等许多领域中得到了应用。555定时器功能多样,应用广泛,只要外部配上几个阻容元器件即可构成单稳态触发器、施密特触发器、多谐振荡器等电路。电路路由一个555芯片、两个电阻和两个电容组成,通过电阻给电容充电、放电的过程来产生振荡,从而输出矩形脉冲。振荡电路输出频率为1Hz、幅度为5V的时钟脉冲,为提高精度,利用555定时器设计一个输出频率为1Hz的脉冲信号。

  • 模块的具体电路

图3-12

若T=1s,令C=10μF,R1=15K,R2=68K,经过计算的T=1s,则f =1Hz。从而使传输脉冲周期为1s。

4、模块中相关参数的计算

暂稳态Ⅰ的维持时间,即输出的正向脉冲宽度

                      (公式3-3)

暂稳态Ⅱ的维持时间,即输出的负向脉冲宽度

                         (公式3-4)

3.2 主要器件的介绍3.2.1     74LS192器件介绍

功能:74LS192是双时钟方式的十进制可逆计数器。(BCD,二进制)。CPU为加计数时钟输入端,CPD为减计数时钟输入端。LD为预置输入控制端,异步预置。 CR为复位输入端,高电平有效,异步清除。CO为进位输出:1001状态后负脉冲输出,BO为借位输出:0000状态后负脉冲输出。

引脚图如下:

图3-13

图中: 为加计数时钟输入端,为减计数时钟输入端;为预置输入控制端,异步预置;为复位输入端,高电平有效,异步清除;为进位输出:1001状态后负脉冲输出;为借位输出:0000状态后负脉冲输出。

功能表如下:

表3-2 74LS192功能表
输入                                 输出

1
×
×
×
×
×
×
×
0
0
0
0
0
0
×
×
d
c
b
a
d
c
b
a
0
1
1
×
×
×
×
加计数
0
1
1
×
×
×
×
减计数

3.2.2     74LS161器件介绍

功能:从74LS161功能表功能表中可以知道,当清零端CR=“0”,计数器输出Q3、Q2、Q1、Q0立即为全“0”,这个时候为异步复位功能。当CR=“1”且LD=“0”时,在CP信号上升沿作用后,74LS161输出端Q3、Q2、Q1、Q0的状态分别与并行数据输入端D3,D2,D1,D0的状态一样,为同步置数功能。而只有当CR=LD=EP=ET=“1”、CP脉冲上升沿作用后,计数器加1。74LS161还有一个进位输出端CO,其逻辑关系是CO= Q0·Q1·Q2·Q3·CTT。合理应用计数器的清零功能和置数功能,一片74LS161可以组成16进制以下的任意进制分频器。引脚图如下:

图3-14

引脚图介绍:时钟信号;四个数据输入端;清零;始能端;数据输出端

表3-3 74LS161功能表
输入                          输出


0
×
×
×
×
×
×
×
×
0
0
0
0
0
1
0
×
×
×
d
c
b
a
d
c
b
a


1
1
1
1
×
×
×
×
计数


1
1
0
×
×
×
×
×
保持


1
1
×
0
×
×
×
×
×
保持
0

3.2.3     555定时器介绍

555定时器是一种中规模集成电路,只要在外部配上适当阻容元件,就可以方便地构成脉冲产生和整形电路,在工业控制,定时,仿声,电子乐器及防盗报警等方面运用很广。电路结构和芯片图形如下所示:

图3-15 555集成定时器的电路结构和芯片图形

表3-4  555定时器功能表

的状态

×

×

0

导通

1

导通

1

不变

不变

1

截止


555 定时器的功能主要由两个比较器决定。两个比较器的输出电压控制RS 触发器和放电管的状态。在电源与地之间加上电压,当 5 脚悬空时,则电压比较器 C1 的反相输入端的电压为 ,C2 的同相输入端的电压为。若触发输入端 TR 的电压小于,则比较器 C2 的输出为 0,可使 RS 触发器置 1,使输出端 OUT=1。如果阈值输入端 TH 的电压大于 ,同时 TR 端的电压大于,则 C1 的输出为 0,C2 的输出为 1,可将 RS 触发器置 0,使输出为 0 电平。

3.2.4     74LS245器件介绍

总线驱动器74LS244和74LS245经常用作三态数据缓冲器,74LS244为单向三态数据缓冲器,而74LS245为双向三态数据缓冲器。单向的内部有8个三态驱动器,分成两组,分别由控制端 1G和2G控制; 双向的有16个三态驱动器,每个方向8个。在控制端G有效时(G为低电平),由DIR端控制驱动方向:DIR为“1”时方向从左到右(输出允许),DIR为“0”时方向从右到左(输入允许)。引脚图如下:

图3-16

图中DIR,为输入输出端口转换用,DIR=1高电平时信号由A端输入B端输出,DIR=0低电平时信号由B端输入A端输出。第2-9脚是A信号输入输出端,A1=B1,A8=B8,A1与B1是一组,如果DIR=1,OE=0则A2输入B2输出,其它类同。如果DIR=0,OE=0则B2输入A2输出,其它类同。第11-18脚B信号输入输出端,功能与A端一样,不再描述。第19脚OE,使能端,若该脚为1, B端或者A端的信号将不导通,只有为0时B端或者A端的信号才被启用,该脚也就是起到开关的作用。第10脚GND,电源地。第20脚VCC,电源正极。由于本设计需要顺序输出30s,20s,5s的时间所以选择了74LS245芯片,因其有控制使能端且好理解。

5         结论

该设计主要分为7个单元模块,它们分别是:由74LS161和74LS04组成的主控电路模块、两片74LS192组成的倒计时控制电路模块、三片74LS245组成的置数存储电路模块、74LS32、74LS04和74LS00组成的控制置数电路模块、555定时器电路模块、TRIIBUFFER控制黄灯闪烁电路模块和74LS08、74LS04组成的逻辑电路表达式电路模块。

该设计使用proteus仿真软件中的traffic代替实际生活中信号灯,当主干道允许通行亮绿灯时,支干道亮红灯,而支干道允许亮绿灯时,主干道亮红灯,主支干道交替允许通行,主干道每次放行30s、支干道20s。该实验设计了30s和20s计时显示电路,在过程中间,要亮5s的黄灯作为过渡,设置5s计时显示电路。但是在设计过程中由于紧急红灯的设计需要四个同时闭合的开关稍显麻烦,还有手动清零的设置,由于我想将紧急红灯与手动清零放在一起做,所以我因为时间关系并未想到更好的关于紧急红灯的改进方法,所以暂时放弃该想法。结合实际生活我想设置夜间黄灯闪烁,但是需要设计24的计数器,由于时间匆忙,所以该想法并未实现。希望在之后的空余时间里能想到更好的解决办法。



附录1 系统的原理电路图


报错[SPICE] Gmin step [31 of 120] failed

有错误的仿真工程:

交通灯实验有51hei有仿真.7z (648.59 KB, 下载次数: 262)


修复后的工程:

Proteus仿真图.7z (697.9 KB, 下载次数: 54)


紧急红绿灯区域,有个SW-DPDT点一下就好了,感谢坛友帮助, 还有一些小问题

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶1 踩
回复

使用道具 举报

沙发
ID:743654 发表于 2020-5-31 14:05 | 只看该作者
好东西,怎么没人顶呀
回复

使用道具 举报

板凳
ID:767894 发表于 2020-6-7 10:40 来自手机 | 只看该作者
楼主,这个我怎么仿真之后显示错误呀
回复

使用道具 举报

地板
ID:643316 发表于 2020-6-13 16:25 | 只看该作者
你protues 啥版本的,怎么打不开
回复

使用道具 举报

5#
ID:643316 发表于 2020-6-13 17:26 | 只看该作者
1878971978 发表于 2020-6-7 10:40
楼主,这个我怎么仿真之后显示错误呀

我也是
回复

使用道具 举报

6#
ID:777890 发表于 2020-6-16 08:33 来自手机 | 只看该作者
我的运行也报错呢
回复

使用道具 举报

7#
ID:766861 发表于 2020-6-16 09:13 | 只看该作者
感谢楼主分享
回复

使用道具 举报

8#
ID:784392 发表于 2020-6-19 20:21 | 只看该作者
运行错误......
回复

使用道具 举报

9#
ID:787038 发表于 2020-6-22 19:53 | 只看该作者
我的运行也报错呢
回复

使用道具 举报

10#
ID:665651 发表于 2020-7-2 10:31 来自手机 | 只看该作者
不懂我下载一页元器件干嘛。。。
回复

使用道具 举报

11#
ID:155987 发表于 2020-12-23 10:46 | 只看该作者
直接报错,都不能运行
回复

使用道具 举报

12#
ID:887941 发表于 2021-3-3 11:12 | 只看该作者
为什么烧不进去代码,急求
回复

使用道具 举报

13#
ID:160725 发表于 2021-11-2 16:28 | 只看该作者
运行错误,什么版本的?
回复

使用道具 举报

14#
ID:453974 发表于 2021-11-3 21:58 | 只看该作者
喜之郎果冻 发表于 2020-6-13 16:25
你protues 啥版本的,怎么打不开

我这是8.6的版本
回复

使用道具 举报

15#
ID:453974 发表于 2021-11-3 21:59 | 只看该作者

紧急红绿灯区域,有个SW-DPDT点一下就好了
回复

使用道具 举报

16#
ID:453974 发表于 2021-11-3 22:00 | 只看该作者
zhangzhijing 发表于 2021-3-3 11:12
为什么烧不进去代码,急求

这是数字电路,不需要烧写程序
回复

使用道具 举报

17#
ID:453974 发表于 2021-11-3 22:01 | 只看该作者
bengbai4 发表于 2020-12-23 10:46
直接报错,都不能运行

紧急红绿灯区域,有个SW-DPDT点一下就好了

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

18#
ID:453974 发表于 2021-11-3 22:01 | 只看该作者
afeuzhjq 发表于 2020-6-22 19:53
我的运行也报错呢

紧急红绿灯区域,有个SW-DPDT点一下就好了
回复

使用道具 举报

19#
ID:624769 发表于 2021-11-3 22:30 | 只看该作者
关中小河 发表于 2021-11-2 16:28
运行错误,什么版本的?

认真看标题, 人家就是报错,来求助的, 你报错就对了!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表