Go Down

Topic: Dynamically determine length of WS2812B LED strands (Read 20358 times) previous topic - next topic

fungus


Hey lets all make up stupid figures and have a bigger argument.


Why is it stupid?

OK, I just looked up the actual LED current for the [img=https://www.adafruit.com/datasheets/WS2811.pdf]http://WS2811[/img] and it's only 18.5mA, not 20mA per LED.

In that light I'll concede that A 5m strip has a maximum of 16.6A, not 18, but 5M strips are common so that's the number to design for.

If it's a closed system then you could design your patterns to not switch on all the LEDs simultaneously, that saves a few more amps. It's still going to be massive though, let's call it 10A. I still don't think just putting in a resistor is going to be a realistic option.
No, I don't answer questions sent in private messages (but I do accept thank-you notes...)

jasmine2501

#46
Dec 19, 2013, 07:09 pm Last Edit: Dec 19, 2013, 07:10 pm by jasmine2501 Reason: 1
There's no reason to consider blowing out your Arduino trying something as simple as current sensing. I agree that it's not going to be possible to run all the current for the lights through the Arduino and a simple resistor wouldn't be safe. I'm thinking you just use something like this to sense current: http://www.ti.com/product/ina169

For this purpose, you don't need actual current values, you just need to know when it goes from zero to non-zero.

On page 4 of the data sheet: http://www.adafruit.com/datasheets/WS2812.pdf

It says that each of the 3 LEDs can use 20mA - for a total of 60mA per unit. There's 60 LEDs per meter, so 5 meters is 300 lights total... giving a maximum current draw of 18 Amps - (0.060 * 300) - that's pretty serious current draw - 216 watts on 12V. Of course that only happens when you light up the whole string with full brightness white. Colors will always be something less than that.


fungus


There's no reason to consider blowing out your Arduino trying something as simple as current sensing. I agree that it's not going to be possible to run all the current for the lights through the Arduino and a simple resistor wouldn't be safe. I'm thinking you just use something like this to sense current: http://www.ti.com/product/ina169


That solves the measurement problem but it still runs all the current through a single resistor.

I'm still thinking that the only way to do it is use a decent size resistor for the detection phase then bypass it with a MOSFET (or two) when you want to show the patterns.


...that only happens when you light up the whole string with full brightness white. Colors will always be something less than that.


Not necessarily.

Brightness is done with PWM so if all PWM pulse of the LEDs coincides you still get peaks at maximum draw.

OK, the chances are that they won't all line up and the built-in decoupling on each LED should help, but half-bright doesn't necessarily mean half-current.

No, I don't answer questions sent in private messages (but I do accept thank-you notes...)

jasmine2501


OK, the chances are that they won't all line up and the built-in decoupling on each LED should help, but half-bright doesn't necessarily mean half-current.


In my experience it's roughly inverse-square - half brightness is about 1/4 current level. These things are ridiculously bright - I can't even look at them at numbers greater than 50/255. A (50,50,50) white is tolerable to look at.

fungus

#49
Dec 19, 2013, 07:50 pm Last Edit: Dec 19, 2013, 07:51 pm by fungus Reason: 1

In my experience it's roughly inverse-square - half brightness is about 1/4 current level. These things are ridiculously bright - I can't even look at them at numbers greater than 50/255. A (50,50,50) white is tolerable to look at.


Oh, I see. "Half brightness" is less than "half power", yes....  :)

Not everybody looks at them directly though. A lot of people view them indirectly (put them behind things), they usually need full power.
No, I don't answer questions sent in private messages (but I do accept thank-you notes...)

V1x0r

Apparently I have missed a lot in the last little bit.  lol.  I'm really digging this suggestive input!  Thanks guys!  :)   
With the components in the image I posted of the smaller device they are capable of doing something like what we are talking about...But i'm not sure if it is doing a current draw check.  that just seems dangerous to the components.   Now, for your guys' mathematical input and some ease, these 5m strands are 30 leds per meter.  so not very large of a current draw compared to the 60/m strips.  :)    do any of you have the ws2812B strands?

http://www.aliexpress.com/item/BLACK-PCB-5m-DC5V-WS2812B-led-pixel-srip-IP68-30pcs-WS2812B-M-with-30pixels-reverse-protection/926778326.html

This is who i purchased my current strands from.  If you purchase multiple 5m packages then the price is worth it.  :) (since shipping barely goes up unless you order a lot of them at one order...but you can always make multiple orders).  :)

jasmine2501

#51
Dec 19, 2013, 10:25 pm Last Edit: Dec 19, 2013, 10:27 pm by jasmine2501 Reason: 1

Apparently I have missed a lot in the last little bit.  lol.  I'm really digging this suggestive input!  Thanks guys!  :)  
With the components in the image I posted of the smaller device they are capable of doing something like what we are talking about...But i'm not sure if it is doing a current draw check.  that just seems dangerous to the components.   Now, for your guys' mathematical input and some ease, these 5m strands are 30 leds per meter.  so not very large of a current draw compared to the 60/m strips.  :)    do any of you have the ws2812B strands?


I wouldn't say it's "not very large" it's exactly half the current draw we calculated based on 60 instead of 30 - so, 9 amps - that's still kind of a high current draw. Relative term of course, but I'm saying it's high relative to things you drive with the Arduino directly, which are 100 times lower.

I have the WS2812 lights, some TM1803 lights, and some 'loose' LEDs I use for all kinds of different stuff, mostly aircraft lighting for night flying. There is no difference between the WS2812 and the WS2812b except that they removed the unused pins - there was six pins on the WS2812, and two of them were unconnected. There's only 4 pins on the WS2812B - Power (Vcc), Ground (Vss), Data In (Din) and Data Out (D0). The whole thing is smaller and lighter weight than the WS2812 original, and it has better efficiency overall. Electrically and data-wise, it looks the same as the old ones.

I don't think there is anything special about the way the strip itself is built - it looks like a 'normal' LED strip - basically just everything parallelled up. There is a capacitor on there which I'm not sure about, but it's probably just for the power supply. It should be pretty much the same as these which I get from Sparkfun... (they also have a capacitor but I can't tell how it's wired up, it's probably not important to our issue)
https://www.sparkfun.com/products/12027

V1x0r

that's used for reverse protection.  it's connected to the ground.

The ws2812B leds are more superior to the WS2812 leds.  They are brighter, more efficient, and are better capable.  :)  I don't like using adafruit for the documentation on the leds though.    Also, you pay way too much for only 1 meter of an older led.


jasmine2501


here you go.  :)

http://www.aliexpress.com/item/Black-PCB-DC5V-5m-WS2811-built-in-the-5050-RGB-150-LED-digital-strip-light/969633185.html


Those have half as many LEDs! Those are approximately $55 for 5 meters, cuz there's gonna be some shipping charges - it works out to about 33 cents per light.

https://www.sparkfun.com/products/12028

Those from Sparkfun have twice as many LEDs, and the price is just over twice as much ($120),  I don't pay any shipping because I can just go to Sparkfun and pick it up if I have to, but on something this price, they will ship for free. So, the Sparkfun lights are 40 cents per light. That's a difference of 17% and it supports a local business. Some people don't consider those kind of things but for me, supporting a local business and getting a slightly better quality level are important.

Everyone decides those things for themselves, but that's why I buy from Sparkfun for a lot of stuff, which you can get cheaper somewhere else - because 'cheap' isn't my only criterion.

jasmine2501

Oh also, on the "not liking Adafruit" - that is immaterial, the data sheets come from the company that makes the chip - there isn't anything to not like, that's the data sheet, there isn't another one.


Go Up