APP下载

基于移动机器人技术的自主跟随与避障系统设计*

2022-09-22申岚熊中刚贺晓莹刘德清肖昌永罗子强陈溪华李慧娴

机电工程技术 2022年8期
关键词:障碍物轮椅超声波

申岚,熊中刚,贺晓莹,刘德清,肖昌永,罗子强,陈溪华,李慧娴

(桂林航天工业学院机电工程学院,广西 桂林 541004)

0 引言

时代发展伴随着科技的发展,使人们的生活和医疗卫生水平提高。老龄年龄段的老人越来越多,同时还有残疾人和经历各种灾难而造成生活不便的人群,帮助他们改善生活质量成为一个重要问题。随着技术的发展,研究帮助老年人的智能轮椅成为一个迫切的趋势,智能轮椅需要进行研究、设计、生产制造进而投入使用。在国外,从英国于1986年研制出第一批智能轮椅开始[1],各国投入较多资金并着力开始研究各式各样的智能轮椅。美国斯坦福研究院(SRI)[2]研制出世界上首台名为Shakey的智能移动机器人。法国在1989年进行了智能轮椅项目VAHM,设置了自动、半自动、手动3种控制模式[3]。西班牙的SIAMO项目设计的轮椅包含操纵杆、眼睛、呼吸、语言、头部五种模式共同组成轮椅的人机界面[4]。随着移动机器人技术的不断增长,智能轮椅有了更好的交互性,以及更强的自主性和对外界环境的适应性[5]。近年来,智能轮椅正逐渐变得多功能化。我国中科院自动化研究所承担了“863”智能轮椅项目,成功研制出具有视觉和口令导航功能同时能够进行语音交互功能[6]。在2019年,由王淑坤、陈辉等[7-8]研究出一款具有对接、升降以及其他辅助功能的智能轮椅,能在一定程度上满足一些需要特殊护理人群的需求。在2020年中,段佶、平雪良等[9-11]研究出一款基于移动机器人技术的智能轮椅。上海交通大学设计了交龙智能轮椅,能进行语音交互和多种环境下进行路线规划的功能[12]。本文研究的智能轮椅是近几年提出的一种新式轮椅,在电动轮椅的基础上,增加了定位移动、站立辅助、遥控移动等一些智能的功能,其重要的一项功能是避障,本质在于,判断轮椅自身是否有障碍物阻挡,如有,则平稳地绕开障碍物,不能影响到使用者的使用体验,甚至威胁到他人的生命安全。在原有的避障系统上增加一个自主跟随的功能,以此改善用户使用体验。当他们站起来活动身子时,轮椅保持一定距离的跟随。这两种功能提高了轮椅的性能。

1 智能轮椅的系统结构

本文的整个控制系统将采用模块化设计,其主要由中央控制模块、电机驱动模块、超声波避障模块以及跟随模块几部分组成。系统结构如图1所示。

图1 系统结构

2 智能轮椅的控制系统

基于总体方案设计,在Altium Designer中绘制出控制系统的总电路图,其中包括中央控制器模块、电机驱动模块、超声波模块、跟随模块、报警模块以及按键模块的硬件电路设计。采用STC89C52RC单片机作为该控制系统的中央控制器,分别在轮椅的中间、左边和右边安装3路超声波传感器,其作用是用来测量障碍物的距离,同时把检测到的数据发到控制模块,中央控制模块根据接收到的信息,执行相应操作,驱动电机模块执行避障指令。跟随系统是通过安装在轮椅两边扶手下的红外传感器来实现的,红外传感器检测人体或障碍物,通过比较两边是否有红外信号返回,来实现对目标的实时跟随。系统总电路如图2所示。

3 智能轮椅控制系统硬件设计

3.1 跟随模块

