主要内容

rosparam

访问ROS参数服务器值

描述

列表= rosparam(“列表”)返回所有ROS主机的参数名称列表。

简化的形式:rosparam列表

列表= rosparam(“列表”,名称空间返回指定ROS命名空间下所有参数名称的列表。

简化的形式:rosparam列表名称空间

例子

pvalOut= rosparam(“得到”,pname检索指定参数的值。

简化的形式:rosparam得到pname

pvalOut= rosparam(“得到”,名称空间以结构形式检索指定名称空间下所有参数的值。

简化的形式:rosparam得到名称空间

rosparam(“设置”,pname,pval设置指定参数名称的值。如果参数名不存在,函数将在参数树中添加一个新的参数。

简化的形式:设置pname pval

看到限制为限制pval

rosparam(“删除”,pname从参数树中删除参数。如果该参数不存在,则返回错误信息。

简化的形式:rosparam删除pname

rosparam(“删除”,名称空间从参数树中删除给定名称空间下的所有参数。

简化的形式:rosparam删除名称空间

例子

ptree= rosparam创建一个参数树对象,ptree.后ptree,与参数服务器的连接将保持持久,直到对象被删除或ROS主服务器变得不可用。

ROS参数树与ROS参数服务器通信。ROS参数服务器可以存储字符串、整数、双精度、布尔值和单元格数组。ROS网络中的每个节点都可以访问这些参数。使用参数存储静态数据,如配置参数。使用得到,,,搜索,函数来操作和查看参数值。

支持如下的ROS数据类型作为参数值。金宝app对于每个ROS数据类型,相应的MATLAB®还列出了数据类型。

  • 32位的整数,int32

  • 布尔-逻辑

  • 双-

  • 字符串-字符向量(字符

  • List -单元格数组(细胞

  • 字典-结构(结构体

例子

全部折叠

连接到ROS网络,在ROS参数树中设置和获取ROS参数。您还可以获得给定名称空间中的参数列表。这个例子使用了简化的表单来模拟ROS命令行界面。

连接到ROS网络

rosinit
启动ROS核心……用时0.99621秒。在http://192.168.0.10:57889上初始化ROS master。使用NodeURI http://dcc861032glnxa64:44813/初始化全局节点/matlab_global_node_49969

设置参数值。

rosparam/ string_param“param_value”rosparam/ double_param1.2

若要设置列表参数,请使用函数形式。

rosparam (“设置”,' / list_param ', {int32(5), 124.1, -20,“some_string”});

使用命令行形式获取参数列表。

rosparam列表
/ double_param list_param / string_param

列出特定名称空间中的参数。

rosparam列表/双
/ double_param

获取参数的值。

rosparam得到/ list_param
{5, 124.1, -20, some_string}

删除一个参数。列出参数以验证是否已删除。

rosparam删除/ double_paramrosparam列表
/ list_param string_param

关闭ROS网络。

rosshutdown
使用NodeURI http://dcc861032glnxa64:44813/关闭全局节点/matlab_global_node_49969

连接到ROS网络ROS参数应该已经在ROS主服务器上可用。

rosinit (“192.168.17.128”
使用NodeURI http://192.168.17.1:52951/初始化全局节点/matlab_global_node_91663

创建一个ParameterTree对象使用rosparam

ptree = rosparam;

在ROS master中列出可用的参数。

ptree。AvailableParameters
ans =33×1单元阵列{' / bumper2pointcloud / pointcloud_radius}{/相机/ imager_rate”}{' /相机/ rgb image_raw /压缩格式的}{' /相机/ rgb / image_raw /压缩/ jpeg_quality '}{' /相机/ rgb / image_raw /压缩/ png_level '} {/ cmd_vel_mux / yaml_cfg_file”}{/ depthimage_to_laserscan / output_frame_id”}{/ depthimage_to_laserscan / range_max的}{' / depthimage_to_laserscan / range_min} {/ depthimage_to_laserscan / scan_height”}{/ depthimage_to_laserscan / scan_time”}{/露台/ auto_disable_bodies”}{/露台/ cfm的}{/露台/ contact_max_correcting_vel”}{/露台/ contact_surface_layer”}{/露台/ erp的}{/露台/ gravity_x”}{/露台/ gravity_y”}{/露台/ gravity_z的}{' /露台/ max_contacts}{/露台/ max_update_rate”}{/露台/ sor_pgs_iters”}{/露台/ sor_pgs_precon_iters”}{/露台/ sor_pgs_rms_error_tol”}{/露台/ sor_pgs_w”}{/露台/ time_step”}{' / robot_description '} {/ robot_state_publisher / publish_frequency”}{' / rosdistro '} {' / roslaunch / uri / host_192_168_17_128__34863 '} {' / rosversion '}{'/use_sim_time'} /use_sim_time'}

关闭ROS网络。

rosshutdown
使用NodeURI http://192.168.17.1:52951/关闭全局节点/matlab_global_node_91663

使用结构来指定特定名称空间下的ROS参数字典。

连接到ROS网络

rosinit
启动ROS Core... ...用时4.0269秒。在http://192.168.88.1:57165上初始化ROS master。使用NodeURI http://ah-avijayar:60223/初始化全局节点/matlab_global_node_09024

创建一个参数值字典。这个字典包含与图像相关的信息。显示结构以验证值。

形象= imread (“peppers.png”);pval。ImageWidth =大小(图片1);pval。ImageHeight =大小(图片2);pval。ImageTitle =“peppers.png”;disp (pval)
ImageWidth: 384 ImageHeight: 512 ImageTitle: 'pepper .png'

使用所需的名称空间设置值的字典。

rosparam (“设置”,“ImageParam”pval)

使用名称空间获取参数。验证的值。

pval2 = rosparam (“得到”,“ImageParam”
pval2 =结构体字段:ImageHeight: 512 ImageTitle: 'pepper .png' ImageWidth: 384

关闭ROS网络。

rosshutdown
使用NodeURI http://ah-avijayar:60223/关闭全局节点/matlab_global_node_09024

输入参数

全部折叠

ROS参数名称空间,指定为字符串标量或字符向量。调用时列出以该字符串开头的所有参数名rosparam(“列表”,名称空间)

ROS参数名称,指定为字符串标量或字符向量。

ROS参数值或字典值,指定为支持的数据类型。金宝app

支持如下的ROS数据类型作为参数值。金宝app对于每个ROS数据类型,也列出了相应的MATLAB数据类型:

  • 32位整数。int32

  • 布尔值,逻辑

  • 双打,

  • Strings—字符串标量,字符串,或字符向量,字符

  • Lists—单元格数组

  • 字典——结构

输出参数

全部折叠

参数列表,作为字符向量的单元格数组返回。这是ROS主服务器上可用的所有参数的列表。

参数树,作为ParameterTree对象句柄。使用该对象引用参数信息,例如:ptree。AvailableFrames

ROS参数值,指定为支持的MATLAB数据类型。金宝app当指定名称空间输入参数,pvalOut作为给定名称空间下的参数值结构返回。

支持如下的ROS数据类型作为参数值。金宝app对于每个ROS数据类型,也列出了相应的MATLAB数据类型。

ROS数据类型 MATLAB数据类型
32位整数 int32
布尔 逻辑
字符串 特征向量(字符
列表 单元阵列(细胞
字典 结构(结构体

限制

  • 不支金宝app持的数据类型:不支持来自ROS的base64编码的二进制数据和iso8601数据。金宝app

  • 简化的命令:当使用简化命令时设置pname pval时,参数值被解释为:

    • 逻辑——如果pval“真正的”“假”

    • int32——如果pval为整数,例如,5

    • ——如果pval是一个小数,例如,1.256

    • 字符向量- Ifpval是其他值吗

扩展功能

另请参阅

功能

对象

介绍了R2019b