[摘要]利用Player/Gazebo可以在3D環境中對單個或多個移動機器人的定位、路徑規劃、建圖等導航算法進行高效的仿真。本文在簡介Player/Gazebo仿真環境的基礎上,對移動機器人路徑規劃進行了討論,利用Player/Gazebo的服務器/客戶端模式,實現了對移動機器人路徑規劃的仿真,提高了機器人路徑規劃研究的效率。
[關鍵詞]Player/Gazebo 移動機器人 仿真
1.引言
移動機器人技術是當今信息技術中最熱門的領域,涉及感知、建模、導航、控制等各個方面。其中,路徑規劃是移動機器人自主導航的基本要求之一,它使機器人在已知或未知環境中由一個初始配置自主移動到一個終點配置。隨著計算機技術的發展,移動機器人仿真成為現今機器人導航技術研究的重要手段。研究人員可以在虛擬環境中對機器人進行建模和控制,模擬仿真各種現實環境和突發狀況,避免在復雜環境下現場試驗的困難并降低實際運行的成本。Player/Stage/Gazebo是應用最廣泛的機器人控制仿真平臺之一,利用Gazebo的三維仿真環境,人們可以清楚地看到機器人在環境中的運行狀況,極大的方便了機器人導航算法的研究。本文在介紹Player/Stage/Gazebo仿真平臺的基礎上,以移動機器人路徑規劃為例,詳細論述了如何建立移動機器人的運行環境和三維模型,并對機器人的路徑規劃控制進行了仿真。結果表明該仿真環境可以真實有效的模擬移動機器人的運動和動力學特性、各種傳感器以及機器人運動規劃控制,必將進一步促進移動機器人的自主導航研究。
2.Player/Stage/Gazebo簡介
Player/Stage/Gazebo是目前全世界應用最廣泛的機器人仿真開發平臺之一。Player/Stage/Gazebo仿真平臺包括機器人設備接口Player、2D多機器人仿真環境Stage以及3D多機器人仿真環境Gazebo三部分。其中,Player采用基于TCP的客戶端,服務器模式,為各種機器人平臺、傳感器、執行器提供靈活易用的網絡接口,并支持多設備、多機器人連接,為分布協作多機器人及多傳感器網絡研究提供了可能。Stage可以在二維環境中仿真多移動機器人,它提供的Player接口幾乎不用修改可直接用于機器人硬件的連接。Gazebo能用在3D環境下對多機器人進行仿真,包括機器人與障礙物之間的交互以及碰撞的物理特性。Player/Gazebo具有的模塊化、靈活性和快速性等特點,使其已經成為全世界應用最廣泛的機器人仿真開發環境。
3.移動機器人路徑規劃
路徑規劃是移動機器人自主導航的關鍵技術。根據移動機器人工作空間的已知和未知,移動機器人路徑規劃可以劃分為已知環境下的全局路徑規劃和未知或部分已知環境下的基于傳感器的路徑規劃。在未知環境中,機器人事先對所探索的環境沒有先驗知識,只能靠自身裝備的傳感器對局部環境進行認知學習,在感知環境的同時進行路徑規劃。由于機器人感知環境的不確定性,機器人對環境的理解存在限制。另外,實際運行環境是動態的,會不時出現突發性的意外,此時,在虛擬環境中對路徑規劃進行仿真成為一種有效的手段。
人工勢場法是一種應用于自主移動機器人的局部路徑規劃方法,由于其簡潔高效的實時避障控制,得到了廣泛的應用。其基本思想是將機器人的工作環境視為充滿人工受力勢場,在勢場中運動的機器人受目標點的吸引并受到障礙物的排斥,最終使得機器人繞過障礙物,到達目標點。本文在仿真過程中利用人工勢場法實現機器人的實時避障功能。其目標產生的吸引勢能函數和虛擬吸引力如下所示:

4.環境建模及仿真
用戶可以通過兩種方式與Gazebo進行交互,一是通過函數庫libgazebo,它通過共享內存的方式與其直接通訊,速度較快,但編程較為繁瑣;另一種是通過Player,利用Player的簡易高效的客戶端服務器模式進行通訊,簡便易用。我們利用第二種方法來實現與Gazebo的交互,路徑規劃流程圖如下:

5.結論
本文介紹了機器人仿真開發平臺Player/Stage/Gazebo以及如何在Gazebo的3D環境下進行移動機器人路徑規劃的仿真。文中在建立的機器人工作環境中,采用基于人工勢場的方法,仿真了移動機器人運動中的實時避障。仿真結果表明Gazebo是一個簡單易用且高效的機器人仿真環境,可以有效地驗證移動機器人自主導航算法,并進一步開發針對更為復雜環境的高級導航算法。