RustRobotics
This package is a rust implementation of PythonRobotics.
Build
git clone https://github.com/rsasaki0109/RustRobotics.git
cd RustRobotics
cargo build
Run (Example)
cargo run --bin ekf
Table of Contents
- Localization
- Extended kalman filter localization
- Particle filter localization
- SLAM
- Iterative Closest Point
- FastSLAM 1.0
- Path Planning
- Bezier Path
- Cubic Spline
- Dynamic Window Approach
- Model Predictive Trajectory Generator
- Dijkstra algorithm
- Potential Field algorithm
- State Lattice Planner
- Rapidly-Exploring Random Trees (RRT)
- Path Tracking
- Move to Pose
- Pure Pursuit
- Stanley Control
- LQR steer control
- Nonlinear Model predictive control with C-GMRES
Localization
Extended Kalman Filter Localization
Red:GPS, Brue:Ground Truth, Green:EKF, Yellow:Dead Reckoning
cargo run --bin ekf
Particle Filter Localization
SLAM
Iterative Closest Point
FastSLAM 1.0
Path Planning
Bezier Path
Brack:Control points, Green: Path, Red: Start and Goal
cargo run --bin bezier_path
Cubic Spline
Brack:Control points, Green: Path
cargo run --bin csp
Dynamic Window Approach
Brack: Obstacles, Green: Trajectry, Yellow: Predected trajectry
cargo run --bin dwa
Model Predictive Trajectory Generator
Green: Path
cargo run --bin model_predictive_trajectory_generator
Dijkstra algorithm
Potential Field algorithm
State Lattice Planner
Rapidly-Exploring Random Trees
Path Tracking
Move to Pose
Green: Path, Red: Start and Goal
cargo run --bin move_to_pose
Pure Pursuit
Brack: Planned path, Green: Tracked path
cargo run --bin pure_pursuit
Stanly Control
Brack: Planned path, Green: Tracked path
cargo run --bin stanley_control
LQR steer control
Brack: Planned path, Green: Tracked path
cargo run --bin lqr_steer_control