MCA_PhasingByMaster (FB)
FUNCTION_BLOCK MCA_PhasingByMaster
This function block performs a movement for the relation to the master axis of the specified axis. A real movement is just performed in case the axis is in synchronized motion.
This function block creates a relative phase shift in the master position of a slave axis. The master position is shifted in relation to the real physical position. This is analogous to opening a coupling on the master shaft for a moment, and is used to delay or advance an axis to its master. The phase shift is seen from the slave. The master does not know that there is a phase shift experienced by the slave. The phase shift remains until another “Phasing” command changes it again.
Note
The phasing is executed with respect to a master movement and will use a polynomial interpolation
Note
To halt this function block user must use MC_HaltPhasing function block instead of MC_Stop or MC_Halt
- InOut:
Scope
Name
Type
Comment
Input
ExecuteBOOLStarts the function block at rising edge
PhaseShiftLREAL[u] = Technical unit, phase difference in master
MasterDistanceLREAL[u] Distance master has to move
iTypeInterpolation type, MCA_LINEAR, MCA_POLY3 or MCA_POLY5 are applicable
MasterValueSourceDecide to use the actual position or reference position of master axis
BufferModeNot supported, default mcABORTING used
Output
DoneBOOLShows the status of the function block. Done = TRUE if the execution is finished
BusyBOOLThe function block is not finished
ActiveBOOLIndicates that the function block has control on the axis
CommandAbortedBOOLCommand is aborted by another command from other PLCopen function block
ErrorBOOLSignals that error has occurred within function block
ErrorIDError identification. For error details refer to Enumeration ERROR_ID
CoveredPhaseShiftLREALActual phase shift of master axis to slave axis, valid while function block is busy
Inout
AxisReference to axis
MasterReference to master axis