Adding a linear tracking system to the robot.
This method is not supported by Modicon M262 Motion Controllers.
With the method AddLinearTrackingSystem(...), a linear tracking system can be added to the robot.
Information about the tracking direction in relation to the velocity source:
The tracking direction is along the positive cartesian X axis of the defined coordinate system of the linear tracking system.
Information about the logical encoder linked to the velocity source:
The configuration of the logical encoder is verified during the configuration of the linear tracking system.
The parameter Enable has to be TRUE.
The logical encoder must not be linked to any other velocity source.
The parameters PhaseEnable, GearEnable, and EngageEnable have to be FALSE.
If the velocity source implements the interface SystemConfigurationItf.IF_MechanicMandatory, the following parameters Direction, GearIn, GearOut, and FeedConstant are verified. The parameterization of these parameters has to be equal to the parameterization of the velocity source.
In case the robot is moving in the linear tracking system, the logical encoder is also monitored if any manipulation of the position occurred. If a manipulation is detected, the robot stops immediately. The monitoring of the position is also active if only a change to the linear tracking system is requested by calling the method IF_RobotMotion.ChangeCoordinateSystem.
Input |
Data type |
Description |
---|---|---|
i_ifVelocitySource |
Velocity source of the linear tracking system. |
|
i_lencEncoder |
SystemConfiguration.L_ENC |
Logical encoder which is linked to the velocity source. |
i_stOffset |
Describes the shifting of the origin of the linear tracking system in relation to the robot coordinate system ET_CoordinateSystem.CSR. Unit: [mm] |
|
i_etOrientationConvention |
Convention for the rotation angles of the orientation i_stOrientation. |
|
i_stOrientation |
Describes the rotation of the linear tracking system in relation to the robot coordinate system ET_CoordinateSystem.CSR. Unit: [°] |
|
i_xInvertDirectionX |
BOOL |
Invert the positive X direction of the linear tracking system. |
i_xInvertDirectionY |
BOOL |
Invert the positive Y direction of the linear tracking system. |
i_xInvertDirectionZ |
BOOL |
Invert the positive Z direction of the linear tracking system. |
Output |
Data type |
Description |
---|---|---|
q_etDiag |
General, library-independent statement on the diagnostic. A value not equal to GD.ET_Diag.Ok corresponds to a diagnostic message. |
|
q_etDiagExt |
POU-specific output for the diagnostic. q_etDiag = ET_Diag.Ok -> Status message q_etDiag <> ET_Diag.Ok -> Diagnostic message |
|
q_sMsg |
STRING[80] |
Event-triggered message that gives additional information on the diagnostic state. |
q_stDirectionEx |
Direction vector of the positive cartesian X axis of the linear tracking system in robot coordinate system ET_CoordinateSystem.CSR. |
|
q_stDirectionEy |
Direction vector of the positive cartesian Y axis of the linear tracking system in robot coordinate system ET_CoordinateSystem.CSR. |
|
q_stDirectionEz |
Direction vector of the positive cartesian Z axis of the linear tracking system in robot coordinate system ET_CoordinateSystem.CSR. |
q_etDiag |
q_etDiagExt |
Enumeration value |
Description |
---|---|---|---|
OK |
Ok |
0 |
Ok |
ExecutionAborted |
ConfigurationAlreadyCompleted |
105 |
The configuration is already completed. |
ExecutionAborted |
NoMoreTrackingSystemsAvailable |
166 |
There are no more tracking systems available. |
ExecutionAborted |
TransformationMissing |
113 |
The transformation is unavailable. |
ExecutionAborted |
ExternalPositionSourceConfigured |
205 |
The external position source is configured. |
ExecutionAborted |
TrackingSourceAndTrackingSystemNotPossible |
249 |
The combination of tracking source and tracking systems is not possible. |
InputParameterInvalid |
EncoderInvalid |
169 |
The encoder is invalid. |
InputParameterInvalid |
InvertDirectionXInvalid |
154 |
InvertDirectionX is invalid. |
InputParameterInvalid |
InvertDirectionYInvalid |
155 |
InvertDirectionY is invalid. |
InputParameterInvalid |
InvertDirectionZInvalid |
156 |
InvertDirectionZ is invalid. |
InputParameterInvalid |
OffsetInvalid |
152 |
The Offset is invalid. |
InputParameterInvalid |
OrientationConventionInvalid |
168 |
The orientation convention is invalid. |
InputParameterInvalid |
OrientationInvalid |
153 |
The orientation is invalid. |
InputParameterInvalid |
VelocitySourceInvalid |
167 |
The velocity source is invalid. |
UnexpectedProgramBehavior |
UnexpectedFeedback |
13 |
A feedback value was invalid. |
Enumeration name: |
ConfigurationAlreadyCompleted |
Enumeration value: |
105 |
Description: |
The configuration is already completed. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the linear tracking system was unsuccessful. |
The configuration of the robot has already been completed. The method ConfigDone(...) has already been called up successfully. |
Ensure that the configuration method AddLinearTrackingSystem(...) is not called after the configuration has been completed. |
Enumeration name: |
EncoderInvalid |
Enumeration value: |
169 |
Description: |
The encoder is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the linear tracking system was unsuccessful. |
The type of the object transferred at the input i_lencEncoder is invalid. |
At the input i_lencEncoder, an object of type SystemConfiguration.L_ENC_TYPE must be transferred. |
- |
The logical encoder transferred at the input i_lencEncoder is not enabled. |
The value of the parameter Enable of the logical encoder, transferred at the input i_lencEncoder, must be TRUE. |
- |
The logical encoder transferred at the input i_lencEncoder is already coupled to an object. |
Do not call the function SystemInterface.FC_SetMasterEncoder(...) to couple the logical encoder to another object. |
- |
The phase generator of the logical encoder transferred at the input i_lencEncoder is enabled. |
The value of the parameter PhaseEnable of the logical encoder, transferred at the input i_lencEncoder, must be FALSE. |
- |
The gear of the logical encoder transferred at the input i_lencEncoder is enabled. |
The value of the parameter GearEnable of the logical encoder, transferred at the input i_lencEncoder, must be FALSE. |
- |
The coupling of the logical encoder transferred at the input i_lencEncoder is enabled. |
The value of the parameter EngageEnable of the logical encoder, transferred at the input i_lencEncoder, must be FALSE. |
- |
The velocity source transferred at the input i_ifVelocitySource implements the interface SystemConfigurationItf.IF_MechanicMandatory. The value of the parameter Direction of the logical encoder, transferred at the input i_lencEncoder, does not match to the value of the parameter Direction of the velocity source transferred at the input i_ifVelocitySource. |
Ensure that both values are equal. |
- |
The velocity source transferred at the input i_ifVelocitySource implements the interface SystemConfigurationItf.IF_MechanicMandatory. The value of the parameter GearIn of the logical encoder, transferred at the input i_lencEncoder, does not match to the value of the parameter GearIn of the velocity source transferred at the input i_ifVelocitySource. |
Ensure that both values are equal. |
- |
The velocity source transferred at the input i_ifVelocitySource implements the interface SystemConfigurationItf.IF_MechanicMandatory. The value of the parameter GearOut of the logical encoder, transferred at the input i_lencEncoder, does not match to the value of the parameter GearOut of the velocity source transferred at the input i_ifVelocitySource. |
Ensure that both values are equal. |
- |
The velocity source transferred at the input i_ifVelocitySource implements the interface SystemConfigurationItf.IF_MechanicMandatory. The value of the parameter FeedConstant of the logical encoder, transferred at the input i_lencEncoder, does not match to the value of the parameter FeedConstant of the velocity source transferred at the input i_ifVelocitySource. |
Ensure that both values are equal. |
Enumeration name: |
ExternalPositionSourceConfigured |
Enumeration value: |
205 |
Description: |
The external position source is configured. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the linear tracking system was unsuccessful. |
An external position source for the robot components cartesian, orientation and auxiliary axes is configured. |
Configuring a linear tracking system is not possible when an external position source for the robot components is configured. Do not configure a linear tracking system. |
Enumeration name: |
InvertDirectionXInvalid |
Enumeration value: |
154 |
Description: |
InvertDirectionX is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the linear tracking system was unsuccessful. |
A two-dimensional transformation, in the YZ plane, is configured. |
Ensure that the input i_xInvertDirectionX is set to FALSE. |
Enumeration name: |
InvertDirectionYInvalid |
Enumeration value: |
155 |
Description: |
InvertDirectionY is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the linear tracking system was unsuccessful. |
A two-dimensional transformation, in the XZ plane, is configured. |
Ensure that the input i_xInvertDirectionY is set to FALSE. |
Enumeration name: |
InvertDirectionZInvalid |
Enumeration value: |
156 |
Description: |
InvertDirectionZ is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the linear tracking system was unsuccessful. |
A two-dimensional transformation, in the XY plane, is configured. |
Ensure that the input i_xInvertDirectionZ is set to FALSE. |
Enumeration name: |
NoMoreTrackingSystemsAvailable |
Enumeration value: |
166 |
Description: |
There are no more tracking systems available. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the linear tracking system was unsuccessful. |
No more tracking systems of the robot can be configured. |
The maximum number of configurable tracking systems is Gc_udiMaxNumberOfTrackingSystems. |
Enumeration name: |
OffsetInvalid |
Enumeration value: |
152 |
Description: |
The Offset is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the linear tracking system was unsuccessful. |
A two-dimensional transformation, in the XY plane, is configured. |
Ensure that the input i_stOffset.lrZ is set to 0. |
A two-dimensional transformation, in the XZ plane, is configured. |
Ensure that the input i_stOffset.lrY is set to 0. |
|
A two-dimensional transformation, in the YZ plane, is configured. |
Ensure that the input i_stOffset.lrX is set to 0. |
Enumeration name: |
Ok |
Enumeration value: |
0 |
Description: |
Ok |
The configuration of the linear tracking system was successful.
Enumeration name: |
OrientationConventionInvalid |
Enumeration value: |
168 |
Description: |
The orientation convention is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the linear tracking system was unsuccessful. |
The value transferred at the input i_etOrientationConvention is invalid. |
At the input i_etOrientationConvention, a value of ET_OrientationConvention must be transferred. |
Enumeration name: |
OrientationInvalid |
Enumeration value: |
153 |
Description: |
The orientation is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the linear tracking system was unsuccessful. |
A two-dimensional transformation, in the XY plane, is configured. |
Ensure that the inputs i_stOrientation.lrX and i_stOrientation.lrY are set to 0. |
A two-dimensional transformation, in the XZ plane, is configured. |
Ensure that the inputs i_stOrientation.lrX and i_stOrientation.lrZ are set to 0. |
|
A two-dimensional transformation, in the YZ plane, is configured. |
Ensure that the inputs i_stOrientation.lrY and i_stOrientation.lrZ are set to 0. |
Enumeration name: |
TrackingSourceAndTrackingSystemNotPossible |
Enumeration value: |
249 |
Description: |
The combination of tracking source and tracking systems is not possible. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the tracking system was not successful. |
The combination of tracking source and tracking systems is not possible. |
Ensure that no tracking system is configured for the robot when a tracking source must be used. For linear or rotary tracking, tracking sources must be used. Always use tracking sources instead of tracking systems for new projects. |
Enumeration name: |
TransformationMissing |
Enumeration value: |
113 |
Description: |
The transformation is unavailable. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the linear tracking system was unsuccessful. |
There is no transformation of the robot configured. |
Ensure that the transformation of the robot is configured before adding a linear tracking system. |
Enumeration name: |
UnexpectedFeedback |
Enumeration value: |
13 |
Description: |
A feedback value was invalid. |
The configuration of the linear tracking system was unsuccessful.
Adding the linear tracking system was aborted because of an invalid feedback value.
Enumeration name: |
VelocitySourceInvalid |
Enumeration value: |
167 |
Description: |
The velocity source is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The configuration of the linear tracking system was unsuccessful. |
The velocity source transferred at the input i_ifVelocitySource is invalid. |
A valid interface (SystemConfigurationItf.IF_IdentificationMandatory) of a velocity source must be transferred at the input i_ifVelocitySource. Valid objects are for example drives, virtual encoders, Incremental encoders, and so on. |
The transferred object at the input i_ifVelocitySource is of type SystemConfiguration.L_ENC_TYPE. |
Objects of type SystemConfiguration.L_ENC_TYPE are not valid as a velocity source. |