Nav Planning¶
A planning library for two mobile robots with a pan-tilt camera — the Trossen LoCoBot (differential drive) and the Clearpath Ridgeback (holonomic) — with motion planning (OMPL frontend, VAMP SIMD collision backend), kinodynamic planning (FLASK) and time-optimal trajectory generation, all behind a unified Python API. A sister library of Fetch-Planning and Autolife-Planning.
-
:material-package-variant:{ .lg .middle } Drop-in, few deps
For inference:
numpyandpin. No conda required, no ROS, no MoveIt.pip install nav-planning. -
:material-robot-mower-outline:{ .lg .middle } Two robots, one API
create_planner("locobot_base"),create_planner("ridgeback_whole_body")— the same planners, trajectories and low-level calls for both robots; only the name changes. -
:material-speedometer:{ .lg .middle } Millisecond plans
VAMP's SIMD sphere checks against point clouds: on the two-room demo scene RRT-Connect plans in 0.5–13 ms and FLASK returns dynamically feasible trajectories in 0.2–53 ms (medians, measurement).
Features¶
-
:material-map-marker-path:{ .lg .middle } Motion Planning
OMPL frontend + VAMP SIMD backend. The LoCoBot's base is planned on Reeds-Shepp curves, the Ridgeback's in holonomic SE(2); the camera joints alongside, or held.
-
:material-timer-outline:{ .lg .middle } Time Parameterization
Time-optimal path parameterization (TOPP-RA) with per-joint velocity and acceleration limits.
-
:material-run-fast:{ .lg .middle } Kinodynamic Planning
FLASK plans a time-parameterised trajectory directly, within the joint and base limits — exactly nonholonomic for the LoCoBot.
-
:material-cube-scan:{ .lg .middle } Robots
Collision spheres generated from the official robot descriptions; a documented camera mast for the Ridgeback.
Quick Install¶
For inference — running the planners — pip install the prebuilt wheel (Linux x86_64, Python 3.10–3.14):
See the Getting Started guide for the full development setup (pixi + conda-forge toolchain, robot description rebuilds, FK codegen).