连接路由器
地图绘制
小车的行驶依赖于模型的训练,因此需要设计一张地图,用于小车行驶的模型训练过程和推理结果验证。此处提供地图设计方案,开发者可以直接使用此地图,也可以自行设计其他版本的地图。
当前地图样例包含以下行驶场景,可供小车沿地图“8”字行驶。
- 直线行驶场景,小车保持直线行驶。一条道路上有两条相向的车道,并用黄色虚线分隔开来。车道两侧有黄白双色的车道线作为指示。
- 弯道转向场景,小车根据转向方位指示标行驶。
- 自动停车场景,小车在停车标识处,自动泊车至车位。
- 十字路口场景,小车在人行道处可进行目标检测,是否有行人通过,进而判断前进或停车等待。
- 路标识别场景,当前地图可放置各类玩具标识(未在图中标出),例如放置一个调头的标志,小车识别后调头转换方向行驶。
图1 样例地图

须知
地图规格
- 道路宽度:60cm。
- 完整地图的尺寸:约3m * 4m。
- 停车位:30cm * 40cm。
制作建议
- 使用Photoshop等画图软件制作地图。
- 建议使用表面不太光滑的材质,如果地图表面过于光滑则容易使小车打滑,难以精确地控制小车。另外光滑的表面会产生强烈的反光,影响小车通过摄像头采集的画面质量,进而干扰各个图像识别的任务。
- 如果小车的外观尺寸变更,开发者应修改地图的尺寸以与之相匹配。建议一条车道的宽度为1.5倍的小车车体宽度,或者更宽。
父主题: 样例组装
烧录镜像
参见一键制卡章节烧录镜像,将SD卡插入开发者套件的卡槽,当前样例仅在Ubuntu OS适配验证过,未在openEuler OS适配验证,推荐烧录Ubuntu OS镜像。
父主题: 运行环境准备
连接路由器
- 确保路由器和开发者套件已按7与8中所述连接。
- 使用PC连接车载无线路由器提供的WiFi,SSID为GL-MT300N-V2-177。
- 参见[通过路由器联网](https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/23.0.RC2/Hardware Interfaces/hiug/hiug_0013.html),查询开发者套件IP地址。
- 使用root用户(默认密码为Mind@123)远程登录开发者套件,登录IP为3中查询到的IP。
父主题: 运行环境准备
配置ESP32开发板烧录软件
Arduino是一套便捷、灵活、容易上手的硬件开发平台,它包括多种型号的Arduino控制电路板和专用编程开发软件,能帮助用户快速的开发出智能硬件原型。
-
进入Arduino官网下载程序安装包“arduino-ide_version_Windows_64bit.exe”,并按照默认配置安装。
-
双击打开软件,修改语言为中文。
-
安装ESP32开发板。
-
单击“文件 > 首选项”,如图3所示。
图3 中文软件菜单

-
在“其他开发板管理器地址”中输入“https://www.arduino.cn/package_esp32_index.json”与“https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json”或单击
图标在文本框中输入开发板管理器地址,单击确定保存,如图4所示。
图4 添加开发板管理器地址

-
离线安装ESP32开发板,单击[链接](https://ascend-repo.obs.cn-east-2.myhuaweicloud.com/Atlas 200I DK A2/DevKit/samples/23.0.RC1/e2e-samples/Car/esp32_package_2.0.6_arduinome.exe)下载Arduino的ESP32开发板安装包,下载完成后双击安装文件进行默认安装,安装完成后重启Arduino IDE。
图5 通过离线包安装ESP32开发板

-
在“开发板”中选择ESP32开发板,如图6所示。
图6 选择开发板

:::note 说明 此步骤中安装ESP32组件,推荐使用离线安装的方式,用户也可以自行搜索在线安装的方法,但由于国内网络等问题,在线安装过程很可能会非常慢甚至安装失败。 :::
-
-
用USB数据线连接PC和ESP32开发板,单击“工具 > 端口”,选择新增的COM串行端口作为Arduino与ESP32开发板传输数据的通道,如图7所示。
图7 选择串口

:::note 说明 若没有出现COM串行端口,可能是由于电脑没有安装USB串口驱动,需自行下载并安装CH340驱动工具。 :::
父主题: 运行环境准备
获取代码
获取代码
-
获取ESP32开发板代码。
获取链接,单击链接下载样例代码压缩包“ascend-devkit-master.zip”到PC并解压获得ESP32开发板的代码目录“ascend-devkit-master\src\E2E-Sample\Car\ESP32”。
-
获取小车项目代码。
-
远程登录开发者套件,进入“/usr/local”目录运行脚本拉取代码。
cd /usr/local -
运行脚本拉取代码。
bash E2E_samples_download_tool.sh -d download_destination_path -s source_repository -b branch target_path参数说明:
- -d:指定代码的下载路径。
- -s:指定开源仓库的clone url。
- -b:指定开源仓库分支名称及待下载的项目目录。
- -f:强制更新下载路径中的目录。当样例目录已删除,但重新下载时提示“Already up to date”时可使用此参数。
命令示例:
bash E2E_samples_download_tool.sh -d /home/HwHiAiUser/E2ESamples -s https://gitee.com/HUAWEI-ASCEND/ascend-devkit.git -b master src/E2E-Sample/Car/回显如下:
Download E2E samples successfully!执行完成后,会在“/home/HwHiAiUser/E2Esamples”目录下生成“src/E2E-Sample/Car/”目录。
-
配置功能库文件
将Car/ESP32/下的“ESP32_Servo.cpp”、“ESP32_Servo.h”、“RL_ESP32_Motor.cpp”、“RL_ESP32_Motor.h”四个文件复制到Arduino库文件路径下,例如:“C:\Users\10459\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.6\cores\esp32”。
烧录代码到ESP32开发板
-
在PC使用Arduino工具单击“文件>打开”按钮,选择“Car/ESP32/car_ctrl_esp32.ino”文件打开。
图1 打开脚本

-
在Arduino工具中单击
图2 烧录代码

图3 烧录回显

父主题: 运行环境准备
在线提单

