百科解釋
Player/Stage最初是由美國南加州大學(xué)機器人研究實驗室,于1999年開發(fā)的一個為多機器人系統(tǒng)提供內(nèi)部接口和仿真環(huán)境的項目。目前,作為一個開源項目,它已經(jīng)被世界上許多機器人研究者使用、修改和擴展. 1. Player是一個多線程的機器人驅(qū)動服務(wù)器,使控制者簡便靈活的控制移動機器人以及其物理傳感器和動力驅(qū)動裝置等設(shè)備終端,當Player運行在控制者的移動機器人上時,通過標準的TCP套接字技術(shù)(Socket)與客戶端控制軟件連接,實現(xiàn)信息發(fā)送和接收。 Player的設(shè)計在語言上是獨立的,并且是平臺無關(guān)性的?刂普叩目蛻舳塑浖苓\行在與機器人通過網(wǎng)絡(luò)連接著的任何設(shè)備上,并且軟件的開發(fā)能夠使用任何識別套接字技術(shù)的語言。已完成的客戶端類庫主要是C++、Tcl、LISP、Java和Python幾個版本。 Player并不考慮使用者是如何構(gòu)建自己的機器人控制程序,因此,相對其他機器人接口,它更“簡潔”,使用者可以把自己的客戶端程序設(shè)計成為多線程結(jié)構(gòu),也可以設(shè)計成為簡單的“讀取-分析-運行-再讀取”的閉環(huán)結(jié)構(gòu),如果希望機器人可以互相協(xié)作工作,可以使用TCL的客戶端驅(qū)動接口。 Player實際上可以支持任意數(shù)量的客戶端,一個機器人可以通過另一個機器人的“眼睛”看見所需要的場景,任何機器人客戶端能夠從另一個機器人的Player上獲得傳感器信息甚至發(fā)送控制指令。除開分布式傳感控制,也可以使用Player監(jiān)控實驗。例如,當使用C++類庫開發(fā)的客戶端程序控制機器人時,也可以在任何網(wǎng)絡(luò)連接的地方運行TK GUI客戶端程序顯示當前的傳感信息,或者使用Python開發(fā)的程序記錄這些信息用于后期分析。Player是一個開源的免費軟件,依據(jù)GNU Public License發(fā)布,可以被任意修改。 2. Stage是Player/Stage項目的一個軟件,是一種用于移動機器人和智能傳感系統(tǒng)研究的仿真工具。Stage在一個二維的位圖環(huán)境下模擬移動機器人、傳感器和障礙物等對象。Stage在設(shè)計中就考慮到了多智能體系統(tǒng)的問題,可以提供對多機器人系統(tǒng)的測試仿真。需要了解的是Stage只提供了真正簡單,可計算的廉價的設(shè)備模式,而無法非常精密地仿真任何具體的設(shè)備終端。Stage 還允許你利用目前還沒有的虛擬機器人設(shè)備進行實驗。Stage提供了多種傳感器和執(zhí)行器,包括聲納,激光掃描測距儀,色斑顯示器,里程計,抓斗,防撞器/觸須器以及移動機器人基坐等。 Stage的虛擬設(shè)備可以被網(wǎng)絡(luò)機器人服務(wù)器Player控制。Player提供了方便的接口程序用于驅(qū)動一系列的機器人和傳感器相關(guān)設(shè)備,而Stage仿真了這些設(shè)備。Player相對于真實機器人的TCP 接口和Player相對于Stage中的虛擬設(shè)備的TCP接口是相同的。這意味著:如果在已經(jīng)指定了連接的主機IP和PORT的程序中是使用了正確的命令語句,Player客戶端的程序?qū)嶋H上即可以操作Stage仿真環(huán)境中的虛擬設(shè)備,虛擬機器人也可以操作Player SERVER端的真實設(shè)備及機器人。而進一步的,如果Stage的仿真能力足夠,讓客戶終端不能分辨真實機器人的設(shè)備和它們在Stage下的替代品-虛擬設(shè)備,就能達到完全的模擬測試效果,通過這種模擬測試方式開發(fā)的客戶終端幾乎不需要做任何調(diào)整就能應(yīng)用于真實環(huán)境中,因此依據(jù)仿真建立的系統(tǒng)能夠迅速地向真實機器人環(huán)境的移植。
移動通信網(wǎng) | 通信人才網(wǎng) | 更新日志 | 團隊博客 | 免責(zé)聲明 | 關(guān)于詞典 | 幫助