TRIO MPC-145 SERIES MICROMANIPULATOR SYSTEM OPERATION MANUAL – REV. 2.62C (20191001) (FW V2.62)
50
Command
Tx/-
Delay/-
Rx
Ver. Total
Bytes
Byte
Offset
(Len.)
Value
Alt-
key-
pad #
Ctrl-
char
ASCII
def./-
char.
Description
Dec. Hex. Binary
Move to
specified Z
axis Position
(‘z’ or ‘Z’)
Tx
All
5
0
122
or
92
7A
or
5C
0111 1010
or
0101 1100
0122
or
0092
‘z’
or
‘Z’
Command. Move Z-axis to specified
position (see
Ranges
table).
1 (4)
Z µsteps
Rx
All
1
0
13
0D 0000 1101
<CR>
Completion indicator
Enter Angle
(‘A’)
Tx
All
2
0
65
41 0100 0001 0065
‘A’
Command. Sets the angle value, in
degrees, to match the angle position
of the rotary dovetail.
1
0
-
90
00
-
5A
0000 0000
-
0101 1010
0000
-
0090
<NUL>
-
‘z’
Angle in degrees between 0 and 90.
See
Angle Setting & Movement
note
Rx
All
1
0
13
0D 0000 1101
<CR>
Completion indicator
Recalibrate
(‘R’)
Tx
2.6
1
0
82
52 0101 0010 0082
‘R’
Command. Causes the currently
active manipulator to recalibrate.
Rx
2.6
1
0
13
0D 0000 1101
<CR>
Completion indicator
Query
Moving State
(‘q’ or ‘Q’)
Tx
2.6
1
0
81
or
113
51
or
71
1001 0001
or
0111 0001
0081
or
0113
‘q’
or
‘Q’
Command. Reports the state of
movement for each device.
Rx
2.6
3
0
0
00 0000 0000
^@ <NUL>
Device 1: Not moving
1
01 0000 0001
^A <SOH>
Device 1: Movement in progress
1
0
00 0000 0000
^@ <NUL>
Device 2: Not moving
1
01 0000 0001
^A <SOH>
Device 2: Movement in progress
2
13
0D 0000 1101
<CR>
Completion indicator
NOTES:
1.
Task-Complete Indicator: All commands will send back to the
computer the “Task-Complete Indicator” to signal the
command and its associated function in controller is
complete. The indicator consists of one (1) byte containing a
value of 13 decimal (0D hexadecimal), and which represents
an ASCII CR (Carriage Return).
2.
Intercommand Delay: A short delay (usually around 2 ms) is
recommended between commands (after sending a command
sequence and before sending the next command).
3.
Clearing Send/Receive Buffers: Clearing (purging) the
transmit and receive buffers of the I/O port immediately
before sending any command is recommended.
4.
Positions in Microsteps: All positions sent to and received
from the controller are in microsteps (µsteps). See
Microns/-
microsteps conversion table) for conversion between µsteps
and microns (micrometers (µm)).
5.
Ranges and Bounds: See
Ranges and Bounds table for exact
minimum and maximum values for each axis of each
compatible device that can be connected. All move commands
must include positive values only for positions – negative
positions must never be specified. All positions are absolute
as measured from the physical beginning of travel of a
device’s axis. In application programming, it is important
that positional values be checked (>= 0 and <= max.) to
ensure that a negative absolute position is never sent to the
controller and that end of travel is not exceeded. All
computational relative positioning must always resolve to
accurate absolute positions.
6.
Absolute Positioning System Origin: The Origin is set to a
physical position of travel to define absolute position 0. The
physical Origin position is fixed at beginning of travel (BOT).
This means that all higher positions (towards end of travel
(EOT)) are positive values; there are no lower positions and
therefore no negative values are allowed.
7.
Absolute vs. Relative Positioning: Current position (‘c’) and
move commands always use absolute positions. All positions
can be considered “relative” to the Origin (Position 0), but all
are in fact absolute positions. Any position that’s considered
to be “relative” to the current position, whatever that might
be, can be handled synthetically by external programming.
However, care should be taken to ensure that all relative
positions are accurately translated to correct absolute
positions before initiating a move command.
8.
Position Value Typing: All positions sent and received to and
from the controller are in microsteps and consist of 32-bit
integer values (four contiguous bytes). Position values can be
either positive or negative, so type must be “signed”.
Although each positional value is transmitted to, or received
from, the controller as a sequence of four (4) contiguous
bytes, for computer application computational and storage
purposes each should be typed as a signed integer (“long” or
“signed long” in C/C++; “I32” in LabVIEW, etc.). Note that
in Python, incorporating the optional NumPy package brings
robust data typing like that used in C/C++ to your program,
simplifying coding and adding positioning accuracy to the
application.