Maker Pro
Maker Pro

The Results of everyones help.

C

Chris W

Jan 1, 1970
0
I would like to thank everyone for all the help over the past little
while. I thought I would share the results of that help.

http://www.thewishzone.com/LightController/

I have put together my 256 light controller on prototype boards. Right
now it only controls 32 lights. It is expandable in 16 light
increments. It is made up of 3 basic parts. First there are up to 16
"Light boards", each will be stackable and control 16 lights. Then
there is the light board addresser. That will be on a PCB with the
micro controller and it will send a signal to each of the 16 light
boards. Finally the micro controller. I decided on the Rabbit
RCM3100. I know it is over kill, but I wanted to be able to program it
in C. Here are the details.

The "light boards" each have a 4 to 16 line decoder (CD74HCT4514) and 16
D type flip flops (SN74HCT74) wired up as toggle flip flops. All of
the, up to 16, light boards have the 4 LSB from an 8 bit output on the
RCM3100 hooked to the input of the 4 to 16 line decoder. The output of
the flip flops will go to either solid state relays or a transistors of
some kind to drive higher current loads.

The light board addresser has a slightly different 4 to 16 line decoder
(CD74HC154) the out puts of which go low instead of high. It gets it's
input from the 4 MSB of the 8bit output on the RCM3100. It's 16 outputs
each go to the enable input on the one of the CD74HCT4514s on the 16
light boards.

I can then program the RCM3100 to flash the lights in any pattern I can
dream up and I have dreamed up quite a few already. Of course I now
need to layout a PCB and have some made. First I need to design the
circuit that the RCM3100 will go in, with some kind of power supply
regulator and a few buttons to select different modes. The prototype
board is way too big for what I want to do with this other wise I could
just solder on a pin header and hook my boards to that.

The final result will be a remote control airplane that will be lit up
in manor that will put any Christmas tree to shame. I then plan to have
some fun flying it at night. The reason I want to have the lights flash
in all kinds of different patterns, is I intend on using the flashing
pattern as well as the LED colors to help keep track of the orientation
of the plane. Of course there is also the "cool factor" :)

--
Chris W

Gift Giving Made Easy
Get the gifts you want &
give the gifts they want
http://thewishzone.com
 
L

Lord Garth

Jan 1, 1970
0
Chris W said:
I would like to thank everyone for all the help over the past little
while. I thought I would share the results of that help.

http://www.thewishzone.com/LightController/

I have put together my 256 light controller on prototype boards. Right
now it only controls 32 lights. It is expandable in 16 light
increments. It is made up of 3 basic parts. First there are up to 16
"Light boards", each will be stackable and control 16 lights. Then
there is the light board addresser. That will be on a PCB with the
micro controller and it will send a signal to each of the 16 light
boards. Finally the micro controller. I decided on the Rabbit
RCM3100. I know it is over kill, but I wanted to be able to program it
in C. Here are the details.

The "light boards" each have a 4 to 16 line decoder (CD74HCT4514) and 16
D type flip flops (SN74HCT74) wired up as toggle flip flops. All of
the, up to 16, light boards have the 4 LSB from an 8 bit output on the
RCM3100 hooked to the input of the 4 to 16 line decoder. The output of
the flip flops will go to either solid state relays or a transistors of
some kind to drive higher current loads.

The light board addresser has a slightly different 4 to 16 line decoder
(CD74HC154) the out puts of which go low instead of high. It gets it's
input from the 4 MSB of the 8bit output on the RCM3100. It's 16 outputs
each go to the enable input on the one of the CD74HCT4514s on the 16
light boards.

I can then program the RCM3100 to flash the lights in any pattern I can
dream up and I have dreamed up quite a few already. Of course I now
need to layout a PCB and have some made. First I need to design the
circuit that the RCM3100 will go in, with some kind of power supply
regulator and a few buttons to select different modes. The prototype
board is way too big for what I want to do with this other wise I could
just solder on a pin header and hook my boards to that.

The final result will be a remote control airplane that will be lit up
in manor that will put any Christmas tree to shame. I then plan to have
some fun flying it at night. The reason I want to have the lights flash
in all kinds of different patterns, is I intend on using the flashing
pattern as well as the LED colors to help keep track of the orientation
of the plane. Of course there is also the "cool factor" :)

Chris, don't omit .1uF capacitors as near to the chip power pins as
possible.
The caps will help absorb power supply spikes that will screw the FF's up.

BTW, how big is this remote controlled plane? How many lights are to be on
board the plane? An EPROM would be far simpler when used to store patterns
directly.
 
C

Chris W

Jan 1, 1970
0
Lord said:
Chris, don't omit .1uF capacitors as near to the chip power pins as
possible.
The caps will help absorb power supply spikes that will screw the FF's up.

