Building Software Systems for Image-Guided Robot-Assisted Interventions

Workshop at 2021 ISMR

Back to Tutorial Home

Slicer Scene

If you didn’t complte the planning process on 3D Slicer, download the planning scene from the following link

Launch a fake UR10 on RViz

To bring up a fake UR10, try the following commands from a terminal

cd  workspace/ros_ur_driver
source install/setup.bash
ros2 launch ros2_igtl_bridge

Load a spine model on Rviz

On the RViz window:

Run a ros2_igtl_bridge

Open a new terminal and run the following commands:

$ cd workspace/ros_ur_driver
$ source install/setup.bash
$ ros2 run ros2_igtl_bridge igtl_node

When the node prompt to enter the type, choose ‘SERVER’ (option 1):

Please type <1> or <2> to run node as OpenIGTLink client or server

Then, the node asks for a socket port. Enter 18944:

Input socket port:

Connect 3D Slicer to ROS

Once the ROS nodes become ready, open 3D Slicer (if has not been opened yet), and open the OpenIGTLinkIF module (Modules menu-> “IGT” -> “OpenIGTLinkIF”). Then create a new node by clicking the “+” button under the “Connectors” list, and configure it from the “Properties” section as follows:

After configuring the connector, click the “Active” checkbox. If the 3D Slicer is successfully connected to ros2_igtl_bridge, the status field on the connector list of the OpenIGTLinkIF will show “ON.”

Send Entry and Target Points

Define entry and target points on 3D Slicer:

Then send them to ROS using OpenIGTLink.

At this point, the robot model on RViz should start moving to the entry point and then to the target point (in the spine model).