How to Run a Toy DC Motor by Using Arduino

One of the most basic (and fun) things you can do with an Arduino microcontroller is wire a DC motor. You can make a simple table fan or go all in and build a remote controlled car. Either way you will need to know how to actually make a...
Part 1 of 2:

Wiring the Components

  1. How to Run a Toy DC Motor by Using Arduino Picture 1How to Run a Toy DC Motor by Using Arduino Picture 1
    Grab a jumper wire, and connect Digital Pin 3 on your Arduino to a pin of your choice on the breadboard. However, do not connect it to the Power/Ground columns on the breadboard as it will not work. (Skip to step 8 if you just want the circuit drawing)
    1. If you hold the Arduino board with the USB connector on the top, the digital pins will be on the right. Note that the digital connectors start with 0 at the bottom. Pin 3 would be the 4th one from the bottom.
    2. Place/Hold the breadboard in a way such that the two Power/Ground columns are on the leftmost and rightmost sides. Each row on the breadboard is connected horizontally and each power/ground pins are connected to one another vertically.
    3. The breadboard also has a divider down the middle. The pins on the two sides of the divider are not connected horizontally.
  2. How to Run a Toy DC Motor by Using Arduino Picture 2How to Run a Toy DC Motor by Using Arduino Picture 2
    Connect one end (we'll call this End 1) of the 270 ohm resistor on a pin on the same row as the jumper wire that's connected to Digital Pin 3. Connect the other end (End 2) of the resistor to another pin of your choice on the breadboard.
  3. How to Run a Toy DC Motor by Using Arduino Picture 3How to Run a Toy DC Motor by Using Arduino Picture 3
    Connect the Base pin (middle pin) of the PN2222 transistor to a pin on the same row as End 2 of the 270 ohm resistor. (This end is the one that is not on the same row as the wire coming in from Digital Pin 3)
    1. Hold the PN2222 transistor with the flat side facing towards you. The pin on the left is the Collector pin, and the one on the right is the Emitter pin. The Middle pin is the Base pin
  4. How to Run a Toy DC Motor by Using Arduino Picture 4How to Run a Toy DC Motor by Using Arduino Picture 4
    Grab a jumper wire and connect the Collector pin (left) of the PN2222 transistor to the GND (ground) pin on the Arduino.
  5. How to Run a Toy DC Motor by Using Arduino Picture 5How to Run a Toy DC Motor by Using Arduino Picture 5
    Connect the Positive (+) end of the 1N4001 Diode to the Emitter pin of the PN2222 Transistor. Connect the Negative (-) end on a pin on another row.
    1. The end with the sliver line is the Negative (-) end on the 1N4001 Diode. The side without the line is the Positive (+) end.
  6. How to Run a Toy DC Motor by Using Arduino Picture 6How to Run a Toy DC Motor by Using Arduino Picture 6
    Grab a jumper wire, and connect the 5V pin on the Arduino to a pin on the same row on the breadboard where you connected the Negative (-) end of the 1N4001 Diode.
  7. How to Run a Toy DC Motor by Using Arduino Picture 7How to Run a Toy DC Motor by Using Arduino Picture 7
    Grab the DC Motor. Connect the Positive leg to a pin on the same row as where you connected the Negative (-) end of the 1N4001 Diode.  Connect the Negative leg of the DC motor to a pin on the same row as where you connected the Positive (+) end of the 1N4001 Diode and the Emitter pin of the PN2222 Transistor.
  8. How to Run a Toy DC Motor by Using Arduino Picture 8How to Run a Toy DC Motor by Using Arduino Picture 8
    Your circuit is now complete. Check with the circuit diagram to see if your circuit is correct. Proceed to Part 2.
Part 2 of 2:

Writing the Code

  1. How to Run a Toy DC Motor by Using Arduino Picture 9How to Run a Toy DC Motor by Using Arduino Picture 9
    Open up the Arduino IDE on your computer. By default, it should have some of the sketch written to make everything easier:  (You can erase the comments if you wish. Step 5 has the full code)
  2. How to Run a Toy DC Motor by Using Arduino Picture 10How to Run a Toy DC Motor by Using Arduino Picture 10
    Declare the output the pin variable for the DC Motor: const int MOTORPIN = 3; (MOTORPIN can also be anything you wish it to be)
    1. const int specifies that the variable MOTORPIN is a constant integer.
  3. How to Run a Toy DC Motor by Using Arduino Picture 11How to Run a Toy DC Motor by Using Arduino Picture 11
    Go to the setup() function. Just between the curly braces, write the following to set the motor pin as an output pin: pinMode(MOTORPIN,OUTPUT);
    1. void setup() - This function runs once at the start. It will set up which pins will be used on the Arduino.
    2. pinMode (MOTORPIN, OUTPUT) - specifies that the pin outlined by MOTORPIN is an output pin and will not take in any data.
  4. How to Run a Toy DC Motor by Using Arduino Picture 12How to Run a Toy DC Motor by Using Arduino Picture 12
    Go to the loop() function. Just between the two curly braces, write following:
    1. Declare the speed variable (how fast the DC motor will spin):     int speed = 255; The value for speed has to be a number from 0 to 255, with 0 meaning the motor is stopped.
    2. In the next line, send output to the pin we will use for the DC motor by using analogWrite(): analogWrite(MOTORPIN,speed); This will send the value of speed to MOTORPIN as an output.
  5. How to Run a Toy DC Motor by Using Arduino Picture 13How to Run a Toy DC Motor by Using Arduino Picture 13
    Your code is complete.
  6. How to Run a Toy DC Motor by Using Arduino Picture 14How to Run a Toy DC Motor by Using Arduino Picture 14
    Save the file to your computer, and verify the sketch. Go to the toolbar at the top of the Arduino IDE, and click on the check mark. This will compile your sketch so that it can be run on the Arduino.
  7. How to Run a Toy DC Motor by Using Arduino Picture 15How to Run a Toy DC Motor by Using Arduino Picture 15
    Check the black box at the bottom of the Arduino IDE. If any errors were found, it should tell you there. If you get errors, check the lines that the compiler says the error is on. Continue if no errors are found.
  8. How to Run a Toy DC Motor by Using Arduino Picture 16How to Run a Toy DC Motor by Using Arduino Picture 16
    Now, using the USB cable provided with your Arduino Kit, connect your Arduino to a USB port on your computer.
  9. How to Run a Toy DC Motor by Using Arduino Picture 17How to Run a Toy DC Motor by Using Arduino Picture 17
    Go back to the Arduino IDE. Click on Tools, then on Port: and then click on COM. The will be the number of your USB "Serial Communications" port, and it will be different depending on the computer and/or the USB port. If no COM ports appear in the menu, try a different USB port, or a reboot of your computer.
  10. How to Run a Toy DC Motor by Using Arduino Picture 18How to Run a Toy DC Motor by Using Arduino Picture 18
    Click on the Upload button (arrow pointing to the right) and upload the sketch to your Arduino. The IDE will compile your code and if no errors are found, it will send the sketch to the Arduino. If you get errors, check your code.
  11. How to Run a Toy DC Motor by Using Arduino Picture 19How to Run a Toy DC Motor by Using Arduino Picture 19
    Once your code is uploaded, the DC motor should start spinning at the speed you specified in the code
5 ★ | 2 Vote