
User Manual
E727T0005, valid for E-727
BRO, 2019-06-28
Physik Instrumente (PI) GmbH & Co. KG, Auf der Roemerstrasse 1, 76228 Karlsruhe, Germany
Page 155 / 240
Phone +49 721 4846-0, Fax +49 721 4846-1019, Email
chart above). This tells the sender that the next data fraction can be sent.
Application Layer
In the following, some examples show how the fast axis data and the slow GCS command transfer
is realized.
Axis Position Data Transfer
Data segment 1 is used for axis position data transfer.
The transfer of target positions from host to the PI-controller and the transfer of current position
values from the PI-controller to host is done in the same way. Only the interpretation of the target
values might be different, depending on the controller type (piezo controller, piezo motor
controller, DC motor controller…) and the servo mode (closed-loop operation, open-loop
operation). With E-727, both open-loop and closed-loop target values are interpreted as axis
positions, due to the settings of the output matrix (p. 34).
In any case for each axis 32-bit values are used.
The number of axes which are sent depends on the controller type and on its settings.
When less target positions are sent than axes are available in the system then only the first CNT1
axes are updated. For example when the system has 4 axes and the host sends target position data
for 3 axes than only axes 1 through 3 are permanently updated by the interface. Axis 4 remains at
its initial position.
When the number of target positions which are sent is higher than the number of axes which are
available then the controller will update the axis positions which are available and ignore the rest
of the received data. For example when the system has 3 axes but the host sends target positions
for 4 axes then the controller will update the 3 present axes and ignore the 4
th
target value.
Generally, the E-727 responds with the number of axes (CNT1) it has received from the host in the
previous cycle, provided that this number is equal to or less than 4. Exception: In the first data
packet sent by the E-727 after power-on, the number of axes is zero (CNT1 = 0).
In the following example data positions for two axes are sent and no GCS command is sent (no
data sent through data segment 2). Instead of this servo flags are transferred.
PID/
ST
CTR2/
CNT1
DS2
Axis 1
Axis 2
CRC-16
0x10
0x02
Flags B11 B12 B13 B14 B21 B22 B23 B24 BC1
BC2
where B11 through B14 are the bytes of axis 1 position value, B21 through B24 are the bytes of
axis 2 position value and BC1 and BC2 are the CRC-16 bytes.
The highest bits of the data words and the CRC-16 are send first and the lowest bits are send last,
that is, bytes B11, B21, and BC1 are the highest bytes and bytes B14, B24, and BC2 are the lowest
bytes.