Skip to content

Latest commit

 

History

History
28 lines (24 loc) · 1.44 KB

README.md

File metadata and controls

28 lines (24 loc) · 1.44 KB

A Dual-Objective NMPC Scheme

A sequential dual-objective NMPC scheme applied to a planar quadrotor. Optimize time-optimal motion, stabilizing a target neighborhood of a state-space manifold.

Requirements

  • A Linux OS
  • matlab
  • python (>=3), with numpy and matplotlib
  • swig, tested with v3.0.12
  • gcc, g++
  • blas
  • lapack
  • casadi, tested with v3.3.0-rc2
  • acados, tested with bd193f3

How to use

  • From Matlab, execute code_generation/generate_code.m
  • In a terminal, browse to controller_library
    • Point to python include directory: export PYTHONINC=..., e.g.export PYTHONINC=/usr/include/python3.6m
    • Point to acados installation directory: export ACADOS=..., i.e. where the include and lib directories live (such as the root dir of the GIT repo after compilation).
    • and execute make install
  • Use Python to run simulation/simulate.py for simulations

Remarks

  • Note that currently only Nta < Ntr is supported, i.e. the economic prediction horizon must be shorter than the manifold stabilizing prediction horizon.
  • The lapack and blas libraries are assumed to be installed in /usr/lib/.