写在前面

机器人领域的研究方向总览

1.传感器技术

  • 基于多传感器信息的机器人路径规划
  • 多传感器信息融合及其在机器人中的应用
  • 基于传感器信息的移动机器人精确定位研究
  • 移动机器人系统中传感器系统的采集及处理

2.控制系统及其控制算法

  • 基于PID控制的机器人轨迹跟踪性能研究与比较
  • 移动机器人的控制方法研究
  • 轮式移动操作机器人的鲁棒跟踪控制器设计及研究
  • 开放式机器人控制器的研究
  • 智能移动机器人的智能控制
  • 移动机器人神经网络控制研究
  • 移动机器人模糊控制研究
  • 移动机器人系统中嵌入式控制器研究

3.视频处理及视觉伺服控制

  • 基于DSP的机器人视觉信息处理系统
  • 主动视觉及其在机器人中的应用
  • 机器人视觉伺服控制系统研究
  • 图象特征提取技术研究
  • 人脸识别技术及其在移动机器人中的应用
  • 基于光流技术的移动机器人导航系统研究
  • 精细视频压缩编码及其在移动机器人系统中的应用
  • 视频采集系统研究
  • 足球机器人视觉图象识别系统研究
  • 视频的压缩编码及其在机器人系统中的应用
  • 小波方法在移动机器人系统中的应用

4.网络机器人技术

  • 视频网络传输及其在移动机器人系统中的应用
  • 基于Agent的遥操作机器人控制器研究
  • 基于网络的移动机器人控制系统研究
  • 基于网络的移动机器人直接控制系统研究
  • 监督式网络控制结构及其在移动机器人中的应用
  • 移动机器人中视觉临场感遥控系统的研究
  • 移动机器人分布式控制系统研究

5.人机交互

  • 语音识别技术及其在移动机器人系统中应用
  • 手势识别及其在移动机器人人系统中的应用
  • 多模态人机交互及其在移动机器人系统中
  • 虚拟现实技术在移动机器人系统中的应用

6.机器学习

  • 移动机器人的再励学习研究
  • 基于视觉的移动机器人学习系统研究
  • 基于支持向量机的移动机器人学习
  • 动态环境下移动机器人的路径规划方法
  • 数据挖掘技术及其在移动机器人系统中的应用

7.通讯技术及多机器人协调

  • 多移动机器人系统合作与协调
  • 多机器人系统中硬实时通信的研究
  • 多机器人系统中实时通信研究
  • 多机器人任意队形分布式控制研究
  • 蓝牙技术及其在多移动机器人系统中的应用

8.足球机器人

  • 移动机器人导航系统研究
  • 足球机器人进攻策略研究
  • 移动机器人的目标跟踪研究

9.机器人系统

  • 全自主移动机器人系统研究

  • 移动机器人系统的可靠性

    ······


前言

社会上一旦有技术上的需求,那么这种需求会比十所大学更能把科学推向前进。——恩格斯

截止至2022年5月24日,2022年ICRA总共收到了3344篇文章的申请,最终1498篇文章通过审核上线发表。在这优秀的1498篇文章中,SLAM、Sensor-Fusion和Localization领域的文章简单整理下来有140篇左右,再进一步细分Visual SLAM相关领域的有大约58篇,利用视觉传感器进行定位的相关论文大约有22篇,Lidar SLAM相关领域文章大约是23篇,基于雷达传感器的定位模块的相关论文就只有9篇左右。

由上可见,视觉方向的相关研究相较于激光方向还是更加受科研人员和审稿者青睐,从工业落地和传感器性能发展的角度上分析的话,人们还是希望能将实现该技术所产生的费用降到global minimum(全局最优),同时从发表的论文主题上看,越来越多的优秀科研人员已经在视觉和激光传感器的融合方向上做出了突出的成绩,往后展望多传感器融合的工作还能继续挖掘,并且相对来说较容易做出“成果”,而其他在基本算法(点云注册、配准等)上优化、改进和新理论的工作,虽然在总量上并不突出,但其意义就如同人体的骨架一般,支撑着该领域的持续生长。

