MC_CamIn
This function block initiates camming-based synchronization on a slave.
If the slave is already coupled to one or more cam table couplings,
it switches to the cam table coupling that is entered in this function block.
Note: Use MC_CamAdd to switch from single-camming to multi-camming.
Switch back and forth between single-camming and multi-camming is possible and not limited.
Syntax
Definition:
FUNCTION_BLOCK MC_CamIn
VAR_INPUT
Master : Type_Master1D;
Slave : Type_Camming1D;
CamObject : Type_CouplingFunction1D;
Execute : BOOL;
Scaling : CamScalingData;
ActivationOptions : CamActivationOptions;
ReactionToMasterError : EReactionToMasterError;
ReactionToSlaveError : EReactionToSlaveError;
END_VAR
VAR_OUTPUT
InSync : BOOL;
Busy : BOOL;
Active : BOOL;
CommandAborted : BOOL;
Error : BOOL;
ErrorId : UDINT;
MasterHasError : BOOL;
END_VAR
Inputs
|
Name |
Type |
Default |
Description |
|---|---|---|---|
|
Master |
Type_Master1D |
|
Reference to the master axis |
|
Slave |
Type_Camming1D |
|
Reference to the slave axis |
|
CamObject |
|
Reference to the cam object | |
|
Execute |
BOOL |
|
Start cam in at rising edge. |
|
Scaling |
|
Scaling of the new coupling | |
|
ActivationOptions |
|
Options controlling how the cam coupling is activated (mode, position, reference object). | |
|
ReactionToMasterError |
EReactionToMasterError |
TriggerSlaveError |
Reaction if an error occurs in the master while this command is active. |
|
ReactionToSlaveError |
EReactionToSlaveError |
TriggerMasterError |
Reaction if an error occurs in the slave while this command is active. |
Outputs
|
Name |
Type |
Description |
|---|---|---|
|
InSync |
BOOL |
Synchronization succeeded |
|
Busy |
BOOL |
Function block is not finished and new output values are to be expected. |
|
Active |
BOOL |
Function block has active control on the axis. |
|
CommandAborted |
BOOL |
Command is aborted by another command. |
|
Error |
BOOL |
Error occurred within function block. |
|
ErrorId |
UDINT |
Error identifier |
|
MasterHasError |
BOOL |
Master is in error state. |
Further information
The following rules apply to ActivationOptions.ReferenceObject:
- ReferenceObject is not required when curve synchronization is initiated (the master curve table coupling of this function block is used for activation).
- By default, the slave's active master curve table coupling is used, provided that only one exists (ReferenceObject = 0). If there are multiple slaves, set ReferenceObject = CamObject to ensure proper synchronization.
- ReferenceObject must not be 0 if there is more than one active master curve table coupling.
Additional information on ReactionToSlaveError and ReactionToMasterError
As a general rule, if there is an error on the slave axis:
- Slave axis: The coupling is released, and the response depends on the error type.
- Master Axis: The master axis reports an error and either follows the MC's stop ramp or continues its current motion without being affected.
If there is an error on the master axis:
- Master axis: The response depends on the type of error.
- Slave axis: The slave axis reports an error and follows either the MC's stop ramp or the master axis's setpoints.
Detailed information is provided in the Error behavior chapter.
Version information
- TwinCAT Standard >= v3.1.4026.23.1
- TF5550 MC3 Camming >= v4.0.6 (includes TF5500 MC3 Base >= v4.0.6)
Required License
TC3 MC3 Camming