【从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设置如下:

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

相关推荐
Wallace Zhang30 分钟前
STM32F407 | Embedded IDE01 - vscode搭建Embedded IDE开发环境(支持JLINK、STLINK、DAPLINK)
ide·vscode·stm32
youk1102 小时前
STM32 HAL库之配置数据FLASH存储
stm32·单片机·嵌入式硬件
木宁kk2 小时前
嵌入式硬件面试题
嵌入式硬件
小菜鸟学代码··3 小时前
STM32相关知识及其创建工程
stm32·单片机·嵌入式硬件
电气_空空5 小时前
基于单片机的病房呼叫系统设计
单片机·嵌入式硬件·毕业设计·毕设
柒月玖.6 小时前
基于AT89C52单片机的6位电子密码锁设计
单片机·嵌入式硬件
Lay_鑫辰14 小时前
禾川HCQ1系列PAC脉冲控制步进驱动器
运维·人工智能·单片机·嵌入式硬件·自动化
hi9415 小时前
Vivado - 远程调试 + 远程综合实现 + vmWare网络配置 + NFS 文件共享 + 使用 VIO 核
嵌入式硬件·fpga开发·vivado 远程开发·vmware网络配置
一只电子牛蛙16 小时前
【单片机】IIC需要注意什么(企业级回答)
单片机·嵌入式硬件
沐欣工作室_lvyiyi17 小时前
基于单片机的无线水塔监控系统设计(论文+源码)
人工智能·stm32·单片机·嵌入式硬件·单片机毕业设计