本人手上有一块树莓派3b+和一个32G内存卡。
想着在上面安装一个ubuntu系统学习ros用。
硬件准备清单:
1.树莓派
2.SD卡及读卡器。
3.屏幕和hdmi连接线。
4.键盘鼠标。
然后了解到ubuntu有适配树莓派的版本 ubuntu mate,于是下载系统镜像(我下载的是ubuntu20.04.1)
将镜像烧写进SD卡之后。
启动黑屏,出现bootloader相关错误,本以为是操作失误造成,但是没成想过了两分钟自动启动开始安装,然后根据向导顺利安装成功。
启动ubuntu mate之后发现巨卡,基本上鼠标移动之后点击项目就不动了,等好几分钟之后桌面会有反应,然后可以流畅移动鼠标,再次点击项目
就有卡住不动了。
怎么办呢?是不是ubuntu 20.04.1最好用树莓派4运行比较好?不知道是不是3b+带不动的原因。
我在想到时候运行ros是不是也是非常卡?在考虑要不要换回 ubuntu18.04版本然后安装ros melodic。这样的话会不会流畅许多?
还是说我应该下载32位系统才行?后续继续尝试!
1.先尝试下载32位系统再次进行安装试试。下载如下镜像,又是一个小时的等待!!
结果还是失败了。出现如下错误,我是按照这个教程安装的。https://linux.cn/article-10817-1.html。
也是按照里面的链接下载的系统。
查找原因后发现问题。
然后通过看这个网站https://ubuntu.com/download/raspberry-pi。
发现问题所在:也就是说desktop版本的就只支持pi4。而我这个是3b+。所以说就只能安装server版本的。找到
pi3 32bit的版本再次下载。
参考博客这里有18.04的下载链接:https://wiki.ubuntu.com/ARM/RaspberryPi#Recovering_a_system_using_the_generic_kernel
注意:armhf是32位系统。arm64是64位系统。
然后ubuntu 的server版本就给安装好了,安装好了之后发现,没有桌面,完全只有终端。啊啊啊。
树莓派在putty下联网。
1.输入
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
2.在尾部添加
network={
ssid=""
psk=""
}
填上自己的ssid和password然后reboot
就可以了。
重启之后为了确认连上wifi,那么我们看一下ip地址。
输入arp -a
查看树莓派的ip地址,注意利用putty连接的这个ip地址和路由器分配给树莓派上网的ip地址不同。
可以看到。已经有了ip地址。我们来ping一下百度试试看。
之后等了几年,发现没有返回,是不是dns服务器没有配置好无法解析百度的ip地址呢?我们ping一下百度的ip试试。
还是不行,怎么办呢?换个ip试试。
一看都不行,是哪里的问题呢?用自己的手机开个热点试试吧。开了热点之后,发现可以ping通百度了。果然是原来热点的问题。
原来热点的ssid=“z、、、”这里面有3个中文,可能是这个的影响吧。
将原来的热点名字更改一下。
通过pip install esptool安装一个工具包试试看。
可以正常下载。
关机:
sudo shutdown -h now
安装的ubuntu还是不行,没有成功,再试试ubuntu mate版本吧,Ubuntu mate版本在官网一直找不到16.04版本,只有20.10和20.04版本,由于要安装16.04版本,
因此在网络找了好久终于发现,在https://releases.ubuntu-mate.org/archived/xenial/这里找到了16.04版本的,找到armhf这个文件夹。
然后安装这个系统试试。
安装完了之后又出现了彩虹屏,这是怎么回事啊?然后就百度解决办法,最后搜到一个东西能够替换3个文件就可以了,但是安装的时候又发现鼠标键盘无法使用。
心累。
不想解决了,然后又发现
这里有完美兼容版?下载试试吧,真实一波三折。
链接:https://pan.baidu.com/s/1DGthFhwBadxb0NyWqBdy1g
提取码:od9q
链接和提取码先放这里,万一有用后续可以用。
ok,安装成功。
然后配置vnc方便以后无键盘鼠标使用。
https://blog.csdn.net/qq_40584960/article/details/105557960
用的这个教程进行安装,在第一步的时候发现,无法安装。提示无法锁定管理目录,然后重启一下树莓派可以了。
第一步安装过程比较慢,下次看看有什么好办法可以更快的安装的。
在第四步用vim编辑文件前需要安装vim
sudo apt-get install vim
安装完了之后就可以执行第四步了,可以顺利编辑文件。
然而,发现vncserver也启动不了。最后,可以用putty通过ssh连上机,完美,然后再想办法看怎么打开vnc。
下面这个帖子可以开机自动启动wifi连接
https://www.flasky.cn/raspberry-pi/auto-connect-wlan.html
然后执行过程中发现
permission denied
然后通过下面的方法解决:
https://blog.csdn.net/zhengxiangwen/article/details/50625986
解决之后继续上述教程,然后发现可以打开。树莓派每次开机之后自动连接上指定wifi,这下可以先用ssh连接,省下了一个键盘和鼠标。
然后继续看如何开通vnc吧。
下面这个教程完美安装vnc,但是启动之后背景是灰色的。
记得更改分辨率和用户名!
https://jingyan.baidu.com/article/6181c3e0df7852152ef15308.html
解决方法如下,可以解决树莓派启动vnc灰屏问题。
https://blog.csdn.net/qq_32384313/article/details/77533012
启动成功如下:完美
安装ros的过程中在:sudo apt-get update的时候出现如下错误。
E: 无法获得锁 /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)
可以通过以下帖子进行解决:
https://blog.csdn.net/yygydjkthh/article/details/39388215
在sudo apt-get update的时候一直发现更新的所有国内源都无法使用,所有的问题都是全部忽略,没办法获取到需要下载的包。
然后发现这里的更新源可以使用:
https://www.cnblogs.com/little-kwy/p/10761713.html
然后问题完美解决。
然后发现在sudo apt-get update时发现下载ubuntu源的东西的时候挺快的,但是在下载ppa.launchpad.net里面的内容的时候,还是巨卡。
下面有解决方案:
https://blog.csdn.net/qq_39642978/article/details/98340947
在使用这个方案解决问题的过程中发现树莓派连接不了wifi热点了,一度以为是这个操作有问题。找了好久发现是电脑的网卡我换了usb口插之后,开启的热点拒绝
接入任何设备。将网卡插回原有的usb口就可以了。(那个usb口好像坏了,平常U盘都用不了)。
然后,继续开始安装ros。
apt-get update出错:由于没有公钥,无法验证下列签名。解决方案:
https://blog.csdn.net/qq_24805141/article/details/52838730
然后继续
根据以下教程:https://www.cnblogs.com/pyxz/p/10552298.html
终于安装成功ros,完美收官!
然而,重启了ubuntu之后打开roscore发现:
解决方案:https://blog.csdn.net/qq_33697852/article/details/106496718