(Online) Virtual needle steering

 

Package for simulation and (online) navigation of a software needle through space with obstacles

Virtual needle device:
Implements a software needle (using the C code motion model and functions of the Uppaal needle model), which allows forward / backward motion and rotation either via direct function calls or via messages received via TCP following the communication protocol defined by MTEC
Virtual needle device at GITLab

Online strategy synthesizer:
Includes the main routine of strategy synthesis (using the "uppaal_stratego_interface"), data checking (e.g., are force or deviation exceeded?), and countermeasure application (e.g., stop the needle, pull back, recalculate strategy). The synthesizer communicates with a needle via TCP (either the actual MTEC needle, or the software needle as defined in "virtual_needle_device"), from which it receives position and force data (and information when actions are finished), and to which it sends motion instructions (e.g., push, pull, rotate, stop, ...) as needed. Furthermore, it provides the post-processing steps of the raw strategy data generated by verifyta.
Online strategy synthesizer at GITLab

GUI:
GUI at GITLab
 

Controlled needle steering: actual physical parameters of the needle and obstacles in space
Actual control parameters and control messages