vmware虚拟机与树莓派4B安装ubuntu1804 + ros遇到的问题

news/2024/5/18 18:24:11/文章来源:https://blog.csdn.net/feinifi/article/details/129371485

     如题所示,本人在虚拟机上安装ubuntu1804,可以很容易安装,并且更换系统apt源和ros源,然后安装ros,非常顺利,但是在树莓派4B上安装raspiberry系统就遇到了好多问题。

    树莓派我烧录的是这个镜像:ubuntu-18.04.5-preinstalled-server-arm64+raspi4.img,推荐大家使用华为云的镜像地址,我以前一直以为清华云镜像会很快,但是这次我下载镜像,发现华为云镜像要快很多。

    首先烧录系统,我们要烧录的是img结尾的镜像系统,而不是我们在网上下载的zip,xz压缩包,虽然使用DiskImage工具可以将任何文件烧录成功,但是只有img镜像烧录之后,才能被树莓派加载。

    再一个就是虽然烧录成功,插入TF卡到树莓派卡槽里,通电,树莓派4B会提示start4.elf is not compatible,也就是不兼容,意思是固件需要升级,解决办法就是去github上下载GitHub - raspberrypi/rpi-firmware: Firmware files for the Raspberry Pi。找到我们烧录成功之后的一个系统引导文件夹boot或者叫system-boot,并不是全部替换,只替换fixup*.dat和start*.elf总共16个文件。

    

    我试着全部替换,还是进不去系统,所以慎重替换。

    进入系统之后,又有问题了,系统连不上wifi,因为这个系统不带桌面,所以即使我们连接了显示屏,仍然是命令行,按照有的资料说是可以通过raspi-config命令设置无线,我的那个系统连raspi-config命令都没有。也有的说,在boot里面加入wpa_supplicant.conf文件,让系统启动之后,自动连接wifi,试了也不行,最后的办法就是直接使用网线连接,然后安装桌面。

apt install xubuntu-desktop

    这个安装就是不更换系统源,好像也很快。

    进入系统之后,可以通过桌面来手动连接wifi,和windows类似,只不过raspiberry系统的网络设置在屏幕右上角。 

     根据个人的经历,最好连接显示屏幕,这样有什么问题可以直接就发现了,而不用盲目等待,像系统烧录不正确的问题,固件不兼容,需要升级的问题,都可以很直观的看到。有的资料里面提到通过串口进入系统,然后各种设置安装,其实那是在系统顺利安装的前提下才可以进入,否则系统安装遇到问题,串口也无法进入系统,还是需要显示器。

     两个安装,都会遇到同一个问题就是,rosdep init 和 rosdep update会因为网络问题而失败,解决办法就是安装rosdepc,这个是一个叫 小鱼的博主开发的专门针对中国用户的工具,他使用国内的源,最终能达到rosdep update一样的效果。

apt install rosdepc
rosdepc init
rosdepc update

    在安装rosdepc的时候,可能会缺失其他库,根据提示,安装上缺失的库即可。 

    我在虚拟机和树莓派里面安装的都是ros-melodic-desktop-full,设置好了源,安装都很快,而且不会出现失败的情况。

    最后在虚拟机下运行小乌龟的示例:

    开启三个终端,分别运行如下命令:

   1、

roscore

    2、

rosrun turtlesim turtlesim_node

    3、

rosrun turtlesim turtle_teleop_key

    运行截图动画:

  

    树莓派连上屏幕,运行也是类似的效果。 

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

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

k8s-Kubernetes集群部署

文章目录前言一、Kubernetes简介与架构1.Kubernetes简介2.kubernetes设计架构二、Kubernetes集群部署1.集群环境初始化2.所有节点安装kubeadm3.拉取集群所需镜像3.集群初始化4.安装flannel网络插件5.扩容节点6.设置kubectl命令补齐前言 一、Kubernetes简介与架构 1.Kubernetes…

L - Let‘s Swap(哈希 + 规律)

2023河南省赛组队训练赛(四) - Virtual Judge (vjudge.net) 约瑟夫最近开发了一款名为Pandote的编辑软件,现在他正在测试,以确保它能正常工作,否则,他可能会被解雇!Joseph通过实现对Pandote上字符串的复制和…

断点调试(debug)

目录 F8案例 ​编辑 debug过程中报错 ​编辑用debug查看方法源码 一层一层查看 Arrays.sort()方法 F9 DebugExercise 介绍:断点调试是指在程序的某一行设置一个断电,调试时,程序运行到这一行就会停住,然后可以一步步往下调试…

项目实战典型案例17——环境混用来带的影响

环境混用来带的影响一:背景介绍背景出现的事故二:思路&方案环境混用的危害如何彻底避免环境混用的问题四:总结五:升华一:背景介绍 本篇博客是对对项目开发中出现的环境混用来带的影响进行的总结并进行的改进。目的…

JAVA后端部署项目三步走

1. JAVA部署项目三步走 1.1 查看 运行的端口 lsof -i:8804 (8804 为端口) 发现端口25111被监听 1.2 杀死进程,终止程序 pid 为进程号 kill -9 pid 1.3 后台运行jar包 nohup java -jar -Xms128M -Xmx256M -XX:MetaspaceSize128M -XX:MaxM…

基于半车悬架的轴距预瞄与轴间预瞄仿真对比