本文选择E18-D50NK红外传感器作为实现跟随功能的主要硬件。该传感器是一种发射与接收一体化的光电传感器,发射光经调质后,接收头对光进行调质输出,一定程度上避免可见光干扰。该型号传感器外壳通体黄色,同时其外部连线,末端增加有杜邦头,方便组装。传感器外部共有3根线,棕色线接VCC,黑色线作为信号输出连接到中央控制器的I/O口上以及蓝色线接GND,每根线不能接反,否则将会有烧坏传感器的风险。该轮椅的跟随功能主要靠两个装在轮椅斜前方的红外传感器实现,红外传感器检测障碍物或人体,通过判断两个红外传感器是否接受到返回信号来调整轮椅方向,从而达到跟随目标的作用。在仿真模拟图中,由于在Proteus仿真软件中无法画出红外传感器,为此将用单刀双掷开关代替。当开关打到下面触点时,表示接受头收到红外信号,上传至控制器,控制器下达指令给执行电机完成指令从而实现跟随功能。

图3 跟随模块

3.2 超声波避障模块设计

本文的避障模块由3个HC-SR04超声波模块组成,这种型号的超声波模块可提供2~400 cm测距,其精度最高可达3 mm。整个模块主要由超声波发射器,接收器与控制器组成,下方共有4个引脚,其中Trig为触发信号输入端口,Echo为回响信号输出端口,采用3个超声波模块分别对前方、左边和右边的障碍物进行测距。通过3个放置于不同位置的超声波,得出超声波遇到障碍物反射回模块本身所需要的时间,经过中央控制模块的算法运算,算出障碍物离轮椅本身的距离,当距离小于系统设定值时,电机控制模块开始控制左右两边的电机转速,从而达到转弯的效果,实现避障功能。如图4所示。

图4 超声波避障设计

3.3 电机驱动模块

本系统采用L293D芯片作为电机驱动模块,其作用是接收来自传感器的信号,驱动电机产生动作。L293D芯片是由SEG公司研发产品,其内部包含4通道逻辑电路,在通常情况下可直接连接并同时控制两个36 V,2 A以下的直流电机,它还能接受标准TTL逻辑电平信号,基本上满足本模块设计要求。由于芯片可直接对电机控制,因此无需连接隔离电路,其主要电路连接如图5所示。

图5 电机驱动模块

3.4 报警模块

该模块由一个三极管,一个蜂鸣器组成,它的作用是在一些特定的场合中发出尖锐的声响来引起其他路人的注意,当轮椅跟随失去目标时,提醒使用者自己的轮椅已丢失,其主要电路连接如图6所示。图中蜂鸣器连接三极管的原因是单片机的驱动能力不足以使蜂鸣器工作,利用三极管具有放大信号的作用来使蜂鸣器正常工作。

图6 报警模板

4 智能轮椅控制系统软件设计

4.1 主程序系统流程

本文采用Keil C51编写本系统的控制程序,其中包括超声波测距程序、避障程序、跟随程序、电机驱动程序、PWM信号发生程序、蜂鸣器报警以及按键设定程序。控制系统主程序流程如图7所示。

图7 系统流程

4.2 避障模板软件控制

避障系统是本控制系统的核心组成部分,且由于本系统采用超声波模块实现避障,因此整个避障模块的软件设计可分为超波测距和避障系统两部分。当单片机上电初始化,同时会将Echo和Trig端口置于低电平的状态中。当开始准备测距工作时,中央控制器首先向Trig端口发送超过10 µs的高电平脉冲,同时模块的超声波发射器向外发射8个40 kHz的方波,接着接收头开始等待收到由障碍物反射回来的超声波;当有超声波返回时,模块的Echo端口输出上升沿,中央控制器在捕捉上升沿的同时打开定时器T1开始计时,并开始等待捕捉Echo端口的下降沿;当捕捉到下降沿时,停止计时器计时,读出计时器时间t,此时的t就是超声波在空气中传播的时间。由于定时器T1在工作方式1下是一个16位计数器,因此可通过time=TH1×265+TL1转换成十进制。单片机根据公式s=vt算出障碍物离轮椅的距离,其中,v为超声波在空气中的传播速度为340 m/s。此外,由于中央控制器中的计时器所记录的时间是超声波在轮椅与障碍物之间传播一个来回的时间,因此公式中的t要在计时器所读出的时间基础上除以2,计时器计时所用单位为µs。最后经过单位转换以及上文提到的数据处理后,计算障碍物距离公式可整理为s=(17t)/1000,单位为cm。在经过超声波测距得到障碍物的距离后,接下来的操作就是如何避开障碍物。避障的主要核心在于把超声波模块所测得的数据与系统所设置的数值相比,接着做出相应的动作避开障碍物,由于本文采用三路超声波实现避障功能,因此将会得到由3个超声波模块计算出来的3个距离数据。

