变结构陆空机器人自主跨域越障技术研究
2021-09-14王建中,游玉,王鹤
目前越来越多的国家将陆空机器人应用到军事侦察方面,对其性能要求越来越高,侦察过程中很难对陆空机器人进行跟踪操控,机器人需具备自主运行能力. 为了提高机器人的续航能力,平台工作时以地面模式为主,以空中机动为辅;为了更好地发挥陆空机器人的跨域特性,进行自主跨域越障研究.
障碍物检测是自主跨域越障的前提,随着科技的快速发展,基于视觉传感器的障碍物检测方法已成为研究热点. 基于颜色特征模型的障碍物检测方法利用不同物体具有不同色彩属性的原理进行障碍物检测[1-2],但在色彩差异较小的环境中检测效果较差,且不能提取障碍物的三维信息. 基于光流法的障碍物检测方法对动态障碍物检测表现良好,但对静态障碍物检测不敏感[3-4]. 基于边缘检测技术的方法可以提取障碍物的边缘信息,但是包含地面干扰信息[5-6]. 基于双目立体视觉的障碍物检测方法可以有效地获取障碍物的三维信息[7-10],美国研制的勇气号火星探测机器人利用此方法进行前方障碍物的检测[11]. 邓祥等[12]提出了快速区域匹配算法进行障碍物检测,利用阈值来分割障碍物区域,可以去除无效的干扰信息,该算法具有较好的检测效果. 基于深度学习的方法具有检测能力强、鲁棒性好等优点,但是也存在对硬件要求高等缺点. 针对以上方法存在的不足,本文采用深度相机采集的深度图像进行障碍物检测.
目前,针对陆空机器人自主跨域越障的研究较少,本文根据变结构陆空机器人自身的特点及障碍物检测结果提出自主跨域越障策略,并进行障碍物检测及自主跨域越障试验.
1 变结构陆空机器人
1.1 机器人平台
变结构陆空机器人融合了轮式移动与4旋翼飞行,存在地面移动、陆空模式切换及飞行移动3种运动状态[13],如图1所示. 地面移动系统为两轮驱动、差速转向的4轮结构;为了减小陆空模式切换阻力,陆空模式切换由舵机直接驱动,舵机的旋转轴与机身水平面、机身侧平面夹角均为45°,4个舵机的旋转轴按照对应方向旋转180°即可实现地面模式与飞行的相互切换;飞行系统为“X”型4旋翼结构. 车轮为共用执行机构,既是地面移动车轮同时也是飞行电机的安装基座,降低了系统的复杂度和机器人自身质量,有利于延长续航时间.
图1 变结构陆空机器人运动状态Fig.1 Motion state of the variable structure land-air robot
1.2 自主跨域越障系统
平台采用Intel RealSense Depth Camera D415相机完成障碍物检测,采用NVIDIA Jetson TX2核心模块搭载RTSO-9003超小型载板作为机载数据处理单元,飞行采用Pixhawk 2.4.8进行位姿控制. 6S Li-Po电池直接为地面移动和飞行部分提供稳定可靠的电压,电池通过一块电源模块、DC-DC降压模块将电压转为12 V、8.4 V之后,分别为舵机、NVIDIA Jetson TX2供电. 变结构陆空机器人自主跨域越障系统硬件框图如图2所示.
图2 变结构陆空机器人自主跨域越障系统硬件框图Fig.2 Autonomous cross-domain obstacle negotiation system of the variable structure land-air robot
在Linux Ubuntu 16.04操作系统上实现自主跨域越障功能,主要基于ROS开源机器人系统使用C++进行编程. mavros作为Pixhawk 2.4.8在ROS下的信息交互接口,其主要完成PX4固件与TX2的通信工作,mavros已经封装mavlink消息流,通过ROS底层UDP协议在PX4固件与TX2之间进行转发. 在ROS中运行mavros节点,mavros能够订阅和发布话题,发布的话题主要包括当前时刻的飞行速度、全局和局部位姿等信息,订阅的话题主要包括外部定位信息、下一时刻位置和速度、加速度等信息.
1.3 地面移动越障极限分析
为了使变结构陆空机器人更好地适应环境及方便实际应用中对机器人进行越障控制,需要明确变结构陆空机器人地面移动模式下的越障极限. 地面移动时会遇到各种障碍物,其中跨越难度最大的障碍物类型是垂直障碍物,越过垂直类型障碍物的能力体现了变结构陆空机器人地面移动越障性能的好坏[14-16]. 以机器人地面移动跨越台阶为例,仅对机器人驱动轮越过垂直类型障碍物的情况进行受力分析,驱动轮与台阶面为点接触,且假设驱动轮与台阶任何点之间不发生相对滑动. 机器人可以越过台阶的条件是驱动力矩克服车轮在台阶顶角处的摩擦力矩,机器人在缓慢匀速越障过程中接触的地面为硬路面,忽略空气阻力,将机器人越障过程简化为以下二维模型,静力学分析如图3所示.
图3 地面移动越障受力分析Fig.3 Force diagram of the obstacle negotiation
根据力学平衡条件,驱动轮越障时有以下方程:
(1)
式中:N为地面对随动轮的支持力;N′为台阶对驱动轮的支持力;μ为驱动轮与台阶之间的摩擦因数;Ff为地面对随动轮的摩擦阻力;F′f为驱动轮在接触点处受到的摩擦力;M为驱动轮的驱动力矩;h为台阶高度;R为齿圈半径;m为机器人质量(5 kg).
则变结构陆空机器人地面移动越障极限:
(2)
2 障碍物检测
2.1 地面干扰及远景去除
由于深度图像的像素值仅与障碍物到深度相机的距离有关,可以降低环境对障碍物检测精度的影响且不易受障碍物阴影的影响. 深度图像存在边缘噪声,对障碍物检测造成干扰,首先通过双边滤波和中值滤波进行降噪处理,修复深度值.
地面区域与障碍物区域的深度值十分接近,会被误检为障碍物区域,降低障碍物检测的准确率,本文基于几何模型去除地面干扰区域. 设深度相机光心到地面的高度为H,像素点p对应的三维空间点P的坐标为(XP,YP,ZP). 设定阈值Δh,若点P距离地面的高度H-YP<Δh,则认为像素点p位于地面干扰区域,直接将其去除.
在障碍物检测时,为提高准确度,去除较远的背景,只对一定距离范围内的障碍物进行检测. 设置障碍物最大检测距离为Zmax,深度图像中像素值大于Zmax的像素点全部去除.
2.2 障碍物轮廓提取
深度图像通过二值处理之后进行轮廓提取,计算轮廓的像素面积,过滤噪声形成的伪障碍物区域. 设置邻域窗口为3×3,障碍物轮廓上的像素点p(x,y)像素值为255,背景像素值为0,则目标像素点p(x,y)的8个邻域像素值应均为255,这样可以得到轮廓点的集合,提取的障碍物轮廓如图4所示.
计算每个轮廓的像素面积,根据面积阈值S进行判断,将像素面积小于S的轮廓作为伪障碍物区域去除.
图4 障碍物轮廓Fig.4 Obstacle contour
2.3 障碍物建模
障碍物检测完成后,需要获取障碍物的距离和高度信息. 深度图像中障碍物经凸包处理后边界信息更加明确,但是获得的凸包形状可能是不规则的,其对应的边界信息不能有效地表示出障碍物的高度信息,这将影响后续的自主跨域越障控制,因此本文运用最小矩形匹配法进行障碍物建模,利用矩形边界信息获取障碍物的高度信息,如图5所示.
图5 最小矩形匹配法示意图Fig. 5 Minimum enclosing rectangle diagram
与凸多边形相比,矩形边界具有标准规范、信息明确的特点. 最小矩形匹配法的基本原理是寻找能够完全将障碍物边界包含在内的最小矩形,将障碍物的边界信息转化为最小矩形的4个顶点信息,然后将边界信息由像素坐标转化为世界坐标,进而获得障碍物的高度等物理信息,为变结构陆空机器人的自主跨域越障策略提供数据.
最小矩形匹配法建模步骤如下:
① 分别提取障碍物凸包的上边界像素坐标(x1,y1),左边界像素坐标(x2,y2),右边界像素坐标(x3,y3),下边界像素坐标(x4,y4);
② 根据4个边界像素坐标,确定的障碍物区域外接矩形的左上角顶点坐标(xleft,yleft)和右下角顶点坐标(xright,yright),其中:
(3)
3 自主跨域越障策略
机器人自主运动存在两种基本行为:趋向目标点行为和自主越障行为. 运用仲裁机制对这两种基本行为进行判断,在仲裁机制中设定地面移动越障极限高度h及安全距离d作为触发自主越障行为的起始条件. 自主越障行为的优先级高于趋向目标点行为,一旦检测到障碍物的距离在安全距离d内,机器人立即采取自主越障行为,当障碍物距离大于安全距离时采取趋向目标点行为.
对于趋向目标点行为,根据机器人到目标位置的距离D、机器人的移动方向与目标位置方向的夹角,对地面移动速度和角速度进行控制,飞行位姿的控制采用开源飞控Pixhawk 2.4.8中自带的较成熟的PID控制方法. 此行为下,机器人逐步改变自身位置及移动方向,以顺利到达目标点.
对于自主越障行为,根据检测到的障碍物高度H进行自主越障模式选择,根据检测到的机器人到前方障碍物的距离D进行判断是否越障. 一旦发现障碍物高度H大于机器人地面移动越障极限h且障碍物的距离D在设定的安全距离d范围内,机器人停止地面移动,进行陆空模式切换,以飞行模式进行自主越障;若发现障碍物高度H小于机器人地面移动越障极限h,则以地面移动模式进行自主越障.
开始运行时,首先设定目标点位置,机器人转向对准目标点,控制单元不断对采集到的视频图像进行处理,检查是否有障碍物出现. 如果没有障碍物出现,机器人直接以地面移动模式行驶至目标点(到目标位置的距离在设定的阈值范围内). 如果有障碍物出现,根据检测到的障碍物的高度H和机器人到障碍物的距离D,切换自主越障的模式:如果以地面移动模式进行越障,则根据定位信息获取机器人的实时位置信息,判断机器人是否到达目标位置;如果采用飞行越障方式,需要进行陆空模式切换至飞行模式,然后垂直起飞至安全高度(高于障碍物1.5 m),飞行至目标点的正上方,最后垂直降落至目标位置. 自主跨域越障策略的具体流程如图6所示.
图6 自主跨域越障流程Fig.6 Flowchart of autonomous cross-domain obstacle negotiation
4 试验研究
4.1 障碍物检测试验
为了验证本文提出的障碍物检测算法是否有效,将深度相机安装在变结构陆空机器人上,在1 500~4 000 mm之间每隔500 mm对高649 mm、宽690 mm静态障碍物的距离及高度进行检测,为了方便观察,将深度图像检测到的障碍物边界信息经坐标变换转换到彩色图像上,图7为障碍物距离4 000 mm处的试验场景及检测结果,不同距离的障碍物检测结果如表1所示.
试验结果显示,本文提出的障碍物检测算法可以成功地检测出障碍物的距离及高度信息,能够真实地反映障碍物的高度及距离信息. 对于分辨率为640×480的视频图像,处理速度平均可达到24帧/s,基本可以满足机器人自主越障过程中对实时性的要求.
图7 障碍物距离4 000 mm处的试验场景及检测结果Fig.7 Experimental scenarios and detection result at 4 000 mm away from the obstacle
表1 不同距离的障碍物检测结果Tab.1 Obstacle detection results
4.2 自主跨域越障试验
为了验证本文提出的变结构陆空机器人自主跨域越障策略的有效性,在变结构陆空机器人行驶航路上设置障碍物(高450 mm). 距离障碍物3 000 mm处的障碍物检测结果如图8所示,检测结果(高462 mm,距离3 012 mm)较为准确,障碍物的高度超过地面移动越障极限,选择自主飞行越障. 设定目标位置为正前方8 000 mm处,起初机器人距离障碍物4 500 mm,机器人自主跨域越障过程如图9所示:机器人地面移动至距离障碍物1 500 mm处,地面移动模式切换为飞行模式,垂直起飞至安全高度(高于障碍物1 500 mm),飞行至目标点正上方、垂直降落至目标点.
图8 距离3 000 mm处障碍物检测结果Fig.8 Detection result at 3 000 mm away from the obstacle
图9 自主跨域越障过程Fig.9 Process of autonomous cross-domain obstacle negotiation
试验结果显示,机器人可以准确检测判断出行驶前方障碍物的距离及高度信息并可以顺利自主跨域越障,到达目标点,表明本文设计的自主跨域越障策略是有效的.
5 结 论
以研制的变结构陆空机器人为平台,完成基于深度图像的障碍物距离和高度信息的检测,根据检测结果及机器人地面移动越障极限,提出自主跨域越障策略. 试验结果表明,本文提出的障碍物检测方法及自主跨域越障策略是有效的. 此外,本文提出的变结构陆空机器人自主跨域越障策略,为机器人更好发挥跨域越障特性及多模态自主运动奠定了基础.