基于Arduino技术的多传感器智能避障小车设计研究

(整期优先)网络出版时间:2021-05-20
/ 2

基于 Arduino技术的多传感器智能避障小车设计研究

杨佳龙,陆靖,张梦,戎新萍

南京工业大学浦江学院, 江苏 南京 210000

摘 要:本项目研究的智能避障小车以Arduino技术为主控单元,采用多种传感器及控制方法,十字矫正算法控制姿态,系统硬件的各个模块相互配合,以实现自主循迹、矫正、避障及定位功能,可使避障小车具有较高的自适应能力。

关键词:Arduino;智能避障;全自动化


0 引 言

智能交通系统是交通行业发展的必然趋势,无人驾驶技术伴随着5G的到来,成为当今社会的一大热点。智能避障小车可以作为无人驾驶的模型来看待,无人驾驶技术也是通过环境检测传感器来实现一部分智能控制,汽车行驶过程中碰到的障碍很多,对障碍物进行躲避,可以挽救驾驶者和乘客性命。智能小车是多种高新技术的集成体,不但融会了软件、传感器、电子、计算机硬件、机械、人工智能等学科知识,而且触及当下很多科学前沿领域的相关技术,具有较高的市场价值和重要的现实意义。

1 总体设计

系统由Arduino Mega 2560、US-100超声波传感器、A4988电机驱动模块、红外识别传感器、霍尔传感器以及循迹传感器。

该系统以Arduino Mega 2560为主控板,US-100超声波负责探测远距离的障碍物,配合红外识别检测近距离生物体障碍。循迹传感器实现巡线路径规划移动,加载霍尔传感模块实时磁场定位,结合十字矫正算法实现路径偏离矫正与重新规划,A4988驱动模块依照Arduino下达的串口指令,带动电机移动避障,并实时定位。

2 主要硬件设计

2.1 超声波传感器

该传感器为障碍探测核心,道路车辆流动程度较密集,需高精度、高强度准确识别。超声波模块有多种款式,主流为HC-SR04型,该款式探测距离为2CM-450CM、感应角度小于15度、精度为3MM、成品便宜,但是电平信号不稳定、识别速度、精度不能适应高强度探测。另一种US-100型超声波,在探测距离和感应角度上与US-SR04型相同,但精度高达到5MM,且电平信号稳定能适应高强度探测。故本设计采用US-100超声波作为障碍探测核心。

该传感器有两种接口,即模式选择和5Pin接口。当插上跳线帽为UART(串口模式),拔掉时为电平触发模式。

2.2 红外识别传感器

通过使用红外识别模块检测近距离生物体障碍,其原理采用三角测距的原理。红外发射器按照一定角度发射红外光束,遇到物体之后,光会反向回来,检测到反射光之后,通过结构上的几何三角关系,就可以计算出物体距离D。检测距离可以通过电位器进行调节,顺时针调电位器,检测距离增加;逆时针调电位器,检测距离减少。

2.3 电机驱动系统

采用双极性两相步进电机,可以很低速运行,相同机身尺寸情况下,低速的输出力矩比其他普通电机的大,并且误差不累计。它可以接收脉冲信号控制角速度从而控制福来轮的转动速度。采用A4988模块与CNC电机拓展板配合,仅需开环控制利用库函数即有较高精度且移动稳定,实现开环简易稳定控制步进电机。

A4988是用于控制双极步进电机的微步进驱动器,内置转换器,易于操作。仅需2个引脚即可控制步进电机,一个用于控制旋转方向,另一个用于控制步数。通过选择自带的五种步数分辨率,将步进电机设置为五种不同的工作状态,根据主控板输入的逻辑电平简易有效控制电机。

2.4 循迹传感器

为实现路径规划需求,该模块数量需求大,在总体结构设计之初预留了足够空间,这样有利于后期依照精度要求对其增加。采用TK-2循迹传感器,通过设置逻辑电路和外部中断对该模块进行控制循迹目的。

3 软件设计

本小车为一键启动进行全方位避障,软件部分采用以下流程运行,一键启动后,智能避障小车根据预先规划路径进行移动,当遭遇障碍时小车减速并对障碍位置进行探测,依照超声波探测串口回馈的远距离信息和红外识别串口回馈近距离的信息,综合判断障碍物类别进行自调节避障,并重新定位与初始规划点的位差,开始新一轮的路径规划。当抵达规划点时,小车停止。

本设计追求高强度、高精度避障,外接大量传感器,Arduino需要接受的反馈信息繁杂。为提高系统处理信息的效率,利用中断函数将探测部分设置最高优先级,初始仅保留一个串口检测最远处。当遇上障碍时,开启全部串口接收精准信息,保证探测的效率和精度。在整个软件设计环节,传感器众多、反馈信繁重,并且Arduino本身处理性能并不高效。故需要对各模块程序中断系统优先级做好分级分流处理。

4 避障小车调试

4.1 探测模块的调试过程

使用Arduino IDE打开程序文件,编译并运行。将超声波模块与红外识别模块连接至Arduino mega2560并对准障碍物,探测模块检测障碍物信息,通过串口读取反馈信息,识别后返回数据并进行判断是否避障。

超声波模块调试效果

4.2 规划路径移动调试

将步进电机与福来轮连接,打开总电源,依照提前预设的路径在循迹传感器感应下,结合Arduino对目标点进行路径规划,当移动轨迹符合预设路径则调试成功。

通过四组调试结果可知,当循迹模块数达到16路时,偏离轨道率均低于12%。循迹模块受环境光线和原始程序影响,无法十分准确抵达目标点。添加十字矫正程序并调整继电器后,对16路循迹模块第二遍重复调试,偏离轨道率低于0.08%,仅有两次因外界光线影响造成偏离轨道。自此规划路径移动调试完成。

5 总 结

本次设计使用Arduino mega 2560主控板联合多传感器的应用,实现了基于Arduino多传感器的智能避障小车的设计方案。该机器突破常规的避障系统的探测缓慢、移动偏差大、无法定位的束缚。实现了快速安全探测、实时自身定位和自动矫正位姿的目标。本设计机器人基本能实现高强度、高精度、高安全的三个基本点,能有效的完成车辆的自动化,保障了安全性和可靠性。



参考文献

[1]吴兴利,田立国,李猛等.带有定位功能的线性霍尔传感器节点模块[P], CN:103454598 A,2016.6.

[2]徐知非. 一种基于霍尔定位系统的精确定位装置[P], CN:205427615 U,2014.02.

[3]荣华良, 杨路.基于Arduino的智能避障小车的设计[J]. 数字技术与应用, 2017, (5):172-172.

[4]肖宇. 基于Arduino的智能双传感器避障小车设计[J]. 商情, 2015,3(8)156-159.






作者简介:杨佳龙(2000.7-),广西,在读学士,研究方向:机电控制.

通讯作者:戎新萍(1990.7-),江苏扬州,讲师,研究方向:机电控制,邮箱:1210224250@qq.com