基于Arduino的超声波避障机器人设计
张喜英,闻世震,陈静,郭斌,李德,王东振
(北京交通大学海滨学院电子与电气工程学院,河北黄骅061199)
摘要:随着人工智能成为未来科技研发的重要对象,
智能机器人研发前景光明。本文介绍了以Arduino为核 心主控板,采用超声波传感器测距实现自主避障功能的机 器人设计方案。创新了避障系统的软硬件设计,设计了超 声波传感器和直流电机组合作为避障模块。在使用最少 的传感器并且保证避障效果的条件下,最大限度地实现了 避障功能。实验结果表明,避障算法对环境具有很好的兼 容性,机器人能够很好地实现避障功能。
流。超声波传感器工作电压为5V,工作温度为-25〜80^, 测量角度为〇。〜30。,测量范围为0.03〜4m,超声波 频率为42kHz0
3 系统软件设计
启动机器人后,开启避障模式,由于超声波传感器距离
障碍物太近或者障碍物体积太小、形状不规则,就会导致超 声波传感器探测不到障碍物,所以需要加一个小距离的检 测程序。设计要求避障距离为0.5 m,机器人体长在0.15 m 左右,所以小距离取值在0.3〜0.4m较为合适。本研究 设计小距离取值为0.35 m0避障过程如下:当机器人与障 碍物的距离大于0.5 m时,前进;当机器人与障碍物的距离 小于0_5 m时,如果机器人与障碍物的距离还小于0.35 m, 则后退。否则向左转弯90°,再在向左转弯90°后,检测 机器人与障碍物的距离,当机器人与障碍物的距离大于 0.5 m则前进;当机器人与障碍物的距离小于0.5 m,如果 还小于0.35 m则后退,否则向右转弯约180。。
关键词:Arduino;避障;超声波传感器
超声波传感器测距作为自主避障机器人实现避障的其 中一种方式,其实现避障方便简单,价格低廉。本文提出了 一种经济实用、简单易懂的自主避障机器人设计方案,采用 了用直流电机驱动的轮式移动机器人,新型Arduino作为 主控系统,在机器人前端安装超声波传感器检测前方障碍 物,并将测量数据反馈给Arduino进行分析处理,实现对机 器人运动状态的实时控制,并且控制可靠、灵活,精确度高, 可满足对系统各项基本要求。
4 结束语
自主避障机器人主要依靠Arduino和超声波传感器实
1 系统总体方案设计
设汁方案主要以Arduino为主,在电动小车的基础上,
现避障功能,与以往的依靠C51、C52单片机的设计不同, 这种新式单片机无论在硬件方面还是软件方面,都比以往 的单片机性能更好,更稳定简单。在设计中主要使用单个 超声波传感器来实现避障功能,这对未来的智能机器人基 础应用具有参考意义。但是单个超声波传感器测距毕竟有 局限性,如果条件成熟,可以多方位加装超声波传感器或者 换成其他更为精准的测距传感器,使得避障机器人更为精 准地感知周围的环境信息。
加装超声波传感器,测量轮式机器人与目标障碍物之间的 距离,然后把测得的距离数据反馈给单片机,单片机处理后 再指示直流电机驱动机器人完成避障动作。其中系统原理 框图如图1所示。 2
参考文献:
[1 ]谭花娣.基于无线通信的智能机器人避障及报警设计
[J].电子制作,2014(20):7-8.
图1系统原理框图
[2] 段玉刚.移动机器人的避障与路径规划研究[D].黑龙
江:哈尔滨工程大学,2011.
[3] 章华.基于模糊控制超声波避障算法的巡检机器人研
究与设计[D].江西:南昌大学,2016.
2 系统硬件设计
系统控制模块选用Arduino UNO作为主控单元,其
核心是ATmega328-AU单片机,负责给TB6612FNG 电机驱动单元提供PWM脉宽调制信号,驱动电机指挥机 器人完成避障动作。ATmega328-AU配备时钟电路,复 位电路和电源,时钟电路使用了 1个16M的晶振,复位电 路低电平有效,高电平无效。工作电源都是5V。电机驱动 模块中,TB6612FNG的PWMA、PWMB引脚主要控制机 器人的行驶速度,正常工作状态下需要输入1.2A的持续电
[4] A Pandey, RK Sonkar, KK Pandey, DR Parhi.
Path planning navigation of mobile robot with obstacles avoidance using fuzzy logic controller, IEEE International Conference on Intelligent
Systems & Control,2015:39-41.
(收稿日期= 2019-01-11)
湖北农机化
\\ 2019年第4期
因篇幅问题不能全部显示,请点此查看更多更全内容