胡瑞欽,孟少華,張成立,董 愨,張立建
(1. 北京衛(wèi)星環(huán)境工程研究所,北京 100094;2. 北京市航天產(chǎn)品智能裝配技術(shù)與裝備工程技術(shù)研究中心,北京 100094)
在軌服務(wù)(OOS)通常是指在太空中通過人、機(jī)器人或兩者來延長航天器壽命或提高航天器能力的空間裝配、維護(hù)和服務(wù)任務(wù)。為了使在軌服務(wù)系統(tǒng)適應(yīng)微重力、真空、輻照等空間環(huán)境,在地面進(jìn)行充分的試驗(yàn)驗(yàn)證是提高航天飛行成功率的有效措施。對(duì)于在軌服務(wù)技術(shù)的地面模擬試驗(yàn),零重力模擬是其中的關(guān)鍵,也是其中的難點(diǎn)。目前,常用的失重模擬方法主要包括自由落體、拋物線飛行、氣浮、水浮、懸吊和硬件在環(huán)(Hardware in loop,HIL)等方法,也有研究用磁性液體制造流體的超重、失重和微重力環(huán)境。
硬件在環(huán)方法采用原型樣機(jī)與數(shù)學(xué)模型相結(jié)合的方式,是一種半物理仿真方法,可用于空間機(jī)構(gòu)的地面零重力模擬試驗(yàn),如對(duì)載人航天器的在軌對(duì)接進(jìn)行地面模擬。這種方法需要實(shí)時(shí)精確測量模擬對(duì)象的受力,而后借助動(dòng)力學(xué)模型計(jì)算對(duì)象在零重力環(huán)境下的運(yùn)動(dòng)速度,然后由機(jī)器人實(shí)現(xiàn)相應(yīng)的運(yùn)動(dòng)。其中,精確的受力感知是實(shí)現(xiàn)準(zhǔn)確運(yùn)動(dòng)模擬的前提。
對(duì)于機(jī)器人末端負(fù)載的零重力運(yùn)動(dòng)實(shí)現(xiàn),現(xiàn)有技術(shù)主要包括兩種方法。
一種方法是對(duì)機(jī)器人進(jìn)行零力控制,需要預(yù)先辨識(shí)機(jī)器人各部分的質(zhì)量特性,建立機(jī)器人的動(dòng)力學(xué)模型,實(shí)現(xiàn)機(jī)器人運(yùn)動(dòng)過程中關(guān)節(jié)力矩的預(yù)測。在機(jī)器人運(yùn)行過程中實(shí)時(shí)采集關(guān)節(jié)力矩,將實(shí)際關(guān)節(jié)力矩與預(yù)測力矩進(jìn)行比較,得到機(jī)器人受外力的情況,并驅(qū)動(dòng)機(jī)器人實(shí)現(xiàn)零重力運(yùn)動(dòng)。該方法不需要為機(jī)器人額外增加傳感器,但該方法的一個(gè)重要問題是無法準(zhǔn)確測量或預(yù)測關(guān)節(jié)摩擦力矩,對(duì)于大負(fù)載機(jī)器人,難以實(shí)現(xiàn)精確的受力感知。這種方法通常應(yīng)用于輕載機(jī)器人的拖動(dòng)示教。
另一種方法是在機(jī)器人腕部安裝六維力傳感器。六維力傳感器可以精確測量空間任意力系中的三維正交力(,,)和三維正交力矩(,,)。對(duì)于重載機(jī)器人,它仍然可以獲得較高的測量分辨率,從而能夠?qū)崿F(xiàn)更準(zhǔn)確的零重力運(yùn)動(dòng)模擬。
如圖1所示,在機(jī)器人執(zhí)行任務(wù)的動(dòng)態(tài)調(diào)整過程中,機(jī)器人腕部六維力傳感器測得的力與力矩?cái)?shù)據(jù)由四部分造成,即:1)傳感器本身的系統(tǒng)誤差,2)負(fù)載重力效應(yīng),3)負(fù)載的慣性力和慣性矩,4)外部接觸力。
圖1 機(jī)器人末端負(fù)載受力情況示意圖Fig.1 Scheme of the forces on the end load of the robot
為了獲得外部接觸力信息,必須消除六維力傳感器數(shù)據(jù)中傳感器系統(tǒng)誤差、負(fù)載重力、負(fù)載慣性力和力矩的影響。當(dāng)負(fù)載重量較小時(shí),負(fù)載重力和慣性力的影響可以忽略。當(dāng)負(fù)載重量較大,但機(jī)器人運(yùn)動(dòng)的動(dòng)態(tài)程度較低、加速度較小時(shí),應(yīng)考慮重力的影響,而慣性力的影響可以忽略。當(dāng)負(fù)載重量較大,機(jī)器人運(yùn)動(dòng)動(dòng)態(tài)程度較高時(shí),必須考慮負(fù)載重力和慣性力的影響。
本文主要研究使用機(jī)器人模擬物體的失重運(yùn)動(dòng)。由于負(fù)載重量大、運(yùn)動(dòng)動(dòng)態(tài)程度高、運(yùn)動(dòng)范圍大,需要在機(jī)器人的整個(gè)工作空間中準(zhǔn)確地感知負(fù)載的受力,必須考慮負(fù)載慣性力的影響。
在已有研究中,機(jī)器人末端的受力感知模型通常采用解析方法建立,即考慮影響力感知各因素之間的物理關(guān)系,推導(dǎo)出外部接觸力與各已知量之間的數(shù)學(xué)模型。然而,影響力感知的因素較多,包括機(jī)器人底座安裝角度、傳感器在機(jī)器人上的安裝角度、機(jī)器人的位置和姿態(tài)反饋誤差等。使用解析方法很難考慮所有這些因素,而一些因素往往在建模中不得不被忽略,使得建模過程能夠向下進(jìn)行,這不可避免地帶來誤差。
近年來,隨著計(jì)算機(jī)計(jì)算能力的提高,機(jī)器學(xué)習(xí)、人工智能等技術(shù)應(yīng)運(yùn)而生。對(duì)于影響因素復(fù)雜且無法進(jìn)行顯式建模的情況,可以通過采集數(shù)據(jù)樣本和迭代優(yōu)化得到最優(yōu)模型。這種方式不需要關(guān)心模型的具體參數(shù),可以獲得較高的預(yù)測精度。
目前,已有研究利用機(jī)器學(xué)習(xí)進(jìn)行機(jī)器人末端的受力感知。Yao等通過神經(jīng)網(wǎng)絡(luò)建立六維力傳感器的誤差模型,消除傳感器本身的測量誤差。Su等建立一個(gè)神經(jīng)網(wǎng)絡(luò)模型,根據(jù)機(jī)器人反饋的末端姿態(tài)數(shù)據(jù)預(yù)測六維力傳感器數(shù)據(jù)中的負(fù)載重力分量,從而消除負(fù)載重力的影響。Kim等使用慣性測量單元(IMU)測量機(jī)器人末端的姿態(tài),建立了負(fù)載重力分量與負(fù)載姿態(tài)角的神經(jīng)網(wǎng)絡(luò)模型,并實(shí)現(xiàn)了由姿態(tài)角對(duì)負(fù)載重力分量的預(yù)測。在該方法中,姿態(tài)角的反饋及負(fù)載重力影響的補(bǔ)償與機(jī)器人本身無關(guān)。Lin等研究動(dòng)態(tài)條件下機(jī)器人的力感知問題,使用BP神經(jīng)網(wǎng)絡(luò)通過機(jī)器人關(guān)節(jié)角度預(yù)測負(fù)載重力的影響,并進(jìn)一步使用解析方法計(jì)算慣性力/力矩的影響,以實(shí)現(xiàn)機(jī)器人末端的動(dòng)態(tài)受力感知。Dine等使用遞歸神經(jīng)網(wǎng)絡(luò)(RNN),采用機(jī)器人末端姿態(tài)和IMU反饋數(shù)據(jù)作為輸入,預(yù)測機(jī)器人末端的受力。
針對(duì)傳統(tǒng)解析法難以考慮全部因素并進(jìn)行精確建模的問題,本文采用機(jī)器學(xué)習(xí)方法實(shí)現(xiàn)機(jī)器人整個(gè)工作空間內(nèi)負(fù)載的力覺感知。研究中采用BP神經(jīng)網(wǎng)絡(luò),以機(jī)器人末端位置和姿態(tài)數(shù)據(jù)、IMU反饋的加速度和角速度數(shù)據(jù)以及對(duì)角速度數(shù)據(jù)差分得到的角加速度數(shù)據(jù)作為輸入層參數(shù),以六維力傳感器在負(fù)載不受外力作用時(shí)的輸出作為輸出層參數(shù)。與已有研究相比,本研究在輸入層引入了IMU角速度數(shù)據(jù)差分獲得的角加速度信息,這是由于經(jīng)過力學(xué)理論分析,負(fù)載旋轉(zhuǎn)引起的慣性力矩與其角加速度直接相關(guān),角加速度信息的引入有助于獲得更高的預(yù)測精度。另一方面,本研究將機(jī)器人末端的位置和姿態(tài)信息作為輸入層參數(shù)的一部分,在采樣時(shí)盡可能覆蓋機(jī)器人的整個(gè)工作空間,使訓(xùn)練后的模型能夠在機(jī)器人的整個(gè)工作空間內(nèi)獲得較高的精度,滿足零重力運(yùn)動(dòng)的大范圍運(yùn)動(dòng)要求。
對(duì)于圖1所示的機(jī)器人末端負(fù)載,其受到的外部作用力與力矩為
(1)
其中,,為六維力傳感器的力與力矩讀數(shù);,為六維力傳感器自身的系統(tǒng)誤差;,為負(fù)載重力及重力帶來的力矩;為負(fù)載慣性力,可通過負(fù)載質(zhì)量與測得的負(fù)載加速度計(jì)算得到;為負(fù)載質(zhì)心在六維力傳感器坐標(biāo)系中的坐標(biāo)向量;×為負(fù)載慣性力引起的力矩;為負(fù)載轉(zhuǎn)動(dòng)帶來的慣性力矩。
傳感器的系統(tǒng)誤差,為常量,易通過靜態(tài)標(biāo)定得到。對(duì)于負(fù)載重力及重力帶來的力矩,,需要考慮負(fù)載重力大小、方向、及質(zhì)心在六維力傳感器坐標(biāo)系中的坐標(biāo)。假設(shè)負(fù)載重力大小為,重力方向與六維力傳感器坐標(biāo)系,,軸間的夾角為,,,則可計(jì)算得到負(fù)載重力在六維力傳感器坐標(biāo)系3個(gè)坐標(biāo)軸上的投影為
(2)
假設(shè)負(fù)載質(zhì)心在六維力傳感器坐標(biāo)系中的坐標(biāo)為(,,),負(fù)載重力對(duì),,軸的作用力矩分量分別為
(3)
在機(jī)器人運(yùn)動(dòng)過程中,由于重力方向始終豎直向下,重力方向與六維力傳感器坐標(biāo)系,,軸間的夾角,,也隨機(jī)器人的運(yùn)動(dòng)而實(shí)時(shí)變化,因此,計(jì)算重力影響分量需要實(shí)時(shí)采集機(jī)器人末端姿態(tài)數(shù)據(jù)。
對(duì)于負(fù)載慣性力,根據(jù)牛頓第二定律,負(fù)載慣性力為
=-m
(4)
其中,表示負(fù)載質(zhì)量,為負(fù)載質(zhì)心位置的運(yùn)動(dòng)加速度。
對(duì)于負(fù)載轉(zhuǎn)動(dòng)帶來的慣性力矩,根據(jù)歐拉公式得到
(5)
基于以上分析,采用傳統(tǒng)解析方式進(jìn)行機(jī)器人末端動(dòng)態(tài)受力感知,需要建立在以下數(shù)據(jù)的基礎(chǔ)上:
(1)常量數(shù)據(jù):①六維力傳感器測量系統(tǒng)誤差;②機(jī)器人底座安裝角度、傳感器在機(jī)器人上的安裝角度;③負(fù)載質(zhì)量大小、質(zhì)心在六維力傳感器坐標(biāo)系中的坐標(biāo);④負(fù)載慣性張量。
(2)變量數(shù)據(jù):①六維力傳感器讀數(shù);②機(jī)器人末端實(shí)時(shí)位姿;③負(fù)載運(yùn)動(dòng)的加速度、角速度、角加速度。
對(duì)于上述變量數(shù)據(jù),六維力傳感器讀數(shù)由六維力傳感器直接得到。機(jī)器人末端實(shí)時(shí)位姿可以由機(jī)器人控制系統(tǒng)實(shí)時(shí)得到,對(duì)于串聯(lián)式的工業(yè)機(jī)器人,由于其結(jié)構(gòu)特點(diǎn),機(jī)器人反饋的末端位姿往往存在較大誤差。而負(fù)載運(yùn)動(dòng)的加速度、角速度、角加速度可以由機(jī)器人的位姿、速度反饋換算得到,也可以借助慣性測量單元(IMU)等傳感器測量得到。
對(duì)于上述常量數(shù)據(jù),機(jī)器人底座安裝角度、傳感器在機(jī)器人上的安裝角度需要提前進(jìn)行測量標(biāo)定,或通過機(jī)械定位確保安裝精度。其余常量也需要提前進(jìn)行辨識(shí),而對(duì)于負(fù)載慣性張量,難以進(jìn)行精確的辨識(shí)。常量數(shù)據(jù)的誤差將影響最終的受力感知誤差。
若采用傳統(tǒng)解析方式,需要提前對(duì)上述常量進(jìn)行精確標(biāo)定,并在機(jī)器人運(yùn)動(dòng)過程中對(duì)上述變量進(jìn)行精確采集。而由于部分常量(如慣性張量)難以精確測定,部分變量(如機(jī)器人末端位姿)的誤差較大且難以進(jìn)行精確測定補(bǔ)償,使得使用傳統(tǒng)解析方法難以滿足機(jī)器人在大負(fù)載、高動(dòng)態(tài)、大運(yùn)動(dòng)范圍條件下的精確受力感知需求。
若采用機(jī)器學(xué)習(xí)方式,則在負(fù)載不受外力的情況下直接采集上述變量樣本數(shù)據(jù)。將六維力傳感器的數(shù)據(jù)作為輸出,其他變量作為輸入。由于機(jī)器人末端不受外力作用,每組樣本輸入對(duì)應(yīng)的輸出預(yù)測值應(yīng)等于六維力傳感器的測量值。通過采集機(jī)器人在整個(gè)工作空間內(nèi)不同運(yùn)動(dòng)狀態(tài)下的數(shù)據(jù)樣本,對(duì)機(jī)器學(xué)習(xí)模型進(jìn)行迭代訓(xùn)練,得到末端力的預(yù)測模型。當(dāng)機(jī)器人末端受到外力作用時(shí),利用六維力傳感器的實(shí)際測量值減去機(jī)器學(xué)習(xí)模型的預(yù)測值即可獲得外力信息,從而實(shí)現(xiàn)對(duì)負(fù)載的受力感知。這種方式無需對(duì)上述常量進(jìn)行預(yù)先標(biāo)定,對(duì)于難以進(jìn)行解析建模的非線性誤差(如機(jī)器人末端位姿誤差)也可以進(jìn)行精確的擬合,能夠滿足所述應(yīng)用需求。
本研究采用BP神經(jīng)網(wǎng)絡(luò)建立受力預(yù)測模型。BP神經(jīng)網(wǎng)絡(luò)具有很強(qiáng)的非線性映射能力,適合于本研究中的受力預(yù)測。神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)如圖2所示。在輸入層,使用來自機(jī)器人控制器的位置和姿態(tài)數(shù)據(jù)、IMU測量的加速度和角速度數(shù)據(jù)以及對(duì)角速度差分得到的角加速度數(shù)據(jù)。輸出層是預(yù)測的六維力傳感器數(shù)據(jù)。輸入層與輸出層間采用單層隱藏層,隱藏層的節(jié)點(diǎn)數(shù)需要根據(jù)試驗(yàn)確定,既要對(duì)樣本數(shù)據(jù)獲得較低的預(yù)測誤差,又要避免“過擬合”,神經(jīng)元的激活函數(shù)采用Sigmod函數(shù)。
圖2 機(jī)器人末端受力預(yù)測神經(jīng)網(wǎng)絡(luò)模型Fig.2 The structure of force prediction neural network for the end load of the robot
為訓(xùn)練該神經(jīng)網(wǎng)絡(luò),使機(jī)器人在末端不受外界作用的情況下進(jìn)行運(yùn)動(dòng),在此過程中采集輸入層對(duì)應(yīng)數(shù)據(jù),并以同一時(shí)刻六維力傳感器采集的數(shù)據(jù)作為此時(shí)輸入數(shù)據(jù)對(duì)應(yīng)理想輸出值,由此得到輸入層與輸出層的樣本數(shù)據(jù)。利用這些數(shù)據(jù)對(duì)所述神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,得到機(jī)器人負(fù)載不受外力條件下的六維力傳感器輸出預(yù)測模型。
利用該模型可以預(yù)測在機(jī)器人末端不受外界作用條件下的六維力傳感器輸出值,當(dāng)機(jī)器人末端受到外界作用力時(shí),用六維力傳感器實(shí)際測量值減去預(yù)測值,即可得到外界作用力信息,實(shí)現(xiàn)對(duì)機(jī)器人末端負(fù)載的受力感知。
試驗(yàn)系統(tǒng)組成如圖3所示,在機(jī)器人腕部安裝六維力傳感器,并在機(jī)器人末端安裝慣性測量單元。機(jī)器人采用KUKA公司的KR210機(jī)器人,其主要參數(shù)見表1。六維力傳感器采用ATI公司的Omega191型傳感器,其測量范圍及分辨率參數(shù)見表2,其中(,,)表示三維正交力的測量值,(,,)表示三維正交力矩的測量值。慣性測量單元采用Sensonor公司的STIM300慣性測量單元,該傳感器采用三個(gè)高精度的MEMS陀螺和MEMS加速度計(jì)分別對(duì),,軸向的角速度和加速度數(shù)據(jù)進(jìn)行測量,主要技術(shù)參數(shù)見表3。
表1 KR210機(jī)器人性能參數(shù)Table 1 Performance parameters of the robot KR210
表2 六維力傳感器Omega191技術(shù)參數(shù)Table 2 Technical parameters of Omega191 F/T sensor
表3 慣性測量單元STIM300技術(shù)參數(shù)Table 3 Technical parameters of STIM300 IMU
圖3 機(jī)器人末端動(dòng)態(tài)受力感知試驗(yàn)系統(tǒng)組成Fig.3 Components of the force perception test system of the robot end
慣性測量單元可以直接測得運(yùn)動(dòng)的加速度和角速度,由前述理論分析可知,計(jì)算機(jī)器人末端負(fù)載載慣性力矩還與其運(yùn)動(dòng)的角加速度直接相關(guān),為此,對(duì)慣性測量單元的角速度數(shù)據(jù)序列進(jìn)行差分得到角加速度數(shù)據(jù)。
試驗(yàn)系統(tǒng)實(shí)物如圖4所示,慣性測量單元安裝在機(jī)器人末端與六維力傳感器之間的轉(zhuǎn)接件內(nèi),使得系統(tǒng)在實(shí)際應(yīng)用中更為緊湊,避免在機(jī)器人運(yùn)動(dòng)中產(chǎn)生額外的干涉,試驗(yàn)用機(jī)器人負(fù)載重量為100 kg。
圖4 機(jī)器人末端動(dòng)態(tài)受力感知試驗(yàn)實(shí)物Fig.4 Photograph of the force perception test system of the robot end
為了使樣本數(shù)據(jù)能夠盡可能覆蓋機(jī)器人的全工作空間,又能夠減少樣本總量,提高模型訓(xùn)練的效率,研究中采用了正交試驗(yàn)設(shè)計(jì)方法。對(duì)機(jī)器人的6個(gè)旋轉(zhuǎn)軸A~A,在各自的轉(zhuǎn)動(dòng)范圍內(nèi)均勻地取10個(gè)角度值,取值時(shí)可能覆蓋整個(gè)運(yùn)動(dòng)范圍,同時(shí)考慮在運(yùn)動(dòng)中機(jī)器人末端負(fù)載不會(huì)與機(jī)器人自身或周圍物體發(fā)生干涉,各軸取值范圍情況見表4。按照正交試驗(yàn)設(shè)計(jì)的思路,將A~A軸的角度值作為試驗(yàn)的6個(gè)因素,并將每個(gè)軸的角度值按照各自的運(yùn)動(dòng)范圍平均分為10個(gè)水平,按照L(10)正交表安排試驗(yàn)中機(jī)器人運(yùn)動(dòng)路徑點(diǎn)各軸角度的取值。
表4 試驗(yàn)中機(jī)器人各軸轉(zhuǎn)動(dòng)范圍Table 4 Rotation ranges of each axis of the robot in the experiment
機(jī)器人按照正交表所列的路徑點(diǎn)順序運(yùn)動(dòng),從當(dāng)前點(diǎn)運(yùn)動(dòng)至下個(gè)路徑點(diǎn)采用點(diǎn)到點(diǎn)(PTP)的運(yùn)動(dòng)方式,并在每個(gè)路徑點(diǎn)停留2 s,這樣機(jī)器人的運(yùn)動(dòng)包含了加速、減速、靜止的過程??紤]到機(jī)器人在應(yīng)用中的實(shí)際速度,限定機(jī)器人的運(yùn)行速度為自動(dòng)模式最高額定速度的30%。在機(jī)器人運(yùn)動(dòng)過程中,以12 ms的周期同步采集機(jī)器人末端位姿參數(shù)、六維力傳感器數(shù)據(jù)、慣性測量單元數(shù)據(jù)。
試驗(yàn)中采集的部分樣本數(shù)據(jù)見圖5~8。從圖中可以看出,樣本采集時(shí)間約15 min,樣本數(shù)據(jù)平滑連續(xù)。其中,圖5為從機(jī)器人控制器獲取的機(jī)器人末端位置數(shù)據(jù),圖6為從慣性測量單元讀取的加速度數(shù)據(jù),圖7為由慣性測量單元角速度數(shù)據(jù)差分得到的角加速度數(shù)據(jù),波動(dòng)較為劇烈,圖8為從六維力傳感器讀取的三維力數(shù)據(jù)。此外,采集的樣本數(shù)據(jù)中還包括機(jī)器人末端姿態(tài)數(shù)據(jù)、慣性測量單元的角速度數(shù)據(jù),及六維力傳感器的三維力矩?cái)?shù)據(jù),由于篇幅有限,未在文中列出。
圖5 機(jī)器人末端位置數(shù)據(jù)曲線Fig.5 The curves of the position data of the robot end
圖6 機(jī)器人末端加速度數(shù)據(jù)曲線Fig.6 The curves of the acceleration data of the robot end
圖7 機(jī)器人末端角加速度數(shù)據(jù)曲線Fig.7 The curves of the angular acceleration data of the robot end
圖8 機(jī)器人末端力數(shù)據(jù)曲線Fig.8 The curves of the force data of the robot end
研究中采用梯度下降法對(duì)圖2所示的神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,圖2的神經(jīng)網(wǎng)絡(luò)采用了單層隱藏層,隱藏層的節(jié)點(diǎn)數(shù)還需要確定。在BP神經(jīng)網(wǎng)絡(luò)中,隱藏層節(jié)點(diǎn)數(shù)對(duì)建立的神經(jīng)網(wǎng)絡(luò)模型的性能影響很大,而且是出現(xiàn)“過擬合”的直接原因。研究中為盡可能避免訓(xùn)練時(shí)出現(xiàn)“過擬合”現(xiàn)象,保證足夠高的網(wǎng)絡(luò)性能和泛化能力,在滿足精度要求的前提下取盡可能緊湊的結(jié)構(gòu),即取盡可能少的隱層節(jié)點(diǎn)數(shù)。
訓(xùn)練中將數(shù)據(jù)樣本分為訓(xùn)練集(train)、驗(yàn)證集(validation)和測試集(test),訓(xùn)練集占樣本總數(shù)的60%,驗(yàn)證集與測試集分別占20%,3個(gè)子集數(shù)據(jù)隨機(jī)選取。其中訓(xùn)練集用來訓(xùn)練模型,驗(yàn)證集用來評(píng)估模型預(yù)測的好壞及調(diào)整對(duì)應(yīng)的參數(shù),測試集用于測試已訓(xùn)練好的模型對(duì)于新數(shù)據(jù)的泛化能力。
為確定神經(jīng)網(wǎng)絡(luò)中隱藏層節(jié)點(diǎn)的數(shù)量,使用不同數(shù)量的隱藏層節(jié)點(diǎn)進(jìn)行訓(xùn)練,每個(gè)數(shù)量的隱藏層節(jié)點(diǎn)重復(fù)訓(xùn)練3次,每個(gè)隱層節(jié)點(diǎn)3次訓(xùn)練得到的均方誤差用于評(píng)估相應(yīng)隱層節(jié)點(diǎn)數(shù)下的預(yù)測精度,并記錄不同隱層點(diǎn)數(shù)下的單次迭代計(jì)算時(shí)間。不同隱層節(jié)點(diǎn)數(shù)下的預(yù)測精度及運(yùn)算時(shí)間比較如圖9所示。根據(jù)試驗(yàn)結(jié)果,考慮到訓(xùn)練時(shí)間和精度要求,同時(shí)為避免過擬合,在滿足精度要求的前提下盡量使模型簡單,選擇較少的隱層節(jié)點(diǎn)數(shù),本研究確定隱層節(jié)點(diǎn)數(shù)為8個(gè)。
圖9 不同隱藏層節(jié)點(diǎn)數(shù)下的預(yù)測精度對(duì)比Fig.9 Prediction accuracy under different hidden layer nodes
對(duì)于圖4所示的系統(tǒng),在機(jī)器人運(yùn)動(dòng)過程中實(shí)時(shí)采集機(jī)器人末端位姿數(shù)據(jù)、六維力傳感器數(shù)據(jù)、慣性測量單元數(shù)據(jù),并輸入已經(jīng)訓(xùn)練好的受力感知模型中,可實(shí)時(shí)計(jì)算得到預(yù)測的六維力傳感器數(shù)值,將六維力實(shí)際測量值減去預(yù)測值,可得到預(yù)測誤差。
取連續(xù)10 s時(shí)間的機(jī)器人運(yùn)動(dòng)過程,對(duì)比六維力傳感器實(shí)測數(shù)據(jù)與模型預(yù)測數(shù)據(jù),并給出相應(yīng)的誤差,代表性的結(jié)果如圖10~11所示。圖中在1~3 s的時(shí)間范圍內(nèi),機(jī)器人處于靜止?fàn)顟B(tài),在其余時(shí)間機(jī)器人處于運(yùn)動(dòng)狀態(tài),因此,選取的相關(guān)數(shù)據(jù)包含了機(jī)器人靜態(tài)與動(dòng)態(tài)過程。由圖可見,與靜態(tài)情況相比,機(jī)器人在動(dòng)態(tài)條件的預(yù)測誤差更大。
圖10 X方向力數(shù)據(jù)預(yù)測誤差Fig.10 Force prediction error in direction X
圖11 Z方向力矩?cái)?shù)據(jù)預(yù)測誤差Fig.11 Torque prediction error in direction Z
對(duì)于實(shí)測數(shù)據(jù)與模型預(yù)測數(shù)據(jù)的誤差數(shù)據(jù),計(jì)算每個(gè)分量的最大誤差和均方根誤差,以評(píng)估預(yù)測誤差,見表5。結(jié)果表明,力感知的最大誤差為39.8 N,均方根誤差為9.3 N;力矩感知的最大誤差為18.7 N·m,均方根誤差為4.4 N·m。在表5中同時(shí)列出了各分量實(shí)測記錄數(shù)據(jù)中的最大值作為參考,用以說明得出的感知誤差所對(duì)應(yīng)的分量取值范圍,以評(píng)價(jià)模型預(yù)測的效果。
表5 動(dòng)態(tài)受力感知誤差統(tǒng)計(jì)Table 5 Error statistics for the dynamic force perception
由圖10~11可知,誤差較大的情況出現(xiàn)在機(jī)器人運(yùn)動(dòng)過程中,這是由于動(dòng)態(tài)條件下,六維力傳感器、慣性測量單元的波動(dòng)更為劇烈,對(duì)傳感器數(shù)據(jù)或?qū)ψ罱K的受力感知數(shù)據(jù)進(jìn)行濾波處理,可進(jìn)一步降低誤差。
根據(jù)牛頓第二定律和歐拉方程,得出關(guān)系式
(6)
其中,為機(jī)器人負(fù)載的質(zhì)量,為負(fù)載質(zhì)心的運(yùn)動(dòng)速度,為負(fù)載的慣性張量,進(jìn)一步推導(dǎo)得到
(7)
式中:,為時(shí)刻負(fù)載運(yùn)動(dòng)的速度、角速度,即機(jī)器人在時(shí)刻的運(yùn)動(dòng)速度,可根據(jù)時(shí)刻之前采集的受力及角速度信息積分計(jì)算得到。其中機(jī)器人末端的負(fù)載受力信息可由前述的受力感知模型實(shí)時(shí)得到,再由式(7)計(jì)算得到負(fù)載運(yùn)動(dòng)的速度,并驅(qū)動(dòng)機(jī)器人按照相應(yīng)的速度運(yùn)動(dòng),即可實(shí)現(xiàn)對(duì)負(fù)載的零重力運(yùn)動(dòng)模擬。
由式(7),由于采用對(duì)以往數(shù)據(jù)積分的形式計(jì)算機(jī)器人當(dāng)前運(yùn)動(dòng)速度,在零重力模擬中,上述機(jī)器人在運(yùn)動(dòng)條件下受力感知數(shù)據(jù)的實(shí)時(shí)波動(dòng),被積分“吸收”,并不會(huì)造成機(jī)器人運(yùn)動(dòng)的劇烈波動(dòng)。
式(7)中,與的取值可以按照機(jī)器人末端負(fù)載的實(shí)際質(zhì)量及慣性張量取值,也可以指定為其他希望被模擬的數(shù)值,實(shí)現(xiàn)“半物理仿真”,雖然機(jī)器人末端負(fù)載的質(zhì)量特性與希望模擬的對(duì)象不同,但可以通過數(shù)字指定質(zhì)量特性的方式,實(shí)現(xiàn)對(duì)模擬對(duì)象的等效運(yùn)動(dòng)仿真。
對(duì)圖4中的機(jī)器人末端負(fù)載進(jìn)行零重力運(yùn)動(dòng)模擬,試驗(yàn)者用手作用于機(jī)器人末端負(fù)載,可以使試驗(yàn)者在地面環(huán)境下獲得對(duì)物體零重力“漂浮”狀況的體驗(yàn)。
空間站某型號(hào)天線重約60 kg,需要在軌由航天員進(jìn)行安裝,天線在軌出現(xiàn)故障時(shí),也需要由航天員在軌進(jìn)行更換。為評(píng)價(jià)該型號(hào)天線在軌操作任務(wù)的可行性及人機(jī)功效,需要在地面模擬在軌安裝情況,使天線處于零重力狀態(tài),由試驗(yàn)人員按照在軌操作流程進(jìn)行操作,通過試驗(yàn)檢驗(yàn)相關(guān)操作流程能否順利進(jìn)行,并記錄試驗(yàn)人員的操作施力大小,以評(píng)價(jià)操作的費(fèi)力程度,判斷操作需要的力是否在航天員在軌正??墒┝Φ姆秶鷥?nèi)。
針對(duì)該型號(hào)天線的在軌模擬試驗(yàn)需求,制作與真實(shí)天線外形、接口一致的模擬件,并在模擬件上設(shè)計(jì)與機(jī)器人末端連接的接口。在模擬件與機(jī)器人完成連接后,首先按照前述樣本采集過程采集得到樣本數(shù)據(jù),接著對(duì)所述神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,獲得機(jī)器人末端力感知模型,而后按照前述零重力運(yùn)動(dòng)模擬方法實(shí)現(xiàn)對(duì)模擬件的零重力模擬。相關(guān)技術(shù)已成功應(yīng)用于空間站某型號(hào)天線的在軌安裝地面模擬試驗(yàn)中。
圖12 在軌操作零重力模擬應(yīng)用照片F(xiàn)ig.12 Photograph of the zero-gravity simulation for on-orbit operations
對(duì)于部件的零重力模擬,常用的傳統(tǒng)方法包括懸吊、氣浮、水浮等方法,與這些方法相比,使用機(jī)器人進(jìn)行零重力模擬的優(yōu)點(diǎn)在于:
1) 裝置簡單,布置靈活,僅需要一臺(tái)機(jī)器人即可完成模擬任務(wù),若機(jī)器人下方配置移動(dòng)平臺(tái),還可以靈活移動(dòng)至不同位置使用;
2) 可以實(shí)現(xiàn)三維空間6個(gè)自由度的運(yùn)動(dòng)模擬;
3) 可實(shí)現(xiàn)半物理仿真,僅需要模擬件具有與真實(shí)件一致的外形,而不需要其具有與真實(shí)件同樣的質(zhì)量特性,可以節(jié)省成本,簡化模擬過程。
采用水浮方法也可實(shí)現(xiàn)6自由度的運(yùn)動(dòng)模擬,也有研究通過特殊設(shè)計(jì)的機(jī)構(gòu)基于氣浮方法實(shí)現(xiàn)多自由度的運(yùn)動(dòng)模擬,但系統(tǒng)配置及使用過程較為復(fù)雜,難以實(shí)現(xiàn)快速、靈活的應(yīng)用。
本文針對(duì)航天器在軌服務(wù)任務(wù)地面零重力模擬的需求,研究使用工業(yè)機(jī)器人實(shí)現(xiàn)部件的零重力模擬。采用BP神經(jīng)網(wǎng)絡(luò)建立受力感知預(yù)測模型,實(shí)現(xiàn)機(jī)器人在全工作空間的動(dòng)態(tài)受力感知。試驗(yàn)系統(tǒng)中,采用六維力傳感器測量機(jī)器人腕部受力,并采用慣性測量單元測量機(jī)器人末端的加速度、角速度,通過差分方式獲得機(jī)器人末端的角加速度。應(yīng)用正交試驗(yàn)設(shè)計(jì)方法確定機(jī)器人數(shù)據(jù)采集路徑。研究采用試驗(yàn)方法確定神經(jīng)網(wǎng)絡(luò)隱藏層的節(jié)點(diǎn)數(shù),兼顧模型的逼近能力和泛化能力。應(yīng)用訓(xùn)練得到的神經(jīng)網(wǎng)絡(luò)模型進(jìn)行機(jī)器人末端負(fù)載的受力感知計(jì)算,對(duì)于100 kg的機(jī)器人末端負(fù)載,試驗(yàn)獲得力感知的最大誤差為39.8 N,均方根誤差為9.3 N,力矩感知的最大誤差為18.7 N·m,均方根誤差為4.4 N·m。
應(yīng)用所述受力感知技術(shù),結(jié)合運(yùn)動(dòng)學(xué)理論,實(shí)時(shí)計(jì)算得到機(jī)器人末端負(fù)載運(yùn)動(dòng)的速度,并驅(qū)動(dòng)機(jī)器人按照相應(yīng)的速度運(yùn)動(dòng),實(shí)現(xiàn)了對(duì)機(jī)器人末端負(fù)載的零重力運(yùn)動(dòng)模擬。相關(guān)成果成功應(yīng)用于空間站某型號(hào)天線在軌安裝的地面模擬試驗(yàn)中,為航天器在軌任務(wù)的地面零重力模擬提供了一種基于工業(yè)機(jī)器人的解決方案。
后續(xù)對(duì)于系統(tǒng)的零重力模擬應(yīng)用,在高頻沖擊響應(yīng)控制方面有待進(jìn)一步開展研究,實(shí)現(xiàn)系統(tǒng)對(duì)零重力條件下碰撞等高頻沖擊情況的準(zhǔn)確模擬。