The 5A 3V-14V Dual DC Motor Drive Module is a versatile motor driver designed to control two DC motors simultaneously. It supports bidirectional control and speed regulation, making it ideal for robotics, automation systems, and other motor-driven applications. With a maximum current capacity of 5A per channel and an operating voltage range of 3V to 14V, this module is suitable for a wide variety of low- to medium-power motors.
The module typically has the following pin layout:
Pin Name | Description |
---|---|
VCC |
Power supply for the motors (3V to 14V DC). |
GND |
Ground connection for the module. |
IN1 |
Control input for Motor A direction (logic HIGH/LOW). |
IN2 |
Control input for Motor A direction (logic HIGH/LOW). |
IN3 |
Control input for Motor B direction (logic HIGH/LOW). |
IN4 |
Control input for Motor B direction (logic HIGH/LOW). |
ENA |
PWM input for speed control of Motor A. |
ENB |
PWM input for speed control of Motor B. |
OUT1 |
Output terminal for Motor A. |
OUT2 |
Output terminal for Motor A. |
OUT3 |
Output terminal for Motor B. |
OUT4 |
Output terminal for Motor B. |
Note: Some modules may include additional pins for features like current sensing or enable/disable functionality. Always refer to the specific datasheet for your module.
VCC
pin to a DC power source (3V-14V) and the GND
pin to ground.OUT1
and OUT2
, and Motor B to OUT3
and OUT4
.IN1
and IN2
to control the direction of Motor A.IN3
and IN4
to control the direction of Motor B.ENA
and ENB
to control the speed of Motor A and Motor B, respectively.IN1
, IN2
, IN3
, IN4
, ENA
, ENB
) are compatible with the module's logic voltage (3.3V or 5V).Below is an example of how to control two DC motors using an Arduino UNO and the 5A Dual DC Motor Drive Module:
// Define motor control pins
#define IN1 7 // Motor A direction control pin 1
#define IN2 6 // Motor A direction control pin 2
#define ENA 5 // Motor A speed control (PWM)
#define IN3 4 // Motor B direction control pin 1
#define IN4 3 // Motor B direction control pin 2
#define ENB 2 // Motor B speed control (PWM)
void setup() {
// Set motor control pins as outputs
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(ENA, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
pinMode(ENB, OUTPUT);
}
void loop() {
// Motor A: Forward at 50% speed
digitalWrite(IN1, HIGH); // Set direction
digitalWrite(IN2, LOW);
analogWrite(ENA, 128); // Set speed (0-255)
// Motor B: Reverse at 75% speed
digitalWrite(IN3, LOW); // Set direction
digitalWrite(IN4, HIGH);
analogWrite(ENB, 192); // Set speed (0-255)
delay(5000); // Run motors for 5 seconds
// Stop both motors
analogWrite(ENA, 0); // Stop Motor A
analogWrite(ENB, 0); // Stop Motor B
delay(2000); // Wait for 2 seconds
}
Motors Not Running:
IN1
, IN2
, IN3
, IN4
, ENA
, ENB
) are correctly configured.OUT1
, OUT2
, OUT3
, OUT4
) are secure.Overheating:
Erratic Motor Behavior:
Q: Can I use this module with a 3.3V microcontroller?
A: Yes, the module is compatible with both 3.3V and 5V logic levels. Ensure the control signals match the microcontroller's logic voltage.
Q: Can I control only one motor with this module?
A: Yes, you can use just one channel (e.g., IN1
, IN2
, ENA
) to control a single motor.
Q: What happens if I reverse the power supply polarity?
A: Reversing the polarity may damage the module. Always double-check your connections before powering the module.
Q: Can I use this module to control stepper motors?
A: No, this module is designed for DC motors. Use a dedicated stepper motor driver for stepper motors.