找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 5261|回复: 15

为什么最好的机械臂是7个自由度,而不是6个?

  [复制链接]
发表于 2017-8-8 21:53:51 | 显示全部楼层 |阅读模式
现在用的最多的工业机器人,一般都是六轴的,但是最近推出来的人机协作机械臂,却有7个自由度,一直想不明白为什么。直到最近看到知乎上的一个问题:人的手臂(腕关节到肩关节)有几个自由度?才发现,原来7个自由度是对人手臂的真实还原。" e- i% z" Y# `

- u& D4 G5 C1 D% x人的手臂(腕关节到肩关节)有几个自由度?我想绝大部分人都没有想过,更别说去了解有哪几个自由度,即使是学工科的人,也未必能解释清楚。没想到知乎上居然有人把这个问题回答的这么专业有内涵,同时又那么有哲理,忍不住想要把这个答案分享一下。0 m. H, v; I6 B2 V$ Z$ [
' @# y1 y# F5 }7 U% k
回答这个问题的是知乎网友杨硕,答案如下:
# k9 K: I/ y. S
实话说,对robot manipulation还是挺熟的,但是楼上几个答案一眼看去都看不懂。不是黑,而是觉得对非专业人士来说不好理解。
, ~9 H0 l) ?1 ], M3 b
所以来尽量用通俗的语言解释一下。
6 y9 R4 a5 M8 \
首先,问题的答案是:数一下就行了啊!

  M* W! p2 s' ^' ]% |( ]
. R. H5 d$ E% S1 Y  N7 r2 G
7个自由度。
8 X$ _, X3 {" v/ X9 _; i' L; R
有人问5,6是不是一样的。5是拧钥匙时唯一要转动的关节,动力来自小臂两根桡骨的扭转;6是把鼠标放在桌面用手转时唯一要转动的关节,动力来自手腕的旋转。

: z6 f/ v) d$ R1 y
- ^) o" W0 f) Z. h4 a( [
至于为什么人手臂是7个自由度,而不是8个也不是6个,可能是因为上帝非常懂机器人控制,下面尽量简单地介绍一下。

0 S& \# J0 @8 l7 K! C+ [5 |: ]& [
首先介绍一个定理:

" J# E, i5 g* F+ Y
6个自由度的机械手,在空间中无法在保持末端机构的三维位置不变的情况下从一个构型变换到另一个构型。
1 M; G  @6 X; v" M/ q& ], h( K/ ]
这个定理乍一看很不好理解,可以考虑一个更简单的情况:
0 u8 S) ?: ]) p+ C1 J; k
  \) L+ r+ j# y# m
在这张图上,一个机器人的手臂由基座、两个关节、两根连接件构成(想象把一个圆规打开,然后把一端用手指捏住)。

: s# c6 m0 }- `& U% w, e! [$ G
请问我们能够把机器人在保持上部末端机构在平面上位置不变的情况下,从“lefty”这个状态扭到“righty”这个状态吗?
' X* P: H' V" c2 N' q
答案是不行的,不管怎么动两个关节,移动过程中末端机构的位置肯定是要变的。看官也可以拿两根笔在桌子上动一动试试。

6 n1 C4 n- R  o* r+ s9 L( Q: j
同样地,一个6自由度的机械手,即使某两组构型对应的末端机构的三维位置相同,机械手在从一个构型移动到另一个构型的时候无法保持末端机构始终不动。
+ h) ^7 H0 y( |% C( v( F
如果有人在电视里看过工业机器人焊东西的话,就会发现它在同一个位置焊接的时候,一会儿整个扭到这边,一会儿整个扭到那边,看起来非常酷炫的样子。
4 x) t9 C& x: w/ u& ~- L( a+ c
事实上这么做只是因为,虽然焊接只是想改变末端机构的朝向,而不改变末端机构的位置,但是由于定理的限制,它必须要往后退一些,然后各种扭,才能保证在移动末端机构的朝向的过程中不会撞到东西,因为移动的时候末端机构的三维位置一定会乱动。如果它能够随便转一点点就可以达到目的,还费那个力气酷炫地整体都转起来干啥……

: K. p* A$ Y- }3 Y* g, R$ b' d$ |2 S9 o
而多了一个自由度以后就不一样了。
% A% e1 u3 l5 e4 T$ p
想想开门时拧钥匙的动作,这个情况下是人胳膊的末端机构(手)的三维位置没有变(始终在钥匙孔前),但是末端机构(手)的三维旋转变了(转动了钥匙)。人能够实现这个简单的动作,就是因为我们的胳膊有7个自由度。
- M+ C- {" y2 S; k( k1 N
说到这里,看官可能会看出来了,哎我懂了,我的末端机构有6个自由度(三维位置,三维旋转),而胳膊作为一个机械手,有7个自由度,这两个自由度好像说的不是一回事,但是数量上7-6=1,所以这1个自由度我能拿来拧钥匙。
* p/ [) _( W% l5 y; _; N! I
如果上帝把我们的胳膊设计成6个自由度的话,人拧钥匙的动作一定会非常浮夸。大家可以在拧钥匙的时候不要转手腕,感受一下。
) H8 Q  l% i3 L" s/ S- P: w# c
那么为什么不再多给我们一些自由度呢?
) v% ~/ p. n3 P6 D" f" q5 O
因为自由度越多,机械手刚性越差。如果我们的胳膊有8个自由度,那么受伤的概率会更加很多。虽然没有什么生物学研究证明这一点(世界上没有8个自由度的生物躯体),但是机器人的研究是可以证明这个问题的。
4 L6 j" ~4 I% W3 D  ?) c1 ]
0 F; o7 z1 J* ~5 \9 N/ y5 O2 W所以7是一个最好的选择。不知道圣经中把7作为最好最神圣的数字、一个星期有七天,和人的胳膊有7个关节有没有关系。
' Q/ }, o2 c$ y  _: E7 z4 [4 w- h6 v' S; u- D% Z) a- ]1 j

' w3 W7 J, E5 E. P  C3 X  P
回复

使用道具 举报

发表于 2017-8-8 22:14:25 | 显示全部楼层
易经,逢七必变。

点评

大清就这么亡了的  发表于 2017-8-9 08:59
发表于 2017-8-9 08:44:50 | 显示全部楼层
之前一直没想通……
发表于 2017-8-9 09:20:22 | 显示全部楼层
有道理,长见识了
发表于 2017-8-9 09:31:27 | 显示全部楼层
原来是这个一直都没搞明白,也就像人的手臂一样
发表于 2017-8-9 09:56:37 | 显示全部楼层
没有太明白
发表于 2017-8-9 10:25:40 | 显示全部楼层
学习了  ,我居然真的模拟了拧钥匙和移动鼠标,创新在于发现
发表于 2017-8-9 10:43:24 | 显示全部楼层
加上腰不是超过7个自由度了?所以容易伤腰?
发表于 2017-8-9 11:13:49 | 显示全部楼层
,看起来分析的确实不错,不过愚还是以为不止7个自由度,应该是范围内“无极”,人的几个关节类似万向接头,这个可能是机器人目前永远比人灵活性差的原因。
) \- O$ u' }2 a7 X1 o

点评

理论上6自由度就够了,但你看,你们这里不也分析出7个自由度来了嘛,但我认为不止,要圆满的话应该是“无极”  发表于 2017-8-9 11:17
发表于 2017-8-10 12:35:19 | 显示全部楼层

( }, g( W+ T+ e9 h5 F' U易经,逢七必变。
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Archiver|手机版|小黑屋|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2025-9-20 20:12 , Processed in 0.073383 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表