韓宇,冀萌凡,李智剛,李彬
(1.海裝沈陽局駐沈陽地區第四軍事代表室,遼寧沈陽,110016;2.中國科學院沈陽自動化研究所,遼寧沈陽,110016;3.中國科學院機器人與智能制造創新研究院,遼寧沈陽,110169)
隨著我國在對海洋空間展開了系統性、持續性和深入性的研究及攻堅探索,能夠在復雜海洋環境中進行探索作業的高可靠性水下機器人成為人們開展各種水下研究及安全搜救任務的重要工具[1-3]。按照無人潛水器與水面支持設備(母船或平臺)間聯系方式的不同,水下機器人可以分為有纜水下機器人,即遙控水下機器人(remotely operated vehicle,ROV),和無纜水下機器人,即自治水下機器人(autonomous underwater vehicle,AUV),有纜水下機器人通過線纜和母船之間進行通訊和運動控制,無纜水下機器人自帶能源系統,通過水聲通信系統與外界進行信息交流,并依靠自主管理及自動化運維能力來進行運動控制。
ROV 因其造價經濟實用、水下運動行進靈活、能適應深海強壓腐蝕惡劣環境、低可見度條件高效作業、可靠性高等優點,得到了迅速的研究與發展。隨著其功能逐漸豐富及安全可靠性提升,ROV 越來越被廣泛地應用于海洋資源勘探、水下作業、海底搜索、失事載具數據記錄儀打撈等領域[4]。然而對ROV 進行的每一次海試,都需要投入大量人力和物力,而且ROV 控制系統復雜,操作過程繁瑣,非專業人員在使用前需進行系統的培訓。即使這樣在實際的培訓中也存在著較大的問題,比如接受培訓的ROV 操縱人員由于操作失誤極易造成ROV 損壞、線纜受損,甚至水下機器人本體與控制系統失聯等一系列問題[5]。
為了解決上述問題,本文設計一種ROV 模擬訓練系統。該系統模擬真實ROV 控制系統,可模擬完成真實ROV 訓練過程,減少水下作業發生危險的可能性并大幅降低訓練成本。
本文設計的模擬訓練系統面向實際需求,基于ROV 控制間,實現操作與訓練一體化,能夠開展ROV 常規操作訓練,并構建典型訓練場景,滿足ROV 接裝后的日常培訓要求,有效促進ROV 操作人員水下作業能力快速形成。模擬訓練系統的主要特點:
(1)模擬訓練系統集成在實際ROV 控制間中,使用機械手主手等在內的ROV 操控臺以及場景漫游功能,使受訓人員感覺仿佛置身于真實的潛器操縱和海底作業環境當中。
(2)模擬訓練系統使用真實ROV 控制軟件完成虛擬ROV 控制,受訓人員通過模擬訓練可以快速熟悉ROV 控制軟件的使用流程,降低實操培訓成本和風險。
(3)運用虛擬現實(VR)技術和計算機建模技術直觀地顯示出各種環境條件下潛器的運動過程,生成潛器遙控操縱、觀察、檢測、作業等場景,提供逼真的水下作業景象和潛器狀態。
模擬訓練系統包含新手培訓、水面作業方案制定、方案演練與改進等三個方面的模擬訓練能力,隨時都可開展模擬訓練與方案演練。針對初學者開展的模擬訓練,完全基于模擬訓練環境,有助于操作人員快速上手。針對實際下水作業,可借助模擬訓練器的水下場景,制定作業方案,然后有針對性地開展演練,并且通過實際演練不斷改善作業方案,如此可減少水下作業發生危險,提升作業效率與安全性。
系統的功能描述如表1 所示。
ROV 潛器運動控制系統往往采用雙坐標系來對ROV 進行運動描述:固定坐標系用于描述其運動姿態變化,而運動坐標系則主要負責體現其受力情況。固定坐標系選取海平面上某一點作為坐標系基點O,OX 軸方向垂直指向地球質心,OZ 軸以地理南北作為其延展方向,OY 軸以地理東西作為其延展方向。三個坐標軸互相垂直,使O-XYZ 構成右手坐標系。運動坐標系o-xyz 作為分析水下機器人受力情況的一個參考系,其原點o 通常選擇為其自身重心處,橫向坐標軸x 軸與ROV 的艏向保持一致;縱向坐標軸y 軸垂直于x 軸,在ROV 水平面上選取并以本體的右舷作為正方向;坐標軸z 軸利用右手定則確定以向下為正方向。

表2 水下機器人運動參數
角速度變換矩陣J2(η2) 表示如下式:
結合上述公式,通過轉動慣量定理可得到水下機器人的多自由度空間運動方程如下式:
令v=[u,v,w,p,q,r]T,τRB=[X,Y,Z,K,M,N]T,進一步可將運動學方程整理如下形式:
其中MRB表示水下機器人的慣量矩陣,如下式所示:
CRB(v)表示水下機器人的科氏力和向心力矩陣,如下式所示。
模擬訓練系統硬件組成主要由兩臺計算機與數據切換模塊組成,計算機分別是數據解算計算機和視景仿真計算機。數據切換模塊則決定主控計算機、副控計算機、兩個七功能機械手與成像聲納的水面端是接入真實的潛器系統還是模擬訓練系統。
模擬訓練系統的軟件由數據解算軟件和三維視景軟件兩個部分組成,數據解算軟件運行在數據解算計算機上,三維視景軟件運行在視景仿真計算機上。其中,數據解算軟件采用Visual C++6.0 進行開發,三維視景軟件則采用Unity3D 三維引擎以及C#腳本語言進行開發。兩者之間通過UDP 通信進行數據交換。
運行在數據解算計算機上的數據解算軟件完成的主要功能如下:
(1)潛水器動力學解算,重點考慮推力、浮力、阻力、負載、系繩張力、重量、平衡、水流和碰撞等因素;
(2)潛水器過程數據解算;
(3)機械手主手控制數據解算;
(4)UDP 網絡通信;
(5)將所有收集到的數據,包含輸入輸出、故障、參數、操作、日志等信息,存儲在硬盤上。
運行在視景仿真計算機上的三維視景軟件需完成的主要功能如下:
(1)潛水器本體、機械手及搭載設備的三維模型模擬,并重點模擬潛器的深度、航向、俯仰、縱傾、高度、打底速度、相對位置以及核輻射信息等;
(2)虛擬三維環境數據反饋;
(3)虛擬成像聲納模擬;
(4)虛擬攝像機的視頻模擬;
(5)推進器特效、燈光特效等視景特效模擬;
(6)虛擬收放系統和鎧纜模擬;
(7)典型作業場景和典型作業目標模擬,模擬器能夠模擬水下地形及特征,支持動態照明、景深效果以及潮汐效果,虛擬環境照明隨著深度的增加而減小,并支持插入導管架、管道、油氣等設施,建立典型作業場景,支持多個深度段的不同水流狀況,即每個水流水平通過深度包絡(即50米至100 米深度)定義,可以有自己的水流速度和水流方向;
(8)虛擬故障模擬、訓練記錄回放以及訓練任務配置。
當控制軟件切換至“實際運行”后,控制臺接收來自水下的傳感器信息、視頻信息與成像聲納信息,完成水下潛器的駕駛、機械手的操作與作業工具的控制等。當切換至“模擬訓練”模式后(此時水下部分不得上電),主控計算機發送控制(操作)數據到數據解算計算機,由其進行潛器動力學計算,并將計算結果分發給主控計算機、副控計算機以及視景仿真計算機;視景仿真計算機則負責產生多路攝像機視頻、1 路全景視頻以及成像、高度信息,并將視頻發送給視頻綜合服務平臺、成像信息發送給聲納計算機、高度信息發送給兩個控制計算機,使操作模擬訓練系統和操作真實潛器的響應和體驗一致。
與水下機器人潛器相關的動力學解算需要分析包括洋流推力、潛器浮力、水流阻力等外界力的受力作用情況,下面以對水下機器人在水試環境用常見的一些基本作用力如推力、浮力、阻力進行公式化測算表示。
4.1.1 推力測算
4.1.2 浮力測算
令τB為水下機器人在海洋環境中受到的浮力。浮力所產生的力以及力矩在運動坐標系中的描述如下,其中B 表示浮力,[xbybzb]T表示其浮體質心在運動坐標系中的空間位置參數。
4.1.3 阻力測算
模擬訓練系統各個功能模塊的邏輯關系如圖1 所示。模擬訓練系統中的控制臺通過工業以太網與工控機建立連接并進行通信,水下機器人通過傳感器實時采集環境數據并通過傳輸信道反饋給模擬訓練系統的數據管理單元。模擬訓練系統采用Unity3D 引擎模擬水下物理場景并對水下機器人的外部受力進行仿真分析。通過程序設計實現水下物理環境中光照特效渲染、粒子特效、聲音特效、推進器特效和水流阻力的仿真。模擬訓練系統將經過物理引擎渲染后的圖形數據通過數據輸出模塊與顯控計算機之間建立的UDP 通信鏈路進行數據上傳。從而幫助使用者能夠很好地觀察水下機器人的運動情況。并將ROV 的運動行為及時回報給模擬訓練系統以對配置參數進行動態修正。

