ROS参数服务器

news2024/11/16 4:22:21

一、介绍

        参数服务器是用于存储和检索参数的分布式多机器人配置系统,它允许节点动态地获取参数值。

        在ROS中,参数服务器是一种用于存储和检索参数的分布式多机器人配置系统。它允许节点动态地获取参数值,并提供了一种方便的方式来管理和共享配置参数。以下是ROS中参数服务器的通信方式:

参数设置(Parameter Setting):节点可以通过ROS API将参数设置到参数服务器上。这些参数可以是整数、浮点数、字符串等不同类型的数据。参数设置允许节点在运行时动态地调整配置参数,而无需重新编译或重新启动节点。例如,一个移动机器人节点可以将最大速度和加速度参数设置到参数服务器上,以便在运行时进行调整。

参数获取(Parameter Getting):节点可以通过ROS API从参数服务器上获取参数值。节点可以根据需要获取特定参数的值,并据此执行相应的操作。例如,一个控制器节点可以从参数服务器上获取运动规划的参数,以便在运行时进行路径规划。

参数搜索(Parameter Search):参数服务器支持参数的层级结构,允许参数按照命名空间进行组织和管理。节点可以通过指定参数名称的前缀来搜索参数服务器上的参数。这种参数搜索的方式使得节点可以更轻松地管理大量的参数,并提高了参数的可读性和可维护性。

参数更新通知(Parameter Update Notifications):当参数服务器上的参数发生变化时,ROS会向订阅了参数更新通知的节点发送通知消息。这样,节点可以及时感知到参数的变化,并根据需要进行相应的调整和处理。

        通过参数服务器,ROS节点可以实现参数的集中管理和共享,使得系统配置更加灵活和可配置。参数服务器还提供了一种方便的方式来实现参数的动态调整和更新,从而提高了系统的可维护性和适应性。

简单描述:一共享的形式实现不同节点之间数据交互的通信模式。

二、角色

ROS Master(管理者)--作为一个公共容器保存参数

Talker(参数设置者)--可以向容器中设置参数

Listener(参数调用者)--可以获取参数

三、实例1--参数增加

需要实现参数的新增与修改

需求: 首先设置机器人的共享参数,类型、半径(0.15m)再修改半径(0.2m)
实现新增:

ros::NodeHandle        

        setParam("健",值)
