注意事项:1,不要用conda包管理 2,将autoware项目和autoware_map都放在$Home目录下
3,系统的软件更新器更新包这步很重要
1,装好了ubuntu22.04系统后,首先装nvidia显卡驱动
autoware所需最低驱动版本为550, 进入ubuntu 恢复模式,启动终端输入以下命令(前提是有网络连接)
wget https://vip.123pan.cn/1816448054/xTools/xTools.run
sudo bash xTools.run
sudo xtools
选择安装显卡驱动,选择570版本,若下载失败,选择版本更新。
驱动下载完成后输入:b 进入bios,在bios中关闭安全引导,(例如:微星主板bios:在安全中找到安全启动选项,强其设置为禁止,保存并关闭)重新进入恢复模式进行安装驱动,安装完成后重启进入正常模式即可。
装好驱动后,将系统自带的软件更新器都更新完毕
2,源代码安装autoware unniverse:
前提条件:
sudo apt-get -y update
sudo apt-get -y install git
首先克隆项目并进入目录:
git clone https://github.com/autowarefoundation/autoware.git
cd autoware
然后安装依赖(首次安装时,可使用提供的 Ansible 脚本自动安装依赖):
./setup-dev-env.sh
看具体哪个包报错了,我是sudo rosdep init报错了
解决:
sudo pip install rosdepc
sudo rosdepc init
rosdepc update
再次运行./setup-dev-env.sh 看到completed依赖就安装完毕了
3,下载Autoware.universe源码
cd autoware
mkdir src
vcs import src < autoware.repos (由于在github上拉取仓库,有时需要开代理)
4,安装ros依赖
source /opt/ros/humble/setup.bash
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO
(这一步会出现一个关于pacmod3_msgs
找不到的错误)
解决:
wget -O /tmp/amd64.env https://raw.githubusercontent.com/autowarefoundation/autoware/main/amd64.env && source /tmp/amd64.env
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-humble-pacmod3
source /opt/ros/humble/setup.bash
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO
5,编译
(编译前要执行 rm -rf build install log 删除上一次编译失败的日志)
cpu编译:
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
Summary: 405 packages finished [14min 27s]
31 packages had stderr output: autoware_bag_time_manager_rviz_plugin autoware_bevfusion autoware_costmap_generator autoware_crop_box_filter autoware_elevation_map_loader autoware_external_velocity_limit_selector autoware_freespace_planning_algorithms autoware_lanelet2_extension_python autoware_overlay_rviz_plugin autoware_path_generator autoware_radar_scan_to_pointcloud2 autoware_remaining_distance_time_calculator autoware_shape_estimation autoware_smart_mpc_trajectory_follower autoware_surround_obstacle_checker autoware_system_monitor autoware_tensorrt_classifier autoware_tensorrt_plugins autoware_traffic_light_selector eagleye_can_velocity_converter eagleye_coordinate eagleye_geo_pose_fusion eagleye_rt nebula_ros negotiated pointcloud_to_laserscan trt_batched_nms yabloc_common yabloc_image_processing yabloc_particle_filter yabloc_pose_initializer
出现以上输出代表编译成功
gpu加速编译:
AUTOWARE_COMPILE_WITH_CUDA=1 colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release
6,demo测试
下载demo地图数据包:
gdown -O ~/autoware_map/ 'https://docs.google.com/uc?export=download&id=1499_nsbUbIeturZaDj7jhUownh5fvXHd'
unzip -d ~/autoware_map ~/autoware_map/sample-map-planning.zip
cd autoware
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
即可启动rviz可视化界面 并加载了上述地图
点击界面上方的2D Pose Estimate指定起点,2D Goal Pose指定终点,路径规划成功后点击左上角的Auto即可实现自动驾驶(注意起点和终点的设置要根据地图上的箭头设置)
13,出现的问题:
1,开始系统为24,折腾了好久没装上,将系统更改为22
2,使用了conda python包管理,后面出现了很多错误,不要使用conda
3,autoware和autoware_map位置需要在$Home目录下,如果不能放在这里,我猜也可以放在同级目录下,把map_path改下即可(没试过)