Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use 7A Dual SKU DRI004 motor driver: Examples, Pinouts, and Specs

Image of 7A Dual SKU DRI004 motor driver
Cirkit Designer LogoDesign with 7A Dual SKU DRI004 motor driver in Cirkit Designer

DFRobot 7A Dual SKU DRI004 Motor Driver Documentation

1. Introduction

The DFRobot 7A Dual SKU DRI004 Motor Driver is a high-performance motor driver designed to control two DC motors simultaneously. With a maximum current capacity of 7A per channel, this motor driver is ideal for robotics, automation, and other applications requiring precise motor control. Its compact design and robust features make it suitable for hobbyists and professionals alike.

Common Applications:

  • Robotics (e.g., mobile robots, robotic arms)
  • Automated guided vehicles (AGVs)
  • Conveyor belt systems
  • Smart home devices (e.g., motorized curtains, doors)
  • DIY projects involving DC motor control

This motor driver is compatible with microcontrollers like Arduino, Raspberry Pi, and other development boards, making it versatile and easy to integrate into various projects.


2. Technical Specifications

The following table outlines the key technical specifications of the DFRobot 7A Dual SKU DRI004 Motor Driver:

Parameter Specification
Operating Voltage 6V - 27V
Maximum Current (per channel) 7A
Control Logic Voltage 3.3V - 5V
Number of Channels 2 (dual motor control)
PWM Frequency Up to 20 kHz
Dimensions 60mm x 50mm x 15mm
Weight 30g
Operating Temperature -20°C to 85°C

Pin Configuration and Descriptions

The motor driver has a simple pinout for easy integration. Below is the pin configuration:

Pin Name Type Description
VIN Power Input Connect to the motor power supply (6V - 27V).
GND Ground Common ground for the motor driver and control system.
IN1 Control Input Input signal to control Motor 1 direction.
IN2 Control Input Input signal to control Motor 1 direction.
IN3 Control Input Input signal to control Motor 2 direction.
IN4 Control Input Input signal to control Motor 2 direction.
ENA PWM Input PWM signal to control the speed of Motor 1.
ENB PWM Input PWM signal to control the speed of Motor 2.
OUT1 Motor Output Connect to one terminal of Motor 1.
OUT2 Motor Output Connect to the other terminal of Motor 1.
OUT3 Motor Output Connect to one terminal of Motor 2.
OUT4 Motor Output Connect to the other terminal of Motor 2.

3. Usage Instructions

Connecting the Motor Driver to an Arduino UNO

To use the DFRobot 7A Dual SKU DRI004 Motor Driver with an Arduino UNO, follow these steps:

  1. Power Supply:

    • Connect the VIN pin to a DC power source (6V - 27V) suitable for your motors.
    • Connect the GND pin to the ground of the power source and the Arduino.
  2. Motor Connections:

    • Connect the terminals of Motor 1 to OUT1 and OUT2.
    • Connect the terminals of Motor 2 to OUT3 and OUT4.
  3. Control Pins:

    • Connect IN1, IN2, IN3, and IN4 to digital pins on the Arduino.
    • Connect ENA and ENB to PWM-capable pins on the Arduino for speed control.
  4. Arduino Code:

    • Use the following example code to control the motors.

Example Arduino Code

// Example code to control two DC motors using the DFRobot 7A Dual SKU DRI004 Motor Driver

// Define motor control pins
#define IN1 7  // Motor 1 direction control pin
#define IN2 6  // Motor 1 direction control pin
#define ENA 5  // Motor 1 speed control (PWM pin)
#define IN3 4  // Motor 2 direction control pin
#define IN4 3  // Motor 2 direction control pin
#define ENB 2  // Motor 2 speed control (PWM pin)

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 1: Forward at 50% speed
  digitalWrite(IN1, HIGH);
  digitalWrite(IN2, LOW);
  analogWrite(ENA, 128); // 50% duty cycle (0-255)

  // Motor 2: Reverse at 75% speed
  digitalWrite(IN3, LOW);
  digitalWrite(IN4, HIGH);
  analogWrite(ENB, 192); // 75% duty cycle (0-255)

  delay(2000); // Run motors for 2 seconds

  // Stop both motors
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, LOW);
  digitalWrite(IN3, LOW);
  digitalWrite(IN4, LOW);
  analogWrite(ENA, 0);
  analogWrite(ENB, 0);

  delay(2000); // Wait for 2 seconds
}

Important Considerations:

  • Ensure the motor power supply voltage matches the motor's operating voltage.
  • Do not exceed the maximum current rating of 7A per channel.
  • Use appropriate heat dissipation methods if operating at high currents for extended periods.
  • Always connect the GND pin of the motor driver to the GND of the Arduino to ensure a common ground.

4. Troubleshooting and FAQs

Common Issues and Solutions