BTW, how big is this remote controlled plane? How many lights are to be on
board the plane? An EPROM would be far simpler when used to store patterns
directly.
It will probably have a wing span of around 6 feet, and be in the 7 lbs
range. It depends on the number of wing ribs(one set of LEDs between
each rib), but probably about 30 in each wing, maybe a few more down the
length of the fuselage. Then a few more in other various places like the
wing tip, vertical and horizontal stabilizer tips. For the wing, I will
have one or two in the leading edge and one or 2 behind the main spar
with a transparent film on the top and bottom of the back half of the
wing, between each rib. For the fuselage I will probably have one set
down the bottom and one down the length of each side. So probably some
where near 100 total. Wow that is a lot


I'm having a hard time understanding how a simple eprom could do what I
am doing. So far I am up to about 240 lines of C code. I am a pretty
good programmer and I don't think I could cut down on that count by very
much and still do what I am doing. It is pretty hard to describe the
patterns I am trying to do, I could post the C code that will run from
a command prompt and display the wing light patterns with - and O for
off and on. Maybe you could look at that and tell me if I could use eproms.

--
Chris W

Gift Giving Made Easy
Get the gifts you want &
give the gifts they want
http://thewishzone.com
 
P

petrus bitbyter

Jan 1, 1970
0
Chris W said:
It will probably have a wing span of around 6 feet, and be in the 7 lbs
range. It depends on the number of wing ribs(one set of LEDs between each
rib), but probably about 30 in each wing, maybe a few more down the length
of the fuselage. Then a few more in other various places like the wing
tip, vertical and horizontal stabilizer tips. For the wing, I will have
one or two in the leading edge and one or 2 behind the main spar with a
transparent film on the top and bottom of the back half of the wing,
between each rib. For the fuselage I will probably have one set down the
bottom and one down the length of each side. So probably some where near
100 total. Wow that is a lot


I'm having a hard time understanding how a simple eprom could do what I am
doing. So far I am up to about 240 lines of C code. I am a pretty good
programmer and I don't think I could cut down on that count by very much
and still do what I am doing. It is pretty hard to describe the patterns
I am trying to do, I could post the C code that will run from a command
prompt and display the wing light patterns with - and O for off and on.
Maybe you could look at that and tell me if I could use eproms.

--
Chris W

Gift Giving Made Easy
Get the gifts you want & give the gifts they want
http://thewishzone.com


Chris,

I may have missed a part of the discussion but looking at your hardware I
can't say but you're using a hell of a lot of electronics just to light some
LEDs. The classic way to light this amount of LEDs is by multiplexing. To
light 256 LEDs you need 32 output lines either directly from the
microcontroller or via registers like the HCT374. If you use four of the
latter you only need twelve output lines from the micro. The general idea is
to build a sixteen by sixteen matrix. So sixteen rows and sixteen columns.
On every point they cross you mount a LED that conducts from - let's say -
row to column. To switch the LEDs off, you keep the rows low and the columns
high, so all LEDs are blocked. Now to switch on some LEDS in a particular
column, you bring the corresponding rows high and then pull down the column.
You keep it that way for let's say 2ms then switch all off and select the
LEDs of the next column. On the electronic side of the project you need to
make the rows to be able to provide the current a LED needs along with a
current limiting resistor. The column driver need to be able to sink the
current for sixteen LEDs. Using discrete transistors is the easiest way. All
of the rest can be done in software, which seems to be your better skill.

petrus bitbyter
 
L

Lord Garth

Jan 1, 1970
0
Chris W said:
It will probably have a wing span of around 6 feet, and be in the 7 lbs
range. It depends on the number of wing ribs(one set of LEDs between
each rib), but probably about 30 in each wing, maybe a few more down the
length of the fuselage. Then a few more in other various places like the
wing tip, vertical and horizontal stabilizer tips. For the wing, I will
have one or two in the leading edge and one or 2 behind the main spar
with a transparent film on the top and bottom of the back half of the
wing, between each rib. For the fuselage I will probably have one set
down the bottom and one down the length of each side. So probably some
where near 100 total. Wow that is a lot


I'm having a hard time understanding how a simple eprom could do what I
am doing. So far I am up to about 240 lines of C code. I am a pretty
good programmer and I don't think I could cut down on that count by very
much and still do what I am doing. It is pretty hard to describe the
patterns I am trying to do, I could post the C code that will run from
a command prompt and display the wing light patterns with - and O for
off and on. Maybe you could look at that and tell me if I could use eproms.

Granted that you don't get out of using LED drive transistors but the idea
is
to determine the longest pattern you wish to repeat, thus determining your
counter length. Next you address, in parallel, as many EPROMs as you need
to light the number of LED's onboard, 8 outputs per EPROM.

