项目 / Autopilot & FSD - BFMC

Autopilot & FSD - BFMC

面向 Bosch Future Mobility Challenge 2024/2025 的 ROS catkin 自动驾驶 stack。

一个结合 perception、planning、control 与 embedded AI optimization 的小型自动驾驶车系统。我以 Team Lead 身份负责 BFMC 2024/2025 开发。

链接
GitHub

Repository 已 open-source,作为使用 ROS、deep learning 与 embedded hardware 构建小型自动驾驶车的 academic/research reference。

概览
该项目模拟一个紧凑型 ADAS/autonomous driving 系统:camera、IMU、sonar、GPS/localization 与 V2V signals 通过 ROS topics 流动;deep learning models 估计 lane error、stop-line distance、local path、traffic signs、traffic lights 和 obstacles;controller 将 perception 转换成 BFMC track 上的 speed/steering commands。2024 年团队代表越南获得前往 Romania final 的机会,但因签证问题无法实际参赛,最终保持 Top 15 worldwide。之后团队将项目 open-source,并把它扩展为越南 robotics、academic 与 research communities 的参考系统。
问题
小型自动驾驶车必须在很小的硬件上实时运行 perception、decision-making 和 control。系统需要处理 camera streams、lane detection、stop lines、traffic signs/lights、obstacle classification、IMU/sonar feedback、serial communication 与 ROS message flow,同时受到 CPU、RAM、散热、bandwidth 和 latency 的严格限制。
角色
Team Lead / AI Engineer / Embedded Robotics Engineer
方法
架构使用 ROS Noetic/catkin,并拆分为 input、control、action、output、perception、utils 与 rosserial packages。Raspberry Pi 通过 FFC 接入 RPi Camera V2,通过 I2C 读取 BNO055,并通过 UART/USB 与 STM Nucleo 通信;Nucleo 负责 steering servomotor、VNH5019 motor driver、DC motor 与 AMT103 encoder,电源由 2-cell LiPo battery 经过 OKR-T/10 DC/DC converter 提供。Camera nodes 将 frames 发布到 ROS;main autonomous loop 使用 OpenCV DNN 运行 ONNX-style models;controller 使用 Pure Pursuit/PID 生成 steering/speed commands;serial bridge 与 MCU 通信控制 motor 和 steering servo。AI pipeline 通过 ROI cropping、16x16/32x32 grayscale input、小型 ONNX models、confidence thresholds、tiled-ROI voting、inference timing 与 fallback logic 进行优化,以适配 Raspberry Pi 与 Jetson-class hardware。
结果
Top 15
BFMC 2024 worldwide ranking
$4K
research/education kits approximate revenue
ROS
catkin stack with sensor, control, and serial nodes
  • 将研究/教育用小型车模型商业化,为团队带来约 4,000 USD 收入。
  • 优化 lane keeping、local path estimation、traffic sign/light detection、stop-line estimation 与 obstacle classification,使其适配 embedded hardware。
  • 积累了 ROS catkin、OpenCV、ONNX、Python/C++、serial protocols、MCU control、Raspberry Pi、Jetson Nano、edge AI 与 ADAS systems 的实践经验。

项目亮点

Autopilot demo

车辆在 BFMC track 上自动行驶,包含 lane keeping、steering control 与 scenario response。

ADAS ROS stack

ROS/catkin workflow 连接 perception、control、action、output 与 MCU serial bridge。

Bird-view camera

用于 lane analysis、path planning、localization 与 simulation/real-world comparison 的调试视角。

Car detection

紧凑型 ADAS stack 中使用的车辆/障碍物检测 pipeline。

视频与演示

Timeline

2024
BFMC 2024,代表越南,达到 Top 15 worldwide,并准备 Romania final
2024
签证问题导致无法参加 physical final,但团队继续完善系统与文档
2024
Open-source ROS catkin stack,服务越南 research 与 robotics communities
2025
继续 BFMC 2025 开发,覆盖 simulation、ADAS、perception 与 embedded optimization
现在
扩展 research/education vehicle kits,并继续优化 edge hardware pipeline

项目背后

小硬件上的自动驾驶

核心挑战不只是检测 lane 或 signs,而是让整个 pipeline 在 Raspberry Pi 与 edge devices 上足够快。因此 ROI selection、resize、grayscale conversion、inference、control loop 与 serial command timing 都会影响最终表现。

多个小模型,而不是一个重模型

系统使用多个专用模型:lane keeper 估计 e2/e3 errors、stop-line estimator、local path estimator、sign classifier、traffic-light classifier 与 obstacle classifier。这使 stack 更容易优化、调试并部署到 embedded hardware。

ROS 作为运行骨架

Camera、IMU、sonar、GPS/localization、vehicle state、control commands 与 environmental data 通过 ROS nodes、topics、custom messages 与 launch files 组织。Catkin workspace 将 input、action、control、output 与 utils 清晰分离。

从比赛走向社区

BFMC 2024 后,团队选择 open-source 项目,让越南研究团队和 robotics 学生可以学习完整的小型自动驾驶车 stack。系统也成为 research/education kits 的基础,并为团队产生早期收入。

Gallery

对这个项目感兴趣?

一起构建适合真实 workflow 的 AI 与 edge 系统。

联系合作
分享这个项目: