郭 萍
(武漢交通職業學院智能制造學院,湖北 武漢 430065)
工業機器人性能的好、壞決定著工業機器人作業的質量、效率和效益,因此對工業機器人技術的研究必不可少。其中,工業機器人運動控制是核心技術之一,而工業機器人軌跡規劃是運動控制研究的基礎,軌跡規劃的優、劣與工業機器人作業的質量密切相關。
軌跡規劃是在滿足作業任務要求的前提下規劃出期望的運動軌跡。工業機器人軌跡規劃的目的是實現機械臂位置、速度和加速度的曲線盡可能連續且平滑,這樣可以減少機器人結構的磨損,同時提高追蹤的速度和精度,提高生產效率和效益。以手動操作機器人運動為例,在用示教器操控機器人運動到示教點位時,手動運行速度過大,會導致機械臂出現明顯的抖動,長時間運行下來,會對機械臂結構造成不可逆的損傷,同時影響機器人運行軌跡的準確性。因此,工業機器人軌跡規劃對工業機器人運動控制意義重大。針對如何獲得更精準更柔性的軌跡,相關研究學者做了大量研究,主要包括關節空間軌跡規劃和笛卡爾空間軌跡規劃2個方面。該文將從這2個方面來介紹工業機器人軌跡規劃的方法,并總結研究現狀。
工業機器人關節空間軌跡規劃通過分別規劃各個關節的軌跡來實現整個機械臂的運動軌跡。一般而言,工業機器人任務中已知的是末端執行器的運動軌跡,各個關節的具體運動軌跡點未知,需要根據運動學反解得到各個關節的軌跡點,然后進行關節空間下的軌跡規劃,再根據規劃出的關節軌跡進行運動控制,最后形成笛卡爾空間下的末端執行器軌跡。關節空間下機械臂控制流程圖如圖1所示。

圖1 關節空間下的控制流程圖
以常見的六關節機器人為例,具體的關節空間軌跡規劃流程如圖2所示。其中,(X,Y,Z,A,B,C)為末端軌跡點坐標,q1、q2、q3、q4、q5和q6分別為6個關節軸。第一列是末端執行器在空間下的4個軌跡點的坐標,第二列是將這4個點通過逆運動學求解分別得到6個關節對應的軌跡點,第三列是通過軌跡規劃算法得到的關節運動軌跡曲線,第四列是通過控制關節運動形成最終的末端執行器的軌跡曲線。

圖2 關節空間軌跡規劃流程圖
進行關節空間軌跡規劃時,需要將關節的起始點、所有中間點和目標點連成一條光滑的曲線,同時還要保證各個關節到達目標點的時間一致,即關節空間軌跡規劃的研究主要集中在如何將離散的軌跡點規劃成一條連續曲線的問題上。目前,工業機器人軌跡規劃方法主要有多項式插值、T形加減速曲線、S曲線和B樣條插值。
多項式插值分為3次、5次和7次多項式插值等,其中最簡單的是3次多項式插值法,其表達式易懂且計算量少,是一種常用的方法。一般而言,只要明確位置、速度和時間,就可以規劃出連續的位置和速度曲線。但是該插值法不能對加速度進行約束,加速度曲線不一定是連續的[1],適合應用于不關注運動過程的控制場景中,如點到點的運動控制,不適合連續軌跡的運動控制。然而,工業機器人的應用場景中大部分是連續的運動軌跡,因此3次多項式插值方法應用范圍窄,普適性不強。
5次多項式插值法對加速度進行了約束,規劃出的軌跡加速度是不突變的,減少了機械臂的抖動[2]。在運算方面,由于該插值算法的階次較高,計算量相對大一些,但是在可接受范圍內。通常情況下,機器人運動時候,要得到連續平滑且噪聲低的運動控制,一般都需要對加速度進行約束,因此5次多項式插值算法應用較為廣泛,實用性強,可以覆蓋機器人的大多數應用場景。
階次在5次以上的多項式插值算法可以稱之為高階多項式插值,理論而言,多項式的階次越高,函數表達式越復雜,插值得到的曲線越平滑,加速度曲線也越平滑,機器人運動的軌跡也越平穩[3]。由于高階多項式插值曲線越平滑,相應的加速過程越慢,整體平均速度越低,效率也越低。不僅如此,階次越高,計算量也越大,運算的要求也越高,因此高階多項式插值適用范圍小。
多項式插值算法一般是在2個跟蹤點之間進行先加速、后減速運動的軌跡規劃,并沒有勻速階段。在機器人應用中,對加工速度一般是有要求的,運動軌跡可能有勻速階段,僅單純的多項式插值并不適合有勻速段運動的軌跡規劃。T型加減速曲線的速度曲線是梯形,有上升期、平臺期和下降期。該算法表達式分為3段,運算簡單,還可以對最大的速度和加速度進行約束,但機械臂由加速到勻速的切換過程中存在較大的沖擊,不利于機械臂運動的平穩。為克服T型曲線速度突變的問題,可以將S型速度曲線應用于工業機器人的軌跡規劃。S型速度曲線的速度平滑,在加速到勻速的連接處不帶拐點,是一種沖擊可控的加速和減速。該曲線能夠減少對控制過程中的沖擊,并使插補過程具有柔性[4-5]。根據表達式分段數目,S型速度曲線可分為多種,然而分段越多,曲線表達式越復雜,速度曲線越平滑,但同時計算量也越大,實現起來越困難。
以上軌跡規劃方法通常約束機器人的速度、加速度,并沒有計算運動到每個路點的時間。而B樣條插值方法表達精確,可以對機器人路徑點的時間進行約束。其中3次樣條是用的較為廣泛的一種,該算法在靈活性和計算速度之間進行了合理的折中[6-7]。同時B樣條曲線通過微調軌跡的控制點可以靈活改變曲線的形狀,方便后期的軌跡優化,因此被應用得越來越廣泛。
關節空間軌跡規劃方法簡單,只需要考慮關節的運動狀態,容易滿足關節運動過程中的速度、加速度等約束條件,研究成果較多。但是由于規劃中未考慮末端執行器的軌跡,導致末端軌跡不確定性增大,可能出現磕碰、定位不精準等問題,因此在對末端軌跡有要求的應用場景中并不適用。
笛卡爾空間即三維空間,笛卡爾空間軌跡規劃是在三維坐標系下建立數學表達式來描述工業機器人末端執行器的運動軌跡,是一種直接對末端軌跡進行規劃的方法。笛卡爾空間下機械臂的控制流程圖如圖3所示。