Example for a 2k 2716:

11 bits
address data EPROM1 data EPROM2
00000000000 00000001 00000000
00000000001 00000010 00000000
00000000010 00000100 00000000
00000000011 00001000 00000000
00000000100 00010000 00000000
00000000101 00100000 00000000
00000000110 01000000 00000000
00000000111 10000000 00000000
00000001000 00000000 00000001
00000001001 00000000 00000010
00000001010 00000000 00000100
00000001011 00000000 00001000
00000001100 00000000 00010000
00000001101 00000000 00100000
00000001110 00000000 01000000
00000001111 00000000 10000000
 
R

Rich Grise

Jan 1, 1970
0
Very impressive!
Chris, don't omit .1uF capacitors as near to the chip power pins as
possible.
The caps will help absorb power supply spikes that will screw the FF's
up.

BTW, how big is this remote controlled plane? How many lights are to be
on board the plane? An EPROM would be far simpler when used to store
patterns directly.

I'd say, arrange them 8 x 32, and put them on the side of an RC blimp;
then sell ad space. ;-)

(The first time I saw the lights on the Goodyear blimp, I was with my
brother, in a line of cars waiting to get into the state fair; it was
the first time either of us had ever seen the lit-up blimp, and we
were stoned at the time. Apparently, so were the kids in nearby cars -
just about everybody had got out of their cars and were marveling at the
lights in the sky... %-} )

Cheers!
Rich
 
J

John Fields

Jan 1, 1970
0
I would like to thank everyone for all the help over the past little
while. I thought I would share the results of that help.

http://www.thewishzone.com/LightController/

I have put together my 256 light controller on prototype boards. Right
now it only controls 32 lights. It is expandable in 16 light
increments. It is made up of 3 basic parts. First there are up to 16
"Light boards", each will be stackable and control 16 lights. Then
there is the light board addresser. That will be on a PCB with the
micro controller and it will send a signal to each of the 16 light
boards. Finally the micro controller. I decided on the Rabbit
RCM3100. I know it is over kill, but I wanted to be able to program it
in C. Here are the details.

The "light boards" each have a 4 to 16 line decoder (CD74HCT4514) and 16
D type flip flops (SN74HCT74) wired up as toggle flip flops. All of
the, up to 16, light boards have the 4 LSB from an 8 bit output on the
RCM3100 hooked to the input of the 4 to 16 line decoder. The output of
the flip flops will go to either solid state relays or a transistors of
some kind to drive higher current loads.

The light board addresser has a slightly different 4 to 16 line decoder
(CD74HC154) the out puts of which go low instead of high. It gets it's
input from the 4 MSB of the 8bit output on the RCM3100. It's 16 outputs
each go to the enable input on the one of the CD74HCT4514s on the 16
light boards.

I can then program the RCM3100 to flash the lights in any pattern I can
dream up and I have dreamed up quite a few already. Of course I now
need to layout a PCB and have some made. First I need to design the
circuit that the RCM3100 will go in, with some kind of power supply
regulator and a few buttons to select different modes. The prototype
board is way too big for what I want to do with this other wise I could
just solder on a pin header and hook my boards to that.

The final result will be a remote control airplane that will be lit up
in manor that will put any Christmas tree to shame. I then plan to have
some fun flying it at night. The reason I want to have the lights flash
in all kinds of different patterns, is I intend on using the flashing
pattern as well as the LED colors to help keep track of the orientation
of the plane. Of course there is also the "cool factor" :)

---
I hate to bust your bubble so far downstream, but you can control all
16 LEDs on one light board with a single chip, an Allegro Microsystems
A6276,

http://www.allegromicro.com/datafile/6276.pdf

and you can control _all_ of the LEDs with just 3 IO's from your µC.

If you want to store the patterns in ROM, just write them into a
serial EEPROM and download the patterns as 256 bit 'pages' into the 16
chip A6276 array.

Total chip count? sixteen A6276's, one µC, and one or more serial
EEPROMs, depending on how many patterns you want to store/display.

Also, zero (instead of 256) LED driver transistors, and 16 LED current
setting resistors instead of 256 base resitors and 256 current
limiting resistors.

Plus, your display would be static, so no multiplexing problems.

Code to do the whole thing should run less than about a hundred lines
or so of assembler.

Hard to resist, huh?-)
 
C

Chris W

Jan 1, 1970
0
John said:
I hate to bust your bubble so far downstream, but you can control all
16 LEDs on one light board with a single chip, an Allegro Microsystems
A6276,

No bubble busting here. I am glad to hear of easier and better ways. I
am new to this and don't have much of an idea as to what I am doing.
Building it this was was a learning experience. I just hope to find the
easiest way before I have the PCBs made. What I would really like to
have is one of these. . .

http://www.thewishzone.com/LightController/index.php?image=OnOffControler.gif

in a single 36 pin chip. Even half of it in an 18 pin chip would be nice.

Thanks for the data sheet. I just found some in stock at Arrow
Electronics, and ordered them.
and you can control _all_ of the LEDs with just 3 IO's from your µC.

If you want to store the patterns in ROM, just write them into a
serial EEPROM and download the patterns as 256 bit 'pages' into the 16
chip A6276 array.

Total chip count? sixteen A6276's, one µC, and one or more serial
EEPROMs, depending on how many patterns you want to store/display.

Also, zero (instead of 256) LED driver transistors, and 16 LED current
setting resistors instead of 256 base resitors and 256 current
limiting resistors.

What do you mean by "base resistors"? I was going to use the output of
the flip flop to control a transistor gate, then have a DC to DC
switching regulator power the LEDs with the voltage they want. That way
I didn't think I needed any resistors for the LEDs.
Plus, your display would be static, so no multiplexing problems.

That is a plus I don't like the idea of multiplexing, especially since I
also would like to use the same circuit to switch larger loads via a relay.
Code to do the whole thing should run less than about a hundred lines
or so of assembler.

Hard to resist, huh?-)

Very hard to resist. However I do see a few down sides. I don't think
they are that big of a deal though.

1) I don't see anyway to turn on all lights as a test with just the push
of a button.
2) Once all 256 lights are in the state I want them, to change that
state I need to disable the output, write 256 bits of data back in, and
then re enable the outputs. I guess that's not that big of a deal since
even at a modest rate of 1 mhz, it would take less than 1ms to send the
256 bits through, I think. With it that fast I guess I don't even need
to disable the output since it would change to the next state so fast
that you couldn't see the changes.

An advantage though is that it looks as though this has virtually
unlimited expandability by just chaining more and more chips together.

Once I figure out all the patterns I want to use, the eprom sounds like
an interesting idea. I think I would need 10k bytes, or more though.
Some of the sequences have several patterns, and there could be as many
as 6 different sequences going at once.

--
Chris W

Gift Giving Made Easy
Get the gifts you want &
give the gifts they want
http://thewishzone.com
 
J

John Fields

Jan 1, 1970
0
No bubble busting here. I am glad to hear of easier and better ways. I
am new to this and don't have much of an idea as to what I am doing.
Building it this was was a learning experience. I just hope to find the
easiest way before I have the PCBs made. What I would really like to
have is one of these. . .

http://www.thewishzone.com/LightController/index.php?image=OnOffControler.gif

in a single 36 pin chip. Even half of it in an 18 pin chip would be nice.


Thanks for the data sheet. I just found some in stock at Arrow
Electronics, and ordered them.


What do you mean by "base resistors"? I was going to use the output of
the flip flop to control a transistor gate, then have a DC to DC
switching regulator power the LEDs with the voltage they want. That way
I didn't think I needed any resistors for the LEDs.

LEDs don't want voltage, they want a certain amount of current, and
when that much current is flowing through them the voltage across them
will be the specified Vf, or forward voltage. Same thing with the
transistor bases. Basically what you do is say how much current you
want flowing in the collector-emitter junction, divide that by ten and
allow that much current to flow in the base-emitter junction with
about 0.7V across it. That's called running the transistor with a
"forced beta" of ten, and will make sure the transistor is running
with the collector saturated. So, to do it that way you'd need a
current limiting resistor from each of the flip-flop outputs to the
base of each transistor, and in series with each LED in order to limit
the current through them.
---
That is a plus I don't like the idea of multiplexing, especially since I
also would like to use the same circuit to switch larger loads via a relay.


Very hard to resist. However I do see a few down sides. I don't think
they are that big of a deal though.

1) I don't see anyway to turn on all lights as a test with just the push
of a button.

---
Either poll the IO a switch is hooked to or let the switch trigger an
interrupt and then when the switch is pressed send 256 zeroes to the
array if you use A6276's, since they're sinks.
---
2) Once all 256 lights are in the state I want them, to change that
state I need to disable the output, write 256 bits of data back in, and
then re enable the outputs.

---
No, you leave the outputs alone, clock the new data in serially and
then, when the array is full and all the new data is lined up with the
outout latches, strobe the output latches and all the new data will
overwrite the old data and appear all at once.
---
I guess that's not that big of a deal since
even at a modest rate of 1 mhz, it would take less than 1ms to send the
256 bits through, I think. With it that fast I guess I don't even need
to disable the output since it would change to the next state so fast
that you couldn't see the changes.

