Site icon Circuit Ideas for You

POV Project with LEDs and Arduino Circuit

POV means Persistence of Vision.

Our eyes cannot see very fast blinking light separately.

If light blinks very fast then we see it like a line or picture.

Using this idea we can create letters or shapes with some LEDs.

Arduino controls LEDs in speed to make effect of display.

This project uses Arduino Nano, some LEDs, resistors and 9V battery.

LEDs are arranged in line and rotate or move fast.

When Arduino switch ON and OFF LEDs in sequence then it looks like text or design is floating in air.

Circuit coding:

// Arduino POV Display with 10 LEDs and Hall Sensor
// LEDs connected to D2–D9, D11, D12
// Hall sensor connected to D10

const int ledPins[10] = {2, 3, 4, 5, 6, 7, 8, 9, 11, 12}; // 10 LED pins
const int hallPin = 10;                                    // Hall sensor pin
int hallState = 0;

// Example pattern for letter "A" (10 rows)
byte patternA[10] = {
  B0001111000,
  B0010000100,
  B0100000010,
  B0100000010,
  B0111111110,
  B0100000010,
  B0100000010,
  B0100000010,
  B0100000010,
  B0100000010
};

void setup() {
  // Set all LED pins as OUTPUT
  for (int i = 0; i < 10; i++) {
    pinMode(ledPins[i], OUTPUT);
  }
  pinMode(hallPin, INPUT);
}

void loop() {
  // Wait for hall sensor trigger (magnet passes sensor)
  hallState = digitalRead(hallPin);
  if (hallState == LOW) {
    showLetter(patternA); // show letter A
  }
}

// Function to display a letter pattern
void showLetter(byte letter[10]) {
  for (int col = 0; col < 10; col++) {
    for (int row = 0; row < 10; row++) {
      if (bitRead(letter[col], row)) {
        digitalWrite(ledPins[row], HIGH);
      } else {
        digitalWrite(ledPins[row], LOW);
      }
    }
    delayMicroseconds(1000); // adjust for clarity of letter
  }
}

Coding Explanation:

Circuit Working:

Parts List:

ComponentSpecificationQuantity
Resistors220Ω 1/4 watt10
SemiconductorsArduino Nano1
Hall Sensor Module1
Red LEDs 5mm 20mA10
9V Battery1

The heart of this project is Arduino Nano.

It controls 10 LEDs through pins D2 to D12.

Each LED has resistor in series to limit current.

Arduino take power from 9V battery through Vin pin.

There is also a small IR sensor module in the circuit which is connected to D10 of Arduino.

This sensor is used for synchronizing display or detecting position while rotating.

Sensor sends signal to Arduino at one position and then Arduino start sending pattern to LEDs.

When motor or hand rotates LED strips fast and Arduino blink LEDs in programmed pattern.

Our eye see full letters or symbols because of persistence of vision.

Note:

We can use an old fan which is one of the easiest ways to rotate the LEDs for a POV display.

Many hobbyists do this because:

The fan motor already gives a steady rotation.

It is low cost and easy to find in old table fans, CPU fans or cooler fans.

We can just attach the LED strip with Arduino Nano on one blade or on a piece mounted to the fan.

Formula:

For LED resistor value we use ohms law formula:

R = (Vcc – Vf) / If

here,

How to Build:

To build a POV Project with LEDs and Arduino Circuit follow the below steps for connections:

Conclusion:

This POV Project with LEDs and Arduino Circuit shows how simple parts can create visual magic.

By fast blinking LEDs, Arduino creates words or shapes in air.

This is called Persistence of Vision display.

We can program different patterns or letters.

It is fun project for beginners and also useful for learning timing, sensor and LED control with Arduino.

References:

POV Display using ESP32

Exit mobile version