42
TRIO MP-245A MICROMANIPULATOR SYSTEM QUICK REFERENCE – REV. 3.12B (20191001) (FW V3.12)
D.3.
External Control
Controlling the TRIO MP-245A externally via
computer is accomplished by sending commands
over the USB interface between the computer and
the USB connector on the rear panel of the TRIO
MP-245A controller/ROE. The USB device driver for
Windows is downloadable from Sutter Instrument’s
web site (
). The TRIO MP-245A
requires Sutter Instrument’s USB CDM (Combined
Driver Model) Version 2.10.00 or higher. The CDM
device driver consists of two device drivers: 1) USB
device driver, and 2) VCP (Virtual COM Port) device
driver. Install the USB device driver first, followed
by the VCP device driver. The VCP device driver
provides a serial RS-232 I/O interface between a
Windows application and the TRIO MP-245A.
Although the VCP device driver is optional, its
installation is recommended even if it is not going to
be used. Once installed, the VCP can be enabled or
disabled.
The CDM device driver package provides two I/O
methodologies over which communications with the
controller over USB can be conducted: 1) USB
Direct (D2XX mode), or 2) Serial RS-232
asynchronous via the VCP device driver (VCP
mode). The first method requires that the VCP
device driver not be installed, or if installed, that it
be disabled. The second method requires that the
VCP be installed and enabled.
Virtual COM Port (VCP) Serial Port Settings: The
following table lists the required RS-232 serial
settings for the COM port (COM3, COM5, etc.)
generated by the installation or enabling of the VCP
device driver.
Table
D-3
. USB-VCP interface serial port settings.
Property
Setting
Data (“Baud”) Rate (bits per second (bps))
57600
Data Bits
8
Stop Bits
1
Parity
None
Flow Control
None
The settings shown in the above table can be set in
the device driver’s properties (via the Device
Manager if in Windows) and/or programmatically in
your application.
Protocol and Handshaking: Command sequences do
not have terminators. All commands return an
ASCII CR (Carriage Return; 13 decimal, 0D
hexadecimal) to indicate that the task associated
with the command has completed. When the
controller completes the task associated with a
command, it sends ASCII CR back to the host
computer indicating that it is ready to receive a new
command. If a command returns data, the last byte
returned is the task-completed indicator.
Command Sequence Formatting: Each command
sequence consists of at least one byte, the first of
which is the “command byte”. Those commands
that have parameters or arguments require a
sequence of bytes that follow the command byte. No
delimiters are used between command sequence
arguments, and command sequence terminators are
not used. Although most command bytes can be
expressed as ASCII displayable/printable characters,
the rest of a command sequence must generally be
expressed as a sequence of unsigned byte values (0-
255 decimal; 00 – FF hexadecimal, or 00000000 –
11111111 binary). Each byte in a command
sequence transmitted to the controller must contain
an unsigned binary value. Attempting to code
command sequences as “strings” is not advisable.
Any command data returned by the controller
should be initially treated as a sequence of unsigned
byte values upon reception. Groups of contiguous
bytes can later be combined to form larger values, as
appropriate (e.g., 2 bytes into 16-bit “word”, or 4
bytes into a 32-bit “long” or “double word”). For the
TRIO MP-245A, all axis position values (number of
microsteps) are stored as “unsigned long” 32-bit
positive-only values, and each is transmitted and
received to and from the controller as four
contiguous bytes.
Axis Position Command Parameters: All axis
positional information is exchanged between the
controller and the host computer in terms of
microsteps. Conversion between microsteps and
microns (micrometers) is the responsibility of the
software running on the host computer (see
Microns/microsteps conversion
table for conversion
factors).
Microsteps are stored as positive 32-bit values
(“long” (or optionally, “signed long”), or “unsigned
long” for C/C++; “I32” or “U32” for LabVIEW).
“Unsigned” means the value is always positive;
negative values are not allowed. The positive-only
values can also be stored in signed type variables, in
which case care must be taken to ensure that only
positive values are exchanged with the controller.
The 32-bit value consists of four contiguous bytes,
with a byte/bit-ordering format of Little Endian
(“Intel”) (most significant byte (MSB) in the first
byte and least significant (LSB) in the last byte). If
the platform on which your application is running is
Little Endian, then no byte order reversal of axis
position values is necessary. Examples of platforms
using Little Endian formatting include any system
using an Intel/AMD processor (including Microsoft
Windows and Apple Mac OS X).
If the platform on which your application is running
is Big Endian (e.g., Motorola PowerPC CPU), then
Summary of Contents for TRIO MP-245A
Page 3: ......
Page 4: ......
Page 52: ...50 TRIO MP 245A MICROMANIPULATOR SYSTEM QUICK REFERENCE REV 3 12B 20191001 FW V3 12 NOTES...