李玉菡,韓 晶,任 兵,游昌欣
(中北大學, 太原 030000)
隨著計算機和互聯(lián)網技術的快速發(fā)展,移動機器人在軍事[1]、醫(yī)療[2-3]以及對人類有害環(huán)境[4]等領域的應用越來越廣泛。盡管移動機器人在許多領域取得了顯著進展,但在復雜未知的非結構化環(huán)境中完全自主的運轉仍然難以實現(xiàn)。例如,移動機器人在遇到突發(fā)情況、環(huán)境變化以及密集障礙物時易出現(xiàn)徘徊抖動現(xiàn)象,甚至停滯[5]。
共享控制是指操作者、自主控制系統(tǒng)之間進行協(xié)調,共同對遠端的移動機器人進行控制的策略[6]。共享控制現(xiàn)已廣泛應用于遠程醫(yī)療[7]、智能輪椅控制[8]、空間操作[9]、輔助駕駛[10]以及無人機控制[11]等多個領域。根據操作者和機器人的控制權分配方式, 可以分為切換控制權、固定控制權重以及動態(tài)控制權重的共享控制。
切換控制權的共享控制是指根據切換條件輪流控制機器人運動。Xu Yang等[12]用基于運動圖像的BCI和計算機視覺指導,通過共享控制來實現(xiàn)對靈巧機械臂的控制,但在每一時刻移動機器人僅由操作者或移動機器人單獨控制。固定控制權重的共享控制在不同場景下,通過進行多次實驗或仿真從而確定最優(yōu)控制比例。張亞坤等[13]面對環(huán)月軌道遙操作交會對接最終平移段的軌道控制上的問題時提出共享控制,結合操縱人員的手動控制操作特性, 推導共享控制的權重系數(shù),形成共享控制策略。這種方法在不同場景下需要多次進行實驗確定權重系數(shù),不具有普遍性。動態(tài)控制權重的共享控制是在不同條件下動態(tài)調整操作者和機器之間的控制權重大小,并根據權重比例函數(shù)將兩者指令融合實現(xiàn)共享控制。高翔等[14]通過將安全性、平滑度、方向性3個影響因素線性加權組合,以實現(xiàn)動態(tài)調整共享控制的權重,然而這種動態(tài)調節(jié)權重的方法僅通過簡單的線性加權方式。
因此,本研究中將遙操作技術和機器人自主控制技術相結合,提出基于模糊邏輯的共享控制方法來動態(tài)調整共享控制權重,以避障系數(shù)和安全系數(shù)為輸入,共享控制權重為輸出,充分發(fā)揮操作者的認知決策能力和機器人的精細控制能力,使移動機器人根據與周圍障礙物的距離和自身的速度信息,動態(tài)調節(jié)操作者指令和自主控制之間的權重 ,從而提高移動機器人在應對突發(fā)狀況和復雜環(huán)境下導航的穩(wěn)定性和精確度。
為了提高移動機器人在復雜環(huán)境條件下的導航能力,在移動機器人具有自主導航的情況下,加入操作者的決策能力。共享控制器接收操作者控制指令和自主控制指令,實現(xiàn)對機器人系統(tǒng)的控制,其關鍵在于合理分配兩者之間的控制權重。模糊控制器通過機器人狀態(tài)信息和環(huán)境信息來動態(tài)調節(jié)權重比例,從而更好地適應環(huán)境,提高導航效率。本文中提出的基于模糊邏輯的共享控制系統(tǒng)如圖1所示。
圖1 基于模糊邏輯的共享控制系統(tǒng)框圖
基于模糊邏輯的共享控制系統(tǒng)主要包含人機交互系統(tǒng)、機器人系統(tǒng)和共享控制器3個部分。
人機交互系統(tǒng):操作者使用遙控設備對移動機器人遙操作,例如前進、后退、旋轉等具體的運動行為,對移動機器人進行遠程控制和干預。
機器人系統(tǒng):移動機器人會根據地圖信息和已有的實時激光雷達傳感器信息建立起全局地圖和局部地圖,并設計出從起始點到目標點的全局路徑和最優(yōu)局部路徑。路徑信息會以線速度和角速度的形式傳輸給控制器,從而實現(xiàn)機器人的自主導航功能,得到自主控制指令。
共享控制器:將環(huán)境信息和移動機器人的狀態(tài)信息輸入模糊控制器,根據建立的模糊規(guī)則,輸出共享控制權重。最后基于權重的決策函數(shù)[15]接收操作者控制指令、自主控制指令及共享權重,輸出對移動機器人的共享控制指令?;跈嘀氐臎Q策函數(shù)為:
U(v,ω)=ηUh(v,ω)+(1-η)Ur(v,ω)
(1)
式(1)中:U(v,ω)為共享控制器最終發(fā)送給機器人的速度信息;Uh(v,ω)為操作者控制指令的速度信息;Ur(v,ω)為機器人自主控制指令的速度信息;η為共享控制權重,根據η的值可以將共享控制分為3個階段:
自主控制階段(η=0):移動機器人根據傳感器獲取的數(shù)據執(zhí)行任務,操作者不需要直接參與任務的執(zhí)行。
遙操作階段(η=1):移動機器人由人工操作者直接驅動,操作者可以通過遙控器對機器人進行遠程控制和干預。
共享控制階段(η∈(0,1)):操作者和機器人共同參與任務的執(zhí)行,通過共享控制系數(shù)來協(xié)調各自的動作,以實現(xiàn)更高效、準確的任務完成。
本研究中采用模糊邏輯方法來合理分配操作者和機器人之間的控制權重,以避障系數(shù)和安全系數(shù)作為輸入,共享控制權重作為輸出。首先,選取合適的輸入、輸出變量;然后,將輸入的控制變量進行模糊化處理,轉化為模糊量;再根據實際情況建立模糊規(guī)則,根據建立的模糊規(guī)則進行模糊化推理,得到輸出控制變量的模糊量;最后將輸出的模糊量進行解模糊處理,轉換為精確的值并進行輸出。
為能同時考慮到周圍的環(huán)境因素和移動機器人的運動信息,設計了兩輸入單輸出的二維模糊控制器,如圖2所示,以避障系數(shù)和安全系數(shù)為輸入,共享控制系數(shù)為輸出。
避障系數(shù):取決于移動機器人距離最近障礙物的距離信息,表示移動機器人避障可靠性,表達式為:
(2)
式(2)中:d為激光雷達傳感器獲得的機器人到障礙物的最短距離;L為激光雷達傳感器的可監(jiān)測距離。如果移動機器人與障礙物之間的距離在傳感器可檢測范圍之內,且機器人與障礙物之間的距離越來越小時,避障系數(shù)會減小,移動機器人自主避障能力逐漸降低。如果障礙物在傳感器可檢測范圍之外,移動機器人自主避障可靠度很高,避障系數(shù)飽和到1。
安全系數(shù)[16]:表示移動機器人運動的安全性和穩(wěn)定性,其表達式為:
(3)
式(3)中:p為常量系數(shù),由設計者根據應用場景和實際情況而定;ω為移動機器人的角速度;ωm為移動機器人的最大角速度。當機器人角速度頻繁變化且較高時,安全系數(shù)較低,表明機器人可能出現(xiàn)突發(fā)情況或者因傳感器無法正確識別和算法不足而出現(xiàn)徘徊抖動現(xiàn)象。當移動機器人角速度較低時,此時機器人正常運動,安全系數(shù)較高。
圖2 模糊控制器組成框圖
將輸入控制變量進行模糊化處理轉化為模糊量。輸入變量避障系數(shù)Ea、安全系數(shù)Es和輸出變量共享控制權重η的變化區(qū)間為[0,1],將輸入、輸出變量變換到模糊論域為{0,0.25,0.5,0.75,1}。根據避障系數(shù)、安全系數(shù)和共享控制權重的大小將其劃分為{VS,S,M,B,VB}5個模糊集,并定義為{很小,小,中,大,很大}。
常用的隸屬度函數(shù)有高斯型、S形、梯形、三角形和正態(tài)分布形等。隸屬度函數(shù)一般在整個范圍內均勻分布, 且隸屬度函數(shù)之間的重疊區(qū)域通常為 20%~55%,來提高魯棒性。
為了使結果更加符合實際情況,且三角形隸屬函數(shù)計算簡單,可以適用于多種不同類型的模糊集合。因此結合經驗并經過分析和推理,對于輸入變量避障系數(shù)Ea、安全系數(shù)Es和輸出變量共享控制權重η的隸屬度函數(shù)取三角形隸屬度函數(shù),隸屬度函數(shù)圖如圖3所示。
圖3 輸入、輸出變量的隸屬度函數(shù)圖
當機器人與障礙物之間的距離d大于激光雷達傳感器可監(jiān)測距離L時,避障系數(shù)Ea恒等于1,意味著機器人與障礙物相距很遠,完全可以依靠機器人自主控制規(guī)劃路徑,實現(xiàn)自主導航。此時應減小共享控制權重,使機器人自主控制在共享控制中占據主導地位。
當機器人與障礙物之間的距離d小于激光雷達傳感器可監(jiān)測距離L時,隨著機器人對障礙物的靠近,避障系數(shù)Ea逐漸減小,有可能因智能控制算法陷入局部極小點或者地圖的不精準映射導致機器人出現(xiàn)徘徊抖動、停滯現(xiàn)象。此時應增加共享控制權重,使操作者控制在共享控制中占據主導地位,可以直接調整機器人的位置,使其重新規(guī)劃一條新的路徑。
當機器人的角速度ω較高時,安全系數(shù)Es較低,表明可能因突發(fā)情況或者傳感器和算法不足,使機器人一直根據周圍環(huán)境信息進行局部路徑規(guī)劃,從而出現(xiàn)徘徊抖動現(xiàn)象,此時應增大操作者控制的占比權重,提高共享控制權重。
當機器人的角速度ω較低時,安全系數(shù)Es較高,意味著移動機器人平穩(wěn)、安全地行駛,不需要操作者過多介入,應降低操作者控制的占比權重,減小共享控制權重。
根據以上條件,建立的共享控制權重的模糊規(guī)則表如表1所示。
表1 共享控制權重η的模糊規(guī)則
根據建立的模糊規(guī)則表進行模糊推理。常用的模糊推理方法為Mamdani 法和Takagi-Sugeno法。Mamdani推理方法經模糊規(guī)則推理后得到的輸出是離散的模糊集合,適用于控制系統(tǒng)中的推理。Takagi-Sugeno推理方法的輸出量是輸入量的線性函數(shù),推理結果是清晰值,適用于專家系統(tǒng)中的知識表示和推理。因此,本文中根據建立的模糊規(guī)則表,使用Mamdani法進行模糊推理。
去模糊化是模糊推理機中重要的一步,也稱解模糊化。去模糊化的方法有很多種,最常用的有最大隸屬度法、重心法和加權平均法 。重心法簡單且計算速度快,適用于實時控制和處理非線性系統(tǒng)推理問題。因此使用重心法對模糊推理的模糊量進行去模糊化處理,如式(4)所示,將其轉化為精確值輸出。
(4)
式(4)中:u為輸出精確值;μN(x)為隸屬度函數(shù);N為模糊合集;x為輸出量。
通過模糊邏輯控制工具建立模糊控制系統(tǒng),得到的模糊控制器輸入輸出曲面如圖4所示。在輸入變量避障系數(shù)Ea、安全系數(shù)Es的不同輸入情況下,通過共享控制權重η的變化情況反映模糊控制器對不同輸入的響應情況,很好地表征了模糊控制器的輸入輸出關系。
圖4 模糊控制器輸入輸出曲面
為了驗證基于模糊邏輯共享控制方法的合理性和有效性,搭建了地面移動機器人實驗場景,如圖5所示。該場景大小為3.46 m×3.46 m,移動機器人大小為0.18 m×0.12 m×0.13 m,實驗場景包含密集障礙物、狹窄通道以及突發(fā)情況等。藍色虛線處為密集障礙物,障礙物間距離為0.35~0.5 m;黑色虛線處為狹窄通道,該3個狹窄通道尺寸均為0.3 m。在地圖構建階段,該實驗場景紅色框線中沒有障礙物;在移動機器人實際運動過程中,在紅色框線中放入障礙物,以模擬突發(fā)情況。
移動機器人遙操作控制端如圖6所示。移動機器人搭載激光雷達傳感器和ROS(robot operating system)機器人操作系統(tǒng),通過無線局域網和SSH(secure shell)遠程登陸移動機器人,操作者在Ubuntu系統(tǒng)Rviz中觀看移動機器人傳達回來的雷達地圖,可通過遙控設備控制遠端移動機器人。
圖6 移動機器人遙操作控制端
遙操作控制時,移動機器人僅由操作者根據傳達回來的雷達地圖使用遙控設備直接遠端控制;移動機器人自主導航控制時,自主導航系統(tǒng)會根據地圖信息和已有的實時的激光雷達傳感器信息規(guī)劃路徑,路徑信息會以速度和角速度的形式傳輸給控制器,從而實現(xiàn)自主導航;基于模糊邏輯共享控制移動機器人時,模糊控制器接收導航過程中機器人的速度信息和與障礙物的距離信息,并輸出共享控制權重給基于權重的決策函數(shù),基于權重的決策函數(shù)接收操作者控制指令和機器人自主控制指令并根據共享控制權重輸出共享控制指令發(fā)送給移動機器人。實驗架構圖如圖7所示。
設置起點和終點,使移動機器人在基于遙操作、基于自主控制和基于模糊邏輯的共享控制下避開障礙物從起點運動到終點,最終從移動機器人軌跡圖、速度變化、運行時間和軌跡長度對比實驗結果,進行分析驗證。
圖7 實驗架構圖
在ROS中, odom(odometry)話題是一個基于里程計的傳感器數(shù)據話題,包含了移動機器人的位置信息。通過訂閱odom話題,可以實時得到移動機器人的坐標變化。移動機器人通過遙操作、自主控制和模糊邏輯共享控制從起點導航到終點的軌跡圖如圖8所示。
基于遙操作方法的軌跡長度為7.851 4 m,其軌跡大多為直線,并且軌跡波動較大;基于自主控制方法的軌跡長度為10.087 4 m,面對突發(fā)情況和通過狹窄通道、密集障礙物時,在其中紅線方框處明顯出現(xiàn)徘徊抖動現(xiàn)象,故其軌跡長度最長;基于模糊邏輯共享控制方法的軌跡長度為7.651 4 m,與基于自主控制方法相比,明顯軌跡平滑度更高,抖動更少,路徑更短。與之后的速度分析相對應,線速度和角速度波動頻率低,體現(xiàn)在導航過程中就是軌跡曲線更加平滑。
在ROS中,cmd_vel(control velocity)話題是一個用于發(fā)布速度命令的話題,移動機器人底盤接收到來自cmd_vel話題的速度消息,并將其轉換為相應的控制信號發(fā)送給電機或伺服系統(tǒng)進行控制。通過訂閱cmd_vel話題,可以實時得到移動機器人的線速度和角速度信息。移動機器人通過遙操作、自主控制和模糊邏輯共享控制從起點導航到終點的速度信息如圖9所示。其中速度變化圖中紅色曲線為角速度變化曲線,角速度控制機器人的方向,黑色曲線為線速度變化曲線,線速度控制機器人的速度大小。
圖8 移動機器人導航軌跡圖
圖9 移動機器人導航速度變化圖
遙操作時,僅由操作者的意圖控制,其線速度和角速度變化主要集中在遇到突發(fā)情況以及通過狹窄通道和密集障礙物時,且其線速度和角速度在某段時間保持不變,對應之前的軌跡大多為直線,運行時間為223 s,耗時最長;基于自主控制的線速度與角速度波動變化頻率較高,與軌跡圖分析相對應,存在較多調整轉向、前進后退的動作,運行時間為87 s?;谀:壿嫷墓蚕砜刂凭€速度和角速度平穩(wěn)輸出,無頻繁變化,軌跡圖整體曲線也較為平滑,其共享控制權重在面對突發(fā)情況和通過狹窄通道和密集障礙物時能達到 0.6~0.7左右,運行時間為80 s,使移動機器人耗時最短且安全平穩(wěn)地導航到達終點。
通過模糊共享控制方法使移動機器人從起點導航到終點過程中,模糊控制器接收避障系數(shù)和安全系數(shù),根據建立的模糊規(guī)則推理得到的共享控制權重如圖10所示。初始障礙物距離移動機器人較遠,機器人處于安全狀態(tài),不會發(fā)生徘徊抖動現(xiàn)象,不需要操作者參與,故共享控制系數(shù)較低,操作者參與較少。隨著移動機器人的運動,移動機器人相繼通過狹窄通道和密集障礙物,并在中途偶遇突發(fā)情況,出現(xiàn)一個之前創(chuàng)建地圖時未出現(xiàn)的一個障礙物。在這些情況下,移動機器人易出現(xiàn)徘徊抖動甚至停滯現(xiàn)象,故共享控制系數(shù)較高,增加操作者的控制權重,以保證移動機器人可以順利通過。
圖10 基于模糊邏輯的共享控制權重變化圖
綜上所述,從移動機器人軌跡圖、速度變化、運行時間和軌跡長度的實驗結果方面,驗證了基于模糊邏輯共享控制方法的有效性和平穩(wěn)性,同時保證了移動機器人導航具有更高的控制精度和安全性。
針對非結構化環(huán)境、障礙物密集和突發(fā)情況,移動機器人自主導航時會出現(xiàn)徘徊抖動甚至停留現(xiàn)象的問題,在移動機器人具有自主導航能力的基礎上,融入操作者的決策與控制能力,提出了一種基于模糊邏輯的共享控制方法,以避障系數(shù)和安全系數(shù)為輸入,共享控制權重為輸出,動態(tài)調整操作者和移動機器人的控制權重。實驗結果表明:基于模糊邏輯的共享控制方法,可以在較短時間以更優(yōu)路徑導航到目標點,具有較好的控制精度、平穩(wěn)性和交互性。