The Pololu Simple High-Power Motor Controller makes basic control of brushed DC motors easy, with our free Simple Motor Control Center software enabling quick configuration over USB. The controller supports four interface modes: USB, TTL serial, analog voltage, and hobby radio control (RC). This version operates from 5.5 to 30 V and is efficient enough to deliver a continuous 25 A without a heat sink. It ships with the power capacitor and connectors included but not soldered in, allowing for custom installations.
The Pololu Simple Motor Controllers are versatile, general-purpose motor controllers for brushed, DC motors. A wide operating range of up to 5.5–40V and the ability to deliver up to several hundred Watts in a small form factor make these controllers suitable for many motor control applications. With a variety of supported interfaces—USB for direct connection to a computer, TTL serial for use with embedded systems, RC hobby servo pulses for use as an RC-controlled electronic speed control (ESC), and analog voltages for use with a potentiometer or analog joystick—and a wide array of configurable settings, these motor controllers make it easy to add basic control of brushed DC motors to a variety of projects. Although this motor controller has many more features than competing products, a free configuration utility (for Windows 8, 7, Vista, Windows XP, and Linux) simplifies initial setup of the device and allows for in-system testing and monitoring of the controller via USB.
For 24 V applications, we recommend the 24v12 or 24v23 versions. We strongly recommend against using the 18v7, 18v15, or 18v25 with 24 V batteries, which can significantly exceed 24 V when fully charged and are dangerously close to the maximum voltage limits of these lower-voltage controllers.
|Simple High-Power Motor Controller 18v25 or 24v23 simplified connection diagram.|
- Simple bidirectional control of one DC brush motor.
- 5.5 V to 30 V (18v7, 18v15, and 18v25) or 40 V (24v12 and 24v23) operating supply range.
- 7 A to 25 A maximum continuous current output without a heat sink, depending on controller model
- Four communication or control options:
- USB interface for direct connection to a PC.
- Logic-level (TTL) serial interface for direct connection to microcontrollers or other embedded controllers.
- Hobby radio control (RC) pulse width interface for direct connection to an RC receiver or RC servo controller.
- 0–3.3 V analog voltage interface for direct connection to potentiometers and analog joysticks.
- Simple configuration and calibration over USB with free configuration program (Windows 8, 7, Vista, Windows XP, and Linux compatible).
Note: A USB A to mini-B cable (not included) is required to connect this controller to a computer.
- Comprehensive user’s guide with plenty of connection diagrams and sample code.
- Adjustable maximum acceleration and deceleration to limit electrical and mechanical stress on the system.
- Adjustable starting speed, maximum speed, and amount of braking when speed is zero.
- Optional safety controls to avoid unexpectedly powering the motor.
- Input calibration (learning) and adjustable scaling degree for analog and RC signals.
- Under-voltage shutoff with hysteresis for use with batteries vulnerable to over-discharging (e.g. LiPo cells).
- Adjustable over-temperature threshold and response.
- Adjustable PWM frequency from 1 kHz to 22 kHz (maximum frequency is ultrasonic, eliminating switching-induced audible motor shaft vibration).
- Error LED linked to a digital ERR output, and connecting the error outputs of multiple controllers together optionally causes all connected controllers to shut down when any one of them experiences an error.
- Field-upgradeable firmware.
- USB/Serial features:
- Controllable from a computer with native USB, via serial commands sent to the device’s virtual serial (COM) port, or via TTL serial through the device’s RX/TX pins.
- Example code in C#, Visual Basic .NET, and Visual C++ is available in the Pololu USB Software Development Kit
- Optional CRC error detection to eliminate communication errors caused by noise or software faults.
- Optional command timeout (shut off motors if communication ceases).
- Supports automatic baud rate detection from 1200 bps to 500 kbps, or can be configured to run at a fixed baud rate.
- Supports standard compact and Pololu protocols as well as the Scott Edwards Mini SSC protocol and an ASCII protocol for simple serial control from a terminal program.
- Optional serial response delay for communicating with half-duplex controllers such as the Basic Stamp.
- Controllers can be easily chained together and to other Pololu serial motor and servo controllers to control hundreds of motors using a single serial line.
|Two Pololu Simple Motor Controllers enable mixed RC-control of Dagu Wild Thumper 4WD all-terrain chassis.|
- RC features:
- 1/4 µs pulse measurement resolution.
- Works with RC pulse frequencies from 10 to 333 Hz.
- Configurable parameters for determining what constitutes an acceptable RC signal.
- Two RC channels allow for single-stick (mixed) motor control, making it easy to use two simple motor controllers in tandem on an RC-controlled differential-drive robot (you might find our RC servo Y splitter cables useful for connecting two SMCs to a single RC receiver).
- RC channels can be used in any mode as limit or kill switches (e.g. use an RC receiver to trigger a kill switch on your autonomous robot).
- Battery elimination circuit (BEC) jumper can power the RC receiver with 5 V or 3.3 V.
- Analog features:
- 0.8 mV (12-bit) measurement resolution.
- Works with 0 to 3.3 V inputs.
- Optional potentiometer/joystick disconnect detection.
- Two analog channels allow for single-stick (mixed) motor control, making it easy to use two simple motor controllers in tandem on a joystick-controlled differential-drive robot.
- Analog channels can be used in any mode as limit or kill switches.
This video demonstrates the versatility of the Simple Motor Controller by showing how it can be controlled directly from the analog output of a Sharp analog distance sensor—there is no intermediate control board and no programming involved. For more information on this example, including the SMC settings file and a list of parts used, see our blog post about the demo.
Simple Motor Controller Comparison Table
The Simple Motor Controllers are available in several input voltage ranges and output current ranges:
|Absolute max voltage:||30 V||30 V||40 V||30 V||40 V|
|Recommended max voltage(1):||24 V||24 V||34 V||24 V||34 V|
|Max continuous current w/o heat sink:||7 A||15 A||12 A||25 A||23 A|
|Width:||1.1" (2.8 cm)||1.1" (2.8 cm)||1.1" (2.8 cm)||1.2" (3.1 cm)||1.2" (3.1 cm)|
|Length:||2.1" (5.3 cm)||2.1" (5.3 cm)||2.1" (5.3 cm)||2.3" (5.8 cm)||2.3" (5.8 cm)|
|Weight(2):||7 g||7 g||7 g||12 g||12 g|
|Available with connectors installed?||Yes||Yes||Yes||No||No|
1 We do not recommend using the 18v7, 18v15, or 18v25 versions with 24 V batteries, which can significantly exceed 24 V when fully charged. The 24v12 and 24v23 are the much more appropriate controller for 24 V applications.
2 This is the weight of the board without header pins, terminal blocks, or through-hole power capacitor.
Most Simple Motor Controllers are available “fully assembled”, with the power capacitor and connectors pre-installed, or with these components included but not soldered in. For example, a fully assembled 18v15 ships as shown in the left picture above, and an 18v15 with included hardware ships as shown in the right picture above (the included hardware consists of a power capacitor, a 40×1 straight 0.1" male header strip, a 5mm-pitch 4-pin terminal block, and a blue shorting block).
The connector-free version allows flexibility in choice of connectors and placement of the power capacitor (e.g. on the other side of the board) to accommodate compact installations or to make room for a heat sink.
Note: The power capacitor has a significant effect on performance; the included capacitor is the minimum size recommended, and bigger ones can be added if there is space. A bigger capacitor might be required if the power supply is poor or far (more than about a foot) from the controller.
The included terminal blocks are only rated for 16 A, so we recommend soldering thick wires directly to the connector-free version of the board and using higher-current connectors for applications that will exceed the terminal blocks’ ratings.
Warning: Take proper safety precautions when using high-power electronics. Make sure you know what you are doing when using high voltages or currents! During normal operation, this product can get hot enough to burn you. Take care when handling this product or other components connected to it.
|Size:||2.3" x 1.2" x 0.4"|
|Control interface:||USB; non-inverted TTL serial;
RC servo pulses; analog voltage2
|Minimum operating voltage:||5.5 V|
|Maximum operating voltage:||30 V|
|Continuous output current per channel:||25 A3|
|Maximum PWM frequency:||21.77 kHz|
|Maximum logic voltage:||3.3 V4|
|Reverse voltage protection?:||N|
Without included hardware.
Autodetects baud rates between 1200 and 500,000 bps, or can be set to any fixed baud rate in this range.
Typical results at room temperature without a heat sink.
All digital inputs are 5V tolerant.