自动避障实验小车教学系统设计

2019-09-03 11:34吕淑平
实验室研究与探索 2019年8期
关键词:测距障碍物小车

吕淑平, 王 冲

(哈尔滨工程大学 自动化学院,哈尔滨 150001)

0 引 言

创新创业教育已经成为促进国家崛起、民族复兴和社会不断进步的动力,也是我国高等教育改革与发展的趋势之一[1-2]。2015年,国务院总理李克强在政府报告中提出“大众创业、万众创新”之后,国务院办公厅印发了《关于深化高等学校创新创业教育改革的实施意见》,成为高校开展创新创业教育的行动指南[3-6]。

创业教育的基础是创新[7],我院针对学生在创新初期,不知如何迈进科技创新大门这一普遍现象,早在2011年,面向二年级本科生就开设了“创新认知与实践”必修课,将科研训练教育纳入到系统的学习和课程体系中。课程要求学生利用课堂时间,在老师引导下亲身实践完成一件科技作品的制作与开发。目的是使学生尽早熟悉科学研究和科技创新的程序和方法,为今后创新创业打下基础[8]。课内开出实践性项目70余项,其中智能小车类实验项目深受学生欢迎。

本文研制的自动避障实验小车教学系统,以学生需求为导向,学生可以进行相关硬件制作,探索车辆自动避障策略,进行电动机控制程序、转速采集程序以及通信程序等设计,可使学生掌握一件科技作品完整的开发过程,训练学生创新实践能力。

1 系统总体结构设计

系统整体结构设计框图如图1所示,主要由主控模块、电源模块、驱动模块、信息采集与处理模块、无线通信模块以及Android软件等部分组成。考虑实际应用,避障实验小车系统设计了自动和手动两种工作模式。在自动模式下,超声波测距传感器“感知”周围环境信息,当检测到障碍物的距离小于安全距离时,能够自主避开障碍物,并保持原来的前进方向不变;在手动模式下,通过手机APP发送指令给实验小车,小车根据指令控制电动机动作,从而使小车完成相应的避障动作。

图1 系统整体结构框图

系统工作在手动模式时,手机终端通过WiFi模块发送命令至主控模块,主控模块通过对指令的分析控制电动机完成相应的动作;系统工作在自动模式时,主控模块通过信息采集与处理模块判断前方、左侧和右侧障碍物的距离并与安全距离进行比较,并采取相应的避障策略,最后通过PWM驱动电路驱动电动机完成相应的避障动作,实现小车自主避障。

2 系统硬件设计

整个系统硬件构成框图如图2所示,由单片机最小系统、电动机驱动电路、转速测量电路、电动机驱动接口、速度传感器接口以及超声波测距传感器接口等组成,直流电动机的型号为GM25-370直流低速大转矩电动机[9]。

图2 系统硬件构成框图

2.1 单片机最小系统

系统采用ESPDuino单片机作为最小系统,该款单片机兼有Arduino开发库及ESP8266系列芯片WiFi功能,支持手机APP[10],开发平台Arduino IDE界面简洁,方便掌握和使用[11]。在本系统中,ESPDuino最小系统主要工作是通过超声波测距传感器“感知”周围环境,制定相应避障策略,通过驱动电路控制两个电动机完成避障动作。

使用的管脚资源如表1所示,选择D12和D14端口作为产生PWM波端口,然后将产生的PWM波输入到L293DD电动机驱动芯片的使能控制端,控制4个大功率开关管的导通与关断,实现电动机转速控制。

表1 ESP-13单片机管脚资源分配

2.2 直流电动机驱动电路

直流电动机驱动电路如图3所示,主要由电动机驱动逻辑电路、H桥驱动电路、一些外围电路及一些保护电路组成。H桥驱动电路采用的是L293DD芯片作为驱动模块的主要部分,L293DD具有高电压、大电流、开关频率较高等特点,可直接驱动感性负载[12]。

图3 直流电动机驱动电路

其中,+3.3 V输入用于给电动机驱动逻辑电路供电,+5 V输入给H桥式驱动电路供电,VS为电动机的供电电压,4个输出端OUT1~OUT4分别接在两直流电动机的电枢两端,主控芯片ESP-WROOM-02产生两路PWM信号,将该信号作为使能端控制信号送入H桥驱动电路,进而控制大功率开关管的导通与关断,从而在H桥驱动电路输出端产生较大的电压,控制电动机的转速和方向。

2.3 超声波测距电路

为使小车能够“感知”周围环境,采用测距范围为2~400 cm、具有非接触式探测功能的HC-SR04超声波测距模块进行测距。该模块主要由STC11单片机、MAX232电平转换芯片以及集成了4个运算放大器的TL074芯片等组成[13]。其中,STC11单片机、MAX232电平转换芯片和超声波发射探头组成了模块的发射部分;TL074芯片和超声波接收探头组成了模块的接收部分。超声波测距模块实物图如图4所示。

图4 超声波测距模块实物图

