康玉偉,陳鵬宇,王 馨,劉 碩,武立波,林遠山*
(1.大連海洋大學 信息工程學院,遼寧 大連 116023;2.遼寧省海洋信息技術重點實驗室,遼寧 大連 116023;3.大連海洋大學 設施漁業(yè)教育部重點實驗室,遼寧 大連 116023)
履帶式起重機可以垂直升降重物,并進行短距離載物水平運動,滿足了重物裝卸、運載等作業(yè)的系列要求。因其具有靈活的機動性,目前,履帶式起重機已經(jīng)被廣泛應用于陸地、海洋、空中等各類建設領域。
履帶式起重機的智能化水平主要體現(xiàn)在其運動規(guī)劃上,因此,有關于履帶式起重機的吊裝路徑規(guī)劃得到了國內(nèi)外學者廣泛的關注。學者們分別采用A*算法[1]、遺傳算法(genetic algorithm,GA)[2,3]、蟻群算法[4]、概率路線圖(probabilistic roadmap,PRM)[5]、快速擴展隨機樹(rapidly exploring random tree,RRT)[6,7]等方法,對起重機的吊裝路徑進行了規(guī)劃[8-19],并取得了不少成果。
對履帶起重機進行建模是其運動規(guī)劃的基礎和前提。機器人建模即是參考實體機器人的各項參數(shù)指標,在計算機仿真平臺中,將其進行同比復刻。雖然機器人建模很難做到和實體機器人完全一致,但是它可以抓住被仿對象的關鍵特征,并利用計算機仿真技術,在計算機上生成具有真實感的仿真環(huán)境[20-22],實現(xiàn)對實體機器人的一些關鍵操作行為進行有效仿真的目的。
履帶起重機的運動學模型描述了不同時刻其吊裝動作所對應的起重機狀態(tài)。通??梢岳闷溥\動學模型來預測履帶起重機的若干步位形點,并判斷該動作是否可行,進而根據(jù)自身的動作信息做出相應的規(guī)劃。
然而,作為進行吊裝路徑規(guī)劃的基礎,起重機建模并沒有得到系統(tǒng)的研究。事實上,對于移動式起重機(如汽車起重機、履帶起重機等),在外形、運動特點上與移動式機械臂有許多相似之處,即均有一個可移動的平臺和一個可搬運物體的臂架系統(tǒng),因此,移動式起重機可以看作是一種特殊的移動式機械臂機器人。而移動式機械臂目前已經(jīng)得到了廣泛而深入的研究,包括移動機械臂的建模、路徑規(guī)劃、運動控制等方面,均已取得了豐碩的研究成果,一些研究成果甚至已經(jīng)被應用到實際的機器人產(chǎn)品中。
但是,這些研究大多數(shù)是針對全剛體機械臂,即其移動平臺、機械臂的每個連桿和關節(jié)都是剛體。
徐文福等人[23]針對空間站遙操作機械臂(SSRMS)型7DOF冗余空間機械臂,提出了逆運動學求解的關節(jié)角參數(shù)化及臂型角參數(shù)化兩種方法,同時用仿真算例驗證了其有效性。禹超等人[24]針對機械臂腕部有偏置的情形,提出了一種基于虛擬球關節(jié)的方法,即用虛擬關節(jié)替換腕部的偏置連接,用球腕構(gòu)成虛擬機械手,并進行了運動學仿真驗證。
相比于剛體機械臂,目前針對帶柔性連桿移動機械臂的相關研究不多。通過文獻檢索可以發(fā)現(xiàn),徐秀棟、黃攀峰等人研究了空間繩系機器人和帶彈性體的機械臂[25-31]。黃攀峰等人[25]針對空間繩系機器人的軌跡跟蹤控制問題,提出了一種基于系繩釋放特性的跟蹤軌跡協(xié)調(diào)控制方法。徐秀棟等人[26]針對空間繩系機器人姿態(tài)控制失穩(wěn)問題,提出了一種新姿態(tài)容錯控制方法,并用仿真方法證明了其有效性。王東科等人[27]針對空間繩系機器人對目標逼近過程中的姿態(tài)協(xié)調(diào)控制問題,設計了一種基于可移動系繩點的姿態(tài)協(xié)調(diào)控制機制。
但是,目前尚未有帶繩子柔性桿機械臂路徑規(guī)劃建模與路徑規(guī)劃的相關研究。
為此,針對柔性起升繩在運動過程中需保持豎直并可收縮的這一特性,筆者提出一種新的履帶起重機運動學建模方法,即采用虛擬連桿和被動關節(jié)對剛?cè)峄旌系钠鹕到y(tǒng)進行建模,在此基礎上,確定履帶起重機的位形空間,進而構(gòu)建履帶起重機的正向運動學和逆向運動學模型,最后通過對幾個規(guī)劃問題進行求解,以驗證上述模型的有效性。
作為一種可帶載行走的起重運輸設備,履帶起重機的臂架有多樣組合工況,如標準主臂工況、標準固定副臂工況、標準塔式副臂工況及其對應的超起型工況等。
為便于闡述,筆者以超起型主臂工況為例開展研究,如圖1所示。
圖1 履帶起重機的超起型主臂工況
超起型主臂履帶起重機主要由下車、轉(zhuǎn)臺、臂架、起升繩、吊鉤五大部分組成。其中,下車包括兩條履帶、車架、回轉(zhuǎn)支承(車架與轉(zhuǎn)臺的連接件);轉(zhuǎn)臺包括轉(zhuǎn)臺框架、起升卷揚、發(fā)動機;臂架包括主臂、超起桅桿。
而起重機的基本動作有直行、轉(zhuǎn)彎、回轉(zhuǎn)、變幅、起升。其中,行走和轉(zhuǎn)彎是通過兩條履帶的驅(qū)動輪帶動履帶轉(zhuǎn)動實現(xiàn)的,屬于典型的差分驅(qū)動。起重機能夠在不同曲率半徑的圓弧或直線上運動,也能夠原地轉(zhuǎn)向,但不能沿著履帶的垂直方向運動;回轉(zhuǎn)是通過驅(qū)動回轉(zhuǎn)支承旋轉(zhuǎn)的方式實現(xiàn)的,可進行360°回轉(zhuǎn);變幅是通過變幅卷揚收放變幅鋼絲繩的方式實現(xiàn)的;起升是通過起升卷揚收放起升繩方式實現(xiàn)吊鉤的升降目的。
需要特別指出的是,整個吊鉤分為吊鉤滑輪組和吊鉤兩部分,吊鉤是通過活孔與吊鉤滑輪組連接的,其可靠人力繞垂直軸360°旋轉(zhuǎn)。在實際吊裝時,經(jīng)常通過人力撥弄被吊物來旋轉(zhuǎn)吊鉤,以便被吊物能穿過狹窄的通道。此處,還有另外一個基本動作—吊鉤旋轉(zhuǎn),只不過它不是通過起重機自身動力實現(xiàn)的。被吊物被掛到吊鉤上后,履帶起重機通過行走、轉(zhuǎn)彎、回轉(zhuǎn)、變幅、起升、吊鉤旋轉(zhuǎn)等基本動作,實現(xiàn)被吊物的搬運目的。
在進行剛?cè)峄旌系钠鹕到y(tǒng)建模之前,首先要了解起重機吊裝過程中的結(jié)構(gòu)和運動特點。吊裝過程中,下車、轉(zhuǎn)臺、臂架、吊鉤等部件變形較小,可認為是剛體。而起升繩為柔性體,在吊裝過程中存在以下特點:
(1)起升繩通常為鋼絲繩,本身只能受拉不受壓,容易出現(xiàn)擺動,但終會在吊鉤或被吊物的重力作用下到達豎直狀態(tài)(穩(wěn)定靜止平衡狀態(tài));
(2)柔性的起升繩可以收放(伸縮),實現(xiàn)吊鉤升降的目的。
這兩個特點是履帶起重機與通常的移動機械臂最大的不同,也是建模的重點和難點。下面就對其進行詳細討論,并對其進行建模。
由于起升繩偏擺對起重機的影響比肉眼看到的要嚴重得多,所以,操作規(guī)程通常要求:起吊時起升繩要嚴格豎直,在吊裝過程中要緩慢運動以盡量確保起升繩始終豎直。
另外,在吊裝過程中下車、轉(zhuǎn)臺、臂架、吊鉤等部件變形通常較小。為此,筆者做如下假設:
(1)下車、轉(zhuǎn)臺、臂架、吊鉤為剛體,吊裝過程不發(fā)生變形;
(2)起升繩始終豎直,彈性變形忽略不計。
在以上假設基礎上,若不考慮運動的具體驅(qū)動方式,而僅關注相鄰部件的相對運動關系,起重機顯然可以采用連桿和關節(jié)來描述。具體是把下車、轉(zhuǎn)臺、臂架、吊鉤滑輪組、吊鉤等剛體看作連桿,轉(zhuǎn)臺連桿與下車連桿采用豎直軸的轉(zhuǎn)動關節(jié)連接,臂架與轉(zhuǎn)臺采用水平軸轉(zhuǎn)動關節(jié)連接,吊鉤采用豎直轉(zhuǎn)動關節(jié)連接到吊鉤滑輪組上。
與通常移動機械臂不同,臂架到滑輪組該部分需要特別處理:
(1)把起升繩抽象為一個看不見、無形狀尺寸的虛擬連桿,其可變長(收放)特性采用移動關節(jié)來等效,具體該移動關節(jié)坐標系設在起升滑輪組上,移動軸為虛擬連桿坐標系的一軸(具體為-Z軸);
(2)該虛擬連桿采用水平軸轉(zhuǎn)動關節(jié)連接,并令該關節(jié)變量等于臂架仰角的負值。即臂架變幅關節(jié)旋轉(zhuǎn)多大角度,該關節(jié)就反向旋轉(zhuǎn)多大角度,以達到起升繩始終豎直的效果。
變幅關節(jié)與水平軸轉(zhuǎn)動關節(jié)旋轉(zhuǎn)角度關系,如圖2所示。
圖2 變幅關節(jié)與水平軸轉(zhuǎn)動關節(jié)旋轉(zhuǎn)角度關系
圖2中,起重機臂架在轉(zhuǎn)動一定角度時,起升繩向相反方向旋轉(zhuǎn)。起重機在起吊臂架起吊時刻臂架狀態(tài)基礎上,逆時針旋轉(zhuǎn)γ,此時起升繩為了保證豎直狀態(tài),需要順時針旋轉(zhuǎn)γ,即起升繩從圖中虛線處旋轉(zhuǎn)γ到實線表示的狀態(tài)??傊?該關節(jié)與臂架變幅關節(jié)形成一種幾何約束,令其成為一個被動關節(jié)。
根據(jù)以上的分析,可得到剛?cè)峄旌系钠鹕到y(tǒng),如圖3所示。
圖3 剛?cè)峄旌系钠鹕到y(tǒng)
圖3中的坐標系{i}(i=0,1,…,5)為連桿坐標系,垂直紙面指向讀者為X軸、水平方向為Y軸、豎直向上為Z軸。而回轉(zhuǎn)關節(jié)的旋轉(zhuǎn)軸為轉(zhuǎn)臺坐標系{1}的Z軸;變幅關節(jié)的旋轉(zhuǎn)軸為臂架坐標系{2}的Y軸;起升繩旋轉(zhuǎn)關節(jié)的軸為虛擬起升繩坐標系{3}的X軸;起升移動關節(jié)的軸為起升滑輪組坐標系{4}的-Z軸;吊鉤旋轉(zhuǎn)關節(jié)的軸為吊鉤坐標系{5}(與坐標系{4}重合)的Z軸。
1.3.1 正向運動學
為了簡化機器人工作空間的復雜規(guī)劃場景,LOZANO-PEREZ[32]引入了位形間(C-space)的概念。位形空間由自由空間Cfree和障礙物空間Cobs兩部分組成,這樣就不需要明確定義障礙物。同時,任何情況下機器人的位形只能用q來表示,位形的維數(shù)與C-space的維數(shù)一致,連續(xù)的位形序列表示路徑P。
筆者用1個七維向量q=(x,y,α,β,γ,h,ω)來描述履帶起重機的位形,如圖4所示。
圖4 履帶起重機位形(x,y)—起重機下車的坐標;α—下車的方向角,是起重機的履帶方向與X軸正向的夾角;β—轉(zhuǎn)臺的回轉(zhuǎn)角度,是起重機的上車方向與X軸正向的夾角;γ—臂架仰角;h—起升繩長;ω—吊鉤旋轉(zhuǎn)角
根據(jù)圖3的構(gòu)型可獲得單開環(huán)運動鏈,如圖5所示。
圖5 履帶起重機運動鏈
(1)
對于給定的履帶起重機而言,zs、xb、zb、zr為已知,其中,zs為轉(zhuǎn)臺坐標系相對于下車坐標系在z軸上的偏移量,xb和zb分別為變幅轉(zhuǎn)動關節(jié)坐標系相對于轉(zhuǎn)臺坐標系在x軸和z軸上的偏移量,zr為起升繩轉(zhuǎn)動關節(jié)坐標系相對于變幅轉(zhuǎn)動關節(jié)坐標系在z軸上的偏移量,詳見圖3。因此,一旦已知下車的位置(xc,yc)和方位角α,吊鉤的位姿即可由β、γ、h、ω等關節(jié)變量求得,即根據(jù)式(1)建立關節(jié)空間到吊鉤工作空間的映射。
將相應的參數(shù)代入式(1)可得:
(2)
其中:
cosθh=(cosαcosβ-sinαsinβ)cosω-(cosαsinβ+sinαcosβ)sinω;
sinθh=(sinαcosβ+cosαsinβ)cosω-(sinαsinβ-cosαcosβ)sinω;
t=(yb-zrsinγ)。
根據(jù)變換矩陣的特性可知,θh正好是吊鉤在世界坐標系下的旋轉(zhuǎn)角,變換矩陣的最后一列為吊鉤在世界坐標系下的坐標,因此,吊鉤的位姿表達式為:
(3)
下面,筆者將深入探討下車位置(xc,yc)和方位角α的求解。
如前所述,履帶起重機行走和轉(zhuǎn)彎需要滿足非完整運動學約束,且因起重機運動局限在平面上,故行走和轉(zhuǎn)彎的運動學模型如圖6所示。
圖6 行走和轉(zhuǎn)彎的運動學模型XOY—世界坐標系;Or—履帶起重機的轉(zhuǎn)彎中心;點P(xc,yc)—起重機的位置坐標;α—履帶的方向角(世界坐標系下X軸到正向的角度);vL,vR—左右履帶的線速度(vL、vR同向并大小相等時,履帶起重機直線行走;當vL、vR反向且大小相等時,履帶起重機原地轉(zhuǎn)向;當vL、vR同向并大小不等時,履帶起重機以R為轉(zhuǎn)彎半徑為進行轉(zhuǎn)向);B—左右履帶的軌距
若不考慮履帶打滑,則起重機的行走和轉(zhuǎn)彎所滿足運動學約束可描述為:
(4)
(5)
在起重機行走和轉(zhuǎn)彎過程中,對式(4)進行積分,即可求得下車的位置P(xc,yc)和方位角α;在此基礎上,結(jié)合各個關節(jié)的變量通過式(3),即可求出吊鉤的位姿。
1.3.2 逆向運動學求解
履帶起重機的逆向運動學求解,是已知吊鉤的位姿反求各個關節(jié)變量的值。而履帶起重機在實際的吊裝過程中,既可以帶載行走,也可以下車固定,為此,下面筆者分別對這兩種情況的逆向運動學求解進行分析。
(1)下車固定情況
由式(3)可知,根據(jù)吊鉤位姿可得到4個方程,而下車固定即已知下車位置P(xc,yc)和方位角α,這時式(3)的方程組只剩下4個關節(jié)變量未知數(shù),因此,可以唯一解析求得這4個關節(jié)變量。其具體步驟是:
首先,根據(jù)式(3)中的第1、2方程確定出β,具體見下式:
(6)
接著,把β代入第1個方程,求得γ,具體見下式:
(7)
然后,把γ代入第3個方程進而求得h,具體見下式:
h=zr·cosγ+zb+zs-Zh
(8)
最后,根據(jù)已經(jīng)求得的β以及方位角α和θh確定出ω,具體可見下式:
ω=θh-(α+β)
(9)
(2)下車不固定情況
對于下車不固定的情況,逆向運動學求解則要復雜得多。
從式(3)可知,4個方程存在7個未知數(shù),顯然該方程組存在多解,這是因為當允許履帶起重機行走時,起重機是一個存在冗余自由度的移動機械臂。而冗余機械臂逆向運動學一般采用數(shù)值法,獲取其一個或幾個可行解,該方法通常需要進行循環(huán)迭代。
下面,結(jié)合起重機吊裝的特點,筆者給出一種逆向運動學的偽解析求解方法。
起重機的主要功用是吊裝,因此,給定某臂長某型號的起重機會有一張起重性能表與之對應,這是起重機與機械臂的其中一個區(qū)別,該表是一張作業(yè)半徑(吊鉤到回轉(zhuǎn)中心的水平距離)與額定起重量的映射表,表中每一個映射指示起重機在該作業(yè)半徑下其額定的起升能力是多大。
根據(jù)起重機當前吊重和起重性能表,即可確定起重機的最小和最大作業(yè)半徑。然后,再結(jié)合給定的吊鉤位姿,即可確定起重機有效的站位范圍,并且該范圍為一個圓環(huán),稱為站位環(huán),如圖7所示。
圖7 起重機吊裝站位環(huán)
在此基礎上,只要在站位環(huán)里隨機選擇一個點作為起重機的位置,并設定下車的方向,就可以把該逆向運動學問題轉(zhuǎn)化為下車固定的逆向運動學問題,進而逆向運動學問題得到求解。
基于上述起重機模型的設計,筆者使用MoveIt中的路徑規(guī)劃來驗證其可行性。
下面筆者以快速進行樹(fast marching tree,FMT)[33]算法為例,構(gòu)造3種路徑規(guī)劃,并展示模型在MoveIt下的路徑規(guī)劃,以驗證其可用性和有效性。
一般來說,在起始位形已知的前提下,機器人路徑規(guī)劃問題都可以抽象為:在一個含碰撞區(qū)的狀態(tài)空間中,尋找一條從起始狀態(tài)到目標狀態(tài)的無碰撞路徑。為了成功構(gòu)造一條所有位形點都在Cfree,并且它們之間的連接和Cobs無交叉的路徑,筆者將履帶起重機起吊時刻位形qpicking、就位時刻點位形qplacing和位形空間C輸入到運動規(guī)劃器中,根據(jù)選擇的算法進行規(guī)劃。
此處筆者以基于采樣的FMT算法為例進行路徑規(guī)劃。一些算法涉及到的概念介紹如下:
(1)采樣。即為了從位形空間中隨機選擇一個位形點,并將其添加到路線圖中。如果隨機采樣的位形點位于自由空間中,則采用;反之,則舍棄,并重新采樣。
位形點的產(chǎn)生過程具體為:
(10)
(11)
式中:Δβ,Δγ,Δω—回轉(zhuǎn)、變幅、吊鉤旋轉(zhuǎn)的角速度;Δh—起升的線速度;
(2)距離度量。即給定兩個起重機位形qi和qi+1,該過程返回一個值,表示從qi到qi+1所需要的代價。具體見下式:
d(qi,qi+1)=|xi+1-xi|+|yi+1-yi|+|r(αi+1-αi)|+
|r(βi+1-βi)|+|(lz(γi+1-γi)|+
|(hi+1-hi)|+|lS(ωi+1-ωi)|
(12)
式中:r—作業(yè)半徑;lz—臂長;lS—被吊物長。
其中:qi=(xi,yi,αi,βi,γi,hi,ωi)和qi+1=(xi+1,yi+1,αi+1,βi+1,γi+1,hi+1,ωi+1)分別為位形空間中兩個位形。
(3)選擇鄰居節(jié)點。該過程用于選擇當前位形點的鄰居節(jié)點。FMT選擇基于上述距離度量小于規(guī)定的歐幾里得距離的位形點作為鄰居節(jié)點;
(4)局部最優(yōu)一步連接。對于已經(jīng)確定的節(jié)點x和其所有鄰居節(jié)點y,該過程嘗試在它們之間使用直線路徑,忽略障礙物碰撞檢測,建立連接;
(5)碰撞檢測。這是一個返回值為布爾類型的函數(shù),在連接兩個位形點時返回成功或失敗。如果連接路徑未與Cobs有交叉,則連接成功;
(6)惰性碰撞檢測。這是一個優(yōu)化碰撞檢測的操作,在尋找局部最優(yōu)連接時,算法會忽略障礙物的影響,直接計算各個連接路徑的代價值。
FMT-based吊裝路徑規(guī)劃的偽代碼如表1所示。
表1 FMT-based吊裝路徑規(guī)劃
續(xù)表
為驗證起始位形已知的路徑規(guī)劃的可行性,筆者構(gòu)建了一個履帶起重機吊裝案例,如圖8所示。
圖8 FMT-based吊裝路徑規(guī)劃環(huán)境搭建
圖8中,A為履帶起重機起吊時刻位形,B為履帶起重機就位時刻位形,要求起重機能夠在障礙物環(huán)境中,規(guī)劃出一條能安全地將被吊物從A搬運到B的吊裝動作路徑。
該案例以利勃海爾的LR1400-2履帶起重機作為吊裝機器,其工況為標準型,臂長為49 m。筆者調(diào)用傳統(tǒng)路徑規(guī)劃算法FMT,在驗證正向運動學有效性的基礎上,以起重機起吊時刻和就位時刻的位形作為輸入數(shù)據(jù),規(guī)劃出一條符合任務需求的路徑作為輸出數(shù)據(jù)。
起重機模型在該案例上某次的無碰撞規(guī)劃結(jié)果如圖9所示。
圖9 FMT-based吊裝路徑規(guī)劃結(jié)果
該案例在給定了起吊和就位位形之后,可以成功規(guī)劃出一條較為平滑的路徑。起重機在場區(qū)中一個障礙物環(huán)繞的起吊位置出發(fā),其成功避開了車身兩邊的障礙物,并通過位于兩個障礙物墻壁之間的缺口,運動到位于障礙物墻壁外圍的就位位置。其中,位于起吊位形A和就位位形B之間的多個起重機,就是規(guī)劃出的吊裝動作序列中,各個時刻起重機所對應的位形狀態(tài),吊裝動作序列兩端顯示的是吊裝系統(tǒng)的起吊狀態(tài)和就位狀態(tài)。
上述研究是針對起重機起吊位形和終止位形均已知的情況,然而在實際吊裝過程中,知道的僅是被吊物的起始和終止的位姿,并不清楚起重機的整體位形。為此,筆者在給定了吊鉤位姿的情況下,通過公式推導確定出起重機的位形,然后調(diào)用傳統(tǒng)的運動規(guī)劃算法FMT進行求解,尋找可行路徑。
2.2.1 下車固定
由于下車固定,則其位置P(xc,yc)和方位角α均作為已知條件;同時,給出了吊鉤的位姿,即給出了Xh、Yh、Zh和θh的值。
筆者將履帶起重機的位形q=(x,z,α,β,γ,h,ω)分解為兩部分(qm,qu),其中,qm=(x,z,α)為履帶起重機下車的3個關節(jié),qu=(β,γ,h,ω)則對應上車部分轉(zhuǎn)臺、臂架變幅、起升繩收放、吊鉤旋轉(zhuǎn)等4個自由度。
根據(jù)公式(3),可以依次求得β、γ、h、ω的值。至此,由吊鉤位姿即可求出相應的起重機位形,進而調(diào)用傳統(tǒng)的路徑規(guī)劃算法進行路徑規(guī)劃。
IK-based被吊物位姿給定的吊裝路徑規(guī)劃(下車固定)的偽代碼,如表2所示。
表2 IK-based被吊物位姿給定的吊裝路徑規(guī)劃
在吊鉤位姿已知,并且下車固定情況下,為了驗證路徑規(guī)劃的可行性,筆者同樣構(gòu)建一個案例以證明模型的正確性,如圖10所示。
圖10 IK-based被吊物位姿給定的吊裝路徑規(guī)劃環(huán)境搭建(下車固定)
圖10中,A為起吊時刻起重機吊鉤位置,B為就位時刻起重機吊鉤位置,要求起重機在保持下車不動的情況下,僅通過上車部分,即在四維空間中,根據(jù)起吊時刻吊鉤位姿和就位時刻吊鉤位姿,規(guī)劃出一條能安全地將被吊物從A搬運到B的吊裝動作路徑。
該案例以起重機起吊時刻吊鉤位姿和就位時刻吊鉤位姿作為輸入數(shù)據(jù)。首先,根據(jù)逆向運動學相關公式求解當前吊鉤位姿下起重機的位形,在完成起重機起吊位形和就位位形的計算之后,規(guī)劃出一條符合任務需求的路徑作為輸出數(shù)據(jù)。
起重機模型在該案例上某次的無碰撞規(guī)劃結(jié)果,如圖11所示。
圖11 IK-based被吊物位姿給定的吊裝路徑規(guī)劃結(jié)果
該案例是在下車固定的前提下進行,即起重機在四維空間中進行規(guī)劃,可以看到起重機成功避開了位于起吊時刻吊鉤后方的障礙,在下車固定的狀態(tài)下,將被吊物從場區(qū)中較為狹窄的兩個障礙物墻壁之間的位置,用上車部分移動到較為寬廣的區(qū)域。
其中,位于起吊位形A和就位位形B之間的多個起重機就是規(guī)劃出的吊裝動作序列中,各個時刻起重機所對應的位形狀態(tài),吊裝動作序列兩端顯示的是吊裝系統(tǒng)的起吊時刻吊鉤狀態(tài)和就位時刻吊鉤狀態(tài)。
2.2.2 下車不固定
當起重機下車不固定,并且僅給出吊鉤的起吊、就位位姿,根據(jù)上述所提站位環(huán)可知,起重機會有多種位置取值,就會存在多解的情況。這里筆者將吊鉤位姿p對應的起重機位形空間用集合C表示,即:
Csm={q|q=G(qm,p)|}
(13)
式中:G—履帶起重機上車的逆向運動學。
這就會造成一個問題,即求解得到起重機位形,可能無法在位形空間中找到一條無碰撞路徑。為此,需要反復求解起重機位形并且再次調(diào)用規(guī)劃算法,直到獲得一條可行的吊裝路徑。
IK-based被吊物位姿給定的吊裝路徑規(guī)劃的偽代碼,如表3所示。
表3 IK-based被吊物位姿給定的吊裝路徑規(guī)劃
續(xù)表
在吊鉤位姿已知,下車可在站位環(huán)中移動的情況下,為了驗證路徑規(guī)劃的可行性,筆者同樣構(gòu)建一個案例以證明模型的正確性,如圖12所示。
圖12 IK-based被吊物位姿給定的吊裝路徑規(guī)劃環(huán)境
圖12中,A為起吊時刻起重機吊鉤位置,B為就位時刻起重機吊鉤位置,要求起重機能夠在障礙物環(huán)境中,根據(jù)起吊和就位時刻吊鉤位姿,規(guī)劃出一條能安全地將被吊物從A搬運到B的吊裝動作路徑。
起重機模型在該案例上某次的無碰撞規(guī)劃結(jié)果,如圖13所示。
圖13 IK-based被吊物位姿給定的吊裝路徑規(guī)劃結(jié)果
該案例是在下車不固定,即在七維空間中進行路徑規(guī)劃,起重機需要從場區(qū)中一個位于障礙物環(huán)境外的起吊位置出發(fā),然后,通過位于障礙物墻壁之間的狹窄過道到達就位位置。
其中,位于起吊位形A和就位位形B之間的多個起重機,就是規(guī)劃出的吊裝動作序列中,各個時刻起重機所對應的位形狀態(tài),吊裝動作序列兩端顯示的是起重機起吊時刻狀態(tài)和就位時刻狀態(tài)。
針對履帶起重機吊裝路徑規(guī)劃過程中存在的建模、規(guī)劃問題,筆者對柔性起升繩進行了分析,建立了面向吊裝路徑規(guī)劃的履帶起重機的模型。
筆者采用一個約束轉(zhuǎn)動關節(jié)、一個虛擬連桿和一個移動關節(jié)等效起升繩,使履帶起重機模型具有吊裝過程中始終豎直并可變長的特性;在此基礎上給出其正向運動學和一種偽解析的逆向運動學求解方法,使得能快速根據(jù)吊鉤位姿求得起重機吊裝狀態(tài);建立了吊裝路徑規(guī)劃模型,給出了距離度量定義、路徑長度定義、狀態(tài)轉(zhuǎn)移方程等基于隨機采樣路徑規(guī)劃方法所需的幾個基本操作;最后,用仿真實驗驗證了履帶起重機模型和路徑規(guī)劃數(shù)學模型的有效性。
研究結(jié)果表明:
(1)采用虛擬連桿抽象表達履帶起重機的起升繩部件,符合起升繩的運動特性;虛擬連桿的水平軸轉(zhuǎn)動關節(jié)與臂架變幅關節(jié)形成一種幾何約束,令其成為一個被動關節(jié),可時刻保持起升繩的豎直效果,穩(wěn)定性較好;
(2)在仿真環(huán)境下,履帶起重機的3組不同作業(yè)任務均可順利完成,可以滿足起重機吊裝路徑規(guī)劃任務的工作要求。
筆者在建立履帶起重機模型的時候,并未考慮基本動作的驅(qū)動方式,因此,得到的路徑還需要做進一步處理,將其轉(zhuǎn)化為驅(qū)動空間的輸入量,才能控制驅(qū)動器,使起重機沿著所得路徑運動。
在下一步的工作中,筆者將研究在驅(qū)動空間的建模,并把驅(qū)動方式融入到路徑規(guī)劃過程中。