丁 燕,劉 鑫2,黃煒亮
(1.連云港工貿高等職業技術學校 機械工程系,江蘇 連云港 222000;2.中南大學 商學院,湖南 長沙 410083)
國際上的恐怖分子所進行的恐怖襲擊活動,爆炸襲擊是慣用的手段之一,在進行排除爆破等工作,會出現很多突發情況,危險性極高。而排爆機器人不僅可以在危險的環境下對爆炸物進行檢測、搜索、銷毀、排除等工作,同時對人身安全進行保護,避免受到傷害[1]。
當排爆機器人進行現場操作的時候,由于一些爆炸物較小,對機器人機械臂的定位精度有極高的要求[2]。但是排爆機器人機械臂連桿與關節之間容易發生彈性變形,產生傳動誤差,導致最終機械臂的絕對定位精度有所降低,限制了機器人在進行排除爆炸物時無法達到高精確、高靈活的工作,造成嚴重的后果[3]。
通過對排爆機器人機械臂的誤差進行分析可知,誤差的來源是由機械臂的幾何構造所引起的,這些誤差無法采用閉環控制方式來減少,再受到成本以及加工方式的影響,單純對加工精度的提高以及裝配時的調整來減少或者去掉這些誤差是不可能的,同樣,經濟條件也是一種負擔。因此采用機器人機械臂誤差補償方法,提高執行端的定位誤差[4]。
對排爆機器人的機械臂進行誤差補償時候,常用于兩種方法:一是預測誤差法,在進行設計與工作中盡可能地減少由設計、加工、裝配時候帶來的誤差[5];二是運動學標定法,根據合理有效的方式來分辨出機械臂理論上運動學軌跡數值和實際上的運動學數值之間誤差,再用數值之間的對比來修正機械臂的運動學數值達到補償的目的[6]。這兩種方法相互對比,運動學的定位法要比預測誤差法的成本低以及補償效果好。同時對機器人機械臂零件之間的磨損等一些原因進行補償,是現在機器人誤差補償重要的手段[7]。
運動學主要有4個組成步驟:建模、測量、辨識跟補償。最常用的兩種方法:一是圓周法先求出實際機器人機械臂關節的位置,在用幾何關系得出機器人的誤差數據。二是回路方法,先構建一個機械臂的運動學誤差模型,采用先進手段與模型的數值得出機械臂真實數值。兩種方法進行對比,回路法效果更好,避免了人為因素影響。在實際應用中廣泛地用于機器人的標定過程[8]。
通過對排爆機器人機械臂的運動學合理分析,給出排爆機器人轉動關節連桿示意圖,如圖1所示。以機械臂的坐標矩陣構建一個運動學模型,也就是D-H模型,先在關節處構建一個坐標系,再根據坐標系之間的轉換及分析,得出機器人執行端的位置和姿態[9]。

圖1 轉動關節連桿示意圖
在兩個關節之間的坐標矩陣如下:
i-1Ti=Rot(X,αi)Rot(Z,θi)Trans(Z,di) =
式中,i-1Ti為i的坐標系是對于i-1坐標系的轉換矩陣;θi為排爆機器人機械臂的Xi-1跟Xi圍繞Zi-1的夾角;di為機械臂關節Xi-1和Xi沿著Zi-1軸平移的長度;αi為機械臂Zi -1和Zi圍繞Xi軸旋轉的角度,αi為Zi -1與Zi是沿著Xi軸平移的長度。
di,ai,αi,θi是模型構造的參數,代表機械臂的關節以及連桿之間的關系。
機器人的機械臂關節沿著一定的軸線進行平行時,運動學模型就會產生奇怪的現象,這影響參數分辨的穩定性,所以在兩個關節點的軸線平行運動時加一個圍繞Y的軸線運動的數值β。在機械臂執行端坐標系位置上,根據關節之間的疊加變換計算出機械臂執行端位姿如下:
(2)
式中,n,o,a代表機械臂的執行端姿態的向量;p表示機械臂的執行端位置的向量。
因為機械臂連桿參數誤差,所以理論上執行端位姿與其實際位姿存在一定的誤差,用Δp=pr-pn來表示。pr是機械臂執行端實際的位姿矩陣,pn是理論上,機械臂執行端的位姿矩陣。機械臂的執行端位姿誤差是由每一個關節之間相互轉換積累而成的,因此要對關節的相鄰坐標進行分析,獲取關節的參數值誤差與其執行端關節的函數關系。根據微分間的變換法,對相鄰的機械臂關節進行齊次變換,可得:
(3)
同樣,機械臂相鄰關節平行坐標系的變換誤差如下:
(4)
式中,Δθi表示機械臂連桿夾角偏差;Δαi表示機械臂連桿扭角誤差;Δdi表示機械臂連桿距離偏差;Δai表示機械臂連桿長度偏差;TiΔi表示爆機器人機械臂相鄰關節的變換誤差;Δi表示機械臂關節坐標系相鄰的變換矩陣;Δβi表示數值βi的偏差。
聯立公式(2)和(4),簡化后可得:
(5)
式中,dxi,dyi,dzi表示機械臂關節i相當于關節i-1的X,Y,Z方向平行移動的偏差,將ei作為兩個機械臂之間的關節轉換位置與姿態的誤差而構成的微分矢量,生成下列公式:

