当前位置: 首页 > news >正文

电脑虚拟机启动树莓派rviz

因为我虚拟机ip和树莓派ip前三位不一样,所以需要先给虚拟机手动设置一个静态ip。

一、虚拟机设置静态ip(非必须)

1.1 虚拟机设置静态ip

sudo nano /etc/netplan/01-netcfg.yaml

把下面内容加进去

network:version: 2renderer: networkdethernets:eth0:dhcp4: noaddresses:- 192.168.1.150/24  # 添加前缀长度gateway4: 192.168.1.1  # 确保这是你的路由器的 IP 地址nameservers:addresses:- 8.8.8.8- 8.8.4.4

192.168.1.150是我给虚拟机设的静态ip,

然后192.168.1.1这个是我设置的网关,

addresser和gateway4之间的关系是,ip的前三位必须对应,最后一位随便设个有效主机地址就行

gateway4:192.168.1.x

写完之后crtl+x   然后y保存,enter退出

1.2 重新应用配置

sudo netplan apply

结束后,在终端运行ifconfig查看ip是否设置成功。

二、配置环境

我主要是参考这篇博客的内容,感兴趣可自行查看,(为了自己查看方便,我就还是抄一下)

ROS开发之如何将树莓派采集的雷达、IMU数据在虚拟机rviz中显示

2.1 获取虚拟机和树莓派的ip及用户名

注意:用户名是终端每行开头后面那个

获取ip指令

ifconfig

2.2 配置hosts文件

2.2.1测试虚拟机和树莓派之间是否能ping通

在树莓派端执行 ping 虚拟机ip

ping 192.168.1.150

在虚拟机执行 ping 树莓派ip

ping 192.168.1.107

2.2.2 配置树莓派hosts文件

(1)打开hosts文件

sudo nano /etc/hosts

(2)填充内容

在文件的最后一行,把虚拟机的ip和用户名加进去

192.168.1.150 ubuntu

ctrl+x   然后y保存,enter退出

2.2.3 配置虚拟机hosts文件

(1)打开hosts文件

sudo nano /etc/hosts

(2)填充内容

在文件的最后一行,把树莓派的ip和用户名加进去

192.168.1.107 raspberrypi

三、配置bashrc文件

3.1 配置树莓派bashrc文件

(1)打开树莓派bashrc文件

sudo nano ~/.bashrc

(2)填充内容

export ROS_MASTER_URI=http://【树莓派IP】:11311
export ROS_HOSTNAME=【树莓派IP】eg:
export ROS_MASTER_URI=http://192.168.1.107:11311
export ROS_HOSTNAME=192.168.1.107

ctrl+x    y   enter

(3) 加载环境变量

source ~/.bashrc

注:以上更改后,必须跟以下虚拟机或其他设备联网才能正常运行ros,若需要树莓派单机运行,可将以上两行代码更改为(暂时没看懂这句话,先抄下来):

export ROS_MASTER_URI=http://localhost:11311
export ROS_HOSTNAME=localhost

3.2 配置虚拟机bashrc文件

(1)打开虚拟机bashrc文件

sudo nano ~/.bashrc

(2) 填充内容

export ROS_MASTER_URI=http://【树莓派IP】:11311
export ROS_HOSTNAME=【虚拟机IP】eg:
export ROS_MASTER_URI=http://192.168.1.107:11311
export ROS_HOSTNAME=192.168.1.150

ctrl+x     y       enter

(3) 加载环境变量

source ~/.bashrc

四、验证

(1)树莓派端操作

roscore

(2) 虚拟机端操作

rviz

若虚拟机rviz启动成功则说明,配置成功!


http://www.mrgr.cn/news/65808.html

相关文章:

  • 年度融资超30亿!人形机器人能为连接器和线束线缆带来什么机遇?
  • MongoDB简介
  • 开源免费的API网关介绍与选型
  • 代码随想录第十五天| 110.平衡二叉树 、 257. 二叉树的所有路径 、404.左叶子之和、222.完全二叉树的节点个数
  • C/C++--10--VS2008编译C语言时如何将const LineA * 里面的值赋值给另外一个结构体LineA?
  • k8s按需创建 PV和创建与使用 PVC
  • 【c++篇】:深入剖析vector--模拟实现属于自己的c++动态数组
  • SVD求解ICP旋转矩阵不正确处理
  • WorkFlow源码剖析——Communicator之TCPServer(中)
  • SpringBoot源码解析(一)
  • 响应式编程-reactor
  • 动态内存分配
  • 使用 pytorch 运行预训练模型的框架
  • FFmpeg 4.3 音视频-多路H265监控录放C++开发十二:在屏幕上显示多路视频播放,可以有不同的分辨率,格式和帧率。
  • HTB:Shocker[WriteUP]
  • 如何在BSV区块链上实现可验证AI
  • 隆盛策略股票杠杆交易市场罕见,26只“牛股”提示风险
  • VSCode 1.82之后的vscode server离线安装
  • Centos使用yum获取离线安装包
  • springboot 单元测试-各个模块举例
  • 爱奇艺大数据多AZ统一调度架构:打破数据孤岛,提升效率
  • windows——病毒的编写
  • Fish Agent:集成 ASR 和 TTS 的端到端语音处理模型,支持多语言转换
  • 单体架构的 IM 系统设计
  • 【教学类-12-10】20241104《连连看竖版6*6 (3套题目空心图案)中2班
  • 泛微开发修炼之旅--53ecology表单转pdf源码修改相关(表单转pdf时可以修改最后生成的pdf的内容)