System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
:本專利技術涉及一種用于無人帆船的全覆蓋路徑規劃算法。
技術介紹
0、
技術介紹
:
1、無人帆船主要是以風能和太陽能進行驅動,適合用于執行長時間遠距離的監測任務,隨著對海洋環境信息需求的日漸增加,無人帆船已經成為重要的海洋監測平臺,被應用到海洋數據采集和環境監測。
2、無人帆船的主要任務包括海洋監測、安全巡邏、搜救任務、科研調查和資源勘探等,可用于實時監測環境變化、污染物擴散和生態系統狀態,收集數據并生成地圖。安全巡邏則可以檢測非法活動或可疑目標,增強海洋安全;作為無人帆船執行任務的前提,無人帆船的路徑規劃是必不可少的重要環節;而現有的路徑規劃算法會受到運動環境的影響,整體計算流程過于單一,受到更多的條件約束,不能完全適用于無人帆船的功能特性。
技術實現思路
0、
技術實現思路
:
1、本專利技術實施例提供了一種用于無人帆船的全覆蓋路徑規劃算法,方法設計合理,根據開始覆蓋時的風向將地圖柵格化,使開始覆蓋時的風向從柵格地圖的上方指向下方,進而根據無人帆船速度極坐標圖將風向劃分為不同的區域,禁用當前柵格周圍八個柵格中不可航行的方向,從而使規劃路徑跟隨風向的變化而變化,避免受到遠動環境的影響和外部條件的約束,能夠完全適用于無人帆船的功能特性,解決了現有技術中存在的問題。
2、本專利技術為解決上述技術問題所采用的技術方案是:
3、一種用于無人帆船的全覆蓋路徑規劃算法,所述路徑規劃算法包括以下步驟:
4、s1,經由風速傳感器檢
5、s2,將開始執行全覆蓋任務時的風向方向設定為0°,按沿與風向平行和垂直的方向將地圖進行柵格化,進而根據無人帆船vpp曲線圖禁用無人帆船周圍八個柵格中的部分柵格;
6、s3,對柵格地圖上的每個節點進行賦值,進而判斷柵格地圖上是否存在上風區;
7、s4,當柵格地圖上存在上風區時,則前往相對最大上風位置,并根據航跡將柵格地圖進行重新賦值,并在沿途留下已航行標記;當柵格地圖上不存在上風區時,則判斷柵格地圖上是否存在死區;
8、s5,當柵格地圖上存在死區時,無人帆船脫離死區,并重復執行步驟s3;當柵格地圖不存在死區時,無人帆船前往周圍可行柵格中值最大的節點,并將柵格地圖重新賦值,留下已航行標記;
9、s6,判斷無人帆船是否經過所有目標區域,完成無人帆船的全覆蓋路徑規劃任務。
10、對柵格地圖上的每個節點進行賦值包括以下步驟:
11、s3.1,根據無人帆船速度極坐標圖,將風向劃分不同的區域,禁用當前柵格周圍八個柵格中不可航行方向的柵格;
12、s3.2,從地圖上方指向下方的風向方向設為0°,將逆時針方向設定為正方向,從而將風向劃分為八個方向并在柵格地圖中確定八個主風向;
13、s3.3,當風向θ處于[-30°,30°],[60°,120°],[150°,210°],[240°,300°]時,在未開始覆蓋前和覆蓋過程中每走一步后都需要對柵格地圖中的節點賦值,定義在障礙物位置的值:
14、f(x,y)=-1
15、在非障礙物位置的賦值公式為:
16、
17、式中:x,y表示地圖的橫縱坐標;x為地圖中沿主風向方向計數的柵格總數,a為在地圖中沿主風向方向計數的柵格中,當前柵格所排的序號;y為沿與主風向垂直方向計數,且不被障礙物、已航行柵格、當前帆船位置所隔斷的連續柵格串的柵格總數;b為沿與風向垂直方向不被障礙物、已航行柵格、當前帆船位置所隔斷的連續柵格串中當前柵格所在的序號;在帆船進入一個柵格以后,將當前柵格值減1;
18、s3.4,當風向θ變化到[-30°,30°],[60°,120°],[150°,210°],[240°,300°]這些區域以外的區域,如果上一次的風向所在區域為當前區域臨近區域,則根據上一次賦值辦法進行賦值;如果不是,則隨機按照臨近兩個區域中的一個區域的賦值辦法來進行賦值。
19、使用改進的apf算法到達相對最大上風位置,在改進的apf算法中,將勢場分為全場勢場和局部勢場,在每次移動過程中,選擇周圍八個節點中勢能總和最低的節點;
20、所述全局勢場包括由目標點產生的吸引力勢場、障礙物和已覆蓋區域產生的排斥力勢場;
21、為了將無人帆船吸引至目標點,為地圖上的每個柵格節點p建立如下的線性勢場pg:
22、pg=gg·dist(p,pgoal)
23、gg是吸引梯度dist(p,pgoal)是點到點pgoal的歐式距離;
24、為了使無人帆船避開障礙物,在障礙物節點pobst處添加一個排斥勢場po;
25、
26、其中k1為一個可調的參數
27、為了使無人帆船盡量不進入已覆蓋區域,在已覆蓋節點pcovered處添加一個排斥勢場pc;
28、
29、式中:k2為一個可調的參數。
30、所述局部勢場用于使規劃路徑符合無人帆船的運動規律,所述局部勢場包括逆風勢場和磁滯勢場,所述逆風勢場用于使無人帆船不在航行限制區行駛;所述磁滯勢場用于減少無人帆船在前進過程中的轉向,使無人帆船更快到達目標點;
31、所述逆風勢場以帆船當前所在點p為中心,隨著帆船位置的移動而移動,隨著風向的改變而改變方向;航行限制區內任意一點pw處的風向勢能pup的大小與pw到點p的距離成正比;在航行限制區外,風向勢能為0:
32、
33、其中,gup是航行限制區風向勢能的梯度,φ表示真實風向角;
34、所述磁滯勢場以帆船當前所在點p為中心,隨著帆船位置的移動而移動,隨著帆船的艏向ψ的變化而改變方向;磁滯勢場被設置為在與當前時刻艏向相同的方向上為0,其余區域內任意一點pw處的磁滯勢能ph的大小與pw到點p的距離成正比:
35、
36、其中,gh是限制帆船轉向的參數。
37、使用廣度優先算法來尋找梯度值大于0的最近柵格;首先,創建一個隊列,將當前節點放入隊列中;然后,從隊列中取出一個節點,并檢查與其相鄰的節點,這些相鄰節點即為當前節點周圍直接相鄰的節點,將它們加入隊列中,但遇到障礙物時則不加入隊列;重復這一過程,不斷地取出隊列中的節點,并探索其相鄰節點,在找到目標柵格后使用改進的apf方法前往該柵格。
38、在無人帆船接近已覆蓋區域時,將航向向量分解為平行于賦值所用的主風向的方向和垂直于主風向的方向,在有其他柵格可走的條件下,不采用在與主風向垂直方向上與已覆蓋路線航向方向相同的方向穿過已航行路線的航跡。
39、本專利技術采用上述結構,通過將開始執行全覆蓋任務時的風向方向設定為0°,按沿與風向平行和垂直的方向將地圖進行柵格化,進而根據無人帆船vpp曲線圖禁用無人帆船周圍八個柵格中的部分柵格;通過對柵格地圖上的每個節點進行賦值,進而判斷柵格地圖上是否存在上風區;通過根據本文檔來自技高網...
【技術保護點】
1.一種用于無人帆船的全覆蓋路徑規劃算法,其特征在于,所述路徑規劃算法包括以下步驟:
2.根據權利要求1所述的一種用于無人帆船的全覆蓋路徑規劃算法,其特征在于,對柵格地圖上的每個節點進行賦值包括以下步驟:
3.根據權利要求1所述的一種用于無人帆船的全覆蓋路徑規劃算法,其特征在于:使用改進的APF算法到達相對最大上風位置,在改進的APF算法中,將勢場分為全場勢場和局部勢場,在每次移動過程中,選擇周圍八個節點中勢能總和最低的節點;
4.根據權利要求3所述的一種用于無人帆船的全覆蓋路徑規劃算法,其特征在于:所述局部勢場用于使規劃路徑符合無人帆船的運動規律,所述局部勢場包括逆風勢場和磁滯勢場,所述逆風勢場用于使無人帆船不在航行限制區行駛;所述磁滯勢場用于減少無人帆船在前進過程中的轉向,使無人帆船更快到達目標點;
5.根據權利要求1所述的一種用于無人帆船的全覆蓋路徑規劃算法,其特征在于:使用廣度優先算法來尋找梯度值大于0的最近柵格;首先,創建一個隊列,將當前節點放入隊列中;然后,從隊列中取出一個節點,并檢查與其相鄰的節點,這些相鄰節點即為當前
6.根據權利要求3所述的一種用于無人帆船的全覆蓋路徑規劃算法,其特征在于:在無人帆船接近已覆蓋區域時,將航向向量分解為平行于賦值所用的主風向的方向和垂直于主風向的方向,在有其他柵格可走的條件下,不采用在與主風向垂直方向上與已覆蓋路線航向方向相同的方向穿過已航行路線的航跡。
...【技術特征摘要】
1.一種用于無人帆船的全覆蓋路徑規劃算法,其特征在于,所述路徑規劃算法包括以下步驟:
2.根據權利要求1所述的一種用于無人帆船的全覆蓋路徑規劃算法,其特征在于,對柵格地圖上的每個節點進行賦值包括以下步驟:
3.根據權利要求1所述的一種用于無人帆船的全覆蓋路徑規劃算法,其特征在于:使用改進的apf算法到達相對最大上風位置,在改進的apf算法中,將勢場分為全場勢場和局部勢場,在每次移動過程中,選擇周圍八個節點中勢能總和最低的節點;
4.根據權利要求3所述的一種用于無人帆船的全覆蓋路徑規劃算法,其特征在于:所述局部勢場用于使規劃路徑符合無人帆船的運動規律,所述局部勢場包括逆風勢場和磁滯勢場,所述逆風勢場用于使無人帆船不在航行限制區行駛;所述磁滯勢場用于減少無人帆船在前進過程中的轉向,使無人...
【專利技術屬性】
技術研發人員:白桂強,沈金坤,秦洪德,朱仲本,鄧忠超,牟曉凱,薛祎凡,曹小建,
申請(專利權)人:哈爾濱工程大學,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。