運動學

逆向運動學

逆向運動學是反過來問的那個問題,也是機器人在日常工作中真正需要回答的問題:我想讓手正好停在這裡、朝著這個方向——那每個關節各該彎多少才能做到?你從目標出發(末端執行器要達到的某個位置和姿態),然後必須反推出能實現它的那組關節數值。這其實正是你自己的大腦每次伸手去拿咖啡杯時,悄無聲息地做的事:你先定下手該去哪兒,肩、肘、腕的角度自己就配合好了。

反著求要比正著求難得多,有兩個原因。第一,可能有好幾組不同的關節設置都能把手送到同一個地方——人既可以把肘部收低、也可以把肘部抬高去抓同一個杯子——所以機器人往往面對多個都成立的答案,必須從中挑一個。第二,有些目標根本無解,因為它們就是落在機械臂搆不著的範圍之外;而在那些彆扭的姿態附近,算式還會變得敏感而不穩定。正因如此,逆向運動學是機器人運動的核心問題之一:每當機械臂被要求焊一道縫、放一個零件、或沿著畫好的軌跡走時,背後總得有什麼東西在求解逆向運動學——要麼用一條精確的代數公式,要麼靠一步步逼近的數值搜索。

要去觸碰白板上一個固定的點,你可以把肘部放低,也可以把它抬高;兩種都能搆到那個點,所以求解逆向運動學的機器人必須選定用哪一種肘部姿態。

同一個手部目標,卻有多組關節解——這正是逆向運動學標誌性的難點。

同一個目標位姿可能對應零個、一個或很多組關節解——在它們之間明智地挑選也是任務的一部分。

又稱
IK逆运动学逆運動學逆解