The MDDRC10 is a dual-channel DC motor driver manufactured by Cytron, designed to control two DC motors with a current rating of up to 10 Amps per channel. It operates within a voltage range of 7V to 30V, making it suitable for a wide variety of applications. This motor driver is specifically optimized for remote-controlled (R/C) systems, offering seamless integration with standard R/C receivers.
Parameter | Specification |
---|---|
Manufacturer | Cytron |
Part ID | MDDRC10 |
Operating Voltage Range | 7V to 30V |
Continuous Current | 10A per channel |
Peak Current | 30A per channel (for 10 seconds) |
Control Signal Input | Standard R/C PWM signal |
PWM Frequency | 50Hz to 330Hz |
Motor Channels | 2 |
Dimensions | 84mm x 62mm x 18mm |
Weight | 80g |
The MDDRC10 features a set of connectors for power, motor outputs, and control signals. Below is the pin configuration:
Pin/Connector | Description |
---|---|
VIN+ | Positive terminal for power input |
VIN- | Negative terminal (ground) for power input |
M1+ | Positive terminal for Motor 1 |
M1- | Negative terminal for Motor 1 |
M2+ | Positive terminal for Motor 2 |
M2- | Negative terminal for Motor 2 |
Pin/Connector | Description |
---|---|
CH1 | PWM signal input for Motor 1 |
CH2 | PWM signal input for Motor 2 |
GND | Ground for control signal |
VIN+
and VIN-
terminals. Ensure the power supply can handle the current requirements of the motors.M1+/M1-
and M2+/M2-
terminals. Ensure the polarity matches your desired motor direction.CH1
and CH2
pins to the PWM signal outputs of your R/C receiver or microcontroller. Use the GND
pin to establish a common ground.CH1
and CH2
pins to control the speed and direction of the motors. A neutral PWM signal (e.g., 1500µs) stops the motor, while higher or lower signals control forward or reverse motion.Below is an example of controlling the MDDRC10 with an Arduino UNO:
// Example code to control MDDRC10 with Arduino UNO
// This code generates PWM signals for two motors connected to MDDRC10
#include <Servo.h> // Library to generate R/C PWM signals
Servo motor1; // Create Servo object for Motor 1
Servo motor2; // Create Servo object for Motor 2
void setup() {
motor1.attach(9); // Attach Motor 1 control to pin 9
motor2.attach(10); // Attach Motor 2 control to pin 10
// Set both motors to neutral (stop)
motor1.writeMicroseconds(1500); // Neutral signal for Motor 1
motor2.writeMicroseconds(1500); // Neutral signal for Motor 2
}
void loop() {
// Example: Move Motor 1 forward and Motor 2 backward
motor1.writeMicroseconds(1700); // Forward signal for Motor 1
motor2.writeMicroseconds(1300); // Reverse signal for Motor 2
delay(2000); // Run motors for 2 seconds
// Stop both motors
motor1.writeMicroseconds(1500); // Neutral signal for Motor 1
motor2.writeMicroseconds(1500); // Neutral signal for Motor 2
delay(2000); // Wait for 2 seconds
}
Motors Not Running
CH1
and CH2
pins.Overheating
Motor Running in the Wrong Direction
M1+/M1-
or M2+/M2-
terminals.No Power to the Motor Driver
Can I use the MDDRC10 with a microcontroller other than Arduino? Yes, as long as the microcontroller can generate standard R/C PWM signals within the supported frequency range.
What happens if I exceed the 10A continuous current rating? The motor driver may overheat or shut down to protect itself. Prolonged operation beyond the rated current can damage the driver.
Can I control only one motor with the MDDRC10? Yes, you can use a single channel (CH1 or CH2) to control one motor while leaving the other channel unused.
Is the MDDRC10 compatible with brushless motors? No, the MDDRC10 is designed for brushed DC motors only.