toppra is a library for computing the time-optimal path parametrization for robots subject to kinematic and dynamic constraints. In general, given the inputs:
- a geometric path
p(s)
,s
in[0, s_end]
; - a list of constraints on joint velocity, joint accelerations, tool Cartesian velocity, et cetera.
toppra returns the time-optimal path parameterization: s_dot (s)
, from which the fastest trajectory q(t)
that satisfies the
given constraints can be found.
Documentation and tutorials are available here.
Development roadmap Please check our the Issues tracker.
Please report any issues, questions or feature request via Github issues tracker.
Have a quick question? Try asking in our slack channel.
Pull Requests are welcome! Create a Pull Request and we will review your proposal!
toppra
was originally developed by Hung
Pham (Eureka Robotics, former CRI
Group) and Phạm Quang Cường
(Eureka Robotics, CRI Group) with major contributions from talented
contributors:
- Joseph Mirabel (C++ API)
- EdsterG (Python3 support).
If you have taken part in developing and supporting the library, feel free to add your name to the list.
The development is also generously supported by Eureka Robotics.
If you use this library for your research, we encourage you to
- reference the accompanying paper «A new approach to Time-Optimal Path Parameterization based on Reachability Analysis», IEEE Transactions on Robotics, vol. 34(3), pp. 645–659, 2018.
- put a star on this repository.
qpOASES by following the steps below:
git clone https://github.com/hungpham2511/qpOASES
cd qpOASES
Note: On a Mac, am additional step is required:
Remove this line from interfaces/python/setup.py
:
extra_params['extra_link_args'] = ["-Wl,-O1", "-Wl,--as-needed"]
Install:
mkdir bin && make
cd interfaces/python/
pip install cython
python setup.py install --user
Finally, install toppra
with
git clone https://github.com/DexaiRobotics/toppra.git
cd toppra/
pip install -r requirements.txt --user
python setup.py install --user
And you are good to go. If you have openrave
installed on your computer, you can
run the below example to see toppra
in action.