(6)
式中,Gi表示是機械臂誤差系列的系數矩陣;Δxi表示是機械臂的連桿數值誤差向量;δxi、δyi、δzi表示是機械臂的一個關節i對于關節i-1圍繞著X、Y、Z軸線的旋轉偏差。
根據公式(6)可得知,排爆機器人機械臂的連桿數值誤差易造成機械臂近鄰關節坐標齊次變換矩陣產生誤差,而機械臂的執行端的絕對定位誤差是由每個關節出現的一點小誤差疊加而成的,所以將誤差全部轉移到機械臂的執行端坐標系上,即可得到機械臂執行端的位姿誤差,根據微分轉變原理,將機械臂的位置誤差模型如下式:
(7)
式中,Ji表示機械臂的關節i坐標系到機械臂執行端坐標系的微分坐標矩陣,根據該矩陣能將機械臂關節處i的坐標誤差轉變到執行端上:
(8)
其中:n,o,a,p表示機械臂的關節坐標系i到執行端的坐標系經齊次變換后所得的位姿跟姿態向量;e表示在平面上機械臂執行端位姿誤差向量;Je表示機械臂辨別雅克比矩陣;X表示機械臂的運動學誤差參數[10-11]。
根據式(7)可得機械臂的運動學誤差分辨模型,采用設備將機械臂誤差的實際位姿測量出來,而理論上的位姿是根據機械臂的控制裝置來獲得,將實際位姿的測量結果輸入到運動模型中,經過分析后即可得到排爆機器人機械臂的運動數值誤差。通過對誤差數值進行修正補償,進一步提高排爆機器人定位精度[12-13]。
在機械臂位置誤差模型中進行分析求解時,模型中會有一些重復性參數,這些參數會降低誤差辨識準確性,因此對構建的運動學模型,進行分析與判斷,去掉重復的數值,以保證模型對重復數值進行有效的分析[14]。
對機械臂執行端誤差模型(式7)根據下面簡化方式,如下:
e=Je·X
(9)
假如機械臂模型中有重復的數值,證明分辨雅克比矩陣Je的列不是滿秩,同時說明雅克比矩陣中的向量與線性有關或某列向量為零向量,因此需要對雅克比矩陣理解分析,找到與線性有關的列向量,且將列向量為零的向量進行消除,對除去列向量有關的誤差性數值,即是重復參數。
根據公式(7)的微分轉變矩陣Ji能得到機械臂關節i-1的坐標系下的誤差ei-1。ei-1轉變到機械臂關節i坐標下的變換矩陣:
(10)
機械臂關節坐標系i的微分誤差是轉移到自身坐標下的變換矩陣iJi:
(11)
式中,E表示單位矩陣。由公式(10)跟(11)能得到的iJi-1第3列跟第6列存在以下公式:
(12)
將公式(12)的兩式都左乘6Ji微分的誤差轉變到機器人機械臂的執行端坐標系上,能得出機器人分辨雅克比矩陣的Je的第3列和第6列的線性相關,就是微分誤差dzi與δzi用其他的微分誤差表示。
根據公式(7)可得知,相鄰的兩個連桿其次變換誤差都是由機器人機械臂的連桿幾何參數誤差決定的,所以要將公式(12)中的重復數值,dzi與δzi轉變成連桿幾何參數的冗余,將已知的理論連桿角度α代入公式(7)中,即可得到機械臂的幾何參數冗余性,這有兩種狀況:平行關節時,重復參數dzi相對應的是Δdi,即Δdi就是重復參數;非平行關節時,重復數值δzi,相對應的是Δβi,Δβi視為冗余參數。
當辨識到排爆機器人機械臂的各個參數誤差值后,對這些參數進行誤差補償,對Δa、Δα、Δd、Δθ、Δβ所對應的數值相加,構成新的參數,并在系統中對其進行修改。對指定的指令位姿參照新的數值進行逆運動學求解,得到關節轉角θ=[θ1θ2…θ]T,在系統中將θ+Δθ的值相加作為θ值輸出,從而控制所有軸的轉動。
上述過程中構建了一個運動學模型,它的執行端末端變換矩陣是一個含有αi-1ai-1di與θi的矩陣,可在實際的應用中,它們存在一定的微小偏差。
假設,排爆機器人機械臂關節{i}的偏差值是Δαi-1、Δai-1、Δdi與Δθi,修正以后的數值是:
(13)
為了分析誤差,對這些參數的敏感程度進行研究。在不同的位姿下,運動學參數誤差對總位置誤差的影響不同,假設機械臂所處的關節角度值為:
q=[0pi/4pi/6 -pi/3 2pi/3pi/6]
(14)
假設某一參數存在一個誤差,剩余的參數不存在誤差。根據一定的步長對所有關節進行改變,記錄執行端位姿。最后,計算沒有誤差的執行端位姿與相應的有誤差的執行端位姿的偏差,對其進行補償。
首先對排爆機器人機械臂幾何參數誤差進行求解。實驗過程中,采用Mirosot機器人平臺。機械臂執行器位置坐標利用激光跟蹤儀進行測量。基于激光跟蹤儀建立排爆機器人機械臂標準坐標系,測量不同位置處機械臂執行端實際位置坐標,將實際位置坐標和理論坐標進行對比,基于本文所構建的排爆機器人定位誤差模型計算機械臂的幾何參數誤差。為了最大程度的提高標定的精度,使測量點分布于整個所需要工作的空間,選擇了40個坐標點(20組相對點)來進行測量,根據上文中所建立的誤差模型,識別的機械臂的幾何參數誤差如表1所示。

