【基于Ubuntu20.04的Autoware.universe安装过程】方案一:虚拟机 | 详细记录 | Vmware | 全过程图文 by.Akaxi

目录

一、Autoware.universe背景

二、虚拟机配置

三、Ubuntu20.04安装

四、GPU显卡安装

五、ROS2-Galactic安装

六、ROS2-dev-tools安装

七、rmw-implementation安装

八、pacmod安装

九、autoware-core安装

十、autoware universe dependencies安装

十一、安装pre-commit

十二、CUDA安装

1.方法一

2.方法二

十三、cuDNN and TensorRT安装

十四、Autoware.Universe源码下载

十五、Autoware ROS依赖包安装

十六、编译空间

十七、Autoware-Universe测试【待进行】


注意:【此方案由于虚拟机不能很好调用主机的显卡,故推荐采用方案二】

方案二博客链接:【基于Ubuntu20.04的Autoware.universe安装过程】方案二:双系统 | 详细记录 | 全过程图文 by.Akaxi-CSDN博客

一、Autoware.universe背景

Autoware是一个基于ROS(机器人操作系统)开发的,开源的自动驾驶软件栈。它可以用于为各种各样的车辆,如汽车和卡车等,开发和部署先进辅助驾驶系统(ADAS)

Autoware版本:

Ai:基于ROS1

Auto:基于ROS2

Universe:商用/二次开发

官方文档:Autoware Universe Documentation

二、虚拟机配置

三、Ubuntu20.04安装

现在我们需要正式的给他安装一个操作系统——Ubuntu20.04

【Ubuntu镜像】http://mirrors.aliyun.com/ubuntu-releases/20.04/

这里选择Ubuntu版本20.04.6的桌面desktop-amd64位的iso镜像,如图,点击下载:

下载完成后,打开虚拟机的CD/DVD

点击浏览,找到刚刚下载的Ubuntu20.04.6的镜像文件,使用ISO镜像文件打开,这样就在虚拟机插入了Ubuntu

一路跟着指引走一遍就行啦

四、GPU显卡安装

参考博客:Vmware 中 Ubuntu 20.04 安装 NVIDIA CUDA以及 cuDNN_vmware cuda-CSDN博客

因为需要用到Awsim仿真,就需要用到GPU渲染

ubuntu-drivers devices
sudo apt-get install nvidia-driver-535

【虚拟机改成NAT模式】

一串输出之后即成功【这里很可能不成功】这里暂时不管,到后面第【十二章会进一步通过Vmware虚拟机安装NVIDIA驱动】再看

五、ROS2-Galactic安装

参考博客:

Autoware.universe部署01:Ubuntu20.04安装Autoware.universe并与Awsim联调_autoware universe-CSDN博客

使用鱼香ROS一键安装

wget http://fishros.com/install -O fishros && . fishros

换源:

选择galactic(ROS2)版本,桌面版,一路安装【大概5min

完成啦~~

六、ROS2-dev-tools安装

输入以下指令,直接复制粘贴

sudo apt update && sudo apt install -y \build-essential \cmake \git \python3-colcon-common-extensions \python3-flake8 \python3-pip \python3-pytest-cov \python3-rosdep \python3-setuptools \python3-vcstool \wget

接下来安装【需要3min】

再输入以下指令:

python3 -m pip install -U \flake8-blind-except \flake8-builtins \flake8-class-newline \flake8-comprehensions \flake8-deprecated \flake8-docstrings \flake8-import-order \flake8-quotes \pytest-repeat \pytest-rerunfailures \pytest \setuptools

报错则安装相关的包

输入指令:

sudo apt install python3-testresources

再次输入以上的指令即可成功安装~

七、rmw-implementation安装

安装源码,注意需要科学上网哦~

sudo apt-get -y update
sudo apt-get -y install git
mkdir autoware_universe
cd autoware_universe/
git clone https://github.com/autowarefoundation/autoware.git -b galactic

这里需要配置git的端口

git config --global http.proxy 127.0.0.1:8888git config --global https.proxy 127.0.0.1:8888

cd autoware_universe/
source amd64.env
# For details: https://docs.ros.org/en/galactic/How-To-Guides/Working-with-multiple-RMW-implementations.html
sudo apt update
rmw_implementation_dashed=$(eval sed -e "s/_/-/g" <<< "${rmw_implementation}")
sudo apt install ros-${rosdistro}-${rmw_implementation_dashed}# (Optional) You set the default RMW implementation in the ~/.bashrc file.
echo '' >> ~/.bashrc && echo "export RMW_IMPLEMENTATION=${rmw_implementation}" >> ~/.bashrc

八、pacmod安装

# wget -O /tmp/amd64.env https://raw.githubusercontent.com/autowarefoundation/autoware/galactic/amd64.env && source /tmp/amd64.env
cd autoware_universe/
source amd64.env# Taken from https://github.com/astuff/pacmod3#installation
sudo apt install apt-transport-https
sudo sh -c 'echo "deb [trusted=yes] https://s3.amazonaws.com/autonomoustuff-repo/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/autonomoustuff-public.list'
sudo apt update
sudo apt install ros-${rosdistro}-pacmod3

九、autoware-core安装

十、autoware universe dependencies安装

sudo apt install geographiclib-tools# 下面过程很慢,耐心等待sudo geographiclib-get-geoids egm2008-1

开始安装universe依赖【大概3h耗时间】

十一、安装pre-commit

clang_format_version=14.0.6
pip3 install pre-commit clang-format==${clang_format_version}# Install Golang (Add Go PPA for shfmt)
sudo add-apt-repository ppa:longsleep/golang-backports
sudo apt install golang

十二、CUDA安装

# wget -O /tmp/amd64.env https://raw.githubusercontent.com/autowarefoundation/autoware/galactic/amd64.env && source /tmp/amd64.env
cd autoware_universe/
source amd64.env# Modified from:
# https://developer.nvidia.com/cuda-11-4-4-download-archive?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=20.04&target_type=deb_network
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /"
sudo apt-get update
cuda_version_dashed=$(eval sed -e "s/[.]/-/g" <<< "${cuda_version}")
sudo apt install cuda-${cuda_version_dashed} --no-install-recommends一个指令一个指令输入

【由于这里在虚拟机显卡未成功安装】

需要将主机的NVIDIA显卡嫁接到Vmware虚拟机的Ubuntu20.04系统下

1.方法一

故需要参考博客,安装NVIDIA显卡:

Vmware 中 Ubuntu 20.04 安装 NVIDIA CUDA以及 cuDNN_vmware cuda-CSDN博客

从 VMware 网站 https://packages.vmware.com/bitfusion/ubuntu/ 下载适用于您的 Linux 分发包的 vSphere Bitfusion 客户端

2.方法二

直接在Ubuntu20.04系统下载NVIDIA驱动

十三、cuDNN and TensorRT安装

【因为第十二步骤未完成,此步骤需要显卡驱动正确安装之后才能继续进行】

# wget -O /tmp/amd64.env https://raw.githubusercontent.com/autowarefoundation/autoware/galactic/amd64.env && source /tmp/amd64.envcd autoware_universe/source amd64.env# Taken from: https://docs.nvidia.com/deeplearning/tensorrt/install-guide/index.html#installingsudo apt-get install libcudnn8=${cudnn_version} libcudnn8-dev=${cudnn_version}sudo apt-mark hold libcudnn8 libcudnn8-devsudo apt-get install libnvinfer8=${tensorrt_version} libnvonnxparsers8=${tensorrt_version} libnvparsers8=${tensorrt_version} libnvinfer-plugin8=${tensorrt_version} libnvinfer-dev=${tensorrt_version} libnvonnxparsers-dev=${tensorrt_version} libnvparsers-dev=${tensorrt_version} libnvinfer-plugin-dev=${tensorrt_version}sudo apt-mark hold libnvinfer8 libnvonnxparsers8 libnvparsers8 libnvinfer-plugin8 libnvinfer-dev libnvonnxparsers-dev libnvparsers-dev libnvinfer-plugin-dev

十四、Autoware.Universe源码下载

首先创建一个src文件夹

cd autoware_universe/
mkdir src

在autoware.repos 文件中,28行位置加入以下内容

universe/external/open_planner:type: giturl: https://github.com/ZATiTech/open_planner.gitversion: main

开始下载源码

vcs import src < autoware.repos

十五、Autoware ROS依赖包安装

【1】sudo mkdir -p /etc/ros/rosdep/sources.list.d/
【2】sudo curl -o /etc/ros/rosdep/sources.list.d/20-default.list https://mirrors.tuna.tsinghua.edu.cn/github-raw/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
【3】export ROSDISTRO_INDEX_URL=https://mirrors.tuna.tsinghua.edu.cn/rosdistro/index-v4.yaml
【4】rosdep update --include-eol-distros
【5】echo 'export ROSDISTRO_INDEX_URL=https://mirrors.tuna.tsinghua.edu.cn/rosdistro/index-v4.yaml' >> ~/.bashrc

安装依赖:

source /opt/ros/galactic/setup.bash
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO

会报错,但是先输入密码,让他把其他安装包先下载好【过后再解决报错的包】:

十六、编译空间

colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
# 只编译指定包
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-select 包名
# 忽略指定包
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-ignore 包名
# 遇到编译错误继续编译其他模块
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --continue-on-error

总共246个需要编译的模块【大概30min】

十七、Autoware-Universe测试【待进行】

简单运行Universe,$HOME/autoware_map/sample-map-planning为从官方下载的地图:gdown -O ~/autoware_map/ 'https://docs.google.com/uc?export=download&id=1499_nsbUbIeturZaDj7jhUownh5fvXHd'
unzip -d ~/autoware_map ~/autoware_map/sample-map-planning.zip
1
2
修改为你自己的路径source install/setup.bash
ros2 launch autoware_launch planning_simulator.launch.xml map_path:=$HOME/autoware_map/sample-map-planning vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit

应该会出现下面的地图~

注意:【此方案由于虚拟机不能很好调用主机的显卡,故推荐采用方案二】

2024.2.25

渝北仙桃数据谷

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

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

相关文章

单片机05__串口USART通信__按键控制向上位机传输字符串

串口USART通信 通用UART介绍 1.通信的概念 计算机与外界进行信息交换的过程称之为通信。 在通信的过程中&#xff0c;通信双方都需要遵守的规则称之为通信协议。 硬件协议&#xff1a;将数据以什么样的方式传输过去 软件协议&#xff1a;将数据以什么样的顺序传输过去 2.常用…

面试经典150题——存在重复元素 II

​"The harder you work for something, the greater youll feel when you achieve it." - Unknown 1. 题目描述 2. 题目分析与解析 2.1 思路一——暴力求解 该思路很简单&#xff0c;就是暴力的查找每一个元素&#xff0c;查看是否满足题目要求&#xff0c;满足就…

国产替代MATLAB的征途

国产替代MATLAB的征途 The Journey of Domestic Alternatives to MATLAB 在科技的浪潮中&#xff0c;软件成为了推动进步的重要工具。MATLAB&#xff0c;这一工程和科学计算的巨擘&#xff0c;因其强大的数值分析、矩阵运算能力和丰富的应用工具箱&#xff0c;在全球学术界和工…

分享从零开始学习网络设备配置--任务5.1 组建直连式二层无线局域网

任务要求 &#xff08;1&#xff09;组建直连式二层无线局域网&#xff0c;网络拓扑图如图 &#xff08;3&#xff09;路由器、交换机和AC等网络设备端口IP地址规划如表 &#xff08;4&#xff09;组建直连式二层无线局域网&#xff0c;配置AP上线、WLAN业务参数和实现STA能正…

485隔离器4口集线器一分二四路导轨安装数字量输入模块RS485中继

品牌&#xff1a;泰工华控 型号&#xff1a;TD-7511/TD-7512/TD-7514 产地&#xff1a;中国大陆 省份&#xff1a;安徽省 地址&#xff1a;宿州市 颜色分类&#xff1a;485一进一出隔离,485缓存器一进二出&#xff08;两主一从,485分路器一进二出&#xff08;一主两从&…

【电子书】系统_网络_运维

资料 wx&#xff1a;1945423050 整理了一些互联网电子书&#xff0c;推荐给大家 系统_网络_运维 4G无线网络原理及优化.epubHyperledger Fabric 技术内幕&#xff1a;架构设计与实现原理.epubJSP应用与开发技术&#xff08;第3版&#xff09;.epubKali Linux 2网络渗透测试实…

特殊文件:XML文件,Properties属性文件【详解】

目录 1.Properties属性文件 2.特殊文件&#xff1a;XML文件 1.Properties属性文件 是一个Map集合&#xff08;键值对集合&#xff09;&#xff0c;但是我们一般不会当集合使用。 核心作用&#xff1a;Properties是用来代表属性文件的&#xff0c;通过Properties可以读写…

Unity中URP实现水体(水下的扭曲)

文章目录 前言一、使用一张法线纹理&#xff0c;作为水下扭曲的纹理1、在属性面板定义一个纹理&#xff0c;用于传入法线贴图2、在Pass中&#xff0c;定义对应的纹理和采样器3、在常量缓冲区&#xff0c;申明修改 Tilling 和 Offset 的ST4、在顶点着色器&#xff0c;计算得到 应…

conda 导出/导出配置好的虚拟环境

一. 导出环境配置&#xff08;yml文件&#xff09; 1. 在主目录下激活虚拟环境&#xff08;UE4是我的虚拟环境名称&#xff0c;请根据你自己的名称进行修改&#xff09; conda activate UE4 2. 运行此代码 conda env export > environment.yml 二. 导入环境配置&#xf…

IO 作业 24/2/26

1>思维导图 1> 使用消息队列完成两个进程间相互通信 #include<myhead.h> //定义一个消息类型 struct msgbuf {long mtype; //消息类型char mtext[1024]; //消息正文 }; //定义一个宏&#xff0c;表示消息正文大小 #define MSGSIZE sizeof(struct msgbuf…

网络编程中的read、write函数的三种返回值处理及readn和writen函数

read函数返回值为0&#xff0c;表示对端关闭。 write函数返回值为0&#xff0c;表示什么东西都没写。 比如&#xff1a;总共想读4096个字节&#xff0c;每次只发1500个字节&#xff0c;就需要读多次。 readn函数读一行&#xff0c;读到\n

MCU多核异构通信原理

摘要&#xff1a; 本文结合瑞萨RZ/G2L 多核处理器&#xff0c;给大家讲述一下多核异构设计及通信的原理。 随着电子技术的不断发展&#xff0c;以及市场需求的日益增长&#xff0c;嵌入式系统不仅要求执行复杂的控制任务&#xff0c;还需要实时地采集和处理数据。 为了满足这…