

The RioRand 350 W 6-60 V PWM DC motor controller is a versatile and efficient device designed for precise speed control of DC motors. It utilizes Pulse Width Modulation (PWM) technology to regulate motor speed while maintaining high efficiency and low power loss. This controller is ideal for applications requiring adjustable motor speeds, such as electric fans, conveyor belts, and robotics.








The RioRand 350 W 6-60 V PWM DC motor controller is designed to handle a wide range of DC motor applications. Below are its key technical details:
| Parameter | Specification |
|---|---|
| Input Voltage Range | 6 V to 60 V DC |
| Maximum Power Output | 350 W |
| Maximum Current | 20 A |
| Control Method | Pulse Width Modulation (PWM) |
| PWM Frequency | 15 kHz |
| Speed Adjustment Range | 0% to 100% |
| Operating Temperature | -20°C to 40°C |
| Dimensions | 60 mm x 55 mm x 28 mm |
| Weight | 70 g |
The RioRand PWM DC motor controller has a simple interface for connecting power, motor, and control inputs. Below is the pin configuration:
| Pin Name | Description |
|---|---|
| VIN+ | Positive input voltage (6 V to 60 V DC) |
| VIN- | Negative input voltage (ground) |
| MOTOR+ | Positive terminal for the DC motor |
| MOTOR- | Negative terminal for the DC motor |
| Potentiometer | External knob for speed adjustment (0% to 100%) |
Connect the Power Supply:
VIN+ pin.VIN- pin.Connect the DC Motor:
MOTOR+ pin.MOTOR- pin.Adjust the Speed:
Power On:
The RioRand PWM DC motor controller can be used with an Arduino UNO for automated motor control. Below is an example code snippet to control motor speed using a PWM signal from the Arduino:
// Example: Controlling RioRand PWM DC motor controller with Arduino UNO
// Connect Arduino PWM pin (e.g., D9) to the potentiometer input of the controller
const int pwmPin = 9; // PWM output pin connected to the controller
void setup() {
pinMode(pwmPin, OUTPUT); // Set the PWM pin as an output
}
void loop() {
for (int speed = 0; speed <= 255; speed++) {
analogWrite(pwmPin, speed); // Gradually increase motor speed
delay(20); // Wait 20 ms for smooth acceleration
}
delay(1000); // Hold at full speed for 1 second
for (int speed = 255; speed >= 0; speed--) {
analogWrite(pwmPin, speed); // Gradually decrease motor speed
delay(20); // Wait 20 ms for smooth deceleration
}
delay(1000); // Hold at zero speed for 1 second
}
Motor Does Not Start:
Motor Runs at Full Speed Only:
Controller Overheats:
Motor Speed is Unstable:
Can I use this controller with a 12 V motor?
What type of potentiometer is used?
Can I control the motor speed programmatically?
Is reverse motor direction supported?