机器人操作系统(ROS)教程12:ROS的参数-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 5791|回复: 1

机器人操作系统(ROS)教程12:ROS的参数

[复制链接]
发表于 2015-2-14 17:26 | 显示全部楼层 |阅读模式
本帖最后由 对折之内 于 2015-2-16 20:32 编辑

rosparam命令允许用户在ROS的参数服务器上操作和存储数据,参数服务器可以存储整数,浮点数,布尔类型,字典,列表。ROS使用YAML标记语言作为语法,在简单的情况下,YAML看起来是非常自然的:1是整数,1.0是浮点数,one是字符串,true是布尔类型,[1,2,3]是一个列表,{a:b,c:d}是一个字典。我们使用rosparam list 命令可以查看参数服务器上的内容,运行:
rosparam list  

返回结果:

[mw_shl_code=c,true]/background_b
/background_g
/background_r
/rosdistro
/roslaunch/uris/host_ql_virtual_machine__47863
/rosversion
/run_id
[/mw_shl_code]

可以看到turtlesim_node节点在参数服务器上存储的所有参数,其中有三个表示背景颜色的参数。

     使用rosparam set可以改变参数服务器上的参数,而rosparam get可以获取参数服务器上参数的值,它的使用方法如下:

rosparam set [param_name]  
rosparam get [param_name]  

我们来改变背景颜色,如下:
rosparam set background_r 150  

表示把turtlesim_node节点的
background_r参数的值改为150.

命令执行完成后,再执行:

rosservice call /clear

clear命令刷新一下,就可以看见turtlesim_node节点乌龟的背景颜色已经发生了改变。

使用命令:

rosparam get /background_r  

就可以获得
background_r参数的值。

使用命令:

rosparam get /  

可以一次性获得所有参数的值。

[mw_shl_code=c,true]background_b: 255
background_g: 86
background_r: 69
rosdistro: 'indigo

  '
roslaunch:
  uris: {host_ql_virtual_machine__47863: 'http://ql-virtual-machine:47863/'}
rosversion: '1.11.9

  '
run_id: 2e1e1afc-b42a-11e4-937f-a9cbda70f5fb
[/mw_shl_code]

使用命令rosparam dump可以将参数服务器的内容写到一个文件中,它的使用方法如下:
rosparam dump [file_name]  

例如:
rosparam dump params.yaml  

就将参数服务器的内容写到了params.yaml的文件中。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 10:39 , Processed in 0.087231 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表