ros::param
        set("健”,值)

修改CMakeLists文件

运行效果

四、实例2--参数修改

实现修改:只需要继续调研 setParam 或 set 函数,保证键是已经存在的,那么值会被覆盖

运行结果 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1699012.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

redis--消息队列

分类 生产者消费模式 发布者订阅模式 生产者消费模式 在生产者消费者(Producer/Consumer)模式下,上层应用接收到的外部请求后开始处理其当前步骤的操作,在执行完成后将已经完成的操作发送至指定的频道(channel)当中,并由其下层的应用监听…

Java筑基(三)

Java筑基(三) 一、final概念1、案例1:采用继承:2、案例2:final修饰的类不可以被继承:3、案例3:final修饰的类不能有子类,但是可以有父类4、final修饰构造方法5、final修饰普通方法6、…

《Python源码剖析》之pyc文件

前言 前面我们主要围绕pyObject和pyTypeObject聊完了python的内建对象部分,现在我们将开启新的篇章—python虚拟机,将聚焦在python的执行部分,搞懂从“代码”到“执行”的过程。开启新的篇章之前,你也许会有一个疑惑:我…

aws 接入awsIOT平台的证书签发逻辑

参考资料 https://aws.amazon.com/cn/blogs/china/certification-vending-machine-intelligent-device-access-aws-iot-platform-solution/ IoT 设备与 AWS IoT Core 的 MQTT 通信使用基于证书的 TLS 1.2双向认证体系。所谓的双向认证,即意味着 IoT 设备端需安装 …

制作电子画册速成攻略,快来试试

​当今社会,数字媒体日益普及,电子画册作为一种崭新的展示方式,受到了越来越多人的青睐。它不仅形式新颖,互动性强,而且制作起来也并不复杂。想知道如何快速掌握制作电子画册的技巧吗?我来教你吧。 接下来&…

代码随想录-Day20

654. 最大二叉树 给定一个不重复的整数数组 nums 。 最大二叉树 可以用下面的算法从 nums 递归地构建: 创建一个根节点,其值为 nums 中的最大值。 递归地在最大值 左边 的 子数组前缀上 构建左子树。 递归地在最大值 右边 的 子数组后缀上 构建右子树。 返回 nums…

cmake编译redis6.0源码总结

1配置clion使用cygwin模拟linux环境,先下载cygwin后配置 2导入源码,配置cmake文件 由于redis是基于Linux上的Makefile,所以Windows上需要配置CMakeLists.txt使用cmake工具编译运行。github上已经有人尝试编写CMakeLists.txt文件&#xff0c…

<Python实际应用>用yolov9实现垃圾检测

公司一个项目需要在无人机巡检的画面中识别垃圾和汽车,正好听闻yolov9最新出炉,于是试了一下采用yolov9来搭建该项目 1.下载和部署 下载yolov9:GitHub地址:GitHub代码下载地址 配置环境可以参考之前关于yolov5的文章 Yolov5自学笔记之一-…

计算机毕业设计 | springboot+vue房屋租赁管理系统(附源码)

1,绪论 1.1 课题来源 随着社会的不断发展以及大家生活水平的提高,越来越多的年轻人选择在大城市发展。在大城市发展就意味着要在外面有一处安身的地方。在租房的过程中,大家也面临着各种各样的问题,比如需要费时费力去现场看房&…

2024宝藏工具EasyRecovery数据恢复软件免费版本下载

在这个数字化的时代,数据已经成为我们生活中的重中之重。无论是工作中的重要文件,还是手机中珍贵的照片,我们都依赖着这些数据。然而,数据丢失的情况时有发生,可能是误删,可能是设备故障,更可能…

Java八大类型详解

整数类型 (4种) 整数的类型 类型占用内存空间范围byte [字节]1字节-128 ~ 127存放的范围是>二进制short [短整型]2字节 -(2⁵) ~ 2⁵-1 -32768 ~ 32767 int [整形]4字节 -2 ~ 2-1 -2147483648 - 2147483647 long [长整形]8字节-2⁶ ~ 2⁶-1 整数类型的使用细节 1. Java个…

架构师必考题--软件系统质量属性

软件系统质量属性 1.质量属性2.质量属性场景描述3.系统架构评估 这个知识点是系统架构师必考的题目,也是案例分析题第一题, 有时候会出现在选择题里面,考的分数也是非常高的。 1.质量属性 属性说明可用性错误检测/恢复/避免性能资源需求/管理…

元组的创建和删除

目录 使用赋值运算符直接创建元组 创建空元组 创建数值元组 删除元组 自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 元组(tuple)是Python中另一个重要的序列结构&#…

异方差的Stata操作(计量114)

以数据集 nerlove.dta 为例,演示如何在 Stata 中处理异方差。 此数据集包括以下变量: tc ( 总成本 ) ; q ( 总产量 ) ; pl ( 工资率 ) ; pk ( 资本的使用成本 ) ; pf ( 燃料价格 ) ; …

H3CNE-7-TCP和UDP协议

TCP和UDP协议 TCP:可靠传输,面向连接 -------- 速度慢,准确性高 UDP:不可靠传输,非面向连接 -------- 速度快,但准确性差 面向连接:如果某应用层协议的四层使用TCP端口,那么正式的…

【代码随想录训练营】【Day 27 and 28】【回溯1-2】| Leetcode 77, 216, 17

【代码随想录训练营】【Day 27 and 28】【回溯1-2】| Leetcode 77, 216, 17 需强化知识点 组合问题:感受遍历的横向和纵向 题目 77. 组合 注意path要深拷贝 class Solution:def combine(self, n: int, k: int) -> List[List[int]]:result []def backtrac…

Thymeleaf 搭建家居网首页

文章目录 1.引入Thymeleaf sunliving-commodity模块1.在resources目录下引入Thymeleaf 所需资源2.pom.xml引入Thymeleaf依赖3.application.yml 关闭缓存,使页面实时刷新4.在application-prod.yml开启缓存5.编写com/sun/sunliving/commodity/web/IndexController.jav…

VLAN高级特性

1.VLAN聚合 (1)VLAN聚合产生的技术背景 (2)VLAN聚合概述 (3)VLAN聚合的原理 多个Sub-VLAN共享一个网关地址,节约了子网网络地址、子网定向广播地址、子网缺省网关地址,且各Sub-VLAN…

基于51单片机的超声波液位测量与控制系统

基于51单片机液位控制器 (仿真+程序+原理图PCB+设计报告) 功能介绍 具体功能: 1.使用HC-SR04测量液位,LCD1602显示; 2.当水位高于设定上限的时候,对应声光报警报警&am…