# SmartCar2023 **Repository Path**: Alex-smith/smart-car2023 ## Basic Information - **Project Name**: SmartCar2023 - **Description**: 智能车代码——各阶段修改记录 - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 6 - **Forks**: 0 - **Created**: 2023-03-11 - **Last Updated**: 2026-02-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Intelligentcar2023-FZ3B #### 介绍 全国大学生智能汽车竞赛 - [赛曙科技]开源软件工程,基于百度Edgeboard-FZ3B赛事教育版边缘计算板卡开发, 严肃声明!!该软件方案仅限智能汽车竞赛学习交流,本人基于智能车爱好者维度向公众公开源代码,不涉及任何商业行为,请全体技术爱好者共同监督指导!!! 此工程包含完全模型组2023年“智慧农业”主题完整代码示例,相关演示视频请查看具体链接。 #### 软件架构 ![](res/ICAR-Edgeboard-Frame.png) #### 使用说明 1. 该软件工程基于C++/OpenCV2/Python3.7/PaddlePaddle-Detection搭建; 2. 基于百度智能汽车-完全模型组及赛事开源Edgeboard板卡FZ3B调试开发; 3. 默认将该软件下载到EB:root@EdgeBoard:~/workspace目录下即可启用; 4. 除此之外,该软件支持Debug仿真调试(视频)/比赛模式两种方式运行; #### 文件目录 ![](res/软件文件目录.png) #### 下位机说明 ​ 请注意:该代码工程需配合赛曙科技开源智控板(CarDo)使用,用户也可按照开源协议准备自己的下位机,通过USB转串口协议联合使用。 ![](res\cardo.png) #### 程序启动说明 1. 编译代码/CMake ![](res/makeList.png) ​ 如上图所示CMakeLists.txt文件:本工程包含智能车主程序和其它可被编译运行的程序,用户编译后执行,编译步骤如下: ​ cd到工程build路径下,执行 ``` sudo cmake ../src/ ``` ![](res/cmake.jpg) ​ 编译代码 : ``` sudo make icar -j ``` ![](res/make.png) 2. 配置文件(config)修改: ​ 方便比赛调试,本工程摘取重要参数关联至motion.json文件,用户在调试过程直接修改配置文件,无需编译代码即可运行。 ​ 其中,可通过debug标志启动仿真(跑视频)模式和比赛(竞速)模式,仿真模式下默认调取本地视频(`"pathVideo": "../res/samples/sample.mp4"`),并且通过远程桌面观察实时图像和运算结果;比赛模式将关闭图像显示和图形绘制(省时10ms)。 ​ 另外,包括智能车速度、姿态模型参数、赛道元素使能等关键参数,用户按照配置文件详细说明修改。 ![](res/config.jpg) ​ 修改motion.json文件后,不必再次编译即可运行,方便后期调试。可通过debug标志启动仿真(跑视频)模式和比赛(竞速)模式,仿真模式下默认调取本地视频,并且通过VNC观察实时图像运算结果;比赛模式将关闭图像显示和图形绘制(省时间/10ms)。 3. 连接下位机,启动程序 运行icar程序需要连接下位机,否则程序退出,插入ch340/cp2102的USB串口即可(或注释串口程序)。 ![](res/run.png) 4. 查看运行结果(debug模式) ![](res/debug.png) 5. 开始比赛(竞赛模式) ​ 脱机运行:小车在赛道上奔跑时可通过 "nohup" 命令启动程序,此时拔掉网线继续运行。 ![](res/nohup.png) ​ 若程序无法自行退出,待重新插上网线后,通过Ctrl+C终止进程,或者查询当前进程ID: ``` ps -ef|grep ./icar ``` ​ 然后杀掉当前进程(kill -9 ID)。 #### 图像处理思路 相机采图 → 图像校正 → AI预处理 → 赛道识别(Track) → 特殊元素识别(Rec/Det) → 路径拟合 → 运动控制模型计算 → 下位机通信: ![](res/ai.jpg) ![](res/track.jpg) ![](res/rec.jpg) ![](res/control.jpg) #### I车模配置 1. 摄像头前瞻距离:1.6~2.2米(推荐1.75m) 2. 下位机设计PID模型/电机模型-控速,控制单位:m/s (float) 3. 下位机舵机控制,TIM/定时器计数上限20000,频率50Hz,占空比控制阈值[500,2500]。上位机理论控制阈值[1100, 1500, 1900] / 左|中|右,舵机中值及左右阈值在实际的标定值上偏移。