本發明屬于智能機器人協同控制,具體涉及一種基于輪足式平臺的多機器人區域覆蓋路徑規劃方法。
背景技術:
1、現有路徑規劃技術(如基于a*、dijkstra算法的圖搜索方法和rrt、prm等采樣算法)在處理大規模、復雜和動態環境時存在一定的局限性。例如,圖搜索算法在高分辨率環境中容易產生計算量暴增的問題,難以滿足實時規劃的需求,而采樣算法雖能較好地應對高維空間,但在障礙密集區域中可能采樣不足,導致全局最優解難以保證。同時,傳統方法在面對環境動態變化、突發障礙和局部約束時,往往存在全局規劃與局部動態調整之間銜接不暢的問題,容易使得路徑平滑性和避障安全性受到影響,從而導致機器人偏離預定軌跡或形成冗長路徑,降低整體系統的魯棒性和執行效率。
2、輪足式機器人憑借其融合了輪式高效平穩移動和足式對復雜地形適應性的優點,能夠有效彌補現有路徑規劃技術的不足。借助自適應反饋控制和分布式傳感技術,輪足機器人能夠實時感知環境變化,靈活調整運動模式,實現從全局規劃到局部動態重規劃的無縫銜接;同時,混合驅動系統不僅保證了在平整路面上的高效行駛,還賦予了機器人在面對突發障礙和復雜地形時更高的抗干擾能力,從而提升了自主導航和任務執行的整體性能和安全性。
技術實現思路
1、為解決現有技術的不足,本發明提供一種基于輪足式平臺的多機器人區域覆蓋路徑規劃方法,本方法結合輪足機器人能夠適應多種地形的特點,通過引入地形參數的多機器人任務預分配方法,將環境分割成多個子區域,每個機器人負責覆蓋其中的一個子區域,減少了路徑規劃算法的計算量和搜索空間;在子區域內,通過一種改進的stc算法實現從任意一個自由柵格出發,都能構造一個覆蓋所有任務區域的路徑,在柵格地圖的條件下實現100%的路徑覆蓋;在實際任務階段,通過輪足機器人對環境的感知能力,實時反饋現實地形和實際狀態的變化,實時調整任務分配和路徑規劃。
2、為達到上述目的,本發明的技術方案如下:
3、一種基于輪足式平臺的多機器人區域覆蓋路徑規劃方法,包括以下步驟:
4、步驟一、讀取地圖中的障礙物信息與地形參數,將當前地圖記錄為柵格地圖,根據輪足機器人運動特點和地形復雜程度將柵格地圖劃分為輪式覆蓋區域和足式覆蓋區域。每個機器人的起始位置作為其初始拓展位置。
5、步驟二、將地圖中的所有待覆蓋柵格分配給每個機器人作為其目標覆蓋柵格,將每個機器人的目標覆蓋柵格組成的區域定義為屬于該機器人的一個子區域,每個子區域是從選定的初始拓展位置開始逐步以下文所說明過程進行拓展獲得,即機器人的數量等于子區域的數量。
6、定義當前拓展位置為當前時刻的前一次拓展時進行拓展的柵格,用于執行下一步區域拓展操作。當前拓展位置是動態更新的,隨著子區域拓展過程不斷遷移。
7、總地圖區域中的柵格分為三種類型:自由柵格fg(free?grid)、已被分配策略分配過的柵格cg(coveragedgrid)和被障礙物占據的柵格og(obstacle?grid)。
8、當前子區域的邊界狀態的定義如下:
9、遍歷當前子區域中所有處于邊界的柵格,如果至少有一個柵格的周圍相鄰柵格中存在自由柵格,則當前子區域的邊界狀態為自由狀態;反之,則為阻塞狀態。柵格的周圍相鄰柵格是指柵格的上、下、左、右四個方向的相鄰柵格;
10、根據當前拓展位置的相鄰柵格類型將當前子區域定義如下三種狀態:
11、定義1:自由狀態:如果當前拓展位置的周圍相鄰柵格至少存在一個自由柵格,那么當前子區域就處于自由狀態。
12、定義2:阻塞狀態:如果當前拓展位置的所有周圍相鄰柵格都為cg柵格和og柵格,且邊界狀態也為阻塞狀態,則當前子區域處于阻塞狀態。
13、定義3:偽阻塞狀態:如果當前拓展位置的所有周圍相鄰柵格都為cg柵格和og柵格,但邊界狀態為自由狀態,則當前子區域處于偽阻塞狀態。
14、根據當前子區域狀態不同,將選擇如下對應的策略進行分區拓展。
15、1)自由狀態策略:定義當前拓展位置所有周圍相鄰柵格存在的自由柵格為候選柵格。若候選柵格只有一個,則選擇該柵格進行拓展。若候選柵格有多個,則構造一個獎勵函數rf,計算每個候選柵格的獎勵值,策略將選擇獎勵值最高的候選柵格進行拓展。
16、rf由距離獎勵rfd和運動獎勵rfs兩個部分組成。rfd表示候選柵格在當前時刻狀態下,與其余所有機器人當前子區域的當前拓展位置的距離之和,rfd越高,表示機器人在接下來的區域拓展過程中進入阻塞狀態的概率就越小。rfs表示從當前柵格位置前往該候選柵格,進行運動模式切換的收益,rfs越高,表示機器人完成覆蓋任務的能耗就越小。
17、候選柵格的集合表示為另外表示區域拓展過程中第t個時刻時第i個機器人處于的當前拓展位置。f代表未分配。
18、rf的值由下式計算得出:
19、
20、其中k1和k2分別為rfd和rfs的系數,表示兩部分的權重。t表示柵格拓展階段的時間戳。其中表示第i個機器人在第t時刻的第m個候選柵格的獎勵函數值。
21、rfd的值由下式計算得出:
22、
23、其中,‖‖表示求二者的歐氏距離,表示第i個機器人在第t個時刻的第m個候選柵格的位置,表示第i個機器人在第t個時刻的當前拓展位置。
24、rfs的值由下式計算得出:
25、
26、其中,k3,k4,k5表示不同模式切換情況的收益值,根據機器人實際行動能力進行參數調整。
27、2)偽阻塞狀態策略:遍歷當前子區域所有處于邊界的柵格,定義每個柵格所有周圍相鄰柵格存在的自由柵格為候選柵格。在第t個拓展時刻,第i個子區域有u∈n+個候選柵格能夠用于拓展。構造一個拓展函數ef來評估候選柵格的拓展性能,策略將選擇ef值最低的候選柵格進行拓展。
28、定義當前拓展狀態下,地圖中所有自由柵格組成的不規則圖形的質心柵格為gfg,指示越靠近gfg的位置越不容易出現阻塞狀態。ef值定義為從偽阻塞狀態下所有候選柵格到gfg的可達路徑長度,采用a*算法計算。若ef值越小,則代表這個候選柵格在接下來拓展過程中陷入阻塞狀態的可能性將更小。
29、為候選柵格的集合,第i個機器人在t拓展時刻的第u個候選柵格的ef值計算如下:
30、
31、其中,a*(·)代表基于a*算法計算可達路徑長度,gfg(t)表示第t時刻任務區域中所有自由柵格組成的不規則圖形的質心所在的柵格位置,表示處于偽阻塞狀態下的第i個機器人在第t時刻的第u個候選柵格位置。
32、另外,如果兩個候選柵格ef值相差很小,則采用自由狀態策略中運動獎勵rfs的計算方法計算收益值,選擇收益值較高的候選柵格進行拓展。
33、3)阻塞狀態策略:若當前子區域進入阻塞狀態,則暫停其拓展操作,等待其他分區完成分配。為避免最終分配結果存在嚴重不均衡的情況,將通過下一步驟進行調整。
34、在步驟二中,以每個分區都完成一次分區拓展操作作為一次循環,將重復迭代此循環直到地圖中不存在自由柵格或所有分區都進入阻塞狀態為止。
35、步驟三、分區拓展完成后,根據柵格數量與分區拓展后的子區域內不同運動模態區域的分布情況,對分配結果進行調整,以均衡每個機器人的能耗及任務量。具體過程為:
36、構造一個任務量函數tf,包括柵格數量g和足式運動區域數量f兩個部分,根據機器人實際運動能力為他們賦予不同的權重為wg和wf。
37、整個區域被劃分為q個子區域,每個子區域的tf的值由下式計算得出:
38、tfq=wggq+wffq
39、其中,q代表第q個子區域,wg和wf由機器人運動能力決定。
40、通過計算最優均衡任務量tfopt,確定重分配各分區分配的數量目標。總任務量tftotal為:
41、
42、最優的均衡任務量為:
43、
44、計算全局中所有分區結果中任務量最小的,將其確定為第一步重分配對象,該子區域從最后一個被分配的柵格開始,繼續按照步驟二的方法拓展。找出當前任務量最小的子區域j:
45、
46、此時將其余已被分配的柵格看作自由柵格以便當前子區域進行拓展。定義當前拓展子區域j的柵格集為sj,待拓展的自由柵格集合為sfree,從sfree中選擇合適的柵格gk進行分配:
47、
48、其中d(g,sj)表示柵格g到子區域sj的距離,策略將盡可能選擇最近的柵格進行拓展。
49、在每一次重分配后通過判斷當前拓展分區任務量是否達到最優均衡任務量以及是否為當前所有分區中任務量最小的來切換拓展分區,循環拓展過程直至所有分區都獲取到最優分區柵格數。
50、步驟四、利用結合輪足式特點改進的stc算法構造子分區覆蓋路徑。
51、在子分區中,根據輪足機器人運動能力對以輪式區域節點為終點的邊賦權重衰減因子λ(0≤λ≤1),對以足式區域節點為終點的邊賦權重增益因子采用prim算法建立最小生成樹,刪去柵格類型為足式區域的葉子節點及其邊,先序或后序環繞最小生成樹,生成覆蓋路徑。再由被刪除節點通過a*算法向生成樹構建最短路徑,標記為最低優先級路徑。實際任務階段時,機器人在完成所有覆蓋路徑之后,再前往被刪去的足式區域。
52、步驟五、在實際任務階段,輪足機器人通過慣性測量單元(imu)、激光雷達等傳感器感知實際的環境信息,通過機身具備的電源管理系統和關節驅動報錯機制確定自身的電量狀態、故障信息等狀態信息,對異常情況設計對應的應急處理機制。具體如下:
53、對機器人實際任務階段的自身信息建立健康評估函數
54、
55、其中,hfk(t)∈[0,1]表示機器人k在t時刻的健康度評估值,該值越大表示狀態越佳;μ,,τ為電量和故障項的調節系數,滿足μ+τ=1;表示t時刻的剩余電量,為初始電量;v為非線性衰減因子(v≥1),用于強化低電量狀態的影響;δa表示第a類故障的嚴重程度權重,滿足∑δa=1;fi∈{0,1}為故障指示函數,當第a類故障真實發生時為1。
56、設定健康度容許最小值hfmin,對實際任務中機器人建立淘汰機制,根據健康評估函數設計重分配階段各機器人的理想任務量為
57、
58、其中,tak表示第k個機器人的目標任務量,ω={m|hfm>hfmin}表示有效機器人的集合。
59、定義任務量差值δ=tak-tfq。
60、異常情況一:當出現識別到與初始地圖記錄的障礙物不符合的情況時,通過通信模塊匯報回總系統,系統更新柵格地圖,將當前已完成覆蓋任務的區域視為初始子區域,當前機器人的位置視為當前拓展位置,重新執行第二步驟進行分區拓展,保存子區域結果;將當前已完成覆蓋任務的區域視為障礙物,計算每個機器人的目標任務量tak及其差值δ,優先從δ最大的子區域開始按照步驟三的方法進行重分配;繼續執行步驟四,完成本次異常處理。
61、異常情況二:當出現地形情況與初始地圖記錄不符的情況時,通過通信模塊匯報系統,系統更新柵格地圖,按照與異常情況一相同的邏輯執行步驟三和步驟四
62、異常情況三:某個機器人的hfk(t)≤hfmin,則將被其已覆蓋柵格包圍的自由柵格作為其最終覆蓋任務,將其已覆蓋區域及其最終覆蓋任務部分視為障礙物區域,按照異常情況一的處理方法執行步驟二到步驟四。
63、本發明的有益效果在于通過地形參數驅動的多機器人任務預分配與動態調整機制,結合輪足式平臺的混合運動特性,顯著提升了復雜環境下的區域覆蓋效率。基于改進stc算法的全覆蓋路徑生成方法,在保證100%覆蓋率的同時優化了路徑平滑性與能耗分布,通過輪式/足式區域的權重因子動態調整,有效減少冗余路徑長度。系統具備強魯棒性,能夠實時感知環境變化與機器人狀態,通過健康評估函數觸發任務重分配策略,確保在突發障礙、地形突變或機器人故障時仍能維持任務連續性。此外,輪足式平臺的多模態運動能力與路徑規劃深度協同,通過運動模式切換收益評估實現地形自適應決策,兼顧了高效移動與復雜地形適應性的雙重需求。該方法不僅適用于大規模機器人集群協作,其基于柵格地圖的通用化設計還便于與現有導航系統集成,為災害救援、區域巡檢等場景提供了高效可靠的解決方案。