【树莓派4B】ROS分布式通信

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

在学习ROS的过程中,如何通过树莓派作为主机,PC作为从机(安装的是windows+ubuntu双系统,有需要的小伙伴可以留言),实现分布式通信。以下关于分布式框架的搭建流程。


提示:以下是本篇文章正文内容,下面案例可供参考

一、ROS分布式通信是什么?

ROS(Robot Operating System)是一种用于机器人应用程序开发的框架,它支持分布式通信和模块化架构。 在ROS中,分布式通信是一种基本的通信方式,它允许不同的ROS节点(ROS Node)在不同的计算机上运行,并通过ROS网络进行通信,以实现机器人系统的各个部分之间的信息交换和协作。

二、搭建步骤

1.前提准备,配置树莓派静态IP

1.硬件准备:使用显示屏或 HDMI采集卡连接树莓派并启动;

2.为树莓派连接无线网络;

3.为树莓派配置静态IP;

具体操作如图:

树莓派已经连接上wifi
树莓派在这里插入图片描述
点开wifi,选择wifi设置
在这里插入图片描述
可以看到wifi的详细信息,复制IPv4的地址
在这里插入图片描述
进入IPv4,IPv4选择手动,地址为刚才复制的地址,子网掩码为255.255.255.0,网关为192.168.1.1,DNS为详细信息中的DNS,配置好了后点击应用。
在这里插入图片描述

2.修改配置文件

分别修改不同计算机的 /etc/hosts 文件,在该文件中加入对方的IP地址和计算机名:
@前面的为用户名,@后面的为计算机名

下图为树莓派,即主机的IP为:192.168.1.122 计算机名:ubuntu
由于树莓派配置了静态IP,所以每次开机IP都不会发生变化。
在这里插入图片描述

在这里插入图片描述

下图为PC端,即从机的IP为:192.168.1.116 计算机名为:yang-lenovo
PC端没有配置静态IP,每次连接wifi可能会发生变化,如果IP发生变化,后面的文件都需要修改。
在这里插入图片描述

在这里插入图片描述
PC端打开终端输入如下

sudo gedit /etc/hosts

将主机的IP和计算机名添加到其中,如第三行所示
在这里插入图片描述同理树莓派,即主机端相同的操作
在这里插入图片描述
设置完毕,可以通过 ping 命令测试网络通信是否正常。如图所示

ping 计算机名orIP地址

在这里插入图片描述
在这里插入图片描述
出现如图所示,说明主机与从机端的通信已经成功建立。

因为系统中只能存在一个Master,所以从机需要知道Master的位置。
在从机的.bashrc隐藏文件(ctrl+h打开)中添加如下内容:
ROS_HOSTNAME添加的是从机地址;
ROS_MASTER_URI添加的是主机地址。
打开终端输入:

gedit ~/.bashrc

在末尾插入
export ROS_MASTER_URI=http://主机IP:11311
export ROS_HOSTNAME=从机IP
在这里插入图片描述

在此,主从分布式框架已经搭建好了

3.测试

1.主机启动 roscore(必须)
注意:当设置从机 ROS_MASTER_URI 为主机(不为从机本机)后,从机上是不能运行 roscore 的。
2.主机启动订阅节点,从机启动发布节点,测试通信是否正常

3.反向测试,主机启动发布节点,从机启动订阅节点,测试通信是否正常

以控制小海龟移动为例:在主机终端启动master和小海龟节点,在从机终端启动键盘节点进行控制。
在这里插入图片描述

在这里插入图片描述
可以通过从机的键盘节点控制主机的小海龟移动,说明分布式框架已经搭建成功。

总结

当然我们的多机通信不局限于两台计算机设备。
有问题多多留言。

  • 38
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
树莓派4B ROS镜像是为树莓派4B开发的一种特定操作系统(Raspberry Pi 4B ROS Image),它包含了ROS(机器人操作系统)的所有必要组件和库,以便在树莓派上进行机器人相关的开发和项目。 ROS(机器人操作系统)是一个开源的、灵活的机器人软件平台,它提供了一系列工具、库和规范,用于构建机器人系统和应用。ROS支持多种编程语言,如C++和Python,并提供了一系列功能包,以支持机器人导航、感知、控制等任务。 树莓派4B ROS镜像为树莓派的用户提供了一个方便且易用的环境,以便开展机器人相关的项目。借助这个镜像,用户可以在树莓派上运行ROS并访问ROS的各种功能和库。此外,该镜像还预先安装了一些常用的ROS功能包,如导航功能包、感知功能包等,以提供更多的开发选项和启动点。 树莓派4B ROS镜像的安装非常简单,只需下载镜像文件,并将其烧录到SD卡上,然后将SD卡插入树莓派即可。一旦完成安装,用户就可以开始使用ROS进行机器人相关的开发,并利用树莓派4B的性能和GPIO接口来实现物理控制和交互。 总结来说,树莓派4B ROS镜像提供了一个方便、易用的环境,使得在树莓派上进行机器人相关的开发变得更加便捷。它为用户提供了ROS的所有必要组件和库,并预先安装了一些常用的ROS功能包,以帮助用户快速开始开发机器人应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值