張竹青,謝志江,蹇開林,緱雙雙
(重慶大學(xué) 機(jī)械傳動國家重點(diǎn)實驗室, 重慶 400044)
獲軌跡試驗(簡稱CTS試驗),是研究分離體與母機(jī)安全分離特性的一項風(fēng)洞模擬試驗技術(shù)。分離體模型6自由度機(jī)構(gòu)(下文簡稱CTS機(jī)構(gòu)[1])是CTS試驗系統(tǒng)的核心,通過控制實現(xiàn)分離體模型6個自由度的運(yùn)動(X,Y,Z,偏航,俯仰,滾轉(zhuǎn))。CTS機(jī)構(gòu)的精度是整個CTS試驗準(zhǔn)確性和可靠性的保障,為提高精度,需要對引起末端位姿誤差的各項因素進(jìn)行分析研究,以達(dá)到對末端位姿誤差進(jìn)行補(bǔ)償?shù)哪康?,從而提高運(yùn)動精度。
CTS機(jī)構(gòu)從本質(zhì)上來說是一個6自由度的機(jī)械手[2]。對CTS機(jī)構(gòu)來說,運(yùn)動精度分為兩種[3]:重復(fù)定位精度和絕對定位精度。一般情況下,重復(fù)定位精度高于絕對定位精度[4]。隨著我國綜合國力的增強(qiáng)和新型飛行器研制技術(shù)的快速發(fā)展,對CTS試驗也提出了更高的要求[5]。之前研制的CTS機(jī)構(gòu),由于當(dāng)時的科學(xué)條件限制難以滿足當(dāng)前飛行器研制的需求。近年來,飛行器的研制和改型任務(wù)日益繁重[6],迫切需要研制新型的CTS試驗系統(tǒng),提高其可靠性和相關(guān)性能。本課題組研制開發(fā)的CTS機(jī)構(gòu)將用于風(fēng)洞捕獲軌跡試驗,完成相關(guān)的試驗項目。
CTS機(jī)構(gòu)的誤差補(bǔ)償采用參數(shù)誤差直接修正的方法,通常實際參數(shù)與理論參數(shù)存在差異,從而導(dǎo)致末端執(zhí)行器產(chǎn)生運(yùn)動誤差??赏ㄟ^參數(shù)標(biāo)定求出實際參數(shù),然后修改理論值,減小實際值與理論值之間的差異,讓運(yùn)動學(xué)模型盡量接近真實情況,最后利用修正過的運(yùn)動學(xué)公式求解驅(qū)動值,從而達(dá)到減小末端位姿誤差的目的。
本文對CTS機(jī)構(gòu)誤差分析分為兩部分:一是機(jī)構(gòu)幾何誤差分析;二是機(jī)構(gòu)零位誤差分析。在誤差分析前需要先建立坐標(biāo)系,在該機(jī)構(gòu)的誤差分析及補(bǔ)差過程中涉及風(fēng)洞固定坐標(biāo)系、分離體體軸坐標(biāo)系、天平坐標(biāo)系和CTS機(jī)構(gòu)總體坐標(biāo)系。
圖1 風(fēng)洞固定坐標(biāo)系與體軸坐標(biāo)系定義
風(fēng)洞固定坐標(biāo)系Oxdydzd是整個捕獲軌跡試驗的參考坐標(biāo)系,不隨模型的轉(zhuǎn)動而轉(zhuǎn)動。其原點(diǎn)在風(fēng)洞噴管端面前250 mm處,位于風(fēng)洞試驗段縱軸上;xd軸沿著試驗段縱軸,逆氣流方向為正;yd軸位于試驗段縱對稱平面內(nèi),垂直縱軸向上為正;zd軸垂直于縱對稱面,從逆氣流方向看,向右為正。風(fēng)洞固定坐標(biāo)系如圖1所示。
分離體體軸系Oxtytzt的原點(diǎn)位于分離體模型的理論質(zhì)心。xt軸平行于分離體模型的前行方向;yt軸在分離體模型縱對稱平面內(nèi)垂直于xt軸,方向向上為正;zt軸垂直于分離體模型縱對稱面,方向向右為正。分離體體軸坐標(biāo)系如圖1所示。
天平坐標(biāo)軸系Oxyz是固定在天平上的坐標(biāo)系。其原點(diǎn)O為天平的力矩參考點(diǎn);x軸沿天平原點(diǎn)中心線指向模型端;y垂直于Ox軸,在天平縱對稱面內(nèi),向上為正;z軸可用右手定則確定
機(jī)構(gòu)總體坐標(biāo)系Oxzyzzz原點(diǎn)O為尾支桿長度為設(shè)計長度500 mm處的末端點(diǎn),總體坐標(biāo)系不隨機(jī)構(gòu)的運(yùn)動而改變,固定在空間中。沿著尾支桿軸線向外的方向為xz軸正向;yz軸向上為正;zz軸可用右手定則確定。該坐標(biāo)系與尾支桿等于原長時的天平坐標(biāo)系重合,當(dāng)尾支桿長度變化時,天平坐標(biāo)系會隨之改變,而CTS機(jī)構(gòu)總體坐標(biāo)系的位置不變。
給定機(jī)構(gòu)指令位置,逆解求出驅(qū)動值,驅(qū)動機(jī)構(gòu)運(yùn)動,則實際位置和指令位置有偏差。需要對機(jī)構(gòu)的轉(zhuǎn)換矩陣Tz調(diào)整,使得計算的正解位姿與實際正解位姿盡可能接近。再通過調(diào)整后的正解方程反解出逆解方程,給定指令位姿,驅(qū)動機(jī)構(gòu)運(yùn)動,則最終的實際位姿與指令位姿更加接近。
加工幾何誤差引起的位姿誤差值可由式(1)計算。
ΔXz=ΔTzq
(1)
其中:ΔXz代表末端位姿誤差列向量;q代表機(jī)構(gòu)輸入值,為各驅(qū)動滑塊滑移距離;ΔTz表示位姿誤差矩陣。將式(1)展開成矩陣形式有
(2)
式(2)中ΔT11、ΔT12、ΔT21、ΔT22均為3×3的矩陣。ΔT11表示機(jī)構(gòu)X、Y、Z向?qū)к壟c機(jī)構(gòu)總體坐標(biāo)系的坐標(biāo)軸線xz、yz、zz軸不平行導(dǎo)致的位置誤差矩陣;ΔT12和ΔT22分別表示由機(jī)構(gòu)實際偏航、滾轉(zhuǎn)軸線分別與機(jī)構(gòu)總體坐標(biāo)系yz軸、zz軸不重合而引起的位置誤差矩陣和姿態(tài)誤差矩陣。為簡化誤差計算過程,在實際中確定機(jī)構(gòu)總體坐標(biāo)系時,按照滾轉(zhuǎn)軸線的方向來確定zz軸的方向。ΔT21表示直線滑塊驅(qū)動引起的姿態(tài)角誤差矩陣,由于實際中機(jī)構(gòu)位置的變化不會引起姿態(tài)角的變化,因此ΔT21為零矩陣。
理論情況下,實現(xiàn)末端分離體模型平動的3根導(dǎo)軌X、Y、Z分別與機(jī)構(gòu)總體坐標(biāo)系的xz軸、yz軸、zz軸平行,末端的3個位移是解耦的,因此驅(qū)動X向滑塊沿著X直線導(dǎo)軌滑移只會引起分離體模型xz向的位移,同理,驅(qū)動Y、Z方向的滑塊只會引起分離體模型相應(yīng)方向的位移。但是實際加工出來的機(jī)構(gòu)存在導(dǎo)軌與機(jī)構(gòu)總體坐標(biāo)軸不平的情況,那么機(jī)構(gòu)末端3個方向的位移與滑塊的滑移距離就不再是解耦的,而是相互耦合在一起。分離體模型理論質(zhì)心3個方向的誤差分別設(shè)為Δx、Δy、Δz,則將導(dǎo)軌與坐標(biāo)軸不平行導(dǎo)致的誤差寫成矩陣形式可表示為
(3)
結(jié)合式(2),有
(4)
這一部分的誤差辨識可以考慮用最小二乘法多項式擬合[7]來確定。通過分別測量機(jī)構(gòu)X、Y、Z單軸運(yùn)動的數(shù)據(jù),擬合出驅(qū)動滑塊滑移距離和分離體模型理論質(zhì)心位移誤差之間的曲線關(guān)系,得到擬合函數(shù),即可辨識出導(dǎo)軌與軸線不平行引起的誤差矩陣ΔT11。
當(dāng)偏航和俯仰軸線與機(jī)構(gòu)總體坐標(biāo)系yz軸或zz軸不重合時,機(jī)構(gòu)繞偏航軸或者俯仰軸運(yùn)動時,會引起分離體模型理論質(zhì)心平動的位置誤差和繞軸線轉(zhuǎn)動的姿態(tài)誤差。
2.2.1位置誤差分析
圖2 偏航軸線偏移示意圖
理想情況下偏航軸線和機(jī)構(gòu)總體坐標(biāo)系的yz軸是重合的,繞著偏航軸線的偏轉(zhuǎn),尾支桿末端的天平校心運(yùn)動軌跡為圓O上的一段圓弧。但實際情況中,由于加工裝配誤差存在,兩軸線不重合,那么機(jī)構(gòu)繞著偏航軸旋轉(zhuǎn)時會引起機(jī)構(gòu)天平校心沿著圓C的圓弧運(yùn)動,如圖2所示。
坐標(biāo)系Oxzyzzz為機(jī)構(gòu)總體坐標(biāo)系,尾支桿理論長度為l0,實際長度為l。在理想的情況下,當(dāng)機(jī)構(gòu)繞著yz軸偏航ψ時,天平校心的理論位置為
(5)
在實際情況中,天平校心運(yùn)動軌跡所在圓C的圓心坐標(biāo)為(c1p,c2p,c3p),法向量為np,半徑為rp,對應(yīng)圓C的參數(shù)方程[8-9]為
(6)
其中:(a1p,a2p,a3p)與(b1p,b2p,b3p)分別對應(yīng)單位向量a和b,它們相互垂直又垂直于np;ψ表示繞著偏航軸yz轉(zhuǎn)過的角度,隨著ψ的變化,可以求出實際天平校心在機(jī)構(gòu)總體坐標(biāo)系中的位置。
偏航軸線偏移引起的天平校心的位置誤差值可表示為:
(7)
俯仰軸線偏移對應(yīng)見圖3。
圖3 俯仰軸線偏移示意圖
(8)
由于實際機(jī)構(gòu)滾轉(zhuǎn)軸線和機(jī)構(gòu)總體坐標(biāo)系xz軸線重合,因此機(jī)構(gòu)滾轉(zhuǎn)運(yùn)動不會引起天平校心位置的運(yùn)動。
理論偏航角和俯仰角分別是偏航、俯仰驅(qū)動滑塊滑移距離的函數(shù),即ψ=f(qp),θ=f(qf)。綜上分析,偏航俯仰軸線偏移引起天平校心的位置誤差為
(9)
2.2.2姿態(tài)誤差分析
圖4 剛體轉(zhuǎn)動示意圖
由于偏航、俯仰軸線與機(jī)構(gòu)總體坐標(biāo)系的yz軸、zz軸有微小的傾角,因此偏航軸線的偏航運(yùn)動實際上會引起分離體模型在機(jī)構(gòu)總體坐標(biāo)系中偏航、俯仰和滾轉(zhuǎn),俯仰時相同。
機(jī)構(gòu)實際繞偏航、俯仰軸運(yùn)動時,相當(dāng)于已知了偏航、俯仰軸的軸線方向以及轉(zhuǎn)角大小,然后求解分離體模型在總體坐標(biāo)系轉(zhuǎn)過的角度。
任意個剛體的轉(zhuǎn)動可以用定軸轉(zhuǎn)動的轉(zhuǎn)軸轉(zhuǎn)角參數(shù)(球坐標(biāo))來描述,也可以使用姿態(tài)角來描述。那么軸線偏移對應(yīng)的情況是已知分離體模型的轉(zhuǎn)軸轉(zhuǎn)角參數(shù)求解姿態(tài)角。
如圖4所示:n表示實際軸線方向的單位矢量;ω為轉(zhuǎn)過的角度;(α,φ)為矢量n的球坐標(biāo)角。轉(zhuǎn)動R球坐標(biāo)描述為
(10)
其中:
cω=cosω,sω=sinω,cφ=cosφ,sφ=sinφ,cα=cosα,sα=sinα
轉(zhuǎn)動姿態(tài)角描述為
(11)
其中:
cθ′=cosθ′,sθ′=sinθ′,cψ′=cosψ′,sψ′=sinψ′,cγ′=cosγ′,sγ′=sinγ′
由式(10)與(11)中的元素對應(yīng)相等求出實際的ψ′、θ′、γ′。
對于偏航軸線與yz軸不重合引起的誤差為
(12)
對于俯仰軸線與zz軸不重合引起的誤差為
(13)
因此,由偏航和俯仰軸線與機(jī)構(gòu)總體坐標(biāo)系軸線不重合引起的姿態(tài)誤差可表示為
(14)
采用CTS機(jī)構(gòu)運(yùn)動學(xué)方程求分離體模型位置和姿態(tài)與CTS機(jī)構(gòu)驅(qū)動滑塊滑移距離之間的關(guān)系,分離體模型的位置和姿態(tài)必須放在特定的坐標(biāo)系中。在理想情況下,風(fēng)洞坐標(biāo)系與CTS機(jī)構(gòu)總體坐標(biāo)系重合。
在實際情況中,風(fēng)洞固定坐標(biāo)系是通過噴管的位置確定的,機(jī)構(gòu)總體坐標(biāo)系是由機(jī)構(gòu)確定的,這2個坐標(biāo)系不會完全重合,即當(dāng)CTS機(jī)構(gòu)未運(yùn)動處于機(jī)構(gòu)零位時,分離體模型在風(fēng)洞固定坐標(biāo)系中的位姿已經(jīng)有初值,所以在誤差補(bǔ)償時需要對機(jī)構(gòu)的零位進(jìn)行補(bǔ)償。
3.1.1單軸運(yùn)動數(shù)據(jù)測量與分析
針對加工好的機(jī)構(gòu),需要對機(jī)構(gòu)單軸運(yùn)動時的重復(fù)定位精度和絕對定位精度進(jìn)行測量。對長度為500 mm的尾支桿,末端固定粘貼一個靶標(biāo),單軸運(yùn)動,利用激光跟蹤儀測量點(diǎn)的位置,在計算機(jī)測量軟件中記錄下來。X、Y、Z方向每100 mm記錄1個點(diǎn)的數(shù)據(jù),由于數(shù)據(jù)量很大,在此就不一一列出。
按照設(shè)計,單軸驅(qū)動X滑塊時,末端測量點(diǎn)的yz和zz不應(yīng)產(chǎn)生位移值,則實際產(chǎn)生的位移值也就是Y和Z方向的誤差值,用δx(qx)、δy(qx)、δz(qx)分別表示單軸驅(qū)動X方向運(yùn)動時對X方向、Y方向、Z方向產(chǎn)生的誤差值。此處將測量數(shù)據(jù)利用Matlab繪制出誤差曲線,如圖5~9所示,圖中δj(qi)表示驅(qū)動i方向的滑塊引起的jz方向的位移誤差。單軸驅(qū)動Y和Z方向時同理。
通過數(shù)據(jù)分析,可得到CTS機(jī)構(gòu)單軸運(yùn)動時各軸的重復(fù)定位精度和絕對定位精度值,見表1和表2。
圖5 X滑塊滑動引起質(zhì)心xz向位移誤差
圖7 Z滑塊滑動引起質(zhì)心zz向位移誤差
圖9 偏航角度誤差值
檢測項目實測值X向重復(fù)定位精度≤0.02mmY向重復(fù)定位精度≤0.1mmZ向重復(fù)定位精度≤0.02mmθ重復(fù)定位精度≤0.5'ψ重復(fù)定位精度≤0.2'γ重復(fù)定位精度≤1.8'
表2 CTS機(jī)構(gòu)絕對定位精度
將表1中的測量值和允許值比較,只有滾轉(zhuǎn)角γ的重復(fù)定位精度不夠,其原因主要是測量方法本身引起的誤差過大。測量時,靶標(biāo)貼在尾支桿安裝端面上,在滾轉(zhuǎn)電機(jī)驅(qū)動下,靶標(biāo)開始轉(zhuǎn)動,通過前后2次運(yùn)動靶點(diǎn)的位置坐標(biāo)來計算滾轉(zhuǎn)角。這種測量方式由于靶點(diǎn)經(jīng)過的圓弧太小,測量數(shù)據(jù)的測量誤差對計算出的滾轉(zhuǎn)角影響較大,因此需要改進(jìn)測量方法,增大滾轉(zhuǎn)的圓弧半徑。
將表2測量值和允許值比較,單軸驅(qū)動時只有Z向的定位精度不滿足要求。考慮各項誤差產(chǎn)生的運(yùn)動誤差的累加效應(yīng),仍需對單軸驅(qū)動進(jìn)行誤差補(bǔ)償。
3.1.2零位測量
在建立好風(fēng)洞固定坐標(biāo)系和CTS機(jī)構(gòu)總體坐標(biāo)系后,進(jìn)一步可以通過激光跟蹤儀測量和計算出機(jī)構(gòu)總體坐標(biāo)系的初始零位,初始零位位姿見表3。表3中:x0、y0、z0表示機(jī)構(gòu)總體坐標(biāo)系在風(fēng)洞固定坐標(biāo)系中的位置;ψ0、θ0、γ0表示從風(fēng)洞固定坐標(biāo)系旋轉(zhuǎn)到機(jī)構(gòu)總體坐標(biāo)系的姿態(tài)角。
表3 初始零位位姿
數(shù)據(jù)測量完后需要對補(bǔ)償效果進(jìn)行驗證。在正逆解程序中加上零位,給定末端點(diǎn)在風(fēng)洞固定坐標(biāo)系中的位姿,控制器驅(qū)動機(jī)構(gòu)運(yùn)動到實際位姿,利用激光跟蹤儀測量實際位姿,計算補(bǔ)償前定位誤差;將控制器中的程序改為補(bǔ)償后的程序,給定同樣的位姿,測量機(jī)構(gòu)達(dá)到的位姿,計算補(bǔ)償后的定位誤差;前后對比,驗證補(bǔ)償效果。
機(jī)構(gòu)單軸誤差可由上述方法來標(biāo)定,由于測量數(shù)據(jù)重復(fù)性比較好,可以采用最小二乘法多項式擬合求出誤差函數(shù)。單軸運(yùn)動誤差擬合曲線見圖10~12,圖中橫坐標(biāo)表示滑塊滑移距離,縱坐標(biāo)δj(qi)表示驅(qū)動i方向的滑塊滑動引起的質(zhì)心在總體坐標(biāo)系中jz方向的位移誤差值。
圖10 δx(qi)誤差擬合曲線
圖11 δy(qi)誤差擬合曲線
圖12 δz(qi)誤差擬合曲線
通過最小二乘法擬合出的誤差曲線圖對應(yīng)的誤差函數(shù)分別如下:
(15)
(16)
(17)
那么,式(3)中的導(dǎo)軌與軸線不平行而導(dǎo)致的誤差為
(18)
機(jī)構(gòu)三軸聯(lián)動誤差在CTS機(jī)構(gòu)總體坐標(biāo)系原點(diǎn)處,因此將式(18)以及測試出的機(jī)構(gòu)總體坐標(biāo)系和風(fēng)洞固定坐標(biāo)系之間的零位數(shù)據(jù)代入相應(yīng)正解方程中,便可得到補(bǔ)償后的正解。
補(bǔ)償后的逆解需要通過正解方程反求輸入的滑塊位移,過程為求解3個三元方程組成的非線性方程組,將方程組寫成一般形式編入CTS機(jī)構(gòu)控制器軟件中,同時添加求解非線性方程組的牛頓迭代法[10-11],即可完成CTS機(jī)構(gòu)逆解的求取。
圖13 三軸聯(lián)動補(bǔ)償前后絕對定位精度對比
為了驗證誤差補(bǔ)償?shù)慕Y(jié)果,通過測量X、Y、Z三軸聯(lián)動來檢測導(dǎo)軌與機(jī)構(gòu)總體坐標(biāo)系軸線不平行的誤差方法的有效性。
未補(bǔ)償前,給定空間15個點(diǎn)的位置,通過控制軟件中的逆解程序計算并驅(qū)動機(jī)構(gòu)運(yùn)動,記錄最終模型理論質(zhì)心在風(fēng)洞固定坐標(biāo)系中的位置(已補(bǔ)償零位),將給定位置和最終達(dá)到的位置記錄下來。給定同樣的位置,利用補(bǔ)償后(補(bǔ)償零位及導(dǎo)軌與軸線不平行誤差)的逆解驅(qū)動機(jī)構(gòu)運(yùn)動,將補(bǔ)償后實際到達(dá)的位置記錄下來。根據(jù)2次的記錄,計算出補(bǔ)償前后的定位誤差,如表4所示,將補(bǔ)償前后的定位誤差繪制成曲線圖,如圖13所示。
由圖13可知:CTS機(jī)構(gòu)的3軸聯(lián)動絕對定位精度得到了明顯的提高,補(bǔ)償前絕對定位誤差的最大值為0.952 2 mm,補(bǔ)償后絕對定位誤差的最大值為0.112 3 mm,絕對定位精度提高了88.21%。
表4 三軸聯(lián)動誤差補(bǔ)償前后絕對定位精度(mm)
本文對CTS機(jī)構(gòu)的幾何誤差進(jìn)行了詳細(xì)的理論分析,通過實驗測試得到數(shù)據(jù),并采用最小二乘法擬合辨識了導(dǎo)軌與軸線不平行引起的運(yùn)動誤差,通過理論分析求解了偏航俯仰軸線偏移的誤差矩陣,將辨識出的誤差矩陣引入到正解方程中,得到補(bǔ)償后的正解方程。利用牛頓迭代法求取補(bǔ)償后的正解方程組成的非線性方程組,得到補(bǔ)償后的逆解。通過對補(bǔ)償試驗現(xiàn)場測量相關(guān)數(shù)據(jù)的分析,利用本文研究的補(bǔ)償方法,采用軟件補(bǔ)償法完成了CTS機(jī)構(gòu)的幾何誤差補(bǔ)償。通過X、Y、Z三軸聯(lián)動比較了補(bǔ)償前后CTS機(jī)構(gòu)的定位誤差,驗證了補(bǔ)償方法的可靠性。
參考文獻(xiàn):
[1]緱雙雙,蹇開林.一種六自由度分離體機(jī)構(gòu)運(yùn)動學(xué)分析及仿真[J].重慶理工大學(xué)學(xué)報(自然科學(xué)),2017,31(5):43-48.
[2]YOSHIKAWA J.Manipulability of Robotic Mechanisms[J].Int J Robotics Reserch,1987,4(2):3-9.
[3]王東署,遲健男.機(jī)器人運(yùn)動學(xué)標(biāo)定綜述[J].計算機(jī)應(yīng)用研究,2007,24(9):8-11.
[4]王東署.工業(yè)機(jī)器人標(biāo)定技術(shù)研究[D].沈陽:東北大學(xué),2006.
[5]黃敘輝,羅新福.FL-24風(fēng)洞新型捕獲軌跡系統(tǒng)設(shè)計與發(fā)展[J].空氣動力學(xué)報,2008,26(2):145-149.
[6]黃敘輝,龐旭東,等.1.2 m跨超聲速風(fēng)洞新型捕獲軌跡系統(tǒng)研制[J].實驗流體力學(xué),2008,22(2):95-98.
[7]李蓓蕾.多次自適應(yīng)最小二乘曲線擬合方法及其應(yīng)用[D].荊州:長江大學(xué),2014.
[8]路元鴻.三維空間中圓的參數(shù)方程[EB/OL].[2017-03-08].http://www.mathchina.net/dvbbs/dispbbs.asp?boardid=3&Id=471.
[9]李養(yǎng)成,郭瑞芝.空間解析幾何[M].北京:科學(xué)出版社,2004.
[10] 王開榮,楊大地.數(shù)值分析[M].北京:高等教育出版社,2010.
[11] 徐建強(qiáng).并聯(lián)機(jī)構(gòu)中常用的數(shù)學(xué)分析法[J]. 農(nóng)業(yè)裝備技術(shù),2010(5):20-21.