李銳君,胡代弟,董素鴿
(1.鄭州西亞斯學院,鄭州 451150;2.信息工程大學,鄭州 450000)
抓取機械臂在機械領域發展迅速,被廣泛應用在軍事工程、機床加工、海洋探測等方面。隨著科技技術的提高,對抓取機械臂末端定位也提出了更高的要求,不僅要求抓取機械臂末端定位準確,還要求其具有優良好的置信度[1]。其中的關鍵就是對抓取機械臂末端定位技術做出升級和改造。由實驗證明和理論依據可知,融合多傳感器數據的抓取機械臂對末端定位具有重要意義。
夏毅敏[2]等人以誤差補償為出發點,采用基于激光測距和機器視覺的檢測方法獲取抓取機械臂末端的柔度誤差,采用全站儀獲取抓取機械臂末端的參數誤差,通過參數誤差和柔度誤差相結合創建誤差補償模型。采用投影梯度值法對誤差補償模型實行迭代計算,獲得抓取機械臂末端的位置信息。這種方法由于沒有建立抓取機械臂運動學模型,導致定位效率低。李勇斌[3]等人利用卡爾曼擴展濾波與改良的粒子濾波分析比較,獲得似然函數分布重合度,再利用粒子群算法將粒子濾波作為濾波模型,運用自適應抗差別算法對分布重合度實施改進,以確定抓取機械臂末端定位。這種方法由于沒有建立誤差模型,導致置信度較低。
為了解決上述方法中存在的問題,提出融合多傳感器數據的抓取機械臂末端定位方法。
1)建立機械臂運動學模型,首先以融合了多傳感器數據的抓取機械臂末端為目標建立坐標系[4]。相鄰坐標系之間的變化矩陣由4個傳感器抓取參數描述,如式(1)所示:

式(1)中,Z代表的是變化矩陣;x、y描述的是抓取機械臂末端坐標點;α表示坐標系之間的旋轉角度;e表示坐標點之間的移動距離。
2)根據抓取機械臂末端坐標系的位置,利用式(2)得到抓取機械臂末端的位姿矩陣。

式(2)中,U表示位姿矩陣。
3)由于多傳感器數據中含有干擾數據,導致建立的抓取機械臂運動學模型中的坐標系不能完全平行或垂直,因此相關參數之間會存在細小的誤差,所以需要根據位姿矩陣導入位姿誤差模型。
1)考慮到外界因素的影響,抓取機械臂末端運動學模型會有一定的參數誤差,將多傳感器采集到的參數誤差數據與位姿矩陣結合構建出機械臂末端位姿誤差模型,如式(3)所示:

式(3)中,W描述的是參數誤差。
2)設Q為機械臂末端的誤差矩陣,對式(3)簡化后可以得到,辨認誤差矩陣中所有參數如式(4)所示:

其式(4)中,K為變換參數。
設雙平面為平面a和平面b,平面a上接觸點設為X、M;平面b上接觸點設為Y、N。兩個平面要滿足互相垂直的條件,如圖1所示。

圖1 雙平面約束誤差模型成立條件
融合多傳感器數據的抓取機械臂末端定位時,構建雙平面約束誤差模型來消除數據中的邊緣數據[5],使定位結果更精準。具體步驟如下:
1)用式(5)計算出抓取機械臂末端的實際位置,再通過關節角度計算出實際位置的雅可比矩陣。

式(5)中,X代表的是名義位置;x、y、z表示平面上三維坐標點;M代表實際位置;O表示雅可比矩陣模型。
2)根據任意一個約束平面上的坐標點計算出抓取機械臂末端運動學參數誤差,將誤差投入到融合多傳感器數據的控制器中,通過更新后的公式獲取機械臂末端實際坐標點,與另一個約束平面上的位置點做比較。更新公式如式(6)所示:

式(6)中,J描述的是多傳感器控制器;a、b、c描述的是運動學模型中的坐標點。
3)在雙平面約束誤差模型上各采集C+3個點,且連續的三個點不可以處于同一直線,通過下式得到最終的雙平面約束誤差模型,完成對抓取機械臂末端邊緣數據的消除。

目標檢測模型主要由卷積層和連接層兩層神經元構成,負責對抓取機械臂末端圖像實行目標檢測,提取到特征圖像。具體分為以下幾個步驟:
1)卷積層負責在卷積特征圖中將卷積核通過卷積計算,以此獲取特征向量。然后將特征向量傳輸到連接層中。卷積計算公式如式(8)所示:

式(8)中,M表示分類損失;q代表真實目標位置;u代表平衡權重;O表示坐標向量;μ代表預測概率。
2)連接層負責預測待選區域的位置,并判斷當前待選區域是否在目標區域中。當移動窗口的中心點對應到目標區域后,可將此位置視為一個目標位置,通過連接層的處理,可得到所有目標位置的回歸邊界。
3)采用線性回歸算法,對回歸邊界實行微調整,使目標可以更精準地定位,通過下式計算出平移縮放參數。

其中,t表示預測邊界的高;x、y、z表示預測邊界的中心坐標;x1、y1、z1表示目標位置的中心坐標。
4)將特征向量傳輸到融合多傳感器數據的終端執行器中,將參數初始化,重復式(8)步驟,直到完成抓取機械臂末端圖像的特征提取。
由于運動學參數隨機變化,導致機械臂位姿參數存在一定誤差,因此提出在遺傳算法的基礎上對機械臂各關節變量采取修正措施,可以大大提高機械臂末端定位的精準度。流程圖如圖2所示,具體分為以下幾個步驟:

