Start-Stop Dc Motor Control With Arduino





Introduction: Start-Stop Dc Motor Control With Arduino

A simple start-stop circuit that controls a small dc motor via transistor

Parts list

2 pushbuttons
2 resistors 220Ω or 330Ω
2 resistors 10kΩ or 4.7kΩ
1 transistor 2N2222
1 red LED
1 green LED
1 diode 1N4001 (or 1N4002)
1 small dc motor

Step 1: The Code and the Connections

TITLE: A simple start-stop circuit that controls a small dc motor via transistor
Created by: P.Agiakatsikas
DATE: 15/01/17
int buttonPin1 = 2; //Start button
int buttonPin2 = 3; //Stop button
int greenLedPin = 6;//green led start status int
redLedPin = 7; //red led stop status int motorPin = 9; // the motor's pin
int buttonStatus1 = 0;
int buttonStatus2 = 0;

void setup() {
pinMode(motorPin, OUTPUT);
pinMode(greenLedPin, OUTPUT); pinMode(redLedPin, OUTPUT);
pinMode(buttonPin1, INPUT);
pinMode(buttonPin2, INPUT);
void loop() {
buttonStatus1 = digitalRead(buttonPin1);
buttonStatus2 = digitalRead(buttonPin2);

if (buttonStatus1 == HIGH && buttonStatus2 == LOW) { // if the start button is pressed (AND stop button not) digitalWrite(motorPin, HIGH);// turn the motor ON
digitalWrite(greenLedPin, HIGH); //turn the green led indicator ON
digitalWrite(redLedPin, LOW); //turn the red led indicator OFF }

if (buttonStatus1 == LOW && buttonStatus2 == HIGH) { // if stop button is pressed (AND the start off)
digitalWrite(motorPin, LOW); // turn the motor OFF
digitalWrite(greenLedPin, LOW); //turn the green led indicator OFF
digitalWrite(redLedPin, HIGH); //turn the red led indicator ON

Step 2: And a Video

And a video show how it works



    • Microcontroller Contest

      Microcontroller Contest
    • Spotless Contest

      Spotless Contest
    • Science of Cooking

      Science of Cooking

    We have a be nice policy.
    Please be positive and constructive.




    The problem is the way the code is copied and pasted. Make sure all the codes are where they are supposed to be,

    So I tried this, but it's not working. I also noticed some flaws in what you said:

    a) You used 5 resistors in your diagram, but only used 4. Which resistor do I need to remove?

    b) I tried compiling the code but it looks like motorPin was never declared, so was the redLedPin. I fixed the redLedPin by declaring it as "int", but what do I declare the motorPin as?