Skip to main content

twisted string actuators

Project description

Twisted String Actuator Modeling and Simulation

Overview

This repository contains a Python module for modeling, simulating, and analyzing Twisted String Actuators (TSAs). TSAs are a type of linear actuator that converts rotational motion into linear motion through the twisting of strings or cables.

Features

  • Symbolic and numerical computation support
  • Extensible data structures for representing TSA states and parameters
  • Kinematic and dynamic modeling of TSAs, Functions for calculating contraction, jacobians, dynamical components and other key properties

Installation

To install the TSA module, clone this repository and install the module in editable mode:

pip install twisted-strings

Usage

Here's a basic example of how to use the TSA module:

from tsa import Model, Data
from tsa.kinematics import contraction, jacobian

# Create a model and set parameters
model = Model()
model.kinematic.length = 0.2
model.kinematic.radius = 1e-3

# Create a data object and set state
data = Data()
data.motor.position = 100

# Calculate contraction and jacobian
x = contraction(model, data)
jac = jacobian(model, data)

print(f"Contraction: {x}")
print(f"Jacobian: {jac}")

By populating the data and module structures with more advanced data types one may build more profound models and calculations, i.e build symbolical and differentiable models with CasADi and JAX, as well as simple symbolical calculations with sympy.

For more detailed examples, please refer to the examples directory.

Citation

If you use this software in your research, please cite it as follows:

@software{tsa_modeling,
  author = {Nedelchev, Simeon and Kozlov, Lev},
  title = {Twisted String Actuator (TSA) Modeling and Simulation},
  year = {2024},
  url = {https://github.com/simeon-ned/tsa}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

twisted_strings-0.0.2-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

Details for the file twisted_strings-0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for twisted_strings-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 915c54941b7e0b6e2a703f834c37d4e86f0337c4923adaa40dfa438c451b1bd5
MD5 19137507c0e2ea4b0706e8c9d11a7acf
BLAKE2b-256 8c2cf3cd45530db7ac042a012052c80cb4b0674c06facf41092a81b9b155263c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page