董 翔,許子健,曹會彬,孫玉香,高理富
(1.安徽大學(xué)電氣工程與自動化學(xué)院,安徽 合肥 230601;2.中國科學(xué)院合肥物質(zhì)科學(xué)研究院,安徽 合肥 230031;3.中國科學(xué)技術(shù)大學(xué)信息科學(xué)技術(shù)學(xué)院,安徽 合肥 230027)
六維力傳感器是機器人實現(xiàn)智能化控制的核心器件之一,在機器人領(lǐng)域占有非常重要的地位[1]。目前,基于電阻應(yīng)變式[2]測量原理的六維力傳感器被廣泛應(yīng)用,其采用電阻應(yīng)變片感應(yīng)外力變化,通過惠斯通橋路轉(zhuǎn)換為電壓輸出,具有測量精度高,靜態(tài)性能穩(wěn)定等優(yōu)點。然而六維力傳感器的各維度間存在耦合,嚴(yán)重影響傳感器的測量精度[3]。
六維力傳感器的解耦方法包括結(jié)構(gòu)解耦和軟件解耦。結(jié)構(gòu)解耦是從結(jié)構(gòu)設(shè)計、加工工藝等方面減小耦合,但是這種方法操作難度大,不易實現(xiàn),且成本較高。2017 年,Niu 等[4]設(shè)計了一種基于過約束并聯(lián)機構(gòu)的新型傳感器結(jié)構(gòu),用于大量程力測量,實驗結(jié)果表明,通過該方法獲得的預(yù)測力/力矩與實際加載的力/力矩基本一致,最大耦合誤差為1.98%。2021 年,Xiong 等[5]設(shè)計了一種多層感知的彈性體結(jié)構(gòu),通過差分測量的方法感知力/力矩的應(yīng)變,降低了六維力傳感器的耦合干擾。2022 年,Nasab等[6]設(shè)計了一種非對稱結(jié)構(gòu)的三維力傳感器,傳感器的每一維都獨立地在力和位移之間建立一種由硅結(jié)構(gòu)覆蓋的關(guān)系,實驗結(jié)果表明,非對稱結(jié)構(gòu)有效降低了三維力之間的耦合。軟件解耦采用軟件算法實現(xiàn)解耦,具有成本低、靈活性高等優(yōu)點。軟件解耦可以分為兩種,一種是線性解耦,另一種是非線性解耦。線性解耦是利用最小二乘法(LS)確定輸入輸出的關(guān)系,然而六維力傳感器的輸入和輸出關(guān)系通常是非線性的,因此基于最小二乘法的線性解耦很難取得較好的解耦效果。常用的非線性解耦方法包括:BP 神經(jīng)網(wǎng)絡(luò)(BPNN)、極限學(xué)習(xí)機(ELM)、支持向量回歸(SVR)等[7]。BP 神經(jīng)網(wǎng)絡(luò)是一種采用誤差反向傳播算法訓(xùn)練的多層前饋神經(jīng)網(wǎng)絡(luò),由于其簡單有效,BP 神經(jīng)網(wǎng)絡(luò)是一種應(yīng)用廣泛的非線性解耦方法,然而這種基于梯度下降的迭代學(xué)習(xí)算法訓(xùn)練時間長,且易陷入局部最優(yōu)解。2020 年,張弘昌[8]采用遺傳算法對BP 神經(jīng)網(wǎng)絡(luò)的初始權(quán)值和閾值進(jìn)行優(yōu)化,有效降低了多維力傳感器的耦合誤差。2022 年,Li 等[9]提出了一種基于全局最優(yōu)適應(yīng)度函數(shù)的BP 神經(jīng)網(wǎng)絡(luò)算法(GOFF-BP),來解決三維力之間的解耦問題,解耦算法能在短時間內(nèi)找到最優(yōu)解,解耦后Ⅰ類誤差和Ⅱ類誤差均控制在1.5%以內(nèi)。2021 年,Liu 等[10]提出了兩種自適應(yīng)偏置徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)(RBFNN),具有用于多維力解耦的局部偏置和全局偏置方法,該方法可以提高RBFNN對具有顯著偏差的動力學(xué)的逼近精度,從而提高控制性能。極限學(xué)習(xí)機是一種單隱含層前饋神經(jīng)網(wǎng)絡(luò),通過隨機生成網(wǎng)絡(luò)權(quán)值和閾值的操作減少了訓(xùn)練時間,同時具有較高的預(yù)測精度。2018 年,梁橋康等[11]采用最小二乘法、BP 神經(jīng)網(wǎng)絡(luò)和極限學(xué)習(xí)機分別對五維力/力矩傳感器進(jìn)行解耦,實驗結(jié)果表明,基于極限學(xué)習(xí)機的解耦方法能在保持效率的前提下獲得較高的解耦精度。
雖然極限學(xué)習(xí)機具有訓(xùn)練速度快、泛化性能好等優(yōu)點,但隨機生成權(quán)值和閾值導(dǎo)致網(wǎng)絡(luò)穩(wěn)定性較差,容易陷入局部最優(yōu)解,同時隱含層神經(jīng)元數(shù)量難以確定,影響網(wǎng)絡(luò)的預(yù)測精度。因此,許多學(xué)者對極限學(xué)習(xí)機進(jìn)行優(yōu)化,主要優(yōu)化方法是將智能優(yōu)化算法應(yīng)用于極限學(xué)習(xí)機。2021 年,鄭小霞等[12]提出了基于變分模態(tài)分解(VMD)和灰狼算法優(yōu)化極限學(xué)習(xí)機(GWO-ELM)的軸承故障診斷方法,實驗結(jié)果表明,GWO-ELM 模型能夠有效識別故障類型,同時具有較高的故障識別率。2022 年,鐘琳等[13]采用粒子群算法(PSO)對極限學(xué)習(xí)機進(jìn)行優(yōu)化,構(gòu)建PSO-ELM 預(yù)測模型,應(yīng)用于中國石油股票價格預(yù)測。2022 年,盧雪琴等[14]提出了一種基于鯨魚算法優(yōu)化極限學(xué)習(xí)機的微電網(wǎng)故障診斷方法,仿真結(jié)果表明,與BP 神經(jīng)網(wǎng)絡(luò)、RBF 神經(jīng)網(wǎng)絡(luò)和極限學(xué)習(xí)機相比,基于鯨魚優(yōu)化算法優(yōu)化極限學(xué)習(xí)機的故障診斷模型具有更強的泛化性能和更高的識別精度。
煙花算法是一種基于煙花爆炸產(chǎn)生火花現(xiàn)象的群智能優(yōu)化算法,由譚營等[15]于2010 年提出。煙花算法具有出色的全局搜索和局部搜索能力,是一種求解全局空間最優(yōu)解的有效方法,煙花算法在交通、云計算、紡紗等領(lǐng)域具有廣泛應(yīng)用[16-18]。本文采用改進(jìn)煙花算法(IFWA)對極限學(xué)習(xí)機進(jìn)行優(yōu)化,獲得網(wǎng)絡(luò)的最佳初始權(quán)值和閾值,并基于此提出了改進(jìn)煙花算法優(yōu)化極限學(xué)習(xí)機(IFWA-ELM)的解耦算法。同時,本文以應(yīng)用于4 500 m 深海機械臂的六維力傳感器作為研究對象,進(jìn)行了標(biāo)定實驗和解耦實驗。實驗結(jié)果表明,IFWA-ELM 解耦算法具有較好的非線性解耦能力。
極限學(xué)習(xí)機隨機生成輸入層與隱含層之間的連接權(quán)值及隱含層神經(jīng)元的閾值,且在訓(xùn)練過程中無需調(diào)整,只需要設(shè)置隱含層神經(jīng)元數(shù)量,便可以得到唯一最優(yōu)解。網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示。
圖1 ELM 網(wǎng)絡(luò)結(jié)構(gòu)圖
假設(shè)有N個訓(xùn)練樣本(Xi,Yi),其中1≤i≤N,Xi=[xi1,xi2,…,xin]T∈Rn為第i個樣本的輸入向量,Yi=[yi1,yi2,…,yim]T∈Rm為第i個樣本的輸出向量,則ELM 網(wǎng)絡(luò)可以表示為:
式中:g(x)為激活函數(shù);Wf=[wf1,wf2,…,wfn]T為輸入權(quán)值;bf是第f個隱含層神經(jīng)元的閾值;βf=[βf1,βf2,…,βfm]為輸出權(quán)值;Ti=[ti1,ti2,…tim]T為第i個樣本的輸出向量。
ELM 的學(xué)習(xí)目標(biāo)是使網(wǎng)絡(luò)的輸出誤差盡可能最小,表示為:
即存在一組合適的W,b和β,使得:
式中:H+為隱含層輸出矩陣H的廣義逆矩陣。
煙花算法主要包括3 個部分:爆炸算子、變異算子和選擇策略。
爆炸算子的核心思想是適應(yīng)度值較優(yōu)的煙花在小范圍產(chǎn)生大量火花,適應(yīng)度值較差的煙花在大范圍產(chǎn)生少量火花。根據(jù)適應(yīng)度函數(shù)f(x)計算煙花適應(yīng)度值,并據(jù)此計算煙花的爆炸半徑Ri和爆炸火花數(shù)量Ni。
式中:r和n是常數(shù),用來限制爆炸半徑和爆炸火花數(shù)量;ε是一個極小的非零常數(shù),用來避免分母為零;f(xi)表示煙花xi的適應(yīng)度值;fmin和fmax分別表示最優(yōu)和最差煙花的適應(yīng)度值。
煙花爆炸通過位移在k維搜索空間內(nèi)產(chǎn)生火花,位移操作公式如下:
式中:表示第i個煙花在第k維上的位置;rand(0,Ri)表示在爆炸半徑Ri內(nèi)生成的均勻隨機數(shù)。
為了增加爆炸火花的多樣性,隨機選取部分火花進(jìn)行變異操作,公式如下:
式中:g是均值為1、方差為1 的高斯分布隨機數(shù)。
煙花算法采用基于距離的選擇策略。首先保留最優(yōu)個體進(jìn)入下一代,再選擇其他N-1 個個體。在候選集合K中,與其他個體距離較遠(yuǎn)的個體更有可能被選中。
式中:d(xi,xj)表示個體xi和個體xj之間的歐氏距離;R(xi)表示個體xi與其他個體的距離之和,K表示候選集合的火花總數(shù)。
采用輪盤賭的方式進(jìn)行選擇,每個個體被選擇的概率為:
1.3.1 自適應(yīng)爆炸半徑
在原始煙花算法中,適應(yīng)度值最優(yōu)的煙花產(chǎn)生最多火花。然而最優(yōu)煙花通過式(6)計算得到的爆炸半徑非常小,接近于0,因此沒有發(fā)揮挖掘作用。本文對最優(yōu)煙花的爆炸半徑進(jìn)行改進(jìn),引入自適應(yīng)方法[19]。煙花算法總是選取最優(yōu)個體作為下一代煙花。自適應(yīng)方法是利用這一代獲得的信息去計算最優(yōu)煙花在下一代的爆炸半徑。在爆炸和變異產(chǎn)生的火花中,選擇一個個體,以其與最優(yōu)個體的距離,作為最優(yōu)煙花在下一代的爆炸半徑[13]。選取個體滿足條件:
①適應(yīng)度值大于這一代的煙花X。
②在滿足條件①的所有個體中,與最優(yōu)個體的距離最短。
式中:表示選擇的個體;x?表示所有煙花和火花中適應(yīng)度值最優(yōu)個體;d是一種距離度量,這里采用所有維度中最大的差值。
條件①要求所選個體與最優(yōu)個體的適應(yīng)度值之差大于煙花與最優(yōu)個體的適應(yīng)度值之差,即
這個不等式確保評價函數(shù)在范圍d(,x?)對應(yīng)值域上的距離至少比這一代取得的進(jìn)步更大。通過d(,x?)來估計距離d(,x?),從而在下一代爆炸中找到一個更好的位置~,滿足:
條件②用于確保半徑收斂。為了減慢算法收斂速度,將計算得到的自適應(yīng)半徑乘以一個特定的系數(shù)λ,經(jīng)過多次實驗,取λ=1.3。同時,為了避免半徑劇烈波動,引入平滑機制,使用計算得出的自適應(yīng)半徑和這一代爆炸半徑的平均值作為最優(yōu)煙花在下一代的爆炸半徑。
煙花種群初始化后,將最優(yōu)煙花的爆炸半徑設(shè)置為整個搜索空間的范圍。對于之后的每一代,采用自適應(yīng)方法計算最優(yōu)煙花在下一代的爆炸半徑。其他煙花的爆炸半徑仍根據(jù)式(6)計算。
1.3.2 新型高斯變異算子
在原始煙花算法中,當(dāng)隨機產(chǎn)生的高斯分布隨機數(shù)接近0 時,變異火花的位置會接近0,而且迭代后期很難跳出。本文采用新型高斯變異算子,使得變異火花沿著當(dāng)前位置和種群中最優(yōu)個體位置組成的直線方向上進(jìn)行變異。
式中:e是均值為0、方差為1 的高斯分布隨機數(shù),xbk為當(dāng)前種群中適應(yīng)度值最優(yōu)個體在第k維上的位置信息。
1.3.3 精英選擇策略
原始煙花算法的選擇策略需要構(gòu)建任意兩個個體之間的歐氏距離,這種策略雖然增加了下一代種群的多樣性,但也增加了算法訓(xùn)練時間。煙花算法通過適應(yīng)度值對個體質(zhì)量進(jìn)行評價,即適應(yīng)度值越小,個體質(zhì)量越高。為了減少算法訓(xùn)練時間,采用精英選擇策略。首先適應(yīng)度值最小的個體直接保留到下一代,然后采用輪盤賭的方法在候選集中選擇剩余的N-1 個煙花,煙花被選擇的概率公式如下:
易知,適應(yīng)度值越低的個體被選擇的概率越大,反之越小。這樣使下一代更容易得到優(yōu)質(zhì)的煙花,提高了尋優(yōu)效率。同時,適應(yīng)度值最差的煙花也有概率被選擇進(jìn)入下一代,提高了種群的多樣性,避免算法在迭代過程中過早收斂。
改進(jìn)煙花算法優(yōu)化極限學(xué)習(xí)機是用改進(jìn)煙花算法來優(yōu)化極限學(xué)習(xí)機的初始權(quán)值和閾值,尋找最佳網(wǎng)絡(luò)參數(shù)。輸入層的權(quán)值和隱含層閾值作為煙花種群的參數(shù),種群的維度大小為n=h(d+1),h為輸入層神經(jīng)元個數(shù),d為隱含層神經(jīng)元個數(shù)。通過改進(jìn)煙花算法得到最佳初始權(quán)值和閾值,代入網(wǎng)絡(luò)進(jìn)行訓(xùn)練。優(yōu)化后的極限學(xué)習(xí)機能夠有效降低隨機生成權(quán)值和閾值對網(wǎng)絡(luò)性能的影響,提高模型預(yù)測的準(zhǔn)確性和穩(wěn)定性。設(shè)置適應(yīng)度函數(shù)為:
式中:yi為真實值,為預(yù)測值,n為樣本數(shù)量。IFWA-ELM 算法流程如圖2 所示,具體流程如下:
圖2 IFWA-ELM 算法流程圖
①初始化種群,隨機生成N個煙花,設(shè)定初始迭代次數(shù)t=1,最大迭代次數(shù)為T;
②計算每個煙花的適應(yīng)度值,計算爆炸半徑和爆炸火花數(shù)量進(jìn)行爆炸操作,隨機選擇部分火花進(jìn)行變異操作;
③根據(jù)選擇策略在當(dāng)前種群選擇出N個個體作為下一代煙花種群;
④令t=t+1,判斷迭代終止條件t>T是否成立,如果成立則終止迭代,否則繼續(xù)執(zhí)行步驟②;
⑤將最優(yōu)煙花個體對應(yīng)的參數(shù)作為極限學(xué)習(xí)機的最佳初始權(quán)值和閾值,構(gòu)建IFWA-ELM 網(wǎng)絡(luò)模型。
標(biāo)定是指利用標(biāo)準(zhǔn)的計量設(shè)備對待檢測的設(shè)備進(jìn)行校準(zhǔn)的過程,六維力傳感器的精確標(biāo)定對測量性能至關(guān)重要。通過對六維力傳感器的標(biāo)定,可以獲得傳感器在不同受力狀態(tài)下,輸入力/力矩與輸出電壓的關(guān)系。同時,獲得的大量力/力矩值與電壓值為解耦實驗提供訓(xùn)練樣本和測試樣本。本文以應(yīng)用于4 500 m 深海機械臂的六維力傳感器作為研究對象,傳感器的實物如圖3 所示。傳感器的參數(shù)如表1所示。
表1 六維力傳感器參數(shù)
圖3 六維力傳感器
六維力傳感器的常用標(biāo)定方法是用已知標(biāo)準(zhǔn)力源在不同方向?qū)鞲衅骷虞d標(biāo)準(zhǔn)力/力矩,加載的力/力矩從最小測量范圍到最大測量范圍呈恒定變化,同時在各加載點檢測并記錄傳感器的輸出電壓。重復(fù)這個過程三次,得到完整的標(biāo)定數(shù)據(jù)。標(biāo)定平臺量程如下:Fx/Fy為1 000 N,F(xiàn)z為2 000 N,Mx/My/Mz為50 Nm,精度為0.1%F.S.。從六維力傳感器標(biāo)定平臺,到給傳感器施加載荷的標(biāo)準(zhǔn)砝碼,再到力加載過程中的方向偏差,都會產(chǎn)生加載誤差,從而影響傳感器的精度[20]。例如,定滑輪軸承處存在摩擦力會產(chǎn)生附加力矩作用,進(jìn)而產(chǎn)生誤差。通常情況下,標(biāo)定平臺自身精度指標(biāo)高于傳感器一個等級。六維力傳感器的標(biāo)定平臺和原理圖如圖4、圖5 所示。具體標(biāo)定流程如下:
圖4 六維力傳感器標(biāo)定平臺
圖5 標(biāo)定平臺原理圖
①跟據(jù)六維力傳感器在各方向的量程范圍,在各方向劃分若干加載點;
②調(diào)整標(biāo)定平臺,將傳感器用螺栓固定在標(biāo)定平臺上,并在其頂部安裝加載帽;
③對六維力傳感器各方向輸出電壓進(jìn)行零基線校準(zhǔn);
④在Fx正方向上按劃分的加載點逐步增加載荷至滿量程,然后逐步減少載荷至零,重復(fù)3 次,記錄輸出電壓;
⑤按照步驟④方法進(jìn)行Fx負(fù)方向加載和卸載,并記錄數(shù)據(jù);
⑥按照步驟④、⑤方法對其他方向進(jìn)行標(biāo)定,完成各方向的標(biāo)定,得到完整標(biāo)定實驗數(shù)據(jù)。
標(biāo)定結(jié)果如圖6 所示,根據(jù)標(biāo)定曲線圖可知,當(dāng)某一方向施加載荷時,其他方向的輸出電壓都會產(chǎn)生或多或少的影響。因此,六維力傳感器的各個方向之間存在一定的耦合。產(chǎn)生耦合的原因可以分為兩種:結(jié)構(gòu)性耦合和誤差性耦合。結(jié)構(gòu)性耦合產(chǎn)生的原因主要是因為彈性體的一體化結(jié)構(gòu),某些方向之間必然存在耦合,例如Mx方向與Fy方向、My方向與Fx方向之間。誤差性耦合產(chǎn)生的主要原因是貼片水平的限制,在手工粘貼應(yīng)變片的過程中,應(yīng)變片實際粘貼位置與期望粘貼位置難免存在一定偏差。六維力傳感器的維間耦合嚴(yán)重影響傳感器的測量精度,因此需要對六維力傳感器進(jìn)行解耦。
圖6 標(biāo)定結(jié)果
首先對標(biāo)定數(shù)據(jù)進(jìn)行訓(xùn)練集和測試集的劃分,采用留出法進(jìn)行訓(xùn)練集與測試集的劃分,標(biāo)定數(shù)據(jù)的80%用于訓(xùn)練IFWA-ELM 算法,20%用于測試算法的解耦精度,訓(xùn)練集和測試集數(shù)據(jù)均包括全區(qū)間各方向不同加載情況下輸出電壓與加載力/力矩數(shù)據(jù)。在所處理的解耦樣本中,最大力值為1 010 N,而力矩值的大小在±62 N?m 以內(nèi),數(shù)值的大小存在顯著差異。為了消除不同量綱對數(shù)據(jù)分析的影響,同時提高網(wǎng)絡(luò)的訓(xùn)練效率,需對數(shù)據(jù)進(jìn)行歸一化處理,歸一化公式如下:
式中:min 和max 分別表示數(shù)據(jù)中的最小值和最大值;old_value 表示歸一化前的數(shù)據(jù);new_value 表示歸一化后的數(shù)據(jù)。數(shù)據(jù)歸一化處理后,映射到[-1,1]區(qū)間。然后構(gòu)建IFWA-ELM 解耦模型,網(wǎng)絡(luò)的輸入層為傳感器的輸出電壓,節(jié)點數(shù)為6,輸出層為加載的力或力矩,節(jié)點數(shù)為6,隱含層激活函數(shù)為sigmoid。改進(jìn)煙花算法的參數(shù)設(shè)置為:煙花種群大小N=5,變異火花數(shù)量M=5,爆炸半徑調(diào)節(jié)常數(shù)r=1,爆炸火花數(shù)量調(diào)節(jié)常數(shù)n=50,爆炸火花數(shù)量上限值UN=10,爆炸火花數(shù)量下限值LN=2,最大迭代次數(shù)T=500。
隱含層神經(jīng)元數(shù)量對極限學(xué)習(xí)機的預(yù)測性能有較大影響。為了確定IFWA-ELM 算法的隱含層神經(jīng)元數(shù)量的最優(yōu)取值,以均方誤差(MSE)作為指標(biāo)來分析隱含層神經(jīng)元數(shù)量對算法預(yù)測精度的影響,均方誤差的計算公式如下:
式中:yi為第i個樣本的真實值,為第i個樣本的預(yù)測值,n為樣本數(shù)量。
同時,為了驗證IFWA-ELM 算法的預(yù)測性能,分別使用相同的數(shù)據(jù)樣本對ELM、PSO-ELM、FWAELM 進(jìn)行訓(xùn)練。PSO 算法的參數(shù)設(shè)置如下:c1=c2=1.494 45,種群大小為5,個體最大值popmax=5,個體最小值popmin=-5,個體速度最大值Vmax=1.25,個體速度最小值Vmin=-1.25,最大迭代次數(shù)maxgen =500。對于FWA 算法的參數(shù)選取采用與3.1 節(jié)中IFWA 算法相同的參數(shù)。
如圖7 所示,原始ELM 算法的預(yù)測精度較差,當(dāng)隱含層神經(jīng)元為30,均方誤差達(dá)到99.5。使用智能優(yōu)化算法優(yōu)化后的ELM 算法提高了預(yù)測精度。在不同隱含層神經(jīng)元數(shù)量下,IFWA-ELM 算法的均方誤差均低于PSO-ELM 和FWA-ELM。當(dāng)隱含層神經(jīng)元數(shù)量逐漸增加到90 時,IFWA-ELM 和ELM 的均方誤差均先減小后趨于穩(wěn)定??梢?,增加隱含層神經(jīng)元數(shù)量有利于提高解耦精度。IFWA-ELM 算法在均方誤差最小時的隱含層神經(jīng)元數(shù)量為75,而ELM 算法在均方誤差最小時的隱含層神經(jīng)元數(shù)量為80。當(dāng)均方誤差最小時,IFWA-ELM 比ELM 少了5 個隱含層神經(jīng)元,同時IFWA-ELM 的最小均方誤差比ELM 降低了66.327%。對比ELM,IFWA-ELM能以更少的隱含層神經(jīng)元數(shù)量得到更高的解耦精度。
圖7 隱含層神經(jīng)元數(shù)量的影響對比
六維力傳感器在進(jìn)行解耦之后,需要對傳感器的測量精度進(jìn)行評價。與單維力傳感器不同,六維力傳感器的誤差除了各方向加載誤差外,還存在各方向之間的耦合誤差。采用Ⅰ類誤差和Ⅱ類誤差作為六維力傳感器的測量精度評價指標(biāo)。Ⅰ類誤差反應(yīng)主方向測量值與實際加載值之間的偏離程度,也稱主方向上的非線性誤差。其中,i方向的Ⅰ類誤差用下式表示:
式中:Fi(P)表示i方向測得力/力矩;Fi(L)表示i方向?qū)嶋H施加力/力矩;Fi(FS)表示i方向的全量程值。
Ⅱ類誤差表示某一方向施加載荷導(dǎo)致其他方向產(chǎn)生附加的干擾力/力矩,也稱耦合誤差。其中,j方向施加載荷對i方向產(chǎn)生的耦合誤差用下式表示:
式中:Fij表示i方向施加力/力矩為零時,j方向施加力/力矩,在i方向所測得力/力矩;Fi(FS)表示i方向的全量程值。
為了驗證IFWA-ELM 算法的解耦性能,選取LS、BPNN 和ELM 進(jìn)行對比分析。BPNN 算法的參數(shù)如下:隱含層數(shù)設(shè)置為1,隱含層和輸出層的激活函數(shù)分別設(shè)置為tansig 和purelin,選取trainlm 作為網(wǎng)絡(luò)的訓(xùn)練函數(shù),通過多次實驗分析,隱含層神經(jīng)元數(shù)量設(shè)置為60,學(xué)習(xí)速率為0.01,最大迭代次數(shù)為1 000,訓(xùn)練最小誤差為1e-04。通過3.2 節(jié)的分析確定ELM 算法的隱含層神經(jīng)元數(shù)量為80,IFWAELM 算法的隱含層神經(jīng)元數(shù)量為75。
根據(jù)和Ⅰ類誤差和Ⅱ類誤差的定義,對六維力傳感器解耦后的測量精度進(jìn)行分析。六維力傳感器使用不同算法解耦后的Ⅰ類誤差和Ⅱ類誤差如表2所示。從表2 可看出,傳統(tǒng)線性解耦算法LS 的解耦性能較差,解耦后各方向的最大Ⅰ類誤差為2.69%。BPNN 和ELM 各方向的最大Ⅰ類誤差分別為0.53%和0.312%,Ⅰ類誤差大幅降低。IFWA-ELM 算法的Ⅰ類誤差被控制在0.27%以內(nèi),且6 個方向的Ⅰ類誤差均小于其他算法,IFWA-ELM 算法能夠有效降低各方向的非線性誤差。
表2 解耦算法的結(jié)果對比
Ⅱ類誤差方面,LS 算法的最大Ⅱ類誤差為2.655%,耦合誤差較大。BPNN 算法的最大Ⅱ類誤差為0.33%,ELM 算法的最大Ⅱ類誤差為0.17%,與線性解耦算法相比,基于機器學(xué)習(xí)的非線性解耦算法能夠有效降低六維力傳感器的耦合干擾。IFWAELM 算法的最大Ⅱ類誤差為0.13%,與ELM 算法相比,IFWA-ELM 算法在控制Ⅱ類誤差方面有一定的提高,特別是在Mx、My、Mz方向上,Ⅱ類誤差被控制在0.05%以內(nèi),耦合干擾得到了良好的控制。
根據(jù)解耦實驗的結(jié)果,繪制箱形圖,箱形圖是一種通過5 個數(shù)字來描述數(shù)據(jù)分布的標(biāo)準(zhǔn)方法。如圖8所示,6 個箱形圖顯示了傳感器使用不同解耦算法后各方向的誤差,箱形圖的橫線表示誤差分布的最小、25%、50%、75%和最大分位數(shù)?!啊痢贝碚`差的平均值,“°”代表誤差的離群值。使用IFWA-ELM算法解耦后,6 個方向的誤差平均值和中值控制在0.1%以內(nèi),同時IFWA-ELM 解耦算法的誤差數(shù)據(jù)更加集中。因此,本文提出的IFWA-ELM 算法的解耦性能優(yōu)于LS、BPNN 和ELM,能夠有效提高六維力傳感器的測量精度。
圖8 不同解耦算法的解耦誤差箱形圖
本文提出了一種改進(jìn)煙花算法優(yōu)化極限學(xué)習(xí)機的解耦算法,利用改進(jìn)煙花算法對極限學(xué)習(xí)機的初始權(quán)值和閾值進(jìn)行優(yōu)化。本文以應(yīng)用于4 500 m 深海機械臂的六維力傳感器為研究對象,進(jìn)行標(biāo)定實驗。在標(biāo)定數(shù)據(jù)的基礎(chǔ)上,采用LS、BPNN、ELM 和IFWA-ELM 進(jìn)行解耦實驗。對比LS 和BPNN,IFWA-ELM 算法能夠有效提高解耦精度,解耦后Ⅰ類誤差控制在0.27%以內(nèi),Ⅱ類誤差控制在0.13%以內(nèi)。對比ELM 算法,IFWA-ELM 算法能夠以更少的隱含層神經(jīng)元獲得更高解耦精度,且不易陷入局部最優(yōu)解,具有更好的穩(wěn)定性。實驗結(jié)果表明:IFWA-ELM 解耦算法能夠有效降低六維力傳感器的Ⅰ類、Ⅱ類誤差,提高測量精度。