高國琴,韓 瀅
(江蘇大學(xué) 電氣信息工程學(xué)院,江蘇 鎮(zhèn)江 212013)
目前,機(jī)器人在水果分揀中的應(yīng)用越來越廣泛,而并聯(lián)機(jī)構(gòu)具有結(jié)構(gòu)穩(wěn)定、精度高、動態(tài)性能好等優(yōu)點(diǎn),因此研制了一種水果分揀并聯(lián)機(jī)器人。水果分揀并聯(lián)機(jī)器人分揀水果時,末端執(zhí)行器的位姿反映了機(jī)器人的運(yùn)動狀態(tài)且對實(shí)現(xiàn)閉環(huán)控制有重要意義,因此對末端位姿的實(shí)時檢測是成功抓取并分揀水果的前提。
現(xiàn)有位姿檢測方法中,雙目視覺末端位姿檢測具有適用性強(qiáng)、性價比高等優(yōu)點(diǎn),適用于難以直接檢測的多運(yùn)動自由度并聯(lián)機(jī)器人末端位姿檢測[1]。然而并聯(lián)機(jī)器人由多支路構(gòu)成,機(jī)構(gòu)復(fù)雜,在雙目視覺成像中末端執(zhí)行器易受到機(jī)構(gòu)自身支路的遮擋,導(dǎo)致雙目視覺盲區(qū)末端位姿檢測錯誤。針對雙目視覺檢測盲區(qū)問題,有研究采用多目相機(jī)獲取球形視野,消除視覺盲區(qū),并應(yīng)用于電動輪椅的安全避障和手勢識別[2],但該方法應(yīng)用于并聯(lián)機(jī)器人末端位姿檢測時存在相機(jī)標(biāo)定困難和多幅圖像難以實(shí)現(xiàn)高準(zhǔn)確率匹配問題;有研究采用一對廣角魚眼鏡頭擴(kuò)大視野范圍,但該方法應(yīng)用于并聯(lián)機(jī)器人末端位姿檢測時圖像邊緣畸變較大,導(dǎo)致立體匹配產(chǎn)生較大誤差[3]。因此,上述研究應(yīng)用于水果分揀并聯(lián)機(jī)器人末端位姿檢測不僅對硬件要求高,同時會帶來后續(xù)圖像處理難度。
為解決雙目視覺盲區(qū)末端位姿錯誤檢測的問題,考慮采用運(yùn)動學(xué)正解得到末端位姿,然而并聯(lián)機(jī)器人各部件的加工制造誤差、裝配過程中產(chǎn)生的誤差、因重力在不同位形下的變形誤差等,均會造成運(yùn)動學(xué)模型建立不精確,進(jìn)而導(dǎo)致基于運(yùn)動學(xué)模型求解出的運(yùn)動學(xué)正解存在較大誤差,且該誤差難以用一個準(zhǔn)確的數(shù)學(xué)模型來描述[4]。RBF神經(jīng)網(wǎng)絡(luò)(RBFNN)具有較強(qiáng)的預(yù)測和泛化能力,適用于水果分揀并聯(lián)機(jī)器人末端位姿檢測的實(shí)時誤差補(bǔ)償。但RBFNN在進(jìn)行樣本訓(xùn)練時,存在權(quán)值隨機(jī)選取而引起的預(yù)測精度不高問題,因此需要對權(quán)值進(jìn)行優(yōu)化以提高其預(yù)測精度[5]。針對這一問題,國內(nèi)有研究提出GWO算法優(yōu)化RBFNN權(quán)值并應(yīng)用于模擬電路故障診斷[6];國外有研究提出一種GWO算法優(yōu)化RBFNN的油水相對滲透率預(yù)測模型,并與PSO(粒子群)、GA(遺傳)和DE(差分進(jìn)化)算法進(jìn)行對比,驗(yàn)證了GWO算法優(yōu)化RBFNN權(quán)值的優(yōu)越性[7]。然而上述方法應(yīng)用于并聯(lián)機(jī)器人末端位姿誤差補(bǔ)償時,GWO算法易出現(xiàn)早熟收斂,致使網(wǎng)絡(luò)預(yù)測精度不高。為解決這一問題,提出一種GWO算法和LM算法混合優(yōu)化RBFNN權(quán)值的方法,并將混合優(yōu)化的RBFNN應(yīng)用于視覺盲區(qū),通過對運(yùn)動學(xué)正解進(jìn)行誤差補(bǔ)償以提高末端位姿檢測精度。
水果分揀并聯(lián)機(jī)器人機(jī)構(gòu)原型如圖1所示,該機(jī)構(gòu)主要由靜平臺、主(輔)動平臺和連接動、靜平臺的四組支鏈組成。其中,靜平臺上安裝有伺服電機(jī)、減速器和雙目相機(jī),每條支鏈都由主動臂和從動臂組成,主動臂與減速器通過漲緊套固定連結(jié)。利用與減速器配接的伺服電機(jī)實(shí)現(xiàn)主動臂轉(zhuǎn)動,從而實(shí)現(xiàn)末端執(zhí)行器的三自由度平動和繞豎直軸轉(zhuǎn)動[8]。
圖1 水果分揀并聯(lián)機(jī)器人
為便于運(yùn)動學(xué)正解求解,將并聯(lián)機(jī)器人的主體機(jī)構(gòu)—Cross-IV機(jī)械手簡化為圖2所示結(jié)構(gòu)。
圖2 Cross-IV機(jī)械手結(jié)構(gòu)簡圖
如圖2所示,Cross-IV機(jī)械手的動平臺分為主平臺和輔平臺,將主平臺和輔平臺分別簡化為質(zhì)點(diǎn)P1和P2,P2為標(biāo)定板中心點(diǎn),建立參考坐標(biāo)系O-xyz,原點(diǎn)靜平臺中心,則點(diǎn)P2在該坐標(biāo)系中的位置矢量r可表示為:
(1)
式中,εi=1,3=0,εi=2,4=1;ei表示O到Ai的向量,|ei|表示動平臺與靜平臺的內(nèi)切圓半徑差,Xi=(Xi1,Xi2,…,Xis);γi表示靜平臺結(jié)構(gòu)角,γi=(i-1)π/2;l1,l2,ui,wi分別表示支鏈i的主動臂和從動臂的桿長與單位矢量,其中,ui=(cosγicosθisinγicosθi-sinθi)T,θi表示主動臂i(i=1,2,3,4)的轉(zhuǎn)角。
將式(1)改寫為:
(2)
同時兩端點(diǎn)乘各自的轉(zhuǎn)置,得:
(3)
展開公式(3)得:
x2+y2-2(e+l1cosθi)(xcosγi+ysinγi)+
(4)
公式(4)展開得:
x2-2xecosγi+e2cos2γi-2l1xcosγicosθi+
2yesinγi+e2sin2γi-2l1ysinγicosθi+
(5)
根據(jù)θi(i=1,2,3,4)即可求出點(diǎn)P2的位置(x,y,z)和s。將s代入式(6)求出繞Z軸的轉(zhuǎn)角γ:
γ=(2π/p)s
(6)
為解決RBFNN對視覺盲區(qū)的運(yùn)動學(xué)正解進(jìn)行誤差補(bǔ)償時存在的預(yù)測精度不高問題,需對其網(wǎng)絡(luò)權(quán)值進(jìn)行優(yōu)化。GWO算法具有較強(qiáng)的全局搜索能力,實(shí)現(xiàn)簡單且收斂速度快[9],但其優(yōu)化RBFNN權(quán)值時存在因早熟收斂而引起的網(wǎng)絡(luò)預(yù)測精度不高問題。針對該問題,提出一種GWO算法和LM算法混合優(yōu)化RBFNN權(quán)值方法,不僅能避免GWO算法單獨(dú)優(yōu)化RBFNN權(quán)值時出現(xiàn)的早熟收斂問題,同時能利用GWO算法的全局優(yōu)化性能和LM算法的局部優(yōu)化性能提高RBFNN的預(yù)測精度。GWO算法和LM算法混合優(yōu)化RBFNN權(quán)值的過程如下:
1) 建立RBFNN,設(shè)置測試誤差閾值ε,阻尼因子μ,阻尼系數(shù)β,最大迭代次數(shù)K,初始迭代次數(shù)k=0;
2) 最近鄰聚類算法確定RBFNN基函數(shù)的中心、寬度和初始權(quán)值w;
3) 輸入權(quán)值構(gòu)建新的RBFNN;
4) 計算網(wǎng)絡(luò)目標(biāo)誤差函數(shù)E(x);
5) 計算雅克比矩陣J;
6) 計算權(quán)值向量調(diào)整值Δw并進(jìn)行權(quán)值更新wk+1=wk+Δw;
7) 判斷是否E(w)<ε,滿足則結(jié)束訓(xùn)練,否則執(zhí)行步驟8);
8) 計算E(wk+1),判斷是否E(wk+1) 9) 初始化灰狼種群,最大迭代次數(shù)T,初始化參數(shù)a、A、C; 10) 計算種群內(nèi)每個個體的適應(yīng)度值,確定α、β、δ灰狼; 11) 在定義域內(nèi)隨機(jī)產(chǎn)生α灰狼、β灰狼、δ灰狼的位置,并計算其余灰狼ω位置,更新參數(shù)a、A、C; 12) 判斷是否達(dá)到最大迭代次數(shù)或精度,若達(dá)到,執(zhí)行步驟3),否則執(zhí)行步驟10)。 具體權(quán)值優(yōu)化流程圖如圖3所示。 圖3 GWO算法和LM算法混合優(yōu)化RBFNN權(quán)值流程圖 GWO算法通過模擬自然界中灰狼尋找、包圍和攻擊獵物等狩獵機(jī)制的過程來完成優(yōu)化工作。如圖4所示,將灰狼族群劃分為4個等級,分別為最優(yōu)灰狼α,次優(yōu)灰狼β、第三優(yōu)灰狼δ和普通灰狼ω[10],在追擊獵物過程中,由α、β、δ灰狼進(jìn)行獵物追捕,而普通灰狼ω跟隨灰狼α、β、δ進(jìn)行獵物圍捕,獵物的位置則是問題的最優(yōu)解。 圖4 灰狼族群等級制度結(jié)構(gòu)圖 定義在S維搜索空間內(nèi)第i只狼的位置為Xi=(Xi1,Xi2,…,Xis),其中(i=1,2,…,N),第i只狼與獵物間的距離為Di,則灰狼追捕獵物的行為描述如下: Xi(t+1)=XP(t)-Ai·Di (7) Di=|Ci·XP-Xi| (8) 式中,t為迭代次數(shù),X(t)表示第t代灰狼個體當(dāng)前的位置,XP(t)為第t代獵物的位置;Ai為收斂因子,C表示向量系數(shù),且: Ai=2ar1-a (9) Ci=2r2 (10) 式中,a隨著迭代次數(shù)t的增加從2線性遞減至0;r1,r2為[0,1]內(nèi)的隨機(jī)數(shù)。 定義灰狼族群向獵物追捕過程中,灰狼個體的位置向量更新方式為: Dα=|C1·Xα(t)-Xω(t)| (11) Dβ=|C2·Xβ(t)-Xω(t)| (12) Dδ=|C3·Xδ(t)-Xω(t)| (13) X1=Xα-A1·Dα (14) X2=Xβ-A2·Dβ (15) X3=Xδ-A3·Dδ (16) Xω(t+1)=(X1+X2+X3)/3 (17) 式中,Xω(t+1)表示灰狼個體更新后的位置向量。 圖5為說明上述公式的灰狼位置更新機(jī)制原理圖,最優(yōu)灰狼α、次優(yōu)灰狼β和第三優(yōu)灰狼δ對獵物的位置進(jìn)行追蹤,普通灰狼ω以此為參考在獵物周圍隨機(jī)更新位置,直到獵物在灰狼α、β或δ的隨機(jī)圓內(nèi)停止更新[11]。 圖5 灰狼位置更新原理圖 LM算法是梯度下降法和高斯-牛頓法相結(jié)合的快速數(shù)值優(yōu)化算法,其局部搜索能力強(qiáng),具有局部快速收斂特性[12]。根據(jù)LM算法的基本思想,設(shè)ωk∈Rn表示經(jīng)過第k次迭代后的網(wǎng)絡(luò)權(quán)值向量,則新的權(quán)值向量ωk+1可根據(jù)下面的公式求得[13]: ωk+1=ωk+Δω (18) Δω=-[JT(ω)J(ω)+μI]-1JT(ω)e(ω) (19) 式(19)中,J(ω)為Jacobi矩陣,e(ω)=(e1,e2,…eN)T表示誤差,I為單位矩陣,n為網(wǎng)絡(luò)權(quán)值數(shù)量;μ為阻尼因子。 設(shè)誤差函數(shù)為: (20) 其中:t,o分別為網(wǎng)絡(luò)各輸出層的實(shí)際輸出和期望輸出。 首先在非視覺盲區(qū)采樣,然后進(jìn)行RBFNN訓(xùn)練,訓(xùn)練中采用GWO算法和LM算法混合優(yōu)化網(wǎng)絡(luò)權(quán)值,將訓(xùn)練好的混合優(yōu)化RBFNN用于視覺盲區(qū)末端位姿檢測,通過對運(yùn)動學(xué)正解進(jìn)行誤差補(bǔ)償以提高末端位姿檢測精度。 水果分揀并聯(lián)機(jī)器人的工作空間較小且RBFNN擁有較強(qiáng)的泛化能力,因此在非視覺盲區(qū)進(jìn)行采樣。樣本包括運(yùn)動學(xué)正解和視覺檢測的末端位姿,其中運(yùn)動學(xué)正解為RBFNN訓(xùn)練的輸入樣本,視覺檢測的末端位姿與運(yùn)動學(xué)正解的差值為RBFNN訓(xùn)練的輸出樣本。 為保證混合優(yōu)化RBFNN的輸入與輸出在[0,1]之間,對訓(xùn)練樣本[Xo,Yo]進(jìn)行歸一化處理,即: (21) (22) 式中,xoi,min,xoi,max,yoi,min與yoi,max分別為[Xo,Yo]中xoi與yoi的最小值與最大值。 則樣本學(xué)習(xí)后還原得到的網(wǎng)絡(luò)輸出yi,out為: yi,out=yoi,min+yi(yoi,max-yoi,min) (23) 首先通過最近鄰聚類算法[14]確定RBFNN的徑向基函數(shù)中心及初始權(quán)值,然后采用GWO算法和LM算法混合優(yōu)化RBFNN權(quán)值,算法切換可通過精度或最大迭代步數(shù)實(shí)現(xiàn)。通過互以對方訓(xùn)練結(jié)果作為自己的初始群體或初始值,反復(fù)交替訓(xùn)練,直到達(dá)到所設(shè)置的測試誤差閾值或達(dá)到訓(xùn)練的最大次數(shù)時輸出最優(yōu)權(quán)值。 混合優(yōu)化的RBFNN訓(xùn)練完成后,將其用于視覺盲區(qū)的運(yùn)動學(xué)正解誤差補(bǔ)償,以提高視覺盲區(qū)的末端位姿檢測精度。 實(shí)驗(yàn)平臺包括硬件平臺和軟件平臺。硬件平臺:操作系統(tǒng)Windows7,處理器 Intel(R) Core(TM) i7-3770,主頻3.40 GHz,內(nèi)存8 GB。軟件平臺:MATLAB、VC++。 實(shí)驗(yàn)方法:為驗(yàn)證本文提出的GWO算法和LM混合優(yōu)化RBFNN權(quán)值方法相比于GWO算法優(yōu)化RBFNN權(quán)值方法以及未優(yōu)化RBFNN權(quán)值方法的有效性,進(jìn)行三組實(shí)驗(yàn)對比。在非視覺盲區(qū)采集300組樣本數(shù)據(jù),將運(yùn)動學(xué)正解求得的末端位姿作為RBFNN訓(xùn)練的輸入樣本,視覺檢測的末端位姿與運(yùn)動學(xué)正解的差值作為輸出樣本。取2/3作為訓(xùn)練樣本,1/3作為測試樣本,分別采用未優(yōu)化的RBFNN、GWO算法優(yōu)化的RBFNN、GWO算法和LM算法混合優(yōu)化的RBFNN進(jìn)行樣本訓(xùn)練和測試,并依據(jù)末端位姿(x,y,z,γ)各分量的測試誤差對3種方法進(jìn)行比較分析。 在視覺盲區(qū)進(jìn)行末端位姿檢測實(shí)驗(yàn),首先通過運(yùn)動學(xué)正解得到末端位姿,然后采用混合優(yōu)化的RBFNN對運(yùn)動學(xué)正解進(jìn)行末端位姿誤差補(bǔ)償,將補(bǔ)償前的末端位姿和補(bǔ)償后的末端位姿分別與激光跟蹤儀Leica AT901和電子羅盤Honeywell-HMR3100測得的實(shí)際末端位姿進(jìn)行對比,以驗(yàn)證所提出的視覺盲區(qū)末端位姿檢測方法的有效性。 實(shí)驗(yàn)結(jié)果和分析:針對相同樣本,采用未優(yōu)化的RBFNN、GWO算法優(yōu)化的RBFNN、GWO算法和LM算法混合優(yōu)化的RBFNN進(jìn)行訓(xùn)練,所得測試樣本誤差分別如圖6~8所示。 圖6 未優(yōu)化RBFNN的測試樣本誤差 圖7 GWO算法優(yōu)化RBFNN的測試樣本誤差 圖8 GWO算法和LM算法混合優(yōu)化RBFNN的測試樣本誤差 由圖6~8分析得,GWO算法和LM算法混合優(yōu)化RBFNN的測試誤差明顯低于未優(yōu)化的RBFNN和GWO算法優(yōu)化的RBFNN,說明所提出的混合優(yōu)化RBFNN的預(yù)測效果更優(yōu)。 分別采用基于運(yùn)動學(xué)正解的末端位姿檢測方法、運(yùn)動學(xué)正解結(jié)合混合優(yōu)化RBFNN誤差補(bǔ)償?shù)哪┒宋蛔藱z測方法完成水果分揀并聯(lián)機(jī)器人視覺盲區(qū)末端位姿檢測實(shí)驗(yàn),檢測誤差如圖9~10所示,圖9為基于運(yùn)動學(xué)正解的末端位姿檢測誤差,圖10為運(yùn)動學(xué)正解結(jié)合混合優(yōu)化RBFNN誤差補(bǔ)償?shù)哪┒宋蛔藱z測誤差,表2為檢測誤差統(tǒng)計結(jié)果。 圖9 基于運(yùn)動學(xué)正解的末端位姿檢測誤差 圖10 運(yùn)動學(xué)正解結(jié)合混合優(yōu)化RBFNN誤差補(bǔ)償?shù)哪┒宋蛔藱z測誤差 由表1分析得,與基于運(yùn)動學(xué)正解的末端位姿檢測方法相比,運(yùn)動學(xué)正解結(jié)合混合優(yōu)化RBFNN誤差補(bǔ)償?shù)哪┒宋蛔藱z測方法將視覺盲區(qū)末端位姿(x,y,z,γ)分量x誤差的平均絕對值和標(biāo)準(zhǔn)差降低了54.4%和52.9%;y誤差的平均絕對值和標(biāo)準(zhǔn)差降低了67.7%和62.8%;z誤差的平均絕對值和標(biāo)準(zhǔn)差降低了54.7%和51.9%;γ誤差的平均絕對值和標(biāo)準(zhǔn)差降低了52.9%和58.8%。 表1 視覺盲區(qū)末端位姿檢測誤差結(jié)果統(tǒng)計 為解決水果分揀并聯(lián)機(jī)器人雙目視覺盲區(qū)的末端位姿錯誤檢測問題,并提高視覺盲區(qū)的末端位姿檢測精度,提出一種運(yùn)動學(xué)正解結(jié)合混合優(yōu)化RBFNN誤差補(bǔ)償?shù)哪┒宋蛔藱z測方法。主要結(jié)論如下: 1) 針對GWO算法優(yōu)化RBFNN權(quán)值時易陷入早熟收斂而引起的網(wǎng)絡(luò)預(yù)測精度不高問題,提出了一種GWO算法和LM算法混合優(yōu)化RBFNN權(quán)值方法,并將混合優(yōu)化的RBFNN應(yīng)用于水果分揀并聯(lián)機(jī)器人雙目視覺盲區(qū)末端位姿檢測,通過對運(yùn)動學(xué)正解進(jìn)行誤差補(bǔ)償,不僅解決了并聯(lián)機(jī)器人受機(jī)構(gòu)支路遮擋造成的視覺盲區(qū)末端位姿錯誤檢測問題,同時提高了視覺盲區(qū)的末端位姿檢測精度。 2) 將基于運(yùn)動學(xué)正解的末端位姿檢測方法,與運(yùn)動學(xué)正解結(jié)合混合優(yōu)化RBFNN誤差補(bǔ)償?shù)哪┒宋蛔藱z測方法進(jìn)行實(shí)驗(yàn)對比,實(shí)驗(yàn)結(jié)果表明運(yùn)動學(xué)正解結(jié)合混合優(yōu)化RBFNN誤差補(bǔ)償?shù)哪┒宋蛔藱z測方法將視覺盲區(qū)末端位姿(x,y,z,γ)分量x,y,z,γ的誤差平均絕對值分別降低了54.4%、67.7%、54.7%和52.9%,誤差標(biāo)準(zhǔn)差分別降低了52.9%、62.8%、51.9%和58.8%。因此,所提出的末端位姿檢測方法提高了視覺盲區(qū)水果分揀并聯(lián)機(jī)器人的末端位姿檢測精度。2.1 GWO算法
2.2 LM算法
3 運(yùn)動學(xué)正解結(jié)合混合優(yōu)化RBFNN誤差補(bǔ)償?shù)哪┒宋蛔藱z測
3.1 RBFNN的訓(xùn)練樣本
3.2 GWO算法和LM算法混合優(yōu)化RBFNN權(quán)值
3.3 運(yùn)動學(xué)正解誤差補(bǔ)償
4 實(shí)驗(yàn)與結(jié)果分析
5 結(jié)束語