趙章焰 秦 烺
武漢理工大學交通與物流工程學院 武漢 430063
起重機械是用于港口碼頭裝卸貨物的主要設備,隨著工作年限的增加會出現(xiàn)裂痕、生銹或表面污漬等現(xiàn)象,故需定期檢查與清潔。傳統(tǒng)的檢查與清潔方式是由工作人員在起重機各表面完成任務,危險程度高,且效率較低。采用攀爬機器人來代替工人完成工作,可以極大地提高工人的安全保障以及工作效率[1]。因此,設計一款輪腿結合式的攀爬機器人,由4 條支腿和4 個車輪協(xié)同工作,在平坦的壁面攀爬時采用車輪運行的方式,跨越障礙和過壁面棱角時采用支腿運行的方式。不僅可避免輪式機器人的越障困難問題,還能提高足式機器人的運行平穩(wěn)性和運行速度[2]。
針對機器人的越障性能,本文使用Matlab 對輪腿結合式機器人進行越障過程的運動學分析,研究機器人支腿在運動過程中的軌跡、速度、加速度等運動特征,采用改進的D-H 參數(shù)建立模型[3],運用解析法計算出運動學逆解的各關節(jié)的關節(jié)角[4],最后通過Matlab 機器人工具箱完成支腿越障的運動學仿真分析,進而研究攀爬機器人的運動特點[5]。
攀爬機器人的整體結構是一個4 輪小車,車體與車輪之間通過支腿連接,支腿由多個關節(jié)軸和連桿組成,機器人支腿三維模型如圖1 所示。在研究支腿的運動學時,設所有構件均為剛體,僅考慮各桿件之間的運動關系,不考慮各桿件及構件之間的力學因素,忽略關節(jié)受彈性、摩擦、遲緩和間隙的影響。
圖1 攀爬機器人支腿三維模型
攀爬機器人的支腿由5 個關節(jié)串聯(lián)組成,可在三維空間中實現(xiàn)5 個旋轉自由度的運動。通過關節(jié)角θi、連桿偏距di、關節(jié)偏移ai和連桿扭轉角αi等參數(shù)來描述相鄰2 連桿之間的相對空間位置關系。運用改進的Denavit-Hartenber 參數(shù)法(簡稱D-H 參數(shù)法),建立機器人支腿關節(jié)的空間坐標系,進而構建出整個機器人的空間結構模型。機器人支腿的參數(shù)如表1 所示。
表1 機器人的D-H 參數(shù)表
采用D-H 參數(shù)法建立機器人支腿運動學模型,設連桿i 相對于連桿i-1 坐標系的位姿表達式為i-1iT,則連桿i 相對于基座標系的位姿表達式為
式中:[n o a]為姿態(tài)向量,P 為位置向量。
給機器人的支腿每個關節(jié)指定各自的關節(jié)坐標系,再確定從一個關節(jié)到其相鄰關節(jié)坐標系間的變換矩陣,在已知各關節(jié)的轉角后即可求解出支腿末端的位姿,從而建立出機器人的運動學方程。
將機器人連桿的4 個參數(shù)代入到廣義變換矩陣中,即可得到相鄰2 桿件之間的位姿變換矩陣。相鄰2 連桿之間的廣義變換矩陣為
將各關節(jié)的4 個參數(shù)代入上述廣義變換矩陣中即可得到相鄰2 桿件之間的位姿變換矩陣,記為所以攀爬機器人的支腿末端位姿的變換矩陣可表示為
上述變換矩陣的公式中變量只有θi,當已知各關節(jié)的關節(jié)角θi時,即可求解出各相鄰桿件間的相對位姿坐標以及末端執(zhí)行器相對于基座標系的位姿坐標,通過上式計算可得變換矩陣中表示姿態(tài)和位置向量對應元素的值分別為
機器人在實際運動過程中,通常已知一個末端工作位置,然后按照某個設定的軌跡運動到目標位置,從而完成相應的工作。所以,當已知攀爬機器人支腿末端相對于基座標的姿態(tài)和位置05T 后,即可通過運動學逆解代數(shù)求解出各關節(jié)的關節(jié)角θ 值。通過矩陣計算機器人的逆解,分別可得出5 個關節(jié)的求解過程。
由式(3)計算出矩陣中各元素的值為
由式(4)和(5)計算可得
通過式(3)得到變換矩陣為
方程(7)兩邊矩陣(1,4)、(3,4)對應位置元素相等可得
對式(8)、式(9)進行化簡計算,消除包含有θ3的項,得到
由上述運動學逆解計算結果可知,θ2有2 個解,而在機器人實際運動過程中,由于周圍環(huán)境或自身體積形狀會對機器人的工作空間有限制,并不是所有的解都是有效解,故應根據(jù)實際的工作情況來驗證所求的運動學逆解是否合理。
在運動學分析時,要考慮機器人的實際工作范圍,取攀爬機器人支腿末端所能到達的三維空間所有點的集合,該集合即為其工作域。在研究機器人工作域時,不考慮機器人支腿的姿態(tài),而只研究其位置,所用數(shù)學公式只與位置向量P 有關,即
式中:p 為工作域,θi為各關節(jié)變量,分別為第i 個關節(jié)變量的最小值和最大值。
由于工作環(huán)境、機器人自身結構以及構件間的相對配合等條件會對各關節(jié)的活動范圍有約束,所以θi的取值是一個范圍,在最大值和最小值之間不可取任意值。在進行機器人工作域的求解時可采用蒙特卡洛法[6],蒙特卡洛法是一種以概率和統(tǒng)計理論方法為基礎的隨機模擬方法[7]。首先通過運動學正解的變換矩陣可得機器人末端點的位置向量,即
根據(jù)實際工作情況確定各關節(jié)角的取值范圍,然后調用Matlab 中的Rand 函數(shù)對關節(jié)變量在取值區(qū)間內進行隨機取值,最大關節(jié)變量值與最小關節(jié)變量值的差乘以Rand 函數(shù)再加上最小值,每進行一次計算就隨機產(chǎn)生一個關節(jié)變量θi,即
將5 個關節(jié)變量對應的最大值和最小值分別代入對應關節(jié)角的計算公式中,并賦予a2、d4對應的數(shù)值,然后使用循環(huán)命令設置生成關節(jié)變量角的次數(shù),每執(zhí)行一次循環(huán)命令即輸出一個末端點,通過Matlab 編寫程序完成該算法,輸出表示機器人工作域的點集圖形。
根據(jù)攀爬機器人的實際工況代入?yún)?shù)數(shù)值a2=100 mm,d4=100 mm,代入各關節(jié)變量θi的取值范圍邊界值為分別θ1=[-pi/2,pi/2]、θ2=[-pi/4,pi/2]、θ3=[-3pi/4,pi/4]、θ4=[-pi/2,pi/2]、θ5=[-3pi/4,3pi/4]。設置循環(huán)次數(shù)為100 000 次,即可隨機生成100 000 個點位,由這些點位組成的集合即機器人支腿末端可達到的工作區(qū)域,通過調用Matlab 的Plot3 繪圖命令,仿真輸出代表機器人支腿工作域的三維空間點集云圖,如圖2 所示。
圖2 三維空間點集云圖
由圖2 可知,攀爬機器人支腿末端所能到達的工作區(qū)域與Matlab 仿真所得到的三維空間點集云圖尺寸大小以及點位分布相對應,圖中下方點的分布比較密集,由于支腿末端多是與攀爬壁面相接觸,故實際上機器人支腿末端大多也是在相對位置的下方。中間部分由于2相鄰連桿的長度相同導致中間一部分區(qū)域支腿末端無法到達,故形成了無點區(qū)域。左側空白部分沒有點位,因為左側為機器人車體部分,機器人的支腿只能在機器人車體外側以及下側部分區(qū)域活動。仿真結果點位云圖與機器人實際工作區(qū)域相一致,符合攀爬機器人的正常工作要求。
機器人在使用支腿進行前進運動時有2 種狀態(tài):1)支腿足端運動狀態(tài),包括支腿位姿調整,支腿抬高進行越障;2)支腿足端不動而車體運動的狀態(tài),主要是用于越障時改變機器人車身高度和位置,以便后續(xù)的支腿越障行為。
使用Matlab 中的Robotics Toolbox 工具箱對攀爬機器人的支腿進行三維建模[8],通過Link 函數(shù)以及關節(jié)參數(shù)θ、d、a、α 來創(chuàng)建5 個連桿,調用SerialLink 函數(shù)連接5 個連桿組成一條運動鏈[9],生成的機器人支腿模型如圖3 所示。
圖3 機器人支腿模型
機器人支腿末端從起始點運動到終止點有許多條路徑,要在這些路徑中選擇出一條速度和時間都最優(yōu)的路徑,本文采用五次多項式插值算法進行計算[10],為了讓機器人的運動更加平穩(wěn),需要在起始點和終止點之間添加幾個中間路徑點用于過渡。將關節(jié)角之間的變換看成關于時間的函數(shù)θ(t),該函數(shù)從起始點開始依次通過個中間點最后到達終止點,可表示為
調用Robotics Toolbox 工具箱中的Jtraj 函數(shù),Jtraj函數(shù)用于在關節(jié)空間下機器人2 個不同位行間各關節(jié)角度變化差值擬合生成軌跡,調用格式為
式中:qs為初始關節(jié)角度,qe為終止關節(jié)角度,t表示此過程包含的時間步數(shù),每個時間步對應一個瞬時位行。Q、qd、qdd分別為關節(jié)角的角位移、角速度和角加速度。
Jtraj 函數(shù)利用五次多項式進行插值規(guī)劃軌跡[11],默認初始時和終止時關節(jié)的速度和加速度的值均為零。
由于機器人的4 個支腿越障時的軌跡相同,本文將研究一條支腿跨越障礙時的軌跡規(guī)劃仿真,支腿在越障時的動作可分為4 步:1)支腿抬高脫離壁面;2)支腿關節(jié)轉動調整位置使支腿越過障礙物;3)調節(jié)支腿末端點姿態(tài),使車輪方向保持繼續(xù)向前;4)降低支腿高度,與工作面接觸,完成越障。
支腿越障初始位置的各關節(jié)角qs1和終止位置的各關節(jié)角qe1分別為
為了使機器人工作時的軌跡平穩(wěn)過渡,在初始位置與終止位置之間添加3 個中間路徑點。每2 個路徑點之間設置采樣時間為2 s,總時長為8 s,步長為0.05 s,機器人支腿的末端軌跡圖如圖4 所示。
圖4 位姿調整時機器人支腿末端軌跡
在支腿位姿調整的過程中,主要運動關節(jié)為關節(jié)1和關節(jié)2,調用Matlab 機器人工具箱中的Plot 函數(shù),對采用5 次多項式插值的計算的軌跡結果繪制圖形,得到各關節(jié)的角位移、加速度和角加速度隨時間變化的曲線圖,分別如圖5 ~圖7 所示。
圖5 越障時關節(jié)1、關節(jié)2 角位移曲線
圖6 越障時關節(jié)1、關節(jié)2 角速度曲線
圖7 越障時關節(jié)1、2 角加速度曲線
由圖5 ~圖7 曲線可知,關節(jié)1 和關節(jié)2 的位移、速度和加速度曲線光滑平穩(wěn),且相互對應;在起始和終止位置速度為0,且位移不再發(fā)生變化,加速度的正負與速度的增大減小相對應。因此,越過障礙的軌跡規(guī)劃合理,該動作可以正常運行。
1)針對用于大型金屬結構的監(jiān)測平臺,設計了一款輪腿結合式的攀爬機器人,通過對機器人采用支腿越障的過程進行了運動學分析,合理安排機器人運動過程中的位姿,保證支腿運動的精度和效率,為后續(xù)的動力學、控制算法以及運動規(guī)劃分析奠定理論基礎。
2)在正、逆運動學分析的基礎上運用蒙特卡洛法對機器人的支腿工作域進行三維仿真分析。結果表明,支腿的工作空間范圍充足,能滿足支腿越障和過棱邊時的各種動作要求。
3)采用Matlab 中的機器人工具箱,對機器人越障的過程進行軌跡規(guī)劃。結果表明,機器人在越障運動中的角位移、角速度和角加速度曲線光滑平穩(wěn),未出現(xiàn)突變和間斷現(xiàn)象,說明機器人能夠安穩(wěn)地跨越障礙。