單元十九、階層關係及關節運動
(990605 updated)
19.1 概念
Hierarchical linkage takes the form of a family tree ﹙樹狀圖﹚
正向運動學:forward kinematics ﹙ children follow parent's movement﹚
逆向運動學:inverse kinematics ﹙parent follow the movement of child﹚
19.2 正向關節
範例:機器人手臂 tut19_1.max
將機器手臂連結起來
1.
把vertical shaft 連上Base :open tut19_1.max,選select and link,把vertical shaft 連到Base。
2.
測試結果:先移動Base,再移動vertical shaft,看有何不同?
3.
連接 hinge到 vertical shaft
4.
連接arm到hinge
5.
連接horizontal shaft到arm
6.
連接hand到 horizontal shaft
7.
see
the hierarchy in track view
關節運動的動畫
1.
進錄錄影,將時間移到30
2.
旋轉base 90 度。
3.
將手臂下彎90 度。
4.
將手婉旋轉90度。
5.
進入track view調整各個關節動作的時間。
6.
撥放。
延伸學習1:試著一下面步驟製作毛毛蟲移動的動畫
1. 製作一個球
2. 將球複製2份,並一各各串連成階層關係,形成三個節的毛毛蟲A。
3. 將前面三個節的毛毛蟲複製一份成三個節的毛毛蟲B。
4. 讓毛毛蟲A與毛毛蟲B交互前進行程毛毛蟲蠕動前進的動畫。
19.3 逆向關節運動
1.
open
tut19_2.max。
2.
open
the 'select by name' to display tree sub-structure
3.
test
forward kinematics by moving the handle
4.
activate
the Inverse Kinematics by toggling on the button (IK | inverse Kinematics |
interactive IK)
5.
drag
the spiked ball around and see what happen
6.
drag
one of the middle links and see what happen
設定連接點﹙關節﹚
逆向關節運動在數學上是到推回去的,所以無唯一解,除非加上其他限制。
我們可以加上對物件轉軸的方向、角度的範圍限制,以控制他。
這就是設定連接點。
延伸學習1:將機器人手臂 (tut19_1.max)範例改用逆向關節運動,觀察其變化。
延伸學習2:將毛毛蟲範例改用逆向關節運動,觀察其變化。