概述
首先可看下关于本机的ROS环境变量配置
$ printenv | grep ROS
//显示类似如下
ROS_ROOT=/opt/ros/kinetic/share/ros
ROS_PACKAGE_PATH=/home/peng/catkin_ws/src:/opt/ros/kinetic/share:/opt/ros/kinetic/stacks
ROS_MASTER_URI=http://localhost:11311
ROSLISP_PACKAGE_DIRECTORIES=/home/peng/catkin_ws/devel/share/common-lisp
ROS_DISTRO=kinetic
ROS_ETC_DIR=/opt/ros/kinetic/etc/ros
其中有一个 ROS_MASTER_URI=http://localhost:11311
如果我们的所有ROS节点程序都运行在一个主机上,那么当然roscore 也就是所谓的节点管理器的地址可设置为本地地址,端口为11311,我们运行的节点就会根据这个环境变量找到这个节点管理器。
但是我们ROS一般不这么用,如果这么用,就完全失去了ROS的魅力所在了,ROS是松耦合、分布式的,我们的ROS节点可以运行在不同的平台不同机器上,所以这时的分布式的环境,就需要进一步ROS的环境变量了。
export ROS_MASTER_URI=http://192.168.1.4:11311
export ROS_IP=192.168.1.4
//这是运行在roscore 就是master node的URI 和所在机器的ip
export ROS_MASTER_URI=http://192.168.1.4:11311
export ROS_IP=192.168.1.116
rosrun pkg-name node-name
//这是我们运行在另一台机器上的ros节点 指定master的端口和地址 还有自身的地址
ROS学习–分布部署环境变量配置
ROS/ EnvironmentVariables
最后
以上就是怕孤单飞鸟为你收集整理的ROS 分布部署环境变量的配置的全部内容,希望文章能够帮你解决ROS 分布部署环境变量的配置所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复