Skip to content

stefancyliax/CarND-Capstone

 
 

Repository files navigation

Udacity Project 13: Capstone

Udacity - Self-Driving Car NanoDegree

Team Members

Name E-Mail Slack
Stefan Cyliax [email protected] @stefancyliax
Paul Michalik [email protected] @paul-michalik
Frank Keidel [email protected] @frankk
Patrick Schalast [email protected] @patrickschalast

The goal of this project was to implement a complete stack that can drive a vehicle down a street and recognize and respect traffic lights. For this the Robot Operating System was used.

Real Parking Lot at Udacity: (Youtube link)

Real Parking Lot at Udacity

Highway video: (Youtube link)

Project track1

Test Lot Video: (Youtube link)

Project track2

Submission checklist and requirements

  • Smoothly follow waypoints in the simulator.
  • Respect the target top speed set for the waypoints' twist.twist.linear.x in waypoint_loader.py. Be sure to check that this is working by testing with different values for kph velocity parameter in /ros/src/waypoint_loader/launch/waypoint_loader.launch.
  • If your vehicle adheres to the kph target top speed set here, then you have satisfied this requirement.
  • Stop at traffic lights when needed.
  • Stop and restart PID controllers depending on the state of /vehicle/dbw_enabled.
  • Publish throttle, steering, and brake commands at 50hz.
  • Launch correctly using the launch files provided in the capstone repo.

rqt_graph

rqt_graph



Udacity README

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

Native Installation

More to read

  • 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 Installation

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

Run on Docker for Windows

Clone the project as described in section "Usage".

git clone https://github.com/stefancyliax/CarND-Capstone.git

On the first usage or when you modify Dockerfile build the Docker image

cd CarND-Capstone
docker_build.bat

Run the image in a new container with interactive shell terminal: docker_run.bat. Then proceed as described in section "Usage".

Run the image in a new container and log-in via RDP: docker_run_rdp.bat. Log in and proceed as described in section "Usage". To log-in into a running container, open a terminal (e.g. via Kitematic or docker attach <container-id> or docker attach happy-capstone-win. (Work in progress, not yet supported)

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

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HTML 50.3%
  • Jupyter Notebook 48.3%
  • Python 0.7%
  • CMake 0.4%
  • C++ 0.3%
  • Batchfile 0.0%