許有熊, 顧人杰, 劉曉鋒, 朱松青
(1.南京工程學(xué)院自動化學(xué)院,江蘇南京 211167;2.國電南京自動化股份有限公司, 江蘇南京 211000)
隨著現(xiàn)代科學(xué)技術(shù)的不斷發(fā)展,精密加工與精密測量、航空航天、微電子工程等領(lǐng)域?qū)Σ⒙?lián)機構(gòu)的運動范圍和精度提出了更高的要求[1]。但是,目前并聯(lián)機構(gòu)不能同時滿足大范圍和高精度運動的要求。例如,液壓伺服、電機伺服等驅(qū)動的并聯(lián)機構(gòu)能實現(xiàn)大范圍運動,但其重復(fù)定位精度一般為微米級,不能實現(xiàn)高精度[2-3];壓電陶瓷[4]為驅(qū)動的并聯(lián)微動機構(gòu)能實現(xiàn)較高的定位精度,但其運動范圍較小[5]。這極大限制了并聯(lián)機構(gòu)在精密工程領(lǐng)域的應(yīng)用。
因此,國內(nèi)外學(xué)者將宏微混合驅(qū)動技術(shù)[6-7]應(yīng)用到并聯(lián)機構(gòu),研究混合驅(qū)動的并聯(lián)機構(gòu)以解決大范圍和高精度之間的矛盾。華南理工大學(xué)的余競[8]研究了一種宏微平面3-RRR并聯(lián)機構(gòu)系統(tǒng),其中,宏動部分采用伺服電機驅(qū)動的平面3-RRR并聯(lián)機構(gòu),并在其動平臺上放置一個由壓電陶瓷驅(qū)動的3-RRR平面并聯(lián)微動機構(gòu),以保證系統(tǒng)的定位精度,但該結(jié)構(gòu)較復(fù)雜,且定位精度尚未達到納米級,尚未達到實際應(yīng)用。結(jié)合液壓伺服技術(shù)與壓電技術(shù)的優(yōu)點應(yīng)用到并聯(lián)機構(gòu)中,文獻[9]提出了一種基于電液-壓電混合伺服驅(qū)動的3-RPR并聯(lián)機構(gòu),能有效實現(xiàn)大范圍高精度定位。
另外,從并聯(lián)機構(gòu)的運動學(xué)來看,國內(nèi)外相關(guān)學(xué)者都進行了研究,并取得了一些成果。比如并聯(lián)機構(gòu)運動學(xué)分析的核心問題是建立并求解高維非線性代數(shù)方程組,目前其基本方法主要有兩大類,即Sylvester結(jié)式消元法、Groebner基法、吳文俊消元法等代數(shù)解析法以及優(yōu)化法,Newton-Rapgson法等數(shù)值迭代法,但以上方法求解精度都無法達到納米級。
因此,本文作者在之前研究的基礎(chǔ)上[9],探索研究宏微3-RPR運動學(xué)精確求解,以滿足后續(xù)大范圍和高精度定位的控制要求。
所提出的宏微混合伺服驅(qū)動3-RPR并聯(lián)機構(gòu)原理如圖1所示。
圖1 宏微3-RPR結(jié)構(gòu)原理
其中每個桿由液壓缸和壓電陶瓷驅(qū)動器串聯(lián)而成,如圖1 (b)所示,并通過控制3個桿伸縮的總長度來控制動平臺的平動和轉(zhuǎn)動。宏驅(qū)動部分采用電液伺服系統(tǒng)以實現(xiàn)大范圍運動,微驅(qū)動部分采用壓電陶瓷驅(qū)動器以實現(xiàn)高精度精密定位。
圖2 3-RPR的結(jié)構(gòu)參數(shù)示意
運動學(xué)逆解是通過已給定的動平臺位姿(x,y,θ),求解各桿的運動量(l1,l2,l3)。相對串聯(lián)機構(gòu)而言,并聯(lián)機構(gòu)的運動學(xué)逆解較為簡單,可以直接求解。假設(shè)初始狀態(tài)下每根桿長為均為L,θ=0,則可得出A、B、C各點坐標(biāo)為
A:(0,0)
當(dāng)機構(gòu)運動到一定位置時,設(shè)此刻偏轉(zhuǎn)角度為θ,動平臺中心點坐標(biāo)為(x,y)可得
點B1坐標(biāo)為
點B2坐標(biāo)為
點B3坐標(biāo)為
由此可得逆解的方程組為
(1)
采用MATLAB編程實現(xiàn)其運動學(xué)逆解,其求解程序截圖如圖3所示。
圖3 逆解程序截圖
(1)數(shù)值迭代法的求解分析
運動學(xué)正解是已知各桿的運動量(l1,l2,l3),求解動平臺的位姿量(x,y,θ)。其運動學(xué)正解的方程組如式(2)所示:
(2)
其中:x1、x2分別為sinθ、cosθ。
由于并聯(lián)機構(gòu)運動學(xué)正解的復(fù)雜性,很難求出方程的解析解,通常使用數(shù)值迭代法進行求解。其計算過程可簡述為
(1)初選x0;
采用MATLAB編程實現(xiàn)其數(shù)值迭代法的求解,主要包含3個部分程序,即原方程組程序、求導(dǎo)程序和迭代程序。其中數(shù)值迭代法的迭代程序截圖如圖4所示。
圖4 正解程序截圖
(2)BP神經(jīng)網(wǎng)絡(luò)的求解分析
采用上述數(shù)值迭代法求解時,所需的計算時間較長,且在計算過程中對初值選取要求過高,同時在導(dǎo)數(shù)為0處會產(chǎn)生奇異現(xiàn)象,其求解精度也無法滿足納米級的計算要求。因此,采用BP神經(jīng)網(wǎng)絡(luò)算法進行宏微3-RPR并聯(lián)機構(gòu)運動學(xué)正解。
BP神經(jīng)網(wǎng)絡(luò)是一種由輸入層、隱藏層和輸出層組成的多層前饋神經(jīng)網(wǎng)絡(luò)[10-11]。事先給定輸入數(shù)據(jù)組和目標(biāo)數(shù)據(jù)組,通過神經(jīng)網(wǎng)絡(luò)訓(xùn)練,得到每次訓(xùn)練的結(jié)果,與目標(biāo)結(jié)果進行誤差比較,并根據(jù)誤差反向傳播修改權(quán)值和閾值,重復(fù)該過程直到獲得能輸出和目標(biāo)結(jié)果一致的模型。
根據(jù)所研究宏微3-RPR運動學(xué)數(shù)據(jù)模型,以各桿的運動量(l1,l2,l3)為輸入,動平臺的位姿(x,y,θ)為輸出,建立一個三輸入三輸出的神經(jīng)網(wǎng)絡(luò)架構(gòu),為提高精度,隱藏層節(jié)點數(shù)設(shè)為100,如圖5所示。
圖5 BP神經(jīng)網(wǎng)絡(luò)算法結(jié)構(gòu)示意
其過程為:首先,對并聯(lián)機構(gòu)利用式(1)進行運動學(xué)逆解,將逆解得到的結(jié)果作為訓(xùn)練樣本的輸入值,逆解的輸入值作為BP網(wǎng)絡(luò)的期望輸出值;其次,采用BP算法對樣本進行訓(xùn)練,求得3-RPR并聯(lián)機構(gòu)運動學(xué)正解的神經(jīng)網(wǎng)絡(luò)模型;最后,通過另一組數(shù)據(jù)驗證神經(jīng)網(wǎng)絡(luò)模型的準(zhǔn)確性。神經(jīng)網(wǎng)絡(luò)算法訓(xùn)練結(jié)果如圖6所示。
圖6 BP神經(jīng)網(wǎng)絡(luò)算法訓(xùn)練
由于輸入輸出量的取值范圍不同,會降低神經(jīng)網(wǎng)絡(luò)的訓(xùn)練精度和訓(xùn)練速度,因此在訓(xùn)練之前需要先對數(shù)據(jù)庫進行歸一化處理,并在訓(xùn)練結(jié)束后進行反歸一化處理。
(3)遺傳算法優(yōu)化的神經(jīng)網(wǎng)絡(luò)算法
雖然BP神經(jīng)網(wǎng)絡(luò)得到了廣泛的應(yīng)用,但因其初始權(quán)值和閾值選取的隨機性,難以選取到較合適的值,因此BP神經(jīng)網(wǎng)絡(luò)存在訓(xùn)練時間較長、計算誤差較大、容易陷入局部最優(yōu)解等不足。如圖6所示的神經(jīng)網(wǎng)絡(luò)算法在計算次數(shù)為2×106次時,耗時79 h。基于上述缺點,采用遺傳算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)算法進行并聯(lián)機構(gòu)運動學(xué)正解分析。
遺傳算法是一種通過模擬自然生物進化過程搜索最優(yōu)解的方法[12]。其基本計算過程為:首先初始化一個種群,計算各個體的適應(yīng)度;然后根據(jù)“優(yōu)勝劣汰,適者生存”的原理,進行選擇、交叉、變異等操作得到下一代群體,不斷提高其適應(yīng)度;直至滿足一定條件,將具有最大適應(yīng)度個體作為最優(yōu)解輸出。
因此,采用遺傳算法對神經(jīng)網(wǎng)絡(luò)算法的權(quán)值選取過程進行優(yōu)化[13],既能縮短訓(xùn)練時間,提高網(wǎng)絡(luò)收斂速度,又可以有效避免訓(xùn)練中陷入局部最優(yōu)解,其原理如圖7所示。
圖7 遺傳算法簡要原理
基于MATLAB軟件的遺傳算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)算法訓(xùn)練結(jié)果如圖8所示。將BP神經(jīng)網(wǎng)絡(luò)算法和遺傳算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程進行對比,如圖9所示??梢钥闯觯涸诮?jīng)歷相同次數(shù)的訓(xùn)練后,遺傳算法優(yōu)化的神經(jīng)網(wǎng)絡(luò)算法精度遠遠高于BP神經(jīng)網(wǎng)絡(luò)。在相同精度下,遺傳算法優(yōu)化的神經(jīng)網(wǎng)絡(luò)算法耗時會更短。
圖8 遺傳算法優(yōu)化的神經(jīng)網(wǎng)絡(luò)算法訓(xùn)練
圖9 2種算法對比
將不同算法得到的逆解進行對比分析,得到表1,其計算誤差如表2所示??梢钥闯觯号nD迭代法的精度在微米級,BP神經(jīng)網(wǎng)絡(luò)算法的精度在0.1微米級,遺傳算法優(yōu)化的神經(jīng)網(wǎng)絡(luò)算法的精度在納米級。這說明遺傳算法優(yōu)化的神經(jīng)網(wǎng)絡(luò)算法精度最高,滿足計算要求。
表1 不同算法計算下的運動學(xué)正解值
表2 不同算法下的誤差比較
根據(jù)先前所研究的宏微混伺服驅(qū)動的3-RPR并聯(lián)機構(gòu)納米級控制精度的要求,要求其運動學(xué)求解精度也要達到納米級,文中對它進行運動學(xué)精確求解研究。
(1)建立了宏微3-RPR運動學(xué)模型,并采用MATLAB編程實現(xiàn)其運動學(xué)逆解,得到其準(zhǔn)確解作為后續(xù)運動學(xué)正解的訓(xùn)練樣本數(shù)據(jù)。
(2)分別采用數(shù)值迭代法、神經(jīng)網(wǎng)絡(luò)算法和遺傳算法優(yōu)化的神經(jīng)網(wǎng)絡(luò)算法進行并聯(lián)機構(gòu)的運動學(xué)正解研究。
通過最終的求解精度對比,經(jīng)遺傳算法優(yōu)化的神經(jīng)網(wǎng)絡(luò)算法能實現(xiàn)納米級的求解精度且耗時更短。這為后續(xù)并聯(lián)機構(gòu)的控制奠定基礎(chǔ)。