P.O.V. Math ??

Go To Last Post
17 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Any information on "Calculations" for Persistence of vision ??
so that LEDs can achieve good brightness with no "Noticeable" flicker

I Plan to "Charlieplex" 8 LEDs

But need to use P.O.V. to control any quantity (1) of them to all 8 ON.

Thanks

"We look for things.. Things that make us go."

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The only "math" is that any one ON led must be flashed at a frequency greater than about 30Hz. 45Hz is pretty good.

For a given brightness, it is the average current that counts. The higher the multiplexing factor, the higher the currents have to be for the same brightness. For example, if 5ma DC produces the desired brightness, then ON for 1% of the time means that you need 100*5ma to achieve the same brightness. Some LEDs will not sustain the peak currents for high multiplexing ratios. And, its difficult to get drivers that will also do it.

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

If you're doing POV, where you move the LEDs to make an image, you'll likely need to go faster or your leds will make little streaks 'stead of a steady image.

If you don't know my whole story, keep your mouth shut.

If you know my whole story, you're an accomplice. Keep your mouth shut. 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Torby wrote:
If you're doing POV, where you move the LEDs to make an image, you'll likely need to go faster or your leds will make little streaks 'stead of a steady image.

Well they won't be moving just a stationary display
Relative to this "Project"(see link) I've been pondering.

https://www.avrfreaks.net/index.p...

The Challenge is to get this to work on an ATTiny 25/45/85

Never done any Charlieplexing so I found info for that.. And have my circuit
But not any info for POV methods..

Many projects.. (Like propeller clocks) but decoding the code is over my head..

I know the “Minimum” rate to eliminate flicker would be 24 frames a second..
(As in Film rate).. But.. Not sure the “Minimum” duration “On Time” for LEDs
so that they are “Nice and Bright” and even brightness if a few or all are on..

So lets say I use 80hz

1/80 = 0.0125

.0125 / 8 = .0015625 (would 1.5 ms be too fast ??)

"We look for things.. Things that make us go."

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I think leds need to be refreshed faster than incandescent lamps, because the leds just go on and off and the led lamps have some cool down time. I can see leds flashing at 60Hz, so I refresh at 70Hz. Do your own experiment.

Imagecraft compiler user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

bobgardner wrote:
I think leds need to be refreshed faster than incandescent lamps, because the leds just go on and off and the led lamps have some cool down time. I can see leds flashing at 60Hz, so I refresh at 70Hz. Do your own experiment.

Guess that's what it will be is "experiment"

70 Hz ya say.. 80 Hz should be good then..

I Hope not too much loss in brightness.

"We look for things.. Things that make us go."

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

If its stationary, then that is not what folks usually call POV. Instead, its "just" a multiplexed display. The rules i gave should cover that just fine.

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

kds12345 wrote:
80 Hz should be good then..

I Hope not too much loss in brightness.

Turn-on and turn-off times for LEDs are measured in nanoseconds. I have built charlieplex displays with refresh rates above 50 kHz. They are exactly as bright to the human eye as when driven at 100 Hz.

JJ

"Experience is what enables you to recognise a mistake the second time you make it."

"Good judgement comes from experience.  Experience comes from bad judgement."

"Wisdom is always wont to arrive late, and to be a little approximate on first possession."

"When you hear hoofbeats, think horses, not unicorns."

"Fast.  Cheap.  Good.  Pick two."

"We see a lot of arses on handlebars around here." - [J Ekdahl]

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

As long as (1) the average current does not change and (2) the refresh rate is above 30Hz or so, the eye does not care if it is 100Hz or 1KHz or 10KHz.

The challenge comes if the on-times have to be very short because the multiplexing ratio is high, then you may have difficulty getting a high enough peak current so that the average stays where you want. The LEDs may not tolerate high peak current (as needed to maintain the average) and the drivers may not be able to deliver high peak current (to maintain the average).

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Well I hope I can get it to work by using all your "Hints" and suggestions..

It's not a Propeller clock so I'm sure the timing can drift (a bit) with no worries.

I won't realy be building this till next winter.
just trying to pick together all the "info" so
I can dive right in.

Maybe reading a bit more on "PWM" connected to LEDs' may help a bit also.

"We look for things.. Things that make us go."

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

By NEXT winter? Shoot, you'll have forgotten about it and doing something more interesting by then.

If you don't know my whole story, keep your mouth shut.

If you know my whole story, you're an accomplice. Keep your mouth shut. 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

If the timing drifts on a stationary multiplexed display, it will just show up as slight flicker in brightness. Not as bad as too low refresh rate.