圖2 遺傳算法流程
1)在抓取機械臂運動學模型的基礎上,整理出多組機械臂數據作為參照目標,選擇任意幾組位姿信息,根據三維立體平移模型繪制出傳感器終端執行器的實際位姿數據。根據遺傳變量算法,計算出各關節變量的理想補償值。然后將修正后的理想補償值投入到多傳感器終端控制系統,得到實際位姿誤差信息。
2)設計遺傳算法參數。根據各抓取機械臂末端的關節旋轉變量,對位姿誤差修正求解,將這些誤差值作為遺傳算法的參數,實施復制、變異等操作,產生新一代參數,直到實際位置與目標位置的誤差足夠小。

式(10)中,f表示復制操作;α代表平移變量;Q為位姿誤差;K代表雅可比矩陣;i表示第i組數據。
3)遺傳算法的實現。針對多傳感器終端執行器處理得到的理論位姿數據,計算出對應的抓取關節變量。將抓取關節變量作為控制量,采用NDI系統測量出實際位姿與理論位姿間的誤差。

式(11)中,G表示平移修正量;N為樣本數量;X、Y、Z為理論位姿數據。
4)根據式(12)計算出每組樣本數據的適應度函數,與多傳感器終端執行器修正后的誤差做出比較。

5)對比修正誤差和適應函數。當修正誤差小于適應函數時,根據遺傳算法中的選擇、異變等指示產生新樣本數據,輸出最佳結果,結束流程;當修正誤差大于適應函數時,返回式(10)繼續計算,直到滿足條件迭代停止。
為了驗證融合多傳感器數據的抓取機械臂末端定位方法的整體有效性,需要對融合多傳感器數據的抓取機械臂末端定位方法進行測試。將末端定位效率、置信度、定位精度作為指標,采用融合多傳感器數據的抓取機械臂末端定位方法、文獻[2]方法和文獻[3]方法做為對比測試方法。抓取機械臂實物圖如圖3所示。

圖3 抓取機械臂實物圖
1)末端定位效率
進行10次抓取機械臂末端定位實驗,采用所提方法、文獻[2]方法和文獻[3]方法對抓取目標實行末端定位處理。比較三種方法所用的定位時間,定位時間越長,表明定位效率越低,相反,定位時間越短,表明定位效率越高。不同方法的測試結果如表1所示。

表1 不同方法的定位時間
分析表1中的數據可知,定位時間與定位效率呈正比,在不同的抓取機械臂末端樣本集中,所提方法所用的識別時間均低于文獻[2]方法和文獻[3]方法的定位時間。并且隨著樣本集的變化,所提方法的定位時間沒有出現明顯波動,而文獻[2]方法和文獻[3]方法的定位時間波動幅度較大。表明對機械臂末端定位時,所提方法具有較高的定位效率。在對抓取機械臂末端定位前,所提方法通過目標檢測模型確定出目標區域,在此區域內實行定位操作,以此減少了抓取機械臂末端定位時間,提高定位效率。
2)定位誤差
測試所提方法、文獻[2]方法和文獻[3]方法定位抓取目標的精度,對比不同方法的定位誤差,如圖4所示。

圖4 不同算法的定位誤差
分析圖4可知,所提方法定位誤差平均值為0.25m,文獻[2]方法定位誤差平均值為0.85m,文獻[3]方法定位誤差平均值為1.455m。實驗結果表明,所提方法的定位誤差小,定位精度更高。
3)置信度
置信度是指抓取機械臂末端定位觀測值的分布情況,是以理想觀測值為均值的正態分布,代表著定位結果與理想結果之間的誤差分布函數。置信度數值越高,說明定位越準確;置信度數值越低,說明定位偏差越大。置信度的計算公式如式(13)所示:

其中,Q代表的是置信度;x表示的是真實結果;y代表理想結果;?代表正態方差;f代表置信度一般系數。
為了展現實驗的全面性,將抓取機械臂末端數據分為平衡數據集和干擾數據集。將所提方法、文獻[2]方法和文獻[3]方法的置信度計算出來,與樣本的理想觀測值比較,測試結果繪制成餅形圖,如圖5所示。

圖5 不同方法的置信度分布情況
分析圖5可知,針對抓取機械臂末端平衡數據集定位時,所提方法的置信度占樣本理想觀測值比例很大,說明所提方法的置信度較高,定位更加準確。文獻[2]方法和文獻[3]方法的置信度占樣本理想預測值較低比例,說明文獻[2]方法和文獻[3]方法的置信度較低,定位結果不準確。并且針對不平衡抓取機械臂末端數據集時,所提方法的置信度都高于文獻[2]方法和文獻[3]方法的置信度。說明無論是在平衡數據集和干擾數據集情況下,所提方法的定位準確性均高于文獻[3]方法和文獻[4]方法的定位準確性。
經測試發現,目前抓取機械臂末端定位方法方法存在定位效率低、置信度低和定位精準度低的問題,為此提出融合多傳感器數據的抓取機械臂末端定位方法,該方法首先建立了運動學模型和誤差模型,再使用目標檢測模型確定目標位置,根據遺傳算法計算出抓取機械臂末端各關節旋轉變量,最后將修正值輸入到傳感器執行器中。提高了定位效率和置信度的同時,提高了方法的定位精準度。