Autoware universe installation

指定版本

laptop:   dell Vostro 5402, 没有nvidia 显卡,

ubuntu: 20.04

ros version: ros2 galactic

autoware.universe:  galactic 

安装结果

      编译完成,planning simulation 界面出来了,但是有报错,车不跑

      编译完成,planning simulation 糊里糊涂跑起来了, 没有nvidia 显卡完全可以

有两个包给注释了,trtexec_vendor,   tamagawa_imu_driver

Installation

## 下载code, 注意这里是源码, 后续编译不会用到这份代码, 忽略这一步
git clone git@github.com:autowarefoundation/autoware.universe.git


## 安装
cd 
mkdir autoware_ws   && cd autoware_ws

## 下载repo, 并切换到galactic 分支, 注意是repo 管理的仓库,不是源码
git clone git@github.com:autowarefoundation/autoware.git   -b galatic



## 初始化环境
cd ~/autoware_ws/autoware

./setup-dev-env.sh -v                     # verbose log 提示
./setup-dev-env.sh -no-nvidia             # 不安装nvidia, 相关的库
####  注意,setup-dev-env 是通过ansible 自动安装,playbook 应该是ansible配置脚本
####       如果脚本安装失败,可以通过看看下面知乎手动编译的方式

####  如果提示 verify ros2 GPG key error, 或者是 Failed to connect to raw.githubusercontent.com 请查看下面链接


## repos 拉取代码

cd autoware_ws/
mkdir src
vcs import src < autoware.repos

## 安装依赖向
source /opt/ros/galactic/setup.bash
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO

#### rosdep update

## 编译
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release


## pull 取更新代码
cd autoware_ws
git pull
vcs import src < autoware.repos
vcs pull src

TODO

-  setup-dev-env 从galactic 脚本来看,没有docker 的安装部署方式! docker 部署方式 需要看github.io 文档,  应该优先从docker 方式入手, 依赖问题很多

-  跑仿真不需要cuda 这些东西把?????

-  rosdep install 失败

# rosdep install 安装依赖项目失败, 安装rosdepc


rosdepc install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO

欢迎使用国内版rosdep之rosdepc,我是作者小鱼!
欢迎关注公众号《鱼香ROS》加入交流群
小鱼rosdepc正式为您服务

