jerryderry/NTRTsim
The NASA Tensegrity Robotics Toolkit Simulator, a physics based simulator to research the design and control of tensegrity robots.
NASA Tensegrity Robotics Toolkit
11/09/2017 NTRTsim for macOS
This repository is forked to make changes so that NTRT can now be built on mac running Sierra (10.12).
Installation on macOS 10.12
- Open Terminal, and
cdinto the NTRTsim directory. - Type
./setup.sh, and press "return". - At this point, the screen shows that you should run
./setup.shagain. Then type./setup.shand press "return". Or simply press the uparrow key to repeat the last command and press "return". This setup script is trying to download and install Boost and Bullet, etc. - After the setup has finished, in the terminal, type
vi ~/.bash_profileand press "return". This will open the .bash_profile file with vim. Now pressi, but without pressing "return". Use arrow keys to navigate the cursor to the end of the file content and hit "return" once or twice. At the start of the new line, typeexport DYLD_LIBRARY_PATH=H=/XXX:$DYLD_LIBRARY_PATH, and replace the/XXXpart with the absolute path to the folderNTRTsim/env/lib. Press "esc", which will get you out of the editing mode. Then press:wqand hit "return", to save the file and quit vim. Exit Terminal, and restart Terminal. cdintoNTRTsim/bin/directory. Type./build.shand press "return".
If you are re-installing some dependent packages, then jump Step 4 as you have already added the line before.
3/19/15 - Warning: OS X Setup/Build Failures
Currently the simulator is not compiling under OS X. We hope to have this resolved soon. In the meantime if you wish to use the simulator your best bet is to install a Linux VM and install NTRT there. In the near future we hope to include a .vmdk which contains Ubuntu pre-installed with NTRT and supporting tools/libraries -- the INSTALL file will be updated onec that is complete (currently aiming for ~3/22/15).
On that note, we're currently seeking a Mac dev who can help us ensure the simulator remains working on OS X. See this issue for more details:
NASA-Tensegrity-Robotics-Toolkit#143
UPDATE: While we are working on a fix to the above, we have create a virtual machine image that could be installed on an OSX machine. See:
http://ntrtsim.readthedocs.org/en/latest/setup.html#installing-ntrt-in-a-virtual-machine
About NTRT
The NASA Tensegrity Robotics Toolkit (NTRT) is a collection of C++ and
MATLAB software modules for the modeling, simulation, and control of
Tensegrity Robots. The NTRT Simulator is a tensegrity-specific simulator
built to run ontop of the Bullet Physics Engine, version 2.82.
See INSTALL for instructions on how to install the library and build
from source. A getting started guide is available in src/README.dox,
which contains the main page of the DOxygen documentation.
The most accessible examples of tensegrity structures are in the
examples directory, we recommend starting with src/examples/3_prism
Additional README.dox files can be found in each folder with
additional information about that application or library. Additional
examples can be found in example folders NestedTetrahedrons, SUPERball,
learningSpines or development folders: dev/tests and dev/btietz.
More information can be found at:
http://ti.arc.nasa.gov/tech/asr/intelligent-robotics/tensegrity/ntrt/
Documentation
Doxygen documentation can be compiled in the source directory
(run "doxygen Doxyfile" when in src). Under Ubuntu 14.04, installing
doxygen and graphviz (required) can be done by running "sudo apt-get
install doxygen graphviz". HTML-based documentation can then be found
under src/DoxyDocs/index.html.
Pre-built documentation for the repository can be found here:
Tutorials
Tutorials for NTRT (in progress) can be found at:
http://ntrtsim.readthedocs.org/en/latest/index.html
The source for that site is located under doc.
Additionally, some of our developers have recorded an introductory seminar
for NTRT, available at https://www.youtube.com/watch?v=jyP5h_t73xw.
To follow that video, please first compile and install NTRT (see 'INSTALL'
in this directory).
Build Status
NTRTsim's automated build system (BuildBot) can be found at:
http://ntrt.perryb.ca/bb/waterfall
About Tensegrity Robots and The Goals of NTRT
Tensegrity Robots are a biologically inspired approach to building
robots based on the tension networks of tensegrity structures,
which have no rigid connections between elements. The NTRT was created
to enable: the rapid co-exploration of structures and controls in
a physics based simulation environment; the development of tensegrity
robotics algorithms such as structural analysis, kinematics, and motion
planning; and the validation of the algorithms and controls on hardware
prototypes of the tensegrity robots.
The NTRT Simulator is a tensegrity-specific simulator built to run ontop
of the Bullet Physics Engine, version 2.82. The NTRTsim includes a set
of builder tools for specifying rods and strings as a set of points in
Cartesian coordinates. Structures built out of these rods and strings
can be specified as a tree of substructures, and can be rotated and
moved, which greatly simplifies the task of creating new tensegrity
structures. The NTRTsim also includes libraries for controllers such as
Central Pattern Generators and a machine learning framework, which
allows users to specify their own learning algorithms. For strings,
instead of the default Bullet softbodies, which are not physically
accurate, we used a two point linear string model using Hooke's law
forces with a linear damping term. We also have a contact dynamics module
for the cables, allowing them to interact with the structure and the environment.
Finally, terrains can be created, and the performance of the controller
can be tested as the tensegrity robot moves through the simulated world.
Publications and Simulator Validation
We have published a
number of research papers
using NTRT. Many of the models are available in the simulator.
If you have questions on which models correspond to which paper,
feel free to contact the authors at ntrtusers [at] lists [dot] nasa [dot] gov
We do our best to ensure the models in the simulator are physically
realistic. A summary of the tests we do are available in
this video, and
this paper.
Mailing List
All bugs, feature requests, and general discussion regarding NTRT should
be sent to the NTRT user mailing list:
ntrtusers [at] lists [dot] nasa [dot] gov
To subscribe to this list, send an empty email message with the subject
'subscribe' (without the quotes) to
ntrtusers-request [at] lists [dot] nasa [dot] gov
or visit the List Subscription Page
To contact the lead developers and project manager directly, send mail to:
ntrtusers-owner [at] lists [dot] nasa [dot] gov