连载文章,长期更新,欢迎关注:


写在前面

第1章-ROS入门必备知识

第2章-C++编程范式

第3章-OpenCV图像处理

第4章-机器人传感器

第5章-机器人主机

        5.1 X86与ARM主机对比

        5.2 ARM主机树莓派3B+

        5.3 ARM主机RK3399

        5.4 ARM主机Jetson-tx2

        5.5 分布式架构主机

第6章-机器人底盘

第7章-SLAM中的数学基础

第8章-激光SLAM系统

第9章-视觉SLAM系统

第10章-其他SLAM系统

第11章-自主导航中的数学基础

第12章-典型自主导航系统

第13章-机器人SLAM导航综合实战


在运行视觉SLAM、图像识别、机器视觉等对算力要求较高的场合,可以选择中高端的RK3399主机。RK3399是瑞星微的一款ARM芯片,国内有友善之臂、萤火虫等主板厂家都有针对RK3399这款芯片出配套的主板。我这里选的是友善之臂出的RK3399主板,根据硬件外设的搭配方案,也有很多个具体主板型号可选,我这里选的是性价比比较高的一款NanoPi M4V2,如图5-6所示。

图5-6  NanoPi M4V2

跟上面树莓派3B+类似,首先需要给RK3399安装上系统,然后安装ROS,最后还有装机软件和系统设置之类的,这样就搭建好基本的机器人开发环境了。在后续的开发中,就可以在此环境中开发我的SLAM导航等算法了。

5.3.1 安装Ubuntu18.04

通过友善之臂的官网可以知道RK3399可以安装多种操作系统,除了友善之臂官方定制的Ubuntu18.04外,还支持Ubuntu Core18.04、Android 8.1、Lubuntu 16.04等多种系统,如图5-7所示。

图5-7  多种系统支持

友善之臂官方定制的Ubuntu18.04是基于原始Ubuntu18.04深度定制的,稳定性是比较高的,推荐安装这个系统。可以前往友善之臂的官方wiki网站下载系统镜像,系统镜像的名称是rk3399-sd-friendlydesktop-bionic-4.4-arm64-YYYYMMDD.img.zip。下载好系统镜像后,系统安装方法和树莓派是一样的,格式化microSD卡、烧录镜像、上电开机这些步骤,请直接参考树莓派中的操作,不再赘述。

5.3.2 ROS melodic安装

在第1章的图1-2讲到过,每一个Ubuntu版本都对应一个ROS版本,18.04版本的Ubuntu对应melodic版本的ROS。因此,在刚刚安装好的Ubuntu18.04中需要安装ROS melodic发行版。从ROS官方安装教程可以知道ROS melodic已经支持amd64、arm64、armhf架构的Ubuntu,也就是说这几个硬件架构上运行的Ubuntu安装ROS的方法是一样的。所以,直接参考1.2.1节的安装过程就行了,不再赘述。

5.3.3 装机软件与系统设置

虽然我们已经顺利安装了Ubuntu18.04系统,并安装了ROS melodic发行版,为了后面跟高效和便捷的开发,这里将进行一些非常实用软件的安装和系统设置。安装配置过程和树莓派中是类似的,这里只简单叙述一下,具体操作请参考树莓派中的步骤。

关于开机自动登录,我们用的这款RK3399的Ubuntu18.04系统默认就是开机自动登录的,所以这一步直接跳过。

关于超级用户root密码创建,装好系统后,普通用户名为pi,密码为pi;超级用户名为root,密码为fa。所以这一步也直接跳过。

关于扩展SWAP空间,我们的RK3399主板的物理内存是4GB,容量比较大了,所以SWAP再分配4GB应该够用了。分配操作不讲了,直接参考树莓派中的操作。

关于wifi连接设置,跟树莓派中是一样的操作,把IP设置为静态,不多讲了。

关于安装vim文本编辑器,一句命令就搞定,参考树莓派中的操作,不多讲。

关于安装ssh远程登录工具,并设置ssh服务开机自启动,参考树莓派中的操作,不多讲。由于RK3399的系统中默认有/etc/rc.local,所以直接将开机自启命令添加到里面就可以了,比较简单。

关于USB外设绑定,参考树莓派中的操作就行了。

关于ROS节点开机自启动,也参考树莓派中的操作就行了。

源码仓库

参考文献

【1】 张虎,机器人SLAM导航核心技术与实战[M]. 机械工业出版社,2022.

更多推荐