Table of Contents
Fetching ...

SoRoTop: a hitchhiker's guide to topology optimization MATLAB code for design-dependent pneumatic-driven soft robots

Prabhat Kumar

TL;DR

SoRoTop provides a MATLAB implementation for topology optimization of design‑dependent, pressure‑driven soft robots. It couples a Darcy‑law based pressure load model with a robust blueprint/eroded design formulation and an adjoint sensitivity framework, solved via the MMA optimizer. The code is demonstrated on four soft robotic devices, showing that incorporating load sensitivities can significantly alter optimized topologies and performance. By offering open‑source access and detailed MATLAB implementation, the work enables education, reproducibility, and extension in pneumatic soft robotics.

Abstract

Demands for pneumatic-driven soft robots are constantly rising for various applications. However, they are often designed manually due to the lack of systematic methods. Moreover, design-dependent characteristics of pneumatic actuation pose distinctive challenges. This paper provides a compact MATLAB code, named SoRoTop, and its various extensions for designing pneumatic-driven soft robots using topology optimization. The code uses the method of moving asymptotes as the optimizer and builds upon the approach initially presented in Kumar et al.(Struct Multidiscip Optim 61 (4): 1637-1655, 2020). The pneumatic load is modeled using Darcy's law with a conceptualized drainage term. Consistent nodal loads are determined from the resultant pressure field using the conventional finite element approach. The robust formulation is employed, i.e., the eroded and blueprint design descriptions are used. A min-max optimization problem is formulated using the output displacements of the eroded and blueprint designs. A volume constraint is imposed on the blueprint design, while the eroded design is used to apply a conceptualized strain energy constraint. The latter constraint aids in attaining optimized designs that can endure the applied load without compromising their performance. Sensitivities required for optimization are computed using the adjoint-variable method. The code is explained in detail, and various extensions are also presented. It is structured into pre-optimization, MMA optimization, and post-optimization operations, each of which is comprehensively detailed. The paper also illustrates the impact of load sensitivities on the optimized designs. SoRoTop is provided in Appendix A and is available with extensions in the supplementary material and publicly at \url{https://github.com/PrabhatIn/SoRoTop}.

SoRoTop: a hitchhiker's guide to topology optimization MATLAB code for design-dependent pneumatic-driven soft robots

TL;DR

SoRoTop provides a MATLAB implementation for topology optimization of design‑dependent, pressure‑driven soft robots. It couples a Darcy‑law based pressure load model with a robust blueprint/eroded design formulation and an adjoint sensitivity framework, solved via the MMA optimizer. The code is demonstrated on four soft robotic devices, showing that incorporating load sensitivities can significantly alter optimized topologies and performance. By offering open‑source access and detailed MATLAB implementation, the work enables education, reproducibility, and extension in pneumatic soft robotics.

Abstract

Demands for pneumatic-driven soft robots are constantly rising for various applications. However, they are often designed manually due to the lack of systematic methods. Moreover, design-dependent characteristics of pneumatic actuation pose distinctive challenges. This paper provides a compact MATLAB code, named SoRoTop, and its various extensions for designing pneumatic-driven soft robots using topology optimization. The code uses the method of moving asymptotes as the optimizer and builds upon the approach initially presented in Kumar et al.(Struct Multidiscip Optim 61 (4): 1637-1655, 2020). The pneumatic load is modeled using Darcy's law with a conceptualized drainage term. Consistent nodal loads are determined from the resultant pressure field using the conventional finite element approach. The robust formulation is employed, i.e., the eroded and blueprint design descriptions are used. A min-max optimization problem is formulated using the output displacements of the eroded and blueprint designs. A volume constraint is imposed on the blueprint design, while the eroded design is used to apply a conceptualized strain energy constraint. The latter constraint aids in attaining optimized designs that can endure the applied load without compromising their performance. Sensitivities required for optimization are computed using the adjoint-variable method. The code is explained in detail, and various extensions are also presented. It is structured into pre-optimization, MMA optimization, and post-optimization operations, each of which is comprehensively detailed. The paper also illustrates the impact of load sensitivities on the optimized designs. SoRoTop is provided in Appendix A and is available with extensions in the supplementary material and publicly at \url{https://github.com/PrabhatIn/SoRoTop}.
Paper Structure (31 sections, 24 equations, 17 figures, 1 algorithm)

This paper contains 31 sections, 24 equations, 17 figures, 1 algorithm.

Figures (17)

  • Figure 1: A schematic diagram for a pressure-driven soft robot. (\ref{['fig:Schematic1']}) Design domain. A set of arrows indicates the fluidic pressure load. Fixed boundary conditions are also depicted. (\ref{['fig:Schematic2']}) A representative solution. One notices that pressure
  • Figure 2: A schematic for filtered, eroded and blueprint designs. $w_e< w_b$, where $w_e$ and $w_b$ represent the widths of the eroded ($\eta = 0.65$) and blueprint designs ($\eta = 0.5$), respectively.
  • Figure 3: Figure displays the mesh grid format (element and node numbering scheme) and nomenclature of element $i$. (\ref{['fig:CoNN']}) $\texttt{nlex} = 4$, $\texttt{nley} = 4$,$\texttt{Lnode} = {1,\,2,\,3,\,4,\,5}$, $\texttt{Tnode} = {1,\,6,\,11,\,16},\,21$, $\texttt{Rnode} = {21,\,22,\,23,\,24,\,25}$, $\texttt{Bnode} = {5,\,10,\,15,\,20,\,25}$; nelx and nely represent the number of elements in $x-$ and $y-$directions, respectively. Lnode, Rnode, Tnode, and Bnode denote nodes constituting left, right, top, and bottom edges, respectively. (\ref{['fig:DOFs']}) Local format DOFs scheme and nomenclature of element $i$. Each node is characterized by two displacements and one pressure degree of freedom.
  • Figure 4: Flowchart for SoRoTop code
  • Figure 5: Colorbar schemes for the pressure and material fields are shown in (\ref{['fig:pressurecolorbar']}) and (\ref{['fig:materialcolorbar']}), respectively. $P_\text{max} = 1$ bar and $p_\text{min} =0$ bar.
  • ...and 12 more figures