Question:
After completion of a positioning profile, the system block
LS_Positioner generates the status signal
POS_bActPosInTarget. This signal is, however, reset when the system block
LS_Positioner (
POS_bEnabled = FALSE) is deactivated. How can the status signal 'Target position reached' (
POS_bActPosInTarget) be maintained when the system block
LS_Positioner is deactivated?
Answer:
Since the output signals of the system block
LS_Positioner only show the right status values as long as the system block is activated (
POS_bEnabled = TRUE), an applicative solution (function block interconnection) must be found after deactivation of the system block
LS_Positioner.
The technology application 'Positioning sequence control' includes a function block interconnection which stores this binary signal. The signal is called
DriveInTargetSaved.bQ and is indicated under C03035 'Drive in target'.
It has the following features:
- Reset through start of a new positioning process, through start of manual jog or when an error occurs.
- Independent of drive rotation.
In some applications, it is furthermore necessary to consider the current position as a function of the last target position. For this, the following interconnection can be used.
The interconnection has the following features:
- Reset through start of a new positioning process
- Depending on the current position with selection of a tolerance window
- Only active after the first complete positioning process
Function description
The last valid target position of the output
POS_dnProfileTarget_p is stored via a switch
L_TbSelect after deactivation of the positioning FB (
POS_bEnabled = FALSE). The connected comparator
L_TbCompare supplies the actual signal 'ActPosInTarget'. To ensure that there will not be output any signal by mistake before the first positioning process, the status signal will only be output after the message
POS_bDone = TRUE has been set for the first time. The below FB interconnection shows how this can be implemented for limited and unlimited measuring systems.
When using modulo measuring systems, you can temporarily store the last valid target position as described by using the FB
L_TbSelect and compare it by means of a function block for detecting switching points (e. g. FB
L_SdSwitchPoint,
L_CamContactor, ...) with a lower/upper limit.
