Y_GP_GroupReAlignPrimeAxes
This function block searches the
AXES_GROUP_REF and
#32489 structures to determine if any joints are configured with additional prime axes. If all the axes operating a joint are already within the PrimeAllowance, the prime axes are moved to the same commanded position as the main one. It is useful to prepare a group for
MC_GroupEnable
and prevent that function from generating the ErrorID 8966.
Parameters
| * | Parameter | Data Type | Description | Default |
|---|---|---|---|---|
| VAR_IN_OUT | ||||
| B | AxesGroup | AXES_GROUP_REF | A logical reference to a group of axes, which contains several additional substructures pertaining to the group. | |
| V | JointMap | Yt_GP_JointMap | Structure of data that holds information for Joint Index, Label, AxisName and AXIS_REF. | |
| VAR_INPUT | ||||
| B | Execute | BOOL | Upon the rising edge, all other function block inputs are read and the function is initiated. To modify an input, change the value and re-trigger the execute input. | FALSE |
| B | Velocity | LREAL | Absolute value of the velocity in user units/second. | LREAL#0.0 |
| B | Acceleration | LREAL | Value of the acceleration in user units/second^2 (acceleration is applicable with same sign of torque and velocity). | LREAL#0.0 |
| B | Deceleration | LREAL | Value of the deceleration in user units/second^2 (deceleration is applicable with opposite signs of torque and velocity). | LREAL#0.0 |
| V | PrimeAllowance | LREAL | Specify the maximum amount of difference between the main and prime servo commanded positions to permit safe alignment. | LREAL#0.0 |
| VAR_OUTPUT | ||||
| B | Done | BOOL | Indicates that the function is operating normally and the outputs of the function are valid. | |
| B | Busy | BOOL | Set high upon the rising edge of the Execute input, and reset when Done, CommandAborted, or Error is true. In the case of a function block with an Enable input, a Busy output indicates the function is operating, but not ready to provide Valid information. (No Error) | |
| E | CommandAborted | BOOL | Set high if motion is aborted by another motion command or MC_Stop. This output is cleared with the same behavior as the Done output. | |
| B | Error | BOOL | Set high if an error has occurred during the execution of the function block. This output is cleared when 'Execute' or 'Enable' goes low. | |
| E | ErrorID | UINT | If Error is true, this output provides the Error ID. This output is reset when 'Execute' or 'Enable' goes low. | |
Notes
- This function block only supports locally hosted groups, not remotely hosted robots via MotomanSync [MSync].
- This function block expects a populated JointMap structure. Execute #30285 before using this function block.
- The group's servo power must be applied before executing this block, use either Y_GroupPower or Y_GP_GroupControl.
- PrimeAllowance must not be set to a large value which could cause damage to the machine! It is assumed that the motors were previously aligned and that the positions were set properly. This function block is only to be used to perform minor realignment motion such that all motors on each joint are at the exact same commanded position in preparation for execution of MC_GroupEnable.
Error Description
See the Function Block ErrorID List.
Example
Consider the following group definition, with prime axes defined for the X and Y axes.
Then the following steps are taken to realign all prime axes present in the group (X' and Y' as seen in the Mechanism configuration). Before executing Y_GP_GroupReAlignPrimeAxes, the group should be powered, either with
#19123
or
#30286. Also, the JointMap variable needs to be filled beforehand using
#30285.
Upon executing Y_GP_GroupReAlignPrimeAxes, all the prime axes present in the group will be realigned in the order they were defined in the Mechanism configuration.