ROS理论与实践学习笔记——2 ROS通信机制之参数服务器

        参数服务器在ROS中主要用于实现不同节点之间的数据共享。参数服务器相当于是独立于所有节点的一个公共容器,可以将数据存储在该容器中,被不同的节点调用,当然不同的节点也可以往其中存储数据。

3.1 参数服务器理论模型

        参数服务器实现是最为简单的,该模型如下图所示,该模型中涉及到三个角色:

        ROS Master (管理者)

        Talker (参数设置者)

        Listener (参数调用者)

        ROS Master 作为一个公共容器保存参数,Talker 可以向容器中设置参数,Listener 可以获取参数。

1)Talker 设置参数
	Talker通过RPC向参数服务器发送参数(包括参数名与参数值),ROS Master 将参数保存到参数列表中。
    
2)Listener 获取参数
	Listener 通过 RPC 向参数服务器发送参数查找请求,请求中包含要查找的参数名。
    
3)ROS Master 向 Listener 发送参数值
	ROS Master 根据步骤2请求提供的参数名查找参数值,并将查询结果通过 RPC 发送给 Listener。
    
参数可使用数据类型:
	32-bit integers
	booleans
	strings
	doubles
	iso8601 dates
	lists
	base64-encoded binary data
	字典
注意:参数服务器不是为高性能而设计的,因此最好用于存储静态的非二进制的简单数据

3.2 参数操作(C++)

在 C++ 中实现参数服务器数据的增删改查,可以通过两套 API 实现:
	ros::NodeHandle
    	setParam("键",值)
	ros::param
    	set("键","值")

        参数服务器新增(修改)参数:

        参数服务器获取参数  

        参数服务器删除参数  

3.3 参数操作(Python)

        参数服务器新增(修改)参数  

       参数服务器获取参数  

       参数服务器删除参数  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值