摘 要:針對視覺機(jī)械臂系統(tǒng)整體精度不高、不易部署、校準(zhǔn)成本高的問題,提出了具有分層優(yōu)化機(jī)制的自適應(yīng)多精英引導(dǎo)的復(fù)合差分進(jìn)化算法(AMECoDEs-LO)。首先,對機(jī)械臂運動學(xué)模型和手眼標(biāo)定外參模型進(jìn)行系統(tǒng)集成;然后,以AMECoDEs算法為基礎(chǔ)對種群中階段性數(shù)據(jù)進(jìn)行主成分分析,按照當(dāng)前代各維度向量支配度的不同,劃分參數(shù)優(yōu)化的優(yōu)先級,以參數(shù)降維優(yōu)化的思想實現(xiàn)了對種群收斂精度和速度的隱式引導(dǎo),在仿真和真實環(huán)境下與現(xiàn)有的一流演化算法進(jìn)行了對比驗證;最后針對視覺傳感器對環(huán)境噪聲敏感問題,加入不同強(qiáng)度的高斯白噪聲驗證系統(tǒng)的魯棒性。實驗結(jié)果表明,該算法精度高、收斂速度快、魯棒性好且不需要額外的校準(zhǔn)儀器,可用于視覺機(jī)械臂的快速部署。
關(guān)鍵詞:視覺機(jī)械臂;分層優(yōu)化;主成分分析;魯棒性
中圖分類號:TP242 文獻(xiàn)標(biāo)志碼:A
文章編號:1001-3695(2022)11-028-3378-07
doi:10.19734/j.issn.1001-3695.2022.03.0187Joint system calibration of vision-based manipulators guided by
layered optimization mechanisms
Mao Hui1,Chen Lijia2,F(xiàn)an Xianbojun2,Wang Min2,Wang Chenlu2,Dong Menghao2
(1.Kaifeng Branch of China Unicom,Kaifeng Henan 475000,China;2.School" of" Physics" amp;" Electronics,Henan" University,Kaifeng Henan 475000,China)
Abstract:In response to the low accuracy,poor deployment and high calibration costs of vision-based manipulator systems,this paper proposed the adaptive multiple-elites-guided composite differential evolution algorithm with a layered optimization mechanism(AMECoDEs-LO) and a joint system calibration strategy.Firstly,it integrated the kinematic model of the robotic arms and the hand-eye calibration external model systematically.Then,based on AMECoDEs algorithm,it performed principal component analysis on the phased data in the population.It divided parameter optimization prioritization according to the degree of dominance of each dimensional vector in the current generation,and achieved implicit guidance on the accuracy and speed of population convergence with the idea of parametric dimensionality reduction optimization.It was validated against existing first-class evolutionary algorithms in simulated and real environments.Finally,it verified the system’s robustness by adding Gaussian white noise with different intensities to address the sensitivity of the vision sensor to environmental noise.Experimental results show that the algorithm has the advantages of high calibration accuracy,fast convergence,good robustness and no additional calibration instruments are required for the calibration of the vision-based manipulator system,which can be used for the rapid deployment of vision-based manipulators.
Key words:vision-based manipulators;layered optimization;principal component analysis;robustness
基金項目:國家自然科學(xué)基金資助項目(61901158);河南省科技廳重點研發(fā)與推廣專項(202102210121);河南省科技發(fā)展計劃項目(科技攻關(guān))(212102210500);開封市重大專項(20ZD014);開封市科技項目(2001016);開封平煤新型炭材料科技有限公司(2021410202000003)
作者簡介:毛卉(1979-),女,河南開封人,工程師,主要研究方向為演化算法;陳立家(1979-),男(通信作者),河南開封人,副教授,博士,主要研究方向為智能系統(tǒng)(chlj@henu.edu.cn);范賢博俊(1994-),男,河南義馬人,碩士,主要研究方向為演化算法、自動化系統(tǒng)、機(jī)器人;王敏(1997-),女,山東菏澤人,碩士,主要研究方向為神經(jīng)網(wǎng)絡(luò)、機(jī)器人;王晨露(1995-),女,河南鄭州人,碩士,主要研究方向為圖像處理、演化算法;董孟豪(1997-),男,河南周口人,碩士研究生,主要研究方向為機(jī)器視覺、機(jī)器人.
0 引言
智能機(jī)器人的發(fā)展對適應(yīng)全球制造業(yè)的整體產(chǎn)業(yè)升級具有重要意義,受到了國內(nèi)外學(xué)者的廣泛關(guān)注[1]。目前,機(jī)械臂在工業(yè)場合的應(yīng)用離不開人工示教,一旦周圍環(huán)境發(fā)生改變,機(jī)械臂將不能在當(dāng)前環(huán)境完成作業(yè),需要復(fù)雜的測量、分析和驗證,無法完成機(jī)械臂的快速部署,增加了生產(chǎn)制造成本。基于視覺傳感器的機(jī)械臂系統(tǒng)可以快速完成環(huán)境識別、自主抓取[2],然而視覺機(jī)械臂系統(tǒng)精度不高。
通常情況下,視覺機(jī)械臂的誤差往往在于機(jī)械臂模型和相機(jī)外參兩個方面:
a)機(jī)械臂運動學(xué)模型方面。2009年Wang等人[3]使用遺傳算法優(yōu)化機(jī)械臂運動學(xué)模型,避免了傳統(tǒng)運動學(xué)雅可比矩陣的逆運算。2016年Lyu等人[4]提出了一種基于雙神經(jīng)網(wǎng)絡(luò)近似結(jié)構(gòu)的動態(tài)規(guī)劃算法,實現(xiàn)了動態(tài)連續(xù)時間非線性系統(tǒng)的自適應(yīng)最優(yōu)控制。2018年Yang等人[5]針對Baxter robot將參數(shù)辨識誤差整合到辨識算法中,利用動態(tài)規(guī)劃算法使得機(jī)械臂運動學(xué)參數(shù)在有限時間內(nèi)收斂于真實值,提高了計算效率。
b)相機(jī)外參方面。Bai等人[6]通過使用三個激光傳感器配合單目相機(jī),提出了一種基于混合視覺檢測的機(jī)器人手眼關(guān)系校準(zhǔn)方法。2020年Hua等人[7]針對傳統(tǒng)手眼轉(zhuǎn)換矩陣解的局限性和不穩(wěn)定性,使用神經(jīng)網(wǎng)絡(luò)訓(xùn)練的方法將相機(jī)的非線性畸變補(bǔ)償至手眼標(biāo)定模型。
上述方法存在著不同程度的不足。對于視覺機(jī)械臂系統(tǒng)來說,相機(jī)和機(jī)械臂是兩個完全獨立的系統(tǒng),即便可以通過高精度儀器將機(jī)械臂運動學(xué)模型精度校準(zhǔn)到極高的程度,但受限于相機(jī)不穩(wěn)定的非線性誤差因素影響,視覺機(jī)械臂整體精度不高。文獻(xiàn)[8]指出單一模塊分別校準(zhǔn)后整合到系統(tǒng)會引入新的誤差,造成誤差傳播現(xiàn)象,同時提出一種全自動校準(zhǔn)方法,對機(jī)械臂運動學(xué)模型和手眼標(biāo)定外參矩陣同時求解。文獻(xiàn)[9]利用安裝在機(jī)器人末端的視覺傳感器評估機(jī)器人運動學(xué)參數(shù)誤差,該方法通過定義一個機(jī)器人工具中心點(TCP),基于固定點約束的方法,同時優(yōu)化運動學(xué)和TCP位置參數(shù)誤差。
在上述工作的激勵下,本文提出了一種分層優(yōu)化機(jī)制引導(dǎo)的視覺機(jī)械臂聯(lián)合系統(tǒng)校準(zhǔn)策略,改進(jìn)之處包括系統(tǒng)模型和優(yōu)化算法兩個方面。聯(lián)合模型集成了機(jī)械臂運動學(xué)模型和手眼標(biāo)定外參模型,不再對模塊單獨優(yōu)化并整合至整個系統(tǒng),避免了額外的測量手段參與,降低了部署成本,實現(xiàn)了校準(zhǔn)全程的自動化。在AMECoDEs算法[10]框架的基礎(chǔ)上借鑒主成分分析(PCA)的思想,通過挖掘種群中的隱藏信息,對待優(yōu)化參數(shù)降維處理,設(shè)計了分層優(yōu)化機(jī)制,提出了新型優(yōu)化算法AMECoDEs-LO,提高了系統(tǒng)辨識的收斂速度和精度。通過仿真和真實環(huán)境驗證了所提系統(tǒng)模型和算法的有效性,并將所提算法與粒子群算法(PSO)、遺傳算法(GA)、差分算法(DE)、種群集成差分算法(IMPEDE)[11]、基于親本選擇框架的差分算法(DESPS)[12]、復(fù)合差分算法(AMECoDEs)進(jìn)行對比。另外,針對相機(jī)容易受外部環(huán)境影響,引起定位性能不穩(wěn)定的問題,設(shè)計實驗驗證了魯棒性。結(jié)果表明,AMECoDEs-LO算法具有更快的收斂速度和更高的精度。
1 系統(tǒng)聯(lián)合建模
視覺機(jī)械臂系統(tǒng)中存在著機(jī)械臂連桿誤差、手眼標(biāo)定外參誤差、相機(jī)定位誤差等,這些非線性誤差對精準(zhǔn)的求解系統(tǒng)模型造成了困難,而系統(tǒng)辨識方法可以降低非線性誤差的影響。
圖1顯示了本文系統(tǒng)聯(lián)合建模的流程。針對視覺機(jī)械臂系統(tǒng)精度校準(zhǔn)問題,采集伺服電機(jī)轉(zhuǎn)角和對應(yīng)的機(jī)械臂末端相機(jī)坐標(biāo)作為參數(shù)辨識系統(tǒng)的輸入,對機(jī)械臂運動學(xué)模型參數(shù)和手眼標(biāo)定外參同時優(yōu)化,通過修改模型參數(shù)提高系統(tǒng)整體精度,優(yōu)化算法選用新型的AMECoDEs-LO算法。數(shù)據(jù)采集和參數(shù)優(yōu)化階段全自動,沒有人工和額外測量手段的參與。
通過運動學(xué)模型可以建立機(jī)械臂連桿之間的關(guān)系。D-H法是一種常見的建模方法,其原理是在每個關(guān)節(jié)節(jié)點建立坐標(biāo)系,通過包含四種參數(shù)的齊次變換矩陣來實現(xiàn)相鄰連桿坐標(biāo)系的轉(zhuǎn)換,多次連乘齊次坐標(biāo)變換矩陣,就可以建立首尾坐標(biāo)系的關(guān)系。然而,由于D-H法不能表示連桿關(guān)于y軸的運動且在樹型機(jī)械臂結(jié)構(gòu)的建模上存在局限性,本次使用改進(jìn)的D-H方法[13]。如圖2所示,改進(jìn)的D-H方法相鄰坐標(biāo)系之間的參數(shù)變換順序相較傳統(tǒng)D-H方法完全相反。
相鄰連桿之間的空間變換關(guān)系為
可推導(dǎo)為
其中:c代表cos,s代表sin。依次連乘變換矩陣,即可得到機(jī)械臂底座到末端之間總的轉(zhuǎn)換矩陣:
其形式如下:
式(4)中前三列表示末端坐標(biāo)系的姿態(tài),第四列代表末端在底座坐標(biāo)系的位置,最后一行目的是為了構(gòu)造齊次矩陣,機(jī)械臂正向運動學(xué)可表示為式(5)。當(dāng)給定一組關(guān)節(jié)轉(zhuǎn)角時,必定會得到一個確定的機(jī)械臂末端位姿。
相機(jī)坐標(biāo)系和世界坐標(biāo)系的轉(zhuǎn)換通常使用標(biāo)定板采集圖片,求解AX=XB問題確定手眼轉(zhuǎn)換矩陣。在本系統(tǒng)模型中無須使用標(biāo)定板,通過參數(shù)化旋轉(zhuǎn)平移矩陣建立空間約束關(guān)系,兩個坐標(biāo)系間的旋轉(zhuǎn)關(guān)系可表示為
其中:λ、 β、γ分別為世界坐標(biāo)系中的坐標(biāo)點Xworld(Px,Py,Pz)繞x、y、z軸旋轉(zhuǎn)的角度。對于平移關(guān)系有
其中:dx、dy、dz表示世界坐標(biāo)系原點分別沿x、y、z軸平移的距離。世界坐標(biāo)中點Xworld和相機(jī)坐標(biāo)系中點Xcam存在如下關(guān)系:
聯(lián)合式(5)(8),聯(lián)合系統(tǒng)模型可以表示為式(9)。
如式(9)所示,在本次針對視覺機(jī)械臂聯(lián)合校準(zhǔn)的系統(tǒng)中。N自由度機(jī)械臂關(guān)節(jié)轉(zhuǎn)角和對應(yīng)的末端相機(jī)坐標(biāo)作為參數(shù)辨識系統(tǒng)的輸入,參數(shù)數(shù)量為4N+6的聯(lián)合系統(tǒng)模型作為待優(yōu)化問題的解,使用AMECoDEs-LO算法同時優(yōu)化所有參數(shù)。
2 AMECoDEs-LO算法
AMECoDEs在差分進(jìn)化算法的基礎(chǔ)上采用自適應(yīng)參數(shù)調(diào)整方法實現(xiàn)。算法中每個個體被兩種精英個體引導(dǎo),生成兩個候選解并進(jìn)一步選擇最優(yōu)解,有效降低了個體被局部最優(yōu)解誤導(dǎo)的概率。同時,算法引入了轉(zhuǎn)移機(jī)制(shift mechanism),以平衡收斂性和種群的多樣性。與單純的精英突變相比,它在防止早期收斂和停滯方面更為有效。但是,演化算法本質(zhì)上是一類基于隨機(jī)搜索的算法,在探索解空間的過程中具有一定的盲目性[14]。對視覺機(jī)械臂系統(tǒng)聯(lián)合模型的優(yōu)化存在收斂速度慢的問題。為保證精度的情況下進(jìn)一步提高收斂速度,引入PCA減少參數(shù)維度,分析并優(yōu)化算法搜索方向,從而加快收斂速度。
PCA是統(tǒng)計學(xué)中一種簡化數(shù)據(jù)集的方法,利用降維的思想,將多指標(biāo)問題轉(zhuǎn)換為少數(shù)幾個綜合指標(biāo),同時使用貢獻(xiàn)度來衡量主成分對數(shù)據(jù)集中蘊涵信息的保留程度。為了在保證種群多樣性的前提下,有導(dǎo)向性地提高算法的搜索效率和收斂精度,本文提出一種新型的AMECoDEs-LO算法,該算法采用PCA方法挖掘種群中具有代表性的隱藏信息,不斷地降維篩選出支配度較大的維度參數(shù)進(jìn)行分層優(yōu)化。
2.1 支配集篩選
對當(dāng)前階段種群中所有數(shù)據(jù)進(jìn)行主成分分析,按照各個主成分累積貢獻(xiàn)度大小降序排列并進(jìn)一步分析,將所有對主成分支配度較大的維度分量加入支配集。假設(shè)種群中每個個體包含D個分量,用向量X表示。100代個體為樣本數(shù)據(jù)集,對所有個體的D個維度分量進(jìn)行主成分分析,得到D個主成分Yi,其特征值為Ei,i∈[1,D]。Yi的貢獻(xiàn)度Ci和對應(yīng)的特征向量ui可分別表示為式(10)(11)。
則主成分與各維度分量之間關(guān)系可以表示為
貢獻(xiàn)度Ci表明了Yi所能表達(dá)的數(shù)據(jù)信息量,將D個貢獻(xiàn)度由大到小排列,計算主成分累積貢獻(xiàn)度:
挑選累計貢獻(xiàn)度大于T1的m個主成分,其中0lt;T1lt;1,這些主成分能夠表示當(dāng)前樣本數(shù)據(jù)集大于T1倍的信息量。為了降維確定最重要的分量,將這m個主成分的特征向量和貢獻(xiàn)度重新組成矩陣為
此時,Cigt;Ci+1,每個維度對主成分的貢獻(xiàn)不同,根據(jù)式(15)計算每個維度的重要性,定義支配度為
支配度gi表示第i維分量對這m個主成分的貢獻(xiàn),同時考慮到每個主成分對整個數(shù)據(jù)集的重要程度。將所有支配度大于T2的維度分量加入支配集,0lt;T2lt;1。其他分量構(gòu)成非支配集,完成一次支配集篩選。
2.2 支配集優(yōu)化
支配集篩選之后,種群個體的各維度分量被劃分到支配集P和非支配集Q中。支配集中的分量能夠在當(dāng)前階段更大程度地影響適應(yīng)度函數(shù)Fitness的變化。如圖3所示,支配集和非支配集劃分后,各自所含分量分布在個體中。個體編碼采用實數(shù)編碼,分為兩個部分,分別是D-H參數(shù)和手眼標(biāo)定外參。支配集分布在這兩部分之中。
定義三種狀態(tài)Ss、So、Sn分別對應(yīng)支配集篩選狀態(tài)、支配集優(yōu)化狀態(tài)和正常AMECoDEs優(yōu)化狀態(tài)。通過以上三種狀態(tài)的轉(zhuǎn)換,優(yōu)化支配集內(nèi)的維度分量。
首先,種群在AMECoDEs優(yōu)化100之后,基于當(dāng)前所有種群個體組成的數(shù)據(jù)集,進(jìn)入Ss篩選支配集狀態(tài)。確定支配集后,進(jìn)入So狀態(tài)進(jìn)行支配集的優(yōu)化。So狀態(tài)為了達(dá)到盡快收斂而不失精度的目標(biāo),以種群最優(yōu)個體為準(zhǔn)固定非支配集參數(shù)值。由于支配集能夠很大程度上表征當(dāng)前數(shù)據(jù)的信息量,即能夠近似表達(dá)解空間中適應(yīng)度函數(shù)的主體走向,所以收斂速度更快。So狀態(tài)下固定非支配集參數(shù),采用AMECoDEs原過程優(yōu)化支配集參數(shù)。
2.3 分層優(yōu)化機(jī)制
分層優(yōu)化策略的思想是在全局收斂的過程中按照算法的優(yōu)化進(jìn)度,動態(tài)地對所有維度參數(shù)按照支配集和非支配集進(jìn)行劃分。分層優(yōu)化是一個動態(tài)過程。Ss和So狀態(tài)在合適的條件下相互切換,達(dá)到穩(wěn)態(tài)后,進(jìn)入Sn狀態(tài),由AMECoDEs接管優(yōu)化過程。
為了避免算法頻繁進(jìn)行主成分分析,降低整體優(yōu)化效率的問題,AMECoDEs-LO算法在優(yōu)化過程中,通過Ss、So和Sn三種狀態(tài)控制分層優(yōu)化機(jī)制的進(jìn)入和跳出時機(jī)。定義趨平率Δf和切換率Δs,其中Δf表示當(dāng)前G代內(nèi)種群和上一代種群最優(yōu)個體適應(yīng)度函數(shù)值之比的平均值,Δs表示在G代之內(nèi)進(jìn)行種群主成分分析和支配集參數(shù)優(yōu)化操作之間切換的頻率。
圖4顯示了三種優(yōu)化狀態(tài)之間的切換。So狀態(tài)下,若Δf較大,說明支配集中的分量有繼續(xù)優(yōu)化空間,進(jìn)入AMECoDEs中繼續(xù)優(yōu)化,狀態(tài)不變;否則,當(dāng)Δs較大時,說明Ss和So切換頻繁已經(jīng)優(yōu)化到最終結(jié)果,則進(jìn)入Sn狀態(tài),當(dāng)Δs較小時,說明還有優(yōu)化潛力,進(jìn)入Ss狀態(tài)。整體來看,有優(yōu)化空間時,狀態(tài)Ss和So相互切換,當(dāng)陷入瓶頸時,進(jìn)入狀態(tài)Sn,開放所有參數(shù),回歸AMECoDEs優(yōu)化過程。其中,ε表示趨平率閾值,η表示狀態(tài)切換率閾值。
2.4 適應(yīng)度函數(shù)
為減小算法運行的負(fù)擔(dān),適應(yīng)度函數(shù)的選擇應(yīng)該在解決優(yōu)化問題的基礎(chǔ)上盡可能地簡單。對于本次聯(lián)合系統(tǒng)建模問題,使用相機(jī)坐標(biāo)系中機(jī)械臂末端坐標(biāo)(Cx,Cy,Cz)與算法計算的相機(jī)坐標(biāo)(X,Y,Z)之間的距離作為評價函數(shù),設(shè)計如下:
2.5 算法步驟
AMECoDEs-LO算法流程如圖5所示,具體步驟如下:
a)初始化種群,包括初始化大小為NP的種群、支配集P為空、包含所有維度參數(shù)的非支配集Q,設(shè)定趨平率閾值ε和切換率閾值η。設(shè)置主成分搜索階段為Ss。
b)當(dāng)適應(yīng)度函數(shù)值滿足全局最優(yōu)或到達(dá)給定迭代次數(shù),輸出全局最優(yōu)解,終止算法;否則,執(zhí)行AMECoDEs算法雙精英引導(dǎo)策略,更新參數(shù)。
c)判斷當(dāng)前優(yōu)化狀態(tài)。若為Ss,跳轉(zhuǎn)到d);若為So跳轉(zhuǎn)到e),若為Sn,跳轉(zhuǎn)到f)。
d)進(jìn)行支配集篩選,通過主成分分析計算種群中各個維度參數(shù)對整個數(shù)據(jù)域的支配度。若支配集中參數(shù)個數(shù)小于總參數(shù)個數(shù)且某維度參數(shù)存在支配度大于T2的情況,將該參數(shù)從Q轉(zhuǎn)入支配集P,同時更新狀態(tài)為So,然后進(jìn)入轉(zhuǎn)移機(jī)制;其他情況,直接進(jìn)入轉(zhuǎn)移機(jī)制。跳轉(zhuǎn)至b)。
e)固定非支配集Q中所有參數(shù)的值,進(jìn)入轉(zhuǎn)移機(jī)制,跳轉(zhuǎn)至b)。
f)開放支配集和非支配集中所有參數(shù),進(jìn)入轉(zhuǎn)移機(jī)制,跳轉(zhuǎn)至b)。
AMECoDEs-LO算法種群數(shù)量為NP,參數(shù)空間維度為D。在每次迭代過程中,b)中對種群中排名靠前的個體排序,該過程時間復(fù)雜度為O((NP)·log (NP));c)中判斷搜索階段遠(yuǎn)小于原算法轉(zhuǎn)移機(jī)制時間復(fù)雜度O(NP·D);d)中支配集篩選對種群中所有維度進(jìn)行主成分分析并排序,時間復(fù)雜度為O(D2);當(dāng)分層優(yōu)化陷入瓶頸開放所有參數(shù)時,步驟f)的時間復(fù)雜度小于O(NP·D)。綜上所述,當(dāng) log (NP)lt;lt;D時,AMECoDEs-LO算法每一代計算的時間復(fù)雜度為O(NP·D)。
3 實驗分析
首先通過仿真實驗分析AMECoDEs-LO算法最優(yōu)的超參配置,驗證求解聯(lián)合系統(tǒng)模型的可行性;然后在真實環(huán)境下驗證聯(lián)合系統(tǒng)方法的有效性;最后針對視覺傳感器受環(huán)境噪聲影響造成定位性能不準(zhǔn)確的問題,增加高斯白噪聲驗證算法和系統(tǒng)的魯棒性。
3.1 仿真實驗
使用MATLAB的Robotic Toolbox工具配置機(jī)械臂系統(tǒng)環(huán)境,五自由度機(jī)械臂仿真模型如圖6所示。數(shù)據(jù)采集階段給定機(jī)械臂D-H模型、手眼標(biāo)定外參模型(表1),采集過程中不加入任何強(qiáng)度的噪聲,隨機(jī)生成關(guān)節(jié)轉(zhuǎn)動范圍內(nèi)的100組關(guān)節(jié)角,通過式(9)獲取對應(yīng)的100組相機(jī)坐標(biāo);參數(shù)辨識系統(tǒng)的輸入包括機(jī)械臂關(guān)節(jié)轉(zhuǎn)角和該動作下對應(yīng)機(jī)械臂末端的相機(jī)坐標(biāo)。由于實驗使用的機(jī)械臂擁有5個自由度,所以待優(yōu)化參數(shù)的數(shù)量共計26個維度。最后,使用AMECoDEs-LO算法對所有待優(yōu)化參數(shù)進(jìn)行求解,即同時優(yōu)化D-H參數(shù)和手眼標(biāo)定外參。機(jī)械臂仿真模型如圖6所示。
3.1.1 超參數(shù)配置
AMECoDEs-LO 算法中種群的交叉率和變異率采用參數(shù)自適應(yīng)的方法實現(xiàn),可以在優(yōu)化進(jìn)程中自動調(diào)整到合適的值,不需要額外的調(diào)參步驟。本節(jié)對固定的參數(shù)進(jìn)行測試,測試對象包括趨平率閾值、切換率閾值和種群規(guī)模。
趨平率閾值和切換率閾值控制著分層優(yōu)化機(jī)制三種優(yōu)化狀態(tài)進(jìn)入的時機(jī)。測試中種群規(guī)模設(shè)置為100,兩種參數(shù)的不同組合情況如表2所示。結(jié)果顯示,趨平率閾值在0.9以上時算法的收斂性能更好。當(dāng)趨平率閾值在合理范圍之內(nèi)時,適當(dāng)增大切換率閾值可以提高收斂速度。綜合考慮收斂速度和精度兩個指標(biāo),建議設(shè)置趨平率閾值和切換率閾值為0.9和0.5。
種群規(guī)模(NP)反映了種群中個體的多樣性。NP過大,優(yōu)化算法的計算量增大,容易造成收斂緩慢;NP過小,種群中信息量不足,不利于最優(yōu)解的計算。圖7顯示了不同種群規(guī)模下算法的收斂情況,NP設(shè)置為100時,收斂性能最優(yōu)。
3.1.2 七種算法下結(jié)果對比
為了驗證AMECoDEs-LO算法在求解視覺機(jī)械臂系統(tǒng)模型問題上的優(yōu)勢,將它與GA、PSO、DE、DESPS、IMPEDE、AMECoDEs這些智能演化算法對比,對比算法超參數(shù)均為最優(yōu),本文算法和其余六種超參數(shù)不同的部分設(shè)置如下:趨平率閾值0.90、切換率閾值0.5。
七種算法的收斂情況如圖8所示,相較于其他演化算法,AMECoDEs-LO算法計算后的系統(tǒng)整體精度最優(yōu),達(dá)到了10-6mm量級。在算法優(yōu)化的前期,PCA對種群中所有信息進(jìn)行分析處理,增加了額外的運算量,算法前期的收斂情況略顯不足,在2 900代之前收斂緩慢。隨著分層優(yōu)化機(jī)制的進(jìn)行,算法的收斂速度加快,在之后的2 100代內(nèi)迅速完成收斂。在模型參數(shù)的優(yōu)化實驗中,算法的收斂精度這一指標(biāo)的優(yōu)先級要高于算法的收斂速度。因此,針對本次聯(lián)合系統(tǒng)模型優(yōu)化問題,使用AMECoDEs-LO算法相較其他六種演化算法更有優(yōu)勢。模型參數(shù)的優(yōu)化結(jié)果和表1標(biāo)稱值完全一致,驗證了D-H參數(shù)和手眼標(biāo)定外參同時優(yōu)化的可行性。
3.2 真實環(huán)境實驗
不同于仿真環(huán)境的是實際環(huán)境下視覺機(jī)械臂系統(tǒng)中存在非線性誤差的影響(相機(jī)定位誤差、計算誤差、機(jī)械臂模型誤差等)。為了驗證實際環(huán)境下聯(lián)合系統(tǒng)建模方法的優(yōu)勢,本節(jié)和傳統(tǒng)方法進(jìn)行對比實驗。視覺機(jī)械臂系統(tǒng)的硬件安裝如圖9所示,采用手眼分離式。由一個桌面級五自由度機(jī)械臂和Intel D435雙目相機(jī)組成。
數(shù)據(jù)采集流程如圖10所示。在機(jī)械臂運動空間內(nèi)隨機(jī)生成伺服電機(jī)轉(zhuǎn)角控制機(jī)械臂運動,運動完成之后等待雙目相機(jī)獲取末端球心位置[15](機(jī)械臂末端),循環(huán)采集100組數(shù)據(jù),作為參數(shù)辨識系統(tǒng)的輸入。數(shù)據(jù)采集的過程中沒有額外測量設(shè)備(激光跟蹤儀、標(biāo)定板)的參與。由于立體匹配階段計算的機(jī)械臂末端位置受雙目相機(jī)定位性能影響,而實驗使用的雙目相機(jī)定位性能隨著深度不同,精度存在差異,在2 m內(nèi)定位誤差在2%以內(nèi)[16]。綜合考慮,在深度為400~600 mm采集數(shù)據(jù),該范圍內(nèi)相機(jī)的定位精度約為2.5 mm。
3.2.1 兩種建模方法對比
傳統(tǒng)視覺機(jī)械臂系統(tǒng)精度的校準(zhǔn)需要使用高精度定位設(shè)備獲取機(jī)械臂末端的世界坐標(biāo),通過參數(shù)辨識的方法優(yōu)化運動學(xué)模型參數(shù),然后通過相機(jī)拍攝機(jī)械臂手持標(biāo)定板的照片,計算手眼標(biāo)定外參矩陣。將兩者整合至整個系統(tǒng),完成視覺機(jī)械臂系統(tǒng)的建模。系統(tǒng)聯(lián)合建模方法采用參數(shù)辨識的手段對運動學(xué)模型和外參矩陣同時優(yōu)化,不做單獨處理。
機(jī)械臂D-H參數(shù)標(biāo)稱值和MATLAB相機(jī)標(biāo)定工具箱獲取的手眼標(biāo)定外參矩陣參數(shù)如表1所示。對于傳統(tǒng)方法,將數(shù)據(jù)采集階段采集的機(jī)械臂末端位置左乘外參矩陣的逆獲得對應(yīng)的世界坐標(biāo),參數(shù)辨識系統(tǒng)的輸入包括伺服電機(jī)轉(zhuǎn)角和對應(yīng)的世界坐標(biāo),通過校正D-H模型參數(shù)提高系統(tǒng)精度,系統(tǒng)聯(lián)合建模方法在參數(shù)輸入階段不做處理。優(yōu)化算法的參數(shù)設(shè)置保持一致,兩種方法經(jīng)過參數(shù)辨識后適應(yīng)度的值即為視覺機(jī)械臂整體的系統(tǒng)精度。
使用優(yōu)化算法處理視覺機(jī)械臂模型精度校準(zhǔn)問題時,應(yīng)在保證算法收斂精度的前提下,盡可能快地提高收斂速度。傳統(tǒng)方法和聯(lián)合系統(tǒng)建模方法在七種算法下的收斂趨勢如圖11和12所示。不難發(fā)現(xiàn),相較其他六種演化算法,AMECoDEs-LO算法處理兩種不同方法的最終精度均為最優(yōu),分別達(dá)到了2.06 mm和1.01 mm。其收斂速度也是較快的,在11 000代左右完成收斂。為了更直觀地展現(xiàn)出該算法的先進(jìn)性,在算法的迭代次數(shù)分別為5 000、10 000、20 000時對七種算法的收斂數(shù)據(jù)進(jìn)行抽樣調(diào)查。抽樣的結(jié)果如表3所示。結(jié)果顯示,AMECoDEs-LO算法的收斂精度優(yōu)于其余六種演化算法,在第10 000代和20 000代的抽樣數(shù)據(jù)中均為最優(yōu)。另外,從七種算法的第20 000代抽樣數(shù)據(jù)不難看出,使用聯(lián)合系統(tǒng)建模方法的最終系統(tǒng)精度均高于傳統(tǒng)建模方法。其中,AMECoDEs-LO算法的表現(xiàn)最為突出,系統(tǒng)最終精度由2.055 mm進(jìn)一步提高到1.009 mm,優(yōu)化后的參數(shù)修正值如表4所示。
通過式(9)不難發(fā)現(xiàn),當(dāng)聯(lián)合系統(tǒng)模型參數(shù)已知后,輸入一組機(jī)械臂關(guān)節(jié)旋轉(zhuǎn)角度即可獲得一個對應(yīng)的機(jī)械臂末端相機(jī)坐標(biāo)。基于此,可以檢驗聯(lián)合系統(tǒng)模型的整體精度。機(jī)械臂關(guān)節(jié)旋轉(zhuǎn)角數(shù)據(jù)集定義為A,對應(yīng)的機(jī)械臂末端相機(jī)坐標(biāo)的數(shù)據(jù)集定義為B,此時集合A、B已知。將集合A輸入已求解完成的系統(tǒng)模型,獲得集合B′,計算集合B和B′中每一組相機(jī)坐標(biāo)之間的距離并求均值,即可完成系統(tǒng)模型精度的驗證。
經(jīng)傳統(tǒng)方法和聯(lián)合系統(tǒng)方法優(yōu)化后,在采集點中隨機(jī)抽取5、10、15、20組數(shù)據(jù)進(jìn)行模型精度驗證。驗證結(jié)果如圖13所示。數(shù)據(jù)顯示,相較傳統(tǒng)方法的驗證結(jié)果,采用聯(lián)合系統(tǒng)方法優(yōu)化后數(shù)據(jù)的距離誤差隨著采集點數(shù)量的不斷增加,離散程度較低,表明了聯(lián)合系統(tǒng)模型更為穩(wěn)定。同時,聯(lián)合系統(tǒng)模型的平均精度更高,約為1 mm。
3.2.2 精度驗證
由于系統(tǒng)聯(lián)合建模方法的誤差是根據(jù)采集的點計算,所以系統(tǒng)整體的精度可能只對采集的點有效。為此,額外增加隨機(jī)位置觸碰實驗,驗證視覺機(jī)械臂系統(tǒng)精度。在平臺放置一個圓環(huán),從圓環(huán)上隨機(jī)采集20組校驗點。在深度相同的情況下,目標(biāo)點的相機(jī)坐標(biāo)和像素坐標(biāo)存在對應(yīng)關(guān)系。為了清晰地驗證系統(tǒng)精度,在像素坐標(biāo)系中進(jìn)行實驗。圓環(huán)的軌跡方程為
p(x,y)=(x-237.40058)2+(y-94.0524)2-21.767152
隱函數(shù)定義域x∈[200,280],y∈[60,120]。圓環(huán)深度為443 mm,該深度下沿x、y兩個像素軸單位像素對應(yīng)的實際距離為2.08 mm。然后使用PSOEL算法進(jìn)行機(jī)械臂的路徑規(guī)劃,將優(yōu)化后的聯(lián)合系統(tǒng)模型參數(shù)作為已知量,采集的機(jī)械臂末端相機(jī)坐標(biāo)作為路徑規(guī)劃算法的輸入,求解機(jī)械臂的5個關(guān)節(jié)角。最后控制機(jī)械臂按照已求解的關(guān)節(jié)角進(jìn)行旋轉(zhuǎn)。該動作執(zhí)行完成之后記錄此時機(jī)械臂實際落點的相機(jī)坐標(biāo)。
如圖14所示,“+”標(biāo)志代表機(jī)械臂末端實際觸碰位置,“*”標(biāo)志代表校驗點位置。結(jié)果顯示,校驗點在像素平面最大誤差為0.65 px,最小誤差為0.04 px。實際上,機(jī)械臂末端位置在z軸方向也存在誤差。圖15顯示了機(jī)械臂末端實際落點和校驗點的空間距離誤差,最大誤差1.45 mm,最小誤差0.14 mm,平均誤差1.02 mm。校驗點的平均誤差和系統(tǒng)聯(lián)合建模方法校準(zhǔn)的精度較為接近,驗證了聯(lián)合系統(tǒng)模型的精度和該方法的有效性。
3.3 魯棒性
視覺傳感器的定位性能容易受噪聲影響,進(jìn)而會對系統(tǒng)校準(zhǔn)結(jié)果產(chǎn)生不同程度的干擾。本節(jié)以高斯白噪聲為例,驗證所提聯(lián)合建模策略的魯棒性。通過在相機(jī)識別的機(jī)械臂末端坐標(biāo)加入不同強(qiáng)度的高斯白噪聲進(jìn)行魯棒性測試。干擾項的產(chǎn)生定義為d(t)=σw(t),其中σ表示噪聲的強(qiáng)度,w(t)產(chǎn)生1 dBW的高斯白噪聲[5],噪聲的生成情況如圖16所示。實驗中除輸入不同強(qiáng)度的噪聲數(shù)據(jù)外,系統(tǒng)其他設(shè)置完全相同。
將三種擾動分別施加在所有采集點的x、y、z軸分量上。當(dāng)噪聲強(qiáng)度為0.5、1.0、1.5時產(chǎn)生的噪聲對采集點造成的平均距離誤差影響為±0.76 mm、±1.49 mm、±2.37 mm。圖17顯示了不同噪聲干擾前后,x、y、z軸分量上的平均誤差。結(jié)果顯示,相對于噪聲增大的程度,并沒有引起三個軸分量上平均誤差的同比例增大。噪聲加入前后對三個軸分量僅僅產(chǎn)生了輕微的影響,驗證了本文方法的魯棒性。圖18顯示了AMECoDEs-LO算法在不同強(qiáng)度噪聲影響下的收斂情況。結(jié)果顯示,當(dāng)噪聲強(qiáng)度增大到σ=1.5時,算法仍然可以完成收斂,相對于噪聲造成的影響,最終的系統(tǒng)精度降低的較少。
4 結(jié)束語
本文提出了一種基于AMECoDEs-LO算法的視覺機(jī)械臂系統(tǒng)聯(lián)合建模方法。該方法無須人工參與,對機(jī)械臂運動學(xué)模型和手眼標(biāo)定外參模型的參數(shù)同時優(yōu)化,直接建立伺服電機(jī)轉(zhuǎn)角到機(jī)械臂末端坐標(biāo)的映射。從系統(tǒng)整體考慮,避免了傳統(tǒng)方法對各子系統(tǒng)分開建模再整合至整個系統(tǒng)所造成的誤差傳播,不需要激光跟蹤儀、標(biāo)定板等額外的測量儀器,降低了校準(zhǔn)成本。同時系統(tǒng)中沒有復(fù)雜的雅可比矩陣逆運算;相較六種智能演化算法,AMECoDEs-LO算法收斂速度快、不容易陷入局部最優(yōu),在視覺機(jī)械臂建模問題上更有優(yōu)勢;魯棒性測試結(jié)果表明本文方法可以將視覺傳感器受環(huán)境噪聲因素造成定位精度不準(zhǔn)確的影響降至最低。對工業(yè)場景下視覺機(jī)械臂的自主建模、快速部署、擺脫傳統(tǒng)示教模式有一定的借鑒意義。基于本文算法,未來擬研究基于視覺的多機(jī)械臂協(xié)同抓取問題。
參考文獻(xiàn):
[1]Wen Bo,Tao Bo,Li Gongfa.Research status and tendency of intelligent industrial robot[J].Journal of Physics:Conference Series,2019,1302(3):032050.
[2]Levine S,Pastor P,Krizhevsky A,et al.Learning hand-eye coordination for robotic grasping with deep learning and large-scale data collection[J].International Journal of Robotics Research,2016,37(4-5):421-436.
[3]Wang Kesheng.Application of genetic algorithms to robot kinematics calibration[J].International Journal of Systems Science,2009,40(2):147-153.
[4]Lyu Yongfeng,Na Jing,Yang Qinmin,et al.Online adaptive optimal control for continuous-time nonlinear systems with completely unknown dynamics[J].International Journal of Control,2016,89(1):99-112.
[5]Yang Chenguang,Jiang Yiming,He Wei,et al.Adaptive parameter estimation and control design for robot manipulators with finite-time convergence[J].IEEE Trans on Industrial Electronics,2018,65(10):8112-8123.
[6]Bai Jing,Zhang Yuchang,Qin Xiansheng,et al.Hybrid calibration and detection approach for mobile robotic manufacturing systems[J].Industrial Robot,2020,47(4):511-519.
[7]Hua Jiang,Zeng Liangcai.Hand-eye calibration algorithm based on an optimized neural network[J].Actuators,2021,10(4):85.
[8]Wang Haixia,Lu Xiao,Hu Zhangyi,et al.A vision-based fully-automatic calibration method for hand-eye serial robot[J].Industrial Robot,2015,42(1):64-73.
[9]Yin Shibin,Ren Yongjie,Zhu Jigui,et al.A vision-based self-calibration method for robotic visual inspection systems[J].Sensors,2013,13(12):16565-16582.
[10]Cui Laizhong,Li Genghui,Zhu Zexuan,et al.Adaptive multiple-elites-guided composite differential evolution algorithm with a shift mechanism[J].Information Sciences,2017,422:122-143.
[11]Tong Lyuyang,Dong Minggang,Jing Chao.An improved multi-population ensemble differential evolution[J].Neurocomputing,2018,290:130-147.
[12]Guo Shumei,Yang Chinchang,Hsu P H,et al.Improving differential evolution with a successful-parent-selecting framework[J].IEEE Trans on Evolutionary Computation,2014,19(5):717-730.
[13]Khalil W,Kleinfinger J.A new geometric notation for open and closed-loop robots[C]//Proc of IEEE International Conference on Robotics and Automation.Piscataway,NJ:IEEE Press,1986:1174-1179.
[14]Deng Wu,Shang Shifan,Cai Xing,et al.Quantum differential evolution with cooperative coevolution framework and hybrid mutation stra-tegy for large scale optimization[J].Knowledge-Based Systems,2021,224:107080.
[15]耿賀輝,趙宏,卜鵬輝,等.基于二維成像的球心坐標(biāo)高精度定位方法[J].激光與光電子學(xué)進(jìn)展,2019,56(2):141-148.(Geng Hehui,Zhao Hong,Bu Penghui,et al.High accuracy positioning method based on 2D imaging for the coordinates of the center of a sphere[J].Laser amp; Optoelectronics Progress,2019,56(2):141-148.)
[16]Ahn M S,Chae H,Noh D,et al.Analysis and noise modeling of the Intel RealSense D435 for mobile robots[C]//Proc of the 16th International Conference on Ubiquitous Robots.Piscataway,NJ:IEEE Press,2019:707-711.