Issue Possible Cause Solution
Motors not running Incorrect wiring or loose connections Double-check all connections and ensure proper wiring.
Motors running in the wrong direction IN1/IN2 or IN3/IN4 signals are swapped Reverse the connections of the control pins for the affected motor.
Motor speed not changing PWM signal not properly configured Ensure ENA and ENB are connected to PWM-capable pins on the Arduino.
Overheating of the motor driver Exceeding current rating or poor ventilation Reduce motor load or improve heat dissipation (e.g., add a heatsink).
Arduino resets when motors start Power supply voltage drop Use a separate power supply for the motors and the Arduino.

Frequently Asked Questions (FAQs)

  1. Can I use this motor driver with a 3.3V microcontroller?

    • Yes, the control logic voltage range is 3.3V to 5V, making it compatible with 3.3V systems.
  2. What type of motors can I use with this driver?

    • This driver is designed for brushed DC motors with an operating voltage between 6V and 27V.
  3. How do I control motor speed?

    • Use a PWM signal on the ENA (Motor 1) and ENB (Motor 2) pins to control the speed.
  4. Can I control only one motor with this driver?

    • Yes, you can use only one channel if needed. Leave the unused channel unconnected.

This documentation provides a comprehensive guide to using the DFRobot 7A Dual SKU DRI004 Motor Driver. Whether you're a beginner or an experienced user, this motor driver is a reliable choice for your DC motor control needs.

Explore Projects Built with 7A Dual SKU DRI004 motor driver

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Battery-Powered Dual DC Motor Control System with IR Sensors
Image of Walking Machine: A project utilizing 7A Dual SKU DRI004 motor driver in a practical application
This circuit is a dual-motor control system powered by a 3xAA battery pack, utilizing two IR sensors and a 74HC00 NAND gate to control an MX1508 DC motor driver. The IR sensors provide input signals to the NAND gate, which then drives the motor driver to control the operation of two DC motors.
Cirkit Designer LogoOpen Project in Cirkit Designer
Stepper Motor Control System with SIMATIC S7-300 and TB6600 Driver
Image of Copy of PLC-Based Step Motor Speed and Direction Control System: A project utilizing 7A Dual SKU DRI004 motor driver in a practical application
This circuit controls a stepper motor using a tb6600 micro stepping motor driver and a DKC-1A stepper motor controller. The system is powered through panel mount banana sockets and includes a relay module for additional control, interfaced with a SIMATIC S7-300 PLC for automation.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered Remote-Controlled Dual Motor System with Cytron URC10
Image of URC10 SUMO RC: A project utilizing 7A Dual SKU DRI004 motor driver in a practical application
This circuit is a remote-controlled dual DC motor driver system powered by a 3S LiPo battery. It uses a Cytron URC10 motor driver to control two GM25 DC motors based on signals received from an R6FG receiver, with a rocker switch for power control and a 7-segment panel voltmeter for monitoring the battery voltage.
Cirkit Designer LogoOpen Project in Cirkit Designer
Stepper Motor Control System with TB6600 Driver and DKC-1A Controller
Image of Copy of Copy of PLC-Based Step Motor Speed and Direction Control System: A project utilizing 7A Dual SKU DRI004 motor driver in a practical application
This circuit controls a bipolar stepper motor using a tb6600 micro stepping motor driver and a DKC-1A stepper motor controller. The system is powered by a 24VDC power supply and includes a relay module for additional control functionalities.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with 7A Dual SKU DRI004 motor driver

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Walking Machine: A project utilizing 7A Dual SKU DRI004 motor driver in a practical application
Battery-Powered Dual DC Motor Control System with IR Sensors
This circuit is a dual-motor control system powered by a 3xAA battery pack, utilizing two IR sensors and a 74HC00 NAND gate to control an MX1508 DC motor driver. The IR sensors provide input signals to the NAND gate, which then drives the motor driver to control the operation of two DC motors.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Copy of PLC-Based Step Motor Speed and Direction Control System: A project utilizing 7A Dual SKU DRI004 motor driver in a practical application
Stepper Motor Control System with SIMATIC S7-300 and TB6600 Driver
This circuit controls a stepper motor using a tb6600 micro stepping motor driver and a DKC-1A stepper motor controller. The system is powered through panel mount banana sockets and includes a relay module for additional control, interfaced with a SIMATIC S7-300 PLC for automation.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of URC10 SUMO RC: A project utilizing 7A Dual SKU DRI004 motor driver in a practical application
Battery-Powered Remote-Controlled Dual Motor System with Cytron URC10
This circuit is a remote-controlled dual DC motor driver system powered by a 3S LiPo battery. It uses a Cytron URC10 motor driver to control two GM25 DC motors based on signals received from an R6FG receiver, with a rocker switch for power control and a 7-segment panel voltmeter for monitoring the battery voltage.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Copy of Copy of PLC-Based Step Motor Speed and Direction Control System: A project utilizing 7A Dual SKU DRI004 motor driver in a practical application
Stepper Motor Control System with TB6600 Driver and DKC-1A Controller
This circuit controls a bipolar stepper motor using a tb6600 micro stepping motor driver and a DKC-1A stepper motor controller. The system is powered by a 24VDC power supply and includes a relay module for additional control functionalities.
Cirkit Designer LogoOpen Project in Cirkit Designer