一、系统环境
目前,AutowareAuto只支持在以下两种平台搭建:
-
amd64
/
x86_64
(Intel/AMD)
-
arm64
/
aarch64
/
arm64v8
(ARM v8, 64-bit)
对于ROS的支持版为为:
-
ROS2 FOXY Ubuntu20.04
-
ROS2 Dashing Ubuntu18.04
二、安装ADE
ADE简介:https://ade-cli.readthedocs.io/en/latest/
安装前说明:
-
需要安装docker19.03及以上版本,可参考:https://docs.docker.com/get-docker/
-
需要安装nvidia-container-toolkit
docker安装方法示例(作者使用):
#方法一:
$ sudo apt-get remove docker docker-engine docker.io containerd runc
$ sudo apt-get update
$ sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
$ echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$ (lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
$ sudo apt-get update
$ sudo apt-get install docker-ce docker-ce-cli containerd.io
#方法二:
wget http://fishros.com/install -O fishros && . fishros
#选择安装Docker
nvidia安装示例(作者使用):
1、首先查看是否安装了cuda
# 法1
cat /usr/local/cuda/version.txt
# 法2
nvcc --version
2、如果没有安装,则需要查看是否有显卡驱动,如果没有显卡驱动,可以到软件与更新 -> 附加驱动中安装驱动。
3、查看显卡驱动支持的cuda版本
nvidia-smi
如上图支持的最高版本为11.6
4、到cuda-toolkit-archive,选择需要的cuda下载
5、下载完成如下图所示
6、在~/.bashrc
文件中添加如下环境变量:
export PATH=/usr/local/cuda-11.6/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.6/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
7.安装cuDNN,到cudnn-archive下载和CUDA对应的版本,并按照以下步骤执行
1.Navigate to your <cudnnpath> directory containing the cuDNN tar file.
2.Unzip the cuDNN package.
$ tar -xvf cudnn-linux-x86_64-8.x.x.x_cudaX.Y-archive.tar.xz
3. Copy the following files into the CUDA toolkit directory.
$ sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda/include
$ sudo cp -P cudnn-*-archive/lib/libcudnn* /usr/local/cuda/lib64
$ sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
正式安装ADE
执行如下命令
$ mkdir ~/adehome
$ cd ~/adehome
$ wget https://gitlab.com/ApexAI/ade-cli/-/jobs/1341322851/artifacts/raw/dist/ade+x86_64
$ mv ade+x86_64 ade
$ chmod +x ade
$ ./ade --version4.3.0
$ sudo mv ade /usr/local/bin
$ which ade/usr/local/bin/ade
至此,ade安装完成
三、设置ade项目路径
$ touch .adehome
$ git clone --recurse-submodules https://gitlab.com/autowarefoundation/autoware.auto/AutowareAuto.git
$ cd AutowareAuto/
$ sudo ade start --update --ente
#此处可以选择不同的开发环境:
#输入ls -l .aderc*
四、编译Autoware.auto
1、获取msg文件以及仿真文件代码
$ cd AutowareAuto
#vcs import内部的命令即为git clone
#.repos内部为一系列的代码网站,其中的工作为署名是哪一个分支或工作空间,这样的好处是,在代码更新的同时,可以及时更新到不同的代码
$ vcs import < autoware.auto.$ROS_DISTRO.repos
2、编译代码
colcon build #耗时较长,第一次编译需要编译157个功能包
3、测试代码
colcon test
五、LGSVL环境配置
说明:LGSVL具有专门适配autoware.auto的Bridge,且在ade中已经搭载了lgsvl,无需格外下载lgsvl。
注:官方推荐:Lgsvl和ade应在两台主机当中运行以节省计算量
1、启动lgsvl
$ cd ~/adehome/AutowareAuto
$ ade --rc .aderc-amd64-foxy-lgsvl start --update --enter
#在此终端下
ade$ /opt/lgsvl/simulator
#此处易黑屏,原因是显卡会阻滞lgsvl的运行 需运行以下命令
ade$ sudo apt remove mesa-vulkan-drivers
成功后即可看到以下效果:
2、配置集群
此配置是将Lgsvl与你的ip地址相连接
3、创建一个仿真环境
此处以官方demo为例,创建一个自动泊车的环境
3.1选择地图
3.2选择汽车
3.3增添 ROS2ForUnitySVLBridge 环境
至 ROS2ForUnitySVLBridge 下载此插件
3.4 传感器配置
点击刚刚拉取的车辆,点击配置传感器
你可以选择使用标题为Autoware.auto的配置,也可以新增一个自己的私有配置环境。如果你选择自己配置,可将 avp-sensors.json 内容复制
3.6创建一个仿真器
请跟随下图操作:
3.7发布仿真器
点击publish,即可在图表中看到以下场景
六、问题和解决方法
1、在执行 vcs import < autoware.auto.$ROS_DISTRO.repos 时,会出现失败的情况
原因:部分网址为github中网站,git clone 较难拉取
解决办法:
1、更换网络至手机热点,多次尝试
2、使用科学上网工具
3、打开repos文件,对每一个文件进行下载(注意所属目录)
2、sudo ade start 时出现
原因:由于显卡问题造成
解决方法:
-
- distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
- curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
- curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
- sudo apt-get update
- sudo apt-get install nvidia-container-toolkit
- sudo systemctl restart docker
3、在第一次进入 ade 时,出现 user ‘root’already exists:
解决办法:
# $USER改为自己的用户名
$ sudo usermod -aG docker $USER
$ sudo chmod 666 /var/run/docker.sock
$ ade start --update --enter
4、如若有缺失的包,可优先使用以下命令
sudo apt update
rosdepc install --from-paths src --ignore-src -r -y
参考链接:https://www.guyuehome.com/37552
https://autowarefoundation.gitlab.io/autoware.auto/AutowareAuto/installation-ade.html
七、推荐添加项 ——增添swap内存
读者可以通过 htop 命令查看自己的 mem 和 swp 空间,如果二者添加的值小于30,推荐进行以下操作,不然极大可能出现编译报错的问题。
cd /usr/;mkdir swap
cd swap
dd if=/dev/zero of=swapfile bs=1G count=16 #此处16 为增加的swp内存空间
sudo mkswap swapfile
sudo swapon swapfile
#如果永久添加:
#打开
sudo gedit /etc/fstab
#在末尾添加
/usr/swap/swapfile swap swap defaults 0 0
原因:
七、思考题?
如何创建一个新的仿真器?
评论(0)
您还未登录,请登录后发表或查看评论