?

基于動力定位平臺的虛擬仿真系統

2024-04-18 03:50綦志剛
實驗室研究與探索 2024年1期
關鍵詞:推進器可視化分配

綦志剛, 楊 帆, 李 冰

(哈爾濱工程大學智能科學與工程學院,哈爾濱 150001)

0 引 言

國內許多高校在船舶動力定位的教學中缺乏相關實驗環境和平臺,學習理論知識只能通過課本,難以直觀了解動力定位平臺各個系統的結構和工作原理[1]。采用虛擬仿真技術建立模擬海洋環境及受仿真數據驅動平臺的虛擬仿真系統具有重要意義。通過在虛擬仿真系統中切換不同視角觀察系統可靠性和平臺航行的實際狀態,完成可視化的實驗虛擬仿真。

袁偉等[2]搭建了關于動力定位系統的半實物仿真平臺,通過該平臺驗證了儲油輪的控制效果,為研究船舶運動控制技術等提供了試驗平臺。李婷云等[3]使用仿真軟件和虛擬仿真技術構建了船舶動力定位系統,使觀察者可多方位觀察,為船舶建設前期提供論證。Midhin等[4]使用仿真軟件設計了無人水下航行器的仿真系統,該系統可在虛擬環境中進行模擬海流等外部干擾和優化控制器,提高水下機器人的定位性能和控制精度。

本文以動力定位平臺為核心,搭建虛擬仿真系統,模擬場景中的運動狀態,實現動力定位平臺推力優化分配和平臺運行的可視化,驗證推力分配的合理性,加強實驗教學效果。

1 虛擬仿真系統

動力定位平臺虛擬仿真系統是一個人機交互平臺,具有虛擬現實(Virtual Reality,VR)技術的沉浸式、交互性特點[5],通過強大的幾何體和材質等實時渲染技術構建逼真的三維虛擬場景,使系統可更貼近真實環境。

動力定位平臺虛擬仿真系統由虛擬仿真平臺、數據管理系統、數值仿真平臺組成,如圖1 所示。用戶使用VR設備與虛擬仿真系統中的UI交互,設置海浪參數和平臺的運動位置;通過數值仿真平臺進行仿真。數據管理系統主要實現數值仿真平臺與虛擬仿真平臺間的數據通信、讀取、轉化處理等工作。系統運行后可以可視化的觀察平臺三自由度的運行效果及推進設備旋轉情況[6]。

圖1 虛擬仿真系統構成圖

2 虛擬仿真系統

虛擬仿真系統設計主要是平臺三維場景和交互界面;數據傳輸和處理;動力定位的數學模型和推力分配算法及控制器。

2.1 虛擬仿真平臺

(1)三維場景。三維場景建模主要是建立動力定位平臺的三維模型和海洋環境。收集動力定位平臺的資料,包括平臺的外觀及尺寸、平臺甲板建筑物的樣式等。利用Solidworks、Blender 軟件依據實際參數對動力定位模型進行繪制。具體建模流程如圖2 所示[7]。

圖2 三維建模流程

動力定位平臺虛擬模型由船體、船艙、推進器、甲板標等組成。通過Solidworks對裝置內部和外部分別建模,將其導出為STL 格式;將導出的模型導入到blender,切換編輯模式、物理模式,對模型平移、旋轉、縮放操作,并進行UV 展開,為制作貼圖、材質做準備[8]。模型效果如圖3 所示。

圖3 動力定位模型

將模型UV展開,繪制簡陋的樣式及標明顏色,通過繪制紋理貼圖軟件進行詳細的基礎色、法線、環境光等貼圖的繪制,將其保存并在blender 中進行編輯[9]。對曲面進行平滑著色并進行渲染獲得完整的模型資源。UV展開及貼圖如圖4 所示。海洋環境使用虛擬引擎5(Unreal Engine 5,UE5)的水系統插件進行構建。將海洋拖入世界大綱中,在細節面板對海洋的顏色、波浪的長度、高度、浪向角等參數進行細致調整,使其更接近真實海洋環境,如圖5所示。將建立的平臺模型導入UE5 進行整合。

圖4 模型的UV展開以及貼圖

圖5 海洋環境構建圖

(2)三維場景優化。精細的平臺模型和場景可極大提高仿真系統的真實感、流暢度,更具沉浸感。針對本系統的特點,使用多細節層次技術(Levels of Detail,LOD)和虛擬幾何體系統技術(Nanite)對模型和水系統進行優化。

LOD技術可根據模型節點在顯示環境所處的位置和重要程度,來決定物體渲染的資源分配,降低非重要物體的面數和細節數,以獲得高效率的渲染計算[10]。當近距離觀察海洋時,渲染精模,呈現更高的細節程度;距離較遠觀察物體時,只渲染簡模甚至不渲染,呈現出的細節程度更低,如圖6 所示。

圖6 海洋環境優化

采用全新的內部網格體格式和渲染技術來渲染像素級別的細節以及海量對象,它僅處理用戶能夠感受到的細節。根據攝像機視圖以不同LOD,隨時切換群集,在不破壞同一對象相鄰群集的情況下完美連接。通過Nanite使模型更細節化和實時渲染更高效,如圖7 所示。

圖7 平臺模型優化

(3)交互設計。交互設計[11]包括用戶與系統UI的交互,用戶與系統中環境和平臺的交互。交互邏輯通過UE5 的藍圖進行構建,主要功能為漫游、模型結構可視化以及數據可視化等。

