rosparam命令允许你在ROS的参数服务器上操作和存储数据,参数服务器可以存储整数,浮点数,布尔类型,字典,列表。ROS使用YAML标记语言作为语法,在简单的情况下,YAML看起来是非常自然的:1是整数,1.0是浮点数,one是字符串,true是布尔类型,[1,2,3]是一个列表,{a:b,c:d}是一个字典。我们使用rosparam list 命令可以查看参数服务器上的内容:
返回的结果如下:
我们改变背景颜色如下:
这条命令执行完成后,我们会发现北京颜色并没有发生变化,对了我们得刷新一下,怎么刷新呢,这条命令我们已经学过了哦:
使用下面的命令:
可以获得我们刚刚修改的/background_r的值,当然我们也可以将/background_r替换为/background_g或/background_b。我们可以使用:
一次性获得所有的参数的值。
例如:
我们将参数服务器的内容写到params.yaml的文件中。
rosparam list
返回的结果如下:
/background_b
/background_g
/background_r
/roslaunch/uris/aqy:51932
/run_id
我们可以看到turtlesim_node节点在参数服务器上存储了三个表示北京颜色的参数。
使用rosparam set可以改变参数服务器上的参数,而rosparam get可以获取参数服务器上参数的值,它的使用方法如下:
rosparam set [param_name]
rosparam get [param_name]
我们改变背景颜色如下:
rosparam set background_r 150
这条命令执行完成后,我们会发现北京颜色并没有发生变化,对了我们得刷新一下,怎么刷新呢,这条命令我们已经学过了哦:
rosservice call /clear
使用下面的命令:
rosparam get /background_r
可以获得我们刚刚修改的/background_r的值,当然我们也可以将/background_r替换为/background_g或/background_b。我们可以使用:
rosparam get /
一次性获得所有的参数的值。
使用命令rosparam dump可以将参数服务器的内容写到一个文件中,它的使用方法如下:
rosparam dump [file_name]
例如:
rosparam dump params.yaml
我们将参数服务器的内容写到params.yaml的文件中。