百度Apollo | 实车自动驾驶:感知、决策、执行的无缝融合


🎬 鸽芷咕个人主页
🔥 个人专栏 :《linux深造日志》《粉丝福利》

⛺️生活的理想,就是为了理想的生活!


⛳️ 推荐

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。

文章目录

  • [⛳️ 推荐](#⛳️ 推荐)
  • 引言
  • 步骤一:自动驾驶准备
  • [步骤二:启动并打开 Dreamview+](#步骤二:启动并打开 Dreamview+)
    • [2. 启动 Dreamview+](#2. 启动 Dreamview+)
    • [3. 选择模式和操作](#3. 选择模式和操作)
    • [4. 选择车辆和地图](#4. 选择车辆和地图)
    • [5. 打开所需要的模块](#5. 打开所需要的模块)
    • [6. 查看连接状态](#6. 查看连接状态)
    • [7. 编辑行驶路线](#7. 编辑行驶路线)
  • 步骤二:启动自动驾驶

引言

近年来,实车自动驾驶技术在汽车行业掀起了一场技术革命,为我们带来了前所未有的驾驶体验。本文将深入探讨实车自动驾驶技术的各个方面,从感知到决策再到执行,揭示这一领域的前沿技术和挑战。在这场技术革命的浪潮中,我们将一同探寻未来驾驶的奇迹。

步骤一:自动驾驶准备

1. 启动 CAN 卡

启动工控机后,在桌面上打开命令行终端(Terminal),进入 CAN 卡目录(默认在 home 路径下),启动 CAN 驱动:

clike 复制代码
bash ~/socketcan/start.sh

步骤二:启动并打开 Dreamview+

1. 启动 Apollo Docker 环境

如果您使用的是包管理,请您按照以下步骤操作:

2.打开命令行终端,切换路径到 Apollo:

clike 复制代码
cd ~/apollo

输入以下命令进入 Apollo Docker 环境:

clike 复制代码
aem start #创建容器

aem enter #进入容器

buildtool build

‍首次进入容器 build, 如果是只编译更新的模块,使用以下命令buildtool build -p 模块名

如果您的终端如下面所示,说明您成功进入了 Apollo 的运行容器:

如果您使用的是源码,请您按照以下步骤进入 docker 环境:

  • 打开命令行终端,切换路径到 Apollo:
bash 复制代码
cd ~/apollo #切换路径到apollo,注意cd与~/apollo之间有一个空格

输入以下命令启动 Apollo Docker 环境:

go 复制代码
bash docker/scripts/dev_start.sh

启动 docker 环境:

go 复制代码
bash docker/scripts/dev_into.sh

如果您的终端如下面所示,说明您成功进入了 Apollo 的运行容器:

clike 复制代码
[user@in-runtime-docker:/apollo]$

2. 启动 Dreamview+

  1. 在 Apollo Docker 环境下,启动 Dreamview+ 交互界面:

如果您使用的是包管理,请您在 docker 环境中执行以下命令执行以下命令启动 Dreamview+:

dart 复制代码
aem bootstrap start --plus

‍注意:

  • 如果您想要停止 Dreamview+,提示 Fail to start Dreamview,请输入aem bootstrap stop --plus
  • 如果您想要重启 Dreamview+,请输入aem bootstrap restart --plus

如果您使用的是源码,请您在 docker 环境中执行以下命令执行以下命令启动 Dreamview+:

clike 复制代码
bash scripts/bootstrap.sh start_plus

‍注意:

  • 如果您想要停止 Dreamview+,请输入bash scripts/bootstrap.sh stop_plus
  • 如果您想要重启 Dreamview+,请输入bash scripts/bootstrap.sh restart_plus

打开 Dreamview+。

启动成功后,在浏览器输⼊localhost8888⽹址打开 Dreamview+ 界面。

3. 选择模式和操作

Mode/模式 中,选择 Vehicle Test/实车模式

Operations/操作 中,选择 Auto Drive/自动驾驶

4. 选择车辆和地图

ADS Resources/自动驾驶资源 中,选择实车路测模式的车辆。

  • 如有对应车辆配置,可选择对应配置,

  • 如无对应车辆配置,可用默认配置。

Environment Resources/环境资源 > HD Map/高精地图 中,选择实车路测模式需要的地图。

5. 打开所需要的模块

启动所需要的 CanbusControlExternalCmdGPSLidarLocalizationPlanningPredictionRadarTransform 模块。

!docs/工具使用/Dreamview+/实车路测模式/image.png(https://img-

blog.csdnimg.cn/img_convert/03ca0e9ce81e415350dbb16537f69147.png)

ExternalCmd 是 Planning 模块的一个子模块,循迹会用到这个子模块,实车模式只开 Planning 模块就可以。

6. 查看连接状态

查看 Component 状态。

‍说明:

  • Component 中显示绿色 OK 为正常,可以进行下面的操作。 - WARNING 黄色只是信号不好,模块已经启动,只要不是 ERROR 就不影响操作。

查看 cyber_monitor 数据。

进入 docker 环境,输入 cyber_monitor,启动的 cyber_monitor 工具中,可以看到很多 channel 信息,其中 /tf 和 /tf_static 对应 Transform 模块,/apollo/localization/pose 对应 Localization 模块,apollo/sensor/gnss/best_pose 对应 GPS 模块。

使用上下方向键选择 channel /apollo/sensor/gnss/best_pose 按右方向键进入此 channel,查看 sol_type 项是否是 NARROW_INT,若为 NARROW_INT,则表示 GPS 信号良好,符合定位要求;若不为 NARROW_INT,则遥控移动下车辆,直到出现 NARROW_INT 为止。

检查所有开启模块均正常后可以进行下面的操作。

7. 编辑行驶路线

Vehicle Visualization/车辆可视化面板 中,单击 Routing Editing/路径编辑 按钮进入路由编辑功能。

在面板左上角初始位置图标,在地图上单击设定初始位置。

‍注意:长按鼠标右键可以拖转移动地图位置。

单击左上角轨迹点图标,在地图上单击添加途经轨迹点。

单击 保存编辑 ,完成轨迹绘制。

单击 Routing/路由 按钮出现红色轨迹线。

步骤二:启动自动驾驶

如果各模块正常工作,且规划效果也不错,将遥控器切换到自动驾驶状态。

在 DreamView+ 中,在操作底栏中,单击 START/启动 按钮,启动自动驾驶。

相关推荐
动物园猫3 分钟前
猪危险行为目标检测数据集:3类别、5,000+张图像 | 目标检测
人工智能·目标检测·计算机视觉
ai产品老杨4 分钟前
AI视频分析并发优化完整流程:解决多路视频并发不足与高延迟排查指南
人工智能·音视频
why技术27 分钟前
AI 写的文章,可能都带着手敲一遍都去不掉的“隐形水印”。
前端·人工智能·后端
罗西的思考28 分钟前
【Agent OS / AIOS】AOHP 深度解读:当 OS 开始为 Agent 而设计
人工智能·算法·机器学习
新知图书35 分钟前
8.2 智能体的心跳执行模式:以智能体为核心(智能体工程)
人工智能·agent·ai agent·智能体
民乐团扒谱机1 小时前
【微实验】组合优化matlab实战(马科维茨投资模型):在收益与风险之间,寻找最优的人生配比
大数据·人工智能·算法·机器学习·数学建模·matlab·组合优化
嘶哈哈哈1 小时前
使用 Labelme 标注遥感目标检测数据集:从类别表、矩形框到 group_id 完整流程
人工智能·目标检测·目标跟踪
kyriewen1 小时前
面试官说"打开你的AI工具"——我才发现,他考的根本不是写代码
前端·人工智能·面试
冬奇Lab1 小时前
Code Agent 解剖(03):各家 LLM 格式不一样,agent 怎么统一对接?
人工智能·开源
lifallen1 小时前
模型不是函数:claude-cookbooks/misc 十四篇的公共底层
人工智能·学习·ai·ai编程