MC_GrpSetPos

PLCopen motion icon Pipe Network motion icon

 Function BlockClosed A function block groups an algorithm and a set of private data. It has inputs and outputs. - Sets the axis command position for all of the axes in an axes group to the positions specified in the Position input.

Inputs

Input

Data Type

Range

Unit

Default

Description

Execute

BOOL

0, 1

N/A

No default

On the rising edgeClosed A rising edge is the transition of a digital signal from low to high. It is also called positive edge, request to set the position of the group.

AxesGroup

AXES_GROUP_REF

No range

N/A

No default

The axis group to set the positions.

Position[]

LREAL

0, Number of axes in group-1

N/A

No default

An array containing the position for each axis in the group.

  • If Relative is set, position represents a distance rather than an absolute position.
  • 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 MC_CreateAxesGrp, which is used to create axes groups.

Relative

BOOL

0, 1

N/A

No default

Request to set position:

  • (1) relative.
  • (0) absolute.

CoordSystem

SINT

One of these enumeration values:

  • MC_COORDINATE_SYSTEM_ACS = 0
  • MC_COORDINATE_SYSTEM_MCS = 1
  • MC_COORDINATE_SYSTEM_PCS = 2

N/A

No default

The coordinate system used when setting the positions.

  • Currently, only the ACS coordinate system is supported.
  • See Coordinate Systems for more information.

BufferMode

SINT

0, 0

N/A

No default

Currently unused.

Outputs

Output

Data Type

Range

Unit

Description

Done

BOOL

 

 

If TRUE, the command completed successfully.

Busy

BOOL

 

 

Currently unused.

Returns FALSE.

CommandAborted

BOOL

 

 

Currently unused.

Returns FALSE.

Error

BOOL

 

 

If TRUE, an error has occurred.

ErrorID

INT

 

 

Indicates the error if the Error output is set to TRUE.

See the table in PLCopen Function Block ErrorIDs.

Remarks

  • This function or function block does not generate any motion.
  • See Coordinated Motion, the top-level topic for Coordinated Motion.
  • The axes group must be enabled and in Standby mode for MC_GrpSetPos to execute.
    • If it is not, this FB returns an error and the axis positions remains unchanged.
    • The command position is that returned by the FB MC_GrpReadCmdPos.

Figure 6-154: MC_GrpSetPos

FBD Language Example

FFLD Language Example

IL Language Example

            BEGIN_ILClosed "Instruction List"
This is a low-level language and resembles assembly 
CAL Inst_MC_GrpSetPos( DoSetPos, Group1, PositionArray, Relative, MC_COORDINATE_SYSTEM_ACS, BufferMode);
END_IL

ST Language Example

Inst_MC_GrpSetPos( DoSetPos, Group1, PositionArray, Relative, MC_COORDINATE_SYSTEM_ACS, 0 );  

See Also