Skip to content

The NASA Tensegrity Robotics Toolkit Simulator, a physics based simulator to research the design and control of tensegrity robots.

License

Notifications You must be signed in to change notification settings

jerryderry/NTRTsim

 
 

Repository files navigation

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

  1. Open Terminal, and cd into the NTRTsim directory.
  2. Type ./setup.sh, and press "return".
  3. At this point, the screen shows that you should run ./setup.sh again. Then type ./setup.sh and 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.
  4. After the setup has finished, in the terminal, type vi ~/.bash_profile and press "return". This will open the .bash_profile file with vim. Now press i, 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, type export DYLD_LIBRARY_PATH=H=/XXX:$DYLD_LIBRARY_PATH, and replace the /XXX part with the absolute path to the folder NTRTsim/env/lib. Press "esc", which will get you out of the editing mode. Then press :wq and hit "return", to save the file and quit vim. Exit Terminal, and restart Terminal.
  5. cd into NTRTsim/bin/ directory. Type ./build.sh and 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:

http://ntrt.perryb.ca/doxygen

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

About

The NASA Tensegrity Robotics Toolkit Simulator, a physics based simulator to research the design and control of tensegrity robots.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 84.7%
  • TeX 9.1%
  • Shell 2.6%
  • Python 1.9%
  • CMake 1.3%
  • MATLAB 0.2%
  • Other 0.2%