Skip to content

MPC Based Path Follower and Low Level Control for the Lincoln MKZ Dataspeed ADAS Kit.

Notifications You must be signed in to change notification settings

govvijaycal/mkz_mpc_path_follower

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mkz_mpc_path_follower

This is a project to use model predictive control (MPC) with the Lincoln MKZ DBW system developed by Dataspeed (found here: https://bitbucket.org/DataspeedInc/dbw_mkz_ros/).

The Twist Controller from Dataspeed is modified to allow acceleration and steering angle command directly.

A MPC module is added, using a nonlinear kinematic bicycle model and IPOPT solver in Julia, to follow a path generated by a separate path planning module.

Please email Vijay Govindarajan ([email protected]) with any comments or questions.

Install directions

  • Uses ROS Kinetic and Gazebo 7.0.
  • Follow https://bitbucket.org/DataspeedInc/dbw_mkz_simulation to install the MKZ simulator.
  • You then need to install the following for running the MPC code:
    • Julia 0.4.7
    • sudo apt-get -y install hdf5-tools
    • sudo apt-get install -y build-essential gfortran pkg-config liblapack-dev libblas-dev
    • In Julia terminal:
      • Pkg.add("RobotOS")
      • Pkg.add("JLD")
      • Pkg.add("Ipopt")
      • Pkg.add("PyPlot")
      • Pkg.add("JuMP")
      • Pkg.update()

Usage

roslaunch mkz_mpc_path_follower gazebo_mkz_sim_lane_keep_demo.launch

About

MPC Based Path Follower and Low Level Control for the Lincoln MKZ Dataspeed ADAS Kit.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published