I was almost sure that if you multiplex a led with small duty and high current, the apparent brightness to human eye is brighter than same current averaged to DC. But some people above just said it is same brightness.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Here is an example of the duty cycle computation.

Suppose that you have 25 LEDs that you want to multiplex AND vary individual intensities. Assume that each LED needs 10ma (DC) to achieve the desired brightness. And, lets figure that you want a 100Hz refresh rate (comfortably above 30Hz).

So, 100Hz means every LED gets refreshed once every 10ms. That gives each LED a "timeslot" of 10ms/25 = 0.4ms = 400us.

We will assume that enough current has to flow during that 400us so that the LED will appear full brightness. If the on-time is shortened, then the brightness decreases, proportionately. How much current is needed for full brightness? That has to be 10ma * 25 (25 is the multiplex factor, or 1/(0.4ms/10ms) ). That makes 250ma.

Now, as pointed out, above, no standard microcontroller port pin or standard logic will supply that much current. Many LEDs also won't tolerate it (though some will).

This leads to the idea of several independently mux'd groups of LEDs so that the mux ratio is not so high for any one LED. This drops the peak current. In the example, if you had 2 groups of 12, then the peak current would "only" be 125ma.

Likewise, you could use new "ultrabright" LEDs that only take 2ma (1/5 of 10ma). This would drop the peak current to 50ma. Now, you are getting into the current drive capability of more common ICs though you would still need to check the peak current capability of the diodes.

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Jepael wrote:
I was almost sure that if you multiplex a led with small duty and high current, the apparent brightness to human eye is brighter than same current averaged to DC. But some people above just said it is same brightness.
That's not what we're saying. Given a fixed duty cycle, and a fixed current, changing the frequency will not noticably affect the percieved brightness (so long as the frequency is high enough to avoid flicker).

OTOH, changing the duty cycle and current so as to maintain the same average current may change the percieved brightness as you travel the LED's instantaneous-current-vs-lumen efficiency curve. That is not an issue for charlieplexing as the duty cycle generally remains fixed.

JJ

"Experience is what enables you to recognise a mistake the second time you make it."

"Good judgement comes from experience.  Experience comes from bad judgement."

"Wisdom is always wont to arrive late, and to be a little approximate on first possession."

"When you hear hoofbeats, think horses, not unicorns."

"Fast.  Cheap.  Good.  Pick two."

"We see a lot of arses on handlebars around here." - [J Ekdahl]

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Right, my calculations, above, ignore "luminous efficiency vs current". Most of us have a hard time detecting that effect, though some can. It does vary between device types. Your mileage may vary.

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Non the less.. Thanks for mentioning current total
the circuit only has 8 LEDs' 8 x .02 = 160ma.
How ever they are in effect only on 1 at a time.

The current specs for one LED is 20ma

So the current is still only 20ma. even if (Visually)
all 8 LEDs are on because of the P.O.V. effect.

Or am I wrong in my thinking.

"We look for things.. Things that make us go."

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

kds12345 wrote:
How ever they are in effect only on 1 at a time.
.
.
.
Or am I wrong in my thinking.
Possibly. Charlieplexing is a technique whereby N pins are used to control up to N*(N-1) LEDs (or other loads), where as many as (N-1) LEDs are driven at a time, resulting in a duty cycle of (100/N)%. Here's a table:
Pins   LEDs   Duty
----   ----   ----
   2      2    50%
   3      6    33%
   4     12    25%
   5     20    20%
   6     30    17%
   7     42    14%

If you are really going to charlieplex 8 LEDs, you'll need 4 pins to do it, and each LED will be on for 1/4 of the time. You can control as many as 12 LEDs with those 4 pins.

Mind you, 'charlieplexing' can describe an identical load topology, but be run as you suggest where only 1 LED is driven at a time. This can be simpler to code, but there is (in my mind) no good reason to do it that way. The only advatage it affords is uniformity of brightness in arrays that do not use external drivers. Since charlieplexing relies on one or more pins to sink current, but only one pin to source current (or vice versa), you can find that driving more than one LED in a 'bank' (common anode) may result in lower output due to current limitations in the one pin that is sourcing the current for all of the LEDs in that bank. This problem is eliminated with the use of external drivers that can source enough current to drive (N-1) LEDs.

JJ

"Experience is what enables you to recognise a mistake the second time you make it."

"Good judgement comes from experience.  Experience comes from bad judgement."

"Wisdom is always wont to arrive late, and to be a little approximate on first possession."

"When you hear hoofbeats, think horses, not unicorns."

"Fast.  Cheap.  Good.  Pick two."

"We see a lot of arses on handlebars around here." - [J Ekdahl]