APP下载

基于可信距离规避与瞄准同步控制的自动寻敌与攻击机器人

2022-04-24黄俊曦徐非凡陈湘骥陈浩铭

现代计算机 2022年4期
关键词:角速度云台命中率

黄俊曦,徐非凡,陈湘骥,陈浩铭

(华南农业大学数学与信息学院,广州 510642)

0 引言

在RMUA 中,采用“全自动机器人射击对抗”的形式进行比赛,全自动机器人通过发射弹丸击打敌方机器人进行射击对抗。比赛结束时,机器人总血量高的一方获取比赛胜利。机器人身上配有四个装甲板,是主要的承伤区域。因此,如何准确识别与瞄准敌方机器人装甲板和灵活规避敌方机器人的攻击是该比赛的取胜关键因素。

近年来,机器人领域技术得到极大的发展。在图像识别方面,深度学习算法得到广泛应用。如Jitian 等基于卷积神经网络和转移学习,利用Web 的标签图像数据,通过改进深度学习方法,实现从监控图像中识别车辆类型。Songlu等提出了一种端对端的深度神经网络,通过两个具有不同卷积层的独立分支分别进行车辆检测和车牌检测,在车辆车牌同时检测任务上取得良好效果。雷蕾等人基于YOLOv5 交通标志检测算法,采用K-means++算法重新选择先验框,有效提升模型的检测准确度和应用性能。郝达慧等基于YOLOv5 网络对车牌定位,结合LPCRNet 网络识别车牌字符,在复杂场景下的车牌检测和识别有着较好的鲁棒性。尉天成等基于Faster RCNN 模型,通过对提取特征的卷积神经网络以及候选框生成方法进行改进和优化,在交通标志识别中取得良好效果。在轨迹预测方面,乔少杰等基于卡尔曼滤波提出了一种动态轨迹预测算法。金立生等提出了一种基于驾驶视角的自主驾驶环境感知轨迹预测算法,通过将LSTM 网络模块、空间交互模块和时间行为注意力模块相融合,实现了更高精度的轨迹预测。在重力补偿方面,温永禄等利用误差对导弹发射点进行迭代补偿,提高了发射点坐标的精准度。

2021RMUA 比赛规定只允许使用官方机器人。该机器人主要分为底盘和云台模块。底盘包含一组麦克纳姆轮,可实现机器人的全向移动。云台搭载了可发射17 mm 弹丸的发射机构,可完成Pitch 和Yaw 两个自由度的旋转运动。机器人配备了裁判系统模块,可与比赛系统相互通讯。参赛队伍可以基于该机器人配置摄像头和激光雷达等传感器、车载计算设备进行上层开发。通过实现自主导航、目标识别、自主决策等功能以进行多机器人全自动对抗。

本文基于近几年机器人领域技术的发展,结合了2021RMUA 比赛的要求和规则,在比赛指定的机器人基础上,基于可信距离范围内机器人底盘规避和云台自动瞄准同步控制进行上层开发,实现了可自动寻敌与攻击的机器人。

1 基于可信距离规避与瞄准同步控制算法

通过发射子弹命中敌方机器人的装甲板是比赛主要的攻击方式。因此,如果想要取得比赛胜利,需要提升子弹的命中率和灵活规避敌方子弹的攻击。

机器人是在8 m×5 m的比赛场地中进行射击对抗。由于射击距离和子弹飞行时间成正比,而敌方机器人一般处于运动状态中,因此射击距离会对子弹精准度产生一定的影响。同时机器人的可发射子弹数量是有限制的。为了提高机器人的攻击效率,增设了一个攻击可信距离。定义为在某一距离范围内,机器人对静态目标的射击命中率达95%以上,对动态目标的射击命中率达50%以上。用该标准来定义可信距离。经过多次实验,将可信距离设定为4 m。

如图1所示。

图1 算法具体流程

