【ROS解决】Unable to register with master node [http://ipaddress:11311/]: master may not be running yet

这篇具有很好参考价值的文章主要介绍了【ROS解决】Unable to register with master node [http://ipaddress:11311/]: master may not be running yet。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题描述

在使用 rospy 编程过程中,编写的python程序出现了下面的问题,一直卡着不动了。
unable to register with master node [http://localhost:11311]: master may not,ROS,C++,Python,python
【注:这里的localhost可能是你自己设置的机器人节点等一些自定义IP地址】
一开始,我还以为是python编译器出了问题,我尝试了 python2 和 python3 去执行py文件,结果是一样的。这就让我在想为什么会出现这个情况,因为C++代码运行就没问题。

分析原因

1 如果您的异常中,那个IPAddress是 localhost ,很可能是您的roscore没有运行,可以打开新终端,然后运行 roscore 【这个原因一般是因为我们不熟悉ros造成的,但我这里不是这种情况】
2 如果您的异常中,那个IPAddress不是 localhost ,可能是在系统的 .bashrc 文件中,您设置了 ROS_MASTER_URI,即在.bashrc文件中,可能包含下面类似的字眼
 export ROS_MASTER_URI=http://$ROBOT_IP:11311

出现此问题的主要原因是在ros的库文件中,有个环境文件 python2.7/dist-packages/rosgraph/rosenv.py,导致rospy在加载过程中,需要在配置文件中加载 ROS_MASTER_URI,如果没有配置,就是默认本机(localhost),这就导致了这个问题的出现。

原因2的解决

1 打开新终端,切换到根目录下, 然后打开 .bashrc 文件,一定确保是在根目录下

unable to register with master node [http://localhost:11311]: master may not,ROS,C++,Python,python

2 定位到上方的 export ROS_MASTER_URI=http://$ROBOT_IP:11311,注释即可,然后保存该文件

unable to register with master node [http://localhost:11311]: master may not,ROS,C++,Python,python文章来源地址https://www.toymoban.com/news/detail-544825.html

3 在根目录下,输入下方命令,激活当前配置
source .bashrc
4 重新打开一个新的终端,运行出问题的python文件,会发现一切正常了。

到了这里,关于【ROS解决】Unable to register with master node [http://ipaddress:11311/]: master may not be running yet的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包