CppRobotics icon indicating copy to clipboard operation
CppRobotics copied to clipboard

Cpp implementation of various basic robotics algorithms

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 [email protected]: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