表1 機械臂的幾何數值
接下來采用負重實驗來求解排爆機器人的柔度誤差。先將重量不同的物體施加排爆機器人關節之上,測量出負重前后關節坐標。利用公式(15)、(16)求出關節2與3的柔度系數,建立公式如下:
k2=5.91725×10-7N-1·m-1
(15)
k3=5.63819×10-6N-1·m-1
(16)
為了精確地計算出排爆機器人的柔性誤差的補償值,需要將關節的柔度系數代入誤差模型之中,通過模型分析得到關節2與3轉過不同角度所對應的偏差角度Δθg2與Δθg3,排爆機器人的偏轉角度變化如圖2所示。

圖2 不同轉角度關節偏轉角的變化
由圖2可知,排爆機器人機械臂機械臂負重實驗所產生的柔度誤差是隨機械臂姿態改變而變化的,負重實驗下關節轉動所產生的角度誤差較小,非常接近關節的4與5所能產生的轉角誤差,如表1所示。所以柔度誤差對機械臂的絕對定位精度影響是可以無法忽略的。
排爆機器人機械臂關節的柔度誤差進行準確的計算和有效補償,能對機械臂的絕對定位精度有效提高。通過幾何誤差參數值與柔度誤差參數數基礎上,根據所構建的誤差補償方法,對測量出的40個位置點進行誤差補償,實驗結果如圖3所示。

圖3 誤差補償前后定位絕對位置誤差對比
通過圖3可以看出,排爆機器人機械臂標定前的絕對定位誤差相對于標定后的絕對定位誤差數值要大了很多。由此可見,經誤差補償后,排爆機器人機械臂絕對定位精度均值提升了1.3 mm。
通過對排爆機器人機械臂的誤差建模與實際位置誤差進行分析,得出影響到執行端定位精度的主要影響因素包含幾何誤差與柔度誤差。再通過幾何誤差標定后與運動學參數辨識結果,進行誤差補償。仿真實驗分析證明,采用本文方法,幾何結構參數辨識結果與實際位置之間差距很小。通過誤差補償后,執行端的定位精度相對傳統的方法,誤差較小,說明本文提高了排爆機器人機械臂的執行端絕對定位精度。