---
I think it's better to strobe the outputs since you'll only be be
changing the supply current once per frame instead of 256 times per
frame with, I think, less high-frequency noise because of that.
---
An advantage though is that it looks as though this has virtually
unlimited expandability by just chaining more and more chips together.

---
Yes, but don't forget your power supply. 256 LEDs times 20mA per LED
means 5.12 _amperes_ when all the LEDs are on!
---
Once I figure out all the patterns I want to use, the eprom sounds like
an interesting idea. I think I would need 10k bytes, or more though.
Some of the sequences have several patterns, and there could be as many
as 6 different sequences going at once.

---
OK. Considering a byte to be 8 bits and a frame to be 256 bits, that
means you'd need 32 bytes per frame, so even 8k (8192) bytes of EEPROM
would get you 256 frames. Then, for six different sequences you could
have about 42 different patterns for each sequence with that amount of
memory.
 
C

Chris W

Jan 1, 1970
0
John said:
LEDs don't want voltage, they want a certain amount of current, and
when that much current is flowing through them the voltage across them
will be the specified Vf, or forward voltage.

I know that Vf is different for different LEDs, but doesn't E = I*R
apply to LED's. I don't suppose you can measure the resistance of an
LED with an ohm meter, but if the data sheet for the led says If is 20
mA and Vf is 3.5V and I then hook that LED to a 3.5V source, will it not
draw 20 mA? I know for other color LEDs it will require a different
Vf. I was planing on white, green, and red. I am pretty sure I can
find green and white that have the same, or very close Vf, so I will
need one regulator for green and white, and one for the red.

Same thing with the
transistor bases. Basically what you do is say how much current you
want flowing in the collector-emitter junction, divide that by ten and
allow that much current to flow in the base-emitter junction with
about 0.7V across it. That's called running the transistor with a
"forced beta" of ten, and will make sure the transistor is running
with the collector saturated. So, to do it that way you'd need a
current limiting resistor from each of the flip-flop outputs to the
base of each transistor, and in series with each LED in order to limit
the current through them.

So is that 1/10 I ratio one the base the minimum current required to get
saturation?
yeah I knew I could do it that way, but I just like the idea of a dumb
switch that doesn't have to trigger any kind of logic to turn the lights
on for a test. With the flip flops I have all the sets and resets tied
together and I ground the set to turn them all off and the reset to turn
them all on. Not that big of a deal either way though.


---
No, you leave the outputs alone, clock the new data in serially and
then, when the array is full and all the new data is lined up with the
outout latches, strobe the output latches and all the new data will
overwrite the old data and appear all at once.
Thanks for the clarification, I will have to read that data sheet more
carefully while I am waiting for the UPS man to come.

for landing and take off all of the wing leading edge LED's will be on
at once but the rest of the LED's will be flashing and during flight the
leading edge LED's will be flashing too. I think for the R/C airplane
application I will use about 100 LED's, so a few AA NiMHs or NiCds
should do just fine.
---
OK. Considering a byte to be 8 bits and a frame to be 256 bits, that
means you'd need 32 bytes per frame, so even 8k (8192) bytes of EEPROM
would get you 256 frames. Then, for six different sequences you could
have about 42 different patterns for each sequence with that amount of
memory.

I just did a rough guess, from your calculation, 8K sounds like it would
be plenty.

--
Chris W

Gift Giving Made Easy
Get the gifts you want &
give the gifts they want
http://thewishzone.com
 
R

Rich Grise

Jan 1, 1970
0
I know that Vf is different for different LEDs, but doesn't E = I*R
apply to LED's.

No, it does not. An LED is not an ohmic device, it's a PN junction,
which is not only nonlinear, it's exponential.
I don't suppose you can measure the resistance of an
LED with an ohm meter, but if the data sheet for the led says If is 20
mA and Vf is 3.5V and I then hook that LED to a 3.5V source, will it not
draw 20 mA?

Very probably not.

A quick google turns up this page with a graph of volts vs current:
http://www.seas.upenn.edu/ese/rca/software/Labview/diodetest/diodetest.html

scroll down a screen or so, and look at that graph that's almost vertical
on its right - that's the part of the curve where you're operating - a
very very small change in voltage maps to a very large change in current -
an LED has almost no resistance at all in this region, so the current
_must_ be controlled by the driving circuit.

And with a really, really stiff supply, you'll eventually blow the LED,
since they draw exponentially more current with temperature.
I know for other color LEDs it will require a different
Vf. I was planing on white, green, and red. I am pretty sure I can
find green and white that have the same, or very close Vf, so I will
need one regulator for green and white, and one for the red.

Nope. If you use a current regulator, the Vf will almost take care of
itself. With just constant voltage and a resistor, you'd have to select
the resistor for the Vf.
So is that 1/10 I ratio one the base the minimum current required to get
saturation?

Not necessarily, in fact, very unlikely. In fact it's maybe ten times
as much as you need to get the tranny to actually saturate, so it's
overkill, so that you _know_ that puppy's _saturated_! :)

Cheers!
Rich
 
J

John Fields

Jan 1, 1970
0
I know that Vf is different for different LEDs, but doesn't E = I*R
apply to LED's.

---
Yes, but if you take a look at the forward conduction curve for a
diode you'll see that the current increases exponentially as the
forward voltage across the junction increases linearly.
I don't suppose you can measure the resistance of an
LED with an ohm meter, but if the data sheet for the led says If is 20
mA and Vf is 3.5V and I then hook that LED to a 3.5V source, will it not
draw 20 mA?

---
Not necessarily. What they're saying is that if you allow 20mA to
flow through the LED there will be a voltage drop across the LED of
3.5V (plus or minus the spec).
---
I know for other color LEDs it will require a different
Vf. I was planing on white, green, and red. I am pretty sure I can
find green and white that have the same, or very close Vf, so I will
need one regulator for green and white, and one for the red.
---



So is that 1/10 I ratio one the base the minimum current required to get
saturation?

---
No, but it's pretty much guaranteed to be with transistors like
2N4401s and 2N4403s, which have betas of between 100 and 300. 1:20 is
also a pretty safe bet, but the closer you get to Ib = Ic/beta the
iffier it gets.
---
yeah I knew I could do it that way, but I just like the idea of a dumb
switch that doesn't have to trigger any kind of logic to turn the lights
on for a test. With the flip flops I have all the sets and resets tied
together and I ground the set to turn them all off and the reset to turn
them all on. Not that big of a deal either way though.

---
Well, you're still triggering logic <G> but, right; once the code's
done and you push the button and all the LEDs go on, who cares?
---
Thanks for the clarification, I will have to read that data sheet more
carefully while I am waiting for the UPS man to come.

for landing and take off all of the wing leading edge LED's will be on
at once but the rest of the LED's will be flashing and during flight the
leading edge LED's will be flashing too. I think for the R/C airplane
application I will use about 100 LED's, so a few AA NiMHs or NiCds
should do just fine.

---
Depends on how long you want the LEDs to run, or how long you can fly.
Four cells will get you up to about 4.8V, and if they're rated at
1000mAH, 100 20mA LEDs on for 50% of the time will draw an average of
1000mA, so if you get some heavy-duty cells, the battery will last for
about 45 minutes to an hour.
---

I just did a rough guess, from your calculation, 8K sounds like it would
be plenty.

OK.
 
R

Robert Monsen

Jan 1, 1970
0
Chris said:
I know that Vf is different for different LEDs, but doesn't E = I*R
apply to LED's.

R is simply the ratio of voltage to current. For a resistor, R is
designed to be nearly constant. However, this is not true for almost
anything else you can put current through.

The current of an LED is given by the Shockley diode equation:

I = Is * (exp(-Vf/(N*Vt)) - 1)

It's obvious from this that the voltage over current isn't anywhere near
constant for any LED. If the diode is conducting, and the voltage goes
up a tiny bit, the current will go up alot. Raising the voltage
something like 60mV will increase the current tenfold!

Thus, it's not practical to attach a diode to a voltage source without
some other way to limit the current which isn't so fussy about voltage
vs current. Usually, one uses a resistor in series with the diode.
However, there are other ways to go, like a constant current source.

--
Regards,
Robert Monsen

"Your Highness, I have no need of this hypothesis."
- Pierre Laplace (1749-1827), to Napoleon,
on why his works on celestial mechanics make no mention of God.
 
R

Roger Johansson

Jan 1, 1970
0
Chris W said:
I know that Vf is different for different LEDs, but doesn't E = I*R
apply to LED's. I don't suppose you can measure the resistance of an
LED with an ohm meter, but if the data sheet for the led says If is 20
mA and Vf is 3.5V and I then hook that LED to a 3.5V source, will it
not draw 20 mA? I know for other color LEDs it will require a
different Vf.

Maybe this explanation is simple enough to understand for beginners:

Think of current as a waterflow. A battery is like a water reservoir at a
certain height (voltage) over the sea level (the negative side of the
battery).

If you connect the reservoir with the sea with a pipe a certain current
will flow through the pipe. If the pipe is narrow it will present a big
resistance to the flow, so only a little amount of water per second will
flow. With a wide pipe a lot of water will flow per second.

The pipe is like a resistor, thin pipes are high resistance, wide pipes
are low resistance. We could probably develop an equation similar to Ohms
law for pipe dimension, water flow and the height of the reservoir.
(resistance, current and voltage)

Now, an LED behaves like a dam, the water has to reach a certain level
before any water at all flows over the dam wall.