算法首先通过自动寻敌使机器人靠近敌方机器人,同时对车载摄像头获取到的图像进行颜色相减、二值化和形态学等预处理操作,然后对预处理后的图像进行特征提取,将提取出来的灯条按照角度差、长宽比进行配对,并从配对成功的灯条中选出最优组合作为目标装甲板。接着将获取到的目标装甲板信息通过PnP算法进行解算,PnP 是用于求解3D-2D 点对运动的方法,可通过个三维空间坐标及其二维投影位置估计相机位姿。由于机器人装甲板长宽已知,因此可得出装甲板四个角点在以装甲板中心为原点的世界坐标系中的三维坐标,结合装甲板的二维投影坐标,可解算出相机坐标系和世界坐标系之间的旋转矩阵和平移矩阵,从而得出敌方机器人的距离和机器人当前云台转角。如果敌方机器人位于可信距离内,则同步控制机器人底盘摆动规避和云台瞄准攻击。

1.1 自动寻敌

由于车载摄像头安装在机器人云台的前方,因此摄像头所能探测到的位置有限,仅限于机器人前方一定角度内的范围。而敌方机器人有可能出现在己方机器人的侧方或后方进行攻击。为了能够尽早发现敌方机器人,进入规避和瞄准攻击状态,本文结合哨岗系统实现了自动寻敌的功能。

哨岗系统由一个摄像头和一台计算设备组成,摄像头可安装在比赛场地的边缘对角处,获取全局图像。而计算设备负责执行多目标检测和定位算法。算法首先通过YOLOv3-tiny 神经网络检测敌方机器人,在检测到敌方机器人后,通过将预测框中心向下四分之一处的点作为机器人的特征点,将该点进行透视变换,从而得到敌方机器人的位置。哨岗系统通过无线局域网将该位置信息给到己方机器人,通过获取敌方机器人的位置信息,使用ROS 的move_base 框架进行导航靠近敌方机器人,同时控制底盘和云台朝向敌方机器人的方向,从而实现机器人的自动寻敌。具体算法流程见图2。

图2 哨岗检测与定位流程

1.2 机器人底盘摆动规避

机器人底盘配有四个装甲板,敌方主要通过攻击装甲板对己方造成伤害。本文通过改变机器人底盘角速度实现底盘摆动规避行为,用于降低敌方子弹命中率。角速度控制主要流程为:如果底盘和云台间偏移角大于-0.2 rad 时,控制底盘以-0.1 rad/s的角加速度进行匀变速转动,直到底盘角速度大于-2 rad/s,则控制底盘进入匀速转动状态。如果底盘和云台间偏移角小于-0.4 rad 时,则控制底盘以0.1 rad/s的角加速度进行匀变速转动。直到底盘角速度大于2 rad/s,则控制底盘进入匀速转动状态。按照以上逻辑,循环控制底盘角速度变化,从而实现底盘规避行为。

使用弹丸攻击不同位置装甲板所产生的伤害不同。前装甲板为20 点血量伤害,左右装甲板为40 点血量伤害,后装甲板为60 点血量伤害。按照以上逻辑对底盘角速度控制时,底盘和云台间偏移角会在0°~35°范围内。而敌方机器人一般处于云台前方,因此当机器人进入规避状态时,可通过摆动底盘对敌方子弹进行规避,同时尽量让前装甲板面向敌方,而不会将左右装甲板暴露给敌方。

1.3 云台瞄准攻击

由于在比赛中,机器人的可发射子弹数量是有限制的。如果想要取得比赛胜利,则需要提升子弹命中率。因此在机器人的瞄准攻击部分加入了预测和弹道补偿两个功能。

