MRI robot/JHU 2007 07 17 Meeting

From CISSTwiki

Jump to: navigation, search

Contents

Participants

  • Noby
  • Junichi
  • Philip
  • David
  • Greg
  • Csaba

Workphases

Startup

Waiting for components to boot up

  • Attribute: workphase
  • Value: START_UP
  • Sent: by Slicer, every 2-3 sec until gets reply
  • Response: status message - robot is ready

Planning

Load pre-op images, load the targets - maybe register to new images

  • Attribute: workphase
  • Value: PLANNING
  • Sent: by Slicer, every 2-3 sec until gets reply
  • Response: status message - robot is ready -- same as Startup

Calibration

Locate Z-Frame and send coord to robot

  • Attribute: workphase
  • Value: CALIBRATION
  • Sent: by Slicer, every 2-3 sec until gets reply
  • Response: status message - robot ready for Z-Frame

When Slicer found the ZFrame coordinates:

  • Attribute: command
  • Value: ZFRAME
  • Attribute: position, orientation
  • Value: Z-frame position and orientation
  • Response: status message - whatever

Targeting

Confirm and send target to robot -- move robot

  • Attribute: workphase
  • Value: TARGETING
  • Sent: by Slicer, every 2-3 sec until gets reply
  • Response: status message - robot ready for Targeting

When target confirmed:

  • Attribute: command
  • Value: TARGET
  • Attribute: position, orientation
  • Value: Target position and orientation
  • Response: current position, 10/sec, until "Done Moving" -- later this will be sent only as response to Query:GetActualCoordinates

Manual control

Lock brakes and allow manual needle insertion

  • Attribute: workphase
  • Value: MANUAL
  • Sent: by Slicer, every 2-3 sec until gets reply
  • Response: current position, 10/sec, while is in this phase -- later this will be sent only as response to Query:GetActualCoordinates

Emergency

Stop everything

  • Attribute: workphase
  • Value: EMERGENCY
  • Sent: by Slicer, continuously until gets reply
  • Response: status message - robot shut down

Status message

  • Attribute: status
  • Value:
    • Idle - Ready to receive START_UP command
    • Initializing - START_UP received, not ready for next command yet
    • Uncalibrated - Waiting for a calibration position/orientation (from ZFRAME)
    • Ready - ZFRAME received, ready to receive target coordinates
    • Moving - Moving towards the target
    • Manual - Manual repositioning, tracking the robot
    • Error - The robot has encountered an error that must be remedied
    • EStop - The emergency stop is activated
  • Attribute: message
  • Value: the detailed description in English, max 255 chars

Possible errors

  • Target is out of range
  • ZFrame is out of range
  • Lost air pressure - nr
  • Encoder failure - nr
  • Valve failure - nr
  • Positioning timed out - nr
  • Cable is not connected - nr

Actual coordinates message

  • Attribute: command
  • Value: POSITION


  • Attribute: position (p: x,y,z)
  • Value: robot tip position


  • Attribute: orientation (r - quaternion)
  • Value: needle orientation


  • Attribute: depth
  • Value: needle depth vector n: [offset_x, offset_y, d] (needle depth 'd' along z-axis of 'r')


Needle tip = p + RotationMatrix(r) * n'

Resources

Views
Personal tools