Jetson nano(aarch64)部署autoware自动驾驶平台

Jetson nano(aarch64)部署autoware自动驾驶平台

因为本人在部署阶段搜索到的资料较少,比较辛苦,走了许多弯路,所以进行了一些资料的整合与自己的一些想法的记录,谨做记录、参考。

基本的环境(opencv,qt5,eigen3.3.7,cuda,)安装好后采用源码编译方式部署

使用:jetson nano(4G)、ubuntu18.04LTS、ros-melodic

环境部署阶段

opencv安装

本人先同时装了opencv和ros,导致版本冲突,才发现ros-melodic内有opencv(默认安装4点多版本),只好卸掉自己装的,但编译的过程中ros的opencv版本也有坑,下文会提到。

qt5安装

参考官方指导:http://www.jetsonhacks.com/2017/01/31/install-qt-creator-nvidia-jetson-tx1/

先输入:

sudo apt-get install qt5-default qtcreator -y

然后按官方教程配置下qt软件

cuda

万事开始之前,一定要检查nano的cuda是10.2的还是10.0的(10.2的建议重烧镜像,貌似可以通过jetpack的重装来装10.0,但我没找到,重装镜像可以找jetpack4.2、4.3的,内置cuda10.0,我的是jp是4.6cuda是10.2)cuda重装了后就斜入环境变量,刷新一下就可以使用了。

autoware编译阶段

报错一

(由于opencv版本(3.2.0)不符合编译要求):主要是cv_bridge、libopencv_objectect.so.3.2.0、autoware_health_checker(部分)之类的错误

解决办法(亲测有效)

1、卸载现有版本的opencv

sudo apt-get purge libopencv-dev

2、这个时候需要修改一个系统文件,就是这个文件导致apt安装的opencv版本是4.0版本而不是ubuntu18.04系统默认的3.2.0版本,文件路径是:/etc/apt/sources.list.d/nvidia-l4t-apt-source.list

打开之后就两行东西,注释掉里面的两行就行

3.apt update

4.sudo apt-get install libopencv-dev,就可以成功安装opencv3.2.0版本了

报错二

cuda版本要求10.0,我是10.2,就重新烧了镜像,呜呜呜,从头来。

报错三

运存不够用,报低内存警告、卡机,报下列错

本来是想着多编译几次,但都卡在第92个文件上,就想着没那么简单

下文总结:调,报错,调。。。。。

就去了解了一下ros2所使用的colcon build,

官方提供的命令是这个:

AUTOWARE_COMPILE_WITH_CUDA=1 colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release

但我用这条命令是一直编译过不去,卡机

然后就想着有没有一种可能colcon编译时也存在(make -j8)这样东西的,提升线程,可以编译提速的好东西

还真就找到了,在原命令下,加入-DCMAKE_CXX_FLAGS="–param ggc-min-expand=1"参数选项,(还是要好好了解下ros2的相关东西,不然会这坑还真过不去了)

AUTOWARE_COMPILE_WITH_CUDA=1 colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="--param ggc-min-expand=1"(这里的1可调,看配置,自己试试)

但是还是在后续文件编译中卡住

查了一下,看了别人的处理方法是说:

一个是不使用显示屏桌面,开机后直接使用ssh远程登录操作,能节约一个多g内存,一般也够用了。(亲测有效)。也可以增加swap虚拟内存(准确说叫交换分区)

还是会卡,甚至崩掉,而且就跟着几根文件过不去,

lattice_planner

lidar_localizer

points_preprocessor

trafficlight_recognizer

以为他们四个堆在一起会出错,所以就想着去逐个击破,还是利用colcon build参数设置一下,对单个文件进行编译(–packages-select lattice_planner)

AUTOWARE_COMPILE_WITH_CUDA=1 colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-select waypoint_planner

报错四

缺包,补上:

CMake Error at /opt/ros/melodic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
Could not find a package configuration file provided by “jsk_rviz_plugins”
with any of the following names:
jsk_rviz_pluginsConfig.cmake
jsk_rviz_plugins-config.cmake
sudo apt-get install ros-melodic-jsk-rviz-plugins

参考:

https://blog.csdn.net/jiangchao3392/article/details/73822655)

Jetson Xavier上编译autoware1.14.0,简单,快速,完美安装! - Xiangzh - 博客园 (cnblogs.com)

(12 封私信 / 51 条消息) 在使用英伟达开发板过程中,系统老是弹出“Low Memory Warning”,这是什么原因? - 知乎 (zhihu.com)

(63条消息) build colcon 编译指定的包 - CSDN

https://blog.csdn.net/CCCrunner/article/details/108866943

你可能感兴趣的:(自动驾驶,人工智能,机器学习)