Function BlockMC_CamOutPLCopen motion icon

Description

This function block:

  • 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.

MC_CamOut

Figure 8-147: MC_CamOut

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

AXIS_REF

 

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

JerkClosedIn 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 jerkClosedIn 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

See table in PLCopen Function Block ErrorID Output

 

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

    MC_CamIn

    MC_CamTblSelect

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

MC_CamOut: LD example

 

See also MC_CamIn for examples.

Go back to the top of the page [Top]