Before I go further into this build I want to make sure I am on the right track.
I want to use 328P chip for control and will be using 74hc595 to control LED's
After each 74HC595 I will use ULN2804A driver to take the load of them, after each ULN2804A I will Mount my current limiting resistor.
Supply voltage to each layer will be from a MOSFET or 2 parrallel transistors.
Worst scenario, each output from 74HC595 will drive 10 LEDS, that is why I use ULN2804a, but that will make it ground controlled. I just need to remember this when I build the cube.
Max current for each led is 30mA, but I am aiming to limit that at 20mA with resistors.
Can someone smarter than me (that would be everybody else but me) take a look at my attached diagram and see it it looks alright?
Instead of 74HC595 + ULN2804, can use TPIC6C595 or TPIC6B595, high voltage/high current sink shift register, combines the 2 parts. Save on a bunch of wiring.
Still need a current limit resistor.
Assuming common cathode columns, one shift register output per column, then 100 current limit resistors are needed.
Use low Rds, logic level gate P-channel MOSFET to source current to each layer.
TPIC6C595 can be used to pull the MOSFET gate low to turn them on 1 x 1 also.
IRFB4710 is not a Logic Level MOSFET, it needs 10V on the gate to fully turn it on.
It is also very pricey:
This would be a much better part and will fully turn on from 5V at the gate:
With the '7410, you will have to pull the gate to 10 or 12V to turn it full off, and down to ~0V to turn it on.
Using an NPN transistor to buffer the arduino signal can do that.
JohnLincoln:
Have you considered that if you want all the LEDs to be illuminated at the same time, even if they only draw 20mA each, then you need to supply 20A?
CrossRoads:
With multiplexing, only 100 on a time will be on, so 2A at 20mA/LED. .
Quite right, CrossRoads.
Apologies for any confusion/scaremongering, that my oversight may have caused.
Before I go further into this build I want to make sure I am on the right track.
I want to use 328P chip for control and will be using 74hc595 to control LED's
After each 74HC595 I will use ULN2804A driver to take the load of them, after each ULN2804A I will Mount my current limiting resistor.
Supply voltage to each layer will be from a MOSFET or 2 parrallel transistors.
Worst scenario, each output from 74HC595 will drive 10 LEDS, that is why I use ULN2804a, but that will make it ground controlled. I just need to remember this when I build the cube.
Max current for each led is 30mA, but I am aiming to limit that at 20mA with resistors.
Can someone smarter than me (that would be everybody else but me) take a look at my attached diagram and see it it looks alright?
Thank you
Ronni
Q1: Where are the Digital I/O connections for the 10 Mosfets for the multiplexed layers?
Q2: Your diagram shows 250 Ohm Resistors.
So, is this math ( watts = R X I x I ) correct for all LEDS ON?
250 Ohms x 20 ma x 20ma = 0.1 Watts per resistor
0.1 watts x 8 resistors = 0.8 watts per resistor pack.
0.8 Watts x 13 Resistor Packs= 10.4 watts
Will HEAT be an issue?
(Math error fixed on Nov 3, 2015)
Q3) What is the LED supply voltage?
Q4) You state "LED Max Current = 30ma"
Is that for a 100% Duty Cycle or a 10% Duty Cycle?
Q5) How quickly can the Arduino actually drive the thirteen (13) 74HC595 Data and Clock signals?
Instead of 74HC595 + ULN2804, can use TPIC6C595 or TPIC6B595, high voltage/high current sink shift register, combines the 2 parts. Save on a bunch of wiring.
Still need a current limit resistor.
Assuming common cathode columns, one shift register output per column, then 100 current limit resistors are needed.
Use low Rds, logic level gate P-channel MOSFET to source current to each layer.
TPIC6C595 can be used to pull the MOSFET gate low to turn them on 1 x 1 also.
With 10 multiplexed layers, the On-Time is only 10% per layer.
The LED "ON' Current must be significantly increased due to this multiplexing.
At 20ma with 10% On-Time and 90% Off-Time then the LED will be dimmer
than an LED on 100% of the time at 20ma.
The LED won't be 1/10th as bright, to your eye, but it will be dimmer by some %.
Best that I can detemine is ... 10% On-Time = LED about 40% as bright.
TEST:
One LED at 10% On-Time LED + Current Limiting Resistor + Voltage
in a normally lit room or outside to see if it is bright enough before building.
Q3: Supply voltage is at the supply voltage symbol.
Q4: Data sheet info for LED
Q5: Faster than my eyes can see.
Its just a crude schematic, and wanted to know if I am in the right track.
mrsummitville:
Q1: Where are the Digital I/O connections for the 10 Mosfets for the multiplexed layers?
Q2: Your diagram shows 250 Ohm Resistors.
So, is this math correct for all LEDS ON?
250 Ohms x 20 ma/LED = 5 Watts per resistor
5 watts x 8 resistors = 40 watts per resistor pack.
40 Watts x 13 R-Packs= 520 watts
Will HEAT be an issue?
Q3) What is the LED supply voltage?
Q4) You state "LED Max Current = 30ma"
Is that for a 100% Duty Cycle or a 10% Duty Cycle?
Q5) How quickly can the Arduino actually drive the thirteen (13) 74HC595 Data and Clock signals?
mrsummitville:
Q2: Your diagram shows 250 Ohm Resistors.
So, is this math correct for all LEDS ON?
250 Ohms x 20 ma/LED = 5 Watts per resistor
5 watts x 8 resistors = 40 watts per resistor pack.
40 Watts x 13 R-Packs= 520 watts
Will HEAT be an issue?
No.
That fet has a threshold (starting to conduct) of 2-4volt.
If all your fets are 2-2.5volt, you're ok.
But you could have a few 3 or 4volt ones in the pack.
Then those LED layers will be dimmer than the others.
The mosfet could also heat up because it's only partially conducting.
Just use LOGIC fets.
Leo..