当前位置: 网站首页  >> 方案设计  >> 查看详情

基于Arduino的智能交通演示系统研究报告

日期:08-05  点击:  属于:方案设计
项目名称:基于Arduino的智能交通演示系统
作者:孙阳
单位:迁西县第一中学
指导教师:孙大勇

摘 要:本项目采用Arduino UNO作为控制核心,系统共由4大部分组成:①公路模型;②交通信号灯系统;③智能小车系统;④十字路口的传感器系统;其中其中公路模型用木板铺设,上面粘贴黑色和黄色的电工胶带来模拟路面交通标线;信号灯灯架部分用PVC管和线槽架设,显示部分则采用LED发光二极管和数码管相结合,通过程序控制,实现两个方向的信号灯同步切换和倒计时读秒功能;智能小车用直流减速电机作为动力系统,安装黑白线循迹模块、超声波模块和红外接收模块,通过程序控制,实现自动智能行驶;十字路口的传感器是小车与信号灯之间的通信系统,包括超声波传感器和光敏传感器。同时使用红外发射接收模块作为小车与信号灯之间的通信判断,通过程序控制,实现小车遵循信号灯变化规律安全通行和信号灯智能切换的功能。
一、创作背景
目前中国乃至整个世界面临的严峻的城市交通的问题,在我国,交通拥堵的现象更是时有发生。城市土地资源和资金有限,不能单靠传统修建道路的方法解决交通问题,因此要建立正确的智能交通系统图管理城市的交通网,而不能靠传统的方法进行。在此背景下,智能交通系统将发挥它独特的作用,因此建立智能交通系统非常必要,大力解放劳动力资源,使他们能发挥更大的作用,提高工作效率,降低事故发生率。
二、器材准备
在器材使用方面,我们放弃使用市场上品牌多样、名目繁多、价格高昂的专用创客器材,而是通过淘宝网购买生活中随处可见的价格便宜的通用的电子器件,这样,即大大节约了成本,又使作品更贴近生活。
所需器材清单:
1、Arduino uno 开发板:4块;
2、杜邦线:公对公、公对母、母对母各50根;
3、5mm发光二极管:红黄绿各100个;
4、二位共阴数码管:4个;
5、智能小车橡胶轮胎:4个;
6、L298N电机驱动板:4个;
7、HC-SR04超声波模块:2个;
8、黑白线2路红外循迹模块:4个;
9、18650锂电池组:4套;
10、小车底板:2个;
11、红外发射接收模块:4套;
12、光敏传感器:4个
13、10mm白色发光二极管:4个
14、木工板:1张;
15、胶布、双面胶、铜柱、螺丝等连接制作工具若干;
三、制作过程
1、编写程序。
①编写交通灯代码:根据交通信号灯实际显示规律,用C语言代码编写小灯交替闪烁代码和数码管倒计时代码,然后将两段代码合并就生成了红绿灯倒计时代码,然后将代码写入开发板,再将三种颜色的小灯和数码管插在面包板上进行点亮和数码管倒计时实验,直到与实际信号灯显示规律一致。
②交通灯进阶编程:在原有的交通灯代码中写入智能控制代码,点亮红灯时同时增加打开红外发射模块代码和超声波测距代码,点亮绿灯时同时增加光敏传感器光线检测代码。
③编写小车控制代码:通过程序代码控制智能小车前进、停止、后退、转弯,在这些基本动作的基础上进一步增加红外信号识别代码、红外黑白2路循迹代码和超声波避障代码,实现智能小车根据交通信号灯变化规律和设定的线路全自动行驶。
2、制作模型。
①制作公路模型:先将整张木工板参考实际路况按比例进行切割做成公路模型,接着喷上白颜色的漆,晾干后通过粘贴白色和黄色防水胶布制作做道路指示线和斑马线,最后再粘贴黑色防水胶布用于标记小车行驶路线。
②制作信号灯模型:先将薄泡沫板切割成6cm×6cm的正方形小块,再用红黄绿三种颜色的5mmLED小灯在上面分别拼插4个“↑”型的图形,把正负极分别用导线连接在一起,用于组装交通灯模型。同时还要在四块泡沫板上镶嵌上四个二位共阴数码管,用于显示交通灯倒计时读秒。
③制作十字路口交通灯模型:先用PVC管件制作灯架模型,同时在路模型的木板下方架设管道,管道内铺设线路。所有管道用三通和弯头进行拼接和组装。
④组装智能小车:先将电池盒、万向轮以及两个直流减速电机和橡胶轮胎固定在小车底板上,接着把开发板用铜柱固定在小车底板上,最后再把电机驱动模块、红外循迹模块、超声波避障模块、红外接收模块等用双面胶固定在小车底板上并连接好线路。
⑤、拼装成型:将组装好的四个交通信号灯灯架按实际测量好的比例分别安放在十字路口东南西北四个方向。再把信号灯和数码管模型固定在灯架上。用电源给四个信号灯同时供电并按实际变化规律显示,将小车停放在公路起始端,一套完整的智能交通演示模型制作完成。
四、演示过程
在演示之前,我们先明确一下交通灯的变化规律(一个变化周期64秒):
东西方向: 红灯03秒→绿灯29秒→黄灯3秒→红灯29秒→...
南北方向:红灯38秒→绿灯23秒→黄灯3秒→...
1、首先演示小车与交通灯之间通过红外信号判断智能行驶的过程:
智能小车在公路起始端开始启动,根据预先粘贴的黑色电工胶带循迹行驶,同时开启车上的红外接收模块和超声波避障模块。
信号灯系统在红灯点亮时,同步开启十字路口的红外发射模块,当绿灯亮起时,关闭红外发射模块,停止发射信号。
智能小车在经过十字路口时,车上的红外接收模块会对红外信号作出判断:接收到信号就停止前进,信号消失后小车会继续循迹行驶,直到检测到障碍自动停下来。
2、接下来演示交通灯智能切换过程:
交通灯的智能切换系统是整个项目的核心,它的运行过程是:十字路口的传感器系统检测到有小车等候时,不再读秒等待,直接同步自动切换两个方向信号灯,使小车智能通行。
这次开启安装在十字路口的超声波模块,以东西方向为例,系统默认南北方向无车辆通行。
以东西方向公路为例,智能小车行驶至十字路口时,如果遇到红灯停止,则超声波测距模块就会检测到等待红灯的小车,此时会同步点亮光源信号,安装在十字路口的光敏传感器会以检测到的光源做为通信信号,首先将南北方向的信号灯由绿灯自动切换到红灯,接着再将东西方向的信号灯由红灯自动切换到绿灯,完成两个方向的信号灯自动智能切换过程。让东西方向等待信号灯的小车可以继续安全通行,减少小车等待时间。
为了更直观的呈现交通灯智能切换过程,我们在红灯点亮时把手放在超声波测距模块前面,再次演示一下信号灯的智能切换过程。
交通灯智能切换系统也为现实生活中的交通管理提供了参考模型,能有效缓解交通拥堵,减少能源浪费。这样,就完成了一次完整的演示过程。
五、问题分析
1、系统运行过程中可能会出现的问题。
由于我们这套系统使用的是Arduino uno 开发板,这款开发板尽管便捷灵活、操作简单、价格便宜,但与stm32、51、树莓派等单片机相比,在系统稳定、运算能力和运行速度等方面都有较大差距,在实际演示过程中,可能会出现运行不稳定或响应时间过长等问题。
为节约成本,我们用的循迹、避障、红外发射接收等传感器都使用价格低廉的实验用电子器件,在灵敏度和精确度上与价格昂贵的专业器件会有很大差距,所以小车在循迹行驶过程中,可能偶尔会出现偏离出预订循迹轨道或者在红灯点亮时不能精确接收到红外发射信号而出现闯红灯现象。
以上这些现象可以通过反复测试和精确建模去最大限度地减少,但由于Arduino系统本身的短板,不会完全避免。
2、系统的升级方案。
由于受到场地限制,小车在循迹行驶过程中,完成一次完整演示后会自动停下来,再进行下一次完整演示需要再次手动将小车拿回到公路起始端。如果突破场地限制,可以拿掉公路尽头的挡板,而采用黑色防水胶布粘一条环型的回路,让小车自动循迹行驶至公路起始端,自动开始下一次演示。
六 归纳总结
本系统虽然只是一个演示模型,与真实的交通场景可能有较大的不同,但该演示系统使用方式简单,演示逼真,完整直观地呈现了十字路口的信号灯与车辆之间的智能通信判断和自动运行功能,可以为现实生活中的智能交通系统提供基本的参考模型。本文中所提到的功能是最基本的功能,在此基础上,我们还要继续修改和创新作品,合理增加一些新的功能模块让系统更加完善。
 
阿诺智能 版权所有 冀ICP备2022000942号  技术支持:友点软件