Site icon Circuit Ideas for You

DC Motor Speed Controller Circuit using Arduino

This project for DC Motor Speed Controller Circuit shows how to control DC motor speed using Arduino, MOSFET and potentiometer.

Arduino make PWM signal to control MOSFET gate.

MOSFET work like switch and control voltage to motor and changes speed.

Arduino speed controller is simple and with low cost.

It can control motor, light and heater.

Speed and power are easy to change in this circuit.

Programming Code:

const int motorPin = 9; // PWM pin for motor control
const int potPin = A0;

void setup() {
  pinMode(motorPin, OUTPUT);
}

void loop() {
  int potValue = analogRead(potPin);
  int motorSpeed = map(potValue, 0, 1023, 0, 255);
  analogWrite(motorPin, motorSpeed);
}

Code Explanation:

Circuit Working:

DC Motor Speed Controller Circuit  Diagram using Arduino

Parts List:

ComponentQuantity
Resistors (All resistors are 1/4 watt)
100Ω1
10k1
Potentiometer 10k1
Semiconductors
Arduino UNO1
IC 78091
MOSFET IRF5401
Diode 1N40071
DC Motor 12V 1Amp1

In this article the 12V power give power to circuit.

Arduino make PWM signal to control MOSFET.

10k potentiometer set PWM duty cycle and controls motor speed.

MOSFET work like switch and is controlled by PWM.

It changes voltage to motor.

One diode connect with motor to stop reverse EMF from motor coil.

Motor uses own 12V power.

MOSFET controls voltage and so it controls motor speed.

How to Build:

To build a DC Motor Speed Controller Circuit using Arduino following are the connections steps to follow:

Potentiometer Connection:

MOSFET Connections:

Diode and IC Connections:

Conclusion:

This project for DC Motor Speed Controller Circuit using Arduino controls DC motor speed using Arduino, MOSFET and potentiometer.

Arduino make PWM signal and MOSFET change motor voltage and potentiometer sets the speed.

Simple way to learn motor control with electronics.

References:

Controlling a DC motor using PWM and a potentiometer

Exit mobile version