ROS 学习应用篇(六)参数的使用与编程

 node可能不在一个电脑里但是这些服务的参数信息是共享的,因为话题Topic是异步的所以只有服务Service有实时参数信息可以调用。

接下来将演示服务参数信息的调用与修改。

创建功能包(工作空间src文件夹下)

catkin_create_pkg learning_parameter roscpp rospy std_srvs

想要运行下面这些代码首先要先开启一个rosmaster

  • rosparam list % 列出当前包有多少参数
  • rosparam get param_key % 显示某一个参数的值
  • rosparam set param_key  param_value % 更改param_key的值为param_value
  • rosparam dump file_name % 保存参数到file_name文件,应该是.yaml格式
  • rosparam load file_name % 读入file_name文件中的参数
  • rosparam delete param_key %删除某一个参数
  • rosparam add param_key % 添加某一个参数,没有这个指令,应该是因为这些指令都要在rosmaster开启通信的状态下进行,这个过程是不能添加参数的。

以小海龟为例,打开一个小海龟节点

rosrun turtlesim turtlesim_node

rosparam list %结果如下:

获取某一个参数

rosparam get /turtlesim/background_b % 要按照给出的目录级别来输入参数。

更改参数

rosparam set /turtlesim/background_g 255

清除旧版设置

只有清除旧版的设置才能改变小海龟的北背景颜色。


保存参数

rosparam dump param.yaml% 可以在文件名字前添加制定的文件目录,如果没加就是保存到当前的目录下。

也可以修改yaml文件,然后通过load加载命令加载,同样需要再输入一次clear命令才会更新更改后的参数。

接下来是以代码的方式获取参数、更改参数、上传参数。

引入库

C++                                                                                 Python

这里的empty是用来送入空服务以实现刷新功能的包

节点初始化

C++                                                                                 Python

参数读取

C++                                                                                 Python

参数修改

C++                                                                                 Python

 参数再次读取

C++                                                                                 Python

 调用服务

调用服务送入空数据以实现刷新

 C++                                                                                 Python

确定主函数段

C++                                                                                 Python

CMakelist.tx

备注

所有的参数前要加/turtlesim ,因为我的版本是ros1,我的小海龟的参数是有一个前缀文件夹的要不补齐,背景才会变色。

更多内容见Parameter Server - ROS Wiki

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MySQL中全文索引和普通索引的区别

MySQL中的全文索引(Full-Text Index)和普通索引(比如B-Tree索引)是为了提高查询效率而设计的,但它们适用于不同的场景和查询类型。 普通索引(如B-Tree索引) 适用场景:普通索引适用于…

jsp中使用PDF.js实现pdf文件的预览

本文介绍的是在使用jsp作为模板引擎的spring-mvc项目中,如何利用 PDF.js实现pdf文件的预览。 1、下载 PDF.js Getting Started (mozilla.github.io) 下载解压后其中有两个目录,直接将这两个文件夹放到项目的web资源目录中。此时相当于把PDF.js这个项目也…

3ds max 2024 V-Ray 6 ACES workflow 工作流设置

ACES的流程包括2个设置: 1、环境设置;2、贴图设置: 一、环境设置:3ds max 2024已经内置了OCIO文件;设置一下即可; 二、贴图设置: 所有类型贴图加载有默认和加后缀2种方法: 第一…

使用VC++设计程序使用邻域平均平滑算法、中值滤波算法、K近邻均值滤波器(KNNF)进行滤波

VC实现若干种图像滤波技术 文章目录 VC实现若干种图像滤波技术实验内容邻域平均平滑算法1. 原理2. 实验代码3. 实验现象 中值滤波算法1. 原理2. 实验代码3.实验现象 K近邻均值滤波算法(KNNF)1. 原理2. 实验代码实验现象 实验内容 实验要求: …

【机器学习】 特征工程:特征预处理,归一化、标准化、处理缺失值

特征预处理采用的是特定的统计方法(数学方法)将数据转化为算法要求的数字 1. 数值型数据 归一化,将原始数据变换到[0,1]之间 标准化,数据转化到均值为0,方差为1的范围内 缺失值,缺失值处理成均值、中…

PDF处理控件Aspose.PDF功能演示:使用C#查找和替换PDF文件中的文本

使用“查找并替换”选项可以一次性替换文档中的特定文本。这样,您不必手动定位和更新整个文档中每次出现的文本。本文甚至更进一步,介绍了如何在PDF文档中自动查找和替换文本功能。特别是,将学习如何使用C#在整个PDF,特…

外汇天眼:失败的投资者经常陷入两个误区!

一、价格与价值的混淆 在金融领域,价格和价值往往被错误视为同义词。然而,审视市场时,我们会逐渐发现一个“安全差”的重要概念,这是由巴菲特的导师本杰明格雷厄姆提出的。 安全差是指股票的内在价值与市场价格之间的差异。内在…

WMS仓储管理系统与TMS系统整合后的优势