---------------------------------------------------------------------------
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
scenario_selector: Cannot locate rosdep definition for [topic_tools]
localization_error_monitor: Cannot locate rosdep definition for [diagnostic_updater]
behavior_path_planner: Cannot locate rosdep definition for [behaviortree_cpp_v3]
occupancy_grid_map_outlier_filter: Cannot locate rosdep definition for [pcl_ros]
tier4_api_msgs: Cannot locate rosdep definition for [geographic_msgs]
velodyne_driver: Cannot locate rosdep definition for [diagnostic_updater]
tamagawa_imu_driver: Cannot locate rosdep definition for [can_msgs]
external_cmd_converter: Cannot locate rosdep definition for [diagnostic_updater]
grid_map_ros: Cannot locate rosdep definition for [nav2_msgs]
grid_map_octomap: Cannot locate rosdep definition for [octomap]
tensorrt_common: Cannot locate rosdep definition for [tensorrt_cmake_module]
tier4_vehicle_launch: Cannot locate rosdep definition for [xacro]
accel_brake_map_calibrator: Cannot locate rosdep definition for [diagnostic_updater]
lidar_centerpoint_tvm: Cannot locate rosdep definition for [tvm_vendor]
steer_offset_estimator: Cannot locate rosdep definition for [diagnostic_updater]
pointcloud_preprocessor: Cannot locate rosdep definition for [point_cloud_msg_wrapper]
tier4_localization_launch: Cannot locate rosdep definition for [topic_tools]
obstacle_collision_checker: Cannot locate rosdep definition for [pcl_ros]
autoware_point_types: Cannot locate rosdep definition for [point_cloud_msg_wrapper]
vehicle_cmd_gate: Cannot locate rosdep definition for [diagnostic_updater]
lane_departure_checker: Cannot locate rosdep definition for [diagnostic_updater]
bluetooth_monitor: Cannot locate rosdep definition for [diagnostic_updater]
radar_tracks_msgs_converter: Cannot locate rosdep definition for [radar_msgs]
lidar_apollo_segmentation_tvm: Cannot locate rosdep definition for [tvm_vendor]
web_controller: Cannot locate rosdep definition for [rosbridge_server]
dummy_diag_publisher: Cannot locate rosdep definition for [diagnostic_updater]
ground_segmentation: Cannot locate rosdep definition for [pcl_ros]
lanelet2_extension: Cannot locate rosdep definition for [lanelet2_validation]
radar_threshold_filter: Cannot locate rosdep definition for [radar_msgs]
autoware_testing: Cannot locate rosdep definition for [ros_testing]
front_vehicle_velocity_estimator: Cannot locate rosdep definition for [pcl_ros]
velodyne_pointcloud: Cannot locate rosdep definition for [pcl_ros]
topic_state_monitor: Cannot locate rosdep definition for [diagnostic_updater]
external_velocity_limit_selector: Cannot locate rosdep definition for [topic_tools]
external_cmd_selector: Cannot locate rosdep definition for [diagnostic_updater]
planning_error_monitor: Cannot locate rosdep definition for [diagnostic_updater]
image_projection_based_fusion: Cannot locate rosdep definition for [pcl_ros]
sample_vehicle_description: Cannot locate rosdep definition for [xacro]
radar_static_pointcloud_filter: Cannot locate rosdep definition for [radar_msgs]
system_error_monitor: Cannot locate rosdep definition for [rqt_robot_monitor]
lidar_centerpoint: Cannot locate rosdep definition for [pcl_ros]
grid_map_costmap_2d: Cannot locate rosdep definition for [nav2_costmap_2d]
trtexec_vendor: Cannot locate rosdep definition for [tensorrt_cmake_module]
velodyne_monitor: Cannot locate rosdep definition for [diagnostic_updater]
osqp_interface: Cannot locate rosdep definition for [osqp_vendor]
sample_sensor_kit_launch: Cannot locate rosdep definition for [usb_cam]
tvm_utility: Cannot locate rosdep definition for [tvm_vendor]
trajectory_follower: Cannot locate rosdep definition for [diagnostic_updater]
fault_injection: Cannot locate rosdep definition for [diagnostic_updater]
probabilistic_occupancy_grid_map: Cannot locate rosdep definition for [pcl_ros]
lidar_apollo_segmentation_tvm_nodes: Cannot locate rosdep definition for [ros_testing]
awapi_awiv_adapter: Cannot locate rosdep definition for [topic_tools]
awsim_sensor_kit_launch: Cannot locate rosdep definition for [usb_cam]
costmap_generator: Cannot locate rosdep definition for [pcl_ros]
lanelet2_map_preprocessor: Cannot locate rosdep definition for [pcl_ros]
grid_map_demos: Cannot locate rosdep definition for [octomap_msgs]
velodyne_description: Cannot locate rosdep definition for [xacro]
autoware_auto_geometry: Cannot locate rosdep definition for [osrf_testing_tools_cpp]
obstacle_stop_planner: Cannot locate rosdep definition for [pcl_ros]
tensorrt_yolox: Cannot locate rosdep definition for [tensorrt_cmake_module]
tier4_autoware_api_launch: Cannot locate rosdep definition for [topic_tools]
map_loader: Cannot locate rosdep definition for [pcl_ros]
pacmod_interface: Cannot locate rosdep definition for [diagnostic_updater]
obstacle_velocity_limiter: Cannot locate rosdep definition for [pcl_ros]
image_diagnostics: Cannot locate rosdep definition for [diagnostic_updater]
system_monitor: Cannot locate rosdep definition for [diagnostic_updater]
grid_map_cv: Cannot locate rosdep definition for [filters]
grid_map_filters: Cannot locate rosdep definition for [filters]







rosdepc install

## pkg_resources 提示 版本问题, 重新安装setuptools
---------------------------------------------------------------------------
/usr/bin/pip3:6: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
  from pkg_resources import load_entry_point
ERROR: Exception:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 186, in _main
    status = self.run(options, args)
  File "/usr/lib/python3/dist-packages/pip/_internal/commands/freeze.py", line 100, in run
    for line in freeze(**freeze_kwargs):
  File "/usr/lib/python3/dist-packages/pip/_internal/operations/freeze.py", line 70, in freeze
    req = FrozenRequirement.from_dist(dist)
  File "/usr/lib/python3/dist-packages/pip/_internal/operations/freeze.py", line 257, in from_dist
    req = dist.as_requirement()
  File "/home/uisee/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2919, in as_requirement
    if isinstance(self.parsed_version, packaging.version.Version):
  File "/home/uisee/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2735, in parsed_version
    raise packaging.version.InvalidVersion(f"{str(ex)} {info}") from None
