陳 峰,徐一鳴,鐘永彥,林 純
(南通大學(xué)電氣工程學(xué)院,江蘇南通 226019)
多維力傳感器是智能機器人重要組成部分,已廣泛應(yīng)用于機器人和遙控操作領(lǐng)域,獲取力的變化方向和強度大小是其主要任務(wù)。對臂—環(huán)境交互的感知能力是機器人由單一的重復(fù)行為轉(zhuǎn)變?yōu)獒槍ξ粗h(huán)境或任務(wù)具有一定自主決策能力的智能體系[1]。多維力傳感器應(yīng)用在可穿戴型助力機器人系統(tǒng),用于獲取人—機交互信息[2];針對目前常用手寫設(shè)備信息獲取不全面問題,基于多維力傳感器設(shè)計的筆交互設(shè)備能獲取手寫全力信息[3]。另外,廣泛應(yīng)用于靈巧手的多維指力傳感器[4],使手指實現(xiàn)智能抓取成為現(xiàn)實。
對于多維力傳感器而言,一旦受力,彈性體在各個方向上均會產(chǎn)生形變,從而導(dǎo)致各向輸出,即使是理想的輸入也會產(chǎn)生不期望的結(jié)果——耦合誤差。解耦方法通常被用來提高輸出精確度,避免因耦合誤差而引起系統(tǒng)誤動作。利用最小二乘法所構(gòu)建的靜態(tài)線性解耦方法常應(yīng)用于工程解耦中[5~8],其解耦效果的好壞主要依賴于傳感器的結(jié)構(gòu)設(shè)計、加工工藝等的優(yōu)劣,該方法的主要優(yōu)點是便于實現(xiàn)逆解。但在實際應(yīng)用中,靜態(tài)線性解耦并不十分理想,其原因在于傳感器的輸入—輸出關(guān)系并非是理想的線性關(guān)系。為此,有研究人員提出用分段線性化法,因其計算時間太長而無法應(yīng)用于工程實際中[9]。借鑒風(fēng)洞天平非線性標(biāo)定方法,理論上利用多次非線性擬合手段,實現(xiàn)非線性解耦[8],仿真已證明其可行性。近年來,智能計算被廣泛應(yīng)用于多維力傳感器解耦與誤差補償中,借助其良好的非線性逼近能力和自學(xué)習(xí)能力,通過神經(jīng)網(wǎng)絡(luò)和支持向量機等方法重新構(gòu)建多維力傳感器輸入—輸出關(guān)系或進行非線性校正及靜態(tài)誤差補償[10~13]。
靜態(tài)線性解耦方法是在假設(shè)傳感器各維間是一理想線性關(guān)系的前提下,構(gòu)建關(guān)于傳感器各通道力/力矩信息與傳感器輸出信息間的直線方程。傳統(tǒng)的靜態(tài)線性解耦方法可描述為[5]
式中 F為力/力矩向量,U為傳感器輸出向量,通常是電壓信號,C為解耦矩陣。
該方法不足之處在于沒有考慮系統(tǒng)的零點輸出信息。在此基礎(chǔ)上,改進的線性解耦方法[6]得以提出
式中 B為傳感器各維和維間的零點信息。
應(yīng)用該方法時,首先利用標(biāo)定數(shù)據(jù)集和常用的最小二乘法完成單維和維間的直線擬合,利用獲得的擬合方程系數(shù)構(gòu)建輸入—輸出耦合矩陣,其次通過解方程,即逆解,通常是對標(biāo)定的耦合矩陣直接求逆,從而獲得解耦矩陣。
為了敘述方便,把文獻[5]中的解耦方法暫定為方法1,文獻[6]中的解耦方法暫定為方法2,本文中的正解耦方法稱為方法3。
因結(jié)構(gòu)設(shè)計、加工工藝、敏感元件抗干擾能力、傳感器零點漂移等因素,傳感器各維力/力矩信息與傳感器輸出信息之間存在某種非線性關(guān)系。實驗也證實,有的耦合表現(xiàn)為單調(diào)非線性,有的則會出現(xiàn)幾個彎[9]。利用多項式方程可以盡量彌補與真實值間的差距。當(dāng)然,上面提及的傳統(tǒng)靜態(tài)線性解耦方法也可以擴展為多項式方程,利用傳統(tǒng)分析方法將六維腕力傳感器輸入—輸出關(guān)系擴展為二次曲線形式,如下式所示
式中i,j=1,…,6,F(xiàn)Mj為第j項加載(如j=1意味著Fx加載,其它方向無任何加載;j=4意味著Mx加載,其它方向無任何加載),Uij對應(yīng)第j項加載時產(chǎn)生的6路輸出信息。當(dāng)i=j時,為主輸出項;當(dāng)i≠j時,為耦合輸出項。在傳感器靜態(tài)標(biāo)定完成后,aij,bij和cij可通過最小二乘法求解獲得。而每一維的最終輸出是其主輸出項與耦合輸出項之和,即
將上式展開可得聯(lián)立方程
式中aij,bij和cij均為已知系數(shù)。該方程組也可以寫成矩陣形式
應(yīng)用時,將測量獲得的輸出值代入方程式(5)或式(6),解出FM。對于多元高次方程組而言,逆解運算較為因難,主要表現(xiàn)在:
1)即使利用Matlab等計算工具,多元高次方程組的解也需較長時間(當(dāng)次數(shù)大于2時);
2)力輸出的唯一性使在多元高次方程組多解結(jié)果中選擇其一也較為困難,且需要增加額外的約束條件;
3)方程式(3)的形式越復(fù)雜,如增加開方項、指數(shù)項或三解函數(shù)項等,對應(yīng)方程式(5)或式(6)的求解就越困難。
但方程式(5)或式(6)的通解形式可表示為
式中fi表示與傳感器各維輸出項相關(guān)的多項式函數(shù),該函數(shù)結(jié)構(gòu)形式不唯一,主要由方程式(5)或式(6)的結(jié)構(gòu)形式?jīng)Q定。鑒于此,針對多維力傳感器,本文提出非線性正解耦方法,該方法通過直接構(gòu)造力/力矩信息與輸出信息(通常是電壓信息)間的關(guān)系函數(shù),與傳統(tǒng)線性解耦方法相比,方法3無需進行曲線擬合、解方程組,故稱該方法為正解耦方法,該方法也無需假定對象是線性系統(tǒng)。以Fx為例,其關(guān)系方程可表示為
該方程包含主輸出項u1、耦合項ui(i=2,…,6)、交叉耦合項ui·uj(i≠j,i,j=1,…,6)。利用同樣方法,可分別構(gòu)造出 Fy,F(xiàn)z,Mx,My,Mz。因此,公式(8)經(jīng)擴展后用矩陣形式表示
為了方便求解待定系數(shù)矩陣 A,B,C,G,H和R,方程式(9)重新改寫為
矩陣F和Q的維數(shù)由標(biāo)定數(shù)據(jù)集確定。根據(jù)標(biāo)定的數(shù)據(jù)矩陣集和廣義逆矩陣中的矩陣右逆,可得解耦矩陣
該方法中,多項式結(jié)構(gòu)的選擇及維間交叉項形式與求解解耦矩陣的難易無關(guān),若矩陣Q右逆不存在,可利用Moore-Penrose逆實現(xiàn)最佳最小二乘解。
利用文獻[5]中的完整標(biāo)定數(shù)據(jù)集(取遞增負(fù)載與遞減負(fù)載兩者對應(yīng)輸出值之和的均值作為其相應(yīng)輸出值),可得(7)式中的F為6×51矩陣,Q為55×51矩陣。解耦矩陣具體計算步驟如下:
1)提取標(biāo)定數(shù)據(jù)集中的力/力矩信息,構(gòu)造矩陣F∈R6×51,如 Fx=5,擴展為向量[5 0 0 0 0 0]T,如 Fy=5,擴展為向量[0 5 0 0 0 0]T,依此類推;
2)提取標(biāo)定數(shù)據(jù)集中的輸出信息,構(gòu)造矩陣 U∈R6×51,其每一列是與步驟(1)中加載項相對應(yīng)的6路輸出信息;
3)計算向量 U2∈R6×51,U(i,j)=U(i,j)·U(j,j);
4)計算向量 Uu∈R15×51,Uu(m,n)=U(i,n)·U(j,n),i≠j,i,j=1,…,6;
5)計算 U1/3=nthroot(U,3),=nthroot(Uu,3),=nthroot(Uu,5);
6)構(gòu)造矩陣
最后獲得
針對文獻[5]中的標(biāo)定數(shù)據(jù)集,分別采用方法1和方法2的解耦結(jié)果在文獻[6]中已作比較,這里不再贅述。本文僅對方法2與方法3的解耦結(jié)果作比較。利用方法2與方法3所獲得的解耦結(jié)果如附表1和表2所示。表中數(shù)據(jù)均采用科學(xué)表示法。圖1是表中主輸出項Mz在2種方法下產(chǎn)生的誤差柱狀圖。
圖1 Mz方向上的解耦誤差Fig 1 Decoupling error of Mz-axis
1)采用非線性正解耦方法,系統(tǒng)輸出優(yōu)于采用傳統(tǒng)的線性解耦方法;
2)非線性正解耦無需進行單維和維間的曲線擬合與方程逆解;
3)非線性正解耦方程可根據(jù)實際需要,其多項式方程可任意擴展。
考慮到標(biāo)定時所使用的單位(力:kgf;力矩:kgf·m),方法3也存在解耦不理想情況,如表2中的Mx輸出項。
表1 Fz加載,其它方向無加載時解耦結(jié)果(力(kgf),力矩(10-2kgf·m))Tab 1 Decoupling results of Fz,no load in other directions(Force(kgf),Moment(10 -2kgf·m))
表2 Mz加載,其它方向無加載時解耦結(jié)果 (力(kgf),力矩(10-2kgf·m))Tab 2 Decoupling results of Mzis loaded,no load in other directions(Force(kgf),Moment(10 -2kgf·m))
[1]Bicchi A.A criterion for the optimal design of multi-axis force sensors[J].Robotics and Autonomous Systems,1992,10(4):269-286.
[2]陳 峰,余 永,葛運建.基于接觸力信息的穿戴型步行助力機器人研究[J].高技術(shù)通訊,2008,18(12):1269-1273.
[3]羅健飛,吳寶元,申 飛,等.支持筆交互的手寫設(shè)備設(shè)計與實現(xiàn)[J].儀器儀表學(xué)報,2012,3(9):2215-2124.
[4]張曉輝,高 峰.新型機器人手指六維力傳感器設(shè)計[J].傳感器技術(shù),2003,22(9):22-27.
[5]許德章,吳仲城,葛運建,等.機器人六維腕力傳感器耦合矩陣的確定與攝動分析[J].儀器儀表學(xué)報,2005,26(1):75-81.
[6]張景柱,郭 凱,徐 誠.六維力傳感器靜態(tài)解耦算法應(yīng)用研究[J].傳感器與微系統(tǒng),2007,26(12):58-59(62).
[7]劉廣孚,張為公,李忠國.多維車輪力傳感器靜態(tài)耦的研究[J].儀表技術(shù)與傳感器,2006(7):15-18.
[8]徐科軍,李 成.多維腕力傳感器靜態(tài)解耦的研究[J].合肥工業(yè)大學(xué)學(xué)報:自然科學(xué)版,1999,22(2):1-6.
[9]王國泰,易秀芳,王理麗.六維力傳感器發(fā)展中的幾個問題[J].機器人,1997,19(6):474-478.
[10]姜 力,劉 宏,蔡鶴皋.多維力/力矩傳感器靜態(tài)解耦的研究[J].儀器儀表學(xué)報,2004,25(3):284-287.
[11]曹會彬,孫玉香,劉利民,等.多維力傳感器耦合分析及解耦方法的研究[J].傳感技術(shù)學(xué)報,2011,24(8):1136-1140.
[12]李海濱,段志信,高理富,等.基于神經(jīng)網(wǎng)絡(luò)的六維力傳感器靜態(tài)標(biāo)定方法研究[J].內(nèi)蒙古工業(yè)大學(xué)學(xué)報,2006,25(2):85-89.
[13]劉 濤,王 華.傳感器非線性校正的遺傳支持向量機方法[J].電子測量與儀器學(xué)報,2011,25(1):56-60.