Curve compensation for a synchronized movement of the selected carrier with the carrier in front. The carrier in front is considered as the master carrier and the selected carrier is considered as the connected carrier.
(For more information on the carrier positions, refer to the general description of a Lexium™ MC multi carrier track.)
With the method StartCurveCompensationToCarrierInFront, you can apply an additional curve compensation cam to a synchronized movement of the carrier with the carrier in front (started by the method StartSyncToCarrierInFront).
As a precondition, both carriers must be in standstill. The value of the parameter Carrier.RefVelocity must be 0. For more information on the carrier object and the parameter RefVelocity within the user function MovementData, refer to the Lexium™ MC multi carrier Device Objects and Parameters Guide.
The selected carrier follows the carrier in front considering the distance between the ToolPivotPoint of the selected carrier and the ToolPivotPoint of the carrier in front. (For more information on the definition of the ToolPivotPoint, see the method SetToolPivotPointOffset.)
The distance between two carriers is the Euclidean distance, also in the curves. This involves the following aspects:
The movement inside the curve has to be adjusted.
The adjusted movement is automatically calculated inside the cam.
In the curves, the distance considered is the Euclidean distance between the tool pivot points as defined by the parameter ToolPivotPoint, not the arc length of the curve.
Inside the curve, the distance between the carriers themselves is smaller due to the curve compensation.
With the synchronized movement with curve compensation, the carrier follows the carrier in front one-to-one without considering the motion parameters specified in the method SetMotionParameter.
x = -25
y = 100
z = 0 (by default)
![]() |
For a visual illustration, refer to the curve compensation video sequence. |
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 |
Provides diagnostic and status information as a numeric value. |
|
q_sResultMsg |
STRING [255] |
Provides additional diagnostic and status information as a text message. |
Before executing the method StartCurveCompensationToCarrierInFront, the methods SetMotionParameter and StartSyncToCarrierInFront must be called at least once.
Preconditions:
The selected carrier (connected carrier) and the carrier in front (master carrier) must be in standstill.
The method StartSyncToCarrierInFront must have been called.
The values of the parameter ToolPivotPoint.X of the master carrier and the connected carrier must be equal.
The values of the parameter ToolPivotPoint.Y of the master carrier and the connected carrier must be equal.
The gap between the carriers must be large enough for the curve compensation movement which depends on the tool pivot point configuration.
Example:
...ifMotion.SetMotionParameter(...)
...ifMoveDirectly.Start(...)
...ifMoveSyncFromStandStill.StartSyncToCarrierInFront(...)
...ifMoveSyncFromStandStill.StartCurveCompensationToCarrierInFront(...)