EKM023 DRV8871 DC-Motordrivare
Art.nr: 41024460
Small breakout board for Texas Instruments DRV8871 Single channel DC motor driver. The driver is controlled with two PWM signals and will drive a connected DC motor in both directions. The inputs will accept both a static DC voltage to run the motor at 100% or PWM signals to vary the speed. When both inputs are low, the motor is disconnected from the driver outputs and is free to spin (coast). When both inputs are high, the motor will be braked and resist rotation.
The driver also contains a clever current limiting that can be programmed with a single resistor. Other protection features are undervoltage lockout, overcurrent protection and thermal shutdown.
In short, a very capable, low-cost, easy-to-use and reliable motor controller for all small brushed DC motors.
Included hardware:
- 2x 3.5mm 2-pin screw terminals
- 1x 2.54mm 4-pin header
Functions
- Simple bidirectional PWM motor control
- Programmable current limiting
- Thermal protection
- Wide motor voltage support
Specifications
- Supply voltage: 6.5 - 45 VDC
- Output current: max 3.6 A
- RDSon: 565 mOhm
- PWM frequency: max 200 kHz
- Logic level: min 1.5 V
- Dimensions: 24 x 20 mm
- Mounting holes: c-c 15 mm / ø2.5 mm
Connections
Supply voltage
The supply voltage range is 6.5 - 45 VDC and should be connected to EITHER the pins adjacent to IN2/IN1 OR via the screw terminals on the output side of the board. Please note that the GND pins must be connected to both the microcontroller and external power supply to establish a common ground for the driver and logic signals.
The power supply should be able to provide enough current even during peaks when the motor is stalled. Check the motor specifications to determine peak (or stall) current and choose a power supply with good margin.
The driver has an undervoltage lockout and will be disabled when the supply voltage drops below 6.5V.
Control inputs
Using DRV8871 is very simple and requires just two control pins to make the motor go forward, backward, break or coast.
The logic signals can be as low as 1.5V and will work with both 3.3V and 5V systems.
Both inputs are active-high and have internal pulldown resistors to GND.
Don't forget to connect GND to the microcontroller!
| IN1 | IN2 | OUT1 | OUT2 | DESCRIPTION |
|---|---|---|---|---|
| 0 | 0 | High-Z | High-Z | Coast; H-bridge disabled to High-Z (sleep entered after 1 ms) |
| 0 | 1 | L | H | Reverse (Current OUT2 → OUT1) |
| 1 | 0 | H | L | Forward (Current OUT1 → OUT2) |
| 1 | 1 | L | L | Brake; low-side slow decay |
Motor outputs
The motor outputs have dual patterns for either 2.54mm headers or 3.5mm screw terminals (included).
If vertical space is limited, wires can also be soldered directly to the board.
Current limiting
DRV8871 features a simple current limiting using just one resistor. The breakout board comes with a resistor pre-installed for a limit of 2A. The default current limit is usually enough to drive most small motors. It can be changed to allow the full 3.5A the driver is capable of, or to limit the current further to protect very small motors.
To change the current limit, first break the solder jumper on the back. The jumper can be severed using a sharp knife. Measure continuity between the two pads with a multimeter to ensure the jumper is fully open. The second step is to determine the new current limit and which resistor to install. Minimum allowed resistor is 15kohm (4.2A limit).
The resistor can be calculated using the following formula:
ITRIP (A) = 64 / RILIM (kΩ)
The default resistor is 30k and thus:
ITRIP (A) = 64 / 30 (kΩ)= 2.13A
For a current limit of ~1A:
ITRIP (A) = 64 / 62 (kΩ) = 1.03A
The breakout board has patterns for both an SMD 0805 resistor and a PTH 1/8W resistor.
Arduino example code
| DRV8871 Example Code | |
|---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 | |







