Overview

This project includes C++ plugin files, and XML model and world files to control the operation of an autonomous vehicle in a simulated environment.

Autonomous Vehicle Capabilities

  • Accurately detect and follow straight and curved lanes
  • Detect and avoid reasonably sized obstacles and straight, and slightly curved lanes
  • Get back to original lane after performing an avoidance maneuver
  • Transition between any of these operations on a closed course indefinitely
  • Vehicle Design

    High Level Controller - Controls the high level decision making of the vehicle. Decides what ‘high level’ operation to perform ( avoid an obstacle, follow the road, return to lane etc.)

    Low Level Controller - Controls the mechanical operation of the vehicle. Once the HLC ‘decides where to go’, the LLC ensures that the car will go there.

    Lidar - Processes lidar sensor information from the cars lidar sensor to detect obstacles.

    Camera - Processes camera sensor information to detect road lanes, and generate waypoints along the road to follow.

    GPS - Gets cars position in the world.

    Dependancies

    Gazebo - Physics simulator supporting our model, world, and plugin files

    FADBAD++ - Gazebo dependancy for automatic differentiation

    BOOST - Gazebo dependancy

    OpenCV - Camera Vision mathematics library used in image processing

    Homebrew Install Guide

    (1) brew install gazebo6 (We do not guarantee support for any versions of gazebo later than gazebo 6.0)
    • this will also install dependant fadbad++ and boost library packages
    (2) brew install opencv
    • Install Dependancy
    (3) git clone https://github.com/shenruyi1994/SelfDrivingCarTeamZero.git
    • Clone our repo
    (4) cd SelfDrivingCarTeamZero.git
    • cd into cloned repo
    (5) mkdir build
    • Create build directory to hold our makefile
    (6) cd build && cmake .. && cd ..
    • Use CMake to generate makefile
    (7) ./sdcMake
    • Run script to build the project
    (8) gazebo [worldfile.world] [-u]
    • Pass gazebo the name of your worldfile as first paramater
    • Use -u parameter to start the simulation in a paused state

    Demo Videos

    These are demo videos of the car driving around the curves and avoiding obstacles appropriately, as well as a video that integrates both with nicer cinemetography. If these videos aren't loading properly, you can check them out at this folder on Google Drive.

    Code

    Visit our GitHub repository here.

    Download Gazebo here.

    Cary

    Meet the Team

    From race cars to fire trucks, we love them all! We would all love to live in a world where human drivers are a remenant of the past. Autonomous vehicles may be very convenient, but even more importantly, this technology has the potential to save thousands of lives every year. We are all very proud to present our work in the field of autonomous vehicles!

    Mindi Coopster

    Hello, my name is Mindi Coopster. I originate from the land of Great Britain. I am very inteligient. I can safely follow lanes and avoid dangerous traffic.

    Kirsten Baker

    Kirsten is a 22 year old from Boulder, Colorado. She loves outer space, but she's apprehensive about going there. If Carleton offered an art minor, Kirsten would probably have one. Kirsten's two favorite car companies start with "l ": Lamborghini and Lotus.

    Tom Choi

    Tom is from Suwon, South Korea! He enjoys skiing and a big fan of computer games like LOL and StarCraft. He had no idea what he was gonna do at Carleton, but somehow ended up participating in developing self-driving car that Ruyi has wanted. His favorite car is Lamborghini Aventador.

    Will Richards

    Will Richards is a 21 year old from Salt Lake City, Utah! He uses he/him pronouns. He enjoys skiing, the great outdoors, and video games. Will has a particular interest in computational biology and medicine. Will’s favorite car is the Honda civic.

    Ruyi Shen

    Ruyi wishes she could drive, but she just can’t, so she has been waiting for self-driving cars for her entire life. Now time has come and she can finally get around this country without bothering other people! BTW surprisingly or not, she has also been a top fan of F-1 car racing.

    Ben Withbroe

    Ben hails from Takoma Park, MD, a suburb of DC that never found out that the hippy era ended decades ago. He runs cross country and track at Carleton and escapes to the ceramics studio whenever the car doesn't feel like playing nice

    Special Thanks to

    Carleton CS faculty, staff, and students

    Mike Tie for all the technical assistance

    Our friends and family for all the love and support

    Our amazing advisor Anna Rafferty for her guidance and advice throughout the project