MC_GrpReadCmdVel

PLCopen motion icon Pipe Network motion icon

 Function Block - Reads the command velocity of the axes in the group and the path velocity.

Inputs

Input

Data Type

Range

Unit

Default

Description

Enable

BOOL

FALSE, TRUE

N/A

No default

If TRUE, this function block reads the current commanded velocity of the group and the axes in the group.

AxesGroup

AXES_GROUP_REF

No range

N/A

No default

The axes group the commanded velocity is read from.

CoordSystem

SINT

Enumerated

N/A

No default

The coordinate system used when reading the commanded velocity.

One of these enumeration values:

Value

Description

CS_ACS

Axes Coordinate System

CS_MCS

Machine Coordinate System

CS_PCS

Product Coordinate System

Velocity

LREAL[ ]

Dimension: The number of axes in the AxesGroup.

No range

User unit/sec

No default

An array where the velocity data is written.

  • The length of the array must equal the maximum number of axes allowed in the group.
  • The maximum number of axes is an argument to the MC_CreateAxesGrp function block used to create axes groups.

Outputs

Output

Data Type

Range

Unit

Description

Valid

BOOL

FALSE, TRUE

N/A

If TRUE, the velocities were read without error.

Error

BOOL

FALSE, TRUE

N/A

If TRUE, an error has occurred.

ErrorID

INT

Enumerated

N/A

Indicates the error if Error output is TRUE.

See PLCopen Function Block ErrorIDs.

PathVelocity

LREAL

No range

User unit/sec

The current commanded path velocity of the group.

This is measured by taking the square root of the sum of the squared velocities of each axis.

Remarks

  • See Coordinated Motion, the top-level topic for Coordinated Motion.
  • See Function Blocks - General Rules about how inputs and outputs work.
  • The MC_GrpReadCmdVel function block fills the array specified by the Velocity argument with the commanded velocity for the coordinate system, which is specified by the CoordSystem argument.
    • The path velocity is reported by the PathVelocity output.
  • This function or function block does not generate any motion.
  • There is a one-to-one correspondence between the axes in the Axes Group and the velocity values in the Velocity Array.
  • If a index in the Axes Group is unassigned, the velocity value for that array element in the Velocity array is 0 (zero).
  • If the element does contain an axis, the velocity value is filled with the current actual velocity for that axis. 
    • This is an example of how this works:

Figure 1: MC_GrpReadCmdVel

FBD Language Example

FFLD Language Example

IL Language Example

Not available.

ST Language Example

            (*MC_GrpReadCmdVel ST example *)
Inst_MC_GrpReadCmdVel(DoRead, Group, CoordSys, VelList );

See Also