IF_MovePureSmg - SetposRelativeChannelABC (Method)

Overview

Type:

Method

Available as of:

V1.0.16.0

Task

Assigning a setpos motion job to the channels A, B and C of the SoMotionGenerator (SMG), using the setpos mode Relative.

For more information on the use of channels, refer to Move Commands and Channels.

For more information on the SoMotionGenerator, refer to the PD_SoMotion Generator library.

Description

With the method IF_MovePureSmg - SetposRelativeChannelABC, setpos motion jobs are assigned to the SoMotionGenerator. The reference position (RefPosition) of the carrier on channels A, B and C is modified by the input values i_lrSetposValueA, i_lrSetposValueB and i_lrSetposValueC. With these input values, you can split the carrier position value between the channels or you can shift the carrier position by one complete track length (in positive or negative direction). (For more information on the track length, refer to lrTrackLength.)

Preconditions:

  • No motion job is active for the carrier.

  • After defining the setpos values, the position of the carrier on the track must remain unchanged: The sum of the setpos values must be 0 (applicable to closed or open tracks) or correspond to one track length in positive or negative direction (only applicable to closed tracks):
    • Example values for sum of setpos values = 0: i_lrSetposValueA = +300, i_lrSetposValueB = -100 and i_lrSetposValueC = -200.

    • Example values for shifting by one track length of 3700 mm: i_lrSetposValueA = -3500, i_lrSetposValueB = +100 and i_lrSetposValueC = -300.


For a visual illustration of the method SetposRelativeChannelABC, refer to the channels ABC video sequence.

NOTE: In a Lexium™ MC multi carrier track, you can use a combination of move commands like MovePureSmg and MoveGapControl for different carriers at the same time. Keep in mind that the MovePureSmg commands on channel B and C for the selected carrier are not taken into account by the carrier in front or behind that uses, for example, the move command MoveGapControl.

The move command MovePureSmg allows programmers that are experienced in the use of the SoMotionGenerator library to execute special movements.

With the move command MovePureSmg, the carrier uses the positioning or the cam commands of the SoMotionGenerator without considering the other carriers. Take this into account during path planning.

 CAUTION
CARRIER Collision
Define the master movement and the carrier path in a way that avoids collisions with other carriers.
Failure to follow these instructions can result in injury or equipment damage.
NOTE: You can use the function block FB_CrashPrevention as an additional protection measure to help avoid collisions.

Do not use the MovePureSmg command in combination with other Move commands for the carrier and ensure that no other move command is active for the carrier before calling the method IF_MovePureSmg - SetposRelativeChannelABC.

Feedback

Feedbacks are available in the interface IF_FeedbackMovePureSmg.

Inputs

Input

Data type

Description

i_lrSetposValueA

REAL

Specifies the relative setpos value of channel A. The reference position of channel A is modified by this value.

i_lrSetposValueB

REAL

Specifies the relative setpos value of channel B. The reference position of channel B is modified by this value.

i_lrSetposValueC

REAL

Specifies the relative setpos value of channel C. The reference position of channel C is modified by this value.

Outputs

Output

Data type

Description

q_xError

BOOL

Indicates TRUE if an error has been detected. For details, refer to q_etResult and q_sResultMsg.

q_etResult

ET_Result

Provides diagnostic and status information as a numeric value.
If q_xError = FALSE, q_etResult provides status information.
If q_xError = TRUE, q_etResult provides diagnostic/error information.

q_sResultMsg

STRING [255]

Provides additional diagnostic and status information as a text message.

Call Example

Example:
...ifMovePureSmg.SetposRelativeChannelABC(…)