APP下载

基于单片机的无人避障小车系统设计

2021-03-18

机械工程与自动化 2021年1期
关键词:测距障碍物小车

雷 丹

(四川信息职业技术学院,四川 广元 628017)

0 引言

随着科技的发展和进步,采用机器人替代人工来探知一些危险区域或人类不能直接到达的地域,要求探测机器人在行进中可以实时检测周围的障碍物,然后根据检测结果设计出合理的运行轨迹,保证机器人可以安全抵达任何位置。本文以自动避障功能为主要研究对象,选取合适的障碍物探测方式及避障控制算法,完成整个无人避障小车系统的设计。

1 系统设计方案

根据目前特殊行业的需求,本文设计了无人避障小车,主要从以下几个方面提出了相应的设计方案。

1.1 障碍物检测设计

本文采用了超声波传感器和红外传感器,超声波传感器采用HC-SR04,该传感器探测距离为2 cm~450 cm,探测角度为15°,工作电压为5 V,可以由单片机直接供电。为了实现无人避障小车180°的测距,增加了可旋转360°伺服舵机来带动超声波传感器进行测距,伺服舵机的转动角度分别设计为0°、90°、180°,使得超声波测距范围形成一个封闭的半圆形结构。由于超声波测距有一个测距周期,当没有达到该测距周期时就使用红外传感器来代替超声波传感器进行障碍物的检测,这是对超声波传感器的一个时间上的补偿,这样就能更加精确地对外界环境进行检测。

1.2 控制算法设计

超声波传感器需要在0°、90°、180°三个方位上分别进行数据检测,每个方位上单次检测会获得5组数据,分别为d1、d2、d3、d4、d5,然后采用冒泡排序法对5组数据进行计算,得出较为精确的结果。

冒泡排序法计算过程为:先对5组数据进行比较排序,得出最大值和最小值,假设最小值为d1,最大值为d5;然后将最小值d1和最大值d5排除;最后再对剩下的3个值d2、d3、d4求平均数得到如下结果:

(1)

1.3 电机控制设计

本文中设计的无人避障小车系统采用4个直流电机,控制芯片为L293D,它是一款双H桥驱动芯片,可同时驱动两路直流电机,本文采用了两个L293D,1个控制左侧两个直流电机,另一个控制右侧两个直流电机,然后通过输入信号控制直流电机执行正转、反转、停止来实现小车的直行、左转、右转,具体的设计如下:

(1) 当检测到没有障碍物时,左侧电机正转,右侧电机正转,实现无人小车直行。

(2) 当检测到左侧有障碍物时,左侧电机正转,右侧电机反转,实现无人小车右转。

(3) 当检测到右侧有障碍物时,左侧电机反转,右侧电机正转,实现无人小车左转。

2 无人避障小车系统设计

2.1 硬件结构

无人避障小车的控制系统结构框图如图1所示,无人避障小车系统分为电源模块、检测模块、显示模块、驱动模块和控制模块五个部分。

图1 无人避障小车控制系统结构框图

电源模块:为了保证小车可以自主行驶,本文采用了独立电源模块,该电源模块使用了供电、程序烧写、串口通信三合一模块,采用可充电18650锂电池,主要给4个直流电机和单片机供电,以及进行程序烧写和串口通信。

检测模块:该模块分为超声波测距模块和红外检测模块两部分,超声波测距模块为主要模块,当超声波失效时,作为储备使用红外传感器避障系统。

显示模块:使用LCD1602液晶显示模块实时显示超声波检测的距离值,LCD1602 液晶第一行显示智能小车行驶方向,第二行显示该方向与障碍物之间的距离。

驱动模块:包括4个驱动电机,执行小车的前进、左转、右转和后退动作。

按键模块:主要控制小车的启动与停止。

控制模块:采用51单片机作为控制单元,主要负责协调控制其他4个模块,使系统可以完整地完成自主避障功能,单片机的硬件接线图如图2所示。

图2 单片机的硬件接线图

2.2 软件设计

无人避障小车控制部分软件包括主程序、超声波测距子程序、显示模块子程序、电机调速子程序和按键控制子程序等5个部分。

主程序的路径设计过程如图3所示。小车启动后朝正前方前进,当遇到障碍物时小车停止,这时单片机会先采集超声波测量的正前方障碍物的距离并显示,然后舵机左转采集左侧障碍物的距离并显示,再让舵机右转测量右侧障碍物的距离并显示,如果三个方向的距离都小于10 cm说明空间极其狭窄,小车会原地左转然后继续检测直至小车检测到有一条合理的路线离开这个空间;如果小车左侧的距离大于右侧小车就原地左转,如果右侧的距离大于左侧小车就会右转。然后小车继续前行,直到再次遇到障碍物进入下一个循环。

图3 主程序流程图

3 结语

本文基于单片机开发了一款无人避障小车,为了实现180°的检测范围,将伺服电机与超声波传感器结合起来,以实时地检测小车前方是否出现障碍物,并判断出障碍物的具体方位,为小车设计出合理的避障路径,实现了小车的智能化行驶。

猜你喜欢

测距障碍物小车
大车拉小车
自制小车来比赛
高低翻越
SelTrac®CBTC系统中非通信障碍物的设计和处理
类星体的精准测距
刘老师想开小车
两轮自平衡小车的设计与实现
浅谈超声波测距
基于PSOC超声测距系统设计
相对差分单项测距△DOR