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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for twisted_strings-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 915c54941b7e0b6e2a703f834c37d4e86f0337c4923adaa40dfa438c451b1bd5 |
|
MD5 | 19137507c0e2ea4b0706e8c9d11a7acf |
|
BLAKE2b-256 | 8c2cf3cd45530db7ac042a012052c80cb4b0674c06facf41092a81b9b155263c |