A pythonic motion planning library
Project description
Pythonic Motion Planning (pymp)
Motion planning is a computational problem to find a sequence of valid configurations that moves the object from the source to destination.
This library is designed for robotic applications, especially sampling-based algorithms for high-dimension configuration spaces(e.g., robot arm).
- pythonic: easy to debug, customize and extend
- standalone collision checker (hpp-fcl): without relying on any physical simulator (e.g., mujoco, pybullet, sapien) to check collision
- out-of-box: common motion planning algorithms (e.g., RRT-Connect) are implemented for robotic manipulation
Installation
Dependencies
This library (pymp) depends on pinocchio to handle URDF and robot kinematics, hpp-fcl to check collision, toppra to do time parameterization.
Install pymp
From pip:
pip install motion-planning
From source:
git clone https://github.com/Jiayuan-Gu/pymp.git
pip install -e .
From Github directly:
pip install --upgrade git+https://github.com/Jiayuan-Gu/pymp.git
Usage
See example.py for basic usage. Note that pymp
depends on SRDF associated with URDF to remove self-collision.
Logging
The logging level can be specified by the environment variable PYMP_LOG
.
# Set the logging level to DEBUG for pymp
export PYMP_LOG=DEBUG
Base pose
pymp
supports specifying the pose of the base link during the initialization of the planner. We support many formats of pose (e.g., [x, y, z] for position, [w, i, j, k] for quaternion, [x, y, z, w, i, j, k] for SE(3), or a 4x4 rigid transformation matrix)
from pymp import Planner
planner = Planner(
...
base_pose=[0, 0, 0],
)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for motion_planning-0.1.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d904c640c6156a1764f5dea4adde0a7045b93d728af91eac7d97f2bea3e3abab |
|
MD5 | 7c177975570ad852d47d7666432db6a3 |
|
BLAKE2b-256 | c760f720a4a885c64ba2174ac8fea875fe948b47b04b9ec99c501d07a669f126 |