pkg_resources.extern.packaging.version.InvalidVersion: Invalid version: '0.23ubuntu1' (package: distro-info)
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
grid_map_filters: Cannot locate rosdep definition for [filters]

pkg_resources, pkg_resources 替换版本

编译

安装osqp, 去官网下载osqp_vendor pkg, 帮我们安装,版本是0.6.2

注意需要用submodule 方式

sudo apt install ros-galactic-nav2-msgs  ros-galactic-pacmod3-msgs

sudo apt install geographiclib-tools libgeographic-dev  librange-v3-dev

## 下面的lanelet 不要用apt 安装,这块galactic 安装后缺少库文件,所以需要手动下载源码安装

sudo apt install  ros-galactic-lanelet2  ros-galactic-lanelet2-io ros-galactic-lanelet2-core    ## deprecated

GitHub - fzi-forschungszentrum-informatik/Lanelet2: Map handling framework for automated driving


 

## 安装了galactic 后还是一堆无法链接的错误, 麻了


--- stderr: lanelet2_extension                                                         
/usr/bin/ld: CMakeFiles/check_right_of_way.dir/src/check_right_of_way.cpp.o: in function `std::default_delete<lanelet::LaneletMap>::operator()(lanelet::LaneletMap*) const [clone .isra.0] [clone .part.0]':
check_right_of_way.cpp:(.text+0xc): undefined reference to `lanelet::PrimitiveLayer<lanelet::Point3d>::~PrimitiveLayer()'
/usr/bin/ld: check_right_of_way.cpp:(.text+0x18): undefined reference to `lanelet::PrimitiveLayer<lanelet::LineString3d>::~PrimitiveLayer()'
/usr/bin/ld: check_right_of_way.cpp:(.text+0x24): undefined reference to `lanelet::PrimitiveLayer<lanelet::Polygon3d>::~PrimitiveLayer()'
/usr/bin/ld: check_right_of_way.cpp:(.text+0x30): undefined reference to `lanelet::PrimitiveLayer<std::shared_ptr<lanelet::RegulatoryElement> >::~PrimitiveLayer()'
/usr/bin/ld: check_right_of_way.cpp:(.text+0x39): undefined reference to `lanelet::PrimitiveLayer<lanelet::Area>::~PrimitiveLayer()'
/usr/bin/ld: check_right_of_way.cpp:(.text+0x41): undefined reference to `lanelet::PrimitiveLayer<lanelet::Lanelet>::~PrimitiveLayer()'
/usr/bin/ld: CMakeFiles/check_right_of_way.dir/src/check_right_of_way.cpp.o: in function `lanelet::routing::RoutingCostTravelTime::getCostLaneChange(lanelet::traffic_rules::TrafficRules const&, std::vector<lanelet::ConstLanelet, std::allocator<lanelet::ConstLanelet> > const&, std::vector<lanelet::ConstLanelet, std::allocator<lanelet::ConstLanelet> > const&) const':
check_right_of_way.cpp:(.text._ZNK7lanelet7routing21RoutingCostTravelTime17getCostLaneChangeERKNS_13traffic_rules12TrafficRulesERKSt6vectorINS_12ConstLaneletESaIS7_EESB_[_ZNK7lanelet7routing21RoutingCostTravelTime17getCostLaneChangeERKNS_13traffic_rules12TrafficRulesERKSt6vectorINS_12ConstLaneletESaIS7_EESB_]+0x41): undefined reference to `lanelet::routing::RoutingCostTravelTime::travelTime(lanelet::traffic_rules::TrafficRules const&, lanelet::ConstLanelet const&)'
/usr/bin/ld: CMakeFiles/check_right_of_way.dir/src/check_right_of_way.cpp.o: in function `lanelet::routing::RoutingCostDistance::getCostLaneChange(lanelet::traffic_rules::TrafficRules const&, std::vector<lanelet::ConstLanelet, std::allocator<lanelet::ConstLanelet> > const&, std::vector<lanelet::ConstLanelet, std::allocator<lanelet::ConstLanelet> > const&) const':
check_right_of_way.cpp:(.text._ZNK7lanelet7routing19RoutingCostDistance17getCostLaneChangeERKNS_13traffic_rules12TrafficRulesERKSt6vectorINS_12ConstLaneletESaIS7_EESB_[_ZNK7lanelet7routing19RoutingCostDistance17getCostLaneChangeERKNS_13traffic_rules12TrafficRulesERKSt6vectorINS_12ConstLaneletESaIS7_EESB_]+0x3e): undefined reference to `lanelet::routing::RoutingCostDistance::length(lanelet::ConstLanelet const&)'

## 继续编译,安装依赖向

sudo apt install ros-galactic-mrt-cmake-modules

sudo apt install ros-galactic-osrf-testing-tools-cpp

sudo apt install ros-galactic-diagnostic-updater

sudo apt install libpcap-dev libcpprest-dev libfmt-dev

git clone git@github.com:autowarefoundation/tvm_vendor.git

git clone git@github.com:tier4/osqp_vendor.git

sudo apt install libcgal-dev 

sudo apt install nlohmann-json3-dev    # apollo 也有这个依赖项

## 安装behavior tree v3 lib

GitHub - BehaviorTree/BehaviorTree.CPP: Behavior Trees Library in C++. Batteries included.

### 库里面可能用的目录是behaviortree_cpp_v3, 但是上面代码名字是behaviortree_cpp, 我选择改代码里的名字,去掉_v3

代码切换ros2-3.1.1 tag

更新, 不要装源码,用ros的方式安装,

sudo apt install ros-galactic-behaviortree-cpp-v3

sudo apt install ros-galactic-can-msgs

sudo apt install ros-galactic-diagnostic-aggregator

sudo apt install ros-galactic-nav2-costmap-2d

sudo apt install libnl-genl-3-dev

sudo apt install ros-galactic-ros-testing

sudo apt install ros-galactic-octomap-msgs ros-galactic-octomap-ros ros-galactic-octomap-rviz-plugins

注释编译trtexec_vendor pkg,  COLCON_IGNORE, 不知道用不用

sudo apt install ros-galactic-radar-msgs

sudo apt install ros-galactic-xacro

sudo apt install ros-galactic-rosbridge-server ros-galactic-rosbridge-msgs ros-galactic-rosbridge-suite

sudo apt install ros-galactic-topic-tools

python3 -m pip install flask

planning simulation 

planning simulation

1. 下载地图

2. launch

# Lane driving scenario

## 启动autoware
source ~/autoware/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

## 我本地这么起, 但是失败了
ros2 launch autoware_launch planning_simulator.launch.xml map_path:=$HOME/Documents/autoware_ws/autoware/map/sample-map-planning vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit





## 指定初始位姿, 快捷键P

## 指定终点位姿, 快捷键G

## 触发任务,Now you can start the ego vehicle driving by clicking the AUTO button on OperationMode in AutowareStatePanel
####  等同于如下服务
ros2 service call /api/operation_mode/change_to_autonomous autoware_adapi_v1_msgs/srv/ChangeOperationMode {}



# Parking scenario


# Lane change scenario


# Avoidance scenario

# Advanced Simulations

## Placing dummy objects

## Traffic light recognition simulation

## Update/Reset traffic light

## 

如果下载的地图zip 解压失败, 使用jar 工具替换unzip

sudo apt install fastjar

jar xvf  xxx.zip

autoware repo

autoware installation - bilibili casper auto

autoware - github.io document

ros2 GPG 密钥 无法访问 问题解决

知乎 - 手动安装autoware, 不通过ansible

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Authware古诗教程是一款专门为学习和欣赏古诗而设计的软件。它提供了丰富的古诗资源和相关的学习功能,帮助用户更好地理解和感受古代文化。 首先,Authware古诗教程拥有庞大的古诗库,涵盖了各个朝代的经典古诗。用户可以通过浏览功能,随时查阅自己喜欢的古诗,了解作者背景和作品的内涵。 其次,Authware古诗教程提供了详细的古诗解析和注释。对于初学者来说,读懂古诗可能会有一些难度,但通过软件提供的解析和注释,用户可以更好地理解古人的用词和意境,进一步欣赏古诗之美。 此外,Authware古诗教程还提供了古诗背景介绍和相关阅读材料。了解古代社会背景和文化氛围,能够更加全面地把握古诗的内涵和艺术价值。通过相关阅读材料的学习,用户可以拓展自己的知识面,提升古诗欣赏的层次。 最后,Authware古诗教程还提供了互动学习和分享社区。用户可以与其他热爱古诗的人交流学习,分享自己的感悟和见解。这种互动交流可以激发更多的灵感和思考,使学习和欣赏古诗变得更加有趣和有意义。 总之,Authware古诗教程是一款功能丰富、易于操作的软件,它可以帮助用户更好地学习和欣赏古诗,了解古代文化,并与其他人分享自己的想法。无论是初学者还是资深爱好者,都可以在这个平台上找到自己需要的资源和交流机会。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值