目录 前言 1. 半车悬架模型 2.轴距预瞄(单点预瞄)和轴间预瞄(两点预瞄)原理与仿真分析 2.1轴距预瞄(单点预瞄) 2.1.1预瞄原理 2.2.轴间预瞄(两点预瞄) 2.2.1预瞄原理 2.3仿真分析 3.总结 前言 对于悬架而言,四个车轮实际的输入信息是受到前后延时以及左右相…

Jetpack Compose 中的重组作用域和性能优化

只有读取可变状态的作用域才会被重组 这句话的意思是只有读取 mutableStateOf() 函数生成的状态值的那些 Composable 函数才会被重新执行。注意,这与 mutableStateOf() 函数在什么位置被定义没有关系。读取操作指的是对状态值的 get 操作。也就是取值的操作。 从一…

路由协议(OSPF、ISIS、BGP)实验配置

目录 OSPF基础实验 建立OSPF邻居 配置虚连接 配置接口的网络类型 配置特殊区域 配置路由选路 配置路由过滤 ISIS基础实验配置 配置ISIS邻居建立 配置认证 配置路由扩散 配置路由过滤 配置定时器 BGP基础实验配置 建立BGP对等体 建立IBGP对等体 建立EBGP对等体…

音频基础知识简述 esp-sr 上手指南

此篇博客先对音频基础知识进行简要叙述,然后帮助读者入门 esp-sr SDK。 1 音频的基本概念 1.1 声音的本质 声音的本质是波在介质中的传播现象,声波的本质是一种波,是一种物理量。 两者不一样,声音是一种抽象的,是声…

第二章Linux操作语法1

文章目录vi和vim常用的三种模式vi和vim快捷键Linux开机,重启用户管理用户信息查询管理who和whoami用户组信息查询管理用户和组的相关文件实用指令集合运行级别帮助指令manhelp文件管理类pwd命令ls命令cd命令mkdir命令rmdir命令rm命令touch命令cp指令mv指令文件查看类…

10.单点登录原理及JWT实现

单点登录原理及JWT实现 一、单点登录效果 首先我们看通过一个具体的案例来加深对单点登录的理解。案例地址:https://gitee.com/xuxueli0323/xxl-sso?_fromgitee_search 把案例代码直接导入到IDEA中 然后分别修改下server和samples中的配置信息 在host文件中配置 …

【Opencv项目实战】图像的像素值反转

文章目录一、项目思路二、算法详解2.1、获取图像信息2.2、新建模板2.3、图像通道顺序三、项目实战:彩图的像素值反转(方法一)四、项目实战:彩图的像素值反转(方法二)五、项目实战:彩图转换为灰图…

Spark Catalyst

Spark Catalyst逻辑计划逻辑计划解析逻辑计划优化Catalyst 规则优化过程物理计划Spark PlanJoinSelection生成 Physical PlanEnsureRequirementsSpark SQL 端到端的优化流程: Catalyst 优化器 : 包含逻辑优化/物理优化Tungsten : Spark SQL的优化过程 : 逻辑计划 …

pytorch安装的超级详细教程(没有之一)

一、发展历程 (简单介绍) (15年)caffe --> (16年)tensorflow1.x --> (17年)keras --> (18年)Tensorflow2.x --> (19年)pytorch。 面向gihub开源项目编程。 向下支持比较好,各个版本之间支持比较好,兼容性强。 版本…

自动驾驶介绍系列 ———— 看门狗

文章目录硬件看门狗软件看门狗差异分析延申窗口看门狗硬件看门狗 硬件看门狗的本质上是一个定时器电路。通常存在一个输入,输入到MCU的RST端。在正常工作状态下,MCU每隔固定时间间隔会输出一个信号给RST端,实现对看门狗端清零。如果在指定的时…

全网最全之接口测试【加密解密攻防完整版】实战教程详解

看视频讲的更详细:https://www.bilibili.com/video/BV1zr4y1E7V5/? 一、对称加密 对称加密算法是共享密钥加密算法,在加密解密过程中,使用的密钥只有一个。发送和接收双方事先都知道加密的密钥,均使用这个密钥对数据进行加密和解…

JAVA开发运维(nginx工作原理)

nginx源码目录结构: . ├── auto 自动检测系统环境以及编译相关的脚本 │ ├── cc 关于编译器相关的编译选项的检测脚本 │ ├── lib nginx编译所需要的一些库的检测脚本 │ ├── os 与平台相关的一些系统参数…

【3.6】链表、操作系统CPU是如何执行程序的、Redis数据类型及其应用

链表 题目题型203. 移除链表元素 - 力扣(LeetCode)辅助头节点解决移出head问题707. 设计链表 - 力扣(LeetCode)辅助头节点206. 反转链表 - 力扣(LeetCode)迭代 / 递归19. 删除链表的倒数第 N 个结点 - 力扣…

web餐饮开源程序

简介 一款专门针对餐饮行业而开发桌面应用程序 技术 借助Panuon.UI.Silver控件库,开发的一款餐饮软件。 运行环境:.NETFramework,Versionv4.8。 运行数据库:MySql。 ORM框架:SqlSugar。 第三方插件:Panuon.UI.Silv…

网上订餐管理系统的设计与实现

技术:Java、JSP等摘要:随着信息技术的广泛使用,电子商务对于提高管理和服务水平发挥着关键的作用。越来越多的商家开始着手于电子商务建设。电子商务的发展为人们的生活提供了极大的便利,也成为现实社会到网络社会的真实体现。当今…