Hackster is hosting Hackster Holidays, Ep. 7: Livestream & Giveaway Drawing. Watch previous episodes or stream live on Friday!Stream Hackster Holidays, Ep. 7 on Friday!
Alex Glow
Published

Transistors for Robotics: Arduino Basics

Your powerful friend, the transistor can control high-voltage motors and lights from a microcontroller pin.

BeginnerProtip1 hour40,635
Transistors for Robotics: Arduino Basics

Things used in this project

Hardware components

Arduino Mega 2560
Arduino Mega 2560
×1
General Purpose Transistor NPN
General Purpose Transistor NPN
×1
DC motor (generic)
×1

Software apps and online services

Arduino IDE
Arduino IDE

Story

Read more

Schematics

1. 5V motor control with Arduino

2. 9V motor control with Arduino

Make sure your transistor is designed to handle this much power! If not, you might end up with an always-on device.

Code

Arduino example sketch: "Blink"

C/C++
The basic on/off "Blink" sketch from the Arduino IDE.
/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.

  Most Arduinos have an on-board LED you can control. On the Uno and
  Leonardo, it is attached to digital pin 13. If you're unsure what
  pin the on-board LED is connected to on your Arduino model, check
  the documentation at http://www.arduino.cc

  This example code is in the public domain.

  modified 8 May 2014
  by Scott Fitzgerald
 */


// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin 13 as an output.
  pinMode(13, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(13, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);              // wait for a second
  digitalWrite(13, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);              // wait for a second
}

Credits

Alex Glow
149 projects • 1594 followers
The Hackster team's resident Hardware Nerd. I love robots, music, EEG, wearables, and languages. FIRST Robotics kid.

Comments