• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      數(shù)據(jù)驅(qū)動系泊船三維控件開發(fā)技術(shù)研究

      2016-11-28 05:08:38邱占芝楊福安張崇趙星甜
      大連交通大學(xué)學(xué)報 2016年3期
      關(guān)鍵詞:纜繩系泊控件

      邱占芝,楊福安,張崇,趙星甜

      (大連交通大學(xué) 軟件學(xué)院,遼寧 大連 116028)

      ?

      數(shù)據(jù)驅(qū)動系泊船三維控件開發(fā)技術(shù)研究

      邱占芝,楊福安,張崇,趙星甜

      (大連交通大學(xué) 軟件學(xué)院,遼寧 大連 116028)

      為實(shí)現(xiàn)開敞式碼頭系泊監(jiān)控系統(tǒng)三維顯示效果,提高系統(tǒng)的構(gòu)建效率,開發(fā)系泊船及其系泊纜繩三維控件.在分析船舶六個自由度運(yùn)動以及纜繩所受拉力的基礎(chǔ)上,研究系泊船舶及纜繩運(yùn)動模型、構(gòu)建方法與控件開發(fā)技術(shù).控件開發(fā)以VS2010為開發(fā)平臺,基于OpenGL函數(shù)類庫,采用模塊化的方法對各三維模型進(jìn)行構(gòu)建,并實(shí)現(xiàn)三維模型與運(yùn)動模型相結(jié)合,實(shí)現(xiàn)三維控件受實(shí)時監(jiān)測數(shù)據(jù)驅(qū)動.采用此控件構(gòu)建的碼頭系泊監(jiān)控系統(tǒng)可以實(shí)時、逼真顯示系泊船舶的運(yùn)動姿態(tài)、系泊纜繩張力等實(shí)時作業(yè)狀態(tài).控件具有可重用性,在碼頭系泊領(lǐng)域具有廣泛的應(yīng)用前景.

      數(shù)據(jù)驅(qū)動;系泊船三維控件;三維模型構(gòu)建方法;OpenGL函數(shù)類庫;控件重用性;開敞式碼頭

      0 引言

      隨著我國經(jīng)濟(jì)飛速發(fā)展,國際進(jìn)出口貿(mào)易總額日益攀升,對于日漸增多的開場式碼頭,安全與高效作業(yè)越來越受到業(yè)界關(guān)注,亟待建立開敞式碼頭系靠泊監(jiān)控與預(yù)警系統(tǒng)[1].為增強(qiáng)開敞式碼頭系泊監(jiān)控系統(tǒng)三維顯示效果,提高系統(tǒng)的構(gòu)建效率,需要開發(fā)系泊船及其系泊纜繩三維控件[2].以VS2010為平臺、OpenGL庫函數(shù)為基礎(chǔ),設(shè)計了大型開敞式碼頭系泊三維控件,其中包括船舶的六個自由度運(yùn)動,與船體連接的纜繩隨船體運(yùn)動以及由于纜繩所受拉力變化,導(dǎo)致顏色變化.該控件可以直觀,形象地反映出船舶運(yùn)動情況以及纜繩拉力情況.

      1 控件開發(fā)架構(gòu)

      控件開發(fā)模塊架構(gòu),主要包括三個部分:三維圖像建立,船舶運(yùn)動建模與求解,交互界面設(shè)計.

      (1)三維模型建立.該模塊對所有控件中所需要的三維圖形進(jìn)行讀取或繪制以及坐標(biāo)定位.按照模塊化的思想,該控件包括以下幾個三維圖像模型:船舶圖形,護(hù)舷圖形,纜柱圖形,操作臺圖形,纜繩圖形以及控件背景.

      (2)船舶運(yùn)動建模與求解.該模塊實(shí)現(xiàn)了對于海洋運(yùn)動學(xué)中船舶運(yùn)動狀況的建模與船舶運(yùn)動學(xué)算法構(gòu)建,該算法運(yùn)用于控件中,表現(xiàn)為對于船舶運(yùn)動以及纜繩等周邊環(huán)境運(yùn)動的控制.

      (3)交互界面設(shè)計.該模塊提供人機(jī)交互界面,在界面中根據(jù)相應(yīng)比例、位置繪制出船舶模型以及周邊其他圖像模型,并可根據(jù)鼠標(biāo)操作,通過第三方平臺對相應(yīng)纜繩進(jìn)行操作.

      2 運(yùn)動模型建立

      控件運(yùn)動模型,主要包括三方面:

      (1)由于系泊位于環(huán)境情況惡劣,受風(fēng)浪流影響,系泊在開敞式碼頭中自由飄蕩,導(dǎo)致船舶出現(xiàn)運(yùn)動偏移,船舶運(yùn)動模型:橫移,縱移,升降,橫搖,縱搖和旋轉(zhuǎn)六個自由度運(yùn)動[3];

      (2)由于系泊船舶運(yùn)動,最終導(dǎo)致船舶與碼頭港口之間的纜繩運(yùn)動,纜繩運(yùn)動模型,表現(xiàn)為已和船舶相連的纜繩,根據(jù)船舶運(yùn)動而表現(xiàn)出不同的運(yùn)動狀況;

      (3)護(hù)舷運(yùn)動表現(xiàn)為船舶由于海浪等自然因素向護(hù)舷方向不斷靠近,不斷壓迫,進(jìn)而導(dǎo)致護(hù)舷被壓縮,護(hù)舷在該方向上的大小根據(jù)船舶運(yùn)動狀況伸縮.

      2.1 船舶運(yùn)動模型

      根據(jù)三維立體坐標(biāo)系,以船舶起始位置作為坐標(biāo)軸原點(diǎn)(0,0,0),船舶的六個自由度運(yùn)動可轉(zhuǎn)化為船舶在三維坐標(biāo)軸上的運(yùn)動:

      (1)平行移動:對船舶模型所在X、Y以及Z坐標(biāo)值進(jìn)行更改,在控件中通過調(diào)用glTranslatef平移方法與Invalidate(true)即時刷新來實(shí)現(xiàn);

      (2)旋轉(zhuǎn):船舶分別以X、Y以及Z軸為中心旋轉(zhuǎn)軸旋轉(zhuǎn)[5],此處將調(diào)用glRotatef旋轉(zhuǎn)方法,以Z軸為中心進(jìn)行旋轉(zhuǎn);

      2.2 纜繩運(yùn)動模型

      纜繩模型主要由纜柱端固定坐標(biāo)與船舶模型相連端非固定坐標(biāo)組成,在假設(shè)船體位置,纜繩端的原坐標(biāo)為(X0,Y0,Z0),船舶在X,Y,Z軸上的平移運(yùn)動量分別為:PX,PY和PZ,因此,在只有船舶平移運(yùn)動的情況下,船舶端纜繩的坐標(biāo)為(X0+PX,Y0+PY,Z0+PZ),因此,以下只對船舶旋轉(zhuǎn),縱搖和橫搖的情況下船舶端纜繩坐標(biāo)值(X,Y,Z)的計算進(jìn)行闡述:

      (1)X坐標(biāo)

      根據(jù)圖1纜繩端X坐標(biāo)運(yùn)動圖中分別抽象表示船舶旋轉(zhuǎn),縱搖和橫搖運(yùn)動過程中,只對船舶的X坐標(biāo)進(jìn)行研究.

      (a) 旋轉(zhuǎn)

      (b) 縱搖

      (c) 橫搖

      因此X的坐標(biāo)為:

      X=X1+X2+X3

      由圖1(a)旋轉(zhuǎn)示意圖中所示,X1=n×sin(angleY).旋轉(zhuǎn)過程中,船體本身長度不變,m=n,并可看出m取值大小為旋轉(zhuǎn)運(yùn)動前船舶端纜繩的Z坐標(biāo)值,即為Z0+PZ,m=n=Z0+PZ.因此,

      X1=(Z0+PZ)×sin(angleY)

      圖1(b)縱搖示意圖中,縱搖過程中,對X值不產(chǎn)生任何影響,因此,X2=0.

      圖1(c)橫搖示意圖中,X2=n×cos(angleZ).

      橫搖過程中,船體本身長度不變,m=n,并可看出m取值大小為橫搖運(yùn)動前船舶端纜繩的X坐標(biāo)值,即為X0+PX,m=n=X0+PX.因此,

      X3=(X0+PX)×cos(angleZ)

      因此,經(jīng)過六個自由度運(yùn)動之后,船舶端的纜繩X坐標(biāo)為:

      X=(Z0+PZ)×sin(angleY)+

      (X0+PX)×cos(angleZ)

      (2)Y坐標(biāo)

      根據(jù)圖2纜繩端Y坐標(biāo)運(yùn)動圖中分別抽象表

      (a) 旋轉(zhuǎn)

      (b) 縱搖

      (c) 橫搖

      示船舶旋轉(zhuǎn),縱搖和橫搖運(yùn)動過程中,只對船舶的Y坐標(biāo)進(jìn)行研究.因此Y的坐標(biāo)為:

      Y=Y1+Y2+Y3

      如圖2旋轉(zhuǎn)示意圖中所示可得:

      Y2=(Z0+PZ)×sin(angleX)

      Y3=(X0+PX)×sin(angleZ)

      因此,經(jīng)過六個自由度運(yùn)動之后,船舶端的纜繩Y坐標(biāo)為:

      Y=(Z0+PZ)×sin(angleX)+

      (X0+PX)×sin(angleZ)

      (3)Z坐標(biāo)

      根據(jù)圖3纜繩端Z坐標(biāo)運(yùn)動圖中分別抽象表示船舶旋轉(zhuǎn),縱搖和橫搖運(yùn)動過程中,只對船舶的Z坐標(biāo)進(jìn)行研究.因此Z的坐標(biāo)為:

      Z=Z1+Z2+Z3

      (a) 旋轉(zhuǎn)

      (b) 縱搖

      (c) 橫搖

      由圖3旋轉(zhuǎn)示意圖中所示可得:

      Z1=(Z0+PZ)×cos(angleY)

      Z2=(Z0+PZ)×cos(angleZ)

      Z3=0

      因此,經(jīng)過六個自由度運(yùn)動之后,船舶端的纜繩Z坐標(biāo)為:

      Z=(Z0+PZ)×cos(angleY)+

      (Z0+PZ×cos(angleX)

      3 技術(shù)處理

      3.1 三維模型建立

      運(yùn)用模塊化思想構(gòu)建控件中的各圖像模型板塊,使每個板塊之間相互獨(dú)立,如此便可對每個板塊中的圖像內(nèi)容進(jìn)行自由且獨(dú)立的增加、刪除以及修改.

      窗口創(chuàng)建:將圖像窗口抽象為方法reshape,對整個窗口顯示內(nèi)容進(jìn)行參數(shù)設(shè)置.該方法將定義所有控件窗口中的各項指標(biāo)參數(shù),例如通過glViewport設(shè)置三維世界的窗口大小,gluLookAt對視覺角度進(jìn)行位置,glColor窗口著色情況以及glDepth構(gòu)建三維空間的深度[6-8].

      背景創(chuàng)建:背景抽象為方法BackGround,即三維控件的背景圖像.將背景理解為置于屏幕后方的白板,將背景圖案貼在白板上.首先,在保證白板四個角坐標(biāo)置于同一平面,并且可構(gòu)成矩形的情況下.用glBegin(GL_QUADS)在三維空間中放置四個點(diǎn)坐標(biāo),此方法將四個點(diǎn)坐標(biāo)相連接自動形成平面,繪制出三維空間中的四邊形.在矩形平面繪制過程中,坐標(biāo)的添加可通過glVertex3f在三維空間中直接繪制.最后將已選定背景通過調(diào)用glBindTexture紋理化,并通過glTexCoord2f將背景圖片根據(jù)圖片與矩形四個角對應(yīng),進(jìn)而將圖片貼在該矩形上形成背景圖案.

      纜繩創(chuàng)建:纜繩抽象為方法dis_rope.纜繩可理解為一個端點(diǎn)固定,另一個端點(diǎn)隨船體運(yùn)動的線段.首先通過調(diào)用glBegin(GL_LINES)為函數(shù),其中調(diào)用glVertex3f函數(shù)創(chuàng)建纜繩在三維空間內(nèi)的兩個坐標(biāo),并將兩坐標(biāo)相連接形成線段纜繩模型.接下來用glColor3f改變纜繩顏色[9].

      船體創(chuàng)建:三維船體抽象為方法dis_ship.首先通過調(diào)用glmReadOBJ調(diào)用OBJ格式的三維模型,調(diào)用glmScale來設(shè)置模型在三維控件中的大小,glmFacetNormals計算模型的平滑頂點(diǎn)法向,glmDraw最并在三維坐標(biāo)中繪制船體模型,之后調(diào)用glTranslatef平移函數(shù)與glRotatef旋轉(zhuǎn)函數(shù)來確定船體的坐標(biāo)位置以及角度[10-15].

      3.2 界面交互設(shè)計

      纜繩顏色變化:系泊纜繩所受張力通過傳感器傳輸?shù)娇丶校|繩顏色將隨著所受張力值的改變改變顏色(正常綠色,預(yù)警橙色,報警紅色).纜繩顏色提醒:控件在第三方平臺中加載成功以后,可通過鼠標(biāo)雙擊觸發(fā)事件,控件可將信號傳送至第三方平臺,通知第三方平臺進(jìn)行相應(yīng)操作.該過程中,將鼠標(biāo)放在纜繩所在位置上,進(jìn)入相應(yīng)區(qū)域后,纜繩顏色會發(fā)生改變,提示使用者鼠標(biāo)處于事件觸發(fā)區(qū)域內(nèi).

      4 控件驗(yàn)證

      基于上述建立的模型和技術(shù)方法,采用VisualStudio 2010與OpenGL結(jié)合,開發(fā)了大型開敞式碼頭三維控件ship.ocx,控件運(yùn)行效果如圖4所示.三維系泊船的橫移、橫搖、縱移、縱搖、回轉(zhuǎn)、升降等6個自由度運(yùn)行幅度將受其實(shí)時監(jiān)測數(shù)據(jù)的驅(qū)動,其運(yùn)動平滑度取決于實(shí)時數(shù)據(jù)的采樣率,在監(jiān)控系統(tǒng)開發(fā)中,可通過設(shè)置合適的數(shù)據(jù)采樣周期決定.系統(tǒng)開發(fā)者可通過鼠標(biāo)對控件進(jìn)行人工交互操作.

      圖4 控件成果圖

      5 結(jié)論

      論文給出了開敞式碼頭系泊船控件的開發(fā)方法,研究了系泊船及其纜繩的動態(tài)模型和空間開發(fā)處理技術(shù).通過以VS2010平臺,基于OpenGL函數(shù)類庫開發(fā)了受數(shù)據(jù)驅(qū)動的系泊船三維運(yùn)動控件 .控件驗(yàn)證表明:三維動態(tài)控件界面簡潔、直觀 ,具有良好的實(shí)時性和逼真性,用戶可操作性強(qiáng).文中開發(fā)的控件具有可重用性,可廣泛應(yīng)用于碼頭系泊自動化系統(tǒng)構(gòu)建與監(jiān)控系統(tǒng)開發(fā)領(lǐng)域.

      [1]魏昌理.在大型開敞式碼頭建立纜繩拉力、護(hù)舷壓力監(jiān)控預(yù)警系統(tǒng)的必要性[J].水運(yùn)工程,2007,407 (9):115-118.

      [2]秦子君.大型油輪纜力約束的統(tǒng)計分析 [J].水運(yùn)工程,2012,468 (7):86-97.

      [3]劉必勁,張亦飛,孫昭晨,等.波浪作用下大型開敞式碼頭系泊船舶撞擊能量研究[J].水運(yùn)工程,2011,455 (7):71-75.

      [4]李志,張磊,梅國雄.地址勘察信息系統(tǒng)中三維模型控件的設(shè)計與實(shí)現(xiàn)[J].南京工業(yè)大學(xué)學(xué)報(自然科學(xué)版),2011,33(3):93-97.

      [5]王蘭美,趙繼成,秦華泰.OpenGL及其在VC++下的開發(fā)應(yīng)用[J].武漢大學(xué)學(xué)報(工學(xué)版),2006,39(4):62-65.

      [6]楊光,陳勇,喬園園,等.在因特網(wǎng)上顯示分子三維結(jié)構(gòu)的ActiveX控件的開發(fā)[J].計算機(jī)與應(yīng)用化學(xué),2000,17(2):135-136.

      [7]孫朝云,鄒鵬,李偉.基于OpenGL路面裂縫三維重構(gòu)技術(shù)研究[J].水運(yùn)工程,2014,34(5):73-76.

      [8]ROYAN J,GIOIA P,CAVAGNA R,et al. Network-Based Visualization of 3D landscapes and city models[J].IEEE Transactions on Computer Graphics and Applications,2007, 27(6):70-90.

      [9]MAIRE C,DATCU M. Earth observation image and DEM information aggregation for realistic 3D visualization of natural landscapes[J].IEEE Transactions on Geoscience and Remote Sensing,2005,43(11):2676-2683.

      [10]Manish Bajpai,C.Schorr,M.Maisl,Phalguni Gupta,et al. High resolution 3D image reconstruction using the algebraic for cone-beam geometry over circular and helical trajectories[J].NDT and E International,2013,60:62-69.

      [11]閆賀,吳懷宇,彭晟遠(yuǎn),等.四自由度模塊化機(jī)械臂運(yùn)動學(xué)建模[J].信息技術(shù),2011 (10):1- 4.

      [12]孫亮,馬江,阮曉鋼.基于OpenGL的六自由度機(jī)械臂三維仿真工具的設(shè)計[J].計算機(jī)測量與控制,2009,17(5):983-984.

      [13]凌云,儲林波.用Visual C++中的MFC和OpenGL建立三維圖形應(yīng)用環(huán)境[J].微型機(jī)與應(yīng)用,1998(4):60-64.

      [14]常樹龍.空空導(dǎo)彈遙測數(shù)據(jù)三維實(shí)時顯示系統(tǒng)設(shè)計與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2010(4):64-66.

      [15]劉國棟,李宏.基于OpenGL的虛擬歷史博物館漫游設(shè)計與實(shí)現(xiàn)[J].電腦與信息技術(shù),2010(1):58-61.

      Development Technology of Data-Driven Mooring Ship 3D Controls

      QIU Zhanzhi,YANG Fuan,ZHANG Chong,ZHAO Xingtian

      (Software Institute, Dalian Jiaotong University, Dalian 116028, China)

      In order to achieve three-dimensional display effect of mooring monitoring system at open sea terminal, improve efficiency of system construction, 3D controls of mooring ship and mooring cable are developed. On the basis of analysis of ships freedom motion and mooring cable tension, the motion model of mooring ship and mooring cable, the model construction methods and controls development technology are studied. The controls are developed by VS2010 development platform, the 3D model construction is besed on OpenGL function librariy and modular method, and realize that the 3D controls is conbined with the motion model, and drived by real-time monitoring data. The Terminal mooring monitoring system constructed by the controls can realistically display motion stance of mooring ship and real-time work state of mooring cable tension. The controls are of reusability, and have a broad application prospect in the field of terminal mooring monitoring.

      data-driven; mooring ship 3D controls; 3D model construction method; OpenGL function librariy; controls reusability; open sea terminal

      1673- 9590(2016)03- 0107- 05

      2015-03-30

      大連市科技計劃資助項目(2014A11GX006)

      邱占芝(1960-),女,教授,博士,主要從事網(wǎng)絡(luò)控制系統(tǒng)、計算機(jī)遠(yuǎn)程監(jiān)控系統(tǒng)的研究E- mail:wangjianchao8099@126.com.

      A

      猜你喜歡
      纜繩系泊控件
      基于CFD方法的系泊狀態(tài)FSO舵載荷計算
      高韌性海洋用三級系泊鏈鋼的研制
      山東冶金(2022年2期)2022-08-08 01:50:50
      MEG4 規(guī)范對導(dǎo)纜孔的新要求及 相應(yīng)的設(shè)計改進(jìn)
      船舶靠泊過程中系纜作業(yè)仿真
      關(guān)于.net控件數(shù)組的探討
      軟件(2018年7期)2018-08-13 09:44:42
      深水工程船舶纜繩測力裝置設(shè)計與應(yīng)用
      水文測船調(diào)速電動纜繩收放機(jī)設(shè)計與應(yīng)用
      基于懸鏈線方程的系泊系統(tǒng)分析
      系泊布置設(shè)計中幾個問題的討論
      船海工程(2013年6期)2013-03-11 18:57:28
      就這樣玩會VBA中常見的自定義控件
      電腦迷(2012年24期)2012-04-29 00:44:03
      旌德县| 兴城市| 赤壁市| 垦利县| 山阳县| 大埔县| 永城市| 都昌县| 巫山县| 东港市| 巴林左旗| 隆化县| 永吉县| 巨野县| 丽江市| 科技| 宜昌市| 西贡区| 永平县| 宣武区| 布尔津县| 利辛县| 惠东县| 连城县| 宜章县| 洛宁县| 周口市| 偃师市| 新民市| 夹江县| 延安市| 蛟河市| 石渠县| 德格县| 吴江市| 察雅县| 三亚市| 黎城县| 上林县| 额敏县| 大英县|