7.3 使用 rosparam

  • rosparam使得我们能够存储并操作ROS 参数服务器(Parameter Server)上的数据。参数服务器能够存储整型、浮点、布尔、字符串、字典和列表等数据类型。rosparam使用YAML标记语言的语法。

  • 一般而言,YAML的表述很自然:

    • 1 是整型,

    • 1.0 是浮点型,

    • one是字符串,

    • true是布尔,

    • [1, 2, 3]是整型列表,

    • {a: b, c: d}是字典.

rosparam有很多指令可以用来操作参数,如下所示:

rosparam set            设置参数
rosparam get            获取参数
rosparam load           从文件读取参数
rosparam dump           向文件中写入参数
rosparam delete         删除参数
rosparam list           列出参数名

我们来看看现在参数服务器上都有哪些参数:

7.3.1 rosparam list

我们可以看到turtlesim节点在参数服务器上有3个参数用于设定背景颜色:

改变参数值使用rosparam set,获取参数值使用rosparam get

7.3.2 rosparam set and rosparam get

使用:

现在我们修改背景颜色的红色通道:

上述指令修改了参数的值,现在我们调用清除服务使得修改后的参数生效:

现在 我们的小乌龟看起来应该是像这样: image

现在我们来查看参数服务器上的参数值——获取背景的绿色通道的值:

我们可以使用rosparam get /来显示参数服务器上的所有内容:

你可能希望存储这些信息以备今后重新读取。这通过rosparam很容易就可以实现:

7.3.3 rosparam dump and rosparam load

使用方法:

现在我们将所有的参数写入params.yaml文件:

你甚至可以将yaml文件重载入新的命名空间,比如说copy空间:

至此,我们已经了解了ROS服务和参数服务器的使用,接下来,我们一同试试使用 rqt_console 和 roslaunch

Last updated