科研向(仿真验证) ROS 学习笔记二 C:ROS 通信机制 —— 参数服务器
2021/11/10 23:09:45
本文主要是介绍科研向(仿真验证) ROS 学习笔记二 C:ROS 通信机制 —— 参数服务器,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
ROS 通信机制
ROS是进程(也称为 Nodes
)的分布式框架。 这些进程甚至还可分布于不同主机协同工作,所以结点之间如何通信非常重要!
基本通信机制三:参数服务器(参数共享模式)
以共享的方式实现不同节点之间数据交互的通信模式(基于RPC协议)。
ROS Master 作为一个公共容器保存参数,Talker 可以向容器中设置参数,Listener 可以获取参数。
-
增, 改:
rosparam list
查看全部的参数,rosparam get xxx
查看xxx
参数的值#! /usr/bin/env python import rospy # use rospy.set_param() if __name__ == "__main__": rospy.init_node("set_update_param") rospy.set_param("xxx",10) # set xxx: 10 rospy.set_param("xxx",100) # set xxx: 100
-
删:
#! /usr/bin/env python import rospy # use rospy,delete_param() if __name__ == "__main__": rospy.init_node("delete_param") try: rospy.delete_param("xxx") except Exception as e: rospy.loginfo("ERROR!")
-
查:
#! /usr/bin/env python import rospy if __name__ == "__main__": rospy.init_node("get_param") xxx_1 = rospy.get_param("xxx",default=999) # method 1: get_param xxx_2 = rospy.get_param_cached("xxx") # method 2: get_param_cached (fast) flag = rospy.has_param("xxx") # method 3: has_param (T or F) key = rospy.search_param("xxx") # method 4: search_param names = rospy.get_param_names() # method 5: get_param_names (all param names)
* 参数相关命令
rosparam set para_xxx x # 设置参数 rosparam get para_xxx # 获取参数 rosparam load xxx.yaml # 从外部文件加载参数 rosparam dump xxx.yaml # 将参数写出到外部文件 rosparam list # 列出所有参数 rosparam delete # 删除参数
其他相关常用命令 rosnode
:
rosnode ping /node # 测试到节点的连接状态 rosnode list # 列出活动节点 rosnode info /node # 打印节点信息 rosnode machine # 列出指定设备上节点 rosnode kill /node # 杀死某个节点 rosnode cleanup # 清除不可连接的节点(已经死亡但是被当成活着的僵尸节点)
参考资料如下: ROS理论与实践
这篇关于科研向(仿真验证) ROS 学习笔记二 C:ROS 通信机制 —— 参数服务器的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-23DevExpress 怎么实现右键菜单(Context Menu)显示中文?-icode9专业技术文章分享
- 2024-12-22怎么通过控制台去看我的页面渲染的内容在哪个文件中呢-icode9专业技术文章分享
- 2024-12-22el-tabs 组件只被引用了一次,但有时会渲染两次是什么原因?-icode9专业技术文章分享
- 2024-12-22wordpress有哪些好的安全插件?-icode9专业技术文章分享
- 2024-12-22wordpress如何查看系统有哪些cron任务?-icode9专业技术文章分享
- 2024-12-21Svg Sprite Icon教程:轻松入门与应用指南
- 2024-12-20Excel数据导出实战:新手必学的简单教程
- 2024-12-20RBAC的权限实战:新手入门教程
- 2024-12-20Svg Sprite Icon实战:从入门到上手的全面指南
- 2024-12-20LCD1602显示模块详解