ROS实践14 分布式通信

news2024/10/6 1:43:47

文章目录

    • 运行环境:
    • 思路:
    • 1.1 设置固定IP
    • 2.1 修改hosts文件
    • 3.1 检查是否成功通信
    • 4.1 修改bashrc
    • 5.1 演示

运行环境:

ubuntu20.04 noetic
宏基暗影骑士笔记本

思路:

主机启动roscore和乌龟速度订阅节点,从机启动乌龟键盘控制节点,通过从机来控制主机中的乌龟运动。

1.1 设置固定IP

主机和从机都分别执行下面的操作

ifconfig

在这里插入图片描述在这里插入图片描述在这里插入图片描述

2.1 修改hosts文件

主机和从机都分别执行下面的操作

sudo gedit /etc/hosts

另一台计算机的ip 和 它的hostname

# hostname查询
duduzai@duduzai:~$ hostname
duduzai

在这里插入图片描述

保存后重启计算机

3.1 检查是否成功通信

ping 对方的IP

4.1 修改bashrc

1)配置主机的bashrc

gedit ~/.bashrc

主机端配置 (自己的IP+端口号, 自己的IP)

export ROS_MASTER_URI=http://主机IP:11311
export ROS_HOSTNAME=主机IP

更新环境配置

source .bashrc

2)配置从机的bashrc

gedit ~/.bashrc

从机端配置 (主机的IP+端口号, 自己的IP)

export ROS_MASTER_URI=http://主机IP:11311
export ROS_HOSTNAME=从机IP

更新环境配置

source .bashrc

5.1 演示

1)主机:启动订阅速度节点

roscore
rosrun turtlesim turtlesim_node 

2)从机:启动发布键盘控制节点

rosrun turtlesim turtle_teleop_key

⭐⭐⭐ 嘟嘟崽 ⭐⭐⭐
⭐⭐⭐ 祝你成功 ⭐⭐⭐

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/419116.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大模型时代下做科研的思路

总结zhu老师观点 Efficient 1.这篇论文是真的好orz,总结了目前的视频类模型 修改周边的一些参数,来训练,不改基础的模型(太大了。。。没资源没卡) 引申: prompt 是你想模型干什么你就给提示&#xff08…

python win环境 pip setuptools wheel安装

2023年。 今年的测试小学弟问我python这个安装怎么这么啥b。没有安装pip时 python setup.py install时需要setuptools,安装setuptools需要安装pip。 我看了看他的python是官网下的压缩包解压来的,内部非常干净。python-3.10.11 1. 安装pip 遇到这种情况…

“智慧赟”平台型经济引领行业新标杆

​  2021年,国家高度重视区块链行业发展,各部委发布的区块链相关政策已超60项,区块链不仅被写入“十四五”规划纲要中,各部门更是积极探索区块链发展方向,全方位推动区块链技术赋能各领域发展。在区块链产业具体内容…

【JavaEE】Spring中存储和获取Bean(使用注解)

目录 存储Bean 配置文件中设置扫描路径 使用注解存储Bean 五大类注解存储Bean 五大类注解之间的关系 为什么要有五大类注解 Bean方法注解存储方法返回值 注入Bean 属性注入 Setter方法注入 构造方法注入 Resource注解 存储Bean 上篇文章的存储Bean是在Spring的配置…

16.网络爬虫—字体反爬(实战演示)

网络爬虫—字体反爬一字体反爬原理二字体反爬模块FonttoolsTTF文件三FontCreator 14.0.0.2790FontCreatorPortable下载与安装四实战演示五后记前言: 🏘️🏘️个人简介:以山河作礼。 🎖️🎖️:Python领域新星…

一天吃透MySQL面试八股文

什么是MySQL MySQL是一个关系型数据库,它采用表的形式来存储数据。你可以理解成是Excel表格,既然是表的形式存储数据,就有表结构(行和列)。行代表每一行数据,列代表该行中的每个值。列上的值是有数据类型的…

python调用matlab源码函数

