亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于OpenGL的翼身調(diào)姿對接仿真系統(tǒng)開發(fā)①

        2017-05-17 10:00:22沈建新南京航空航天大學(xué)機(jī)電學(xué)院南京210016
        關(guān)鍵詞:定位器位姿機(jī)翼

        徐 源, 沈建新(南京航空航天大學(xué) 機(jī)電學(xué)院, 南京 210016)

        基于OpenGL的翼身調(diào)姿對接仿真系統(tǒng)開發(fā)①

        徐 源, 沈建新
        (南京航空航天大學(xué) 機(jī)電學(xué)院, 南京 210016)

        針對一種由三軸定位器構(gòu)成的飛機(jī)翼身調(diào)姿對接系統(tǒng), 闡述其調(diào)姿對接流程, 通過機(jī)身、機(jī)翼軌跡規(guī)劃及其相應(yīng)的定位器運動學(xué)逆解, 實現(xiàn)其調(diào)姿算法. 采用面向?qū)ο蠹夹g(shù), 在Visual Studio 2010環(huán)境下利用OpenGL(Open Graphic Library)圖形庫函數(shù)開發(fā)翼身調(diào)姿對接仿真軟件, 結(jié)合定位器運動學(xué)方程和翼身軌跡規(guī)劃實現(xiàn)整個模型在軟件界面中的動態(tài)仿真, 仿真結(jié)果能夠直觀反映機(jī)身或機(jī)翼位姿及其動態(tài)過程, 驗證了翼身調(diào)姿對接算法的正確性.

        軌跡規(guī)劃; 運動學(xué)逆解; OpenGL; 運動學(xué)仿真

        飛機(jī)翼身調(diào)姿對接是飛機(jī)總裝的重要組成部分,傳統(tǒng)的裝配方式是利用固定工裝型架定位和人工對接裝配相結(jié)合的方法, 但其裝配效率低、人工操作困難等缺點已難以適應(yīng)現(xiàn)代飛機(jī)裝配的要求. 不斷提高飛機(jī)裝配柔性化、數(shù)字化、自動化的水平已成為飛機(jī)裝配技術(shù)發(fā)展的必然趨勢[1,2].

        在飛機(jī)裝配的前期準(zhǔn)備中, 運動仿真發(fā)揮著至關(guān)重要的作用. 三維環(huán)境中, 借助三維數(shù)字化模型, 采用三維裝配指令規(guī)劃方法, 即可實現(xiàn)裝配仿真. 提前模擬翼身調(diào)姿對接過程, 能夠及時發(fā)現(xiàn)運動中可能出現(xiàn)的問題, 為優(yōu)化調(diào)姿對接運動軌跡、指導(dǎo)工作人員操作提供平臺[3-5].

        對于飛機(jī)翼身調(diào)姿對接仿真, 目前通常采用兩種方法, ①使用UG、Pro/E、SolidWorks、CATIA等三維軟件進(jìn)行三維建模和運動仿真. 但其只能實現(xiàn)簡單的機(jī)構(gòu)仿真, 難以實現(xiàn)調(diào)姿對接過程中飛機(jī)部件在不同姿態(tài)下的調(diào)整, 也無法按照相應(yīng)的軌跡規(guī)劃進(jìn)行仿真.②對上述三維軟件進(jìn)行二次開發(fā), 雖然三維數(shù)據(jù)是統(tǒng)一的, 不需要進(jìn)行模型的轉(zhuǎn)換, 但必須依賴原有軟件的功能, 不能獨立運行[6-9].

        OpenGL是一種強大的圖形編程接口, 具有很好的三維建模能力, 不存在上述問題的限制[10]. 因此為了更直觀的模擬飛機(jī)翼身調(diào)姿對接現(xiàn)場, 通過嵌入正逆運動學(xué)、軌跡規(guī)劃等算法, 開發(fā)基于OpenGL和MFC的翼身調(diào)姿對接虛擬仿真實驗平臺. 運用計算機(jī)圖形學(xué)和虛擬現(xiàn)實技術(shù), 將整個平臺的三維數(shù)據(jù)及調(diào)姿對接數(shù)據(jù)轉(zhuǎn)換為相應(yīng)的場景和運動, 最終實現(xiàn)飛機(jī)翼身調(diào)姿對接三維可視化仿真.

        1 仿真系統(tǒng)框架概述

        1.1 基于MFC的OpenGL應(yīng)用程序框架

        OpenGL是一個跨編程語言的三維圖形軟件庫,具有較好的兼容性, 可在不同平臺的操作系統(tǒng)間進(jìn)行移植[11]. 其本質(zhì)為底層圖形庫, 并不提供大量的實體圖元, 因此無法直接建立場景. 但是通過編寫的轉(zhuǎn)換讀取程序, 可將Pro/E、CATIA等軟件設(shè)計的模型轉(zhuǎn)換為OpenGL可繪制的頂點數(shù)組, 從而實現(xiàn)三維模型的讀取和顯示. 翼身調(diào)姿對接仿真軟件是在Windows系統(tǒng)下開發(fā)的, 但只通過OpenGL并不能實現(xiàn)可視化的界面管理. MFC是微軟基礎(chǔ)類庫, 以C++類的方式封裝了Windows API, 其中包含很多Windows控件和組件的封裝類[12]. 借助MFC圖形用戶界面的應(yīng)用程序框架, 可以快速完成仿真系統(tǒng)界面的設(shè)計, 提高仿真軟件開發(fā)的效率.

        1.2 調(diào)姿對接系統(tǒng)流程

        翼身調(diào)姿對接包括四個階段, 分別是: ①機(jī)身調(diào)姿; ②左機(jī)翼調(diào)姿; ③右機(jī)翼調(diào)姿; ④翼身對合. 機(jī)身調(diào)姿是通過獲取機(jī)身初始位姿和目標(biāo)位姿實現(xiàn)機(jī)身軌跡的解算, 根據(jù)解算結(jié)果逆解出定位器各軸的驅(qū)動量,最終完成機(jī)身調(diào)姿. 左機(jī)翼調(diào)姿和右機(jī)翼調(diào)姿與機(jī)身調(diào)姿類似, 通過軌跡解算和逆解定位器各軸驅(qū)動量,實現(xiàn)機(jī)翼調(diào)姿. 翼身對合則是在完成機(jī)身和機(jī)翼調(diào)姿后, 機(jī)身固定不動, 機(jī)翼沿著對接方向平移, 從而實現(xiàn)機(jī)翼與機(jī)身的對合.

        無論在哪一個階段, 都可以將調(diào)姿對接過程抽象為剛體位姿的調(diào)整問題, 即利用調(diào)姿對接算法, 最終實現(xiàn)機(jī)身或機(jī)翼從初始位置到目標(biāo)位置的調(diào)整. 整個調(diào)整過程的系統(tǒng)圖如圖1所示.

        圖1 翼身調(diào)姿對接系統(tǒng)圖

        2 翼身調(diào)姿對接算法

        2.1 定位器運動學(xué)逆解

        機(jī)身與機(jī)翼調(diào)姿機(jī)構(gòu)類似, 均由三個三軸定位器及其相應(yīng)部件組成, 三個三軸定位器的基座固定在地面上, 機(jī)身、機(jī)翼則通過吸附在其表面的工藝接頭與定位器鉸接相連, 機(jī)身或機(jī)翼為調(diào)姿對接運動平臺.調(diào)姿機(jī)構(gòu)的運動學(xué)結(jié)構(gòu)簡圖如圖2所示. 其中Ni( i=1,2,3) 為第i個定位器, 三個定位器采用3-2-1自由度的方式安排[13], 即N1為三驅(qū)動定位器, N2為兩驅(qū)動定位器, N3為一驅(qū)動定位器.

        由于三軸定位器接頭處固接在機(jī)身或機(jī)翼上, 其工藝接頭在機(jī)身或機(jī)翼局部坐標(biāo)系下的位置固定, 定位器的6個驅(qū)動量為工藝接頭在全局坐標(biāo)系下的變化值. 為了獲得機(jī)身、機(jī)翼局局部坐標(biāo)系中工藝接頭在全局坐標(biāo)系下的坐標(biāo), 可以通過坐標(biāo)系原點之間的平移變換和坐標(biāo)系軸的旋轉(zhuǎn)變換來實現(xiàn).

        圖2 調(diào)姿平臺運動學(xué)結(jié)構(gòu)簡圖

        設(shè)Om為全局坐標(biāo)系, On為機(jī)身或機(jī)翼局部坐標(biāo)系, 局部坐標(biāo)系可由測量調(diào)姿基準(zhǔn)點來確定[14],為第i個定位器的工藝接頭在全局坐標(biāo)系下的坐標(biāo)值,為第i個定位器工藝接頭在機(jī)身機(jī)翼局部坐標(biāo)系下的坐標(biāo)值,P為兩坐標(biāo)系原點的差值.

        對于平移變換, 只需要加上坐標(biāo)系原點間的差值即可; 對于旋轉(zhuǎn)變換, 按照旋轉(zhuǎn)軸旋轉(zhuǎn)先后順序的不同, 可以分為繞X-Y-Z、X-Z-Y、Y-X-Z、Y-Z-X、Z-X-Y、Z-Y-X六種方式, 并且每次旋轉(zhuǎn)都是繞轉(zhuǎn)動后的新的軸進(jìn)行變換, 每個旋轉(zhuǎn)矩陣從左往右乘, 相乘的順序與轉(zhuǎn)動的次序相同[15]. 六種方式對變化結(jié)果并無影響,只是在旋轉(zhuǎn)矩陣的公式上有所不同. 這里采用Z-Y-X歐拉角的順序來描述調(diào)姿部件的旋轉(zhuǎn)變換.

        假設(shè)mO和nO重合, 首先將nO繞nz旋轉(zhuǎn)α角度,再繞ny旋轉(zhuǎn)β角度, 最后繞nx旋轉(zhuǎn)γ角度, 可得mO.

        即得出旋轉(zhuǎn)變化矩陣為:

        式子中c表示cos, s表示sin. 則工藝接頭球心處在全局坐標(biāo)系下的坐標(biāo)為:

        第i個三軸定位器在x,y,z方向的位移表達(dá)式為:

        其中eix=(1 0 0)T, eiy=(0 1 0)T, eiz=(001)T,通過上述確定調(diào)姿位姿后, 即可求出各個驅(qū)動位移的理論表達(dá)式.

        2.2 五次多項式軌跡規(guī)劃

        軌跡規(guī)劃主要是利用多項式、拋物線、樣條線以及不同曲線結(jié)合進(jìn)行規(guī)劃. 在實際工程中, 常采用三次多項式進(jìn)行軌跡規(guī)劃[16], 能夠得到光滑的位移和速度曲線, 但并不能得到較光滑的加速度曲線. 對于機(jī)身、機(jī)翼體積質(zhì)量較大的物體, 調(diào)姿過程應(yīng)注重其運動的平穩(wěn)性, 三次多項式并不能滿足其平穩(wěn)性的要求.通過增加多項式次數(shù)可以提高運動軌跡的平穩(wěn)性, 能夠得到光滑的加速度曲線, 因此采用五次多項式的方法對翼身調(diào)姿對接進(jìn)行軌跡規(guī)劃.

        由上一節(jié)坐標(biāo)系變換可知, 對于機(jī)身或機(jī)翼空間位姿描述, 可由6個參數(shù)決定, 對應(yīng)的是機(jī)身、機(jī)翼局部坐標(biāo)系相對于用于全局坐標(biāo)系的3個平移量和3個旋轉(zhuǎn)量p( x, y, z,γ, β ,α) , 通過完成6個參數(shù)的變化,即可實現(xiàn)翼身調(diào)姿對接每個階段的調(diào)整.

        對于上述6個位姿參數(shù), 每個參數(shù)的變化均按照五次多項式樣條進(jìn)行擬合, 五次多項式函數(shù)中共有6個未知數(shù), 對其分別進(jìn)行一階導(dǎo)、二階導(dǎo)的求解, 可得到機(jī)身和機(jī)翼調(diào)姿過程中速度、加速度關(guān)于時間t的函數(shù):

        以任意一個位姿參數(shù)為例. 初始位姿時間和目標(biāo)位姿時間為0、T, 對應(yīng)的角變化或位移為l0和lT, 這些值均已知, 且滿足條件:

        對于多項式的起點和終點, 還需滿足二階連續(xù)的要求, 即起點和終點的速度及加速度要滿足條件:

        在實際的工程實踐中, 調(diào)姿對接的初始速度和到達(dá)目標(biāo)位姿的終止速度都應(yīng)為0. 另外, 為了使得調(diào)姿運動光滑連續(xù), 還應(yīng)滿足每個階段的初始加速度和到達(dá)目標(biāo)位姿的終止加速度為0. 將式(7)、(8)中的六個條件代入公式(4)、(5)、(6), 聯(lián)立即可以解出五次多項式的六個系數(shù), 得出軌跡方程為:

        3 仿真系統(tǒng)軟件設(shè)計

        3.1 軟件設(shè)計步驟

        首先利用Visual Studio 2010 中MFC模塊建立單文檔應(yīng)用程序, 并加載OpenGL庫中相應(yīng)的.dll文件、.lib文件和.h文件, 完成工程項目的基本設(shè)置[17].

        其次利用OpenGL庫函數(shù)完成三維圖形應(yīng)用環(huán)境的初始化. 通過調(diào)用MFC中Picture類, 加載相應(yīng)控件,實現(xiàn)可視化界面的顯示.

        在OpenGL中完成機(jī)身、機(jī)翼和定位器模型的繪制較為復(fù)雜, 可以利用三維軟件CATIA設(shè)計相關(guān)的模型, 再轉(zhuǎn)換為OBJ 3D模型文件格式. 通過編寫函數(shù)glmReadOBJ()和LoadModelsFromFiles()實現(xiàn)OBJ格式模型的讀入和顯示. 由于定位器接頭相對于機(jī)身或者機(jī)翼的位置固定, 在程序中通過添加幾何約束關(guān)系來實現(xiàn)各個部件有規(guī)律的運動.

        為了實現(xiàn)翼身對接仿真各個角度及各個位置的觀察, 通過在仿真軟件中添加Button按鈕和鼠標(biāo)響應(yīng),實現(xiàn)可視化仿真中調(diào)姿對接環(huán)境的平移和旋轉(zhuǎn).

        3.2 雙緩沖技術(shù)

        為了能夠連續(xù)動態(tài)的顯示整個翼身調(diào)姿對接過程,整個Picture繪圖控件會不斷的通過清除背景和重新繪制而刷新, 但這會造成仿真界面的閃爍, 利用雙緩沖技術(shù)可以解決這一問題.

        建立SwapBuffers()雙緩沖區(qū)(前臺緩沖區(qū)和后臺緩沖區(qū))[18], 前臺緩沖區(qū)用來顯示, 后臺緩沖區(qū)則在內(nèi)存中, 每當(dāng)調(diào)姿對接出現(xiàn)變化時, 先將幾何圖形的變換操作在后臺緩沖區(qū)進(jìn)行, 再將進(jìn)行的結(jié)果復(fù)制到前臺緩沖區(qū)屏幕上, 完成顯示. 讓使用者看到的是每一幀的調(diào)姿對接場景, 而不是調(diào)姿對接場景的繪制過程,從而避免刷新而導(dǎo)致畫面閃爍的問題.

        3.3 軟件界面效果

        仿真軟件包含四個階段的調(diào)姿對接部分, 每個階段還包含數(shù)據(jù)的存儲和導(dǎo)入. 部分仿真軟件效果圖如圖3所示.

        圖3 調(diào)姿仿真軟件界面效果圖

        3.4 軌跡分析

        由于機(jī)身調(diào)姿與機(jī)翼調(diào)姿類似, 軌跡分析以右機(jī)翼調(diào)姿和翼身對合為例, 假設(shè)對應(yīng)的右機(jī)翼的初始位姿為(-540,1350,-200,, 目標(biāo)位姿為(-500,1300,-50,0,0,0). 調(diào)姿時間共25s, 其中右機(jī)翼旋轉(zhuǎn)調(diào)姿時間為10s, 右機(jī)翼位置調(diào)整時間為5s, 翼身對合時間為10s, 且每次調(diào)姿過程都利用五次多項式進(jìn)行插值計算, 則可獲得右機(jī)翼上一點的運動軌跡如圖4所示. 此軌跡是一條光滑連續(xù)的空間曲線, 滿足平穩(wěn)性的要求. 同時根據(jù)上述定位器驅(qū)動軸逆解, 求出相應(yīng)的驅(qū)動量, 如圖5所示. 從位移圖中可以看出,在0~15s的時間內(nèi), (a)~(f)為右機(jī)翼的調(diào)姿與位置調(diào)整;在15~25s時間, (a)為翼身對合調(diào)整, 其余(b)~(f)驅(qū)動位移量位未發(fā)生變化. 結(jié)果表明, 六個驅(qū)動軸接頭處的節(jié)點位移軌跡是連續(xù)的, 且運動位移量均在各軸的行程范圍之內(nèi).

        圖4 飛機(jī)部件上一點軌跡圖

        圖5 定位器驅(qū)動軸位移軌跡曲線

        4 結(jié)論

        仿真系統(tǒng)成功的利用MFC和OpenGL建立應(yīng)用程序框架, 并借助三軸定位器模型和飛機(jī)部件模型搭建了翼身調(diào)姿對接仿真系統(tǒng), 采用五次多項式的軌跡規(guī)劃方法實現(xiàn)翼身調(diào)姿對接的平穩(wěn)運動. 三維仿真系統(tǒng)能夠?qū)崟r動態(tài)顯示調(diào)姿對接的運動狀況, 運行可靠,從結(jié)果看仿真達(dá)到了預(yù)期效果, 為實際翼身調(diào)姿對接提供指導(dǎo)依據(jù).

        1 鄒冀華,劉志存,范玉青,等.大型飛機(jī)部件數(shù)字化對接裝配技術(shù)研究.計算機(jī)集成制造系統(tǒng),2007,13(7):1367–1373.

        2 王仲奇,楊元.飛機(jī)裝配的數(shù)字化與智能化.航空制造技術(shù),2016,(5):36–41.

        3 王瑞利,丁慶增.基于OpenGL的3-RSS/S并聯(lián)機(jī)器人動態(tài)仿真.精密制造與自動化,2015,(3):37–39.

        4 劉春,張洪瑞,史紅祥等.裝配仿真技術(shù)及其在飛機(jī)裝配中的應(yīng)用.航空制造技術(shù),2015,485(15):10–13.

        5 李惠,張林鍹,肖田元,等.基于仿真控制的飛機(jī)大部件對接原型系統(tǒng)研究.航空制造技術(shù),2013,(22):90–94.

        6 陳琳,戴駿,馮俊杰,等.基于OpenGL的多機(jī)器人仿真環(huán)境.組合機(jī)床與自動化加工技術(shù),2014,(9):10–13.

        7 謝瑩瑩,鮑凱,馬曉光,等.基于DELMIA二次開發(fā)的轉(zhuǎn)向架三維裝配仿真系統(tǒng)的開發(fā).機(jī)械制造,2015,53(4):55–57.

        8 屈力剛,苑俊超,白金蘭,等.前機(jī)身裝配平臺定位單元離線軌跡生成.機(jī)床與液壓,2014,(22):33–35,49.

        9 付兵,胡飛飛,等.基于OpenGL的多機(jī)器人仿真實驗平臺研究及實現(xiàn).組合機(jī)床與自動化加工技術(shù),2016,(1): 20–23.

        10閆林林,徐方,賈凱,等.Delta機(jī)器人運動控制及圖形軌跡的動態(tài)仿真.計算機(jī)工程與設(shè)計,2015,(8):2196–2200.

        11 Richhard S. Wright, Lipchak B, Haemel N. 張琪,付飛,譯.OpenGL 超級寶典.北京:人民郵電出版社,2010.

        12 祁若龍,周維佳,劉金國等.VC平臺下機(jī)器人虛擬運動控制及3D運動仿真的有效實現(xiàn)方法.機(jī)器人,2013,35(5): 594–599.

        13 黃翔,李瀧杲,陳磊,等.民用飛機(jī)大部件數(shù)字化對接關(guān)鍵技術(shù).航空制造技術(shù),2010,(3):54–56.

        14 董一巍,李曉琳,趙奇,等.大型飛機(jī)研制中的若干數(shù)字化智能裝配技術(shù).航空制造技術(shù),2016,(1):58–63.

        15 姬金祖,束長勇,黃沛霖等.歐拉角在飛行航跡仿真中的應(yīng)用.南京航空航天大學(xué)學(xué)報,2014,46(2):218–224.

        16 樂英,岳艷波.六自由度機(jī)器人運動學(xué)仿真及軌跡規(guī)劃.組合機(jī)床與自動化加工技術(shù),2016,4:89–92.

        17 和克智,任鵬剛,許秦蓉,等.OpenGL編程技術(shù)詳解.北京:化學(xué)工業(yè)出版社,2010.

        18 葉舸,田兆鋒,閆楚良等.基于OpenGL的飛機(jī)飛行實測數(shù)據(jù)可視化研究.航空學(xué)報,2011,32(6):1050–1057.

        Development of Wing-Fuselage Adjustment-Docking Simulation System Based on OpenGL

        XU Yuan, SHENG Jian-Xin
        (College of Mechanical and Electrical Engineering, Nanjing University of Aeronautics & Astronautics, Nanjing 210016, China)

        For a kind of system of aircraft wing-fuselage adjustment-docking which is composed of 3-axis positioners, this paper introduces the process of adjustment-docking, achieves adjustment-docking algorithm by planning trajectory of the wing-fuselage and solving the equation of inverse kinematic. The simulation software of wing-fuselage adjustment-docking is developed by using of object oriented technology and OpenGL library in environment of Visual Studio 2010. The dynamic simulation of the whole models in the software interface is accomplished by combining the kinematic equation of the positioner and the trajectory planning of the wing-fuselage. Results of simulation can be used to display the position and dynamic process of the wing and fuselage. It proves the correctness of adjustment-docking algorithm.

        trajectory planning; inverse kinematic; OpenGL; kinematics simulation

        航空科學(xué)基金(2013ZE52067)

        2016-07-24;收到修改稿時間:2016-08-29

        10.15888/j.cnki.csa.005702

        猜你喜歡
        定位器位姿機(jī)翼
        定位器故障分析及控制措施
        壓接類定位器壓接工藝設(shè)備改進(jìn)方案
        變時滯間隙非線性機(jī)翼顫振主動控制方法
        基于共面直線迭代加權(quán)最小二乘的相機(jī)位姿估計
        基于CAD模型的單目六自由度位姿測量
        基于圖像處理的定位器坡度計算
        電氣化鐵道(2016年4期)2016-04-16 05:59:46
        小型四旋翼飛行器位姿建模及其仿真
        機(jī)翼跨聲速抖振研究進(jìn)展
        基于幾何特征的快速位姿識別算法研究
        基于模糊自適應(yīng)的高超聲速機(jī)翼顫振的主動控制
        中文字幕熟妇人妻在线视频| 亚洲av无一区二区三区| 久久99国产精品久久| 欧洲极品少妇| 亚洲精品6久久久久中文字幕| 美女福利视频网址导航| 色婷婷av一区二区三区久久| 国产一区二区波多野结衣| 成人爽a毛片一区二区免费| 五月婷婷激情六月开心| 亚洲乱码av乱码国产精品| 天下第二社区在线视频| 久久99欧美| 粗一硬一长一进一爽一a视频| 国产亚洲精品av久久| 人妻少妇精品无码专区二区| 伊人精品无码AV一区二区三区| 日韩精品一级在线视频| 麻豆资源在线观看视频| 国产麻豆精品久久一二三| 亚洲—本道中文字幕久久66| 精品久久精品久久精品| 性无码一区二区三区在线观看| 少妇人妻真实偷人精品视频| 亚洲欧洲一区二区三区波多野| 蜜桃成熟时日本一区二区| 亚洲国产日韩欧美综合a| 久久99精品久久久久久野外| 在线免费观看视频播放| 无遮挡很爽很污很黄的女同| 午夜精品一区二区三区的区别| 日本在线观看不卡| 经典黄色一区二区三区| 精品国产麻豆免费人成网站| 84pao强力打造免费视频34| 国产一区二区在线观看视频免费| 日本一二三区在线观看视频| 香蕉久久福利院| 国产成人综合久久精品推荐免费| 偷拍韩国美女洗澡一区二区三区 | 日韩欧美亚洲中字幕在线播放|