MC_CamOut
Description
- aborts the active MC_CamIn move
- disengages the axis from its master
- and commands the axis to continue at its current velocity
-
-
The current velocity is calculated by taking the average of the actual velocity during the previous 16 cycles.
Like a MC_MoveVelocity move, the control continues to command the axis to move at this velocity until this MC_CamOut move is aborted. If this function block is called and the active move is not a MC_CamIn move, this function block returns an error and the active move is not aborted.
-
-
As an alternative method to cancel the cam motion, a single axis move (MC_MoveAbsolute, MC_MoveRelative, MC_MoveAdditive, MC_MoveVelocity, and MC_Halt) with the buffermode input set to 0 can be called. This will cancel the MC_CamIn function and start the new motion function on the slave axis. Many applications prefer calling MC_Halt instead of MC_CamOut because it will not send a velocity command to the slave axis.
-
- This function block starts a motion-related action and therefore stores data for calculations and error checking. Please see Calling Function Blocks Multiple Times in the Same Cycle if you are using a dual-core controller.
Arguments
For more detail on how inputs and outputs work, refer to PLCopen Function Blocks - General Rules
Input
Execute |
Description |
Requests to queue the CamOut move |
Data type |
BOOL |
|
Range |
0, 1 |
|
Unit |
n/a |
|
Default |
— |
|
Slave |
Description |
Name of a declared instance of the AXIS_REF library function (for more details, About Axis Name and Number) |
Data type |
||
Range |
1 – 256 |
|
Unit |
n/a |
|
Default |
— |
|
Acceleration |
Description |
Trapezoidal: Acceleration rate S-curve: Maximum acceleration |
Data type |
LREAL |
|
Range |
— |
|
Unit |
User unit/sec2 |
|
Default |
— |
|
Deceleration |
Description |
Trapezoidal: Deceleration rate S-curve: Unused |
Data type |
LREAL |
|
Range |
— |
|
Unit |
User unit/sec2 |
|
Default |
— |
|
JerkIn physics, jerk is the rate of change of acceleration; more precisely, the derivative of acceleration with respect to time |
Description |
Trapezoidal: 0 S-curve: Constant jerkIn physics, jerk is the rate of change of acceleration; more precisely, the derivative of acceleration with respect to time |
Data type |
LREAL |
|
Range |
— |
|
Unit |
User unit/sec3 |
|
Default |
— |
Output
Done |
Description |
Indicates the axis is disengaged from its master |
Data type |
BOOL |
|
Range |
0, 1 |
|
Unit |
n/a |
|
Busy |
Description |
Indicates this function block is executing |
Data type |
BOOL |
|
Range |
0, 1 |
|
Unit |
n/a |
|
Active |
Description |
Indicates this move is the Active move |
Data type |
BOOL |
|
Range |
0, 1 |
|
Unit |
n/a |
|
CommandAborted |
Description |
Indicates the move was aborted |
Data type |
BOOL |
|
Range |
0, 1 |
|
Unit |
n/a |
|
Error |
Description |
Indicates an invalid input was specified or no MC_CamIn move was active |
Data type |
BOOL |
|
Range |
0, 1 |
|
Unit |
n/a |
|
ErrorID |
Description |
Indicates the error if the Error output is high
|
Data type |
INT |
|
Range |
— |
|
Unit |
n/a |
Usage
This function block disengages the slave axis from a MC_CamIn move and then leaves the axis running at its current velocity. The axis continues to run at this velocity until this move is aborted.
Related Functions
Example
Structured Text
(* MC_CamOut ST example *) Inst_MC_CamOut(ExecCamOut1,Axis1,CamOut1Acc,CamOut1Dec,CamOut1Jerk); //Inst_MC_CamOut is an instance of MC_CamOut
|
Ladder Diagram
See also MC_CamIn for examples.