Veysi ADIN
Selected work

Case study / Medical robotics

Spine Surgery Robot Control Framework

A real-time control framework integrating EtherCAT motion, ROS 2, safety I/O, and a Qt operator interface for a surgical robot platform.

Domain
Medical robotics
Contribution
Control framework
Core stack
C++ / ROS 2 / EtherCAT
Continue to the system architecture
01 / Architecture

From mechanism to middleware.

The physical motion platform and the software layers that connect deterministic control, feedback, visualization, and safety.

Annotated spine surgery robot control system in the laboratory
Physical and software integration architecture for the robot

Project overview

Developed with an industrial partner, the project combined control software and custom hardware for a spine surgery robot guided by stereo X-ray and a 3D endoscope.

The EtherCAT network connected three motor-driver slaves and an Arduino-based EasyCAT I/O slave in a daisy chain. The custom slave handled two limit switches and an emergency-stop button, with capacity for seven additional digital and six analog I/O channels. The IgH master ran through a standard PC network interface.

The software stack used ROS 2 Dashing on PREEMPT_RT Xubuntu 18.04 with kernel 4.19.182-rt74. I developed the C++/Qt control framework and designed supporting electronics and mechanical parts with Altium Designer, EasyEDA, and SolidWorks. Three ROS 2 nodes were implemented, with a fourth safety-monitor node planned to check the system state on every cycle.

  1. EtherCAT node: Handles communication between the master and slaves, publishes feedback at 1 kHz, and sends control commands to the drives.
  2. Control node: Performs kinematic calculations and converts slave feedback into motor commands.
  3. GUI node: Displays the camera feed, motor and communication states, and emergency-stop status while forwarding operator events.

Tools and platforms

C++
Python
ROS 2 Dashing
IgH EtherCAT Library
Qt
Git
PREEMPT_RT Linux
Xubuntu 18.04
Altium Designer
EasyEDA
SolidWorks
Doxygen
CiA 402