The project is proposed to develop a compact continuum robotic platform suitable for precisely manipulating ultrasonic transducers for laboratory experimental FUS studies.
Objectives
The objective of the project aims to design a modular fishbone continuum manipulator constructed from commonly used materials, capable of carrying the FUS transducer. The workspace of manipulator is specified as 300x300x300 mm, featuring a high level of precision with a permissible error margin of 0.02 mm. The manipulator is expected to be user-friendly, requiring a learning cost of less than two hours. Testing and validation will be conducted through simulations based on Ansys, MATLAB, and Arduino. The project commenced on 10th November 2023, and is scheduled to conclude on 15th March 2024.
Features
- Manipulator Workspace: 300x300x300 mm
- Precision: error = 0.05 mm
- Manipulator Design: CAD model and strength analysis
- Kinematics Derivation: forward and inverse kinematics,
- Control System: Arduino
- Project Completion: 15th March 2024.
- Open Source
circle.mp4
actuation-control.mp4
Requirements for Kinematics Simulation
- Python: 3.10+
- Package manager or container runtime:
conda
,pip
ordocker
recommended.
- Create conda environment and activation:
conda create -n manipulator python=3.10
conda activate manipulator
- Install pytorch according to Pytorch Official Turorial:
conda install pytorch torchvision torchaudio pytorch-cuda=<your_version> -c pytorch -c nvidia
- Other Installation
conda install jupyter notebook conda install ipykernel
pip install -r requirements.txt
- Create virtual environment (optional)
python -m venv venv venv\Scripts\activate
- Install pytorch according to Pytorch Official Turorial
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu<your-version>
- Other Installation
pip install jupyter notebook pip install ipykernel pip install pandas pip install h5py pip install matplotlib
There are two versions of the kinematics about compact continuum manipulator platform. The python version (2.0) have robust performances in Machine Learning (ML) compared with the MATLAB version (1.0). The simulation about inverse kinematics will mainly contribute to the python programme to make further explanation. However, the MATLAB version (1.0) have better visualization, which can be utilized for parameter design and manipulator model displayment. The tutorials about the kinematics programmes are shown as follow:
The CAD model of the manipulator is designed in Model. It can be exported into the ROS for further simulation. The docker env has been configurated in .devcontainer and can be executed through VS Code.
Parameter Definations of Manipulator
Parameter | Definition | Value (mm) |
---|---|---|
the length of elastic sheet in Module i | ||
the thickness of the cross-shaped connector | ||
the number of cross-shaped sheet in a module | ||
the distance between the centroid of connector and cable routing hole |
|
|
the change volume of cable, cable${2i-1}$ and cable ${2i}$ corresponds to Module i | ||
a series of change volume of cables | ||
the bending angle of module i | ||
a series of bending angles about four modules | ||
a series of inverse kinematics solutions | ||
threshold of the error in FABRIKc algorithm |
π¦ Compact Continuum Manipulator Platform
βββ π .devcontainer
βββ π Arduino-Simulation
βΒ Β βββ π motor_control_final
βΒ Β βΒ Β βββ motor_control_final.ino
βΒ Β βββ multiple_motor_control.ino
βΒ Β βββ multiple_motor_control.pdsprj
βΒ Β βββ π README.md
βββ π Deliverable
βΒ Β βββ π Documentation
βΒ Β βββ π Final-Report
βΒ Β Β Β βββ π Appendix
βΒ Β Β Β βββ π config
βΒ Β Β Β βββ π Image
βΒ Β Β Β βββ π Section
βΒ Β Β Β βββ Main-Thesis-File.pdf
βΒ Β Β Β βββ Main-Thesis-File.tex
βΒ Β Β Β βββ references.bib
βββ π Kinematics
βΒ Β βββ π circle
βΒ Β βββ π IK_NN
βΒ Β βββ conversion.py
βΒ Β βββ FABRIKc.py
βΒ Β βββ forward-kinematics.ipynb
βΒ Β βββ inverse_kinematics.py
βΒ Β βββ trajectory_replication.py
βΒ Β βββ work-space-simulation.py
βΒ Β βββ π README.md
βββ π MATLAB
βΒ Β βββ π result
βΒ Β βββ draw_tdcr.m
βΒ Β βββ error_calculation.m
βΒ Β βββ FKD_geometry.m
βΒ Β βββ FKD_visual.m
βΒ Β βββ FK_matrix.m
βΒ Β βββ TR_display.m
βΒ Β βββ workspace_simulation.m
βΒ Β βββ π README.md
βββ π Model
βΒ Β βββ Manipulator.SLDASM
βββ π LICENSE
βββ π requirements.txt
βββ π README.md