MC_GearIn

Functional Description

This function block activates coupling of a master axis and a slave axis with a given gear factor between velocity of the master axis and the slave axis.

The slave axis synchronously follows the movement of the master axis (velocity synchronicity).

The inputs RatioNumerator and RatioDenominator let you set a user-specific gear ratio for the movement of the slave axis.

Library Name and Namespace

Library name: PLCopen MC part 1

Namespace: PLCO

Graphical Representation

G-SE-0068819.1.gif-high.gif

 

 

Inputs

Input

Data type

Description

Master

Axis_Ref

Reference to the axis for which the function block is to be executed.

Slave

Axis_Ref

Reference to the axis for which the function block is to be executed.

Execute

BOOL

Value range: FALSE, TRUE.

Default value: FALSE.

A rising edge of the input Execute starts the function block. The function block continues execution and the output Busy is set to TRUE.

This function block can be restarted while it is executed. The target values are overwritten by the new values at the point in time the rising edge occurs.

RatioNumerator

INT

Value range: -2147483648...2147483647

Default value: 1

Numerator of gear ratio.

NOTE: The value 0 is invalid.

RatioDenominator

UINT

Value range: 1...2147489647

Default value: 1

Denominator of gear ratio.

Acceleration

The value at this input is used to reach the specified target velocity (acceleration or deceleration).

LREAL

Value range: Any positive LREAL value

Default value: 0

Acceleration in user-defined units.

Outputs

Output

Data type

Description

InGear

BOOL

Value range: FALSE, TRUE.

Default value: FALSE.

oTRUE: When the adjusted gear ratio is reached.

Busy

BOOL

Value range: FALSE, TRUE.

Default value: FALSE.

oFALSE: Function block is not being executed.

oTRUE: Function block is being executed.

CommandAborted

BOOL

Value range: FALSE, TRUE.

Default value: FALSE.

oFALSE: Execution has not been aborted.

oTRUE: Execution has been aborted by another function block.

Error

BOOL

Value range: FALSE, TRUE.

Default value: FALSE.

oFALSE: Function block is being executed, no error has been detected during execution.

oTRUE: An error has been detected in the execution of the function block.

ErrorID

ET_Result

This enumeration provides diagnostics information.

Notes

The input Acceleration needs to be set to a value greater than 0 before the function block is executed.

The gear ratio can be modified during a movement. However, the new values are taken into account only with the next rising edge of the input Execute.

The slave axis uses the values for Acceleration and Jerk only during the first acceleration phase. The slave axis then follows the master axis.

The library does not provide a separate function block MC_GearOut. A running function block can be replaced by any other function block.

Possible Values of ET_Result

ErrorId

Cause

Corrective

AxisInErrorStop

Function block cannot be executed because an axis error has been detected and the axis is in operating state ErrorStop.

Verify that the axis is not in the operating state ErrorStop when attempting to start a new function block.

AxisInvalid

No axis is specified for the input Axis or specified axis does not support the required function.

For MC_Touchprobe and MC_AbortTrigger: Specified axis does not support capture.

Connect the axis for which the function block is to be executed to the input Axis.

For MC_Touchprobe and MC_AbortTrigger: Use an axis that supports capture.

AxisIsDisabled

Function block cannot be executed because the axis is the operating state Disabled.

Verify that the axis is not in the operating state Disabled when attempting to start a new function block.

AxisIsStopping

Function block cannot be executed because an MC_Stop function block is active and the axis is in the operating state Stopping.

Verify that the axis is not in the operating state Stopping when attempting to start a new function block.

IfMotionCommandNotSupported

The connected axis does not support all of the required functions.

Verify that the connected axis implements the IF_MotionCommand interface of the MotionInterface library.

InvalidRatioDenominator

The value at the in input RatioDenominator is zero.

Use a value other than zero for the denominator.

InvalidRatioNumerator

The value at the in input RatioNumerator is zero.

Use a value other than zero for the numerator.

MasterInvalid

The object at the input Master is invalid.

Provide a valid reference to the axis for which the function block is to be executed (object from Devices tree such as an axis or an encoder).

NoBusCommunication

The fieldbus is not in the state Operational (Sercos: phase 4).

Verify that the fieldbus is in the state Operational (Sercos: phase 4) at the rising edge of the input Execute and during the execution.

Ok

Status message

-

OutOfMemory

Insufficient memory for movement command.

Reduce the memory required by your application.

UnexpectedReturnValue

Indeterminable return value from system.

Contact your Schneider Electric representative.