前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >百度Apollo | 实车自动驾驶:感知、决策、执行的无缝融合

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

作者头像
鸽芷咕
发布2024-05-25 20:55:17
850
发布2024-05-25 20:55:17
举报
文章被收录于专栏:C++干货基地C++干货基地

引言

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

步骤一:自动驾驶准备

1. 启动 CAN 卡

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

代码语言:javascript
复制
bash ~/socketcan/start.sh

步骤二:启动并打开 Dreamview+

1. 启动 Apollo Docker 环境

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

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

代码语言:javascript
复制
cd ~/apollo

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

代码语言:javascript
复制
aem start #创建容器

aem enter #进入容器

buildtool build

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

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

docs/工具使用/Dreamview+/实车路测模式/image.png
docs/工具使用/Dreamview+/实车路测模式/image.png

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

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

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

代码语言:javascript
复制
bash docker/scripts/dev_start.sh

启动 docker 环境:

代码语言:javascript
复制
bash docker/scripts/dev_into.sh

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

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

2. 启动 Dreamview+

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

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

代码语言:javascript
复制
aem bootstrap start --plus

‍注意:

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

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

代码语言:javascript
复制
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 状态。

docs/工具使用/Dreamview+/实车路测模式/image.png
docs/工具使用/Dreamview+/实车路测模式/image.png

‍说明:

  • 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 模块。

docs/工具使用/Dreamview+/实车路测模式/image.png
docs/工具使用/Dreamview+/实车路测模式/image.png

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

docs/工具使用/Dreamview+/实车路测模式/image.png
docs/工具使用/Dreamview+/实车路测模式/image.png

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

7. 编辑行驶路线

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

docs/工具使用/Dreamview+/实车路测模式/image.png
docs/工具使用/Dreamview+/实车路测模式/image.png

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

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

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

docs/工具使用/Dreamview+/实车路测模式/image.png
docs/工具使用/Dreamview+/实车路测模式/image.png

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

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

docs/工具使用/Dreamview+/实车路测模式/image.png
docs/工具使用/Dreamview+/实车路测模式/image.png

步骤二:启动自动驾驶

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

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

docs/工具使用/Dreamview+/实车路测模式/image.png
docs/工具使用/Dreamview+/实车路测模式/image.png
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-01-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 引言
  • 步骤一:自动驾驶准备
  • 步骤二:启动并打开 Dreamview+
    • 2. 启动 Dreamview+
      • 3. 选择模式和操作
        • 4. 选择车辆和地图
          • 5. 打开所需要的模块
            • 6. 查看连接状态
              • 7. 编辑行驶路线
              • 步骤二:启动自动驾驶
              相关产品与服务
              容器服务
              腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档