当前位置 博文首页 > txr152111的博客:18th 参数服务器概述及理论模型
参数服务器在ROS中主要用于实现不同节点之间的数据共享。参数服务器相当于是独立于所有节点的一个公共容器,可以将数据存储在该容器中,被不同的节点调用,当然不同的节点也可以往其中存储数据,关于参数服务器的典型应用场景如下:
简单来说,参数服务器就是一个仓库,不同人既可以向里面存储数据,又可以从里面取数据。
上述场景中,全局路径规划和本地路径规划时,就会使用到参数服务器:
参数服务器,一般适用于存在数据共享的一些应用场景。
增、删、改、查
参数服务器实现是最为简单的,该模型如下图所示,该模型中涉及到三个角色:
ROS Master 作为一个公共容器保存参数,Talker 可以向容器中设置参数,Listener 可以获取参数。
实现流程:
Talker 通过 RPC 向参数服务器发送参数(包括参数名与参数值),ROS Master 将参数保存到参数列表中。
Listener 通过 RPC 向参数服务器发送参数查找请求,请求中包含要查找的参数名。
ROS Master 根据步骤2请求提供的参数名查找参数值,并将查询结果通过 RPC 发送给 Listener。
参数可使用数据类型:
32-bit integers? ?4字节整型
booleans? ?布尔
strings? 字符串
doubles? ? ? 浮点
iso8601 dates? ? 时间
lists? 列表
base64-encoded binary data? ? 基于64位编码的二进制数据
字典