主要内容

rosparam

访问ROS参数服务器值

描述

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

简化的形式:rosparam列表

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

简化的形式:Rosparam列表命名空间

例子

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

简化的形式:Rosparam get pname

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

简化的形式:Rosparam获取命名空间

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

简化的形式:Rosparam set pname pval

看到限制对于限制pval

rosparam(“删除”,pname从参数树中删除参数。如果该参数不存在,则函数将报错。

简化的形式:Rosparam删除pname

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

简化的形式:删除命名空间

例子

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

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

支持以下ROS数据类型作为参数值。万博1manbetx对于每种ROS数据类型,对应MATLAB®还列出了数据类型。

  • 32位整数-int32

  • 布尔-逻辑

  • 双-

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

  • 列表-单元格数组(细胞

  • 字典-结构(结构体

例子

全部折叠

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

连接ROS网络。

rosinit
启动ROS核心…完成时间0.42413秒。在http://172.29.195.84:55819上初始化ROS master。初始化全局节点/matlab_global_node_55803,使用NodeURI http://dcc626364glnxa64:41117/和MasterURI http://localhost:55819。

设置参数值。

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 . /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://dcc626364glnxa64:41117/和MasterURI http://localhost:55819关闭全局节点/matlab_global_node_55803。在http://172.29.195.84:55819上关闭ROS master。

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

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

创建一个ParameterTree对象使用rosparam

Ptree =罗斯帕仑;

列出ROS主服务器上的可用参数。

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'} {'/run_id'} {'/use_sim_time'}

关闭ROS网络。

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

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

连接ROS网络。

rosinit
启动ROS核心…用时0.41647秒。在http://172.29.205.49:56438上初始化ROS master。使用NodeURI http://dcc950485glnxa64:37585/和MasterURI http://localhost:56438初始化全局节点/matlab_global_node_91926。

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

图片= imread(“peppers.png”);pval。ImageWidth = size(图像,1);pval。ImageHeight = size(image,2);pval。ImageTitle =“peppers.png”;disp (pval)
ImageWidth: 384 ImageHeight: 512 ImageTitle: 'pepper .png'

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

rosparam (“设置”“ImageParam”pval)

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

Pval2 =罗斯帕仑(“得到”“ImageParam”
pval2 =带字段的结构:ImageHeight: 512 ImageTitle: 'pepper .png' ImageWidth: 384

关闭ROS网络。

rosshutdown
使用NodeURI http://dcc950485glnxa64:37585/和MasterURI http://localhost:56438关闭全局节点/matlab_global_node_91926。在http://172.29.205.49:56438上关闭ROS master。

输入参数

全部折叠

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

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

ROS参数值或值字典,指定为受支持的数据类型。万博1manbetx

支持以下ROS数据类型作为参数值。万博1manbetx对于每个ROS数据类型,还列出了对应的MATLAB数据类型:

  • 32位整数-int32

  • 布尔值,逻辑

  • 双打,

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

  • 列表-单元格数组

  • 字典——结构

输出参数

全部折叠

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

参数树,返回为ParameterTree对象句柄。通过该节点引用参数信息,例如:ptree。AvailableFrames

ROS参数值,指定为受支持的MATLAB数据类型。万博1manbetx当指定名称空间输入参数,pvalOut作为给定名称空间下的参数值结构返回。

支持以下ROS数据类型作为参数值。万博1manbetx对于每个ROS数据类型,还列出了相应的MATLAB数据类型。

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

限制

  • 不支万博1manbetx持的数据类型:不支持ROS中base64编码的二进制数据和iso8601数据。万博1manbetx

  • 简化的命令:使用简化命令时Rosparam set pname pval,参数值解释为:

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

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

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

    • 字符向量- Ifpval是否有其他值

扩展功能

版本历史

R2019b引入

另请参阅

功能

对象