超声波测距传感器的工作原理是通过内部产生一定频率的信号,经发射探头发射后接收探头检测是否有被物体反射、散射回来的信号,以此来判断是否有障碍物及障碍物的距离。目前常用的超声波测距方法主要有相位探测法、渡越时间探测法及声波幅值探测法。渡越时间法是通过计算反射波与发射波之间的时间间隔来计算距离,这种方法简单、实用,故系统采用该法进行测距。考虑单面测距避障精度有限,测量范围小,系统采用3个超声波测距传感器进行测距,分别安装在车头中间位置、车身左右两侧靠近车尾的位置。

2.4 电源分配

由于避障小车是移动目标,需要采用能够单独储能的电源。系统选用输出电压为7.4 V,容量为2.2 A·h,放电倍率为20C的锂电池作为电源供电,其实物图如图5所示。

图5 锂电池实物图

电压转换过程为:7.4 V的直流电首先经过同步降压芯片MP1482DS降为5 V的直流电,给电动机驱动芯片L293DD以及超声波测距传感器模块供电。然后此5 V的直流电再经过低压差的线性稳压器AS1117L-33降为3.3 V直流电,给控制芯片ESP-WROOM-02供电。电源的分配情况如图6所示。

图6 电源分配情况

3 系统软件设计

控制系统软件构成框图如图7所示,主要包括自动与手动选择程序、超声波测距程序、避障电动机驱动程序、转速采集程序以及通信程序等,控制系统整体流程图如图8所示。

图7 控制系统软件构成

图8 控制系统整体流程图

3.1 自动/手动选择程序设计

整个控制程序分为自动模式和手动模式两部分,通过采取硬件方式进行切换。用一个拨动开关置标志位,根据入口函数值选择不同的处理函数。拨动函数有两档3个引脚,中间的引脚作为标志位的I/O口,另外两个引脚一个接低电平(即接地),另一个接高电平,当拨动开关接通低电平时,切换到自动模式;当拨动开关接通高电平时,则切换到手动模式。手动与自动切换流程图如图9所示。

图9 手动与自动选择流程图

3.2 测距程序设计

超声波测距传感器利用超声波遇到物体会反射的特性进行测距。其测距流程图如图10所示。

图10 超声波测距流程图

3.3 自动避障策略程序设计

自动避障是小车遇到障碍物后能够自主避开,并能回到原方向上继续运行。在小车进行自主避障过程中,为避免小车与障碍物之间发生碰撞,二者之间应留有一定距离用于小车进行避障动作,该距离被称之为安全距离[14-15]。系统将障碍物分为5种情况,避障策略如表2所示。

表2 障碍物分类

注:1表示有障碍物;0表示无障碍物。

(1) Ⅰ类障碍物。实际意义上是无障碍物,小车继续保持直行状态即可。

(2) Ⅱ类障碍物。当超声波测距传感器检测到前方有障碍物时,系统做出向右转90°的避障决策。这时车身左侧超声波测距传感器开始工作,当检测到左侧障碍物大于设定的安全距离时,小车再左转90°,回到原方向上继续运行。

(3) Ⅲ类障碍物。当超声波测距传感器检测到前方和右侧有障碍物时,系统做出左转90°的避障策略。这时车身右侧超声波测距传感器开始工作,当检测到右侧障碍物大于设定的安全距离时,小车再右转90°,回到原方向上继续运行。

(4) Ⅳ类障碍物。当超声波测距传感器检测到前方和左侧有障碍物时,系统做出右转90°的避障策略。这时车身左侧超声波传感器开始工作,当检测到左侧障碍物大于设定的安全距离时,小车再左转90°,回到原方向上继续运行。

(5) Ⅴ类障碍物。当小车3路超声波测距传感器检测3面都有障碍物时,系统做出后退的避障策略。这时小车左右两侧超声波测距传感器开始工作,在检测到小车两侧的距离均小于设定的安全距离时,小车一直保持后退状态。直到大于安全距离,小车右转90°,直行,这时车身左侧超声波测距传感器又开始工作,当检测到左侧障碍物大于设定的安全距离时,小车再左转90°,进而回到原方向上继续运行。

3.4 手机APP界面设计

手动模式主要是为了解决复杂环境下自动模式无法应对的情况。主控芯片搭载了ESP8266无线通信功能,自身可建立WiFi,其控制流程较为简单。即手机端通过WiFi采用UDP协议发送命令给主控芯片,主控芯片根据指令发送信号给电动机驱动芯片,使小车做出相应动作[16]。手机APP界面如图11所示,主要由7个功能按键组成,即:前进、后退、左转、右转、停止、加速以及减速。

图11 手机APP界面

4 结 语

一个作品相当于一个小型科研项目,完成一个作品整个过程就像完成一个科研项目一样,对学生科学研究能力起到很好的启蒙作用。自动避障技术是车辆自动驾驶核心技术之一,本文结合创新课程实验项目,以探索自动避障技术为出发点,以两驱小车为实验对象,以Arduino平台为开发环境,设计了自动避障实验小车教学系统,学生依此系统进行制作与开发,很好地培养了学生创新意识和创新实践能力。

猜你喜欢
测距障碍物小车
大车拉小车
自制小车来比赛
高低翻越
SelTrac®CBTC系统中非通信障碍物的设计和处理
类星体的精准测距
赶飞机
刘老师想开小车
两轮自平衡小车的设计与实现
浅谈超声波测距
基于PSOC超声测距系统设计