Skip to content

Integration of Multiple Algorithms using ROS to run on Carla, Udacity's Self-Driving Car

License

Notifications You must be signed in to change notification settings

Labonneguigue/CarND-Capstone-System-Integration

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Capstone Project - System Integration

Udacity - Self-Driving Car NanoDegree Build Status

This is the project repo for the final project of the Udacity Self-Driving Car Nanodegree: Programming a Real Self-Driving Car. For more information about the project, see the project introduction here.

Team Members

Team Members 📬
Guillaume Granié granie.guillaume@gmail.com
Ahmed Yassin ahmed.yassen.92@gmail.com
Akhil Umat aumat@mtu.edu
Emmanuel Onzon e.onzon@gmail.com
Scott Schnelle scottcschnelle@gmail.com

Objective

Implementation of multiple software components interacting with each other to successfully drive a Lincoln MKZ first in a simulator and then in the real world in a constrained environment. The Robotic Operating System (ROS) for inter-components communication and to control the car using its drive-by-wire (DBW) system.

Implementation

The following design allowed us to use the same code with the real car and the one in the simulator interchangeably.

alt text

Results

[On their way ...]


Installation

Please use one of the two installation options, either native or docker installation.

Native - Option 1

  • Be sure that your workstation is running Ubuntu 16.04 Xenial Xerus or Ubuntu 14.04 Trusty Tahir. Ubuntu downloads can be found here.

  • If using a Virtual Machine to install Ubuntu, use the following configuration as minimum:

    • 2 CPU
    • 2 GB system memory
    • 25 GB of free hard drive space

    The Udacity provided virtual machine has ROS and Dataspeed DBW already installed, so you can skip the next two steps if you are using this.

  • Follow these instructions to install ROS

  • Dataspeed DBW

  • Download the Udacity Simulator.

Docker - Option 2

Install Docker

Build the docker container

docker build . -t capstone

Run the docker file

docker run -p 4567:4567 -v $PWD:/capstone -v /tmp/log:/root/.ros/ --rm -it capstone

Port Forwarding

To set up port forwarding, please refer to the instructions from term 2

Usage

  1. Clone the project repository
git clone https://github.com/udacity/CarND-Capstone.git
  1. Install python dependencies
cd CarND-Capstone
pip install -r requirements.txt
  1. Make and run styx
cd ros
catkin_make
source devel/setup.sh
roslaunch launch/styx.launch
  1. Run the simulator

Real world testing

  1. Download training bag that was recorded on the Udacity self-driving car.
  2. Unzip the file
unzip traffic_light_bag_file.zip
  1. Play the bag file
rosbag play -l traffic_light_bag_file/traffic_light_training.bag
  1. Launch your project in site mode
cd CarND-Capstone/ros
roslaunch launch/site.launch
  1. Confirm that traffic light detection works on real life images

About

Integration of Multiple Algorithms using ROS to run on Carla, Udacity's Self-Driving Car

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 40.8%
  • CMake 35.5%
  • C++ 23.4%
  • Shell 0.3%