随着全球化的加速和供应链网络的日益复杂,仓库和运输成为企业运营中的两个关键环节。为了更高效地管理这两个环节,许多企业开始探索将WMS仓储管理系统和TMS运输管理系统整合的可能性。这种整合不仅可以提升仓库流程的可见性,还有助于改善调度…

1、24 个常见的 Docker 疑难杂症处理技巧(一)

1Docker 迁移存储目录 默认情况系统会将 Docker 容器存放在 /var/lib/docker 目录下 [问题起因] 今天通过监控系统,发现公司其中一台服务器的磁盘快慢,随即上去看了下,发现 /var/lib/docker 这个目录特别大。由上述原因,我们都知…

配置 ssh 免密登录

背景 从机器 A 使用 ssh 免密登录到机器 B,两台机器的 OS 都是 CentOS。其中机器 B 用作了一台 nodejs 的服务器,已经安装并运行了 sshd 服务,其用户名是 jmmem 我们想要实现在机器 A 上键入 ssh nodejs 就能免密登录到机器 B 的效果 机器…

python 最快多长时间学完?

以下是一个为零基础学员制作Python速成学习计划。这个计划包括了一些基本的Python概念和技能,以及一些实用的学习技巧。 第1周:基础入门 Python简介:了解Python的历史、特点、应用领域。 安装Python:在你的电脑上安装Python&am…

一个 不用充钱 也能让你变强的 VSCode 插件

今天给大家推荐一款不用充钱也能让你变强的 vscode 插件 通义灵码(TONGYI Lingma),可以称之为 copilot 的替代甜品 💪 什么是 通义灵码(TONGYI Lingma) 通义灵码(TONGYI Lingma)&am…

Martins 用法-利用现有的数学公式来绘制三相电机电流相位之间的关系

你可能会对这个主题很感兴趣。这背后的原因是我想分享一种我在花了大量时间研究诊断三相电机的方式时发现到的技术。我发现有一种非常简单的方式可以做到这一点,与Pico团队分享后,Steve Smith将它命名为Martins用法。 那么,让我们开始吧。 Ma…

Pinia 及其数据持久化 Vue新一代状态管理插件

黑马前端Vue新一代状态管理插件Pinia快速入门视频教程 Pinia主页 超级简单,不需要耐心 pinia :新一代的VueX 1. 安装 npm install pinia2. 在main.js中引入 import { createPinia } from pinia app.use(createPinia())3. 新建stores目录&#xff0c…

Camtasia2024喀秋莎微课制作神器新版本功能介绍

最近无论是b站,抖音,快手等视频软件中都有不少微课视频、电视剧解说横空出世,通过这些“热度”带来的收益也是无法估量的,很多自媒体博主月入上万惹人羡慕。 不少朋友也想在这股短视频洪流中分一碗羹,但又苦于技术跟不…

areadetector ADURL模块应用在面探测控制的初步应用

本章中讨论了使用ADURL控制面探测器Lambda的过程&#xff1a; ADURL的使用请见&#xff1a; EPICS -- areaDetector URL驱动程序-CSDN博客 需要启动一个ADURL的IOC程序&#xff0c;并且设置相关的插件中参数的值&#xff1a; # st.cm < envPaths < st_base.cmddbpf 1…

mysql操作 sql语句中的完整性约束有哪些,主键约束、外键约束、引用完整性约束,主键外键、唯一性

什么是约束&#xff1a;约束&#xff1a;就是约定哪些东西能填、怎么填&#xff1f;哪些东西不能填&#xff1f; 文章目录 前言&#xff1a;建表正文一、实体完整性约束1. 主键约束2. 唯一性约束3. 自增长约束4. 联合主键约束 二、域完整性约束三、引用完整性约束1. 外键约束 讲…

【kerberos】使用 curl 访问受 Kerberos HTTP SPNEGO 保护的 URL

前言&#xff1a; 大数据集群集成 Kerberos 后&#xff0c;很多 WEBUI 打开都会提示输入用户名和密码。由于我想获取 flink 任务的详情&#xff0c;且KNOX 并不支持Flink api&#xff0c;查看KNOX 直接的列表&#xff1a;https://docs.cloudera.com/cdp-private-cloud-base/7.…

算法实战:亲自写红黑树之二 完整代码

此文承接&#xff1a;算法实战&#xff1a;亲自写红黑树之一-CSDN博客 目录 一、项目结构 二、辅助代码a.h 三、红黑树代码rbtree.h 四、测试代码main.cpp 五、运行效果 六、代码详解 一、项目结构 这里给出的代码是实际可以运行的代码。 运行环境&#xff1a;VS2022&am…

波束形成中的主瓣宽度

阵列信号处理相关基础知识及主瓣宽度 导向矢量阵列方向图确知波束形成普通波束形成主瓣宽度确知波束形成主瓣宽度普通波束形成主瓣宽度 在讨论主瓣宽度之前&#xff0c;首先得了解导向矢量、波束形成、阵列方向图的概念&#xff0c;这些是阵列信号处理中最基础的知识。 导向矢量…
最新文章