ROS学习笔记(九)

来源:互联网 发布:声鉴软件下载 编辑:程序博客网 时间:2024/05/17 22:53

ROS学习笔记(九) —— 使用参数服务器

参数服务器用于存储所有节点均可访问的共享数据,ROS中用来管理参数服务器的工具称为rosparam
rosparam使得我们能够存储并操作ROS 参数服务器(Parameter Server)上的数据。参数服务器能够存储整型、浮点、布尔、字符串、字典和列表等数据类型。rosparam使用YAML标记语言的语法。一般而言,YAML的表述很自然:1 是整型, 1.0 是浮点型, one是字符串, true是布尔, [1, 2, 3]是整型列表, {a: b, c: d}是字典. rosparam有很多指令可以用来操作参数,如下所示:

rosparam -hrosparam is a command-line tool for getting, setting, and deleting parameters from the ROS Parameter Server.Commands:    rosparam set    set parameter    rosparam get    get parameter    rosparam load   load parameters from file    rosparam dump   dump parameters to file    rosparam delete delete parameter    rosparam list   list parameter namesrosparam set            设置参数rosparam get            获取参数rosparam load           从文件读取参数rosparam dump           向文件中写入参数rosparam delete         删除参数rosparam list           列出参数名
  • rosparam list 查看所有节点使用的服务器参数
$ rosparam list/background_b/background_g/background_r/rosdistro/roslaunch/uris/host_tang__45351/rosversion/run_id我们可以看到turtlesim节点在参数服务器上有3个参数用于设定背景颜色:
  • rosparam set
    用法:rosparam set [param_name]
    现在我们修改背景颜色的红色通道:
    rosparamsetbackgroundr150使 rosservice call clear
    现在 我们的小乌龟看起来应该是像这样:
    这里写图片描述
  • rosparam get
    我们来查看参数服务器上的参数值——获取背景的绿色通道的值:
 rosparam get background_g86

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

$ rosparam get /background_b: 255background_g: 86background_r: 150rosdistro: 'indigo
  • rosparam dump
    用法:
    rosparam dump [file_name]
$ rosparam dump params.yaml  #保存参数文件,现在我们将所有的参数写入params.yaml文件$ cat params.yaml            #使用cat指令查看 background_b: 255background_g: 86background_r: 150rosdistro: 'indigo

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

$ rosparam load params.yaml copy$ rosparam get copy/background_b    255
原创粉丝点击