2016 Summer Project Week/Integrating/Using OpenIGTLink for the communications of Robotics devices

From NAMIC Wiki
Jump to: navigation, search
Home < 2016 Summer Project Week < Integrating < Using OpenIGTLink for the communications of Robotics devices

Key Investigators

  • Scheherazade Kraß
  • Longquan Chen

Project Description

Objective

  • Obtaining a better understanding of OpenIGTLink:
  1. How to use and integrate it in different robotic devices using:
    1. MeVisLab applications
    2. Slicer

Approach, Plan

PLUS Platform
  • Plus is an open-source software toolkit for data acquisition, pre-processing, and calibration for navigated image-guided interventions. OpenIGTLink is integrated inside for communication.
  1. Website: https://app.assembla.com/spaces/plus/wiki
  2. OpenIGTLInk is only a communication protocal, the control of the medical devices is achieved by PLUS
  3. Kuka LBR is supported
Robotic Devices
  • Defining different workflows for communication between robotic device and MeVislab applications, including sending/receiving strings, image sets and control commands for:
  1. The Kuka LBR robot used in a MeVislab based research project.
  2. The MRI compatible Manipulator, a 5 DoF robot for performing transrectal prostate biopsies.
  • Defined Scenarios:
    • Workflow01:
      • Ask for the status of the robotic device
      • Get the current position of the device tip
      • Send commands to the robot (simulator) to get to the new target position
      • Set /ask/ retrieve time stamps


MLab Interface
  • Design and implement a generic interface for using OpenIGT commands in MeVislab network layer.
  1. OpenIGTLinkIO is a slicer independent library to use OpenIGTLink, could be used as good example (https://github.com/IGSIO/OpenIGTLinkIO)
    • Create Client /Server
      • Host name(IP), port, show status, connection time out, start/stop, connect/disconnect
    • Create Thread for realtime (?)
    • Define Datatypes: Vector position, Status, etc..
    • Communication: Send and recieve and save:
      • Massages and nr. of massages
      • Data-sets
      • Images
    • Sending control commands
    • loggs: showing, saving

Progress

  • We designed and discussed about our module in MeVisLab, which is presented in an abstract paper. This was submitted in CURAC (The German society for computer and robotic assisted surgery) during the project week
  • We compiled the latest available OpenIGTLink Library and worked on different examples and communication methods.
  • Integrate and develop the module to achieve the defined goal.