Muscular hydrostat are organs capable of exerting force with the sole use of muscles, without requiring a rigid skeleton. Examples for such organs are tongues, tentacles and trunks.
Abstract
Muscular hydrostat are organs capable of exerting force with the sole use of muscles, without requiring a rigid skeleton. Examples for such organs are tongues, tentacles and trunks. In this project we have been asked to implement a model which will describe the movement of the octopus arm in C language.
The modeling of the arm is done by dividing the arm to N compartments, while every compartment should keep its volume during the simulation.
Having no rigid skeleton, the octopus arm practically has infinitely many degrees of freedom, and thus poses a considerable challenge for a control mechanism, which can be used in the robotics field.
The problem
Though the model was already implemented in matlab and gave good results, the simulation took too much time in terms of exploring the movement of the arm and its activation.
The Solution
When implementing the model in C, some changes were made in the way the values are calculated. While in the original matlab simulation almost all calculations were done on matrices, in the C implementation calculations were done on sole values of matrices, due to the simple yet big matrices used during the simulation. This way also a lot of memory was saved. The simulation is done by calculating all kinds of forces acting on the arms, and solving the movement equation, to generate the new position of the arm.
Output of the Program
The C simulation is capable of outputting a matlab file which holds all the simulation results in vectors and calls a matlab script which can output it to the screen, as seen in the example below.

Tools
In this project we used C (using Microsoft visual studio) to implement the model, and matlab to watch the simulation results.
Conclusions
The C implementation gave better results in terms of running time (25 times better then the original implementation).
Also running simulations with various parameters is easier now, when all the simulation parameters are in one file.
In addition, in the new implementation there are more ways to control the arm movement, and there is a possibility of adding new control functions in the future.
Acknowledgement
We’d like to thank our supervisor Yaki Engel for his guideness.
We would also like to thank the lab staff and the Ollendorff Minerva Center Fund which supports the lab.


