求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
要资料
 
追随技术信仰

随时听讲座
每天看新闻
 
 
目录
Autoware.Auto
安装
系统依赖性和目标环境
使用 ADE 安装
使用 ADE 安装 arm64 系统
没有使用 ADE 安装
SVL 仿真器
使用
自动代客泊车示范
F1Tenth 演示1
F1Tenth 演示2
启动和测试行为计划
启动和测试全局计划
地图创建
初始化 NDT 定位器
运行 EKF 过滤器进行本地化
3D感知堆栈
记录/回放计划
使用rosbag进行本地化演示
Autoware Auto启动场景仿真器
建立
设计
Autoware Auto常见的设计-1
Autoware Auto常见的设计-2
Autoware.Auto 控制器设计
Autoware.Auto 驱动程序设计
Autoware.Auto 设计融合
Autoware.Auto 本地化
Autoware.Auto 的地图
Perception设计
Autoware.Auto 的 设计计划
Autoware.Auto 的 设计跟踪
Autoware.Auto 的 预测
Autoware.Auto 的系统
Autoware.Auto 的工具
Autoware.Auto 提供的指南
 
 
F1Tenth 演示1
李澎涛,俎涛 翻译(火龙果软件工程)
1032 次浏览
3次  

设置仿真

启动仿真器

通过以下方式启动仿真器

$ cd ~/adehome/AutowareAuto
# 如果您使用的是操纵杆,请添加 '-- --device /dev/input/js0'
$ ade --rc .aderc-amd64-foxy-lgsvl 开始 --update --enter
ade$ /opt/lgsvl/模拟器

如果您之前从未设置过 LGSVL,请按照 SVL 仿真器 页面中的说明进行操作,直到“配置集群”部分。

创建模拟

选择地图

目标是将 Red Bull Ring Racetrack 地图添加到您的图书馆。 如果该地图已经在您的图书馆中,则无需执行任何操作。

将地图添加到您的图书馆:

  • 转到 Store -> Maps 。
  • 单击地图 + 旁边的按钮 Red Bull Ring Racetrack (您可以使用搜索栏按名称过滤)。

选择地图

配置车辆

目标是将 F1TenthCar 车辆添加到您的图书馆。 如果这辆车已经在您的图书馆中,则无需执行任何操作。

将车辆添加到您的图书馆:

  • 转到 Store -> Vehicles 。
  • 单击车辆 + 旁边的按钮 F1TenthCar (您可以使用搜索栏按名称过滤)。

添加车辆

配置车辆传感器

将车辆添加到库后:

  • 转到 Library -> Vehicles 。
  • 点击 F1TenthCar 头像。 您将被转至车辆编辑页面。
  • 单击 Sensor Configurations 部分附近的按钮以修改传感器配置。

创建一个新的并使用最新版本的传感器配置文件:

  • 点击 + Create New Configuration 页面底部的按钮。
  • 设置配置名称并选择 ROS2 作为网桥。 - 确认。

在配置编辑视图中:

  • 单击 {...} 可视化编辑器(预览)窗口附近的符号。
  • 将f1tenth_sensors.json 文件的内容粘贴 到编辑窗口中。 Configurator 窗口现在应该填充一堆传感器。
  • 单击 Save 以保存配置。

json配置文件

选择/创建仿真

SVL 仿真器允许您存储和重复使用多个仿真配置。 要使用现有模拟,请导航到 Simulations 选项卡并按所需实例的“运行模拟”按钮。 仿真器现在应该在 SVL 窗口中启动。

要创建新的模拟,请执行以下步骤:

  • 切换到 Simulations 选项卡并单击 Add new 按钮。
  • 输入名称、描述并选择一个集群。 单击 Next 。
  • Random Traffic 从下拉菜单中 选择运行时模板。
  • 使用您的传感器配置 选择 Red Bull Ring Racetrack 地图和车辆。 F1TenthCar 单击 Next 。
  • 选择 Autoware.Auto 自动驾驶仪并保留 Bridge Connection 默认值。
  • 单击 Next ,然后单击 Publish 。

您可以访问 SVL 文档 以获得更深入的描述。

F1Tenth RecordReplay 轨迹演示

为 F1Tenth 启动 ade 并设置 Autoware

F1Tenth 目前是在 f1tenth-devel Autoware.Auto 的分支下开发的。 问题 解决后,无需执行此步骤 。

