一种基于Arduino的车用多向防碰撞装置的设计
2019-10-21寇星源苟春梅董静
寇星源 苟春梅 董静
摘 要:汽车在行驶过程中始终存在一些视觉上的盲区,这些盲区导致驾驶员难以及时准确地发现车辆周围的障碍物,结果造成汽车碰撞、刮擦等事故。本文针对这一问题设计了一种基于Arduino的车用多向防碰撞装置,装置采用超声波模块进行障碍物检测,并通过云台实现多个方向的检测,由此帮助驾驶员在车辆行驶时破除盲区,及时发现障碍物并预防碰撞。
关键词:汽车;Arduino;防碰撞
1 引言
近年来全国各地汽车保有量越来越大,公安部交管局数据显示,截至2019年6月,我国机动车保有量已达3.4亿辆,其中汽车2.5亿辆。保有量不断上升的同时各类汽车碰撞事故的发生也越来越多。尤其是在市区内的低速行车状况下,由于路况拥堵、车位紧张,汽车碰撞、刮蹭等事故更是频发不止。因此如何有效避免此类问题也越来越得到人们的重视。汽车防碰撞系统已有多年的研究,本文在借鉴现有防碰撞系统技术的基础上,引入目前大为火热的开源平台Arduino,选用超声波测距技术,设计了一种基于Arduino的多向防碰撞装置,能够实现车辆在行驶过程中多个方向的防碰撞预警功能。
2整体设计
驾驶员在车内总有一些视觉上的盲区和死角。图1为普通轿车的视觉盲区示意图,当车辆在高速路行驶时,因路况和行驶状态较为单一,前后车辆也易于保持安全车距,因此这些盲区对驾驶员影响不大。但在低速行车时,尤其在市区路况条件下,路况复杂,行驶状态也更加多变,转弯、掉头及倒车等操作增多,这时盲区会直接干扰驾驶员的判断,导致车身侧方、后方与障碍物发生碰撞、刮擦。
针对上述轿车驾驶盲区,本文以破除盲区为出发点,设计了采用超声波测距技术的多向防碰撞装置。如图2所示,该装置包括超声波传感器、Arduino控制板、信息显示屏、及声光报警器四个部分。该装置工作原理为:超声波传感器在Arduino板的触发下发射、接受超声波信号,并将超声波从发射到接收的时长返回给Arduino板,由Arduino板计算得出车辆与障碍物距离并将距离显示在显示屏上,同时Arduino判断该距离是否超过安全距离,如超过安全距离,存在碰撞可能性,则Arduino向声光报警器下发命令,由声光报警器发出报警,提醒驾驶员可能发生碰撞。为同时实现多个方向的障碍物检测,该装置在超声波模块下加装伺服电机,电机在Arduino板的控制下转动,并带动超声波模块在侧方等多方向进行障碍物检测。
3 硬件搭建
该装置硬件包括Arduino板、超声波测距传感器、伺服电机、液晶显示屏、声光报警器件等,具体规格型号如下:
3.1 Arduino开发板
Arduino是当前最受欢迎的电子互动平台之一,它包括硬件Arduino开发板、软件开发环境及Arduino编程语言三大部分。Arduino板有多个不同型号,本文选用Arduino UNO板,其工作电压为5V,采用ATmega328P作为微控制器,同时具有14个数字I/O针脚(其中6个针脚同时可作为PWM输出),6个模拟输入针脚。在本装置中,Arduino通过输入输出针脚与超声波模块、电机及声光报警模块进行连接,实现通讯与控制功能。
3.2 超声波测距传感器
超声波测距原理是通过发送和接收超声波,利用时间差和声波速度,计算出模块和障碍物的距离。本文选用的超声波测距模块为HC-SR04,其测距范围达2cm-450cm,测量精度可达0.3cm。该模块共有4个针脚,包括:VCC、GND、TRIG、及ECHO。工作时,先由Arduino板通过I/O口向TRIG针脚输入触发信号,再由模块自动向外发送8个40KHz的方波,随后模块检测返回信號,并通过ECHO针脚向Arduino板发送一个高电平反馈信号,该高电平持续时间即超声波从发射到返回的时间。Arduino根据该时间进行运算得出车辆与障碍物之间的距离,并进行判断是否超出安全范围。
3.3 电机
本文选用型号为SG90的舵机作为带动超声波模块转动的驱动装置,其空载转速可达0.12sec/60°,扭矩可达1.2到1.4kg/cm。SG90的动作由Arduino通过PWM信号进行控制,在装置中,SG90按照设定角度转动,带动超声波模块对车辆侧方等多个方向进行检测。
3.4 液晶显示屏
液晶显示屏主要用于显示检测后的距离值,本文选用LCD1602作为显示屏。LCD1602具有控制简易、功耗低等优点。LCD1602与Arduino板的连接方式分8位和4位两种,为节省针脚资源,本文采用4位接法。
3.5 声光报警模块
本文利用无源蜂鸣器和发光二极管实现简易的声光报警功能,在完成测距和安全距离判断后,如汽车与障碍物距离超过安全距离,则由Arduino输出相应电平控制蜂鸣器发出报警音,二极管进行闪烁报警。
3.6 硬件接线图,见图3
4 程序设计
根据防碰撞装置的功能设计,Arduino板的工作程序流程如图4所示。该装置的启动由单独开关控制,防碰撞装置启动后就会自动检测车身周围是否有障碍物的存在,并检测计算车身和障碍物之间距离,若小于安全距离,则在显示屏上显示当前障碍物距离,并发出声光报警。若大于安全距离,则不发出告警。
5 结语
本文所设计的防碰撞装置,以开源平台Arduino作为控制单元,以破除驾驶视觉盲区为出发点,采用超声波模块搭配舵机实现了车辆周围多向障碍物的检测,初步完成了车辆在行驶过程中的多向防碰撞预警功能。但该防碰撞装置仍是一个初级样品,如不同车速下安全距离的参数设定等功能尚未考虑在内,有待于进一步改进完善。
新疆交通职业技术学院2018年度院级课题《一种多方向车用防碰撞预警系统的研究及设计》,编号:J-18-05。
参考文献:
[1]胡三根.基于SPCE061A的汽车防碰撞报警系统研究[D].华南理工大学,2012.
[2]李云强.基于Arduino的智能小车测距系统的设计[J].南阳理工学院学报,2018,10(4):17-21.
[3]刘楚红,董镇,钱宇捷,陶立,柳盛东.基于Arduino的倒车雷达系统设计[J].现代电子技术,2014,37(17):148-153.
[4]陈冉,韩锐.基于Arduino的防堵车追尾事故系统设计[J].林业机械与木工设备,2016,44(8):29-32.
[5]胡珂.基于Arduino的智能小车测距安全行驶系统的研究[D].长安大学,2015.
[6]于洋.基于Arduino的自动避障及通信控制智能小车系统的研究与设计[D].吉林大学,2017.