If the water level is one centimeter higher than the dam a certain amount
of water will flow over the dam wall every second.

That is like a 3.52 Volt battery connected to a 3.51 Volt LED, and the
result may be that the LED works as it should.

Imagine what will happen if the water reservoir level is raised to 3.54
meter/3.54Volt.

Enormous amounts of water/current will flow and the LED will burn up in a
millisecond.

The LED voltage you read in a data sheet is this voltage which separates
no current at all from enormous amounts of current.

So it is not wise to rely on the battery voltage, or to rely on supply
voltage at all. It is better to regulate the current, and let the LED
develop the voltage it is built for when that current goes through it.

If we return to our water analogy you should use a water reservoir which
is a bit higher up than the voltage/dam-height you expect the LED will
use, and connect the LED with the reservoir through a pipe/resistor which
gives the current you need, usually 20mA or so.

The data sheet tells you the LED voltage, not because you are to connect
such a voltage to it, but to help you calculate the resistor value you
need to create the current you need.

If your battery is 3 Volt, and the green LED creates a voltage of 1.9
Volt, then you need a resistor to take care 3-1.9=1.1Volt and 20mA.

1.1Volt=0.020*R (Ohms law for the resistor) R=1.1/0.020=55Ohm

So, put a 55Ohm resistor in series with your green LED and you will get a
current of 20mA through the resistor and the same current will run
through the LED.

If the battery voltage changes a little now it doesn't change the current
very much, because the resistor will still have roughly 1.1 Volt over it,
which allows a current of roughly 20mA through it, and your LED is safe
for some variation of the battery voltage.

(this analogy is not correct in several ways, but maybe it is good enough
to understand why LED's need a current regulating resistor)
 
C

Chris W

Jan 1, 1970
0
Roger said:
Maybe this explanation is simple enough to understand for beginners:

A little condescending don't you think? Just because I don't have any
real education or experience in electronics, doesn't mean I'm an idiot.
Imagine what will happen if the water reservoir level is raised to 3.54
meter/3.54Volt.

Enormous amounts of water/current will flow and the LED will burn up in a
millisecond.

I have had well over the the spec voltage drooped across an LED goofing
off one time, with a 5V voltage source that was capable of delivering 1
A, and it didn't burn up. Granted it wasn't hooked up for long, but it
was a heck of a lot longer than a millisecond. Just to be clear, I'm
not saying that I sunk 1 A through an LED and it survived, just that the
5V voltage source could have delivered 1 A if it were "asked" to.

(this analogy is not correct in several ways, but maybe it is good enough
to understand why LED's need a current regulating resistor)
The mathematical relationship of If vs Vf in an LED would have been
sufficient, and taken a lot less typing.


--
Chris W

Gift Giving Made Easy
Get the gifts you want &
give the gifts they want
http://thewishzone.com
 
C

Chris W

Jan 1, 1970
0
Robert said:
R is simply the ratio of voltage to current. For a resistor, R is
designed to be nearly constant. However, this is not true for almost
anything else you can put current through.

The current of an LED is given by the Shockley diode equation:

I = Is * (exp(-Vf/(N*Vt)) - 1)

Thanks, that makes it very clear. It's not that I can't supply the
correct voltage to get the correct current, just that the value is very
critical and probably varies from batch to batch, with temperature and
other factors beyond the control of my voltage supply. In this case I
am looking to get as much light out of the LED's as I can, but if I
weren't, couldn't I just supply a voltage that was enough lower than the
Vf to guarantee If was below 20ma and still get plenty of light for a
indicator or just testing on a prototype board? That way I wouldn't
have to have a resistor for every LED.

I'm glad I am getting this information before I get a regulator to
regulate the battery power going to my the LED's and circuit to control
the LED's in my RC plane.


--
Chris W

Gift Giving Made Easy
Get the gifts you want &
give the gifts they want
http://thewishzone.com
 
R

Robert Monsen

Jan 1, 1970
0
Chris said:
Thanks, that makes it very clear.

You forgot the smiley...
It's not that I can't supply the
correct voltage to get the correct current, just that the value is very
critical and probably varies from batch to batch, with temperature and
other factors beyond the control of my voltage supply. In this case I
am looking to get as much light out of the LED's as I can, but if I
weren't, couldn't I just supply a voltage that was enough lower than the
Vf to guarantee If was below 20ma and still get plenty of light for a
indicator or just testing on a prototype board? That way I wouldn't
have to have a resistor for every LED.
I'm glad I am getting this information before I get a regulator to
regulate the battery power going to my the LED's and circuit to control
the LED's in my RC plane.

One problem with putting an LED on a voltage source is that the forward
voltage of the LED decreases as it heats up. Thus, if it starts to heat
up, it'll pass *more* current, causing it to heat up even more. This can
lead to failure.

Also, if you put a bunch of LEDs in parallel, one of them may pass
slightly more current, and will heat up, possibly leading to the runaway
scenario given above. Some will be dim. You just don't know. Also,
passing more current through an LED leads to premature dimming.

However, they are your LEDs. It may work if the voltage is adjusted just
right. I'll bet that the LEDs won't be consistently bright, but give it
a try, and let us know what happens.

--
Regards,
Robert Monsen

"Your Highness, I have no need of this hypothesis."
- Pierre Laplace (1749-1827), to Napoleon,
on why his works on celestial mechanics make no mention of God.
 
J

John Fields

Jan 1, 1970
0
Thanks, that makes it very clear. It's not that I can't supply the
correct voltage to get the correct current, just that the value is very
critical and probably varies from batch to batch, with temperature and
other factors beyond the control of my voltage supply. In this case I
am looking to get as much light out of the LED's as I can, but if I
weren't, couldn't I just supply a voltage that was enough lower than the
Vf to guarantee If was below 20ma and still get plenty of light for a
indicator or just testing on a prototype board? That way I wouldn't
have to have a resistor for every LED.

---
You could, but unless you use a couple of different supplies you could
run into problems driving the logic with the reduced voltage you'd be
using to run the LEDs. If you decide to use the Allegro parts, though,
you'll sidestep the problem since you'll only need one resistor to set
the current into all 16 LEDs each chip drives.
---
 
R

Roger Johansson

Jan 1, 1970
0
A little condescending don't you think?

No. I don't have that kind of personality. I never feel offended by too
simple explanations. I like such explanations which let me work as
little as possible to understand something. And if I already understand
that issue I just jump to the next chapter.

If you are not a beginner, why do you read an article which starts with
the line above? And if you do, why complain when you find that it is
exactly that, an explanation for beginners?
Just because I don't have any
real education or experience in electronics, doesn't mean I'm an idiot.

I have no idea who you are or what education you have. I don't know if
you are the person who started this thread or somebody else. I reply to
questions in a newsgroup called sci.electronics.basics, intended for
beginners and hobbyists, and try to develop ways to explain things for
people with very little knowledge.

If you don't like explanations for beginners you can use a newsgroup
where you are expected to know the basics already, like
sci.electronics.design.

The most common question in sci.electronics.basics is "how do I use
an LED?" We see it seven times a week. So we try to find out how to reply
to that question in the most enlightening way possible, to people who
don't know anything about electronics, or about Google.

And especially to all the people with little knowledge who try to feed a
voltage instead of a current to a LED.

I don't talk to just one person when I write, there are other readers,
and people who search the usenet archives in the future, and I talk to
all of them. This is not email or a chatroom, it is usenet and I write
articles for all the readers, in the present and in the future.

I assume that other writers in the field of electronics read my
articles as well as I read their articles, and we learn new teacher
tricks and explanations from each other all the time. It is like an
experimental workshop in technical writing, and the person who started a
thread, usually referred to as "the other person" or the OP, because we
are too lazy to remember the names of all people who pass by, is maybe
less important than he thinks.
 
C

Chris W

Jan 1, 1970
0
John said:
---
You could, but unless you use a couple of different supplies you could
run into problems driving the logic with the reduced voltage you'd be
using to run the LEDs. If you decide to use the Allegro parts, though,
you'll sidestep the problem since you'll only need one resistor to set
the current into all 16 LEDs each chip drives.
for this circuit it isn't an issue but I was thinking of future projects.

Lets say I use a 4 cell NiCd pack. Fully charged the voltage can be as
high 5.8. By the time it reaches 4.4 under load, it is almost dead.
From what I was reading about that LED driver chip, it sounds like it
uses what would be considered a liner regulator. It says that if Vf on
the LED's is much higher than it is needed the chip will be dissipating
a lot of power. To avoid wasting battery power heating up that chip, I
was thinking of having using 2 switching regulators, one set at 4V for
the white LEDs and one at around 2.5 for the other colors. Also the
RCM3100 that I am using requires 3.15 to 3.45V. The 6276 chip lists the
typical 4.5 to 5.5 supply voltage limits, since the battery will very
quickly drop from 5.8 to less than 5.5 once a load is applied, I guess
battery voltage will run that chip fine. Unless you took the battery
off the charger less than an hour before hooking it up to the circuit,
it will probably be below 5.5v before you put a load on it anyway. I
guess that means 3 regulators. Maybe I will drive the lower voltage
LEDs with the same 3.3V I supply to the RCM3100, that will keep it to
just 2 regulators.


--
Chris W

Gift Giving Made Easy
Get the gifts you want &
give the gifts they want
http://thewishzone.com
 
Top