$ cd adehome/AutowareAuto
# 开始 ade
# 如果您使用的是操纵杆,请添加 '-- --device /dev/input/js0'
$ ade --rc .aderc-amd64-foxy-lgsvl 开始 --update --enter
# 构建汽车软件
ade$ cd AutowareAuto
ade$ git checkout f1tenth-devel
ade$ vcs 导入。< autoware.auto.foxy.repos
ade$ sudo apt 更新;罗斯德更新;rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO} -yr
ade$ colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release

启动仿真器

$ ade 输入
$ /opt/lgsvl/模拟器

在您的浏览器中,启动您在上一节中设置的模拟环境。

创建地图

如果要使用 redbull_ring_racetrack,请跳过此步骤。 地图已经提供。

# (1号航站楼)
$ ade 输入
ade$ 源 AutowareAuto/install/setup.bash
# 添加 'with_joy:=True' 以使用操纵杆驾驶车辆
# 按右肩按钮开始驾驶。
ade$ ros2 启动 f1tenth_launch f1tenth_mapping_demo.launch.py

F1第十映射文件

在 LGSVL 中,绕着车辆行驶。 确保为映射节点驾驶超过一圈以检测环路闭合。

运行以下命令为 AMCL 保存地图:

#(2号航站楼)
$ ade 输入
ade$ mkdir ${HOME}/map
ade$ ros2 运行 nav2_map_server map_saver_cli -f $HOME/map/redbull_ring_racetrack

这将为 AMCL 本地化保存图像样式的地图。

或者,通过运行以下命令为 SLAM 保存地图:

#(2号航站楼)
ade$ mkdir ${HOME}/map
ade$ ros2 服务调用 /slam_toolbox/serialize_map slam_toolbox/srv/SerializePoseGraph "{filename: "$HOME/map/redbull_ring_racetrack"}"

这将为 slam_toolbox 的定位保存一个位姿图。

保存地图后,按停止映射节点 Ctrl+C

记录和回放轨迹

记录轨迹

# (1号航站楼)
$ ade 输入
ade$ 源 AutowareAuto/install/setup.bash
# 添加 'with_joy:=True' 以使用操纵杆驾驶车辆
# 按右肩按钮开始驾驶。
# 添加 'localization:='slam'' 以使用 slam_toolbox 进行本地化(默认为 amcl)
# 添加 'map:=/path/to/map.yaml' (AMCL) 或 'map:=/path/to/map.posegraph' (SLAM) 以选择您的原始地图
ade$ ros2 启动 f1tenth_launch f1tenth_recordreplay_demo.launch.py

在 Rviz 中使用正确的方向设置初始姿势 2D pose estimate

#(2号航站楼)
ade$ source /opt/AutowareAuto/setup.bash
ade$ ros2 action send_goal /planning/recordtrajectory autoware_auto_planning_msgs/action/RecordTrajectory "{record_path: "/tmp/path"}" --feedback

在 LGSVL 中,在车辆周围行驶并在 f1tenth_recordreplay_demo.launch.py 启动的终端中使用 Ctrl + C 停止录制。

重播轨迹

(1号航站楼)
ade$ source /opt/AutowareAuto/setup.bash
# 添加 'with_joy:=True' 以使用操纵杆驾驶车辆
# 按右肩按钮可在手动和自动模式之间切换
# 添加 'map:=/path/to/map.yaml' 以选择您的原始地图
ade$ ros2 启动 f1tenth_launch f1tenth_recordreplay_demo.launch.py

在 Rviz 中使用正确的方向设置初始姿势 2D pose estimate

(2号航站楼)
ade$ source /opt/AutowareAuto/setup.bash
ade$ ros2 action send_goal /planning/replaytrajectory autoware_auto_planning_msgs/action/ReplayTrajectory "{replay_path: "/tmp/path"}" --feedback

F1第十次回放轨迹文件

已知的问题

回放的速度可能与录制的速度不完全相同。 这是由于 Pure Pursuit 算法的限制。 该实现不考虑延迟和外力,这意味着即使没有按下break,在释放加速时它也假定恒定速度。 这导致车辆的速度是错误的。 将来会进行改进。

 


您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码: 验证码,看不清楚?请点击刷新验证码 必填



1032 次浏览
3次
欢迎参加课程:
数据建模方法与工具
MBSE(基于模型的系统工程)
基于 UML 和EA进行分析设计