ROS入门笔记(十三):分布式通信


ROS入门笔记(十三):分布式通信

ROS是一种分布式软件框架,节点之间通过松耦合的方式进行组合。

01 如何实现分布式多机通信

1.1 设置IP地址,确保底层链路的连通

步骤一,树莓派和电脑必须在同一个局域网

步骤二,输入ifconfig,查看两台计算机(ggk-pc,raspi2)的IP地址;

步骤三,IP地址分别设置在对方的hosts文件中,保存、退出;

$ sudo vi /etc/hosts

步骤四,在两台计算机上分别使用ping命令测试网络是否连通。

$ ping raspi2       #在ggk-pc电脑上 

$ ping ggk-pc       #在raspi2上

1.2 在从机端设置ROS_MASTER_URI,让从机找到ROS Master

ROS Master 只能在一台计算机上运行,在另外一台计算机上设置环境变量,找到ROS Master在哪运行;

在树莓派上

步骤一,启动终端,输入以下命令:

$ vi .bashrc

步骤二,拉到结尾,按小写字母o,不是零;

步骤三,在结尾输入以下命令,保存、退出即可;

ROS Master:默认端口号 11311

export ROS_MASTER_URI=http://hcx-pc:11311     #(当前终端有效)保存,退出

或者
echo"export ROS_MASTER_URI=http://hcx-pc:11311">>~/.bashrc     # (所有终端有效)保存、退出

02 实战操作

步骤一,主机端启动ROS Master与海龟仿真节点;

$ roscore
$ rosrun turtlesim turtlesim_node

步骤二,从机端发布一个速度控制消息;

$ rostopic pub -r 10 /turtlel/cmd_vel
geometry_msgs/Twist "linear:
x:0.5
y:0.0
z:0.0
angular: 
x:0.0
y:0.0
Z:0.5"


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM