ROS程序以及rostopic的一些命令

1. 命名空间的问题

ros::NodeHandle n("~");
// 与
ros::NodeHandle n;

加了 '~'的,默认在其发布的话题名前面加上: /节点名

 2. rostopic

2.1 查看topic的发布方和订阅方

rostopic info 消息名

也可以用rqt_graph查看

2.1 查看消息被订阅了几次

rostopic list -v

参考:

[1] .ROS/Tutorials/UnderstandingTopics - ROS Wiki

 


3.  ros订阅subscribe的深入理解

subscribe的原型如下:

  template<class M>
  Subscriber subscribe(const std::string& topic, uint32_t queue_size, void(*fp)(const boost::shared_ptr<M const>&), const TransportHints& transport_hints = TransportHints())
  {
    SubscribeOptions ops;
    ops.template init<M>(topic, queue_size, fp);
    ops.transport_hints = transport_hints;
    return subscribe(ops);
  }

最后一个参数:

const TransportHints& transport_hints = TransportHints()

 const &代表常量引用,这里代表选择通信方式,ROS提供了五种通信方式:tcp,reliable,unreliable,udp,tcpNoDelay,具体的调用方式书写以及哪一种通信延迟最小,参考文献[2]

[2]这篇很重要。

参考:

[2].ROS1 MSG中的TCP延迟处理 - 知乎

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值