SE
SARAVANA
TITLE
NET
Go to content

Stepper Driver DRV8825

Rs170.00(VAT excl.)
Add

DRV8825 Stepper Motor Driver

    


The DRV8825 stepper motor driver  is a breakout board for TEXAS’s DRV8825 microstepping bipolar stepper motor driver.
The module has a pinout and interface that are nearly identical to those of our A4988 stepper motor driver carriers, so it can be used as a higher-performance
drop-in replacement for those boards in many applications.
The DRV8825 features adjustable current limiting, overcurrent and overtemperature protection, and six microstep resolutions (down to 1/32-step).
It operates from 8.2 – 45 V and can deliver up to approximately 1.5 A per phase without a heat sink or forced air flow (rated for up to 2.2 A per coil with sufficient additional cooling).

Features:

1. Simple step and direction control interface
2. Six different step resolutions: full-step, half-step, 1/4-step, 1/8-step, 1/16-step, and 1/32-step
3. Can interface directly with 3.3 V and 5 V systems
4. Over-temperature thermal shutdown, over-current shutdown, and under-voltage lockout
5. Short-to-ground and shorted-load protection
6. 4-layer, 2 oz copper PCB for improved heat dissipation
7. Exposed solderable ground pad below the driver IC on the bottom of the PCB
8. Module size, pinout, and interface match those of our A4988 stepper motor driver carriers in most respects (see the bottom of this page for more information)
9. Adjustable current control lets you set the maximum current output with a potentiometer, which lets you use voltages above your stepper motor’s rated voltage to achieve higher step rates
10. Intelligent chopping control that automatically selects the correct current decay mode (fast decay or slow decay)
11. 45 V maximum supply voltage
12. Built-in regulator (no external logic voltage supply needed)


The DRV8825 has its own chip internal regulator, so you won't find a +Vdd connector on board

TUTORIAL LINK





Connection
The driver requires a motor supply voltage of 8.2 – 45 V to be connected across VMOT and GND. This supply should have appropriate decoupling capacitors close to the board, and it should be capable of delivering the expected stepper motor current.

Stepper motors typically have a step size specification (e.g. 1.8° or 200 steps per revolution), which applies to full steps. A microstepping driver such as the DRV8825 allows higher resolutions by allowing intermediate step locations, which are achieved by energizing the coils with intermediate current levels. For instance, driving a motor in quarter-step mode will give the 200-step-per-revolution motor 800 microsteps per revolution by using four different current levels.

The resolution (step size) selector inputs (MODE0, MODE1, and MODE2) enable selection from the six step resolutions according to the table above. All three selector inputs have internal 100kΩ pull-down resistors, so leaving these three microstep selection pins disconnected results in full-step mode. For the microstep modes to function correctly, the current limit must be set low enough (see below) so that current limiting gets engaged. Otherwise, the intermediate current levels will not be correctly maintained, and the motor will skip microsteps.

Control inputs

Each pulse to the STEP input corresponds to one microstep of the stepper motor in the direction selected by the DIR pin. These inputs are both pulled low by default through internal 100kΩ pull-down resistors. If you just want rotation in a single direction, you can leave DIR disconnected.

The chip has three different inputs for controlling its power states: RESET, SLEEP, and ENBL. For details about these power states, see the datasheet.

Current limiting
The way to set the current limit is to measure the voltage on the “ref” pin and to calculate the resulting current limit (the current sense resistors are 0.100Ω). The ref pin voltage is accessible on a via that is circled on the bottom silkscreen of the circuit board. The current limit relates to the reference voltage as follows:

Current Limit = VREF × 2


Arduino Example Code

int dirPin = 8;
int stepperPin = 7;

void setup() {
pinMode(dirPin, OUTPUT);
pinMode(stepperPin, OUTPUT);
}
void step(boolean dir,int steps) {
digitalWrite(dirPin,dir);
delay(50);
for(int i=0;i<steps;i++) {
  digitalWrite(stepperPin, HIGH);
  delayMicroseconds(800);
  digitalWrite(stepperPin, LOW);
  delayMicroseconds(800);}
}

void loop() {
step(true,1600);
delay(500);
step(false,1600*5);
delay(500);
}

DRV8825 DATASHEET

Back to content