Y_GP_ReAlignPrimeAxes
Designed for groups configured with more than one axis operating a single joint, this function block will move the secondary axes to the commanded position of the main axis if they are already within the PrimeAllowance provided. Joints with multiple axes must have the same commanded position prior to executing
MC_GroupEnable, otherwise the ErrorID 8966 will occur.
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 |
| V | Label | STRING | Specify the Joint to be aligned. Use the 'Label' name as shown in the group's Mechanism configuration tab. | STRING#'' |
| 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 axes 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.
- This function block expects a populated JointMap structure. Execute #30285 before using this function block.
- See Y_GP_GroupReAlignPrimeAxes, which will iterate through all joints and call this function block as many times as necessary to align all joints.
Error Description
See the Function Block ErrorID List.
Example
Example 1
Consider the following group definition, with prime axes defined for the X and Y axes.
Then, the following steps should be followed to realign the Y's prime axis. Before executing Y_GP_ReAlignPrimeAxes, the prime axes to be realigned need to be powered (either with
#19123 or #30286 powering all the axes of the group, or with
#12056 powering just the prime axes that need realignment). Also, the JointMap variable needs to be filled beforehand using
#30285.
Upon executing Y_GP_ReAlignPrimeAxes, the joint's prime axes will be realigned to match the main axis' position.
Example 2
This example shows how the function is used within
Y_GP_GroupToHome. A CASE statement sequences through the joints and executes Y_GP_ReAlignPrimeAxes for all the joints configured with secondary axes.