UI具有選擇實驗類型、海浪建模和參數設置等功能。參數設置包括控制策略、波高、風速和風浪譜等,同時可實時顯示仿真數據。界面設計應用了事件分發器、直接通信等藍圖通信功能,實現數據更新和相應事件的觸發,如圖8(a)所示。UI 交互主要通過射線交互,VR左、右手柄控制器生成紅色射線,UI 接受硬件輸入,同時開啟玩家控制器輸入。UI檢測到射線與其發生碰撞,可產生點擊仿真按鈕、選擇參數等操作。如圖8(b)所示。

圖8 UI交互設計

用戶與環境、平臺的交互利用VR設備,在VR模式下進行設計。通過UE 攝像機組件模擬VR 設備中的HTC Vive Pro2 頭顯,攝像機的旋轉等同于人體帶上VR頭顯的運動,攝像機可將場景中的畫面實時傳輸到VR頭顯,使其保持運動同步。2 個運動控制器組件添加手部骨骼模型模擬VR設備的左、右手柄,捕捉手部動作并同步,如圖9(a)所示。粒子系統組件用于模擬移動軌跡,實現瞬移功能,如圖9(b)所示。為使模型結構和海洋環境可視化,采用多視角轉換,在不同視角上放置攝像機,如正視、左視、俯視、水底和甲板等視角,進行實時監測,如圖9(c)所示。通過相應按鍵轉換到相應的視角畫面進行觀察,這樣更易觀察到航行時的平臺效果。展示效果如圖9(d)所示。

圖9 用戶與環境交互設計

2.2 數值仿真平臺設計

本文考慮動力定位平臺在水平面上的三自由度橫蕩、縱蕩和艏搖運動[12]。為降低能量損耗和推進器磨損,僅考慮低頻運動,平臺模型可以簡化為:

式中:η·=[x,y,ψ]T為北東坐標系下的位置和歐拉角;v =[u,v,r]T為平臺坐標系下的速度;R(ψ)為轉換矩陣;M為慣性矩陣;D 為阻尼矩陣;τ為環境干擾力和推進器推力的合力。

動力定位平臺工作時會受到海風、海浪和海流的干擾。其中二階波浪干擾會使運動平臺偏離所在位置,在進行推力分配時需要考慮這些干擾影響[13]。本文僅考慮風載荷與浪載荷的干擾。

動力定位平臺的推力分配需綜合考慮推進器的推力、方位角、推進器功率與推力間的關系等因素,確定等式約束、不等式約束及目標函數從而獲得最優解,使其滿足到達指定位置所需要的推力和角度[14]。對于平臺的6 個推進器的推力分配采用序列二次規劃算法進行求解。推力分配算法具體推導及約束條件建立過程詳見文獻[15]。

2.3 數據管理系統設計

將數值平臺仿真出的數據保存為csv 格式文件。在UE5 工程中創建C ++接口,設置文件讀取路徑及數據執行時長,通過接口讀取csv文件中的數據,并將其保存到UE5 的資產中。在關卡藍圖中設置該資產關聯,同時建立函數實現從資產中讀取數據功能,如圖10 所示。將讀取的數據存儲為變量后,經過線性插值函數逆運算轉變為0 ~1 的浮點數,再經線性插值函數映射到虛擬場景中的具體坐標。將坐標的數據傳輸給動力定位平臺,驅動平臺根據采樣的數據進行運動。

圖10 讀取函數代碼圖

3 仿真與分析

系統的研究對象是一個小型的動力定位平臺,平臺寬0.5 m。仿真過程中的環境干擾參數設置為:風速為2.7 m/s,風向角為60°,波浪的有義波高為0.3 m,浪向角為60°??刂破鞑捎脗鹘y的PID 控制,推力分配優化算法采用序列二次規劃算法。

圖11 為數值平臺仿真運動軌跡,可發現通過PID控制順利克服了環境干擾,從初始點成功到達給定目標位置。圖12 為虛擬平臺仿真運動軌跡,當虛擬平臺運行時可通過UI切換不同視角觀測到平臺運動狀態,且運動軌跡與數值平臺運動軌跡基本一致。

圖11 數值平臺運動軌跡

圖12 虛擬平臺運動軌跡

由圖13 可知,每個推進器的推力曲線,1、3、4 和6號推進器的分配結果較為相近。各推進器推力均在同一個數量級,且不超過最大推力。在平臺到達給定目標位置時,推力都趨向于穩定,說明滿足了推力分配模型的約束條件。

圖13 推進器推力曲線

4 結 語

本文設計了動力定位平臺虛擬仿真系統。實現了系統的交互、漫游及以第一人稱視角沉浸式觀察平臺運行情況。通過數值平臺對動力定位平臺低頻運動及環境載荷進行了建模及仿真。

在動力定位平臺虛擬仿真系統中可觀察平臺運行過程,可視化地驗證設計的控制方法、推力分配優化方法的合理性和正確性;將其引入實驗教學后可激發學生學習的積極性并豐富了實驗教學內容。在后續研究中,將對系統進行進一步的優化設計,采用交互選擇模式來可視化驗證其他控制算法和推力分配策略。

猜你喜歡
推進器可視化分配
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運行動態分析與可視化展示
基于CFD扇翼推進器敞水性能預報分析
基于CGAL和OpenGL的海底地形三維可視化
應答器THR和TFFR分配及SIL等級探討
“融評”:黨媒評論的可視化創新
遺產的分配
一種分配十分不均的財富
績效考核分配的實踐與思考
發揮考核“指揮棒”“推進器”作用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合