XPS-D Controller Features Manual
Example
PositionerSGammaExactVelocityAdjustedDisplacementGet
(MyGroup.MyStage, 50.55, ExactDisplacement)
This function returns the exact displacement for that move with the exact
constant velocity set shown in the example above (10 mm/s). The result is
stored in the variable ExactDisplacement, for instance 50.552.
GroupMoveAbsolute (MyGroup.MyStage, 50.552)
In the above example, for a position of 50.55 mm, the command returns a value of
50.552. This means that in order for the positioner “MyStage” to achieve the desired
velocity in the most accurate way, the commanded position should be 50.552 mm
instead of 50.55 mm.
The XPS can report two different positions. The first one is the SetpointPosition or
theoretical position. This is the position where the stage should be according to the
profile generator.
The second position is the CurrentPosition. This is the actual position as reported by the
positioner’s encoder after taking into account all compensation. The relationship
between the SetpointPosition and the CurrentPosition is as follows:
Following error = SetpointPosition - CurrentPosition
The functions to query the SetpointPosition and the CurrentPosition values are:
GroupPositionCurrentGet() and GroupPositionSetpointGet()
3.2 Home Search
Home search is a specific motion process. Its goal is to define a reference point along
the course of travel accurately and repeatably. The need for this absolute reference point
is twofold. First, in many applications, it is important to know the exact position in
space, even after a power-off cycle. Secondly, to prevent the motion device from hitting
a travel obstruction set by the application (or its own hardware travel limits), the
controller uses software limits. To be efficient, the software limits must be referenced
accurately to the home before running the application.
After motor initialization, any motion group must first be homed or referenced before
any further motion can be executed. Here, homing refers to a predefined motion process
that moves a stage to a unique reference position and defines this as Home. Referencing
refers to a group state that allows the execution of different motions and the setting of
the position counters to any value (see next section for details). The referencing state
provides flexibility for the definition of custom home search and system recovery
processes. It should only be used by experienced users.
A number of hardware solutions may be used to determine the position of a motion
device, the most common are incremental encoders. By definition, these encoders can
only measure relative position changes and not absolute positions. The controller keeps
track of position changes by incrementing or decrementing a dedicated counter
according to the information received from the encoder. Since there is no absolute
position information, position “zero” is where the controller was powered on (and the
position counter was reset).
To determine an absolute position from incremental encoders, the controller must use a
reference position that is unique to the entire travel, called a home switch or origin
switch, usually in conjunction with an index pulse.
An important requirement is that this switch must have the same resolution as the
encoder pulses.
If the motion device uses a linear scale as a position encoder, the home switch is usually
placed on the same scale and read with the same resolution.
If, on the other hand, a rotary encoder is used, homing becomes more complicated. To
have the same resolution, a mark on the encoder disk could be used (called index pulse),
but because the mark repeats every revolution, it does not define a unique point over the
EDH0407En1032 – 11/18 10