Difference between revisions of "Referencing sequence"

From Wiki
(Added explanation for RefDelay)
m (Added category Referencing)
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Category:CPRog]][[Category:TinyCtrl]]
 
 
The referencing sequence is set up so that standard robots do not collide while referencing. In specific cases this order might need to be changed to avoid collisions or add additional axes.
 
The referencing sequence is set up so that standard robots do not collide while referencing. In specific cases this order might need to be changed to avoid collisions or add additional axes.
  
= Access the project configuration file =
+
The referencing sequence is specified in the project configuration file. Please read the article [[Project_Configuration_File#Accessing_the_Configuration_File|Project Configuration File]] on how to access the configuration file of the robot.
The referencing sequence is specified in the project configuration file. Depending on how you connect to the robot you will need to change the file in CPRog/iRC on your computer or the corresponding file on the embedded control of the robot.
 
  
== Robots connected via CAN adapter ==
+
= Referencing Sequence =
If your robot is directly connected to the PC via a CAN adapter you will need to change the configuration of CPRog / iRC:
 
 
 
C:\CPRog\Data\Projects\<category>\<robot type>.prj
 
 
 
C:\iRC-igusRobotControl\Data\Projects\<category>\<robot type>.prj
 
 
 
== Robots connected via Ethernet (Embedded Control) ==
 
If your robot is using an embedded control (TinyCtrl, PC connects via Ethernet) you will need to change the configuration of the embedded control. Please refer to [[FTP and putty Access]] on how to access and modify files. You will find the project configuration here:
 
 
 
~/TinyCtrl/Data/Projects/EmbeddedCtrl.prj
 
 
 
= Modify the referencing sequence =
 
 
Open the project configuration file with a text editor, then find the line starting with PLCInterfaceRefSequence:
 
Open the project configuration file with a text editor, then find the line starting with PLCInterfaceRefSequence:
  
 
  <nowiki><PLCInterfaceRefSequence JointToRef0="0" JointToRef1="1" JointToRef2="2" JointToRef3="3" JointToRef4="-1" JointToRef5="-1" JointToRef6="-1" JointToRef7="-1" JointToRef8="-1" /></nowiki>
 
  <nowiki><PLCInterfaceRefSequence JointToRef0="0" JointToRef1="1" JointToRef2="2" JointToRef3="3" JointToRef4="-1" JointToRef5="-1" JointToRef6="-1" JointToRef7="-1" JointToRef8="-1" /></nowiki>
  
Enter the joint numbers in your desired referencing order. The first robot joint is number 0, the first external axis has the number following the last robot axis (in case of a 4 axis robot the first external axis will be number 4). All unused entries must be -1.
+
Enter the joint numbers in your desired referencing order. JointToRef0 references first, JointToRef1 second etc. The first robot joint is number 0, the first external axis number follows the last robot axis (in case of a 4 axis robot the last robot axis will be number 3 and the first external axis will be number 4). The referencing stops once it reaches an axis number of -1 or an axis that does not exist.
 +
 
 +
= Referencing Delay =
  
 
The referencing is timer based: By default another joint starts each 5 seconds. This delay can be configured with CPRog/iRC V902-12-019 or newer and TinyCtrl V980-12-019 or newer. The RefDelay parameters in the following example define the delay ''before'' each joint (i.e. RefDelay2 is the delay between the joints defined by JointToRef1 and JointToRef2).
 
The referencing is timer based: By default another joint starts each 5 seconds. This delay can be configured with CPRog/iRC V902-12-019 or newer and TinyCtrl V980-12-019 or newer. The RefDelay parameters in the following example define the delay ''before'' each joint (i.e. RefDelay2 is the delay between the joints defined by JointToRef1 and JointToRef2).
Line 29: Line 17:
  
 
Changes take effect only after a restart of the system (or a relaunch of TinyCtrl).
 
Changes take effect only after a restart of the system (or a relaunch of TinyCtrl).
 +
 +
[[Category:Configuration]][[Category:CPRog]][[Category:TinyCtrl]][[Category:Referencing]]

Latest revision as of 10:42, 1 December 2023

The referencing sequence is set up so that standard robots do not collide while referencing. In specific cases this order might need to be changed to avoid collisions or add additional axes.

The referencing sequence is specified in the project configuration file. Please read the article Project Configuration File on how to access the configuration file of the robot.

Referencing Sequence

Open the project configuration file with a text editor, then find the line starting with PLCInterfaceRefSequence:

<PLCInterfaceRefSequence JointToRef0="0" JointToRef1="1" JointToRef2="2" JointToRef3="3" JointToRef4="-1" JointToRef5="-1" JointToRef6="-1" JointToRef7="-1" JointToRef8="-1" />

Enter the joint numbers in your desired referencing order. JointToRef0 references first, JointToRef1 second etc. The first robot joint is number 0, the first external axis number follows the last robot axis (in case of a 4 axis robot the last robot axis will be number 3 and the first external axis will be number 4). The referencing stops once it reaches an axis number of -1 or an axis that does not exist.

Referencing Delay

The referencing is timer based: By default another joint starts each 5 seconds. This delay can be configured with CPRog/iRC V902-12-019 or newer and TinyCtrl V980-12-019 or newer. The RefDelay parameters in the following example define the delay before each joint (i.e. RefDelay2 is the delay between the joints defined by JointToRef1 and JointToRef2).

<PLCInterfaceRefSequence JointToRef0="0" JointToRef1="1" JointToRef2="2" JointToRef3="3" JointToRef4="-1" JointToRef5="-1" JointToRef6="-1" JointToRef7="-1" JointToRef8="-1" RefDelay0="0" RefDelay1="10" RefDelay2="8" RefDelay3="5" RefDelay4="5" RefDelay5="5" RefDelay6="5" RefDelay7="5" RefDelay8="5"/>

Changes take effect only after a restart of the system (or a relaunch of TinyCtrl).