DOI: 10.4121/a9ee4280-4ef1-4c2b-bcef-526cd50292a9.v2
title: Code and data underlying the PhD thesis: Safe yet Precise Soft Robots via Incorporating Physics into Learned Models for Control

description: Code and data associated with the Ph.D. thesis titled "Safe yet Precise Soft Robots: Incorporating Physics into Learned Models for Control" by Maximilian Stölzle at the Department of Cognitive Robotics, Faculty of Mechanical Engineering, Delft University of Technology. For each (published) chapter, we release the code and the data underlying the figures and plots in the chapter as ZIP archives.<strong>chapter_4: </strong>MATLAB code for running ORB-SLAM and subsequently projecting the pose estimates into the soft robot kinematic model. Additionally, it contains the configuration files for a Blender environment that was used for validation in simulation.<strong>chapter_5:</strong> We include the HSA PyElastica package for simulating HSA robots (<em>hsa-actuation-matlab</em>) and the SPCS kinematic model (<em>jax-spcs-kinematics</em>) implemented in JAX for capturing the deformation of HSA rods. The <em>hsa-kinematic-model</em> allows for regressing the configuration of the HSA rod by running differential inverse kinematics. It also contains MATLAB code for actuating the HSA robot and collecting datasets. The <em>jax-soft-robot-modeling</em> package contains a reduced-order, control-oriented kinematic, and dynamic model for planar HSA robots, which subsequently allows simulation.<strong>chapter_6:</strong> It contains the data and the code for identifying the system parameters of planar HSA robots based on the dynamic model presented in Chapter 5. Furthermore, it contains ROS2 packages for running closed-loop control experiments with the HSA robot in the planar setting. For this purpose, we implement model-based controllers in the <em>hsa-planar-control</em> package, which also contains the experimental data and scripts for analyzing and plotting the results.<strong>chapter_7:</strong> It contains the code and data for the guiding of planar HSA robots using brain signals. For this purpose, we include again the JAX soft robot modeling package, the ROS2 packages for operating HSA robots, and the model-based planar HSA controllers. Additionally, we embed the <em>sr-brain-control</em> package that contains the experimental data and the scripts for plotting them. Additionally, it contains the OpenVibe specifications of the EEG preprocessing and classification pipeline.<strong>chapter_8: </strong>This archive includes the data and MATLAB code for the backstepping controller and the associated closed-loop simulations.<strong>chapter_9:</strong> We include the Python <em>promasens</em> package that includes the code for soft robot shape sensing based on magnetic sensors and the associated data to train the neural networks and plot the simulation and experimental results. Furthermore, we included a ROS2 package for feedforward actuation sequences for pneumatic soft robots that we used to collect the datasets.<strong>chapter_10:</strong> We include the Python code to perform kinematic fusion, dynamic identification, and the scripts and data for generating the plots included in the chapter.<strong>chapter_11:</strong> We include the code for training latent dynamics using Coupled Oscillator Networks and subsequently leveraging the learned dynamics for model-based control in latent space. Furthermore, we include the datasets and trained models that underly the results reported in the chapter.<strong>appendix_c: </strong>We re-include the most important software packages developed as part of this Ph.D that are motivated, introduced, and explained in Appendix C of this thesis. First, it contains the JAX Soft Robot Modeling package and the model-based controllers for planar HSA robots. This includes the ROS2 packages for communicating with the Festo VTEM pressure regulator (<em>ros2-vtem_control</em>), the Optitrack motion capture system (ros2-mocap_optitrack), and operating the HSA robot. Furthermore, we include a ROS2 package that generates pressure trajectories for the actuation of pneumatic soft robots moving in 3D space (<em>ros2-pneumatic_actuation</em>). Finally, we include a package that builds Docker containers for operating (HSA) soft robots that enable rapid bootstrapping of a ROS2 environment on a new workstation (<em>sr-ros2-bundles</em>). The docker images are automatically built nightly via GitHub Actions CI.<br>