附:2020年ICRA各session的论文数量统计表,文章数量最多的几个session分别为

从以上关键词的统计可以看出,动作和路径规划,深度学习, SLAM,多机器人协作系统,移动机器人等都是最近几年比较火的方向。

附:2019年ICRA各session的论文数量统计表:https://public.tableau.com/views/ICRA2019_2/Dashboard1?:embed=y&:display_count=n&:origin=viz_share_link

正文

首先,现阶段我们见到的大多数机器人都还达不到完全自主独立运行的地步,更多情况下,还要依赖人为遥控,如波士顿动力机器人的演示视频。

然后,区分机器人与另外一个概念——人工智能,机器人通常必须具有实体机械结构,其实是被包含在人工智能这个更宽泛的概念之下。现在大家最常见的几种机器人,包括机械臂,轮式移动机器人,足式机器人以及无人机,这些都是目前发展比较成熟的机器人平台,很多其他形式也处于研究阶段,如软体和仿生机器人等。

机器人学是一门交叉学科,为了设计制造机器人,需要具备多个传统学科的知识,例如:

  1. 机器人的自由度是多少?关节减速器如何设计或选择?(机械设计与制造专业)
  2. 机器人的关节如何驱动?驱动电路如何设计?(电子工程专业)
  3. 如何规划机器人的运动?如何对机器人的运动进行仿真?(计算机及软件专业)
  4. 如何让机器人跟踪我们规划好的运动轨迹?(自动控制专业)
  5. 如何建立机器人的运动或受力模型?(力学专业)
  6. 如何判断机器人所受约束的类型?(数学专业)

接下来,我需要考虑,研究机器人主要解决什么问题,包括哪些研究目标?

机器人学是一个庞杂的学科,在大部分教科书中,一般划分为“建模、感知、规划、控制”这几部分。在我最初接触机器人学时就十分好奇:为什么要划分成这几部分,各部分间的关系又是什么?在我读研期间,发现很少有人能阐述清楚它们的关系,似乎大家都默认这是顺理成章的。现在从信息的角度俯瞰全局,我已经不再有最初的困惑了。“信息”贯穿了机器人研究的整个过程。为了让机器人有更好的表现,必须搜寻一切能找到的信息,并最大限度的使用它们:
  ● 建模能得到机器人的运动变量间的关系(信息),这是为了预测机器人的行为,但更多时候我们想改变它的行为(控制它按照我们的意愿运动);
  ● 感知则是为了得到周围环境的信息;
  ● 当然,得到信息不是目的,我们最终还是要用信息来决策,这就是“规划”的任务了。规划时使用信息可以提高效率,比如在图搜索中常用的启发式信息(这个例子展示了使用信息的好处);
  ● 规划出结果后如何让机器人执行呢?这就是控制的任务了。控制更离不开信息,比如机械臂控制中最常用的计算力矩法里的前馈项就是机器人的动力学信息,由于我们掌握的信息不能做到100%准确,所以有偏差,因此还需要结合反馈控制,反馈控制依赖的误差同样是信息。(有个期刊叫《信息与控制》,由沈阳自动化研究所主办。无独有偶,我们国家唯一的机器人学国家重点实验室就设立在沈阳自动化研究所。此外,还有各种“信息与控制学院”、“信息与控制研究所”。

“信息不但是控制的基础,还是控制的出发点和归宿,贯穿于整个控制过程的始终。”——《信息科学原理》,钟义信

上面这几个方向也基本对应这工业界中主要的岗位方向,也就是说,通常一份工作主要专注于其中一个方向就已足够,这也说明该领域跨度非常大,是一个十分复杂的学科。机器人学的主要研究内容与上一篇中提到的自动驾驶有很多交叉重合部分,自动驾驶车辆本身也可看作是一个轮式机器人)。

