Pololu TReX Dual High Power Motor Driver
The TReX Dual-Motor Controller is a versatile DC motor controller
designed to seamlessly blend autonomous and human control of small-
and medium-sized robots. The TReX can control two bidirectional and
one unidirectional motor via three independent control interfaces:
radio control (RC) servo pulses, analog voltage, and asynchronous
serial (RS-232 or TTL). It uses five input channels to receive the
RC or analog control signals. When operating in RC or analog mode,
the five channels function as follows:
* Channel 1: motor 1 speed and direction or, if in mix mode,
turn left/right
* Channel 2: motor 2 speed and direction or, if in mix mode,
go forward/reverse
* Channel 3: auxiliary (unidirectional) motor speed
* Channel 4: can be used to enable "flipped mode", which
allows invertable robots to be controlled as normal when they are
inverted
* Channel 5: determines whether the motors are controlled by
the channel inputs or the serial interface; this channel allows you
to switch between autonomous and human control at will
The serial interface can switch instantly with one of the other two
interfaces, allowing mixed autonomous and remote control. For
example, a robot could be configured to run autonomously most of the
time, but a human operator could override the autonomous function if
the robot gets stuck or into a dangerous situation. If the serial
mode is selected as the primary interface, high-resolution
measurements of all five channel input signals (be they RC pulses or
analog voltages) are made available to the autonomous robot
controller, allowing for complex and unlimited mixing of operator
control and sensor input. For example, the TReX would be a great
motor controller for a line-following robot whose overall speed is
controlled by an RC throttle, or an RC car with sensors that
autonomously dodges obstacles in its path as you drive it around.
|

|

General Specifications & Features
* operates at 6 - 16 V
* two primary motor outputs provide bidirectional control with 30 A peak and
13 A continuous
* option to use motor 1 and motor 2 outputs together to control a single,
more powerful bidirectional motor with 60 A peak and 25 A continuous
* one unidirectional auxiliary output delivers over 15 A continuous
* motors can be set to any of 128 distinct speeds in each direction,
allowing for a great deal of control
* measures approximately 1.9" x 1.9" x 0.8"*
* mode-select jumper determines which interface (asynchronous serial, RC, or
analog) is in control
* upgradable firmware
* The unit's height can be substantially reduced if you purchase the kit
version and solder it together yourself without the connectors.
RC/Analog Control Features
* high-resolution input channels: 12-bit RC pulse width measurements (1 us
accuracy) and 10-bit analog voltages measurements
* five input channels as detailed above: motor 1, motor 2, auxiliary motor,
flip mode, and serial override
* Battery Elimination Circuit (BEC) jumper lets the TReX optionally power
your RC receiver or analog controller
* mix-mode jumper allows for single-stick motor control of
differential-drive robots
* automatic calibration for your particular RC or analog controller (the
TReX can learn the channel ranges)
* the serial interface can be used to configure numerous parameters that
affect how the TReX behaves:
- the channel calibrations values (max,
min, neutral, and deadband size) can be explicitly set
- each RC channel can be set as "required";
if a required RC channel becomes too noisy or dies, the motors are
shut down until "safe-start" conditions are
met
- each channel can optionally be set as
"ignored" to ensure that noise on an unused channel won't interfere with
operation (this can be especially useful when running in analog mode)
- each channel can be reversed
- each channel can be parabolically scaled
to give less sensitive slow-speed control
- motors 1 and 2 can independently be set
to coast or variable brake while their channels are in the deadband
- motor PWM maximums can be changed,
allowing for control over how a motor speed setting relates to its actual
speed; these parameters can be used to correct for asymmetries between
motors 1 and 2 or to compensate for motor voltages that are higher than is
desirable for your particular application
- each motor can be given an acceleration
value that affects how quickly its speed increases
- each motor can be given a current limit;
motor speed will automatically adjust to try to keep its current from
exceeding this limit
* as a safety precaution, RC/analog is not given control of the motors until
the "safe-start" condition is met (the controller is not trying to drive any
of the motors, serial override is disabled, and all required channels are
present and healthy)
Serial Interface Features
* supports both RS-232 and TTL (logic level) bidirectional serial
communication
* supports 11 common baud rates ranging from 1200 to 115,200 bps
* accepts two command protocols:
- expanded protocol allows the TReX to be
daisy-chained to additional Pololu servo and motor controllers (including
other TReXes) on the same serial line
- compact protocol is two bytes shorter
than the expanded protocol and allows for both motors 1 and 2 to be
simultaneously set by sending just three bytes
* all five high-resolution channel input values can be requested using a
serial command, and the serial controller can then base its motor-control
actions in part on those values
* remapped channel input values can be requested using a serial command;
these are single-byte values that reflect what the TReX would tell the
motors to do if it were in control
* supports optional 7-bit cyclic redundancy checking (CRC-7), which provides
a robust transmission and reception error-detection method
* optional automatic motor shutdown if a serial error occurs
* optional serial timeout feature that automatically stops all motors if
there is no serial activity for a specified duration
The TReX does not require use of the serial interface to function; it will
work right out of the box as an RC/analog motor controller (or speed
control). Note that you will not have access to the full suite of features
the TReX provides if you do not make use of the serial interface, however.
Note: The TReX motor driver board is available separately as the
dual high-current motor
driver, which has additional information about how much current the
board can deliver.
Download
TReX Configurator
file
|