因为机器人在比赛中一般是处于移动状态的,所以需要加入预测攻击功能来提升子弹命中率。首先通过PnP 算法获取出当前时刻云台角度,然后结合上一时刻云台角度计算出敌方机器人相对于己方机器人云台的相对角速度信息。将该相对角速度信息和机器人自身陀螺仪的Yaw 轴角速度信息进行融合,从而得到敌方机器人的绝对角速度。将云台信息和敌方绝对角速度信息放入二维卡尔曼滤波算法中,通过公式(1)对当前状态进行预测,结合当前时刻的测量值,获取到当前时刻的云台位置和敌方的绝对角速度,通过公式(2)对下一时刻的敌方机器人装甲板所在位置进行预测,从而得到下一时刻云台角度,达到预测的目的。

其中是当前时刻的预测云台信息,是当前时刻的预测速度信息,是上一时刻的云台信息,是上一时刻的速度信息。通过上述的位置和速度关系公式,结合上一时刻的云台和速度信息,得到当前时刻的云台和速度信息。

其中是下一时刻的云台信息,默认一定时间间隔内速度不变,通过当前时刻云台信息,结合速度时间信息,预测出下一时刻云台转角信息。

仅对敌方机器人作预测攻击无法很好提升子弹命中率。由于子弹发射后会受到重力、空气阻力等作用力影响,当距离敌方机器人较远时,子弹命中率会大大降低。为了保证在最可信距离内拥有较高的子弹命中率,对2 m以外的攻击目标进行弹道补偿。机器人通过计算俯仰角差值来进行弹道补偿,具体计算公式如公式(3)、(4)所示。

其中为俯仰角差值,为射击距离,为重力下坠模型的灵敏度,经过测试,当=1.2×10时效果较好。是用于调整整体偏差的变量,只对3.2 m 以外的目标有效,具体计算公式如公式(5)所示。

其中为射击距离,为子弹初速。通过将子弹初速、射击距离输入到重力下坠模型中可计算出俯仰角差值。利用该差值可得到正确的俯仰角,从而实现弹道补偿。

2 实验效果与分析

测试机器人是RoboMaster2020 标准版AI 机器人,搭载了SLAMTEC 的RPLIDAR A3 激光雷达,车载摄像头是KS1A552 型号彩色全局曝光摄像头,分辨率为640×480,车载工控机的CPU为Intel i7 10510U。

实验测得,如表1目标为静态时加入预测前后效果相近。对于动态目标,预测前命中率仅为13%,预测后命中率提升到54%。结果表明,预测可有效提高动态目标的命中率,提高了41%。

表1 有无预测功能子弹命中率对比

机器人只对2 m 以外的目标进行弹道补偿。实验测得,如表2 距离目标2 m 时,有无弹道补偿效果相近。距离目标4 m时,未加入弹道补偿情况下,未能命中一颗子弹,加入弹道补偿后,命中率达96%。结果表明,弹道补偿可有效提高远程目标命中率。

表2 有无弹道补偿子弹命中率对比

实验测得,如表3 无规避情况下,射程为2 m 和4 m 的命中率相近。有规避情况下,2 m和4 m的命中率都降低了。结果表明,底盘规避有效降低敌方子弹命中率。

表3 有无规避效果对比

如表4 实验中分别发射100 颗子弹,距离为4 m 时子弹命中率为52%,距离为5 m 时命中率为43%,距离为6 m 时命中率为28%。基于该实验结果,结合本文对可信距离的定义,将可信距离定为4 m。

表4 可信距离内外动态目标命中率

3 结语

本文基于在可信距离范围内机器人底盘规避和云台瞄准同步控制,结合哨岗检测定位功能,实现了可自动寻敌和攻击的机器人。该机器人在2021RMUA 机甲大师高校人工智能挑战赛中斩获季军。

猜你喜欢

角速度云台命中率
智能辅助驾驶系统中横摆角速度信号估计方法的研究
Help me buy a…Tripod head帮我买云台
高中物理角速度矢量性问题的教学探究
大疆创新:灵眸Osmo口袋云台相机
圆周运动角速度测量方法赏析
前臂肌群力量训练对篮球中远投篮命中率影响的实验研究
精准水平快速到位
轻巧双平台
让子弹飞
子弹不长眼