<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.slicer.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tauscher</id>
	<title>Slicer Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.slicer.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tauscher"/>
	<link rel="alternate" type="text/html" href="https://www.slicer.org/wiki/Special:Contributions/Tauscher"/>
	<updated>2026-04-13T15:19:56Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.33.0</generator>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf&amp;diff=40662</id>
		<title>File:Tutorial LightWeightRobotIGT Gettingstarted.pdf</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf&amp;diff=40662"/>
		<updated>2015-01-14T12:11:19Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: uploaded a new version of &amp;quot;File:Tutorial LightWeightRobotIGT Gettingstarted.pdf&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf&amp;diff=40661</id>
		<title>File:Tutorial LightWeightRobotIGT Gettingstarted.pdf</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf&amp;diff=40661"/>
		<updated>2015-01-14T12:08:21Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: uploaded a new version of &amp;quot;File:Tutorial LightWeightRobotIGT Gettingstarted.pdf&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39330</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39330"/>
		<updated>2014-10-23T13:26:01Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{ambox&lt;br /&gt;
| type  = protection&lt;br /&gt;
| image = [[File:InProgress.png|40px|alt=Work in progress]]&lt;br /&gt;
| text  = WARNING: This module is Work in Progress, which means:&lt;br /&gt;
* the functionality provided by this module may change drastically in the future releases of 3D Slicer&lt;br /&gt;
* the scenes containing data types specific to this module may not be readable by the future versions of Slicer&lt;br /&gt;
* the functionality and user interface may change at any time&lt;br /&gt;
* some functionality may not work as intended&lt;br /&gt;
* testing and documentation is limited&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de/institut.html?&amp;amp;L=1 Insitute of Mechatronics Systems], [http://www.uni-hannover.de/en/index.php Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [https://github.com/tauscherSw/LWROpenIGTIF.git Git Hub] containing the necessary interface classes for the communication on the robot control. The software documentation can be found [https://github.com/tauscherSw/LWROpenIGTIF.git Git Hub] as well. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
{|&lt;br /&gt;
|[[Image:Panel.jpg|thumb|400px|LighTWeightRobotIGT]]&lt;br /&gt;
|}&lt;br /&gt;
{|style=&amp;quot;width: 100%&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
*''Start Cyclic Communication'': Starts the cyclic communication with the state machine on the robot control and activates the connector nodes&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualization&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualization&lt;br /&gt;
*''Path'': Path were the robot stl files are located&lt;br /&gt;
*''Load Robot STL'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control, in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial from Robot'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul Fiducial Registration &lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelPrePositioning.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''point x,y,z'': Position of the cone tip or the plane in robot base coordinate frame&lt;br /&gt;
**''n'': z-axis of the cone or norm vector of the plane&lt;br /&gt;
**''VFtype'': Here you can choose the geometry of the virtual fixture - cone or plane&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''Path Impedence Control'': Sends a transition request to the ''Path'' state to the robot control, in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelTargeting.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To Pose'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
**''point x, y, z'': Target position in robot base coordinate frame&lt;br /&gt;
**''A, B, C'': Euler ankle describing the orientation at the target point in robot b ase coordinate frame of the tool&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down State Machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf&amp;diff=39230</id>
		<title>File:Tutorial LightWeightRobotIGT Gettingstarted.pdf</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf&amp;diff=39230"/>
		<updated>2014-09-24T13:56:05Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: uploaded a new version of &amp;quot;File:Tutorial LightWeightRobotIGT Gettingstarted.pdf&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39229</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39229"/>
		<updated>2014-09-24T13:31:13Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{ambox&lt;br /&gt;
| type  = protection&lt;br /&gt;
| image = [[File:InProgress.png|40px|alt=Work in progress]]&lt;br /&gt;
| text  = WARNING: This module is Work in Progress, which means:&lt;br /&gt;
* the functionality provided by this module may change drastically in the future releases of 3D Slicer&lt;br /&gt;
* the scenes containing data types specific to this module may not be readable by the future versions of Slicer&lt;br /&gt;
* the functionality and user interface may change at any time&lt;br /&gt;
* some functionality may not work as intended&lt;br /&gt;
* testing and documentation is limited&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de/institut.html?&amp;amp;L=1 Insitute of Mechatronics Systems], [http://www.uni-hannover.de/en/index.php Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [https://github.com/tauscherSw/LWROpenIGTIF.git Git Hub] containing the necessary interface classes for the communication on the robot control. The software documentation can be found [https://github.com/tauscherSw/LWROpenIGTIF.git Git Hub] as well. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
{|&lt;br /&gt;
|[[Image:Panel.jpg|thumb|400px|LighTWeightRobotIGT]]&lt;br /&gt;
|}&lt;br /&gt;
{|style=&amp;quot;width: 100%&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
*''Start Cyclic Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualization&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualization&lt;br /&gt;
*''Path'': Path were the robot stl files are located&lt;br /&gt;
*''Load Robot STL'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control, in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial from Robot'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul Fiducial Registration &lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelPrePositioning.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''point x,y,z'': Position of the cone tip or the plane in robot base coordinate frame&lt;br /&gt;
**''n'': z-axis of the cone or norm vector of the plane&lt;br /&gt;
**''VFtype'': Here you can choose the geometry of the virtual fixture - cone or plane&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''Path Impedence Control'': Sends a transition request to the ''Path'' state to the robot control, in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelTargeting.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To Pose'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
**''point x, y, z'': Target position in robot base coordinate frame&lt;br /&gt;
**''A, B, C'': Euler ankle describing the orientation at the target point in robot b ase coordinate frame of the tool&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down State Machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:LightWeightRobotIGT.png&amp;diff=39228</id>
		<title>File:LightWeightRobotIGT.png</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:LightWeightRobotIGT.png&amp;diff=39228"/>
		<updated>2014-09-24T12:36:05Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39227</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39227"/>
		<updated>2014-09-24T12:25:59Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{ambox&lt;br /&gt;
| type  = protection&lt;br /&gt;
| image = [[File:InProgress.png|40px|alt=Work in progress]]&lt;br /&gt;
| text  = WARNING: This module is Work in Progress, which means:&lt;br /&gt;
* the functionality provided by this module may change drastically in the future releases of 3D Slicer&lt;br /&gt;
* the scenes containing data types specific to this module may not be readable by the future versions of Slicer&lt;br /&gt;
* the functionality and user interface may change at any time&lt;br /&gt;
* some functionality may not work as intended&lt;br /&gt;
* testing and documentation is limited&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de/institut.html?&amp;amp;L=1 Insitute of Mechatronics Systems], [http://www.uni-hannover.de/en/index.php Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [https://github.com/tauscherSw/LWROpenIGTIF.git Git Hub] containing the necessary interface classes for the communication on the robot control. The software documentation can be found [https://github.com/tauscherSw/LWROpenIGTIF.git Git Hub] as well. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
{|&lt;br /&gt;
|[[Image:Panel.jpg|thumb|400px|LighTWeightRobotIGT]]&lt;br /&gt;
|}&lt;br /&gt;
{|style=&amp;quot;width: 100%&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
*''Start Cyclic Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualization&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualization&lt;br /&gt;
*''Path'': Path were the robot stl files are located&lt;br /&gt;
*''Load Robot STL'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control, in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial from Robot'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul Fiducial Registration &lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelPrePositioning.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''point x,y,z'': Position of the cone tip or the plane in robot base coordinate frame&lt;br /&gt;
**''n'': z-axis of the cone or norm vector of the plane&lt;br /&gt;
**''VFtype'': Here you can choose the geometry of the virtual fixture - cone or plane&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''Path Impedence Control'': Sends a transition request to the ''Path'' state to the robot control, in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelTargeting.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To Pose'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
**''point x, y, z'': Target position in robot base coordinate frame&lt;br /&gt;
**''A, B, C'': Euler ankle describing the orientation at the target point in robot b ase coordinate frame of the tool&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down State Machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39226</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39226"/>
		<updated>2014-09-24T12:24:13Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{ambox&lt;br /&gt;
| type  = protection&lt;br /&gt;
| image = [[File:InProgress.png|40px|alt=Work in progress]]&lt;br /&gt;
| text  = WARNING: This module is Work in Progress, which means:&lt;br /&gt;
* the functionality provided by this module may change drastically in the future releases of 3D Slicer&lt;br /&gt;
* the scenes containing data types specific to this module may not be readable by the future versions of Slicer&lt;br /&gt;
* the functionality and user interface may change at any time&lt;br /&gt;
* some functionality may not work as intended&lt;br /&gt;
* testing and documentation is limited&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de/institut.html?&amp;amp;L=1 Insitute of Mechatronics Systems], [http://www.uni-hannover.de/en/index.php Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. The software documentation can be found [http://www.example.com Git Hub] as well. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*How to add new states to the exemplary state machine see [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
{|&lt;br /&gt;
|[[Image:Panel.jpg|thumb|400px|LighTWeightRobotIGT]]&lt;br /&gt;
|}&lt;br /&gt;
{|style=&amp;quot;width: 100%&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
*''Start Cyclic Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualization&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualization&lt;br /&gt;
*''Path'': Path were the robot stl files are located&lt;br /&gt;
*''Load Robot STL'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control, in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial from Robot'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul Fiducial Registration &lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelPrePositioning.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''point x,y,z'': Position of the cone tip or the plane in robot base coordinate frame&lt;br /&gt;
**''n'': z-axis of the cone or norm vector of the plane&lt;br /&gt;
**''VFtype'': Here you can choose the geometry of the virtual fixture - cone or plane&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''Path Impedence Control'': Sends a transition request to the ''Path'' state to the robot control, in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelTargeting.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To Pose'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
**''point x, y, z'': Target position in robot base coordinate frame&lt;br /&gt;
**''A, B, C'': Euler ankle describing the orientation at the target point in robot b ase coordinate frame of the tool&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down State Machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf&amp;diff=39225</id>
		<title>File:Tutorial LightWeightRobotIGT Gettingstarted.pdf</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:Tutorial_LightWeightRobotIGT_Gettingstarted.pdf&amp;diff=39225"/>
		<updated>2014-09-24T12:23:38Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:Tutorial_LightWeightRobotIGT_Introduction.pdf&amp;diff=39224</id>
		<title>File:Tutorial LightWeightRobotIGT Introduction.pdf</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:Tutorial_LightWeightRobotIGT_Introduction.pdf&amp;diff=39224"/>
		<updated>2014-09-24T12:23:02Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: uploaded a new version of &amp;quot;File:Tutorial LightWeightRobotIGT Introduction.pdf&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39223</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39223"/>
		<updated>2014-09-24T09:38:11Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{ambox&lt;br /&gt;
| type  = protection&lt;br /&gt;
| image = [[File:InProgress.png|40px|alt=Work in progress]]&lt;br /&gt;
| text  = WARNING: This module is Work in Progress, which means:&lt;br /&gt;
* the functionality provided by this module may change drastically in the future releases of 3D Slicer&lt;br /&gt;
* the scenes containing data types specific to this module may not be readable by the future versions of Slicer&lt;br /&gt;
* the functionality and user interface may change at any time&lt;br /&gt;
* some functionality may not work as intended&lt;br /&gt;
* testing and documentation is limited&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de/institut.html?&amp;amp;L=1 Insitute of Mechatronics Systems], [http://www.uni-hannover.de/en/index.php Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. The software documentation can be found [http://www.example.com Git Hub] as well. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*How to add new states to the exemplary state machine see [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
{|&lt;br /&gt;
|[[Image:Panel.jpg|thumb|400px|LighTWeightRobotIGT]]&lt;br /&gt;
|}&lt;br /&gt;
{|style=&amp;quot;width: 100%&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
*''Start Cyclic Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualization&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualization&lt;br /&gt;
*''Path'': Path were the robot stl files are located&lt;br /&gt;
*''Load Robot STL'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control, in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial from Robot'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul Fiducial Registration &lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelPrePositioning.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''point x,y,z'': Position of the cone tip or the plane in robot base coordinate frame&lt;br /&gt;
**''n'': z-axis of the cone or norm vector of the plane&lt;br /&gt;
**''VFtype'': Here you can choose the geometry of the virtual fixture - cone or plane&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''Path Impedence Control'': Sends a transition request to the ''Path'' state to the robot control, in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelTargeting.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To Pose'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
**''point x, y, z'': Target position in robot base coordinate frame&lt;br /&gt;
**''A, B, C'': Euler ankle describing the orientation at the target point in robot b ase coordinate frame of the tool&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down State Machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39200</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39200"/>
		<updated>2014-09-23T12:59:16Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{ambox&lt;br /&gt;
| type  = protection&lt;br /&gt;
| image = [[File:InProgress.png|40px|alt=Work in progress]]&lt;br /&gt;
| text  = WARNING: This module is Work in Progress, which means:&lt;br /&gt;
* the functionality provided by this module may change drastically in the future releases of 3D Slicer&lt;br /&gt;
* the scenes containing data types specific to this module may not be readable by the future versions of Slicer&lt;br /&gt;
* the functionality and user interface may change at any time&lt;br /&gt;
* some functionality may not work as intended&lt;br /&gt;
* testing and documentation is limited&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de/institut.html?&amp;amp;L=1 Insitute of Mechatronics Systems], [http://www.uni-hannover.de/en/index.php Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. The software documentation can be found [http://www.example.com Git Hub] as well. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*How to add new states to the exemplary state machine see [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
{|&lt;br /&gt;
|[[Image:Panel.jpg|thumb|400px|LighTWeightRobotIGT]]&lt;br /&gt;
|}&lt;br /&gt;
{|style=&amp;quot;width: 100%&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
*''Start Cyclic Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualization&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualization&lt;br /&gt;
*''Path'': Path were the robot stl files are located&lt;br /&gt;
*''Load Robot STL'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control, in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial from Robot'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelPrePositioning.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''point x,y,z'': Position of the cone tip or the plane in robot base coordinate frame&lt;br /&gt;
**''n'': z-axis of the cone or norm vector of the plane&lt;br /&gt;
**''VFtype'': Here you can choose the geometry of the virtual fixture - cone or plane&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''Path Impedence Control'': Sends a transition request to the ''Path'' state to the robot control, in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelTargeting.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To Pose'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
**''point x, y, z'': Target position in robot base coordinate frame&lt;br /&gt;
**''A, B, C'': Euler ankle describing the orientation at the target point in robot b ase coordinate frame of the tool&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down State Machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39199</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39199"/>
		<updated>2014-09-23T12:57:24Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{ambox&lt;br /&gt;
| type  = protection&lt;br /&gt;
| image = [[File:InProgress.png|40px|alt=Work in progress]]&lt;br /&gt;
| text  = WARNING: This module is Work in Progress, which means:&lt;br /&gt;
* the functionality provided by this module may change drastically in the future releases of 3D Slicer&lt;br /&gt;
* the scenes containing data types specific to this module may not be readable by the future versions of Slicer&lt;br /&gt;
* the functionality and user interface may change at any time&lt;br /&gt;
* some functionality may not work as intended&lt;br /&gt;
* testing and documentation is limited&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de/institut.html?&amp;amp;L=1 Insitute of Mechatronics Systems], [http://www.uni-hannover.de/en/index.php Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*How to add new states to the exemplary state machine see [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
{|&lt;br /&gt;
|[[Image:Panel.jpg|thumb|400px|LighTWeightRobotIGT]]&lt;br /&gt;
|}&lt;br /&gt;
{|style=&amp;quot;width: 100%&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
*''Start Cyclic Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualization&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualization&lt;br /&gt;
*''Path'': Path were the robot stl files are located&lt;br /&gt;
*''Load Robot STL'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control, in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial from Robot'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelPrePositioning.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''point x,y,z'': Position of the cone tip or the plane in robot base coordinate frame&lt;br /&gt;
**''n'': z-axis of the cone or norm vector of the plane&lt;br /&gt;
**''VFtype'': Here you can choose the geometry of the virtual fixture - cone or plane&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''Path Impedence Control'': Sends a transition request to the ''Path'' state to the robot control, in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelTargeting.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To Pose'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
**''point x, y, z'': Target position in robot base coordinate frame&lt;br /&gt;
**''A, B, C'': Euler ankle describing the orientation at the target point in robot b ase coordinate frame of the tool&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down State Machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39198</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39198"/>
		<updated>2014-09-23T12:40:05Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{ambox&lt;br /&gt;
| type  = protection&lt;br /&gt;
| image = [[File:InProgress.png|40px|alt=Work in progress]]&lt;br /&gt;
| text  = WARNING: This module is Work in Progress, which means:&lt;br /&gt;
* the functionality provided by this module may change drastically in the future releases of 3D Slicer&lt;br /&gt;
* the scenes containing data types specific to this module may not be readable by the future versions of Slicer&lt;br /&gt;
* the functionality and user interface may change at any time&lt;br /&gt;
* some functionality may not work as intended&lt;br /&gt;
* testing and documentation is limited&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de/institut.html?&amp;amp;L=1 Insitute of Mechatronics Systems], [http://www.uni-hannover.de/en/index.php Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*How to add new states to the exemplary state machine see [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
{|&lt;br /&gt;
|[[Image:Panel.jpg|thumb|400px|LighTWeightRobotIGT]]&lt;br /&gt;
|}&lt;br /&gt;
{|style=&amp;quot;width: 100%&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
*''Start Cyclic Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualization&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualization&lt;br /&gt;
*''Img/Rob'': Changes the coordinate frame of the robot pose send from the robot control to image space or robot base frame&lt;br /&gt;
*''Path'': Path were the robot stl files are located&lt;br /&gt;
*''Load Robot STL'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control, in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial from Robot'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelPrePositioning.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''point x,y,z'': Position of the cone tip or the plane in robot base coordinate frame&lt;br /&gt;
**''n'': z-axis of the cone or norm vector of the plane&lt;br /&gt;
**''VFtype'': Here you can choose the geometry of the virtual fixture - cone or plane&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''Path Impedence Control'': Sends a transition request to the ''Path'' state to the robot control, in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelTargeting.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To Pose'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
**''point x, y, z'': Target position in robot base coordinate frame&lt;br /&gt;
**''A, B, C'': Euler ankle describing the orientation at the target point in robot b ase coordinate frame of the tool&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down State Machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39138</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39138"/>
		<updated>2014-09-19T16:09:50Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de/institut.html?&amp;amp;L=1 Insitute of Mechatronics Systems], [http://www.uni-hannover.de/en/index.php Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*How to add new states to the exemplary state machine see [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
{|&lt;br /&gt;
|[[Image:Panel.jpg|thumb|400px|LighTWeightRobotIGT]]&lt;br /&gt;
|}&lt;br /&gt;
{|style=&amp;quot;width: 100%&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
*''Start Cyclic Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualization&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualization&lt;br /&gt;
*''Img/Rob'': Changes the coordinate frame of the robot pose send from the robot control to image space or robot base frame&lt;br /&gt;
*''Path'': Path were the robot stl files are located&lt;br /&gt;
*''Load Robot STL'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control, in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial from Robot'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelPrePositioning.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''point x,y,z'': Position of the cone tip or the plane in robot base coordinate frame&lt;br /&gt;
**''n'': z-axis of the cone or norm vector of the plane&lt;br /&gt;
**''VFtype'': Here you can choose the geometry of the virtual fixture - cone or plane&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''Path Impedence Control'': Sends a transition request to the ''Path'' state to the robot control, in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelTargeting.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To Pose'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
**''point x, y, z'': Target position in robot base coordinate frame&lt;br /&gt;
**''A, B, C'': Euler ankle describing the orientation at the target point in robot b ase coordinate frame of the tool&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down State Machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39137</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39137"/>
		<updated>2014-09-19T16:00:36Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de/institut.html?&amp;amp;L=1 Insitute of Mechatronics Systems], [http://www.uni-hannover.de/en/index.php Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*How to add new states to the exemplary state machine see [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
{|&lt;br /&gt;
|[[Image:Panel.jpg|thumb|300px|LighTWeightRobotIGT]]&lt;br /&gt;
|}&lt;br /&gt;
{|style=&amp;quot;width: 100%&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualisation&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualisation&lt;br /&gt;
*''Load Robot'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control, in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelPrePositioning.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sends a transition request to the ''Path'' state to the robot control, in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
| align=&amp;quot;right&amp;quot;|&lt;br /&gt;
[[Image:PanelTargeting.jpg|thumb|400px|Prepositioning tab]]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:PanelTargeting.jpg&amp;diff=39133</id>
		<title>File:PanelTargeting.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:PanelTargeting.jpg&amp;diff=39133"/>
		<updated>2014-09-19T15:49:36Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:PanelPrePositioning.jpg&amp;diff=39131</id>
		<title>File:PanelPrePositioning.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:PanelPrePositioning.jpg&amp;diff=39131"/>
		<updated>2014-09-19T15:49:24Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:Panel.jpg&amp;diff=39130</id>
		<title>File:Panel.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:Panel.jpg&amp;diff=39130"/>
		<updated>2014-09-19T15:49:09Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39077</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39077"/>
		<updated>2014-09-18T15:11:34Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de/institut.html?&amp;amp;L=1 Insitute of Mechatronics Systems], [http://www.uni-hannover.de/en/index.php Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*How to add new states to the exemplary state machine see [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualisation&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualisation&lt;br /&gt;
*''Load Robot'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control, in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sends a transition request to the ''Path'' state to the robot control, in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39076</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39076"/>
		<updated>2014-09-18T15:11:04Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de/institut.html?&amp;amp;L=1 Insitute of Mechatronics Systems], [http://www.uni-hannover.de/en/index.php Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*How to add new states to the exemplary state machine see [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualisation&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualisation&lt;br /&gt;
*''Load Robot'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sends a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39075</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39075"/>
		<updated>2014-09-18T15:09:19Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;, [http://www.imes.uni-hannover.de Insitute of Mechatronics Systems], [http://www.uni-hannover.de Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allows to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using an open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefore, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]. For an introduction of the interface concept see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication via ethernet with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the states are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value, and application point.&lt;br /&gt;
**Sending the transformation matrix describing the transformation from robot base coordinate frame to image space or to CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip, can be visualized by a scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes due to the current robot state received in the acknowledge string and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of a robot into an image-guided therapy system consisting of a visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|Command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*How to add new states to the exemplary state machine see [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Sends a command to the robot control to activate the visualisation&lt;br /&gt;
*''Stop Visualisation'': Sends a command to the robot control to deactivate the visualisation&lt;br /&gt;
*''Load Robot'': Loads the stl-files of the robot and the tool from the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sends a transition request to the ''Free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''Virtual Fixture'': Sends a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sends a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sends a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sends a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39067</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39067"/>
		<updated>2014-09-18T13:37:41Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt; [http://www.imes.uni-hannover.de Insitute of Mechatronics Systems], [http://www.uni-hannover.de Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the [http://openigtlink.org/ OpenIGTLink protocol] (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control via ethernet. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters ''p1-pn'' needed to initialise the stateare sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**A 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**The estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**The color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**Active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*For tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*And how to add new states to the exemplary state machine [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;.&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimated force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration tab:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning tab:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
#'''Tauscher S''', Ortmaier T, Neff T. Interface concept for the integration of a robot into an image-guided therapy system. Proceedings of the 27th International Congress on Computer Assisted Radiology and Surgery (CARS 2013) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39066</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39066"/>
		<updated>2014-09-18T13:31:48Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt; [http://www.imes.uni-hannover.de Insitute of Mechatronics Systems], [http://www.uni-hannover.de Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=3&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*For tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*and how to add new states to the exemplary state machine [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39065</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39065"/>
		<updated>2014-09-18T13:31:05Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Authors: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt; [http://www.imes.uni-hannover.de Insitute of Mechatronics Systems], [http://www.uni-hannover.de Leibniz University Hannover]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=5&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*For tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*and how to add new states to the exemplary state machine [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39064</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39064"/>
		<updated>2014-09-18T13:28:50Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|height=300&lt;br /&gt;
|width=300&lt;br /&gt;
|lines=5&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*For tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*and how to add new states to the exemplary state machine [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39063</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39063"/>
		<updated>2014-09-18T13:26:43Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|lines=5&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control&lt;br /&gt;
| File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation&lt;br /&gt;
| File:FiniteStateMachine_colored.png|Exemplary state machine for IGT&lt;br /&gt;
| File:StateMachineCommands.png|command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*For tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*and how to add new states to the exemplary state machine [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39062</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39062"/>
		<updated>2014-09-18T13:26:07Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{{Gallery&lt;br /&gt;
|lines=5&lt;br /&gt;
|align=center&lt;br /&gt;
| File:InterfaceConcept.png|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control]]&lt;br /&gt;
| [[File:TaskOverview.png|Overview of the communication structures and the threads on the robot control and the slicer workstation]]&lt;br /&gt;
| [[File:FiniteStateMachine_colored.png|Exemplary state machine for IGT]]&lt;br /&gt;
| [[File:StateMachineCommands.png|command and acknowledge parameter set of the exemplary state machine&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*For tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*and how to add new states to the exemplary state machine [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39061</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39061"/>
		<updated>2014-09-18T12:43:44Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{|style=&amp;quot;margin: 0 auto;&amp;quot;&lt;br /&gt;
| [[File:InterfaceConcept.png|200px|thumb|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control]]&lt;br /&gt;
| [[File:TaskOverview.png|300px|thumb|Overview of the communication structures and the threads on the robot control and the slicer workstation]]&lt;br /&gt;
| [[File:FiniteStateMachine_colored.png|300px|thumb|Exemplary state machine for IGT]]&lt;br /&gt;
| [[File:StateMachineCommands.png|300px|thumb|command and acknowledge parameter set of the exemplary state machine]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*For tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*and how to add new states to the exemplary state machine [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39060</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39060"/>
		<updated>2014-09-18T12:31:10Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{|style=&amp;quot;margin: 0 auto;&amp;quot;&lt;br /&gt;
| [[File:InterfaceConcept.png|200px|thumb|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control]]&lt;br /&gt;
| [[File:TaskOverview.png|300px|thumb|Overview of the communication structures and the threads on the robot control and the slicer workstation]]&lt;br /&gt;
| [[File:FiniteStateMachine_colored.png|300px|thumb|Exemplary state machine for IGT]]&lt;br /&gt;
| [[File:StateMachineCommands.png|300px|thumb|command and acknowledge parameter set of the exemplary state machine]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview see [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf| LightWeightRobotIGT Introduction]]&lt;br /&gt;
*For tutorial on how to set up your system and start the example see [[Media:Tutorial_LightWeightRobotIGT_getting_started.pdf| LightWeightRobotIGT Getting Started]]&lt;br /&gt;
*and how to add new states to the exemplary state machine [[Media:Tutorial_LightWeightRobotIGT_add_module.pdf| LightWeightRobotIGT Add Module]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39059</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39059"/>
		<updated>2014-09-18T12:27:46Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{|style=&amp;quot;margin: 0 auto;&amp;quot;&lt;br /&gt;
| [[File:InterfaceConcept.png|200px|thumb|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control]]&lt;br /&gt;
| [[File:TaskOverview.png|300px|thumb|Overview of the communication structures and the threads on the robot control and the slicer workstation]]&lt;br /&gt;
| [[File:FiniteStateMachine_colored.png|300px|thumb|Exemplary state machine for IGT]]&lt;br /&gt;
| [[File:StateMachineCommands.png|300px|thumb|command and acknowledge parameter set of the exemplary state machine]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview: [[Media:Tutorial_LightWeightRobotIGT_Introduction.pdf|presentation of the interface concept and a brief system overview]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example: [http://www.example.com LightWeightRobotIGT-getting started] &lt;br /&gt;
*and how to add new states to the exemplary state machine [http://www.example.com LightWeightRobotIGT-add state] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39058</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39058"/>
		<updated>2014-09-18T12:24:23Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{|style=&amp;quot;margin: 0 auto;&amp;quot;&lt;br /&gt;
| [[File:InterfaceConcept.png|200px|thumb|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control]]&lt;br /&gt;
| [[File:TaskOverview.png|300px|thumb|Overview of the communication structures and the threads on the robot control and the slicer workstation]]&lt;br /&gt;
| [[File:FiniteStateMachine_colored.png|300px|thumb|Exemplary state machine for IGT]]&lt;br /&gt;
| [[File:StateMachineCommands.png|300px|thumb|command and acknowledge parameter set of the exemplary state machine]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview: [[Tutorial:Tutorial_LightWeightRobotIGT_Introduction.pdf|Presentation of the interface concept and system overview ]]&lt;br /&gt;
*Tutorial on how to set up your system and start the example: [http://www.example.com LightWeightRobotIGT-getting started] &lt;br /&gt;
*and how to add new states to the exemplary state machine [http://www.example.com LightWeightRobotIGT-add state] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:Tutorial_LightWeightRobotIGT_Introduction.pdf&amp;diff=39057</id>
		<title>File:Tutorial LightWeightRobotIGT Introduction.pdf</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:Tutorial_LightWeightRobotIGT_Introduction.pdf&amp;diff=39057"/>
		<updated>2014-09-18T12:20:15Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39056</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39056"/>
		<updated>2014-09-18T12:16:32Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{|style=&amp;quot;margin: 0 auto;&amp;quot;&lt;br /&gt;
| [[File:InterfaceConcept.png|200px|thumb|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control]]&lt;br /&gt;
| [[File:TaskOverview.png|300px|thumb|Overview of the communication structures and the threads on the robot control and the slicer workstation]]&lt;br /&gt;
| [[File:FiniteStateMachine_colored.png|300px|thumb|Exemplary state machine for IGT]]&lt;br /&gt;
| [[File:StateMachineCommands.png|300px|thumb|command and acknowledge parameter set of the exemplary state machine]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview: [http://www.example.com LightWeightRopbotIGT-Introduction]&lt;br /&gt;
*Tutorial on how to set up your system and start the example: [http://www.example.com LightWeightRobotIGT-getting started] &lt;br /&gt;
*and how to add new states to the exemplary state machine [http://www.example.com LightWeightRobotIGT-add state] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39055</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39055"/>
		<updated>2014-09-18T12:14:40Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
{|style=&amp;quot;margin: 0 auto;&amp;quot;&lt;br /&gt;
| [[File:InterfaceConcept.png|200px|thumb|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control]]&lt;br /&gt;
| [[File:TaskOverview.png|200px|thumb|Overview of the communication structures and the threads on the robot control and the slicer workstation]]&lt;br /&gt;
| [[File:FiniteStateMachine_colored.png|200px|thumb|Exemplary state machine for IGT]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview: [http://www.example.com LightWeightRopbotIGT-Introduction]&lt;br /&gt;
*Tutorial on how to set up your system and start the example: [http://www.example.com LightWeightRobotIGT-getting started] &lt;br /&gt;
*and how to add new states to the exemplary state machine [http://www.example.com LightWeightRobotIGT-add state] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
#''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:StateMachineCommands.png&amp;diff=39054</id>
		<title>File:StateMachineCommands.png</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:StateMachineCommands.png&amp;diff=39054"/>
		<updated>2014-09-18T11:47:20Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39053</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39053"/>
		<updated>2014-09-18T11:23:27Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png|200px|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
[[File:InterfaceConcept.png|200px|thumb|left|Interface concept for the integration of an robot into an image-guided therapy system consisting of an visualization and state control]]&lt;br /&gt;
[[File:TaskOverview.png|200px|thumb|center|Overview of the communication structures and the threads on the robot control and the slicer workstation]]&lt;br /&gt;
[[File:FiniteStateMachine_colored.png|200px|thumb|right|Exemplary state machine for IGT]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview: [http://www.example.com LightWeightRopbotIGT-Introduction]&lt;br /&gt;
*Tutorial on how to set up your system and start the example: [http://www.example.com LightWeightRobotIGT-getting started] &lt;br /&gt;
*and how to add new states to the exemplary state machine [http://www.example.com LightWeightRobotIGT-add state] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
1.''' Tauscher S''', Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39052</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39052"/>
		<updated>2014-09-18T09:25:49Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:imesLogo.png]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview: [http://www.example.com LightWeightRopbotIGT-Introduction]&lt;br /&gt;
*Tutorial on how to set up your system and start the example: [http://www.example.com LightWeightRobotIGT-getting started] &lt;br /&gt;
*and how to add new states to the exemplary state machine [http://www.example.com LightWeightRobotIGT-add state] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
Tauscher S, Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39051</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39051"/>
		<updated>2014-09-18T09:18:03Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-logo-gallery&lt;br /&gt;
|[[File:imesLogo.png]]&lt;br /&gt;
}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-end}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview: [http://www.example.com LightWeightRopbotIGT-Introduction]&lt;br /&gt;
*Tutorial on how to set up your system and start the example: [http://www.example.com LightWeightRobotIGT-getting started] &lt;br /&gt;
*and how to add new states to the exemplary state machine [http://www.example.com LightWeightRobotIGT-add state] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
Tauscher S, Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:InterfaceConcept.png&amp;diff=39050</id>
		<title>File:InterfaceConcept.png</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:InterfaceConcept.png&amp;diff=39050"/>
		<updated>2014-09-18T09:16:09Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:TaskOverview.png&amp;diff=39049</id>
		<title>File:TaskOverview.png</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:TaskOverview.png&amp;diff=39049"/>
		<updated>2014-09-18T09:15:35Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:ImesLogo.png&amp;diff=39048</id>
		<title>File:ImesLogo.png</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:ImesLogo.png&amp;diff=39048"/>
		<updated>2014-09-18T09:14:46Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=File:FiniteStateMachine_colored.png&amp;diff=39047</id>
		<title>File:FiniteStateMachine colored.png</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=File:FiniteStateMachine_colored.png&amp;diff=39047"/>
		<updated>2014-09-18T09:14:08Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39046</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39046"/>
		<updated>2014-09-18T09:03:00Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-logo-gallery&lt;br /&gt;
|{{collaborator|logo|namic}}|NA-MIC&lt;br /&gt;
}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-end}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
*General interface concept and communication overview: [http://www.example.com LightWeightRopbotIGT-Introduction]&lt;br /&gt;
*Tutorial on how to set up your system and start the example: [http://www.example.com LightWeightRobotIGT-getting started] &lt;br /&gt;
*and how to add new states to the exemplary state machine [http://www.example.com LightWeightRobotIGT-add state] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
Tauscher S, Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39045</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39045"/>
		<updated>2014-09-18T08:55:57Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-start|{{documentation/modulename}}}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-row}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-logo-gallery&lt;br /&gt;
|{{collaborator|logo|namic}}|NA-MIC&lt;br /&gt;
}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-introduction-end}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com Git Hub] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com Tutorial-LightWeightRobot-getting started]. For an introduction of the interface concept see [http://www.example.com Tutorial-LightWeightRopbotIGT-Introduction]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
Tauscher S, Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39044</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39044"/>
		<updated>2014-09-18T08:49:42Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol (LWROpenIGTIF). Therefor, a state machine example is available at [http://www.example.com link title] containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see [http://www.example.com link title]. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported command and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate frame to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimated force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string, and, hence, gives a direct feedback to the user of the current robot state&lt;br /&gt;
**active virtual fixtures in relation to the robot and the target region changing their color to red when robot reach the fixtures&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
Tauscher S, Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39014</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39014"/>
		<updated>2014-09-11T15:49:26Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot (LWR iiwa, KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol. Therefor, a state machine example is available at ADD LINK containing the necessary interface classes for the communication on the robot control. A tutorial on how to set up the robotic system for the use with this 3D Slicer module see XX. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**Bidirectional cyclic communication with a state control running on the robot control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported commands and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame and a matrix containing a similar transformation including information about the force direction, absolute value and application point.&lt;br /&gt;
**Send the transformation matrix describuing the transformation between robot base coordinate fram to image space or CT base coordinate frame&lt;br /&gt;
*Visualisation&lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimate force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string&lt;br /&gt;
**active virtual fixtures in relation to the robot and teh target region&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
Tauscher S, Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39013</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39013"/>
		<updated>2014-09-11T15:38:32Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot LWR iiwa (KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol. Therefor, a state machine example is available at ADD LINK containing the necessary interface classes for the communication on the robot control. For an tutorial on how to set up the robotic system for the use with this 3D Slicer module see XX. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**a bidirectional cyclic communication with a state control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported commands and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame&lt;br /&gt;
*Visualisation &lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimate force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*''Start Communication'': Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*''Start Visualisation'': Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*''Stop Visualisation'': Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*''Load Robot'': Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*''Show TCP Force'': Visualizing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**''Free'': Sending a transition request to the ''free'' state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**''Get Fiducial'': Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**''Virtual Fixture'': Sending a transition request to the ''VirtualFixtures'' state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**''PathImp'': Sending a transition request to the ''Path'' state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**''Move To'': Sending a transition request to the ''MoveTo'' state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*''Reset Robot to Idle'': Sending a transition request to the ''Idle'' state to the robot control&lt;br /&gt;
*''Shut Down state machine'': Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
Tauscher S, Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39012</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39012"/>
		<updated>2014-09-11T15:23:19Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot LWR iiwa (KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol. Therefor, a state machine example is available at ADD LINK containing the necessary interface classes for the communication on the robot control. For an tutorial on how to set up the robotic system for the use with this 3D Slicer module see XX. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**a bidirectional cyclic communication with a state control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported commands and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame&lt;br /&gt;
*Visualisation &lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimate force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*Start Communication: Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*Start Visualisation: Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*Stop Visualisation: Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*Load Robot: Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*Show TCP Force: Visualisaing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**Free: Sending a transition request to the free state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**Get Fiducial: Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**Virtual Fixture: Sending a transition request to the virtaul fixtures state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**PathImp: Sending a transition request to the path impedance state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**Move To: Sending a transition request to the move to state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*Shut Down state machine: Sends a command to shut down the state machine running on the robot control&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
Tauscher S, Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39011</id>
		<title>Documentation/Nightly/Extensions/LightWeightRobotIGT</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Extensions/LightWeightRobotIGT&amp;diff=39011"/>
		<updated>2014-09-11T15:04:19Z</updated>

		<summary type="html">&lt;p&gt;Tauscher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-header}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Introduction and Acknowledgements}}&lt;br /&gt;
This work is supported in part by the National Institute of Health (R01CA111288, P01CA067165, P41RR019703,P41EB015898, R01CA124377, R01CA138586, R42CA137886, and&lt;br /&gt;
U54EB005 149) and is funded by KUKA Laboratories GmbH (Augsburg, Germany).&amp;lt;br&amp;gt;&lt;br /&gt;
Author: Sebastian Tauscher, Junichi Tokuda&amp;lt;br&amp;gt;&lt;br /&gt;
Contact: Sebastian Tauscher, &amp;lt;email&amp;gt;sebastian.tauscher@imes.uni-hannover.de&amp;lt;/email&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Module Description}}&lt;br /&gt;
The LightWeightRobotIGT module allow to communicate with a light weight robot LWR iiwa (KUKA Laboratories GmbH, Germany, Augsburg) using a open interface concept based on the OpenIGTLink protocol. Therefor, a state machine example is available at ADD LINK containing the necessary interface classes for the communication on the robot control. For an tutorial on how to set up the robotic system for the use with this 3D Slicer module see XX. The module provides the following features: &lt;br /&gt;
*Communication with the robot control&lt;br /&gt;
**a bidirectional cyclic communication with a state control. Command strings of the type &amp;quot;CommandName;p1;...;pn;&amp;quot; with the parameters needed to initialise the state p1-pn are sent to the robot control and acknowledge strings are received (see table below for a list of all supported commands and acknowledge strings and their parameters).  &lt;br /&gt;
**Receiving the transformation matrix containing the pose of each robot joint in robot base coordinate frame&lt;br /&gt;
*Visualisation &lt;br /&gt;
**a 3D model of the robot can be loaded and is automatically connected to the corresponding transformation matrices received from the robot control.&lt;br /&gt;
**the estimate force at the tool center point, e.g. the tool tip can be visualized by an scaled 3D arrow in the force direction. &lt;br /&gt;
**the color of the robot model changes the color due to the current robot state received in the acknowledge string&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Use Cases}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Tutorials}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Panels and their use}}&lt;br /&gt;
*Start Communication: Starts the cyclic communication with the state machine on the robot control&lt;br /&gt;
*Start Visualisation: Send a command to the robot control to activate the Visualisation&lt;br /&gt;
*Stop Visualisation: Send a command to the robot control to deactivate the Visualisation&lt;br /&gt;
*Load Robot: Loading the stl-File of the robot and the tool in the path defined by &amp;quot;Path&amp;quot;. The part shuld be named ....&lt;br /&gt;
*Show TCP Force: Visualisaing the estimate force at the tool center point by a scaled 3D arrow pointing in force direction.&lt;br /&gt;
*Registration:&lt;br /&gt;
**Free: Sending a transition request to the free state to the robot control in which the robot can be moved freely and manually&lt;br /&gt;
**Get Fiducial: Saves the current position in a fiducial list which can be used for a fiducial registration using modul XY &lt;br /&gt;
*Prepositioning:&lt;br /&gt;
**Virtual Fixture: Sending a transition request to the virtaul fixtures state to the robot control in which the robot can be moved freely and manually in work space restricted by active constraints. The supported virtual fixtures geometries are ''plane'' and ''cone''.&lt;br /&gt;
**PathImp: Sending a transition request to the path impedance state to the robot control in which the robot can be moved on a linear path from the current position towards a target position.&lt;br /&gt;
*Targeting:&lt;br /&gt;
**Move To: Sending a transition request to the move to state to the robot control in which the robot moves position controlled towards a target position.&lt;br /&gt;
*Shut Down state machine:&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{documentation/{{documentation/version}}/module-parametersdescription}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Similar Modules}}&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|References}}&lt;br /&gt;
Tauscher S, Tokuda J, Schreiber G, Neff T, Hata N, Ortmaier T. OpenIGTLink interface for state control and visualisation of a robot for image-guided therapy systems. Int J Comput Assist Radiol Surg. 2014 Jun 13. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-section|Information for Developers}}&lt;br /&gt;
{{documentation/{{documentation/version}}/module-developerinfo}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;br /&gt;
{{documentation/{{documentation/version}}/module-footer}}&lt;br /&gt;
&amp;lt;!-- ---------------------------- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tauscher</name></author>
		
	</entry>
</feed>