






摘" 要:在研究和設計船舶航行姿態控制系統時,經常應用計算機仿真,并結合其他專用物理效應設備對真實或假想的系統進行實驗。該文結合山東省船舶控制工程與智能系統工程技術研究中心“船舶運動控制系統”項目,主要研究船舶橫搖/艏搖運動三維實體虛擬現實建模技術。首先介紹船舶橫搖/艏搖控制系統的數學模型,然后介紹船舶模型三維建模的實現過程,最后介紹該視景仿真系統的構成、MVC設計框圖、UI界面層次結構及邏輯實現和VR虛擬現實系統技術路線等。程序設計語言采用C++編寫,完成整體框架和控制通信指令部分。
關鍵詞:船舶橫搖/艏搖;航行姿態;數學模型;三維建模;視景仿真
中圖分類號:TP391.9" " " 文獻標志碼:A" " " " " 文章編號:2095-2945(2023)13-0027-04
Abstract: In the research and design of ship navigation attitude control system, computer simulation is often used, and other special physical effect equipment is used to test the real or imaginary system. Combined with the project \"ship Motion Control system\" of Shandong Ship Control Engineering and Intelligent system Engineering Technology Research Center, this paper mainly studies the 3D virtual reality modeling technology of ship rolling/yaw motion. Firstly, the mathematical model of ship roll/yaw control system is introduced, and then the realization process of 3D modeling of ship model is introduced. Finally, the composition of the visual simulation system, MVC design block diagram, UI interface hierarchical structure and logic implementation, VR virtual reality system technical route are introduced. The programming language is written by C++ to complete the overall framework and control communication instructions.
Keywords: ship rolling/yaw; navigation attitude; mathematical model; 3D modeling; visual simulation
船舶在航行過程中,主要受到風、浪和流等干擾因素的影響,從而產生各種搖蕩運動,而無論何種船舶都必須進行艏搖(航向)和橫搖控制。針對不同船舶模型的參數及水動力系數,所建立的運動仿真模型就會不同,仿真得到的橫蕩位移、艏搖角和橫搖角也不相同。本文主要研究船舶橫搖/艏搖運動三維實體虛擬現實建模技術。
1" 船舶運動仿真模型
1.1" 船舶空間運動平移方程
首先建立船舶運動的數學模型,有2種坐標系統:固定于地球的靜坐標系O1x1y1和固定于船舶的動坐標系Oxy。對于船舶靜坐標系,由動量定理推導船舶空間運動的3個軸向位移方程,船舶空間運動的平移方程向量形式為
,(1)
式中:H為船體的動量,m為船舶的質量,U為船舶重心的速度。將H、U向運動坐標系投影就得到運動坐標系下的關系式。假設船舶重心在運動坐標系下的坐標位置向量RG=(xG yG zG)T,其由運動坐標系的原點指向重心。
1.2" 船舶空間運動繞坐標軸轉動方程
由動量矩定理對船舶空間運動的3個繞坐標軸轉動方程進行推導,得到船舶空間運動的旋轉方程向量形式為
(2)
式中:J為船舶對原點不在重心的坐標系的慣量矩陣。
1.3" 船舶橫搖、艏搖和橫蕩三自由度運動非線性模型
由于船的重心和質量分布受裝載、水艙注水等情況的影響,為了方便研究,假設有如下理想情況:運動坐標系O-xyz的原點O在船的重心,Ox軸、Oy軸和Oz軸的選取如圖1所示,而且Ox軸、Oy軸和Oz軸是船體的3個慣性主軸[1]。
對于船舶橫蕩、橫搖和艏搖三自由度而言,船體所受外力(力矩)可表示為
Y=YI+YH+YR+YD," " " " " " " "(3)
N=NI+NH+NR+ND," " " " " " " (4)
K=KI+KH+KR+KD," " " " " " " "(5)
式中:Y代表船體所受的橫蕩外力矩;N代表船體所受的艏搖外力矩;K代表船體所受的橫搖外力矩;I、H、R和D分別代表流體慣性、流體粘性、舵及干擾。
2" 系統仿真模型數據分析
本文所用船舶的數據:船長L為142 m,船寬B為19.028 m,船舶噸位m為8 438.92 t,吃水d為6.156 m,方形系數Cb為0.507 3,海水密度?籽為1 025 kg/m3。
3" 船舶實體建模
通過獲取的船型數據、布置圖和實物照片等原始資料首先利用HD-SHM船體建造系統進行型線光順,得到網格加密后的光順的船體外形,后導入Solidworks中放樣船殼。之后分別建出船內骨架、主甲板及船舶上層建筑。
3.1" 基于HD-SHM船體型線光順
選取項目為無平行中體的某型艦艇。根據船舶三視圖修正原始型線,部分重疊的方式整理出前后半艏型線,分別導入HD-SHM系統中。定義船舶水線、縱剖線和空間線等并于球鼻艏位置加密站線。后通過“選擇型線樣條”命令拾取原始型線獲得準確型值數據。型線光順過程中,為方便把控線型光順走向,通過“視圖-視口”將Autocad界面設為“三個-左”。后期重點將球鼻艏部位型線加密。型線光順結束后,生成系統BLINE、FRAME及WLINE輸出文件。通過“HD-SHM實用命令-立體型線圖”即生成光順后的船體立體型線[2]。
3.2" 船體外殼放樣
通過Solidworks打開立體型線圖的DWG文件,打開方法選擇 “輸入到新零件為3D曲線或模型”,輸入數據單位選擇“毫米”,輸入所有圖層。得到光順后的船體三維線框模型,使用建模中“放樣曲面”命令,在“輪廓”窗口中依次點擊相鄰曲線,分批生成外形曲面。船體外殼左右對稱,只需導入左舷部分[3]。由HD-SHM系統光順得到的船體型線數量充足,經放樣生成的船體外形精確度較高。
3.3" 船體結構及設備建模
船體結構包括船體骨架及上層建筑部分,設備模型包括雷達、桅桿、減搖鰭、襟翼舵、螺旋槳和控制油缸。模型根據船舶實際尺寸建立。為減少數據量,船體內部骨架模型詳細程度滿足要求即可。根據實際船舶的涂裝顏色,為增強模型真實度,外形建立后使用“外觀、布景和貼圖”功能加入相應材質及紋理圖,可獲得真實視覺效果。每部分分別建模,后期裝配成整體。如圖2—5所示。
4" 視景仿真系統設計與實現
4.1" 視景仿真系統構成
船舶運動控制視景仿真系統對于可視化仿真、交互性、實時性和穩定性等方面都有著較高的要求,該視景仿真系統主要分為顯示呈現和參數調整2大部分,包括海洋建模、船舶建模、控制仿真、實物聯動、運動姿態、立體顯示和波形顯示等功能。系統構成圖如圖6所示。
4.2" 視景仿真系統功能設計
通過進行參數設置和人機界面交互,可以實現船體、鰭和舵等不同部位的自由視角漫游或者鎖定觀察等操作,也可以通過直觀地觀察橫搖角、艏搖角、舵角、翼舵角、鰭角和翼鰭角的波形來實現船舶運動姿態的控制。系統功能設計圖如圖7所示。
4.3" 船舶航行與姿態控制虛擬現實系統
VR虛擬現實系統使用HTC Vive頭戴式設備作為硬件平臺,將其與高性能計算機相連接,從而在計算機上生成可交互的三維環境,通過VR頭盔完成交互體驗[4]。
使用AI、PS等軟件完成2D美術工作,并通過3ds Max、Maya等軟件搭建完整的3D空間環境[5]。后將模型導入UE4引擎中,使用C++編程語言,對于船舶在不同海況下的航行姿態進行模擬。UE4虛幻引擎編輯主界面如圖8所示。
UE4虛幻引擎是實現虛擬現實功能的核心軟件,用UE4虛幻引擎進行船舶運動的模擬、船體及內部結構材質的調節、海浪特效的渲染、虛擬現實的搭建和整個場景的實時渲染。UE4在C++編譯開始前,使用工具UnrealHeaderTool,對C++代碼進行預處理,收集類型和成員等信息,并自動生成相關序列化代碼。然后再調用真正的C++編譯器,將自動生成的代碼與原始代碼一并進行編譯,生成最終的可執行文件,這個過程類似于Qt的qmake預處理機制[6]。
具體的步驟如下:
1)在3ds Max中建立船舶模型和做模型的UV展開。
2)用AI和PS創造并組合最基本的模型貼圖、圖片和文本部件。
3)在UE4虛幻引擎內用可視化編程方法調節模型的材質和環境光照。
4)在UE4虛幻引擎內做出海洋場景模擬。
5)在UE4虛幻引擎內用Blueprint系統和關卡系統構建船舶各部件和整體的運動姿態。
6)在UE4虛幻引擎內根據邏輯流程圖(圖9)生成虛擬現實效果。
5" 結束語
本論文主要研究船舶運動控制視景仿真技術。利用Solidworks、3ds Max和HD-SHM建模,使用Adobe公司的AI軟件和PS軟件進行二維貼圖的繪制和處理,使用C++編程語言在Unreal Engine 4(UE4)環境下實現系統功能。視景仿真系統可以直觀地顯示出船體、鰭、舵和槳的運動姿態,以及船舶橫搖角、艏搖角、舵角、翼舵角、鰭角和翼鰭角等數據曲線及統計值。目的在于配合物理系統實現整個船舶半物理系統的仿真實驗,可以為船舶運動控制等相關專業研究人員提供實驗環境,同時能夠開設船舶運動仿真與控制裝置特性分析等仿真和實驗。
參考文獻:
[1] 劉勝,韓研.船舶減搖鰭/水艙聯合控制技術研究[J].聲學與電子工程,2018(1):55-60.
[2] 陳芬.虛擬現實場景建模技術初探[J].電腦與信息技術,2018,26(2):13-16.
[3] 孫健捷.基于三維建模的環境空間設計系統研究[J].現代電子技術,2021(5):58-62.
[4] 張著,張天馳,陳懷友.虛擬現實技術與應用[M].北京:清華大學出版社,2011.
[5] 趙景波,朱敬旭輝,邱騰飛,等.基于SSA-BP神經網絡的網絡控制系統延時預測[J].計算機仿真,2022(3):263-267.
[6] 張彥雯,胡凱,王鵬盛.三維重建算法研究綜述[J].南京信息工程大學學報,2020,12(5):591-602.