Self Driving Car- Mapping, Path Planning & Navigation

Autonomous vehicle with ROS2, SLAM, and object detection

This project focuses on the development of a Self-Driving Car (SDC) emphasizing Mapping, Path Planning, Obstacle Detection and Avoidance. The system utilizes advanced Artificial Intelligence (AI) techniques, high-precision mapping using Lidar and Camera, and implements both PID controllers and Model Predictive Control (MPC) for optimal vehicle motion.

Project Overview

The autonomous car test platform.

Technical Implementation

The project integrates Robot Operating System (ROS) framework for enhanced system speed. Advanced algorithms process real-time data for path planning, calculating optimal routes while considering pedestrians on the road.

Mapping and Perception

The system implements high-precision mapping using physical systems such as Lidar and Camera, enabling accurate environmental perception. SLAM (Simultaneous Localization and Mapping) algorithms generate accurate Lidar-based maps of static environments.

Left: Creating map in ROS RViz on college road at night. Right: Planned path around robotics club for autonomous navigation.

Dataset and Object Detection

The project involved creating a comprehensive dataset for object detection model training, enabling the car to recognize and avoid obstacles in real-time.

Dataset creation process for object detection model training.

For optimal vehicle motion, the system implements both Proportional-Integral-Derivative (PID) controllers and Model Predictive Control (MPC). The nav2 stack is incorporated for autonomous navigation and real-time path planning.

Development Videos

Initial Testing Phase

Red car working with rear motor and servo motor steering in the initial testing phase.

ROS Teleoperation

Red car controlled via ROS teleoperation from keyboard.

Dataset Creation for Road Detection

Dataset creation process for road detection model training.

Demo Video

Demo video of the autonomous car project showcasing mapping, navigation, and obstacle avoidance capabilities.

Additional Resources

Documentation

Technical Videos

Team

Project Members:

  • Aarjan Budathoki (PUL077BEI004)
  • Abhigyan Bhusal (PUL077BEI007)
  • Manish Guruwacharya (PUL077BEI021)

Submitted to: Department of Electronics & Computer Engineering, Institute of Engineering, Pulchowk Campus, Tribhuvan University (March, 2024)