圖1 模擬訓練系統邏輯框架圖
模擬訓練系統支持訓練人員通過操作控制臺上的控制桿等外部輸入設備將下發的控制指令傳輸到機器人控制臺相連的工控主機上,工控主機將經過解算后生成的控制信號通過導引線纜傳遞給水下機器人本體的運動控制單元。在整個作業期間,模擬訓練系統會實時采集水下機器人的潛水深度、速度和運動姿態等信息,用這些信息更新訓練系統中的物理引擎渲染動畫幀,實時展現水下機器人的作業過程。操作員可以通過比對在Unity3D 仿真渲染的動畫場景與真實水試場景中水下機器人的運動差異來修正模擬訓練系統的仿真環境物理參數,并對各項性能指標進行優化,確保訓練系統的可操作性和趨真性。
本系統中對水下機器人本體采用PID 增量式算法進行運動控制。一般控制系統通過改變PID 控制器不同參數值來實現對過程的穩定控制。其中e(t)、y(t)分別表示系統PID 控制器的輸入量和輸出量,e(t)取值通過設定值r(t)和輸出量y(t)取差值獲得,定義為系統偏差,表示如下:
根據PID 控制系統原理可知,將系統偏差信號的比例、微分、積分的線性組合作為系統的輸出控制量,其算法公式表示如下:
傳遞函數形式表示如下:
通過采用PID 增量式算法設計水下機器人控制器,該算法在計算時不需要累加偏差值,不會因為系統發生故障導致控制量急劇變化進而導致系統失控。通過在恒定采樣周期內進行取值采樣,將確定的參數下輸入系統得到的控制增量。因而采用PID 增量式算法能夠更好地調節水下機器人的運動控制策略。
(1)訓練準備階段
訓練準備階段首選選擇訓練任務。在選擇任務后,可查看本次訓練的訓練目標以及訓練流程,并進行母船配置、機械手配置、作業工具配置、作業位置配置等。其中母船配置包括母船位置及母船型號;機械手配置包括左手型號、左手手爪型號、右手型號、右手手爪型號;作業工具配置包括作業工具種類和安裝位置;作業位置配置可以選擇不同的作業點進行目標物體放置,強化訓練效果。
(2)正式訓練階段
當開始訓練任務后,教練員可以通過教練員系統進行當前訓練的環境參數設置,包括當前作業位置信息顯示,海面海流升沉設置,燈光特效配置,海水顏色配置,沉沙特效配置等。教練員可以通過教練員系統進行綜合視景顯示的配置,包括虛擬攝像機的分屏方案配置、分辨率配置以及分屏切換。教練員在訓練過程中可以對受訓人員設置虛擬故障,包括虛擬漏水故障、虛擬絕緣故障、虛擬能源故障以及虛擬補償器故障等,受訓人員在發現故障之后,對相應的故障進行檢查處理,當故障排查完畢后,教練員完成本次故障模擬。
(3)回放總結階段
在訓練結束后,模擬訓練系統可以重新打開記錄的訓練過程,教練員可以根據模擬訓練的回放對受訓人員進行操作分析以及打分總結
(4)任務場景測試
設置黑匣子訓練任務對模擬訓練系統進行測試,具體流程如下。
①駕駛ROV 找到飛機失事地點。
②在飛機殘骸附近找到黑匣子。
③使用機械手抓取黑匣子。
④ROV 攜帶黑匣子回收到水面,完成訓練。
(5)可擴展功能
可擴展功能允許用戶進行相關功能的擴展,本系統實現的可擴展功能如下:
①模擬器允許用戶手動導入地形/水深測量文件;
②模擬器允許用戶自由拖放目標或結構物布局;
③模擬器允許用戶可根據實際應用需求自定義任務目標或結構物;
④模擬訓練系統能夠根據用戶的需求,進行定制更新。
本文設計的模擬訓練系統面向實際需求,基于ROV 控制間,實現操作與訓練一體化,能夠開展ROV 常規操作訓練,并構建典型訓練場景,滿足ROV 接裝后的日常培訓要求,有效促進ROV 操作人員水下作業能力快速形成,可減少水下作業發生危險的可能性并大幅降低訓練成本。控制軟件具備后期功能擴展的能力,如用戶方有新的功能需求或者添加新設備及傳感器,可以根據需求進行功能擴展。同時,可以通過修改代碼或添加功能模塊進一步提高控制軟件的可靠性和穩定性。