Dự án / Autopilot & FSD - BFMC

Autopilot & FSD - BFMC

ROS catkin autonomous driving stack cho Bosch Future Mobility Challenge 2024/2025.

Hệ thống xe tự hành mô hình kết hợp perception, planning, control và tối ưu AI trên phần cứng nhúng. Tôi đảm nhiệm vai trò Team Lead trong mùa BFMC 2024/2025.

Liên kết
GitHub

Repository được open-source như tài liệu nghiên cứu/học thuật cho xe tự hành mô hình dùng ROS, deep learning và phần cứng nhúng.

Tổng quan
Dự án mô phỏng một hệ thống ADAS/autonomous driving thu nhỏ: camera, IMU, sonar, GPS/localization và V2V được gom qua ROS topics; các mô hình deep learning dự đoán lane error, stop line distance, local path, biển báo, đèn tín hiệu và vật cản; controller chuyển perception thành speed/steering command để xe chạy ổn định trên track BFMC. Năm 2024, đội đại diện Việt Nam có cơ hội vào vòng final tại Romania nhưng không thể tham dự vì vấn đề visa, kết quả giữ ở Top 15 worldwide. Sau đó nhóm open-source dự án và nhân rộng mô hình cho cộng đồng nghiên cứu, học thuật và robotics tại Việt Nam.
Bài toán
Xe tự hành mô hình phải xử lý perception, decision và control theo thời gian thực trên phần cứng rất nhỏ. Hệ thống cần chạy ổn với camera stream, lane detection, stop-line, traffic sign/light, obstacle classification, IMU/sonar feedback, serial communication và ROS message flow trong khi CPU, RAM, nhiệt độ, bandwidth và độ trễ đều bị giới hạn.
Vai trò
Team Lead / AI Engineer / Embedded Robotics Engineer
Cách tiếp cận
Kiến trúc dùng ROS Noetic/catkin với các package input, control, action, output, perception, utils và rosserial. Raspberry Pi nhận hình ảnh từ RPi Camera V2 qua FFC, đọc BNO055 qua I2C, giao tiếp STM Nucleo qua UART/USB; Nucleo điều khiển steering servomotor, VNH5019 motor driver, DC motor và AMT103 encoder, với nguồn 2-cell LiPo qua bộ DC/DC OKR-T/10. Camera node publish frame qua ROS, main autonomous loop chạy OpenCV DNN với ONNX Runtime-style models, controller dùng Pure Pursuit/PID để tạo steering/speed, còn serial bridge giao tiếp MCU để điều khiển motor và servo. Phần AI được tối ưu bằng ROI cropping, grayscale resize nhỏ 16x16/32x32, mô hình small ONNX, confidence thresholds, voting qua tiled ROI, inference timing và fallback logic để chạy mượt trên Raspberry Pi/Jetson-class hardware.
Kết quả
Top 15
worldwide ranking in BFMC 2024
$4K
approximate revenue from research/education kits
ROS
catkin stack with sensor, control and serial nodes
  • Thương mại hóa mô hình xe tự hành phục vụ nghiên cứu/giáo dục, đem về xấp xỉ 4,000 USD cho nhóm.
  • Tối ưu lane keeping, local path estimation, traffic sign/light detection, stop-line estimation và obstacle classification để chạy trên embedded hardware.
  • Xây dựng kinh nghiệm thực tế về ROS catkin, OpenCV, ONNX, Python/C++, serial protocol, MCU control, Raspberry Pi, Jetson Nano, edge AI và hệ thống ADAS.

Nổi bật dự án

Autopilot demo

Xe chạy tự hành trên track BFMC với lane keeping, steering control và phản ứng theo tình huống.

ADAS ROS stack

ROS/catkin workflow kết nối perception, control, action, output và serial bridge xuống MCU.

Bird-view camera

Góc nhìn hỗ trợ phân tích lane, path planning, localization và debugging trong mô phỏng/chạy thật.

Car detection

Pipeline nhận diện xe/vật cản và phản ứng trong hệ thống ADAS mô hình.

Video & Walkthrough

Timeline

2024
BFMC 2024, đại diện Việt Nam, đạt Top 15 worldwide và chuẩn bị final Romania
2024
Visa issue khiến đội không thể tham dự physical final, tiếp tục hoàn thiện hệ thống và tài liệu
2024
Open-source ROS catkin stack cho cộng đồng nghiên cứu và robotics tại Việt Nam
2025
Tiếp tục phát triển BFMC 2025 với mô phỏng, ADAS, perception và embedded optimization
Hiện tại
Nhân rộng mô hình xe tự hành cho nghiên cứu/giáo dục và tối ưu pipeline trên edge hardware

Câu chuyện đằng sau

Autonomous driving trên phần cứng nhỏ

Thách thức chính không chỉ là nhận diện lane hay biển báo, mà là làm toàn bộ pipeline chạy đủ nhanh trên Raspberry Pi và các edge device. Mọi bước từ ROI, resize, grayscale, inference, control loop đến serial command đều phải tính đến latency và tài nguyên.

Perception bằng nhiều model nhỏ

Thay vì một model lớn, hệ thống dùng nhiều model chuyên biệt: lane keeper ước lượng e2/e3, stop-line estimator, local path estimator, sign classifier, traffic-light classifier và obstacle classifier. Cách này giúp dễ tối ưu, dễ debug và phù hợp hơn với thiết bị nhúng.

ROS là xương sống vận hành

Camera, IMU, sonar, GPS/localization, vehicle state, control command và environmental data được tổ chức qua ROS nodes, topics, custom messages và launch files. Catkin workspace giúp hệ thống có ranh giới rõ giữa input, action, control, output và utils.

Từ cuộc thi đến cộng đồng

Sau BFMC 2024, nhóm quyết định open-source dự án để cộng đồng nghiên cứu Việt Nam có thể tiếp cận một stack xe tự hành mô hình hoàn chỉnh. Từ đó hệ thống cũng được dùng cho mô hình nghiên cứu/giáo dục và tạo ra doanh thu ban đầu cho nhóm.

Gallery

Quan tâm đến dự án này?

Cùng nhau xây dựng giải pháp AI và edge bền vững cho workflow của bạn.

Liên hệ hợp tác
Chia sẻ dự án này: