一種面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法
【專利摘要】本發(fā)明公開了一種面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法,首先領航機器人檢測運行的前向區(qū)域是否有障礙物;如果無,則按原來隊形繼續(xù)運行;如果有,則多移動機器人系統(tǒng)進入避障狀態(tài),然后以廣播的形式告知所有跟隨機器人;最后跟隨機器人根據(jù)存儲的不同隊形信息以及領航機器人廣播的信息切換隊形,并確定在編隊隊形中的位置;重復上述過程。本發(fā)明采用模糊編隊及避障控制方法實現(xiàn)未知環(huán)境下的多移動機器人編隊功能,并能有效的避開障礙物運行。領航機器人檢測障礙物信息,并將隊形切換信息廣播到跟隨機器人,通過隊形切換達到避開障礙物目的,運用模糊編隊控制方法避免了因建模誤差帶來的控制失準等問題,并且易于實現(xiàn)。
【專利說明】一種面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法
【技術領域】
[0001]本發(fā)明涉及機器人控制領域,特別涉及一種面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法。
【背景技術】
[0002]機器人避障是指機器人導航過程中避開周圍的障礙物。隨著機器人技術的縱深發(fā)展及廣泛應用,對機器人的智能性提出了更高的要求。目前,移動機器人在實際問題中得到了越來越廣泛的應用。通過多移動機器人間的合作,可提高機器人系統(tǒng)在作業(yè)過程中的效率,進而當工作環(huán)境發(fā)生變化或機器人系統(tǒng)局部發(fā)生故障時,多移動機器人系統(tǒng)仍可通過本身具有的合作關系來完成預定的任務。然而,對不確定復雜環(huán)境、無法裝置各種監(jiān)測設備或由機器人局部故障引起的網絡拓撲結構的變化沒有較好地解決方案,從而使多移動機器人系統(tǒng)的服務對象或工作環(huán)境受到限制。首先,以往對于多機器人系統(tǒng)的研究大多集中在環(huán)境條件已知、可裝置各種監(jiān)測儀器的場景,機器人本身并沒有過多的傳感器、攝像頭等監(jiān)測設備,因此無法自主的感知外界環(huán)境的變化;其次,以往的通信組網系統(tǒng)可以較好的實現(xiàn)多機器人之間的通信,但當系統(tǒng)中的機器人因故障而停止運行或無法正常工作時,其網絡拓撲結構應當改變而不能自主改變,這就會影響多機器人之間的協(xié)作。在動態(tài)避障實時控制過程中往往由于存在局部最優(yōu)解,因此容易產生死鎖現(xiàn)象,因而可能使移動機器人在到達目標點之前就停留在局部最優(yōu)點?;蛘卟荒芫_地預測障礙物運動加速度,不便于避障的路徑規(guī)劃。
[0003]因此急需一種多移動機器人系統(tǒng)的動態(tài)避障、編隊控制方法。
【發(fā)明內容】
[0004]有鑒于此,本發(fā)明所要解決的技術問題是提供一種多移動機器人系統(tǒng)的動態(tài)避障方法,該方法采用一種模糊編隊及避障控制方法來實現(xiàn)多移動機器人系統(tǒng)的控制。
[0005]本發(fā)明的目的是這樣實現(xiàn)的:
[0006]本發(fā)明提供的一種面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法,包括以下步驟:
[0007]S1:領航機器人檢測運行的前向區(qū)域是否有障礙物;
[0008]S2:如果無,則按原來隊形的編隊狀態(tài)繼續(xù)運行;
[0009]S3:如果有,則多移動機器人系統(tǒng)進入避障狀態(tài),并以廣播的形式告知所有跟隨機器人;
[0010]S4:跟隨機器人根據(jù)存儲的不同隊形信息以及領航機器人廣播的信息切換隊形,并確定在編隊隊形中的位置;
[0011]S5:重發(fā)步驟 S1-S5。
[0012]進一步,所述隊形信息包括與領航機器人保持的距離和角度信息。
[0013]進一步,所述避障狀態(tài)采用領航機器人避障模糊控制,所述領航機器人避障模糊控制的具體步驟如下:
[0014]S311:通過安裝在領航機器人不同方向的傳感器獲取障礙物的距離信息和方向信息;
[0015]S312:將距離信息和方向信息輸入到模糊推理機進行模糊計算得到模糊控制策略;
[0016]S313:模糊控制策略反模糊化并輸出。
[0017]進一步,所述模糊避障控制策略包括轉向信息和轉速信息,所述轉速信息為勻速,所述轉向信息是通過以下模糊推理機來實現(xiàn)的:
[0018]S321:根據(jù)左方、前方、右方三個方向上的傳感器獲取的障礙物距離信息和實際經驗設定模糊推理規(guī)則庫得到決策值:
[0019]若障礙物在左方、前方、右方的距離隸屬度分別為近處、近處、近處,則決策為右轉
U I ;
[0020]若障礙物在左方、前方、右方的距離隸屬度分別為近處、近處、遠處,則決策為右轉μ 2 ;
[0021]若障礙物在左 方、前方、右方的距離隸屬度分別為近處、遠處、遠處,則決策為右轉μ 3 ;
[0022]若障礙物在左方、前方、右方的距離隸屬度分別為遠處、近處、近處,則決策為左轉y 4 ;
[0023]若障礙物在左方、前方、右方的距離隸屬度分別為遠處、遠處、近處,則決策為左轉
P 5 ?
[0024]若障礙物在左方、前方、右方的距離隸屬度分別為遠處、遠處、遠處,則決策為前行
μ6;
[0025]若障礙物在左方、前方、右方的距離隸屬度分別為遠處、近處、遠處,則決策為左轉
U 7 ;
[0026]若障礙物在左方、前方、右方的距離隸屬度分別為近處、遠處、近處,則決策為前行
μ8;
[0027]其中,左方、前方、右方均是障礙物相對于領航機器人的相對方向;所述近處、遠處根據(jù)實際情況設定障礙物相對于領航機器人的距離;
[0028]S322:按以下方式對輸出的決策值進行計算得到模糊輸出離散值:
[0029]μ TL = μ 4 V μ 5 V μ 7
[0030]μ ΤΕ = μ!ν μ 2 V μ 3[0031 ]Ji τζ= U6V U g
[0032]其中,TL、TR、TZ分別表示左轉、右轉、前行,符號V表示max運算;
[0033]S323:將模糊輸出離散值組成模糊集合為μ = { μ TL, μ ΤΕ, μ τζ},根據(jù)最大隸屬度法得到控制量為max { μ TL, μ ΤΕ, μ τζ},
[0034]其中,當TL的隸屬度μ I最大時輸出TL控制量讓小車左轉;當TZ的隸屬度μ τζ最大時,輸出TZ控制量小車方向不變;當TR的隸屬度μ τκ最大時,輸出TR控制量小車右轉。
[0035]進一步,所述編隊狀態(tài)采用跟隨機器人局部跟隨模糊控制,所述跟隨機器人局部跟隨模糊控制的控制策略獲取的具體步驟如下:
[0036]S211:通過安裝在跟隨機器人不同方向的傳感器獲取局部領航機器人的距離信息和方向信息;
[0037]S212:將距離信息和方向信息輸入到模糊推理機進行模糊計算得到模糊編隊控制策略;
[0038]S213:模糊控制策略反模糊化并輸出。
[0039]進一步,所述模糊編隊控制采用跟隨機器人局部跟隨模糊控制;所述模糊編隊控制策略包括轉向信息和轉速信息,所述轉向信息和轉速信息是通過以下模糊推理機來實現(xiàn)的:
[0040]若在左方、前方、右方的距離隸屬度分別為距離遠、距離近、距離近,則決策為右轉、勻速;
[0041]若在左方、前方、右方的距離隸屬度分別為距離很遠、距離近、距離近,則決策為右轉、勻速;
[0042]若在左方、前方、右方的距離隸屬度分別為距離遠、距離遠、距離近,則決策為右轉、勻速;
[0043]若在左方、前方、右方的距離隸屬度分別為距離很遠、距離很遠、距離近,則決策為右轉、勻速;
[0044]若在左方、前方、右方的距離隸屬度分別為距離很遠、距離遠、距離近,則決策為右轉、勻速;
[0045]若在左方、前方、右方的距離隸屬度分別為距離很遠、距離近、距離遠,則決策為右轉、勻速;
[0046]若在左方、前方、右方的距離隸屬度分別為距離很遠、距離很遠、距離遠,則決策為右轉、加速;
[0047]若在左方、前方、右方的距離隸屬度分別為距離很遠、距離遠、距離遠,則決策為右轉、加速;
[0048]若在左方、前方、右方的距離隸屬度分別為距離近、距離近、距離遠,則決策為左轉、勻速;
[0049]若在左方、前方、右方的距離隸屬度分別為距離近、距離近、距離很遠,則決策為左轉、勻速;
[0050]若在左方、前方、右方的距離隸屬度分別為距離遠、距離近、距離很遠,則決策為左轉、勻速;
[0051]若在左方、前方、右方的距離隸屬度分別為距離近、距離遠、距離遠,則決策為左轉、勻速;
[0052]若在左方、前方、右方的距離隸屬度分別為距離近、距離很遠、距離很遠,則決策為左轉、勻速;
[0053]若在左方、前方、右方的距離隸屬度分別為距離近、距離遠、距離很遠,則決策為左轉、勻速;
[0054]若在左方、前方、右方的距離隸屬度分別為距離遠、距離很遠、距離很遠,則決策為左轉、加速;[0055]若在左方、前方、右方的距離隸屬度分別為距離遠、距離遠、距離很遠,則決策為左轉、加速;
[0056]若在左方、前方、右方的距離隸屬度分別為距離近、距離近、距離近,則決策為前行、減速;
[0057]若在左方、前方、右方的距離隸屬度分別為距離遠、距離近、距離遠,則決策為前行、勻速;
[0058]若在左方、前方、右方的距離隸屬度分別為距離很遠、距離近、距離很遠,則決策為前行、勻速;
[0059]若在左方、前方、右方的距離隸屬度分別為距離很遠、距離遠、距離很遠,則決策為前行、加速;
[0060]若在左方、前方、右方的距離隸屬度分別為距離遠、距離遠、距離遠,則決策為前行、加速;
[0061]若在左方、前方、右方的距離隸屬度分別為距離很遠、距離遠、距離很遠,則決策為前行、加速;
[0062]其中,左方、前方、右方均是領航機器人相對于跟隨機器人的相對方向,所述距離近、距離遠、距離很遠根據(jù)實際情況設定領航機器人相對于跟隨機器人的距離。
[0063]本發(fā)明的優(yōu)點在于:本發(fā)明采用模糊編隊及避障控制方法實現(xiàn)未知環(huán)境下的多移動機器人編隊功能,并能有效的避開障礙物運行。領航機器人檢測障礙物信息,并將隊形切換信息廣播到跟隨機器人,通過隊形切換達到避開障礙物目的,運用模糊編隊控制方法避免了因建模誤差帶來的控制失準等問題,并且易于實現(xiàn)。
【專利附圖】
【附圖說明】
[0064]為了使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面將結合附圖對本發(fā)明作進一步的詳細描述,其中:
[0065]圖1為本發(fā)明實施例提供的面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法流程圖;
[0066]圖2為本發(fā)明實施例提供的障礙物對于小車的方向隸屬度函數(shù)示意圖;
[0067]圖3為本發(fā)明實施例提供的障礙物對于小車的距離隸屬度函數(shù)示意圖;
[0068]圖4為本發(fā)明實施例提供的領航小車的輸出隸屬度函數(shù)示意圖;
[0069]圖5為本發(fā)明實施例提供的領航小車對于跟蹤小車的方向隸屬度函數(shù)示意圖;
[0070]圖6為本發(fā)明實施例提供的領航小車對于跟蹤小車的距離隸屬度函數(shù)示意圖;
[0071]圖7為本發(fā)明實施例提供的輸出量T的隸屬度函數(shù)示意圖;
[0072]圖8為本發(fā)明實施例提供的輸出量S的隸屬度函數(shù)示意圖。
【具體實施方式】
[0073]以下將結合附圖,對本發(fā)明的優(yōu)選實施例進行詳細的描述;應當理解,優(yōu)選實施例僅為了說明本發(fā)明,而不是為了限制本發(fā)明的保護范圍。
[0074]圖1為本發(fā)明實施例提供的面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法流程圖;圖2為本發(fā)明實施例提供的障礙物對于小車的方向隸屬度函數(shù)示意圖;圖3為本發(fā)明實施例提供的障礙物對于小車的距離隸屬度函數(shù)示意圖;圖4為本發(fā)明實施例提供的領航小車的輸出隸屬度函數(shù)示意圖;圖5為本發(fā)明實施例提供的跟蹤小車的方向隸屬度函數(shù)示意圖;圖6為本發(fā)明實施例提供的跟蹤小車的距離隸屬度函數(shù)示意圖;圖7為本發(fā)明實施例提供的輸出量T的隸屬度函數(shù)示意圖;圖8為本發(fā)明實施例提供的輸出量S的隸屬度函數(shù)示意圖,如圖所示:本發(fā)明提供的一種面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法,包括以下步驟:
[0075]S1:領航機器人檢測運行的前向區(qū)域是否有障礙物;
[0076]S2:如果無,則按原來隊形的編隊狀態(tài)繼續(xù)運行;
[0077]S3:如果有,則多移動機器人系統(tǒng)進入避障狀態(tài),并以廣播的形式告知所有跟隨機器人;
[0078]S4:跟隨機器人根據(jù)存儲的不同隊形信息以及領航機器人廣播的信息切換隊形,并確定在編隊隊形中的位置;
[0079]S5:重發(fā)步驟 S1-S5。
[0080]所述隊形包括與領航機器人保持的距離和角度信息。
[0081]所述避障狀態(tài)包括領航機器人避障模糊控制,所述領航機器人避障模糊控制的具體步驟如下:
[0082]S311:通過安裝在領航機器人不同方向的傳感器獲取距障礙物的距離信息和方向
信息;
[0083]S312:將距離信息和方向信息輸入到模糊推理機進行模糊計算得到模糊控制策略;
[0084]S313:模糊控制策略反模糊化并輸出。
[0085]所述模糊控制策略包括轉向信息和轉速信息,所述轉速信息為勻速,所述轉向信息是通過以下模糊推理機來實現(xiàn)的:
[0086]所述模糊推理機采用多輸入單輸出的曼丹尼模糊控制器,其控制規(guī)則如下:
[0087]If X1 is A11 and X2 is A21 and...xp is Ap1, then μ is U1 ;
[0088]If X1 is A12 and X2 is A22 and...xp is Ap2, then μ is U2 ;
[0089]…
[0090]If X1Is A111 and x2is A2n and...xp is Apn, then μ is Un ;
[0091]其中,xi,x2,…xp是控制器的輸入變量,其論域為X1, X2,…XP,A/ e F(Xj), i =1,2,…p,j = l,2,…η是輸入變量Xi的模糊集合,μ是輸出變量,其論域為U。
[0092]根據(jù)本實施例提供的多移動機器人系統(tǒng)的實際情況,所述模糊控制策略包括轉向信息和轉速信息,所述轉向信息和轉速信息是通過以下模糊推理機來實現(xiàn)的:
[0093]S321:根據(jù)左方、前方、右方三個方向上的傳感器獲取的障礙物距離信息和實際經驗設定模糊推理規(guī)則庫得到決策值:根據(jù)實際經驗按以下表所設定的模糊推理規(guī)則庫得到決策值Y:
[0094]
【權利要求】
1.一種面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法,其特征在于:包括以下步驟: S1:領航機器人檢測運行的前向區(qū)域是否有障礙物; S2:如果無,則按原來隊形的編隊狀態(tài)繼續(xù)運行; S3:如果有,則多移動機器人系統(tǒng)進入避障狀態(tài),并以廣播的形式告知所有跟隨機器人; 54:跟隨機器人根據(jù)存儲的不同隊形信息以及領航機器人廣播的信息切換隊形,并確定在編隊隊形中的位置; 55:重發(fā)步驟S1-S5。
2.根據(jù)權利要求1所述的面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法,其特征在于:所述隊形信息包括與領航機器人保持的距離和角度信息。
3.根據(jù)權利要求 1所述的面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法,其特征在于:所述避障狀態(tài)采用領航機器人避障模糊控制,所述領航機器人避障模糊控制的控制策略獲取的具體步驟如下: 5311:通過安裝在領航機器人不同方向的傳感器獲取障礙物的距離信息和方向信息; 5312:將距離信息和方向信息輸入到模糊推理機進行模糊計算得到模糊避障控制策略; 5313:模糊控制策略反模糊化并輸出。
4.根據(jù)權利要求3所述的面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法,其特征在于:所述模糊避障控制策略包括轉向信息和轉速信息,所述轉速信息為勻速,所述轉向信息是通過以下模糊推理機來實現(xiàn)的: 5321:根據(jù)左方、前方、右方三個方向上的傳感器獲取的障礙物距離信息和實際經驗設定模糊推理規(guī)則庫得到決策值: 若障礙物在左方、前方、右方的距離隸屬度分別為近處、近處、近處,則決策為右轉U1 ; 若障礙物在左方、前方、右方的距離隸屬度分別為近處、近處、遠處,則決策為右轉μ2; 若障礙物在左方、前方、右方的距離隸屬度分別為近處、遠處、遠處,則決策為右轉μ 3 ; 若障礙物在左方、前方、右方的距離隸屬度分別為遠處、近處、近處,則決策為左轉U4; 若障礙物在左方、前方、右方的距離隸屬度分別為遠處、遠處、近處,則決策為左轉μ 5 ; 若障礙物在左方、前方、右方的距離隸屬度分別為遠處、遠處、遠處,則決策為前行μ6; 若障礙物在左方、前方、右方的距離隸屬度分別為遠處、近處、遠處,則決策為左轉μ 7 ; 若障礙物在左方、前方、右方的距離隸屬度分別為近處、遠處、近處,則決策為前行μ8; 其中,左方、前方、右方均是障礙物相對于領航機器人的相對方向,所述近處、遠處根據(jù) 實際情況設定障礙物相對于領航機器人的距離; 5322:按以下方式對輸出的決策值進行計算得到模糊輸出離散值: μ TL = μ 4 V μ 5 V μ 7 y Te — y I y 2 3 V- JZ = y 6 V U g 其中,TL、TR、TZ分別表示左轉、右轉、前行,符號V表示max運算; 5323:將模糊輸出離散值組成模糊集合為μ = { μ TL, μΤΕ, μ τζ},根據(jù)最大隸屬度法得到控制量為max{ μTL,μTR,μTZ}
其中,當TL的隸屬度μ E最大時輸出TL控制量讓小車左轉;當TZ的隸屬度μτζ最大時,輸出TZ控制量小車方向不變;當TR的隸屬度μ τκ最大時,輸出TR控制量小車右轉。
5.根據(jù)權利要求1所述的面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法,其特征在于:所述編隊狀態(tài)采用跟隨機器人局部跟隨模糊控制,所述跟隨機器人局部跟隨模糊控制的控制策略獲取的具體步驟如下: S211:通過安裝在跟隨機器人不同方向的傳感器獲取局部領航機器人的距離信息和方向信息; S212:將距離信息和方向信息輸入到模糊推理機進行模糊計算得到模糊編隊控制策略; S213:模糊控制策略反模糊化并輸出。
6.根據(jù)權利要求5所述的面向多移動機器人系統(tǒng)的模糊編隊及避障控制方法,其特征在于:所述模糊編隊控制策略采用跟隨機器人局部跟隨模糊控制;所述模糊編隊控制策略包括轉向信息和轉速信息,所述轉向信息和轉速信息是通過以下模糊推理機來實現(xiàn)的: 若在左方、前方、右方的距離隸屬度分別為距離遠、距離近、距離近,則決策為右轉、勻速; 若在左方、前方、右方的距離隸屬度分別為距離很遠、距離近、距離近,則決策為右轉、勻速; 若在左方、前方、右方的距離隸屬度分別為距離遠、距離遠、距離近,則決策為右轉、勻速; 若在左方、前方、右方的距離隸屬度分別為距離很遠、距離很遠、距離近,則決策為右轉、勻速; 若在左方、前方、右方的距離隸屬度分別為距離很遠、距離遠、距離近,則決策為右轉、勻速; 若在左方、前方、右方的距離隸屬度分別為距離很遠、距離近、距離遠,則決策為右轉、勻速; 若在左方、前方、右方的距離隸屬度分別為距離很遠、距離很遠、距離遠,則決策為右轉、加速; 若在左方、前方、右方的距離隸屬度分別為距離很遠、距離遠、距離遠,則決策為右轉、加速; 若在左方、前方、右方的距離隸屬度分別為距離近、距離近、距離遠,則決策為左轉、勻速; 若在左方、前方、右方的距離隸屬度分別為距離近、距離近、距離很遠,則決策為左轉、勻速; 若在左方、前方、右方的距離隸屬度分別為距離遠、距離近、距離很遠,則決策為左轉、勻速; 若在左方、前方、右方的距離隸屬度分別為距離近、距離遠、距離遠,則決策為左轉、勻速; 若在左方、前方、右方的距離隸屬度分別為距離近、距離很遠、距離很遠,則決策為左轉、勻速; 若在左方、前方、右方的距離隸屬度分別為距離近、距離遠、距離很遠,則決策為左轉、勻速; 若在左方、前方、右方的距離隸屬度分別為距離遠、距離很遠、距離很遠,則決策為左轉、加速; 若在左方、前方、右方的距離隸屬度分別為距離遠、距離遠、距離很遠,則決策為左轉、加速; 若在左方、前方、右方的距離隸屬度分別為距離近、距離近、距離近,則決策為前行、減速; 若在左方、前方、右方的距離隸屬度分別為距離遠、距離近、距離遠,則決策為前行、勻速; 若在左方、前方、右方的距離隸屬度分別為距離很遠、距離近、距離很遠,則決策為前行、勻速; 若在左方、前方、右方的距離隸屬度分別為距離很遠、距離遠、距離很遠,則決策為前行、加速; 若在左方、前方、右方的距離隸屬度分別為距離遠、距離遠、距離遠,則決策為前行、加速; 若在左方、前方、右方的距離隸屬度分別為距離很遠、距離遠、距離很遠,則決策為前行、加速; 其中,左方、前方、右方均是領航機器人相對于跟隨機器人的相對方向,所述距離近、距離遠、距離很遠根據(jù)實際情況設定領航機器人相對于跟隨機器人的距離。
【文檔編號】G05D1/02GK103455033SQ201310402941
【公開日】2013年12月18日 申請日期:2013年9月6日 優(yōu)先權日:2013年9月6日
【發(fā)明者】陳剛, 岳元龍, 宋永端, 林青, 馮峨寧 申請人:重慶大學