【从0制作自己的ros导航小车:上位机篇】02、ros1多机通讯与坐标变换可视化

从0制作自己的ros导航小车

前言

上节课完成了里程计数据与坐标变换发布,但是还没有测试,本节进行测试,测试之前需要知道一件事,上位机也就是开发板一般不做可视化用,因为太耗费系统资源,所以我们需要另一台安装了ros的设备来进行可视化,本项目使用虚拟机安装ubuntu20.04,在ubuntu中安装了ros1-noetic,尽量与板端的ros版本一致。

那么此时需要做的就是让开发板中的ros与虚拟机中的ros进行通信,接下来进行设置和测试。

一、ros1多机通讯

①虚拟机端

1、执行命令:

sudo gedit /etc/hosts

在文件中添加如下内容:

第一行是开发板的ip和名字,第二行是虚拟机的ip和名字。注意需要在一个网段下,最简单的办法就是两者连接同一个热点,或者使用路由器桥接。


2、执行命令:

sudo gedit ~/.bashrc

在文件中添加如下内容:

第一行是虚拟机的名字。第二三行只需要替换ip,这个ip是虚拟机端的。


②开发板端

1、执行命令:

sudo gedit /etc/hosts

在文件中添加如下内容:

第一行是开发板的ip和名字,第二行是虚拟机的ip和名字。


2、执行命令:

sudo gedit ~/.bashrc

在文件中添加如下内容:

第一行是开发板的名字。第二三行只需要替换ip,都是虚拟机端的。

这样设置完成后,虚拟机端就相当于两个linux系统的主机端,开发板相当于从机端,roscore需要在主机端开启。设置完之后可以重启开发板和虚拟机,也可以在终端:

source ~/.bashrc

测试时可以自己运行小乌龟案例,虚拟机端运行小乌龟gui节点,板端运行键盘控制节点,测试是否可以板端按键控制虚拟机端的小乌龟运动。


二、rviz可视化小车坐标系

上一篇博客已经写好了代码,现在就测试看看能否正常运行。

①虚拟机段运行:roscore

②板端运行能够发布坐标变换的节点:rosrun uart_tf uartandtf

③虚拟机端运行rviz:rviz

rviz设置如下:

此时移动小车,肉眼观察是否正常,我的小车运动起来视频如下:

相关推荐
knighthood200117 分钟前
解决:ros进行gazebo仿真,rviz没有显示传感器数据
c++·ubuntu·ros
hairenjing11238 小时前
使用 Mac 数据恢复从 iPhoto 图库中恢复照片
windows·stm32·嵌入式硬件·macos·word
模拟IC攻城狮9 小时前
华为海思招聘-芯片与器件设计工程师-模拟芯片方向- 机试题-真题套题题目——共8套(每套四十题)
嵌入式硬件·华为·硬件架构·芯片
IT B业生9 小时前
51单片机教程(六)- LED流水灯
单片机·嵌入式硬件·51单片机
一枝小雨9 小时前
51单片机学习心得2(基于STC89C52):串口通信(UART)
单片机·嵌入式硬件·51单片机
IT B业生10 小时前
51单片机教程(一)- 开发环境搭建
单片机·嵌入式硬件·51单片机
u01015265811 小时前
STM32F103C8T6学习笔记2--LED流水灯与蜂鸣器
笔记·stm32·学习
好想有猫猫13 小时前
【51单片机】串口通信原理 + 使用
c语言·单片机·嵌入式硬件·51单片机·1024程序员节
云卓科技13 小时前
无人车之路径规划篇
人工智能·嵌入式硬件·算法·自动驾驶
stm 学习ing14 小时前
C语言 循环高级
c语言·开发语言·单片机·嵌入式硬件·算法·嵌入式实时数据库