-
Notifications
You must be signed in to change notification settings - Fork 10
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Henrique Ferrolho
committed
Nov 12, 2020
1 parent
153e1f6
commit ba29266
Showing
4 changed files
with
40 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
<mxfile host="Electron" modified="2020-11-12T10:08:57.052Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/13.7.9 Chrome/85.0.4183.121 Electron/10.1.3 Safari/537.36" etag="2wbz0iPmsXNc61q_Kuf_" version="13.7.9" type="device"><diagram id="bMYdeu9lRLu-t7AKMiZ7" name="Page-1">7VjbUtswEP2azLQPYXyLSR9DAoUpFIbAlD4qsWILZK+RZeLw9V3bcnyDAA2ZpNC8xHu0Wkl7dtdad8yhn3wXJPTOwKG8Y2hO0jFHHcPQdXMf/1JkkSO2/S0HXMEcpVQCY/ZIFagpNGYOjWqKEoBLFtbBKQQBncoaRoSAeV1tBry+akhc2gLGU8Lb6C/mSC9H+5pW4seUuZ5sDPik0FVA5BEH5hXIPOyYQwEg8yc/GVKe+q5wSz7v6JnR5b4EDeRrJnRPZmfDez7j9+fH+p3QzSE97fbV3uSiOC918PhKBCE9cCEg/LBEDwTEgUNTqxpKpc4pQIigjuAtlXKhuCSxBIQ86XM1ShMmbyrPv1NTez0ljRJlORMWSsj3mW7u2eMrKIJYTOmKM+tL52PQUvCpFAucJygnkj3U7RMVPe5Sbzn1AhiubGgq0pH5Pa3yM3IDKuotS6sblES4VCobJWsDIciiohamCtGKVQu7xTpaIwhe0rdq+viQ76CQKh4qoSyw3hBkypcPhMfKu5cwgXRXqlzYHCk8mAh8cmVGdo7MINt7GZ32fQzFQDfK4muACroWJuVgYeXL9eXo6GthC3eemyuWaMR9GdVpWM49Juk4JFkgzbGy1SNYHYgKSZPV8diOs6QoFDUizH0lz8sioxelw6sUGLsRSNXIrND4dpbMFkvXERVdh85YgH7B2UEY57FYcxy6QNa9E0kBd3QIHAQiAQRp1ZgxzhsQ4cwNUJyiyyjiB6lDGZbegRrwmeNkJecpOuplKOW2KFv6BugxX0mPsSl6vm2jUr9j1bU/ctXt72DVtVv5fCFgwqnfrrcjGk0FCyWDYNfqotXbdl3UrX/ljoQeFoubqlCZlYrltEzaxN1KsZAn2irFdW9h63GqtZLjzXcO66k7x9X55WDvlm/k0lF9g3YM0+nRvmO1Xrc40jcmpm2/Tzq28lHfej7u/8/H1+dj0TK/mI/rvp/X47TdIvw8vUBgDBzDd2MdwkkIYTofM8fQfgQMM2lnGwareYnYfiYaLdauBAmev0t8zFbhr1u5jfUKeruXO0dGfPZIPhEvzYTZAV56bV5iiV31J2HE1naOkXaXVHybwlJ2S6cS1CrbLP1Nv22y9KNYfpPOe9Hyw755+Ac=</diagram></mxfile> |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,36 @@ | ||
# TORA.jl | ||
|
||
Documentation for TORA.jl | ||
*TORA* stands for **T**rajectory **O**ptimization for **R**obot **A**rms. | ||
|
||
To get started, see the [Tutorial](@ref). | ||
|
||
## Summary | ||
|
||
This package allows users to define tasks for robot manipulators with simple *high-level descriptions*. Then, TORA.jl does the heavy-lifting! | ||
It converts those descriptions into numerical optimization problems, which are in turn tackled by state-of-the-art solvers. | ||
The final result of the optimization is a full trajectory (joint *positions*, joint *velocities*, and joint *torques*) taking into account the whole-body dynamics of the system. | ||
These trajectories can be commanded to your favourite robot, either in simulation or in real life. | ||
|
||
```@raw html | ||
<figure> | ||
<img src="./assets/diagram.svg" alt="diagram" width="100%"> | ||
<figcaption><strong>Diagram 1.</strong> Intended use of this package.</figcaption> | ||
</figure> | ||
``` | ||
|
||
## Functionality | ||
|
||
Currently, the highlights of TORA.jl are as follows: | ||
|
||
- Simple interface to define constrained motion-planning problems | ||
- Formulation of the optimal control problem using *Direct Transcription* | ||
- Optimization of NLP problems using state-of-the-art solvers ([Ipopt.jl](https://github.com/jump-dev/Ipopt.jl) and [KNITRO.jl](https://github.com/jump-dev/KNITRO.jl)) | ||
- Full system dynamics enforced with either *forward* or *inverse* dynamics ([RigidBodyDynamics.jl](https://github.com/JuliaRobotics/RigidBodyDynamics.jl)) | ||
- Automatic differentiation of sparse Jacobians ([ForwardDiff.jl](https://github.com/JuliaDiff/ForwardDiff.jl) and [SparseDiffTools.jl](https://github.com/JuliaDiff/SparseDiffTools.jl)) | ||
- Automatic sparsity detection of Jacobians ([SparsityDetection.jl](https://github.com/SciML/SparsityDetection.jl)) | ||
- Visualization of robot models and motion plans ([MeshCat.jl](https://github.com/rdeits/MeshCat.jl)) | ||
|
||
## About | ||
|
||
Overall, the *direct transcription* technique implemented in TORA.jl stems from: | ||
- Betts, John T. [*Practical Methods for Optimal Control and Estimation Using Nonlinear Programming*](https://epubs.siam.org/doi/book/10.1137/1.9780898718577). SIAM, 2010. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters