← Back to Basic Projects

πŸ’‘ DC Motor as a Generator

Spin a small DC motor by hand and power an LED with the electricity you generate β€” electromagnetic induction made visible.

πŸ“‹ Overview

Every DC motor is also a generator. This no-Arduino-needed experiment demonstrates Faraday's Law of Electromagnetic Induction: when you rotate a coil inside a magnetic field, it produces an EMF (electromotive force) that drives current through a circuit.

Technical Insight: A typical 3–6V DC hobby motor, when spun by hand at ~500 RPM, generates approximately 1–2V AC (rectified to DC by the commutator). This is enough to illuminate a red or green LED (forward voltage ~2V). The output is pulsating DC proportional to RPM β€” confirmed by the LED brightness changing with spin speed.

In simple terms: The same copper windings that normally push the motor shaft around, when spun externally, generate their own voltage through the same electromagnetic principle β€” just running in reverse. You are building a miniature power plant.

What you'll learn: Faraday's Law of Induction, back-EMF concept, energy conversion (mechanical β†’ electrical), LED polarity, and why renewable energy turbines are just large versions of this exact principle.

Estimated time: 15-25 minutes (pure circuit, no code). Difficulty: ⭐ Beginner β€” great for science fair demonstration.

🧩 Components Needed

ComponentSpecificationQtyNotes
Small DC Motor3–6V, any hobby motor1NOT a stepper; must be brushed DC
Red LED2V forward voltage1Low voltage drop β€” works at ~1.8V
10Ξ© Resistor (optional)Current limiting1Protects LED from voltage spikes
Alligator Clip WiresRed and Black2Connect motor terminals to LED
Multimeter (optional)DC voltage1Measure generated voltage

πŸ—ΊοΈ Component Pin Mapping

DC Motor as a Generator Component Pin Mapping Infographic

πŸ“– Step-by-Step Tutorial

1

Connect Motor to LED

Connect one motor terminal to LED anode (+), other terminal to LED cathode (βˆ’). Polarity might need to be swapped β€” if LED does not light up, reverse the connections.
2

Add Optional Resistor

Insert a 10Ξ© resistor in series with the LED to protect it from high-speed voltage spikes.
3

Spin the Motor

Hold the motor body firmly and spin the shaft rapidly with your fingers or attach a small pinwheel. Watch the LED glow!
4

Measure Voltage

Use a multimeter on DC voltage setting across the motor terminals while spinning. Record voltages at different speeds.
5

Speed vs Brightness

Spin slower and faster. Observe the LED brightness changes proportionally. This demonstrates that output voltage scales with RPM.
πŸ’‘
For a bigger demonstration, connect two motors: one powered by a battery (acts as motor) and one connected to LEDs (acts as generator). The 'motor motor' drives the 'generator motor' to light up LEDs β€” a miniature power grid showing energy transfer from electrical β†’ mechanical β†’ electrical form.

πŸ’» Arduino Code

dc_generator_demo.ino
INO
// DC Motor as Generator β€” No Arduino Needed!
// This is a pure circuit demonstration.

// === CIRCUIT CONNECTIONS ===
// Motor Terminal A  ──────── LED Anode (+)
//                               |
//                           LED (Red, 2V)
//                               |
// Motor Terminal B  ──────── LED Cathode (-) via 10Ξ© resistor

// === CONCEPT (No code required) ===
// When you spin the motor shaft:
//   - Rotating magnets induce EMF in copper windings
//   - Commutator rectifies AC to pulsating DC
//   - Generated voltage β‰ˆ 0.01V Γ— RPM (approximate)
//   - At ~300 RPM: ~3V β†’ enough to light an LED!

// === Optional Arduino monitoring version ===
// Connect motor terminals to A0 and GND
// Measure the generated voltage in code:

void setup() { Serial.begin(9600); }
void loop() {
  float v = analogRead(A0) * (5.0 / 1023.0);
  Serial.print("Generated Voltage: "); Serial.print(v, 3); Serial.println(" V");

⭐Reviews & Ratings

β€”0 reviews
5β˜…
0
4β˜…
0
3β˜…
0
2β˜…
0
1β˜…
0
...

Loading reviews...

volt-X / DC Motor as a Generator β€” Arduino Tutorial