圖3 笛卡爾空間下控制流程圖
以常見的六關節機器人為例,具體的笛卡爾空間下的軌跡規劃流程如圖4所示。其中,(X,Y,Z,A,B,C)為末端軌跡點坐標,q1、q2、q3、q4、q5和q6分別為6個關節軸。第一列是末端執行器在空間下的4個軌跡點的坐標,第二列是通過軌跡規劃算法得到的笛卡爾空間下末端軌跡曲線。第三列是將第二列曲線上所有的點通過逆運動學求解得到的6個關節對應的軌跡曲線,第四列是將關節軌跡曲線離散化后得到的點,第五列是控制關節運動形成的笛卡爾空間下的末端執行器軌跡。

圖4 笛卡爾空間下軌跡規劃圖
由于三維空間中大多數的運動都是直線和圓弧的結合,因此笛卡爾空間軌跡規劃的研究主要集中在直線和圓弧軌跡規劃。直線插補法是將末端軌跡的起點、中間點和終點之間的軌跡直線化處理,是基本的方法,而圓弧插補法是將各點之間的軌跡圓弧化處理,是直線插補的升級[8]。然而,不論是直線插補還是圓弧插補的軌跡規劃,機器人末端執行器的軌跡都被分解為幾段連續的軌跡,都需要對連接點進行專門的平滑處理[9]。
笛卡爾空間下的軌跡規劃是在三維空間下進行的,而在實施具體控制時,需要對關節進行控制,并且是在關節空間下進行,因此必須將規劃出來的末端軌跡轉換為關節空間下的關節軌跡。在此過程中需要對每個末端軌跡點進行逆運動學求解,運算量大且復雜。另外,逆運動學求解過程中將不可避免地會討論到解的奇異性、存在性和唯一性問題,進一步增加了運算的不確定性。目前,逆運動學求解算法有很多,針對解的三性問題也有部分研究成果[10-11]。然而,逆運動學求解算法的相對成熟只是針對少數軌跡點的求解,對機器人末端大量軌跡點進行運動學反解并沒有快捷算法。且由于運算的難度較大,關于逆運動學解的三性方面的討論方法相對較少,影響了笛卡爾空間軌跡規劃的進一步應用。
相比于關節空間下的軌跡規劃,笛卡爾空間下的軌跡規劃直觀性強,可以準確地得到末端執行器的軌跡,有一定的理論研究意義。但在實施具體控制時,逆運動學運算復雜、計算量大以及解的不確定性降低了軌跡規劃的準確性、控制的時效性,實用性不強,應用范圍小。
當前,不論工業機器人被應用于何種場景,工業機器人的軌跡規劃都是繞不開的一個過程,是各種作業得以實現的前提。良好的軌跡規劃可以減少機械臂的振動和磨損,提升定位精度和生產效率,增大經濟效益。隨著工業機器人技術的發展,軌跡規劃的方法已得到充分的研究,以關節空間軌跡規劃和笛卡爾空間軌跡規劃為主的規劃方法已形成。但許多研究成果主要集中在理論的研究和仿真的應用上,在實踐性和實用性方面的還有很大的研究空間。