Skip to content

muellerlab/TensegrityAerialVehicleReorientation

Repository files navigation

Tensegrity Aerial Vehicle Re-orientation Analysis

This repository contains source code implementing the re-orientation feasibility analysis and route planning of a tensegrity aerial vehicle.

The detail of the tool is described in the paper "Design and control of a collision-resilient aerial vehicle with an icosahedron tensegrity structure" submitted to IEEE/ASME Transactions on Mechatronics (TMECH). A manuscript draft can be accessed here).

This work is evolved from our previous IROS 2020 paper.

Contact: Clark Zha ([email protected]) High Performance Robotics Lab, Dept. of Mechanical Engineering, UC Berkeley

This work is evolved from our previous IROS 2020 paper.

Contact: Clark Zha ([email protected]) High Performance Robotics Lab, Dept. of Mechanical Engineering, UC Berkeley

Dependencies

The code uses following common python packages:

numpy, scipy, matplotlib, cvxpy, pydot

In addition, the code uses py3dmath for 3D vector computation. For the ease of usage, we include a copy of the package in this repository so no additional installation is required.

We also provide a conda environment file to help with the environment setup process. Simply run

conda env create -f tensegrity_reorientation.yml

with the provided yml file in your terminal to setup a proper python environment to run the code.

Quick Start Guide

To check the feasibility and plan the re-orientation of an example tensegrity aerial vehicle, run:

python reorientation_analysis.py

To visualize the thrusts and reaction forces during a tensegrity aerial vehicle rotation, run:

python plot_rotation.py

To recreate the torque converter analysis in the paper, run:

python torque_converter_test.py

To recreate the additional payload analysis in the paper, run:

python reorientation_payload_capacity.py

the code will generate a graph, whose connections are labelled with maximum payload mass that can be added to the vehicle center of mass before the rotation fails. The left value stands for the mass with the zero-thrust-sum condition, whereas the right value stands for the mass without the zero-thrust-sum condition.

Using this software as tensegrity design and analysis tool:

To create and test your own tensegrity vehicle, you can modify parameters such as mass, size, moment of inertia, etc. The tensegrity folder contains the class object that keeps track of the tensegrity class. The reorient folder contains code that helps check the feasibility of rotation and plan the re-orientation route.

Acknowledgement

Co-authors of the paper: Xiangyu Wu, Ryan Dimick, Mark. W. Mueller

Collaborators who have contributted to the tensegrity aerial vehicle developement: Joey Kroeger, Natalia Perez, Bryan Yang

Scholars who have provided their insights on the tensegrity aerial vehicle: Alice Agogino, Alan Zhang, Douglas Hutchings, Kévin Garanger

About

Tools to analyze and plan re-orientation route of a tensegrity aerial vehicle.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages