Open Source Robotics

精选高质量开源机器人项目、工具和软件,推动机器人社区发展。

Screw Axis

  • 又称: screw, screw motion, twist axis
  • 类别: Foundations & spatial maths › Kinematics
  • 标签: screw-theory, kinematics, rigid-body-motion, spatial-math, articulated-objects

空间中的一条直线,刚体绕它转动的同时沿它平移;任何刚体运动都可以这样描述,机器人关节也被建模为螺旋轴。

定义

螺旋轴(Screw axes)把刚体运动描述为绕空间中一条固定直线的转动,再加上沿同一条直线的平移,就像螺母在螺栓上旋转一样。Chasles–Mozzi 定理指出,任何刚体位移都可以这样描述,对瞬时速度也有相应的结论:每个刚体速度都是绕某条轴的转动加上沿该轴的平移。

螺旋轴有三个要素:直线的方向、直线上的一个点,以及它的节距(pitch),即平移与转动之比。纯转动的节距为零,这正是转动关节或门铰链。纯平移是节距为无穷大的极限情形,即移动关节或滑动抽屉。把螺旋轴乘以一个速度就得到运动旋量(twist),这是一个结合角速度和线速度的六维向量。力和力矩以同样的方式组合成力旋量(wrench)。

旋量理论(screw theory)可以追溯到 Robert Ball 关于螺旋理论的专著,它支撑着一种现代的机器人运动学写法。在 Lynch 和 Park 的 Modern Robotics 等教材所讲授的指数积(product of exponentials)公式中,每个关节都用它在固定坐标系中的螺旋轴来描述,而正向运动学就是这些旋量的矩阵指数的乘积。这避免了 Denavit–Hartenberg 参数中的坐标系分配约定。

由于旋量描述运动时不依赖于某个特定的物体坐标系,它们也是表示物体之间相对运动的自然方式:铰链、盖子、阀门,或两只手握住一个物体时它们之间的相对运动,都可以用一条螺旋轴以及沿该轴运动了多远来描述。

为何重要

螺旋轴为关节、速度和力提供了单一的、与坐标系无关的描述。它们使运动学和动力学推导更简洁,并为学习和感知系统提供了一种表示铰接运动的紧凑方式。

主要应用

  • 通过指数积公式计算正向运动学和雅可比矩阵
  • 为门、抽屉和盖子等铰接物体建模
  • 描述两条机械臂或两只手之间的相对运动
  • 在动力学算法中把速度和力表示为运动旋量和力旋量

实际应用

为定制机械臂编写运动学的团队,可以用每个关节在零位姿下、基坐标系中的螺旋轴来定义它,这些螺旋轴直接从 CAD 中读取,然后用指数积公式计算正向运动学和雅可比矩阵。在操作任务中,同样的表示被用来描述铰接物体:根据观察到的运动估计柜门的铰链轴,机器人就能生成一条沿圆弧的拉动轨迹,而不是与约束对抗。

常见误解

  • 螺旋轴只适用于螺钉和带螺纹的零件 — 它们描述任何刚体运动,包括纯转动和纯平移
  • 转动和平移总是需要分开描述 — Chasles–Mozzi 定理表明,一个螺旋运动就足够了
  • 旋量理论取代了齐次变换 — 它建立在齐次变换之上;旋量的矩阵指数得到的就是普通的齐次变换

谁需要了解

  • 运动学和动力学工程师
  • 为铰接物体建模的操作研究人员
  • 学习空间数学的机器人专业学生

相关技术

  • 指数积公式(Product of Exponentials Formula)
  • 运动旋量与力旋量(Twist and Wrench)
  • 李群(Lie Groups,SE(3))
  • Denavit–Hartenberg 参数(Denavit–Hartenberg Parameters)
  • 正向运动学(Forward Kinematics)

相关术语

  • Transform
  • Coordinate Frame
  • Kinematics
  • Jacobian

相关项目

  • MoveIt 2: Motion planning framework for ROS 2 robot arms, with kinematics and collision checking
  • PyRoki: Modular Python toolkit for kinematic optimization across CPU, GPU, and TPU via JAX
  • DART: C++ physics engine for articulated rigid body dynamics and robotics simulation
  • IKPy: Pure-Python inverse kinematics library that builds chains straight from URDF
  • frax: JAX library for fast, differentiable robot kinematics, dynamics and inverse kinematics

视频

  • Screws: a Geometric Description of Twists in Robotics | Fundamentals of Robotics | Lesson 17: Mecharithm - Robotics and Mechatronics

本网站需要 JavaScript 才能正常运行。请启用 JavaScript 以浏览我们的开源机器人项目。