具体来讲,第一个方向:机器人感知,直观的理解,它发挥的作用就像人的感知器官,它包括了眼睛,耳朵,鼻子这些传感器,也包括处理这些信息的大脑相关的区域。对应到机器人就是,处理激光雷达,摄像头这些传感器实时接收到的数据,再对这些原始的数据进行处理,最后形成一个综合的对周围环境的感知,当然这里面也包含对机器人自身状态的感知。人可能不能非常清晰的感知到自己内部器官的运行情况,但对机器人来说,是可以的,也是必须要时刻监控的数据。其实只需要记住一点——视觉等各种感官反馈都是为了获取信息。

这里举了一个例子。下面是飞行器探索未知环境的动画,通过机器人的运动和它携带的传感器,经过slam算法,就可以实现像图例这样的自动探索,自动建图。这张形成的地图就是机器人对环境的感知。

所以机器人感知这块目前可以说是包含范围最广,同时也和深度学习这些人工智能技术结合最紧密的领域,相应的它有关的岗位也最多,涉及到的具体技术,包括计算机视觉,传感器融合,同步建图与定位等等。这里需要学习一些基本的算法原理,并掌握在现有的ROS生态下实现这些算法的软件包,这也是现在大多数初级开发岗位需要的知识水平,如果想继续提高,那就需要专注于某个技术去深入钻研了。

第二个方向是机器人的决策和规划,这是作为一个机器人的中枢模块,从环节上来说,连接感知和运动控制,根据任务,以及感知到的环境信息,做出决策,以及规划出机器人的运动轨迹。这里可以看出在决策和规划里也可以再分出两个层次,分别是决策和规划,这些名词其实都来自行业的惯例,我们可以在企业的招聘的要求里看到相关的字眼。具体来说,举一个例子,在执行一个任务的时候,机器人在A点,决策模块会决定要完成这个任务,机器人需要运动到B点,这个B点的选择过程就是决策,至于规划,就是给定了a和b点,如何获得ab之间的可行的轨迹的这个过程。所以,可以看出,决策过程比规划要更加抽象,而规划则更加具体。大部分时候,这两个模块都是紧密关联的,很多招聘也都是在岗位设置中把决策和规划放到一起。

第三个方向是运动控制,它的任务就是控制机器人从一个状态到另一个状态,比如下面控制机器狗完成跳跃的动作。这个方向是一个比较新的方向,之前大家都在做轮式机器人的时候,这个方向的工作很简单,只需要很简答你的控制技术就可以精确控制轮式小车,现在随着新的机器人平台出现,比如四足机器人,人形机器人,这个方向也变得越来越热门,涉及到的技术包括模型预测控制,强化学习控制,这些就远远超过了这门课程的范畴了。在这门课程后,大家可以做到的是理解运动控制在一个完整的机器人系统和应用中,运动控制发挥的是末端的执行作用,由更上层的逻辑发送命令,运动控制负责底层的执行,具体到驱动关节的电机的控制。


最后

既然slam方向目前有这么多优秀的工作发表和开源了出来,那么回归一下问题:

Is SLAM sloved?

按照目前的情形来看,应该还是没有的。为什么大家都这么卷了,却还是没有达到SLOVED的状态呢?

这里想直接引用高翔博士的一句话:

“开源的LIO大部分只能在自己的数据集上跑,换一个数据集就很容易飞或者挂。前期的方案考虑的东西太少,在后出的数据集上通常会出问题。近期的方案则相对要稳定一些,但依然没有纯Lidar方案那么稳定,各种指标也有一定的提升空间。”

从高博的意思,学术届的工作中考虑的并不需要那么全面,而是将某一个方向做精做优,而到了行业内的大规模落地上,工程师们需要考虑的就是整个系统的方方面面了,就算精度达到了亿分之一也不敢直接就说我的产品是Top one了,当所有的模块紧紧耦合在一起的时候,那需要顾及到了复杂度就不单单是和系统模块的比例增长了。