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

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

相关推荐
wdfk_prog18 小时前
ROS教程10:从 gtest 到 rostest——Unit Test、Node 集成测试、rosbag 与 rqt 验证闭环
运维·缓存·docker·容器·ros
飞睿科技18 小时前
从一颗雷达芯片到一台生命体征仪:飞睿 UWB 雷达的“一芯两用”
嵌入式硬件·物联网·uwb
Zw-awa19 小时前
点亮第一盏 LED:STM32 的 GPIO 到底在控制什么
stm32
剑指offer.19 小时前
嵌入式硬件-ARM芯片的启动
c语言·嵌入式硬件·嵌入式
Kuakewei88819 小时前
1.5V升压3V专用芯片PW5100在单节干电池供电中的边界条件
嵌入式硬件
Kuakewei88820 小时前
1.5V升压3.3V专用芯片PW5100直通关断与PW5103真关断分析
嵌入式硬件
威嵌神州21 小时前
VxWorks6.9 BSP 适配:飞腾 D2000/FT2000/4 平台、驱动开发
驱动开发·嵌入式硬件·fpga开发·系统架构
一直C1 天前
ARM裸机开发Day04|IMX6ULL汇编&C点灯实操,Makefile、链接脚本、段解析
嵌入式硬件·imx6ull·交叉编译
女神下凡1 天前
端侧 AI 产品 有什么产品
人工智能·嵌入式硬件
pan0c231 天前
什么是ESP8266-NodeMCU
嵌入式硬件·esp8266