跳转至

运动学与动力学

引言

运动学(Kinematics)与动力学(Dynamics)是机器人学的力学基础。运动学研究机器人各连杆之间的几何关系,回答"关节转到某个角度时末端在哪里"以及它的反问题;动力学则引入质量、惯量与力,回答"要产生某个运动需要多大的关节力矩"。控制、规划、仿真三大方向都建立在这套模型之上——没有正确的运动学模型,路径规划得到的轨迹无法转换为关节指令;没有动力学模型,高速运动下的轨迹跟踪精度会迅速恶化。

为什么单独成章

本维基的 控制 章节讨论的是控制系统建模(传递函数、状态空间、系统辨识),处理的是"从输入信号到输出信号"的映射关系;而本章讨论的是机器人本体的几何与力学模型,处理的是"从关节空间到笛卡尔空间"的映射关系。两者是不同层次的模型,共同构成完整的机器人控制体系:

任务描述(抓取杯子)
      ↓  逆运动学 / 运动规划
关节轨迹 q(t), q̇(t), q̈(t)
      ↓  逆动力学 / 反馈控制
关节力矩 τ(t)
      ↓  电机驱动
机器人运动

核心问题

机器人运动学与动力学围绕以下几个基本问题展开:

问题 输入 输出 对应页面
位姿描述 坐标系定义 旋转与平移的数学表示 空间描述与变换
正运动学(Forward Kinematics) 关节变量 末端位姿 正运动学
逆运动学(Inverse Kinematics) 末端位姿 关节变量 逆运动学
速度与静力映射 关节速度 末端速度 雅可比矩阵与奇异性
正动力学(Forward Dynamics) 关节力矩 关节加速度 机器人动力学
逆动力学(Inverse Dynamics) 关节加速度 关节力矩 机器人动力学
轨迹生成 路径点与时间约束 光滑的时间函数 轨迹生成

其中正运动学与逆动力学是"容易"的方向:正运动学只需矩阵连乘,逆动力学有 的递推算法。逆运动学与正动力学是"困难"的方向:逆运动学可能无解、多解或需要迭代求解,正动力学需要求解质量矩阵的逆。

自由度与机构类型

自由度(Degrees of Freedom,DOF)是描述机构位形所需的独立变量个数。对于空间机构,Grübler 公式给出:

其中 为连杆数(含基座), 为关节数, 为第 个关节的自由度。平面机构中系数 6 替换为 3。

以此可以快速判断常见机构:

  • 六轴串联机械臂,均为转动副(),DOF 。恰好能实现空间任意位姿,是工业机械臂的主流构型。
  • 七轴协作机械臂:DOF ,多出一个冗余自由度(Redundancy),可以在末端位姿不变的前提下调整肘部姿态以避障或规避奇异位形。
  • Delta 并联机器人:三条支链的闭链机构,DOF (纯平移),刚度高、运动惯量小,用于高速分拣。
  • 差速驱动移动底盘:位形为 共 3 维,但只有 2 个控制输入,属于非完整约束(Nonholonomic Constraint)系统,其规划问题在 运动规划 中讨论。

按拓扑结构分类:

类型 结构 优点 缺点 典型代表
串联(Serial) 开链 工作空间大、正运动学简单 刚度低、误差累积 UR5、Franka Panda
并联(Parallel) 闭链 刚度高、精度高、动态性能好 工作空间小、正运动学困难 Delta、Stewart 平台
混联(Hybrid) 串并结合 兼顾工作空间与刚度 建模复杂 部分人形机器人腿部
移动(Mobile) 带浮动基座 工作空间无界 存在非完整约束 AGV、四足机器人

与其他章节的关系

  • 控制:动力学模型是计算力矩控制(Computed Torque Control)、阻抗控制与 模型预测控制 的前提。
  • 规划运动规划 在构型空间中搜索,构型空间的维度即由机构自由度决定;碰撞检测需要正运动学计算各连杆的位姿。
  • 三维视觉SLAM:手眼标定、相机位姿估计使用与本章相同的 表示与李群工具。
  • 仿真PyBulletMuJoCoRobotics Toolbox 均提供运动学与动力学求解接口,是验证本章公式的便捷工具。
  • ROS:URDF 描述文件承载运动学参数,tf2 维护坐标变换树,MoveIt 封装了逆运动学与运动规划。

常用软件工具

工具 语言 特点
Pinocchio C++/Python 高效刚体动力学库,支持解析导数,广泛用于全身控制与最优控制
KDL C++ Orocos 运动学动力学库,ROS 生态默认求解器之一
Robotics Toolbox for Python Python Peter Corke 教材配套工具箱,适合教学与快速验证
RBDL C++ 刚体动力学库,实现 ABA、RNEA 等经典算法
Drake C++/Python MIT 开发,多体动力学 + 轨迹优化 + 系统框架
SymPy Python 符号推导运动学与动力学方程,便于验证手工推导

参考资料

  1. Craig, J. J. (2005). Introduction to Robotics: Mechanics and Control (3rd ed.). Pearson Prentice Hall. — 运动学与动力学的经典入门教材。
  2. Lynch, K. M. & Park, F. C. (2017). Modern Robotics: Mechanics, Planning, and Control. Cambridge University Press. — 采用旋量与指数积体系,配套网站 提供免费电子版与代码。
  3. Siciliano, B., Sciavicco, L., Villani, L. & Oriolo, G. (2010). Robotics: Modelling, Planning and Control. Springer.
  4. Murray, R. M., Li, Z. & Sastry, S. S. (1994). A Mathematical Introduction to Robotic Manipulation. CRC Press.
  5. Featherstone, R. (2008). Rigid Body Dynamics Algorithms. Springer. — 空间向量代数与高效动力学算法的权威著作。