/CppRobotics

Cpp implementation of various basic robotics algorithms

Primary LanguageC++MIT LicenseMIT

CppRobotics

Language Static Badge

Cpp implementation of robotics algorithms including localization, path planning, path tracking and control, inspired by PythonRobotics and MotionPlanning.

📌Requirement

  • CMake
  • Eigen3
  • fmt
  • for MPC convex optimization (alternative
    • CppAD & IPOPT
    • osqp & osqp-eigen

Because this project uses matplotlib-cpp for visualization, you also need to ensure that you have Python3.x, and contain the following packages:

  • matplotlib
  • numpy

You can find install-tips for some third-party libraries here.

🛠Build

git clone git@github.com:PuYuuu/CppRobotics.git
cd CppRobotics
mkdir build && cd build
cmake ..
make -j6

Find all the executable files in $workspace/bin. By the way, all code development and debugging of this project are completed under WSL2. Currently, WSL2 natively supports GUI on Win10/Win11 without any configuration. For details, refer to gui-apps .

🎈Animations

Perception

PathPlanning

GlobalPlanner

Search_based Planning
Sampling_based Planning

LocalPlanner

CurvesGenerator

PathTracking

Control

🧾Licence

MIT