The DRV8833 Dual Motor Driver Carrier by Pololu is a compact and efficient motor driver board designed to control two DC motors or one stepper motor. It is capable of providing up to 1.2A continuous current per channel, making it suitable for a wide range of applications. The built-in protection features, such as over-current protection, under-voltage lockout, and thermal shutdown, ensure reliable operation even in demanding environments.
Parameter | Value |
---|---|
Operating Voltage | 2.7V to 10.8V |
Continuous Current | 1.2A per channel |
Peak Current | 2A per channel |
Control Interface | PWM (Pulse Width Modulation) |
Built-in Protections | Over-current, under-voltage, thermal |
Dimensions | 0.6" x 0.8" (15mm x 20mm) |
Pin | Name | Description |
---|---|---|
1 | VM | Motor power supply (2.7V to 10.8V) |
2 | GND | Ground |
3 | AIN1 | Control input for motor A (PWM or logic) |
4 | AIN2 | Control input for motor A (PWM or logic) |
5 | BIN1 | Control input for motor B (PWM or logic) |
6 | BIN2 | Control input for motor B (PWM or logic) |
7 | AO1 | Output for motor A |
8 | AO2 | Output for motor A |
9 | BO1 | Output for motor B |
10 | BO2 | Output for motor B |
11 | VCC | Logic power supply (2.7V to 5.5V) |
12 | nSLEEP | Sleep mode control (active low) |
13 | nFAULT | Fault indicator (active low) |
Power Supply:
Motor Connections:
Control Inputs:
// Example code to control two DC motors using DRV8833 and Arduino UNO
// Define motor control pins
const int AIN1 = 9;
const int AIN2 = 10;
const int BIN1 = 11;
const int BIN2 = 12;
void setup() {
// Set motor control pins as outputs
pinMode(AIN1, OUTPUT);
pinMode(AIN2, OUTPUT);
pinMode(BIN1, OUTPUT);
pinMode(BIN2, OUTPUT);
}
void loop() {
// Motor A forward
digitalWrite(AIN1, HIGH);
digitalWrite(AIN2, LOW);
// Motor B forward
digitalWrite(BIN1, HIGH);
digitalWrite(BIN2, LOW);
delay(1000); // Run motors for 1 second
// Motor A backward
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, HIGH);
// Motor B backward
digitalWrite(BIN1, LOW);
digitalWrite(BIN2, HIGH);
delay(1000); // Run motors for 1 second
// Stop motors
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, LOW);
digitalWrite(BIN1, LOW);
digitalWrite(BIN2, LOW);
delay(1000); // Wait for 1 second
}
Motors Not Running:
Overheating:
Fault Indicator Active (nFAULT pin low):
Erratic Motor Behavior:
By following this documentation, users can effectively utilize the DRV8833 Dual Motor Driver Carrier in their projects, ensuring reliable and efficient motor control.