基于Arduino的智能避障小车的控制方法
物联网
2024-11-01 14:46:58
阅读次数: 0
一.工作原理
- 上图为超声波模块转动角度与探测方向的关系,正常情况下,智能小车会沿直线行驶,当遇到前方有障碍物且小于一定距离时(设定距离可根据具体情况调整),智能小车立即停止运行。
- 舵机转动超声波模块探测右方45°和左方135°障碍物距离并返回给Arduino控制板。
- Arduino控制板根据前方、右方、左方障碍物的距离,自动判断一条可以安全前进的路径,避开障碍物后,再继续沿直线行驶。
注意:当舵机转动时,超声波模块无法正确探测障碍物的距离,须等待舵机转动完成且稳定一段时间(约0.5秒)后,才能探测到障碍物的正确距离。
二.行驶路线自动判别
- 超声波避障智能小车正常情况为直线前进,当前方有障碍物时,小车立刻停止,分别探测右方和左方障碍物的距离,通过算法控制选择障碍物距离较远的方向为安全的前进路线。
- 上图为超声波避障智能小车行进路线自动判断方法:
- 图1所示为前方和右方都有距离小于 25cm 的障碍物时,智能小车探测到左方无障碍物,向左转动避开障碍物后,再回正直行。
- 图2所示为前方和左方都有距离小于25cm的障碍物时,智能小车探测到右方无障碍物,向右转动避开障碍物后,再回正直行。
- 图3所示为前方、右方和左方都有距离小于25cm障碍物时,智能小车探测到右方和左方都有障碍物,采取的策略是先后退避开障碍物,再向右转动,最后回正直行。
三. 控制策略:
左方障碍物 |
前方障碍物 |
右方障碍物 |
控制策略 |
无 |
无 |
无 |
前进 |
无 |
小于25cm |
小于25cm |
左转 |
小于25cm |
小于25cm |
无 |
右转 |
小于25cm |
小于25cm |
小于25cm |
先右退,再右转,最后前进 |
上表为超声波避障智能小车行驶控制策略,智能小车根据超声波模块检测到的左方、前方、右方3个方向的障碍物距离,选择距离障碍物大于25cm的方向前进,如果3个方向的距离障碍物都小于25cm,那么智能小车先后退、再石转离开障碍物,最后再回正直行。
转载自blog.csdn.net/weixin_42255385/article/details/142822145