当前位置:首页 期刊杂志

基于STM32的智能交通灯设计

时间:2024-08-31

彭俊,陈顺材,张泽,张诗,董铮

(湖北文理学院计算机工程学院,湖北襄阳,441053)

1 研究背景和意义

随着信息技术的不断发展,各行各业中都引入了智能技术,智能交通控制系统必将是世界范围内交通行业的一场新革命。未来的交通系统将集成先进的信息、通信、控制、传感器与计算器等系统,综合这些技术有效的应用,使行人、车辆与道路之间的相互关系、相互作用更加清晰明了,达到节能、环保、有效、可靠与安全的目的。

STM32智能化交通灯系统设计可以实现交通的安全运行,提高交通管理智能化、科学化,该系统主要是利用单片机对交通信号灯进行智能控制。经过大量的实验研究表明,该系统具有结构简单、成本低、效率高等优势,能极大地提高交通通行能力。

2 系统设计方案

本系统设计主要由STM32单片机、电源模块、红绿灯模块、倒计时显示模块、语音播报模块与按键模块组成。本系统的具体结构框图如图1所示,各个模块的工作由STM32中央处理器来控制处理。按键模块用来设置红绿灯点亮时间的长短,由两个机械按键组成,两个按键的功能分别是增加时间与减少时间。倒计时显示模块用以显示红、绿、黄三个颜色的持续时间。红绿灯模块用来提示“停止”、“通行”与“注意”三个意思,其中红灯代表的是“停止”,绿灯代表的是通行,黄灯代表的是警示,此模块由红、绿、黄三个LED灯组成。整个系统由硬件组成,由软件来驱动。按键设置的是红灯的时间,绿灯的时间将比红灯的时间短3秒,默认黄灯的时间为3秒,交通灯按设置时间进行工作,扬声器按照交通灯的灯况进行语音播报。

图1 系统结构框图

3 系统硬件电路设计

3.1 STM32芯片介绍及选用

STM32芯片中,采用F103C8T6这一型号的芯片,不仅能有效的增强容量,而且其属于32位的ARM内核,而且分为64K字节、128K字节两种内存的微控制器,接口主要有USB接口、CAN接口、定时器接口、ADC接口等。其TISC内核性能在ARM®Architecture™-M3系列中属于较高性能的[1]。采用72MHz的工作频率,配备高速存储器,增强型的多个I/O端口,同时外设与两个APB总线连接。而就设备类型而言,主要有两个12位的ADC,三个通用类16位的定时器,以及一个PWM定时器,同时还设置了标准较高的通信接口,比如USB3.0,以及两个I2C接口与SPI接口,此外,还有三个USART接口和一个USB接口与CAN接口。

3.2 电源模块设计

电源模块采用USB接口给系统输入一个稳定的5V电压,其电源线路如图3.2所示。USB接口使用起来非常的便利,可以插在手机充电器、充电宝和电脑上,而且价格非常低廉,可以节约不少成本。

3.3 语音播报模块设计

语音播报模块由喇叭与芯片MY1690-12P构成,MY1690-12P为小巧的微集成式MP3模块,其主控芯片为MY1690-16S MP3能对MP3格式和WAV格式进行解码,最大支持32G拓展卡,还能外接U盘,也能通过USB数据线连接外部存储设备,也可以连接计算机来替换SD卡中的音频文件,这一模块中内置了3W的放大器,能直接将3W的扬声器驱动[2]。

3.4 按键模块设计

按键电路如图2所示,其中S1为时间上调按键,作用是对时间进行上调,S2的作用则是对时间进行下调的按键,这些按键开关均采用机械式开关。当断开或者闭合开关的时候,因为机械触点具有弹性作用,按键开关闭合时,不会迅速稳定接通。同样,按键开关断开时也不是迅速的中断,所以在断开或闭合瞬间会存在一连串抖动,而为避免这一问题,就需要对其进行消抖设计。

图2 按键电路

3.5 红绿灯模块设计

LED是一种发光二极管,它可以把电能转换成人肉眼可见的光的一种固态半导体器件[3]。它的核心为半导体晶片,半导体晶片的一端安装在支架上,一端为负极,而另一端将连接到电源的正极,为了用电安全,必须确保环氧树脂将晶片封装严实。LED最初是在仪器仪表中作为指示光源,而后续越来越多光色的LED广泛的在交通信号灯与显示屏中应用,并且带来的社会效益与经济效益良好。在交通信号灯电路中,总共包含了四组LED灯,每组都包含了红黄绿三色LED灯。其中,LED灯的负极接地,而正极则与STM32单片机的输出端相接,若STM32单片机的输出端输出高电平时,LED灯就可以正向导通而发光,

3.6 倒计时显示模块设计

倒计时显示电路如图3所示,均是采取LED数码管进行分段显示的。在LED数码管中,包含了多个采用LED封装而成的“8”字型器件来组成,而在内部已经连接好引线,只需引出它们的各个笔划与公共电极。在LED数码管中,常用段号以7为主,但是有的会加上小数点,而有的则为半位数字、1、2、3、4、5、6、8、10等,LED数码管在连接过程中,有共阳、共阴两种方式[4]。当掌握了LED这些特点之后,就能为编程带来更多的便利。这主要是由于数码管类型不同,不仅在硬件电路方面存在的差异需要了解,而且还要切实强化程序设计,但是设计的方法不同,其采用的原理和思路也不同。比如在普通的共阳极数码管中,其内部电路的发光原理虽然相同,但是其电源的极性不同。

图3 倒计时显示电路

4 系统软件设计

4.1 主流程图

本设计采用ARM为核心控制中心,采用的的是STM32F 103C8T6芯片,开发环境是Keil uVision5 by ARM软件,这款开发环境是目前STM32单片机系统。具体系统流程如图4所示。

图4 系统流程图

语音模块流程图见图5。

图5 流程图

语音模块典型程序:

5 系统测试

根据原理图检查硬件电路组线是否一致,对每个元器件的引脚正确与否、漏焊与否进行检测,当检测无误之后进行通电测试,其具体过程主要为:

(1)设置红灯时间

通过时间上调按键与下调按键,将南北方向红灯的点亮时间设置为14秒,则绿灯的点亮时间设为11秒,黄灯点亮时间为3秒。设置红灯时间如图6所示,则红灯从14秒开始计时。

图6 设置红灯时间

(2)绿灯计时

红灯计时完成后,绿灯开始11秒倒计时,绿灯计时如图7所示,同时语音模块工作,扬声器会播报声音“红灯禁行,绿灯通行”。

图7 绿灯计时

(3)黄灯计时

绿灯11秒倒计时完成之后,黄灯立即开始3秒倒计时,黄灯计时如图8所示。

图8 黄灯计时

黄灯3秒倒计时完成后,再次转换为红灯,重复上述过程,如此一直循环,硬件测试完毕。

6 结束语

本系统在传统的交通灯基础上设计了智能交通灯系统。经过多次的实验检测与调试,能够成功实现以下功能:(1)灯况能够显示;(2)灯亮的时间可显示;(3)灯亮时间能够调节;(4)有语音提示灯况。

此系统的具有一定的智能化,能够大大提高交通的通行效率,减少交通事故的发生,改善交通拥堵等问题。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!