APP下载

基于EDA的交通灯控制系统设计

2018-08-20曾绍杰刘卫东周鑫淼祁佳兵王瑞东

山东工业技术 2018年14期
关键词:数码管交通灯

曾绍杰 刘卫东 周鑫淼 祁佳兵 王瑞东

摘 要:本文基于EDA技术,设计一个交通信号灯控制器,可以在数码管上显示计时时间,并且控制十字路口绿灯、红灯、黄灯的亮灭。

关键词:EDA;数码管;交通灯

DOI:10.16640/j.cnki.37-1222/t.2018.14.141

0 引言

目前许多交通灯控制系统是基于单片机的控制,本文设计一种基于EDA技术的交通灯控制系统,来实现对十字路口交通灯的控制。

1 系统设计要求

十字路口由一条主干道和一条支干道汇合而成,在每个入口处设置红、绿、黄三色信号灯,红灯亮表示禁止通行,绿灯亮表示允许通行,黄灯亮则给行驶中的车辆有时间停留在禁行线外。主、支干道均有车时,两者交替允许通行,主干道每次放行45秒,支干道每次放行25秒,设立45秒、25秒计时显示电路。在每次由绿灯亮到红灯亮的转换过程中,要亮5秒黄灯作为过渡,使行驶中的车辆有时间停到禁行线外,并设立5秒计时、显示电路。

2 系统设计方案

本文采用有限状态机的方法来实现该交通灯控制器,该方法的优点在于简单易用,状态之间的关系清晰直观。

依据设计要求,主干道方向和支干道方向交通灯共有四种状态,设为S0、S1、S2、S3,四种状态如表1所示。该系统的状态转换机如图2所示。

3 程序设计方法

本文系统程序设计时,先进行分频处理,产生秒方波。在每遇到一个秒方波的上升沿,当计数标志time1小于79时,time1加一,否则time1清零。并且在遇到秒方波上升沿时,把下一个状态赋给现态。当处于S0状态时,输出主干道和支干道的交通灯的状态,判断计数标志time1,决定是否进入S1状态,并对数据tm进行处理,在数码管上进行显示。当系统状态为S1、S2、S3时方法相同、源程序类似。产生位选信号,依次点亮数码管,同时把处理的数据送到数码管,进行倒计时,该系统的部分源程序如下。

(1)case current_state is when s0=>comb_out<="100001";

if time1=44 then next_state<=s1;else next_state<=s0;end if;

tm:=44-conv_integer(time1);tm1:=49-conv_integer(time1);

if(tm<45 and tm>39)then

th<="0100";tl<=conv_std_logic_vector(tm-40,4);

elsif(tm<40 and tm>29)then

th<="0011";tl<=conv_std_logic_vector(tm-30,4);

elsif(tm<30 and tm>19)then

th<="0010";tl<=conv_std_logic_vector(tm-20,4);

elsif(tm<20 and tm>9)then

th<="0001";tl<=conv_std_logic_vector(tm-10,4);

else th<="0000";tl<=conv_std_logic_vector(tm,4);end if;

(2)case sel is when "000"=>ot1<="01111";

if(time1>=0 and time1<=49)then num<=th1;

elsif(time1>=50 and time1<=74)then num<=th;

else ot1(4)<='1'; end if;

when "001"=>ot1<="10111";

if(time1>=0 and time1<=49)then num<=tl1;

elsif(time1>=50 and time1<=74)then num<=tl;

else ot1(3)<='1;end if;

(3)case num is

when"0000"=>ot<="0111111";when"0001"=>ot<="0000110";

when"0010"=>ot<="1011011";when"0011"=>ot<="1001111";

when"0100"=>ot<="1100110";when"0101"=>ot<="1101101";

when"0110"=>ot<="1111101";when"0111"=>ot<="0000111";

when"1000"=>ot<="1111111";when"1001"=>ot<="1101111";

when others=>null;end case;

利用EDA開发工具Quartus II对程序进行编译、逻辑综合、波形时序仿真,发现可以符合设计要求。将程序下载到硬件中,能完美的实现系统要求。

4 结语

本文系统提出了基于EDA技术的交通灯控制方案,该系统具有易于实现、便于修改、稳定等优点。传统的基于单片机的交通灯控制系统一般不稳定并且不利于扩展,本系统突破了单片机的种种限制,有较为广阔的发展前景。

参考文献:

[1]杨东,王学春.基于EDA的交通信号灯电路的设计与仿真[J].电子设计工程,2014,22(20):82-85.

[2]陈欢.基于EDA技术的交通灯控制器的设计[J].电子制作,2013(17):9.

[3]赵凯.一种基于EDA的智能交通灯设计[J].武汉工业学院学报,2009,28(01):53-56.

[4]杨显富.基于EDA技术的交通灯自适应控制系统[J].成都大学学报(自然科学版),2003(03):19-24.

猜你喜欢

数码管交通灯
物理项目教学设计,用单片机控制四位数码管显示
蓝桥杯树莓派模拟题解析三:“电子测距仪”
香港暴徒破坏交通灯害死路人
Arduino编程
Arduino编程
MC9S08FL16单片机数码管静态显示分析
矿工灯
为什么交通灯是红黄蓝三种颜色?
“低头族”专属路灯
荷兰小城为“低头族”设置专属路面交通灯