陳柱,徐國華,王冠學,劉炎,翟云峰,鄭煜
華中科技大學 船舶與海洋工程學院,湖北 武漢 430074
水下機器人是海洋資源勘探和開發(fā)的重要工具之一,其中自主式水下機器人(AUV)已被廣泛運用于海洋探測、開發(fā)、搜救等領域。然而,水下作業(yè)環(huán)境復雜多變,AUV的控制難度大,因此AUV的安全航行和應急回收成為亟待解決的難題。關于傳統(tǒng)的AUV安全設計[1],向先波等[2]基于PC/104工控機硬件平臺建立了智能自救系統(tǒng),但無法在AUV控制系統(tǒng)出現(xiàn)失電等嚴重故障時進行應急自救。Li等[3]設計了以系統(tǒng)電源檢測為核心的安全自救系統(tǒng),并配置了應急氣囊,但無法針對中央控制器故障采取應急措施。
本文擬基于一艘高速AUV研制相應的主動應急自救系統(tǒng),采用硬件冗余、機械冗余、通信信道冗余等多種冗余方式提高應急自救系統(tǒng)的可靠性,以彌補傳統(tǒng)應急手段的不足;將對不同工況下可能出現(xiàn)的多種故障進行優(yōu)先級自動整定,以保證應急系統(tǒng)采取更合理的響應措施;提出合理的智能應急策略,包括每條決策的起始動作、中間動作和最終動作,并將應急決策存儲于專家決策規(guī)則庫中,以便在試驗過程中進行在線修改和對比分析。同時,在應急操舵上浮操縱過程中,將采用離散操舵控制方法實現(xiàn)AUV的上浮和縱傾角雙重控制,以降低應急工況對AUV的精度控制要求,由此保證AUV的安全航行和快速應急自救回收。
應急自救系統(tǒng)由應急備用電源、應急計算機、驅動信號開關、執(zhí)行機構和執(zhí)行對象組成,如圖1所示。其中,應急執(zhí)行機構分為艏部充氣氣囊裝置和應急纜釋放裝置,均安裝于艏部透水艙中,如圖2所示。
應急自救系統(tǒng)的功能包括:實時采集AUV全機數(shù)據(jù)并進行數(shù)據(jù)融合;實時檢測AUV機載設備工作狀態(tài)、通信狀態(tài)、艙室環(huán)境狀態(tài)、軸系環(huán)境狀態(tài)及位姿狀態(tài);對檢測故障進行優(yōu)先級整定;依據(jù)故障優(yōu)先級輸出應急專家決策;視情執(zhí)行應急操舵上浮、艏部氣囊充氣和釋放應急纜這3種應急指令,完成應急回收。
圖3所示為應急自救系統(tǒng)的功能流程圖。
AUV航行是一個典型的多階段任務系統(tǒng)[4]。在正常航行工況下,水下調度的核心為水下主控單元,此時應急單元僅用于獲取全機信息、故障檢測、應急決策、通過水聲信道反饋數(shù)據(jù)至水面、監(jiān)聽并接收水上干預指令。在應急航行工況下,水下主控單元停止工作,水下調度的核心改為應急單元,用于執(zhí)行應急決策動作。
在正常航行工況下,應急系統(tǒng)將針對獲取的AUV全機原始傳感器數(shù)據(jù)進行故障檢測和故障優(yōu)先級整定,一旦檢測出需應急處理的高優(yōu)先級故障,則仲裁切換模塊立即將AUV作業(yè)工況切換至應急工況,同時根據(jù)故障優(yōu)先級進行應急決策,輸出應急結論并執(zhí)行應急處理。應急自救系統(tǒng)的處理機制如圖4所示。
為提高應急系統(tǒng)的可靠性,應在如下5個方面進行冗余設計:
1)供電冗余。
應急系統(tǒng)由AUV主電源和獨立的應急備用電源進行冗余供電。當主電源失電時由應急備用電源進行供電,以保證應急執(zhí)行機構正常動作。
2)應急執(zhí)行機構的驅動信號冗余。
應急執(zhí)行機構采用電信號和壓力開關信號冗余驅動。當電信號失效時,若外界水壓觸發(fā)壓力開關輸出動作信號,即可驅動執(zhí)行機構。
3)應急纜釋放裝置的執(zhí)行機構冗余。
應急纜釋放裝置采用電磁鐵驅動和機械式水壓缸冗余驅動。當電信號驅動裝置動作無效時,若外界水壓觸發(fā)水壓缸動作,即可執(zhí)行應急纜釋放動作。
4)應急通信信道冗余。
應急計算機與水下主控單元計算機采用以太網(wǎng)和串口雙信道通信,以太網(wǎng)信道為主用,串口信道為備用。當主信道故障時,可自動切換至備用信道。
5)應急數(shù)據(jù)源冗余。
AUV的深度和高度數(shù)據(jù)是應急系統(tǒng)的決策輸入,應急單元可以從導航單元、深度計和高度計獲取AUV的深度和高度數(shù)據(jù),由此實現(xiàn)應急信息數(shù)據(jù)源的冗余。
AUV搭載水下主控單元,在正常工況下是水下定時周期調度的核心;搭載導航單元,采用組合導航算法采集并輸出AUV運動過程中的經緯度、速度等信息;搭載操舵控制單元,用于控制舵機并采集艙室環(huán)境信息和軸系信息;搭載動力與電力系統(tǒng)控制單元,用于控制推進器轉速并反饋推進系統(tǒng)和電力系統(tǒng)的信息;搭載數(shù)據(jù)存儲單元,用于存儲AUV的水下運動數(shù)據(jù);搭載應急單元,作為應急自救系統(tǒng)的核心。為實現(xiàn)硬件冗余[5],所有參與判斷處理的器件均配置2套。
正常工況下,應急單元從水下主控單元獲取AUV全機信息。應急工況下,應急單元可通過與導航單元建立串口信道,以獲取AUV位姿、速度等信息;與操舵控制單元建立串口信道,執(zhí)行應急操舵動作和舵機安全保護動作;與動力系統(tǒng)控制單元建立CAN總線通信信道,執(zhí)行應急控制推進器動作和電力系統(tǒng)控制動作;與數(shù)據(jù)存儲單元建立串口信道,以存儲應急工況下的全機數(shù)據(jù)。
應急單元獲取的信息包括:
1)電力系統(tǒng)信息,包括配電系統(tǒng)狀態(tài)、低電量報警狀態(tài)、鋰電池系統(tǒng)狀態(tài)、600 V失電狀態(tài)、6個供電回路開關狀態(tài)、6個回路熔斷器狀態(tài)及變頻器運行狀態(tài)。
2)動力系統(tǒng)信息,包括推進系統(tǒng)狀態(tài)、電機實時轉速、電機實時功率及電機溫度。
3)舵機系統(tǒng)信息,包括4個舵機(圍殼舵、方向舵、左艉舵和右艉舵)的通信狀態(tài)、卡舵狀態(tài)、舵機溫度信息及舵機電源信息。
5)導航傳感器工作狀態(tài)信息,包括GPS工作狀態(tài)、DVL工作狀態(tài)、深度計工作狀態(tài)、高度計工作狀態(tài)及避碰聲吶工作狀態(tài)。
6)艙室環(huán)境信息,包括艙室煙霧信息、艙室溫度信息、艙室濕度信息及艙室漏水信息。
7)軸系信息,包括軸系溫度、軸系轉速、軸系扭矩及推力軸承壓力信息。
8)AUV水下控制單元的通信狀態(tài)信息,包括以太網(wǎng)通信狀態(tài)、串口通信狀態(tài)及CAN總線通信狀態(tài)。
9)AUV位姿信息,包括縱傾角值、距水面深度值、離底高度值及避碰距離。
10)應急處理的上浮效果信息。
數(shù)據(jù)融合,即利用計算機對各種信息源進行處理、控制和決策的一體化過程[6],主要包括:
1)應急單元和水下主控單元采用以太網(wǎng)信道通信時,具備失聯(lián)后重連的功能。
2)應急單元對部分數(shù)據(jù)源的選擇具備自主判斷能力。以獲取深度信息為例,將優(yōu)先獲取導航單元信息,其次為深度計信息。
3)應急單元掛接于CAN總線上,可以根據(jù)CAN總線的收發(fā)心跳報文來監(jiān)測其他總線上的通信單元狀態(tài)。
4)應急單元通信時具備一定的容錯能力,允許信號恢復。
部分數(shù)據(jù)融合方式如圖5所示。
故障診斷的方法有很多,Sun等[7]提出了一種高斯粒子濾波方法用于對船舶推進器進行故障診斷,F(xiàn)rank[8]將故障診斷方法分為了基于模型分析、基于信號處理和基于知識這3類。
在故障診斷中,普通沖突消解策略[9]僅根據(jù)故障概率對故障進行排序,忽視了故障驗證時間對系統(tǒng)診斷效率的影響,有一定的局限性[10]。而故障樹策略,即采用適當?shù)倪壿嬮T將頂事件、中間事件和底事件自上而下逐級連接起來構成的邏輯關系,雖然可以在系統(tǒng)管理和維修中有效指導故障分析、尋找故障原因、制定維修策略及故障預防[11],但并不適用于多故障并發(fā)且故障處理優(yōu)先級動態(tài)變化的系統(tǒng)。AUV在航行過程中的故障具有并發(fā)特性,且故障優(yōu)先級會隨著AUV位姿等狀態(tài)變化,故宜采用基于故障優(yōu)先級的診斷機制。
正常工況下,需檢測的故障分為設備故障A1、通信故障A2、艙室環(huán)境失常A3、軸系環(huán)境失常A4和位姿超限A5共5類。其中,設備故障包括電力系統(tǒng)故障B1、舵機系統(tǒng)和推進系統(tǒng)故障B2、導航設備故障B3;通信故障包括控制器和設備之間的以太網(wǎng)通信故障B4,CAN總線通信故障B5和串口通信故障B6。故障優(yōu)先級分為4級,其中1級故障最嚴重,需優(yōu)先處理;4級故障最輕微,可視情處理。所有故障可以細分為近百種故障子事件,典型的故障子事件如表1所示。
表1 典型故障子事件Table 1 Typical fault events
1級故障發(fā)生時,應急單元需立刻執(zhí)行應急動作并保證AUV快速上浮;2級故障發(fā)生時,應急單元需首先保障設備安全,對故障設備進行斷電處理后再進行操舵上浮處理;3級故障發(fā)生時,應急單元需在設定的時間內等待故障消除和信號恢復,若無法消除故障則進行應急操舵上浮處理;4級故障發(fā)生時,AUV改為低速航行并等待故障消除或等待水聲干預指令回收AUV。
在應急處理使AUV快速上浮的過程中,應急單元將啟動應急處理效果監(jiān)測模塊以監(jiān)測應急執(zhí)行的效果,同時定義新的故障子事件并對其分配優(yōu)先級。一般將應急操舵上浮無效、操舵控制單元與應急單元通信故障定義為1級故障,將應急單元與動力和電力系統(tǒng)控制單元通信故障定義為2級故障,將導航單元與應急單元通信故障、數(shù)據(jù)存儲單元與應急單元通信故障定義為3級故障。若應急操舵上浮和氣囊充氣上浮這2種措施均無效,且AUV離地高度小于2 m,則定義為0級故障,即最危險的故障,此時應急單元將立即釋放應急纜回收AUV。
對于是否將AUV由正常工況切換至應急工況,應急單元會基于故障優(yōu)先級進行決策。通過仲裁切換模塊可以實現(xiàn)主動和被動2種切換模式,若水下主控單元和應急單元的通信信道正常,則應急單元命令水下主控單元停止水下調度工作,改為由應急單元接管,此為主動切換;若水下主控單元和應急單元均檢測出兩者之間的主、備用信道故障,則水下主控單元先自行停止調度工作,應急單元隨后自行接管,此為被動切換。
為合理地應急決策,基于專家知識設計了專家應急決策模型(圖6),該模型由元知識庫、用戶接口、專家知識庫、推理機和數(shù)據(jù)庫組成,可以針對輸入故障輸出應急決策結論。
元知識庫代表單一的應急決策基礎知識,例如深度超限時,基于元知識庫僅能輸出操舵上浮減小深度的應急決策,若同時出現(xiàn)舵機故障的情況,則將無法處理,故需同時調用專家決策規(guī)則庫。依據(jù)專家知識所設計的決策規(guī)則如下:
1)規(guī)則1。如果雙艉舵通信故障,且圍殼舵和推進器工作正常,則操縱圍殼舵和推進器進行上浮。
2)規(guī)則2。如果艏傾縱傾角大于10°,且AUV深度持續(xù)快速增加,則將推進器轉速設置為0,氣囊充氣上浮。
每種應急決策動作均可分解為若干步驟,例如初始動作、中間動作和最后動作,其中中間動作和最后動作是初始動作的進一步說明。例如,對于低電量報警故障,初始動作為進行應急操舵上浮決策,中間動作為決定操縱艉舵和圍殼舵以及推進器,最后動作為分配舵角和推進器轉速指令。
表2所示為根據(jù)專家決策規(guī)則庫建立的應急決策初始動作表。
表2 應急決策初始動作表Table 2 Initial action of emergency decision-making
4級故障將執(zhí)行應急決策初始動作S141/S142;3級故障將執(zhí)行S13;2級故障將執(zhí)行S121/S122;1級故障將執(zhí)行S11;0級故障將執(zhí)行S10。在執(zhí)行過程中,一旦出現(xiàn)更高優(yōu)先級的故障,應急決策初始動作也將相應地改變;當高優(yōu)先級故障消失時,將維持執(zhí)行原應急決策初始動作。
應急自救系統(tǒng)有3種故障應急手段,分別為應急操舵上浮、艏部應急氣囊充氣和釋放應急纜。執(zhí)行應急手段的的原則為:首先執(zhí)行應急操舵上浮,若無效則執(zhí)行氣囊充氣手段,若還無效則在AUV沉底前釋放應急纜。
正常工況下,可以在AUV定深和定向航行過程中考察控制系統(tǒng)的穩(wěn)定性、準確性和快速性;而在應急工況下,AUV快速上浮時間和上浮過程中的最大縱傾角是考察應急系統(tǒng)的重要指標。目前,在航行器應急操縱研究方面,Altosole等[12]設計了一種適用于船舶快速啟動、停止工況的推進器控制策略,可用于縮減加速和減速過程。Putra等[13]采用Bug算法規(guī)劃了航行器的水下應急路徑,可以有效減少路徑規(guī)劃時間。
本文提出了一種簡單易行的離散操舵控制方法,可保證盡可能短的應急上浮時間,同時令上浮過程中的最大縱傾角小于設定閾值,從而保護AUV內部設備免受損壞。
離散操舵控制方法的具體思路為:
首先,利用AUV水動力學模型進行定值操舵推進上浮仿真,得到操舵和推進指令與上浮過程中最大縱傾角的對應關系,如表3所示。表3中:Vi(i=0,1,2,…,n)為推進器轉速;Vthreshold為推進器轉速閾值;CVi為推進器轉速系數(shù);θi為圍殼舵角;θthreshold為圍殼舵角閾值;Cθi為圍殼舵角系數(shù);βi為艉舵角;βthreshold為艉舵角閾值;Cβi為艉舵角系數(shù);Pi為最大縱傾角;Pthreshold為最大縱傾角閾值;CPi為最大縱傾角系數(shù)。同時,AUV初始深度設為水下10 m。
表3 定值操舵推進上浮仿真Table 3 Steering and propelling simulation under fixed commands
然后,在應急操舵上浮時將預期縱傾角設為最大允許閾值。若當前縱傾角與預期縱傾角不匹配,則應急單元根據(jù)離散操舵規(guī)則表選取下一條操舵推進指令,直到縱傾角匹配,繼而逐漸減小操舵推進指令,循環(huán)往復。例如,若AUV當前的操舵推進指令為(V0,θ0,β0),縱傾角為P0(P0<Pthreshold),則操舵過程中的操舵推進指令為
由此可見,離散操舵控制的優(yōu)點在于:在保證AUV應急上浮時最大縱傾角安全的前提下,可以相對減少定值操舵推進上浮所需的時間;同時簡化了應急操舵形式,不需要采用復雜的縱傾控制算法。
為滿足實時性要求,應采用實時操作系統(tǒng)運行應急控制軟件。目前,VxWorks因其良好的實時性已被廣泛應用于AUV的嵌入式控制中,例如張瑋康等[14]研制的腹部作業(yè)型水下機器人主控軟件就是運行于VxWorks系統(tǒng)中。
本試驗將基于CPCI總線運行VxWorks實時操作系統(tǒng),所搭建的AUV控制系統(tǒng)半實物仿真聯(lián)調平臺如圖7所示。
正常工況下,AUV定深航行的深度為10 m。在某一時刻引入3級故障,應急單元整定故障后將主動切換至應急工況,并根據(jù)專家應急決策執(zhí)行應急操舵上浮動作,使AUV快速浮出水面,仿真響應的輸出結果如圖8所示。
由圖8可知,應急單元在時刻A開始應急操舵,AUV在時刻B浮出水面(設定AUV模型的出水深度為1.1 m),上浮過程中的最大縱傾角小于安全閾值15°,上浮時間為35 s(半實物仿真機采樣周期為100 ms),從艏向速度曲線可知,AUV在上浮過程中有效執(zhí)行了離散操舵控制策略。
在應急操舵上浮過程中,AUV內部信息流為應急單元告知水下主控單元停止調度,應急單元依次調度導航單元、操舵控制單元、動力與電力系統(tǒng)控制單元、水下數(shù)據(jù)存儲單元,應急單元定時反饋水聲報文。
在應急工況下,應急單元從導航單元獲取自航模位姿、速度等信息,發(fā)送操舵指令至基礎控制單元,發(fā)送推進器轉速指令至動力與電力系統(tǒng)控制單元,存儲自航模應急工況數(shù)據(jù)至水下數(shù)據(jù)存儲單元,并定時通過水聲信道反饋自航模位姿、故障等重要信息至水面。在該工況下,應急單元將取代水下主控單元作為AUV的核心調度控制器,而水下主控單元則暫時停止調度工作,其他子控制器將當前工況識別為應急工況并依舊執(zhí)行各自的任務(包括接收并執(zhí)行調度核心的指令),從而共同實現(xiàn)操舵上浮動作。
本文基于一臺高速AUV研制了應急自救系統(tǒng),重點介紹了應急機制,包括應急系統(tǒng)多信道采集信息機制、故障優(yōu)先級自整定機制、正常工況與應急工況的切換機制、基于專家應急決策模型進行的應急決策機制以及應急動作執(zhí)行機制,其中應急操舵上浮采用離散操舵控制方法實現(xiàn)?;赩xWorks實時操作系統(tǒng)編寫應急自救系統(tǒng)軟件,進行了系統(tǒng)半實物仿真聯(lián)調試驗,驗證了應急自救機制與策略的可靠性、實時性及準確性,可用于指導水下航行器的航行安全與自救回收作業(yè)。
下一階段將開展實物水下試驗,進一步驗證該應急系統(tǒng)的可靠性與適用性。