羅振軍 ,孫思嘉 ,梅江平 ,陳落根 ,許 健
(1.杭州娃哈哈集團機電研究院,杭州 310016; 2. 天津大學機械工程學院,天津 300110)
拉線位移傳感器是一種將旋轉(zhuǎn)編碼器和精巧的絞盤機構(gòu)進行集成而實現(xiàn)的直線位移傳感器,具有結(jié)構(gòu)緊湊、測量行程長、安裝方便、價格低廉等特點,在各種單軸位移測量應(yīng)用中得到廣泛使用。最早提出將拉線傳感器用于空間位姿測量的大概是意大利卡西諾大學的Ceccarelli教授[1],他提出一種3-2-1構(gòu)型的拉線式位姿測量機構(gòu),并將其用于機器人工作空間評價等領(lǐng)域。隨著拉線編碼器性價比的提高,將拉線位移傳感器用于空間位姿測量的研究也越來越多,例如冰川表面融化狀況的實時監(jiān)測[2]、人體行走時步態(tài)軌跡的測量[3]、高空艙內(nèi)航空發(fā)動機尾噴口面積的實時測量[4],以及船舶分段對接時法蘭間相對位姿的測量等。
機器人的應(yīng)用領(lǐng)域不斷擴大,例如在航空領(lǐng)域,離線編程技術(shù)得到了廣泛的應(yīng)用,而工業(yè)現(xiàn)場對機器人定位精度則提出更高的要求。近年來,利用拉線傳感器進行工業(yè)機器人運動學參數(shù)的精確標定成為熱門研究,這是因為基于拉線傳感器的測量方案相對其他采用激光跟蹤儀、三坐標測量儀,或者便攜式測量臂等儀器的方案來說價格相對較低,而且能在環(huán)境惡劣的生產(chǎn)現(xiàn)場部署,因而市場空間極大。但是這也對拉線傳感器的結(jié)構(gòu)設(shè)計、補償算法等方面提出極高的要求。
目前最知名的拉線測量方案是美國Dynalog公司推出的DynaCal單線式機器人單元校準系統(tǒng),通過精密設(shè)計的機械結(jié)構(gòu)和完善的補償算法來精確識別機器人運動學參數(shù),操作簡易。該公司的CompuGauge四線式系統(tǒng)則可實現(xiàn)機器人絕對定位精度和重復定位精度的三維動態(tài)測量。上海大學的洪銀芳等[5]對后者進行了仿制,試驗證明一定條件下測量精度達到±0.5mm。哈爾濱工業(yè)大學的肖永強等[6]則提出一種三線式測量機構(gòu),測量精度約±0.3mm。作者認為利用拉線傳感器復用以及運動學耦合夾具[7]等方式,可以進一步提高上述方案的便攜性,并且減少多條拉線之間差異等因素帶來的誤差項。
為此,本文對現(xiàn)有三線式和單線式拉線測量系統(tǒng)的優(yōu)點進行綜合,提出一種新型單線式三維測量系統(tǒng),詳細介紹相關(guān)的機器人參數(shù)辨識算法;然后以碼垛機器人為例,通過給機器人D-H參數(shù)的名義值、拉線傳感器測量值等加入虛擬誤差,模擬仿真標定效果;最后基于單線式三維測量系統(tǒng)和激光追蹤儀開展運動學標定試驗,并對標定效果進行對比與分析。
根據(jù)拉線傳感器的數(shù)目可以將已有測量系統(tǒng)分為單線式、三線式和四線式等,其中,四線式與三線式測量原理相似,所以在此僅討論單線式與三線式測量系統(tǒng)。
圖1所示為一種典型的三線式布局方式。3個拉線傳感器間隔120°放置,拉線經(jīng)過轉(zhuǎn)向機構(gòu)后與固定在機器人末端的拉線適配器相連,該適配器保證當機構(gòu)穩(wěn)定后作用線通過回轉(zhuǎn)中心點。理想情況下,根據(jù)3個拉線傳感器的輸出位移li(i=1,2,3)即可推算出待測點坐標[8]。實際計算時,還需要考慮安裝誤差、環(huán)境溫度和受力造成的拉長變形等因素。
三線式測量系統(tǒng)結(jié)構(gòu)簡圖如圖1(b)所示,假設(shè)測量基準點為底面等邊三角形3個頂點Ai(亦為轉(zhuǎn)向輪與拉線下切點),系統(tǒng)坐標原點位于三角形中心點O,轉(zhuǎn)向輪與拉線切點為Bi,轉(zhuǎn)向輪圓心為Ri,待測點坐標為P(X,Y,Z),設(shè)a為頂點Ai到原點O的距離,轉(zhuǎn)向輪半徑為r。以第1組轉(zhuǎn)向輪為例進行分析,拉線傳感器輸出位移可表示為
其中,lPB1為待測點P到切點B1的距離(下同),r1為A1、B1兩點間的弧長量。由弧長公式和勾股定理可得:
式中,
∠A1R1O,∠OR1P,∠B1R1P(即α,β,δ)可在各自所屬三角形內(nèi)由反三角函數(shù)求出?!蟁1OP(即θ)為∠A1OP與∠A1OR1之差。
由于轉(zhuǎn)向輪間隔120°對稱放置,同理可得到其他兩組拉線輸出位移與待測點坐標的關(guān)系模型。最終可建立表示兩者關(guān)系的三元非線性方程組
若已知拉線輸出位移li,通過求解非線性方程組即可獲得待測點坐標數(shù)值解。
圖1 三線式三維測量系統(tǒng)模型Fig.1 3-line 3D measurement system model
單線式測量模型如圖2所示,相較于三線式測量系統(tǒng),具有安裝測量方便,成本低廉,模型計算簡單等特點。利用單線式測量系統(tǒng)僅能獲取測量基準點O與待測點P之間的長度量,無法計算待測點坐標,只能用于機器人運動學參數(shù)標定。需注意此模型會因轉(zhuǎn)向滑輪纏繞帶來測量誤差,且誤差隨著待測點位置的變化而變化,是難以計算和補償?shù)摹?/p>
圖2 單線式一維測量系統(tǒng)模型Fig.2 Single-line 1D measurement system model
綜合上述兩種測量系統(tǒng)方案,利用單個拉線傳感器和3個轉(zhuǎn)向機構(gòu)代替三線式測量模型,如圖3所示。注意轉(zhuǎn)向機構(gòu)2、3的軸線延長線與轉(zhuǎn)向機構(gòu)1中的轉(zhuǎn)向輪相切。使用時,首先經(jīng)過轉(zhuǎn)向機構(gòu)1對待測點進行測量,之后分別經(jīng)過轉(zhuǎn)向機構(gòu)1、2和轉(zhuǎn)向機構(gòu)1、3對待測點進行測量。根據(jù)獲得的3組長度量可計算待測點坐標,計算時均選擇拉線與轉(zhuǎn)向滑輪的下切點作為測量基準點,則數(shù)學模型與三線式測量模型類似,在此將不做闡述。與三線式方案相比,此方案可有效降低成本,且由于適配器結(jié)構(gòu)大大簡化,所需要考慮的安裝誤差比三線式測量模型減少;另一方面,此方案增加了操作復雜性,即需要機器人執(zhí)行至少3次運動程序。為了減少由于機器人重復定位帶來的測量誤差,通常采用增加測量次數(shù)的方式來彌補。
圖3 單線復用三維測量系統(tǒng)Fig.3 Single-line 3D measurement system
機器人運動學標定一般包括建模、測量、參數(shù)辨識和補償4個部分。針對不同的測量系統(tǒng)有不同的參數(shù)辨識算法。
三線式三維測量系統(tǒng)和單線復用三維測量系統(tǒng)可采用基于距離誤差模型[9]的參數(shù)辨識算法,由于校準點間的距離在不同坐標系中的值是不變的,所以無需計算機器人基坐標系與測量坐標系的變換關(guān)系,從而避免了此變換不準確造成的誤差。標定方案如圖4所示。本文以娃哈哈公司SE4300碼垛機器人為例,首先構(gòu)建碼垛機器人D-H模型,并建立機器人末端距離誤差ΔL=Lm?L與D-H誤差參數(shù)向量e間的關(guān)系方程:
其中:
Pm為機器人校準點的實測坐標值,P為誤差D-H模型在驅(qū)動關(guān)節(jié)角度Q下的計算坐標值,驅(qū)動關(guān)節(jié)角度Q為校準點由名義D-H模型運動學逆解求得,Ω為誤差向量e參數(shù)變動范圍,N為校準點數(shù)目。通過運用信賴域或列文伯格-馬夸爾特算法對非線性方程(1)進行求解,即可得到幾何誤差源e的最優(yōu)值。
單線式一維測量系統(tǒng)則采用基于測量距離誤差[10]的參數(shù)辨識算法,建立測量距離誤差Δd=dm?d與D-H參數(shù)誤差e間的關(guān)系方程:
其中,
dm為拉線測量距離,PO表示測量基準點在機器人基坐標系的位置坐標,其余量的解釋同三維測量系統(tǒng)標定方案相同。通過求解非線性方程(3)可以同時辨識出幾何誤差源e和測量原點坐標PO的最優(yōu)值。
圖4 機器人標定方案Fig.4 Project of robot calibration
校準點的選取是機器人運動學標定的基礎(chǔ)。為了在工作空間內(nèi)選取合適的校準點位置,減少由機器人重復定位造成的測量誤差,可以分析工作空間內(nèi)不同位置擾動誤差對拉線測量值的影響。碼垛機器人工作空間如圖5所示,為了計算方便,在機器人基座標系下選取點O(2000,0,0)作為測量原點,并使得轉(zhuǎn)向機構(gòu)回轉(zhuǎn)軸線與x軸重合,假設(shè)轉(zhuǎn)向輪半徑r=15mm,待測位置點坐標可表示如下:
l為目標點與基坐標系原點的連線在xy平面的投影長度,β為目標點與基坐標系原點連線和轉(zhuǎn)向機構(gòu)回轉(zhuǎn)軸線的夾角在xy平面的投影角度。沿腰關(guān)節(jié)轉(zhuǎn)動方向每隔40°取一工作空間截面(腰關(guān)節(jié)轉(zhuǎn)動范圍 -160°~160°),并在各截面內(nèi)均勻選取有限位形,共計10701個。對每個目標點位置制造擾動,即在位置點附近一個半徑為10mm的球內(nèi)利用蒙特卡洛法取10個近似點,按照圖6所示的操作流程得到拉線測量誤差對工作空間不同位置擾動誤差的綜合靈敏度系數(shù)。靈敏系數(shù)隨回轉(zhuǎn)半徑l、腰關(guān)節(jié)轉(zhuǎn)角β、目標點z值的變化如圖7所示,當β=0,即目標點位置向量與轉(zhuǎn)向機構(gòu)回轉(zhuǎn)軸線共面時,測量誤差靈敏度系數(shù)最小,而隨著l和z值的增大,轉(zhuǎn)向滑輪包角逐漸減小,使得測量誤差靈敏度系數(shù)逐漸變小。但因為校準點的選取要遵循盡可能多地覆蓋機器人位姿的原則,所以l和z值的范圍不可過小,而β值的變化可理解為將所有校準點做相同的平移變換,對點與點間位移量沒有影響,所以可以選擇在β值較小的工作空間截面內(nèi)選取校準點。
圖5 碼垛機器人工作空間Fig.5 Workspace of robot palletizer
研究表明,機器人連桿的幾何參數(shù)變化是產(chǎn)生位置誤差的主要原因,約95%的機器人定位精度誤差是由D-H運動學模型的不準確描述造成的[11]。所以可以對碼垛機器人名義D-H模型制造模擬誤差以代替真實D-H模型,依然假設(shè)測量系統(tǒng)測量原點位于O=(2000,0,0),轉(zhuǎn)向輪半徑r=15mm,根據(jù)測量誤差靈敏度分析的結(jié)果,在機器人工作空間內(nèi)選取50組校準點??紤]到單線式一維測量系統(tǒng)轉(zhuǎn)向滑輪帶來的誤差,仿真時需要對拉線測量值加入虛擬弧長量,由于測量系統(tǒng)與機器人相對位置關(guān)系已知,弧長量可準確計算出。而單線復用三維測量系統(tǒng)可以通過在校準點附近半徑為1mm的球內(nèi)隨機取點來模擬機器人重復定位造成的誤差,假設(shè)測量時對同一點進行5次測量并取長度平均值,則需要在各校準點附近球內(nèi)隨機取5個點。
圖6 測量誤差靈敏度分析流程圖Fig.6 Analysis of measurement error sensitivity
圖7 測量誤差靈敏系數(shù)變化Fig.7 Change of measurement error sensitivity
依據(jù)上述機器人標定方案校準模擬誤差D-H模型,標定前后機器人絕對定位精度和距離精度對比如圖8所示。表1給出標定前后位置誤差和距離誤差的最大值、平均值和標準方差。表2則給出4組D-H參數(shù),分別是模擬誤差模型D-H參數(shù),經(jīng)過單線一維、單線復用三維和三線三維測量系統(tǒng)標定修正后的D-H參數(shù)。
由表1數(shù)據(jù)可以看出,經(jīng)過三線式三維測量系統(tǒng)仿真標定后,定位精度顯著提高。單線復用三維測量系統(tǒng)標定結(jié)果次之,但也達到了理想的標定效果。而單線一維測量系統(tǒng)標定后絕對定位精度均值僅達到6.16mm,相較于標定前提升了91%,此結(jié)果應(yīng)與滑輪假設(shè)半徑有關(guān),通過減小半徑值,增多校準點數(shù)目或多次迭代等措施可提升標定效果。同時觀察表2,采用不同標定方法得到的D-H參數(shù)存在一定的差異性,可以推論標定結(jié)果存在多解。
表1 仿真標定前后誤差對比
圖8 仿真標定前后精度對比Fig.8 Comparison of accuracy before and after calibration
表2 模擬誤差D-H參數(shù)和標定后修正D-H參數(shù)
表3 修正D-H參數(shù)
為了進一步驗證標定方法的有效性,對比仿真結(jié)果。現(xiàn)基于單線復用三維測量系統(tǒng)開展運動學標定試驗,為了研究測量精度對標定效果的影響,試驗過程中同時采用激光追蹤儀檢測機器人末端位置。試驗條件如下:工業(yè)機器人選用娃哈哈SE4300四自由度碼垛機器人;拉線位移傳感器選用SICK公司型號為BCG13-E1BM0599的經(jīng)濟型拉線編碼器,測量線性度0.5mm,量程5m;激光追蹤儀選用Leica公司的AT901,測量精度15μm。試驗步驟如下:(1)重復示教機器人到達仿真時選擇的50組校準點3次;(2)分別記錄由拉線測量機構(gòu)獲得的第一組拉線長度值和激光追蹤儀獲得的位置坐標;(3)改變拉線測量機構(gòu)的拉線纏繞方式并重復步驟(1)和(2),獲得第二、三組拉線長度值;(4)對測量數(shù)據(jù)進行處理,由3組長度值求解拉線測量機構(gòu)獲取的機器人實際坐標。采用基于距離誤差模型的參數(shù)辨識算法識別機器人幾何誤差源,并修正名義D-H參數(shù),修正后兩組D-H參數(shù)見表3。
為了驗證參數(shù)識別結(jié)果的準確性,根據(jù)GB/T 12642-2013《工業(yè)機器人性能規(guī)范及其試驗方法》的要求,檢測機器人在標定前后的位置準確度。在機器人工作空間內(nèi)選取5個驗證位姿,分別用名義D-H參數(shù)和兩組修正后的D-H參數(shù)對指定位姿求逆解。用求得的3組逆解分別控制機器人重復30次走到指定位姿,用激光追蹤儀檢測末端坐標。最后基于軸線測量法[12]獲取測量坐標系與機器人基坐標系的轉(zhuǎn)換關(guān)系。通過計算得到機器人標定前后位置誤差的最大值、均值和標準差,如表4所示。
由表4數(shù)據(jù)可知,基于激光追蹤儀和單線復用三維測量系統(tǒng)標定后,機器人末端位置準確度分別提升近63%和35%。表明標定后的D-H模型更加接近真值,本文所述的標定方法是有效的。但由于裝配制造、變形、選用較低精度的拉線編碼器和拉線的重復固定等因素的影響,使得單線復用三維測量系統(tǒng)測量精度不及激光追蹤儀,進而影響到標定效果。后期通過選用高精度拉線編碼器和對測量機構(gòu)的結(jié)構(gòu)參數(shù)、變形誤差等進行研究與校準,可以進一步提升標定效果。需要注意的是,基于激光追蹤儀標定后距離誤差均值仍有2.3mm,造成此現(xiàn)象的原因可能是現(xiàn)場環(huán)境嘈雜引起機器人振動較大,對測量結(jié)果造成一定影響,以及機器人受重力、溫度等因素的影響會產(chǎn)生變形誤差。
表4 標定前后位置誤差對比
(1)簡略介紹了三線式三維和單線式一維測量系統(tǒng)模型,并綜合兩者的優(yōu)點提出一種低成本的單線復用三維測量系統(tǒng)。
(2)通過分析拉線測量距離對機器人不同空間位置擾動誤差的靈敏度系數(shù),為校準點的選取提供依據(jù),當校準點位置向量與轉(zhuǎn)向機構(gòu)回轉(zhuǎn)軸線向量共面時,測量誤差靈敏度系統(tǒng)最小。
(3)仿真表明基于單線復用三維測量系統(tǒng)標定后精度提升90%以上,而試驗表明標定后精度提升35%以上。一方面驗證了標定方法的有效性;另一方面說明了測量值的準確性對標定結(jié)果有很大影響。如何在標定方案可行的條件下,補償測量系統(tǒng)由機械加工裝配、測量環(huán)境影響等因素引起的系統(tǒng)誤差是后續(xù)的研究重點。此外,仿真未考慮機器人重力變形,關(guān)節(jié)傳動等非線性誤差,也需要后期繼續(xù)改進。
參 考 文 獻
[1]CECCARELLI M,AVILA C C,OTTAVIANO E.Error analysis and experimental tests of CATRASYS (Cassino Tracking System)[C]// Industrial Electronics Society.Proceeding of Conference of the IEEE,2000: 2371-2376.
[2]HULTH J.Using a draw-wire sensor to continuously monitor glacier melt[J].Journal of Glaciology,2010,56(199): 922-924.
[3]張立勛,王令軍,王鳳良,等.一種人體步態(tài)軌跡測量方法[J].測控技術(shù),2009,28(2):24-27.
ZHANG Lixun,WANG Lingjun,WANG Fengliang,et al.A kind of measurement method for human gait[J].Measurement and Control Technology,2009,28(2): 24-27.
[4]蘇金友,袁世輝,趙涌,等.激光測距技術(shù)在高空艙內(nèi)測量噴口面積試驗分析[C]// 2013年航空試驗測試技術(shù)峰會暨學術(shù)交流會論文集,2013.
SU Jinyou,YUAN Shihui,ZHAO Yong,et al.Experimental analysis of measuring the nozzle area using laser distance technology in altitude chamber [C]// Proceeding of Aviation Test and Test Technology Summit and Academic Exchange in 2013,2013.
[5]洪銀芳,鮑晟,高慧慧.拉線式機器人末端定位精度測量系統(tǒng)[J].工業(yè)控制計算機,2016,29(4): 40-41.
HONG Yinfang,BAO Sheng,GAO Huihui.Positioning accuracy and trajectory cable-measurement system[J].Industry Control Computer,2016,29(4): 40-41.
[6]肖永強,游瑋,孔民秀,等.基于拉線傳感器的工業(yè)機器人標定系統(tǒng)研制[J].機器人技術(shù)與應(yīng)用,2015(6): 26-30.
XIAO Yongqiang,YOU Wei,KONG Minxiu,et al.Robot calibration system based on draw wire sensor[J].Robot Technique and Application,2015(6):26-30.
[7]SLOCUM A H.Design of three-groove kinematic couplings[J].Precision Engineering,1992,14(2): 67-76.
[8] 成世良.基于拉線傳感器的工業(yè)機器人標定系統(tǒng)設(shè)計[D].哈爾濱: 哈爾濱工業(yè)大學,2014.
CHENG Shiliang.Robot calibration system based on draw wire sensor[D].Harbin: Harbin Institute of Technology,2014.
[9]侯琳祺,馮淑紅.基于距離精度的機器人5參數(shù)位置誤差模型[J].機器人技術(shù)與應(yīng)用,2002(2): 31-35.
HOU Linqi,FENG Shuhong.Five parameters position error model of robot based on range accuracy [J].Robot Technique and Application,2002(2): 31-35.
[10]MESSAY T,ORDó?EZ R,MARCIL E.Computationally efficient and robust kinematic calibration methodologies and their application to industrial robots[J].Robotics and Computer-Integrated Manufacturing,2016,37: 33-48.
[11]JUDD R P,KNASINSKI A B.A technique to calibrate industrial robots with exerimental verification[J].IEEE Transaction on Robotics & Automation,1991,6(1): 20-30.
[12]WU Y,LI C,LI J,et al.Comparative study of robot kinematic calibration algorithms using a unified geometric framework[C]//Proceeding of ICRA,2014:1393-1398.