目 录
- 广义机器人
- 机器人系统
- 运动规划
- 运动控制
- 运动感知
- 小结
- 参考文献
1. 广义机器人
这里所谓的广义机器人是包括:无人机、机械臂、腿足式机器人、轮式机器人,如图1所示,分别是大疆的无人机、新松的协作机械臂、优必选的仿人机器人和百度的无人车(哈哈,支持国产)

2. 机器人系统

看上图,大致可以分为三个模块:运动规划、运动控制和运动感知(运动感知这个名词是我自己取的,为了对称,哈哈)
2.1 运动规划
按照高飞老师的《运动规划》课程的介绍,运动规划(Motion Planning)指的是两部分:前端路径规划(Path Finding,Path Planning,这些名词都差不多)与后端轨迹优化(Trajectory Optimization,Trajectory Generation,这些名词也都差不多)
也就是:
2.2 运动控制
这块是基于我自己的学习划分的,运动控制(Motion Control)是由双环控制系统组成(可能不是很准确,希望能跟大家交流讨论):外环设计控制策略(Control Strategy),内环设计控制模型(Control Model)
也就是:
2.3 运动感知
这个名词是自己取的,一般大家都强调规划与控制,其实感知也是非常重要的。运动感知(Motion Perception)主要也是包括两个部分:感知系统(Perception System)和观测器(Observer)
3. 运动规划
3.1 路径规划
- 路径规划的定义:
- 根据所得到的感知信息和预设目标位置,规划一条机器人从初始位置到目标位置的路径
- 只考虑工作空间的几何约束,不考虑机器人的运动学模型和约束
需要注意的是:
- 感知信息:视觉检测?建图定位?这块一般会考虑多传感信息融合、状态估计等相关的知识
- 第二条其实不太准确,随着研究的深入,现在也有基于动力学的路径规划算法
- 低维、离散空间
- 路径规划算法有三类:
- 基于搜索的算法:有Dijkstra算法、A*算法、JPS算法等
- 基于采样的算法:RRT算法、PRM算法等
- 动力学约束算法:State Lattice Search、Kinodynamic RRT*算法、Hybrid A*算法等
3.2 轨迹优化
- 轨迹优化的定义:
- 给定路径与机器人约束,生成一组控制序列,使得机器人从初始位姿移动到目标位姿
- 考虑机器人的运动学模型和约束
需要注意的是:
- 轨迹优化其实是对路径的优化,为路径赋予时间尺度
- 高维、连续空间
- 轨迹优化算法通常将问题转化为一个最优控制理论,求解优化问题的算法通常有:
- 解析法:变分法、极大值原理、动态规划等
- 数值法:直接配置法
- 动力学算法:MPC等
从变分法可以延伸出来的通用轨迹规划算法(拟合),通过直接配置法得到的多段轨迹规划算法(插值),从简化动力学得到的MPC算法,这都是后面需要整理的
4. 运动控制
4.1 控制策略
- 控制策略的定义:
- 基于任务的类型,可以把控制策略划分为:自由空间的位置控制与接触空间的力控制(更广泛地说:柔顺控制)策略
- 通常控制策略是基于任务空间(操作空间,笛卡尔空间,或者说不是关节空间)
- 控制策略的分类:
- 位置控制策略:这个其实和轨迹优化有重叠的部分,此外,还可以在任务空间做“位置闭环”
- 柔顺控制策略:柔顺控制分为被动柔顺(机械装置)和主动柔顺控制(力控制),最简单的是刚度控制、阻尼控制等这种纯力控制
- 组合控制策略:大家比较熟悉的力/位置混合控制、阻抗控制
其实更一般化地控制策略是:混合阻抗控制,融合了力位混合控制和阻抗控制的优点,将任务空间划分为位控子空间和力控子空间,然后分别在两个子空间进行阻抗设计
4.2 控制模型
- 控制模型的定义:
- 对外环的控制策略进行跟踪控制
看起来挺简单的,这么说直接用开环控制即可,但是开环控制通常不好使,因为有误差,所以引入了感知系统做闭环控制(或者说是反馈控制);单纯的反馈控制也不行啊,因为得知道你控制的是个啥吧,所以得对系统建模;还得知道外界的干扰也是个啥,所以得对扰动观测。
于是乎又存在三个问题:观测误差(来源于传感器噪声,微分噪声等)、建模误差(来源于未建模动态、模型不准等)和扰动误差(来源于外界干扰)
所以控制模型主要研究以下问题
- 控制模型的分类:
- 无模型控制还是基于模型控制算法:典型的代表分别是PID算法和计算力矩法
- 解决建模误差的算法:系统辨识、自适应控制算法等
- 解决扰动误差的算法:鲁棒控制、ADRC为代表的扰动观测器算法等
- 解决观测误差的算法:以Kalman滤波器为代表的状态估计(这其实和运动感知有重叠的部分)
5. 运动感知
5.1 感知系统
- 感知系统的定义:
- 对自身状态和与外界交互状态进行测量的装置或系统
- 内感系统:编码器、IMU等
- 外感系统:激光、雷达、相机、GPS等
需要注意的是:我们不专门去研究它的工艺,至少需要了解如何去使用,或者说调库
5.2 状态估计
- 状态估计的定义(这个话题其实有点大):
- 运动规划需要状态估计:做建图,定位、导航等
- 运动控制需要状态估计:信号滤波啊,机器人位置、速度等的估计
需要注意的是:这里面一方面是状态估计的算法,另外一方面是多传感器信息如何进行融合(融合:贝叶斯告诉我们,两个臭皮匠(两个不精确的传感器)顶个诸葛亮(一个不精确的传感器))
- 状态估计的算法
- Luenberger观测器为代表的观测器模型
- Naïve Kalman滤波、EKF、UKF等
- 融合算法
6. 小结
现在主流都在做深度学习、强化学习等AI,作者在机器人传统算法也混了几年,深感迷茫,未来可能也不全是AI,传统算法也应该有一席之地吧。
接下来想将自己这几年学习的一些算法做个笔记,希望能够跟感兴趣的小伙伴一起交流学习,机器人传统控制不死!!!
凡心所向,素履以往;生如逆旅,一苇以航!
机器人方向很多,机械臂这块的服务机器人、协作机械臂、医疗机器人;腿足式机器人的双足机器人,四足机器人,多足机器人以及整个的仿人机器人;轮式机器人的AGV小车、自动驾驶;无人机;其他特种机器人等,可能行业不同,引起的规划、控制和感知均有所不同,希望所有爱好机器人规划、控制和感知的朋友们,一起努力!
参考文献
- LaValle S M. Planning algorithms[M]. Cambridge university press, 2006.
- http://www.matthewpeterkelly.com/tutorials/trajectoryOptimization/
- Siciliano B, Sciavicco L, Villani L, et al. Robotics: modelling, planning and control[M]. Springer Science & Business Media, 2010.
- Simon D. Optimal state estimation: Kalman, H infinity, and nonlinear approaches[M]. John Wiley & Sons, 2006.
深蓝学院的高飞老师的《运动规划》、高翔老师的《机器人学的状态估计》和任乾老师的《多传感器融合定位》(推荐!!
高飞主讲《移动机器人运动规划》https://www.shenlanxueyuan.com/course/358
高翔主讲《机器人学中状态估计》https://www.shenlanxueyuan.com/course/352
任乾主讲《多传感器融合定位》https://www.shenlanxueyuan.com/course/375
)
评论(0)
您还未登录,请登录后发表或查看评论