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)
相关术语
相关项目
- 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