人的手臂(腕关节到肩关节)有多少自由度?我想大多数人都没有想过,更不用说知道有哪些自由度了。5是转动钥匙时转动的关节,动力来自前臂两个半径的扭转;6是鼠标放在桌面上用手旋转时旋转的关节,动力来自手腕的旋转。至于为什么人类的手臂有七个自由度,而不是八六个,可能是因为非常了解机器人的控制。
关于机械臂有一个定理,保持末端机构在空间的三维位置不变的情况下,六自由度机械臂无法从一种构型改变到另一种构型。这个定理乍一看很难理解,所以我们可以考虑一个更简单的情况:机械臂由一个底座、两个关节和两个连接器组成(想象一下打开一个指南针,用手指握住一端)。我们能否在保持上端机构在平面上的位置不变的情况下,将机器人从“左”的状态转到“右”的状态?答案是否定的,无论两个关节如何运动,运动过程中末端机构的位置肯定会发生变化,大家也可以尝试用两支笔在桌子上移动。
类似地,对于6自由度机械臂,即使某些两组构型对应的末端机构的三维位置相同,机械手在从一种构型移动到另一种构型时也不能保持末端机构不动。
如果有人在电视上看过工业机器人焊接东西,会发现焊接在同一个位置时,会转向一边和另一边,看起来很酷。其实这只是因为,虽然焊接只是想改变末端机构的方位,但并不改变末端机构的位置,由于定理的限制,它后退一点,然后以各种方式扭转,以保证它在移动末端机构方位的过程中不会撞到什么东西,因为末端机构的三维位置在移动时肯定会移动。如果机械臂能稍微随意地转向,机械臂就能实现它的目标,机械臂需要努力才能整体冷静地转向,但多了一个自由度,机械臂就不一样了。
想想开门时转动钥匙的动作。在这种情况下,人类手臂的末端机构(手)的三维位置没有改变(总是在钥匙孔的前面),但是末端机构(手)的三维旋转改变了(转动钥匙)。人们能够实现这个简单的动作,是因为我们的手臂有七个自由度。
因为自由度越多,机械臂的刚性就越小。如果我们的手臂有8个自由度,受伤的概率会高很多。虽然没有生物研究证明这一点(世界上没有8自由度的生物体),但对机器人的研究可以证明这个问题。