首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >订阅远程rospy发布程序

订阅远程rospy发布程序
EN

Stack Overflow用户
提问于 2020-03-16 14:13:50
回答 1查看 228关注 0票数 0

我使用rosjava作为订阅者,rospy作为发布者来实现发布/订阅。然而,我没有收到来自rospy的任何消息。我错过了什么吗?

JAVA中的订阅者(假设ip为: 1.1.1.1)

代码语言:javascript
复制
public void start_on_init() {
   nodeConfiguration = NodeConfiguration.newPublic("1.1.1.1");
   nodeConfiguration.setMasterUri(new URI("http://localhost:11311/"));
   NodeMain listener = new SampleProcessor();
   NodeMainExecutor nodeMainExecutor = DefaultNodeMainExecutor.newDefault();
   nodeMainExecutor.execute(listener, nodeConfiguration);
}

class SampleProcessor extends AbstractNodeMain {
   ...
   public void onStart(ConnectedNode connectedNode) {
      Subscriber<std_msgs.String> subscriber = connectedNode.newSubscriber("sample_topic", std_msgs.String._TYPE);
      subscriber.addMessageListener(new MessageListener<std_msgs.String>() {
         @Override
         public void onNewMessage(std_msgs.String message) {
            logger.info(message.getData());
   ...

PYTHON中的发布者(假设ip是: 1.1.1.2)

代码语言:javascript
复制
sample_publisher = rospy.Publisher("sample_topic", String , queue_size=10)
sample_publisher.publish(some_json_data)

在使用shell脚本运行python脚本之前,将主uri导出为环境变量

代码语言:javascript
复制
export ROS_MASTER_URI=http://1.1.1.1:11311
EN

回答 1

Stack Overflow用户

发布于 2020-03-23 05:56:38

我认为节点只有可能不在同一空间中。roscore在哪里运行?主机IP是否导出为从机上的ROS_MASTER_URI?我认为你不应该在ROS here中学习网络设置。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60701136

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档