3. 硬件系统的设计
3.1 硬件系统的组成
系统采用AT89S51单片机为核心芯片,主要由车辆检测电路、报警电路、LED显示电路、数码管显示电路和紧急开关电路五部分组成。
系统结构框图如图1所示。
图1 系统结构框图
系统各部分工作如下:
(1)程序设置初始时间通过AT89S51单片机内部相应寄存器来实现。
(2)由AT89S51单片机的定时器每秒钟通过P3.0口向74HC164的数据端口送信息,由74HC164的输出口显示红、绿、黄灯的点亮时间情况,由AT89S51的P1.0、P1.1、P1.2、P1.3口显示每个灯的点亮情况。
(3)AT89S51通过程序设置各个信号灯的点亮时间,通过程序设置左转绿、绿、红时间依次为20秒、20秒、40秒循环,由AT89S51的 P3口向74HC164的数据口输出。
(4)通过AT89S51单片机的P3口来控制系统的工作。
(5)74HC164的A、B口用于串行输出时间位,经过串并转换送到七段数码管的八个引脚。而P1口用于输出控制信号,而通过74LS04反向器实现控制各个灯的情况,它采用5V的直流电来驱动二极管。
(6)AT89S51本身集成了看门狗指令,当系统出现异常看门狗将发出溢出中断。通过专用端口输出,引起RESET复位信号复位系统。
3.2 部分电路
3.2.1 车检测电路
工作原理:如果20秒之内可以通过的车为20辆,当20秒内从南往北方向通过的车辆不足20辆时,则判断该方向为车辆少,当20秒内从北往南方向通过的车辆也不足20时,则判断该方向也为车辆少,下一次允许通行时间仍为20秒。当20秒的时间内从南往北或者从北往南任意的一个方向所通过的车辆达到20辆时则能证明该状态时车辆较多,那么下次该方向的绿灯放行时间修改为40秒。当40秒之内通过的车辆达到45辆时则判断为拥挤,那么下次绿灯的放行时间仍为40秒;当40秒之内通过的车辆又不足45辆时,则判断为车辆少,那么下次绿灯的放行时间修改为20秒,依此类推。绿灯的下限时间设为20秒,上限值为40秒,初始的时间为20秒。这样检测,某一次的结果可能不准确,但是下一次肯定能补回来,所以累积计算还是准确的,这就是“模糊控制”。因为道路上的车辆不可能突然得增多,交通堵塞都是有一个累积的过程。这种控制方法可以把不断增加的车辆逐步地消化掉,虽然因为每个道路口的绿灯放行的时间延长而使等待的时间变长了,但比起堵塞等待的时间要短得多。由于从南往北,从北往南的时间显示相同,所以如果一个方向车辆多,下一次的时间就要加长,从东往西,从西往东也一样。显示时间选择如表1所示。
表1 显示时间选择
车辆情况 本次该方向通行时间 下次该方向通行时间 本次该方向通行时间 本次该方向通行时间
南往北少车,北往南少车 20秒 20秒 40秒 20秒
南往北少车,北往南多车 20秒 40秒 40秒 40秒
南往北多车,北往南少车 20秒 40秒 40秒 40秒
南往北多车,北往南多车 20秒 40秒 40秒 40秒
东往西少车,西往东少车 20秒 20秒 40秒 20秒
东往西少车,西往东多车 20秒 40秒 40秒 40秒
东往西多车,西往东少车 20秒 40秒 40秒 40秒 AT89S51智能交通灯控制器的设计+源码+电路图(3):http://www.youerw.com/zidonghua/lunwen_968.html