七月一日至八日 我们组成员参加了在澳大利亚举办的robocup的比赛,主要参赛队员除了我之外还有旷皓飞,徐晴雯,侯佳维,龙肖灵,何振鹏。RoboCup 2019机器人世界杯在悉尼ICC国际会展中心举办。悉尼是澳大利亚最大的城市,市中心充满了熙攘的人群,整个城市热闹且繁忙。作为机器人领域最盛大的竞赛之一,此次大赛也吸引了不少来自国内外的团队,国内的学校包括清华大学,浙江大学,中国科学技术大学,同济大学和国防科学技术大学等一流大学。国外的学校有来自日本,泰国,德国等国家的参赛队。在比赛的过程中,我看到了来自不同国家的各式各样的机器人,每个学校的机器人都有各自的特点,为了完成不一样的任务,都进行了更加独特的设计,此外在比赛场地我还见到了来自悉尼警方的救援机器人,相对于我们实验室设计的机器人而言,警方设计的机器人体型更加大,重量也相对较重。警用救援机器人的鲁棒性相对于我们设计的机器人要更加的鲁棒,控制的稳定性也比我们好很多,他们为我们的救援机器人的设计带来了新的灵感。
当地时间七月二日和三日,这两天是大赛的准备环节,我们一早来到会展中心完成了注册工作并快速展开调试工作。RoboCup救援组竞赛分为Maneuvering,Mobility,Dexterity和Exploration四个部分,其中Maneuvering是最基础的测试场地,机器人在这些场地里遥控或者自主驾驶,来回次数越多则得分越高。Mobility测试救援机器人的移动能力,基本都是一些特别复杂的地形,而Dexterity测试机器人机载机械臂的灵活性能。由于我们侧重小型机器人,并未装备机械臂,因此没有选测Mobility和Dexterity。Exploration是四项中最考验算法的测试,我的工作主要是Exploration任务中的的建图任务。机器人需要在前进的过程中完成检测危险物标志,并且识别他们位置,此外还需要构建出来比赛场地的三维和二维地图。裁判根据地图的完整程度和准确程度来确定最后的得分情况,因此在前两天的准备过程中我主要测试了建图的任务。
当地时间七月四日至七日是比赛日。相比其他队伍的各类大型机器人来说,我们所使用的机器人由于体积大小的限制,无法在部分复杂地形中完成任务,不过我们的研究主要侧重于是小型救援机器人的自主问题,因此我们主要针对Maneuvering和Exploration两个场景来完成比赛。第一天我们主要通过远程遥控来进行比赛,这一天中我们完成所选的全部任务,熟悉了比赛场地。比赛结束后,我们在晚上对之后几天进行的自主比赛进行了现场调试,期间发现不少问题。我们的机器人完全依赖于所搭载的四个RGBD相机来实现自主移动,机器人通过使用视觉里程计(VIO)来实现定位,在大多数场景下,VIO的精度足够满足导航的需求,但也有些特殊情况会使得定位误差变大。例如,Maneuvering场地使用木板来做墙壁,其使用的木板纹理较为单一。因此,当机器人靠近墙壁时,相机无法在这样的环境中检测到足够特征,使得VIO算法的误差变大。在这样的情况下,VIO定位已无法满足导航需求,任务就会失败。由于现场调试时间有限,我们无法对算法进行大的改进,只能通过增加一些限定条件使得机器人尽量远离无特征区域。幸运的是,这样的小技巧已足够完成接下来的比赛,在接下来的比赛中,我们机器人在Maneuvering场景中完成了预期的自主驾驶任务。最终我们团队获得了自主挑战的第二名,并在正赛中进入了前八,相比于以往的比赛,有了很大的进步。在Exploration 任务中,我们的机器人在遥控的情况下较好的完成了比赛场地三维环境的构建,并且成功提交了我们机器人构建的二维和三维地图。
除了比赛之外,RoboCup也为世界各地的研究人员提供了学术交流的机会,我们在比赛时也与各支队伍进行了交流。来自德国纽伦堡大学的博士生给我们介绍了他们关于multi-agent SLAM的相关工作;日本京都大学的中国留学生给我们分享了他们机器人的设计材料等,对此我们深受启发。
在这次比赛中,我们按照预定计划完成了所有任务,并在比赛中发现目前的不足,为之后的工作提供了思路。另外也要感谢学校和导师能为我们提供这样好的机会,让大家可以与各地的学者进行了交流,了解了相关领域的最新进展,开拓了视野。