运动学奇异点
运动学奇异点是一种特殊姿态:在这种姿态下,机械臂的手忽然失去了朝每个方向自由移动的能力——仿佛就在这一个位置,原本手能走的某一个方向,悄悄被一扇门关上了。手臂并没有坏,也没有任何东西卡住;它只是叠成了这样一种形状:无论你怎么转动关节,手就是没法沿着某一条线挪动。最经典的日常画面就是你自己的手臂:把它笔直伸出去够架子,这时你再怎么往直里伸,也没法把手再往前推一点——你在那个方向上已经够到头了。那个完全伸直的姿态,就是一个奇异点。
在这种姿态附近,情况比单纯的死胡同还要麻烦。要让手朝那个「被堵住」的方向挪动哪怕一点点,关节就得快到不可能地飞转——数学上,一丁点手部运动竟要求关节具有巨大无比的速度。一个不动脑筋、硬要手臂穿过奇异点继续描直线的控制器,可能会突然发出剧烈、猛地一蹿的关节速度指令。用雅可比矩阵(那张把关节速度连到手部运动的表)的话来说,奇异点正是那张表「失秩」之处:它再也覆盖不了手部运动的所有方向,想把它反过来运算就会炸开。
正因如此,奇异点是机器人设计者和路径规划者会主动标出并绕开的东西。路线会选得让手臂稳稳地远离这些姿态;而当不得不靠近某个奇异点时,运动会被放慢或重新塑形,好让关节永远用不着去做那场不可能的冲刺。
一条六关节手臂被要求拖着工具笔直划过一张桌子,而它的路径恰好经过手臂完全伸直、手肘伸到极限的那个位置。就在那一点,手臂再也没法往外伸得更远,于是手沿向外方向的运动消失了;为了继续描那条直线,控制器只好要求关节疯狂飞转来硬凑,手臂随之一阵抖动。把路径重新规划成让手肘始终略微弯曲,就能避开这整场危机。
在奇异点处,手的一个运动方向消失了,关节得用不可能的速度才能勉强假装做出来。
「雅可比矩阵失秩」是正式的说法:在奇异点处,那张把关节速度连到手部运动的表,再也无法触及每一个方向,把它反过来(由想要的手部运动求关节速度)就会失效。