本系统采取的思路如图8所示。图中首先将中间超声波模块得到的距离与设定值进行比较,当小于设定值时,就开始判断左右两边障碍物的距离;哪一边的距离小于设定值就向反方向行驶;若左右两边距离均小于设定值,就驱动轮椅先后退一小段距离,再重新测量左右两边距离,哪一边的距离大就驱动轮椅向着距离大的方向行驶。

图8 避障系统流程

4.3 跟随模块软件控制

跟随模块是该轮椅控制系统重要组成部分,系统进入跟随模式后,左右两侧的红外探测器分别开始工作,若两个探测器均接受反射回的信号,表明前方是跟踪目标,中央控制器通过控制电机转动使轮椅向前移动,跟随目标;若只有左边的探测器接受到信号,则表明目标在轮椅左侧,于是轮椅就向左运动;轮椅向右运动与向左运动同理。该模块采取的思路如图9所示。

图9 跟随模块流程

5 仿真分析

本文选用Proteus软件作为主要仿真测试工具。图10所示为控制系统仿真电路。首先在keil5软件中新建一个工程,并在其中编写C51程序,接着将编写好的程序进行保存,并同时命名后缀为“.c”为结尾,然后将程序在软件中调试,待程序成功且无报错和无警告后,生成Hex文件。然后在Proteus软件中新建一个工程,并在其中画出整个控制系统的最小系统,避障模块,跟随模块等一系列模块的电路图。双击位于画面中的STC89C52 RC芯片,导入由Keil5生成的Hex文件。点击Proteus画面左下角的开始键,开始仿真,观察电机的转动方向和各引脚的电平情况。如图11所示。

图10 控制系统仿真电路

图11 HEX文件导入

在超声波避障模块方面,经过不断调整3个超声波模块上的数值来模拟现实中障碍物相对轮椅自身的距离,发现左右两边电机基本上按照程序设定中那样做出相应动作,如图10所示仿真电路,当开关1拨到下面时,表示左边的红外传感器接受到了由障碍物反射回来的信号,则左电机静止,右电机正转,轮椅整体向左转,并趋向于障碍物方向;在跟随模块方面,两红外传感器均正常工作,当按下按键时,系统进入跟随模式,由于左右红外跟随模块没接受到返回信号,故左右电机不工作,同时蜂鸣器开始发声,报警。

6 实物分析

实物如图12所示,通过测量轮椅避障时的距离,从而测试出轮椅在某种情况下的避障性能。图中所示为轮椅垂直遇到障碍物的情况,在本次测试中将轮椅放置于同一位置中启动,进行3组每组5次测量轮椅避障的距离,如图13所示,横坐标为测量次数,纵坐标为测量距离,将测量结果与程序中设定的数值进行对比,由此测试出轮椅在此情况下的避障功能。结果表明,轮椅都能有效避障,而且经过几次长时间的测试,轮椅均能跟使用者的运动而运动,能基本上满足跟随要求。

图12 实物展示

图13 轮椅避障数据

7 结束语

本文是基于单片机控制的智能轮椅的自主避障与跟随控制系统设计,设计一个能让轮椅正常地进行自主避障和跟随的控制系统,能在行进的过程中,识别出障碍物的位置,并作出避障的动作以及能够跟随目标的功能。采用STC89C52RC单片机作为中央控制器,通过编程仿真和实物演示,结果表明能实现跟随和避障功能。实物测试结合了理论与实际,证明了控制系统具有可实行性,提高了轮椅的安全性能,能有效帮助轮椅使用者解决实际问题。结合社会的实际需要,有必要对智能轮椅进行设计研究以帮助行动不便人群,智能轮椅能辅助他们的日常生活,进而达到改善生活质量的目的。

猜你喜欢

障碍物轮椅超声波
轮椅上的爱
高低翻越
SelTrac®CBTC系统中非通信障碍物的设计和处理
我的轮椅
赶飞机
蝙蝠的超声波
基于Niosll高精度超声波流量计的研究
轮椅上的姑娘(外三首)
蝙蝠的超声波
超声波流量计的研究