本發明涉及一種無人船動力定位方法及系統,尤其涉及一種基于智能控制的無人船動力定位方法及系統。
背景技術:
隨著我國創新驅動發展戰略的實施,水面無人運輸工具、水面無人監測系統、水面無人作業平臺等無人船技術,在物聯網、大數據、云計算、人工智能的有力推動下暫露頭角,無人船領域已然成為下一片產業藍海,具有廣闊的研究和應用空間。
無人船在海洋上航行時會遇到風浪流等外部環境的干擾,如果要使無人船與海面上某基準線保持一定位置,船必須有產生反向力和力矩的能力。目前,在有人船領域,若想要使船舶對某一特定的位置保持船位時,船舶的泊錨索或者推力器可以有效地產生反向力和力矩去抵抗外界的干擾力。一般有人船采用泊錨索對船舶進行定位時,錨索從船體向四周拋出,但是由于隨著水深的增加,這就要求錨索系統具有大的重量,隨著錨索系統的重量增加,拋錨的困難性會加大。在實際中,若達到一定的水深時,錨索系統會完全無用。錨索系統不適用在無人船上。
推進器與錨泊系統不同,它可以在任意水深的時候提供推力和力矩來抵抗外界的環境擾動,從成本上來說,錨泊系統的成本會隨水深的增加而增加,而推進器的成木卻與水深沒有太大的關系。所以應用推進器來產生力和力矩去抵抗外界環境的干擾,從而保持船的位置和航向是一種理想的辦法。所以,在無人船上使用動力定位方法及系統可行性很高。
動力定位系統是自動控制船舶位置和航向的系統,該系統只依賴自身的推進系統。由自身裝備的各種傳感器測量出船舶運動的位置和航向,利用計算機進行復雜的實時計算,進而控制船舶的推力裝置產生推進力和力矩去抵抗由外界環境引起的干擾力,使船舶保持目標的船位和船舶向。船舶利用動力定位系統,可以在錨泊系統不起作用的深水區域進行操作。動力定位系統能使船舶固定在一定的位置,還可以根據實時的風浪流的方向自動地調節船舶的蹭向到最優的期望位置。
無人船水上作業環境復雜多變,不同水環境的水流狀態、水底地貌、水面氣象迥異,風阻力、靜水阻力、波浪阻力等向無人船施加阻力的綜合作用,影響動力定位準確性和航行穩定性。無人船作業任務種類繁多,作業過程中,由于船上設備和作業對象的移動及旋轉,重心、吃水、艏向等狀態時刻變化,浮性、穩性等關鍵航行性能受到牽制,危害無人船動力定位穩定性和航行可靠性。研究無人船在多因素作用下的水動力模型,明確單因素作用效果和多因素綜合效應,形成無人船水動力模型一般標準,是無人船研究的關鍵性工作。與此同時,無人船作為全新的水面運輸工具,涉及智能網絡測控、最佳路徑規劃、實時航行決策、無線網絡通信等多學科問題,具有高度關聯性和耦合性,對包含環境感知、動力推進、解耦算法等在內的無人船推進及控制技術提出巨大挑戰。傳統船舶操縱上十分依賴船舶班組的航行經驗,不宜用于無人船在復雜作業環境下的動力定位。加快無人船新型推進系統和推力控制方法革命,在無人船核心關鍵器件與控制算法首先取得突破,形成持續性的自主創新能力和研發積累效應,是從深度和廣度兩個角度引領產業發展的要義。
技術實現要素:
為解決上述中存在的問題與缺陷,本發明提供了一種無人船動力定位系統及方法。
本發明是通過以下技術方案實現的:
一種無人船動力定位系統,包括:傳感器測量系統、控制系統、動力和推進系統;
所述傳感器測量系統,包括導航定位模塊、環境感知模塊和內部監測模塊;
所述導航定位模塊、環境感知模塊和內部監測模塊分別集成于相應的傳感器,并都通過CAN總線連接到核心控制模塊進行數據的處理;
所述控制系統,包括高層控制和底層控制;用于控制船舶位置和航向角的一個多變量的反饋控制系統;
所述動力和推進系統,包括輸電設備、推進器和動力機械及輔助系統,用于提供控制器輸出的力和力矩。
一種無人船動力定位方法,包括以下步驟:
步驟A建立一個無人船水動力模型;
步驟B將測量機構測出的無人船位置和舶向角信息進行處理,得出實際的無人船位置和艏向角;
步驟C將期望的位置和艏向角信號與實際值進行比較,得出實際值與期望值的偏差信號;
步驟D設計無人船動力定位的控制算法,計算出抵抗位置偏移以及外界干擾的恢復力和力矩,使偏差的平均值減小到最小;
步驟E利用多矢量推力最優分配算法,將推進器的推力和方位角以及舵角等控制的指令分配到各個推進器。
本發明提供的技術方案的有益效果是:
在無人船動力定位方法及系統上,針對帶有模型參數不確定和外界風浪流干擾的動力定位無人船,提出一種動力定位無人船全速域自適應模糊控制器。采用三個獨立的控制器分別控制無人船在三個方向上的運動,從而簡化了控制規則的設計和縮短了執行時間。針對帶有非線性約束條件的推力分配優化問題,對動態的等式約束進行等份離散,在傳統的粒子群算法中進行了改進,加入了改進的慣性因子,改進的比較準則和改進的干擾算子,將改進后的粒子群算法應用到推力分配策略中。
附圖說明
圖1是本發明無人船動力定位系統原理圖;
圖2是本發明無人船動力定位系統基本框架圖;
圖3是本發明無人船動力定位方法流程圖;
圖4是本發明無人船水動力定位系統模型框圖;
圖5是本發明無人船動力定位方法中自適應模糊控制系統;
圖6是本發明動力定位方法的模糊控制規則;
圖7是本發明動力定位方法的分級模糊控制。
具體實施方式
為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明實施方式作進一步地詳細描述。
本實施例提供了一種無人船動力定位系統,其中,
參見圖1,該系統系統包括:傳感器測量系統、控制系統、動力和推進系統。
傳感器測量系統,主要包括導航定位模塊、環境感知模塊、內部監測模塊,各個模塊集成相應的傳感器,最終全部通過CAN總線連接到核心控制模塊進行數據的處理。
控制系統,是控制船舶位置和航向角的一個多變量的反饋控制系統,主要包括:高層控制,這個部分包括控制器和推力分配;底層控制。
動力和推進系統,基本作用是提供控制器輸出的力和力矩,這個系統主要由輸電設備、推進器和動力機械以及其他的輔助系統組成。
參見圖2,無人船動力定位系統基本框架圖,該系統包含上位機系統和下位機系統。上位機系統具有友好的人機交互界面,供總監測平臺工作人員觀測和記錄航速信息,舵角信息,位置信息,航行姿態信息和環境信息等實時數據;下位機系統以船載核心控制器為中心,由導航定位系統,環境感知系統,通信系統和動力推進系統組成。
如圖3所示,本實施例還提供了一種無人船動力定位方法,包括:
步驟10建立一個無人船水動力模型;
步驟20將測量機構測出的無人船位置和艏向角信息進行處理,得出實際的無人船位置和艏向角;
步驟30將期望的位置和艏向角信號與實際值進行比較,得出實際值與期望值的偏差信號;
步驟40設計無人船動力定位的控制算法,計算出抵抗位置偏移以及外界干擾的恢復力和力矩,使偏差的平均值減小到最小;
步驟50設計多矢量推力最優分配算法,將推進器的推力和方位角以及舵角等控制的指令分配到各個推進器。
參見圖4,上述步驟10還包括:
針對船舶運動模型,擬基于Balchen模型對無人船的低頻運動和高頻運動分別建立數學模型。對低頻運動中與船運動影響較大的水動力項從噪聲項中作顯化處理,以減小噪聲誤差,改善對船舶運動的估計。在高頻運動中,利用船模在規則波中及不同浪向角條件下進行試驗,獲得規則波下無人船高頻運動的幅值響應和相位響應,再根據波浪譜計算相應的浪向角下的遭遇譜,然后由不規則波的浪譜計算高頻運動響應,以此確定高頻運動模型中的相關項。
針對環境擾動力模型,考慮到風浪流隨機特性造成的動態不確定性,引入隨機過程進行描述,分別對風流浪的載荷及變化情況進行分析,建立隨機微分方程描述的環境擾動力模型。探索隨機環境擾動力模型下隨機系數的估計方法,并仿真分析該隨機微分動力學系統對實際動態不確定海況下的船舶運動響應的刻畫程度。
針對推進器模型,采用擴展推力的概念,建模成在不同舵角下與主推進器推力的百分比關系,通過模型試驗或Fluent計算得到船舶在低航速下推力與舵的來流速度的關系,得到在不同舵角下和螺距下舵槳組合的推進器推力模型。
上述步驟20具體包括:利用集成傳感器技術,將北斗/GPS系統、水聲定位系統以及雷達系統等集成到無人船上,進行精確測量獲得無人船位置、艏向、航姿等可測量的狀態信息,實現傳感器測量系統快速、準確、穩定地估計出船舶新的運動狀態和不可測量的外界干擾力。
上述步驟30具體包括:利用卡爾曼濾波器與模糊自適應方法結合,充分利用卡爾曼濾波算法的線性濾波和處理大規模動態數據的優勢,進行異類多傳感器數據融合,實現無人船動力定位控制系統中不可測干擾力的識別和新運動狀態的估計
由于無人船動力定位系統主要關心船在水平面內三個自由度的運動即縱蕩、橫蕩和艏搖運動。考慮到低速情況下船舶三個自由度運動之間的耦合較小,擬采用了三個獨立的控制器分別控制無人船在三個方向上的運動,從而簡化了控制規則的設計和縮短了執行時間。圖5所示為自適應模糊控制系統在無人船動力定位中的應用原理示意圖,它的核心部分為模糊控制器,如圖中虛線框所示。模糊控制器的設計包括以下幾項內容:確定模糊控制器的輸入變量和輸出變量(即控制量);設計模糊控制器的控制規則;確立模糊化和非模糊化(又稱清晰化)的方法;選擇模糊控制器的輸入變量及輸出變量的論域并確定模糊控制的參數(如量化因子、比例因子);編制模糊控制算法的應用程序。
無人船動力定位方法采用模糊控制時,為了獲得良好的控制效果,必須要求模糊控制具有較完善的控制規則。這些控制規則是對被控過程認識模糊信息的歸納和操作經驗的總結。然而,由于無人船所處海洋環境的復雜性,會造成模糊控制規則或者粗糙或者不夠完善,都會不同程度地影響控制效果,為了彌補這個不足,考慮到模糊控制器應向著自適應、自組織、自學習方向發展,使得模糊控制參數和規則在控制過程中自動地調整、修改和完善,達到更佳的控制效果。因此,在此模糊控制動力定位系統設計中,利用自適應模糊控制器,其在簡單模糊控制器的基礎上,增加了自適應項而構成的一種模糊控制器,結果如圖5所示。圖中上面虛線框內即為增加的部分:測量模塊用于測量實際輸出特性與期望特性的偏差以便為控制規則的修正提供信息;校正模塊將輸出相應的校正量通過修改控制規則來實現。
模糊控制器的輸入變量可以是一個,也可以是二個或多個,通常將模糊控制器輸入變量的個數視為模糊控制的維數。一維模糊控制的動態性能不佳,目前廣泛采用二維模糊控制器,以誤差和誤差的變化率為輸入變量,如圖4所示。對于無人船動力定位控制系統,所需要控制的是船舶位置,因此對于每個方向來說,控制器以該方向上無人船實際位置與定位點之間的偏差e和偏差的變化率e'作為輸入變量。
模糊控制器的輸入變量誤差、誤差變化率的實際范圍稱為這些變量的基本論域,顯然基本論域的量為精確量,將精確量轉換為模糊量的過程成為模糊化(Fuzzification)或稱為模糊量化,一般采用精確量離散的方法。然后,模糊控制器在模糊集中給每一個變量賦予一個置信度。模糊控制器的控制決策通過模糊控制規則(FAM)把模糊輸入集和輸出集聯系起來,模糊控制規則可以用自然語言來表達,通常采用if-then語句,由此可以建立無人船動力定位系統的模糊控制規則(如圖6所示)。
采用分級模糊控制方法,在原模糊控制器的基礎上分別又添加一個模糊控制器,這樣在大誤差范圍內,實行粗模糊控制;在小誤差范圍內實行細模糊控制。通過設定誤差閾值,實現控制的切換,如圖7所示。采用分級模糊控制將使系統在具有良好的動態性能同時也擁有很好的穩態性能。
設計多矢量推力最優分配算法,主要包括三個重要組成因素:目標函數,不等式約束和等式約束,可以將其考慮成帶有非線性約束的單目標動態優化問題。針對推力分配問題,在群智能算法中,采用操作簡單、收斂快的粒子群算法。推力分配問題的目標函數主要包括:推力器磨損最小、耗能最小、避免奇異性等。
推力分配策略使推進器方位角變化的過程中就會造成推進器磨損,所以在目標函數中就應該加入推進器推力變化速率項和方位角變化速率項,防止推進器過快的磨損。在推力分配策略中,要考慮到推力器輸出能耗的經濟性,可以將推力器輸出的力大小作為目標函數的一項。動力定位的無人船一般裝有多個推進器,當推進器系統不能滿足由控制器發出的期望的控制力和力矩時,該系統是奇異的。對于安裝有全回轉的動力定位船舶,由于推力角速率的限制,很容易造成系統奇異結構,此時船舶會失去操作性。然而由海洋環境引起的干擾力和力矩是緩慢變化的,當推力器的方向和干擾力的方向是同向的時候,推力器的能耗是最小的,為此應該將其加入到優化的目標函數中。
假設動力定位無人船有n個推進器,則各個推進器產生的推力和方向角分別為xi,ai。推力分配的約束條件主要包括滿足期望的控制力和力矩、推進器角度限制、推進器推力限制等。滿足期望的控制力和力矩該限制條件以等式的形式給出,包括縱向、橫向和舫搖的力和力矩平衡,等式約束如下:
式中,τ=[Fx,Fy,FN]為控制器輸出的力和力矩指令;lyi和lxi分別為推進器到船
舶旋轉中心的縱向和橫向坐標。
為了減少推進器間的相互作用,保證各個推進器相互間的影響最小,應對推進器的角度進行限制。各個推進器的最大推力是有限的,應對推進器的推力進行限制。
綜上,推力分配的數學模型如下所示:
Tmin≤xi≤Tmax
amin≤ai≤amax
目標函數的第一項表示推進器消耗的總能量,P為權值,用來調節消耗能量在目標函數中權重。第二項表示推力變化速率項,x0代表前一個時刻的推力值,xi代表當前時刻的推力值,Q為權值,用來調節該項在目標函數中的權重。第三項表示推進器角度變化速率項,a0代表前一個時刻的推進器的角度,ai代表當前時刻的推進器的角度,W為權值,用來調節該項在目標函數中的權重。第四項表示避免推進器系統奇異結構,式中ε>0是個很小的數,避免分母為0,δ>0為權值系數,δ占越大,無人船操縱性越好,B(a)是推進器的位置結構矩陣,如下所示:
式中,lyi和lxi分別為推進器到無人船旋轉中心的縱向和橫向坐標。
約束條件中的前三個是等式約束,其中是時間(環境)變量,可以看出前兩個等式為依賴于時間的動態非線性約束。通過以上分析可知推力分配問題可以看做動態單目標非線性約束的優化問題。
針對非線性單目標優化問題,提出了一種新的擾動算子,該算子可以使粒子偏于當前種群中約束違背的度數小的或者目標函數值小的粒子。定義了改進的粒子群進化方程,利用該方程更新粒子的位置和速度,可以有效地避免早熟收斂問題。思路是:對Y進行一次擾動后的點為式中λ∈(0,1)為點Y沿著所走的距離。其中Φ(Xi)是粒子Xi違背約束的度數,C是正常數,C-Φ(Xi)>0。可以看出,點Y的移動方向是群體中所有粒子決定的,且該方向是目標函數值較小或者約束違背的度數較小的粒子位置。加上這個擾動算子,很可能尋找到最優的粒子。
算法流程如下:
Step1:對推力分配問題的時間變量區間[t0,ts]進行等份分割,不妨設所得的環境為t1,...,ts,令t=ti。
Step2:在環境ti(i=1,...,s)下,給定種群規模N,在定義的范圍內隨機選取初始粒子的位置和速度,產生初始粒子群pop0(ti)。
Step3:將粒子的Pbest(ti)設置為當前位置,Gbest(ti)設置為初始粒子群中最優位置。
Step4:對于第k代粒子群popk(ti)所有粒子,執行如下操作:
(1)隨機產生r屬于[0,1],如果r<pr,則對個體極值Pbest(ti)或全局極值Gbest(ti)按照擾動算子進行擾動,否則不擾動。
(2)根據常規的粒子位置和速度更新方程產生在環境ti下新一代粒子群popk+1(ti),令k=k+1。
Step5:按照新的比較準則更新全局極值和個體極值。
Step6:如果k=K且ti<ts,則如ti=ti+1轉step2;如果k=K且ti=ts,停止,輸出Gbest(ti);如果k<K,轉Step4。
從常規的粒子群算法的數學模型可以看出,在固定的時間ti下,粒子群中的每個粒子在解空間中的“飛行”方向主要由粒子所經歷的最好位置和群體的最好位置所決定。另外,慣性因子的改進,使其隨著自身的迭代次數自適應調整,這樣更有利地對解空間進行局部和全局的自適應搜索。擾動算子可以對粒子群的個體極值和全局極限進行擾動,可以使目前的最優粒子沿著目標函數值較小或片約束違背的度數較小的粒子方向移動,這樣有效地維護了群體的多樣性,又避免了粒子群的早熟現象。
本發明解決類似領域的共性問題,可廣泛應用于一般有人船、海上石油平臺及工程船、運輸船、水下機器人等復雜海上作業復雜中。主要有如下以下特點:構造模糊控制算法,設計自適應模糊控制器,模糊控制具有自適應、自組織、自學習性,使模糊控制參數和規則在控制過程中自動地調整、修改和完善,達到更佳的控制效果。
在無人船運動中,實際速度是不可直接獲得的,通過無人船速度觀測器,可以從無人船的實際位置和航向角的測量中獲得船舶速度的估計值,從而實現船舶動力定位輸出反饋控制。
以上所述,僅為本發明較佳的具體實施方式,但本發明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易想到的變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應該以權利要求的保護范圍為準。