ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

ROS中Remap标签详解

2021-02-07 19:57:21  阅读:264  来源: 互联网

标签:订阅 Remap 主题 发布 名字 详解 别人 ROS 节点


remap标签介绍

remap标签”允许你以更结构化的方式将名称重新映射参数传递给ROS节点,而不是直接设置<节点>的参数属性。

作用

重命名一个已经存在的主题。

在自己的lanuch文件中,修改自己的发布的主题名字为别人要订阅的主题的名字。

(针对自己发布的主题:改变自己发布主题的名字)

  • from=“original-name”: 你节点中原来发布的主题名字
  • to=“new-name”: 重映射的目标名字

将别人发布的主题映射到自己订阅的主题上。

在自己的lanuch文件中,修改别人发布的主题为自己要订阅的主题的名字。

(针对别人发布的主题,和自己订阅的主题是同一个类型,但主题名字不同,这时候可以将别人发布的主题映射到自己要订阅的主题:相当于自己直接订阅了别人的主题、或者说改变别人发布主题的名字为自己要订阅的主题名字)

  • from=“original-name”: 你节点中订阅的主题名字
  • to=“des-name”: 别人发布的主题名字

举栗子说明其作用

下面是两个launch启动两个节点的例子:
一个节点叫pub_node,它发布一个topic名为/pub_data
一个节点叫sub_node,它订阅一个topic名为/sub_data

重命名一个已经存在的主题:
<!--pub_node.launch-->
<launch>    
    <node pkg="pub_node" type="pub_node" name="pub_node" output="screen">
    <!--pub_node节点发布的topic为/pub_data-->
        <!--将pub_node节点发布的话题/pub_node映射到/talker的名字上去:改名字-->
        <remap from="/pub_data" to="/talker" />        
    </node> 
</launch>
将别人发布的主题映射到自己订阅的主题上:
<!--sub_node.launch-->
<launch>    
    <node pkg="sub_node" type="sub_node" name="sub_node" output="screen">
    <!--sub_node节点需要订阅话题为/sub_data-->
        <!--将别人发布的/talker主题改为sub_node节点订阅的sub_data名字:映射别人给自己用-->
        <remap from="/sub_data" to="/talker" />
    </node>
</launch>

注意:

此时如果rostopic list 会发现
只有/talker主题,不再显示/sub_data、/pub_data 主题

标签:订阅,Remap,主题,发布,名字,详解,别人,ROS,节点
来源: https://blog.csdn.net/xhtchina/article/details/113746461

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有