智能交通灯设计与实现.docx

上传人:b****5 文档编号:6368465 上传时间:2023-01-05 格式:DOCX 页数:15 大小:20.57KB
下载 相关 举报
智能交通灯设计与实现.docx_第1页
第1页 / 共15页
智能交通灯设计与实现.docx_第2页
第2页 / 共15页
智能交通灯设计与实现.docx_第3页
第3页 / 共15页
智能交通灯设计与实现.docx_第4页
第4页 / 共15页
智能交通灯设计与实现.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

智能交通灯设计与实现.docx

《智能交通灯设计与实现.docx》由会员分享,可在线阅读,更多相关《智能交通灯设计与实现.docx(15页珍藏版)》请在冰豆网上搜索。

智能交通灯设计与实现.docx

智能交通灯设计与实现

智能交通灯设计与实

RevisedonNovember25,2020

辽宁工程技术大学

集成电路EDA技术课程设计报告

题目:

智能交通灯设计与实现

指导教师:

李淑艳

院(系、部):

电子与信息工程学院

专业班级:

电子09—2

学号:

姓名:

穆加林

日期:

智能交通灯设计与实现

摘要:

智能的交通信号灯指挥着人和各种车辆的安全运行,实现红、黃、绿灯的自动指挥是城乡交通管理现代化的重要课题。

在城乡街道的十字交义路口,为了保证交通秩序和行人安全,一般在每条道路上各有一组红、黃、绿交通信号灯,其中红灯亮,表示该条道路禁止通行;黃灯亮,表示该条道路上未过停车线的车辆停止通行,已过停车线的车辆继续通行;绿灯亮,表示该条道路允许通行。

交通灯控制电路自动控制十字路口两组红、黃、绿交通灯的状态转换,指挥各种车辆和行人安全通行,实现十字路口城乡交通管理自动化。

本文为了实现交通道路的管理,力求交通管理先进性、科学化。

分析应用了单片机实现智能交通灯管制的控制系统,以及该系统软、硕件设汁方法,实验证明该系统实现简单、经济,能够有效地疏导交通,提高交通路口的通行能力。

关键词:

交通信号灯单片机

1.技术指标

1)设计一个十字路口的交通灯控制电路,要求南北方向和东西方向两个交义路口的车辆交替运行。

2)每次绿灯变红灯时,要求黃灯先亮5S,才能变换运行车辆。

3)东西方向、南北方向车道除了有红、黃、绿灯指示外,每一种灯亮的时间都用数码管显示器进行显示(采用倒计时的方法)。

4)同步设置人行横道红、绿灯指示。

5)考虑到特殊车辆情况,设置紧急转换开头。

2.智能交通灯的方案选择

1)智能交通灯的研究现状

其实,用红黄绿三色来作交通讯号和人的视觉机能结构和心理反应有关。

我们的视网膜含有杆状和三种锥状感光细胞。

杆状细胞对黄色的光特别敏感,三种锥状细胞则分别对红光、绿光及蓝光最敏感。

山于这种视觉结构,人最容易分辨红色与绿色。

虽然黃色与蓝色也容易分辨,但因为眼球,对蓝光敬感的感光细胞较少,所以分辨颜色,还是以红、绿色为佳。

颜色也有活动的含意,要表达热或剧烈的话,最强是红色,其次是黃色。

绿色则有较冷及平静的含意。

因此,人们常以红色代表危险,黃色代表警觉,绿色代表安全。

而且,由于红光的穿透力最强,其他颜色的光很容易被散射,在雾天里就不容易看见,而红光最不容易被散射,即使空气能见度比较低,也容易被看见,不会发生事故。

所以我们用红色表示禁止。

2)智能交通灯的设计方案

针对道路交通拥挤,交义路口经常出现拥堵的情况。

利用单片机控制技术提出了软件和硬件

由于AT89S51单片机自单带有2计数器,6个中断源,能满足系统的设计要求。

用单片机设计不但设计简单,而且成本低,用其设计的交通灯也满足了要求,所以本文采用单片机设讣交通灯,系统构图如图1所示:

图1系统结构框图

3.智能交通灯方案的实现

根据设汁任务和要求,可画出该控制器的原理框图,为确保十字路口的交通安全,往往都采用交通灯自动控制系统来控制交通信号。

其中红灯亮,表示禁止通行;黃灯亮表示暂停;绿灯亮表示允许通行。

1)控制器的系统框图如图2所示

图2交通灯控制器系统框图

2)电路图

