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...