ROS引數伺服器(引數使用詳細介紹)

2021-10-07 08:25:17 字數 967 閱讀 4281

引數伺服器是可通過網路訪問的共享的多變數字典。它是節點儲存引數的地方、用於配置引數、全域性共享引數。引數伺服器使用網際網路傳輸,在節點管理器中執行,實現整個通訊過程。它使用xmlrpc資料型別為引數賦值,包括以下型別:32位整數、布林值、字串、雙精度浮點、iso 8601日期、列表(list)、基於64位編碼的二進位制資料。

引數伺服器的配置方式非常的簡單靈活,總的來講有三種方式:命令列維護、launc**件內讀寫、node原始碼。

ros中關於引數伺服器的工具是rosparam。其支援的引數如下所示:命令

作用 rosparam list

列出了伺服器中的所有引數

rosparam get [parameter]

獲取引數值

rosparam set [parameter] [value]

設定引數值

rosparam delete [parameter]

刪除引數

rosparam dump [file]

將引數伺服器儲存到乙個檔案

rosparam load [file]

載入引數檔案到引數伺服器

在前面講到launc**件時,提到launc**件有很多標籤,其中有和,以雷射雷達驅動lidar.launc**件為例:

可以看出,param是設定單個引數。

以導航驅動move_base.launc**件為例:

可以看出,rosparam是用於載入引數檔案的,而引數檔案可以包含許多引數。

param的操作非常輕巧,非常簡單。關於param的api,roscpp提供了兩套:ros::param namespace和ros::nodehandle;它們的操作完全一樣。

#includeint main(int argc, char **ar**)

ROS 引數伺服器

ros中提供了的引數伺服器機制,使用者可以將引數以 yaml 檔案格式儲存在本地,程式執行 執行launch檔案 時動態載入,修改引數並不需要重新編譯。而且,ros中更為人性化的一點就是支援程式執行時動態修改引數,實時的觀測引數對執行結果的影響,極大地方便了引數除錯。ros通過 launch 檔案載...

ROS引數伺服器

ros引數伺服器像是乙個共享記憶體,我們通過節點內的 終端命令,launc 件,任何程序都可以讀取,寫入或者更改引數伺服器上的引數值。例如我們通過執行 以下命令啟動乙個launc 件 roslaunch packgname filenamelaunc 件的內容為 load file find cus...

ROS學習 cpp引數伺服器

wiki 鏈結 ros的引數伺服器可以儲存字串,整型,浮點型,布林型,列表,字典,iso8601資料,64基編碼資料.字典資料要有字串鍵.roscpp的引數api支援所有這些,儘管在使用中常使用strings,integers,floats,booleans.xmlrpc xmlrpcvalue類實...