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}
}
Metadata
Release files for twisted-strings 0.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| twisted_strings-0.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Release files / twisted_strings-0.0.2-py3-none-any.whl
| Download URL | twisted_strings-0.0.2-py3-none-any.whl |
|---|---|
| Size | 13.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
915c54941b7e0b6e2a703f834c37d4e86f0337c4923adaa40dfa438c451b1bd5
|
|
BLAKE2b-256 checksum How to use checksums |
8c2cf3cd45530db7ac042a012052c80cb4b0674c06facf41092a81b9b155263c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/5.1.1 CPython/3.12.6
|
Security for twisted-strings 0.0.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.