智能交通灯电路图如图3所示。

3)智能交通灯系统的组成

交通灯系统山四部分组成:

车检测电路,信号灯电路,时间显示电路,紧急转换开关。

4)工作原理

十字路口的红绿灯指挥着行人和各种车辆的安全通行。

有一个主干道和一个支干道的十字路口如图3-1所示。

每边都设置了红、绿、黃色信号灯。

红灯亮表示禁止通行,绿灯亮表示可以通行,在绿灯变红灯时先要求黃灯亮儿秒钟,以便让停车线以外的车辆停止运行。

I、信号灯电路

信号灯用来显示车辆通行状况,下面以一个十字路口为例,说明一个交通灯的四种状态见图5。

每个路口的信号的的转换顺序为:

绿一一〉黃一一>红,绿灯表示允许通行,黃灯表示禁止通行,但已经驶过安全线的车辆可以继续通行,是绿灯过渡到红灯提示灯。

红灯表示禁止通行,绿灯的时间为20秒,红红最短时间为25秒,黄灯时间为5秒。

II、时间显示电路

在交通信号灯的正上方安装一个可以显示绿灯通行时间,红灯等待时间的显示电路,采用数码管显示电路是一种很好的方法。

山于东往西方向和西往东方向显示的时间相同,南往北方向和北往南方向显示的时间也相同,所以只需要考虑四位数码管显示电路,其中东西方向两位,南北方向两位,两位数码管可以时间的时间为0-99秒完全可以满足系统的要求。

4.智能交通灯方案的仿真图

五•结束语:

1、能实现的功能

交通灯的状态转换和计时时间的显示,基本能实现甲、乙道路直行和转弯灯的显示功能。

2、不足之处

设讣过程中用的芯片太多。

传统的定时交通灯控制还是起到了一定的作用,但随着社会的高速发展,城市化日益完善,车的数量必然增多,给交通的压力也增大,这是传统的交通控制等已经无法满足现在的通行状况,功能还不够完善。

交通灯红、黃、绿时间还不能按交通紧松完成手控调整,软件编写实现功能还不能很好控制硕件。

通过这次设计,掌握了对Proteus的基本使用方法,掌握了一些单片机的使用及构造知识,对单片机有进一步的认识。

设计中遇到的问题也可以通过自己的查询和同学的帮助解决,锻炼了自己的独立思维能力和动手动脑能力。

要有一个明确的H标和一颗团结合作的心,还要保持一个良好的心态,才能把设计

做得更好!

参考文献:

1、

陈大钦主编

《电子技术基础实验》

高等教育出版社2004年

2、

陈梓城主编

《电子技术实训》

机械工业出版社2003年

3、

吴黎明主编

《单片机原理及应用技术》

科学出版社2003年

4、

李学海主编

《标准80C51单片机基础教程》

北京航空航天大学出版社2006年

5、

刘乐善主编

《微型计算机接口技术及应用》

华中科技大学出版社2004年

附录:

附智能交通灯控制程摩:

ORG0000H

ABIT

EQU

20H

;用于存放南北十位数

BBIT

EQU

21H

;用于存放南北十位数

CBIT

EQU

22H

;用于存放东西十位数

DBIT

EQU

23H

;用于存放东西位数

 

TEMPIEQU24H;用于存放第一二南北状态要显示的时间

TEMP2EQU25H;用于存放第一二东西状态要显示的时间

TEMP3EQU26H;用于存放第三第四南北状态要显示的时间

TEMP4EQU27H;用于存放第三第四南北状态要显示的时间

LJMPMAIN

CLR

CLR;南北通行,东西禁止通行

CLR

CLR

MOVPl,#OFFH;清除先前状态

MOVP2,#OFFH

CLR

CLR

CLR;东西通行,南北禁止通行

CLR

ORG0100H;初始情况

MOVPl,#OFFH

MOVP2,#0FFH;灭所有灯

MOVTMOD,#55H;计数方式方式1

MOVTEMPI,#20;

MOVTEMP2,#25

MOVTEMP3,#25

STAR:

MOVPl,#OFFH

MOVP2,#0FFH;灭所有灯

MOVA,24H;将显示时间送A

CJNEA,#20,T40T;判断时间,选初始值

T20T:

;南北通行要显示的时间为20的讣数器初始值

CLRTFO;清TFO

CLRTF1;清丁扌1

MOVTH1,#OFFH;送20秒时的初始值

MOVTHO,#OFFH

MOVTLO,#OFCH

LJMPTEMP20;跳到20秒

TEMP20:

;TEMPI二20情况

SETBTRO;开始讣数

SETBTR1

CLR

CLR;南北通行,东西禁止通行

CLR

CLR

MOVTEMPI,#20;南北要显示的时间,

MOVTEMP2,#25;东西要显示的时间

STLOP:

ACALLDISPLAYl

;调用显示

DECTEMPI

;时间够一秒显示时间减1

DECTEMP2

MOVA,TEMPI

CJNEA,#0,NEXT

;若显示时间不为0保持现在状态

LJMPSTAR2

;若显示时间为0跳到第二状态

NEXT:

LJMPSTLOP

STAR2:

;状态1

SETB

CLR;南北黃灯,东西禁止通行

SETB

CLR

MOVTEMPI,#05;南北要显示的时间,

MOVTEMP2,#05;东西要显示的时间,

STL0P2:

DECTEMPI

DECTEMP2

;时间够一秒显示时间减1

CJNEA,#0,NEXT2;若显示时间不为0保持现在状态

JBTF1,T40

;判断南北是否多车

JBTFO,T40

;判断北南是否多车

MOVTEMPI,#20

;少车下次显示时间为20秒

LJMPSTAR3

;若显示时间为0跳到第三状态

NEXT2:

LJMPSTL0P2

SETBTR0;开始计数

SETBTR1

CLR

CLR;南北通行,东西禁止通行

CLR

CLR

MOVTEMPI,#20;南北要显示的时间,

MOVTEMP2,#25;东西要显示的时间

STL0P11:

ACALLDISPLAY1

;调用显示

DECTEMPI

DECTEMP2

;时间够一秒显示时间减1

MOVA,TEMPI

CJNEA,#0,NEXT11;若显示时间不为0保持现在状态

LJMPSTAR22

;若显示时间为0跳到第二状态

NEXT11:

LJMPSTL0P11

STAR22:

;状态1

SETB

CLR;南北黃灯,东西禁止通行

SETB

CLR

MOVTEMPI,#05;南北要显示的时间,

MOVTEMP2,#05;东西要显示的时间,

STL0P22:

ACALLDISPLAY1;调用显示

DECTEMPI;时间够一秒显示时间减1

DECTEMP2

MOVA,TEMPI

CJNEA,#0,NEXT22;若显示时间不为0保持现在状态

LJMPSTAR3;若显示时间为0跳到第三状态

NEXT22:

LJMPSTL0P22

STAR3:

MOVA,26H

CJNEA,#25,T40T1;判断时间,选初始值

T20T1:

;南北通行要显示的时间为20的计数器初始值

CLRTFO;清溢出位

CLRTF1

MOVTH1,SOFFH;给初值

MOVTL1,SOFCH

MOVTHO,#OFFH

MOVTLO,#OFCH

LJMPTEMP320

CLRTFO;

CLRTF1

MOVTH1,#OFFH;给初值

MOVTL1,#0F8H

MOVTHO,#OFFH

MOVTLO,#0F8H

LJMPTEMP340

TEMP320:

;状态三

SETBTRI;南北停止计数

SETBTRO;东西开始计数

CLR

SETB

CLR

SETB

CLR

SETB

CLR

MOVTEMP3,#25

;南北要显示的时间,

MOVTEMP4,#20

STLOP33:

;东西要显示的时间,

ACALLDISPLAY

;调用显示

DECTEMP3

DECTEMPI

;时间够一秒显示时间减1

MOVA,TEMP4

CJNEA,#0,NEXT33;若显示时间不为0保持现在状态

LJMPSTAR34

;若显示时间为0跳到笫四状态

NEXT33:

LJMPSTLOP33

STAR34:

;状态四

SETB

CLR

SETB

;东西黃灯,南北禁止通行

CLR

MOVTEMP3,#05

;南北要显示的时间,

MOVTEMP4,#05

STL0P34:

;东西要显示的时间,

ACALLDISPLAY

;调用显示

DECTEMP3

DECTEMP4

;时间够一秒显示时间减1

MOVA,TEMP4

CJNEA,#0,NEXT34;若显示时间不为0保持现在状态

JBTF1,T402

JBTF0,T402

MOVTEMP3,#25

NEXT34:

LJMPSTLOP34

TEMP340:

SETBTR1;南北停止计数

SETBTRO;东西开始计数

SETB;东西通行,南北禁止通行

CLR

SETB

CLR

SETB

CLR

SETB

CLR

MOVTEMP3,#25;南北要显示的时间,

MOVTEMPI,#20;东西要显示的时间,

STL0P43:

ACALLDISPLAY;调用显示

DECTEMP3;时间够一秒显示时间减1

DECTEMP4

MOVA,TEMP4

CJNEA,#0,NEXT43;若显示时间不为0保持现在状态

LJMPSTAR44;若显示时间为0跳到第四状态

NEXT43:

LJMPSTLOP43

STAR44:

;状态四

SETB

CLR

CLR

MOVTEMP3,#05

;南北要显示的时间,

MOVTEMP4,#05

;东西要显示的时间,

STL0P44:

ACALLDISPLAY

;调用显示

DECTEMP3

;时间够一秒显示时间减1

DECTEMP4

MOVA,TEMP3

CJNEA,#0,NEXT44;若显示时间不为0保持现在状态

JBTF1,T403

JBTFO,T403

MOVTEMP3,#25

LJMPSTAR

T403:

MOVTEMP3,#25

LJMPSTAR

NEXT44:

LJMPSTL0P44

;显示

DISPLAY1:

MOVA,TEMPI

;将南北要显示的数存放到A

MOVB,#10;B=10

DIVAB;A除以B商存A,余数B

MOVB_BIT,A

;将A放到20H

MOVA_BIT,B

;将8放到21H

MOVA,TEMP2

;将东西要显示的数存放到A

MOVB,#10

;B=10

DIVAB

;A除以B商存A,余数B

MOVC_BIT,A

;将人放到22H

MOVD_BIT,B

;将8放到23H

MOVDPTR,#NUMT;

MOVRO,#2;RO二2

DPLU:

MOVRl,#250;R1二250

DPL0P1:

MOVA,A_BIT;将南北要显示的10位数送A

MOVCA,@A+DPTR;查表

MOVPO,A;显示南北10位数

CLR

ACALLDIMS;延时IMS

SETB;灭南北10位数

MOVA,B_BIT;将南北要显示的个位数送A

MOVCA,@A+DPTR;查表

MOVPO,A;显示南北个位数

CLR

ACALLDIMS;延时IMS

SETB;灭南北个位数

MOVA,C_BIT;将东西要显示的10位数送A

MOVCA,@A+DPTR;查表

MOVPO,A;显示东西10位数

CLR

ACALLDIMS;延时IMS

SETB;灭东西10位数

MOVA,D_BIT;将东西要显示的个位数送A

MOVCA,@A+DPTR;查表

MOVPO,A;显示东西东西位数

CLR

ACALLDIMS;延时IMS

SETB;灭东西个位数

DJXZRl,DPLOP;循环扫描

DJXZR0,DPL1

RET;等待1秒返回

;显示

DISPLAY:

MOVA,TEMP3;将南北要显示的数存放到A

MOVB,#10

;B=10

DIVAB

;A除以B商存A,余数B

MOVB.BIT,A;将A放到20H

MOVA_BIT,B;将8放到21H

MOVA,TEMP4;将东西要显示的数存放到A

MOVB,#10

;B=10

DIVAB

;A除以B商存A,余数B

MOVC.BIT,A;将人放到22H

MOVD_BIT,B;将8放到23H

MOVDPTR,#NUMT;

MOVR0,#2

;R0=2

DPL1:

MOVRl,#250;R1=25O

DPLOP:

MOVA,A_BIT;将南北要显示的10位数送A

MOVCA,©A+DPTR;查表

MOVP0,A

;显示南北10位数

CLR

ACALLDIMS;延时IMS

SETB;灭南北10位数

MOVA,B_BIT;将南北要显示的个位数送A

MOVCA,@A+DPTR;查表

MOVPO,A;显示南北个位数

CLR

ACALLDIMS;延时IMS

SETB;灭南北个位数

MOVA,C_BIT;将东西要显示的10位数送A

MOVCA,@A+DPTR;查表

MOVPO,A;显示东西10位数

CLR

ACALLDIMS;延时IMS

SETB;灭东西10位数

MOVA,D_BIT;将东西要显示的个位数送A

MOVCA,@A+DPTR;查表

MOVPO,A;显示东西东西位数

CLR

ACALLDIMS;延时IMS

SETB;灭东西个位数

DJXZRl,DPLOP;循环扫描

DJNZRO,DPL1

RET;等待1秒返回

DIMS:

MOVR7,#250;IMS延时程序

DJNZR7,S

RET;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1