Background 关于在python中调用matlab函数,我之前已经写过两篇文章了,非常详细,且之前的方法可以不用安装matlab程序,只需要按照mcr运行环境就行了。具体可以参考:【java和python调用matlab程序详细记录】【Python 高效…

一文解析为什么进程地址空间中包括操作系统?

今天聊聊进程地址空间这点小事。说到进程的地址空间,大家可能都知道这样一张图: 这张图就是Linux程序运行起来后所谓的进程地址空间,这里包括我们熟悉的代码区、数据区、以及堆区和栈区,今天我们不讲解这些区域,而是重…

elementui的el-message重复点击,提示会一直叠加

1.问题: elementui的el-message连续点击按钮会出现一排提示,注意体验很不友好,而且也不好看 如下: 这种问题如何解决呢 ? 2.参考api elementui的官网有这个api,也就是说通过close这个方法可以解决 3.附上代码&a…

设计模式之美-结构型模式-装饰器模式

装饰器模式主要解决继承关系过于复杂的问题,通过组合来替代继承。指在不改变现有对象结构的情况下,动态地给该对象增加一些职责(即增加其额外功能)的模式,装饰器模式提供了比继承更有弹性的替代方案将功能附加到对象上…

4月20日专家谈:内网突遭攻击,安全人员一招有效处理

随着网络威胁的愈加频繁,企业面临的安全问题也越来越多,传统的安全能力在面对日益增长的安全问题时显得捉襟见肘。 SOAR借助安全编排和自动化技术,将人工操作和技术集成在一起,自动化完成安全处置,帮助企业更快地响应…

JavaScript【九】JavaScript BOM(浏览器对象模型)

文章目录🌟前言🌟 Bom(浏览器对象模型)🌟window对象:🌟属性:🌟 方法:🌟 获取元素:🌟 添加点击事件:🌟 获取表单…

大数据Flink进阶(二十):Flink细粒度资源管理

文章目录 Flink细粒度资源管理 一、细粒度资源管理介绍 二、细粒度资源适用场景

关于合金电阻

合金电阻是一种具有高精度、高稳定性和高温度特性的电阻器件,广泛应用于各种电子设备中。选型合适的合金电阻并进行合理的设计,可以有效地提高电路的性能和可靠性。本文将从合金电阻的基本原理、选型方法及设计要点等方面进行详细介绍。 一、合金电阻的基…

简单认识下with和上下文管理器

with 对于系统资源如文件、数据库连接、socket,应用程序打开这些资源并执行完业务逻辑之后,必须关闭(断开)该资源。系统允许打开的最大文件数量是有限的,如果我们打开文件后没有及时关闭,极端情况下会出现…

21天学会C++:Day2----命名空间的那些事儿

CSDN的uu们,大家好。这里是C入门的第二讲。 座右铭:前路坎坷,披荆斩棘,扶摇直上。 博客主页: 姬如祎 收录专栏:C专题 目录 1. 为什么要有命名空间 2. 命名空间的定义 3. 访问命名空间域中成员的三种方…

基于Java+SpringBoot+vue的人职匹配推荐系统设计与实现【源码(完整源码请私聊)+论文+演示视频+包运行成功】

博主介绍:专注于Java技术领域和毕业项目实战 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟 Java项目精品实战案例(300套) 目录 一、效果演示 二、…

virtualbox如何配网

配网搞了一天!!! 百度到的所有教程都是垃圾!! 就没有一个写全的!!写明白怎么配的!!! 我自己来!!!不会配的看我&#xf…

浅析 Queue 和 Deque

终于开始了 LeetCode 的练习,看到 102. 二叉树的层序遍历 有种解法利用到了队列,想着挨个看看基础队列中的方法,便有了这篇文章。 基于 Java 对 Queue 以及 Deque(double ended queue) 实现进行学习介绍,JD…

Vue之代码传送(teleport)

代码传送是啥 在Vue中,代码传送就是将某部分的代码从Vue的template标签下传送到指定的地方,这个地方通常是body标签下。在使用Vue编写界面时,我们都是在html的Body中写一个div,然后指定一个id,然后在Vue的实例中的tem…