Prev: Magnetism is really -- WHAT?
Next: low-end scope
From: Joerg on 1 Mar 2010 15:54 Charlie E. wrote: > On Mon, 01 Mar 2010 11:12:58 -0800, Joerg <invalid(a)invalid.invalid> > wrote: > >> Charlie E. wrote: >>> On Mon, 01 Mar 2010 10:38:45 -0800, Joerg <invalid(a)invalid.invalid> >>> wrote: >>> >>>> Charlie E. wrote: >>> <snip original problem...> >>> >>>>> Joerg, >>>>> Thanks for the advice. Yes, I had been concentrating so hard on the >>>>> amplifiers I never really considered the LEDs. In my mind, they would >>>>> just 'work' and I could then adjust accordingly. Didn't realize that >>>>> they would vary that much. Will have to look at maybe adding a higher >>>>> voltage, and go with the constant current drives for them. This does >>>>> need to be pretty accurate! >>>>> >>>> Where is your VCC coming from? Regulator? If so, what's the minimum >>>> voltage going into that regulator? If it is a battery that won't drop >>>> below about 4.5V and has low load ripple (low source resistance, added >>>> capacitors) fixing this part of the circuit would become fairly simple. >>> Hi Joerge, >>> I only have two AA batteries, so voltage is only about 2.5-3.1 volts. >>> That was why I added in the power supply, to try and stabilize that >>> voltage. Most of the parts were pretty power tolerant, but I figured >>> (somewhat correctly) that the LEDs would be pretty voltage sensitive. >>> >> That will require switch mode conversion, no other choice. >> >> >>> What do you think of this idea? Take an LED driver chip, like an >>> LM3519 to do the voltage step up and current control, and then three >>> fets to switch that current to each of the LEDs. Means a chip, a >>> small inductor and schottkey, a couple of caps, and three fets. >>> Shouldn't take up too much board space or budget... >>> >> Nope, it ain't quite that easy. It doesn't have an external sense >> resistor and, consequently, the "accuracy" to which it holds the current >> is really horrid. Look at the Iout versus Vin, that's just not good >> enough. If you want to use a chip (or three) you need to find one with >> at least and external Rsense. >> >> It is usually easier and less expensive to boost that voltage from the >> two AA cells to 5V and add the analog current source circuits I >> mentioned in my other post (one per LED section). The PIC could be >> supplied directly from the AA cell if it's happy with 2.5V. > > You are probably right. One problem is that the opamps for the > phototransistor (ambient light sensor) should also probably stay on > the battery, to prevent overdriving the ADC inputs for the PIC. There > are the other LED drivers with an external current sense resistor, so > will look into the tradeoffs involved... > The opamps can be handled with series resistors and, if necessary, BAV99 double-diodes. But if you have suitable opamps you might as well run them off the PIC rail. I'd really consider just one li'l boost converter that makes 5V. Tons of those available. Then current sources for a clean control. -- Regards, Joerg http://www.analogconsultants.com/ "gmail" domain blocked because of excessive spam. Use another domain or send PM.
From: whit3rd on 1 Mar 2010 15:57 On Mar 1, 8:54 am, Charlie E. <edmond...(a)ieee.org> wrote: > Sensor is simply an RGB LED and a > phototransistor, buffered by some amps, and then digitized by a PIC24. Your digitizing scheme is not what you really need; the small current can easily be integrated onto a capacitor, and a comparator input with one of the nice timer sections can give a single-slope digitization of the noisy input. Using instead the DAC section, your noise bandwidth is quite high. Current-input D/A conversion is easy, and voltage conversion then voltage DAC has no real benefit here.
From: Jon Kirwan on 1 Mar 2010 16:07 On Mon, 01 Mar 2010 11:51:16 -0800, Tim Wescott <tim(a)seemywebsite.now> wrote: >Charlie E. wrote: >> On Mon, 01 Mar 2010 12:08:17 -0700, Jim Thompson >> <To-Email-Use-The-Envelope-Icon(a)My-Web-Site.com> wrote: >> >>> On Mon, 01 Mar 2010 09:30:34 -0800, Charlie E. <edmondson(a)ieee.org> >>> wrote: >>> >>>> On Mon, 01 Mar 2010 10:25:21 -0700, Jim Thompson >>>> <To-Email-Use-The-Envelope-Icon(a)My-Web-Site.com> wrote: >>>> >>>>> On Mon, 01 Mar 2010 08:54:53 -0800, Charlie E. <edmondson(a)ieee.org> >>>>> wrote: >>>>> >>>>>> Hi Guys, >>>>>> Ok, going to put myself in harms way, and ask for a little design >>>>>> advice. I have been working on this project for a while now, and it >>>>>> has gone through several iterations, and I keep having the same >>>>>> problem! >>>>>> >>>>>> First, the project: I am designing a small color reader for the >>>>>> visually impaired. Really simple operation - put it against the >>>>>> object you want to tell the color of, and it will say "RED" or >>>>>> whatever the color is. Sensor is simply an RGB LED and a >>>>>> phototransistor, buffered by some amps, and then digitized by a PIC24. >>>>>> So, what's the problem? I can't get a stable reading. In normal >>>>>> operation, this thing will run for about two seconds, and then be >>>>>> turned off. To test, however, I run it in debug mode for hours. When >>>>>> I first turn it on, and calibrate it to a white sample, I will get one >>>>>> set of calibrations. Let it sit for about two minutes, and it starts >>>>>> to drift. In about half an hour, I will have readings totally off the >>>>>> scale. >>>>>> >>>>>> So, why am I baring my soul to ya'll? I need your help identifying >>>>>> where the gain drift is coming from, and some ideas on how to control >>>>>> them. I have the schematic here: >>>>>> >>>>>> http://edmondsonengineering.com/Documents/Rainbow%20color%20Reader%20Schematic.pdf >>>>>> >>>>>> Basic description - MCU turns on an LED. The phototransistor is first >>>>>> buffered by a non-inverting opamp with a gain of 2, and the signal is >>>>>> split. Part goes directly to a PGA where it is first attenuated, and >>>>>> then the PGA boosts it up. This gives me a calibration control to >>>>>> deal with difference in output of the LEDs. The original and PGA >>>>>> signal are added, and this is then applied to another non-inverting >>>>>> opamp with a gain of 2. I also have one feed before this opamp to an >>>>>> ADC input on the PIC. >>>>>> >>>>>> Problems I have already solved: >>>>>> First, each LED has a different output level. Red needs a gain of >>>>>> around 2, BLUE a gain of around 5, and GREEN a gain of about 7. The >>>>>> PGA was added to give me an adjustable gain from around 2 to 14, with >>>>>> the two different taps into the separate input channels of the PGA. >>>>>> This gives me 16 different gain levels to play with. Using the tap to >>>>>> the second ADC channel, it actually gives me 32 different levels. >>>>>> >>>>>> Right now, RED uses this lower gain channel, and is steady as a rock. >>>>>> Part of this may be that my VCC is 3.3 volts, and only RED has a >>>>>> forward voltage below this. Both GREEN and BLUE have forward voltages >>>>>> of 3.4 volts. >>>>>> >>>>>> So, potential problems? could it be that repeated use warms up the >>>>>> GREEN and BLUE LEDs so that they become more efficient? Could the >>>>>> power supply drift higher as it warms up? Could the opamps drift with >>>>>> slight changes in temperature? Any advice ya'll can give will be most >>>>>> appreciated. >>>>>> >>>>>> Thanks, >>>>>> Charlie >>>>> What keeps the LED's at their _constant_ current? >>>>> >>>>> ...Jim Thompson >>>> Hi Jim, >>>> Basically, it is whatever the PIC outputs will put out. They are >>>> rated at 18mA, but I suspect that they are putting out a whole lot >>>> less... >>>> >>>> Charlie >>> Don't you want them to stay at a constant current? >>> >>> ...Jim Thompson >> Yeah, I realize this now... ;-) >> >> this is my first foray into photometry. Wanted something cheap and >> easily reproducible. I just 'assumed' that an LED would give the same >> output with the same drive... >> >> Oh well, I guess the boss will just fire me! >> >> Charlie > >Well, there's drive and there's drive. In the case of an LED, the drive >is current. And even then, it's not generally reasonable to expect that >a power conversion device (like an LED, that transforms electric power >into light) is really at all precise. Use an LED, or a motor, or a >solenoid, or whatever, 'in the raw', and you have to expect it's >performance to vary. The more efficient it is, and the less expensive >it is, the more you can expect it to vary. This is a very important point. I've used LEDs where precision was important in several different uses, where we hoped for better but have learned a little in the process. In one, we had them thermally stable (heated, by design) and very precisely current controlled (better than 0.1%) and still needed a long, 2-day bake-in testing process to cull the "bad ones" which drifted like hell. We'd select only those which showed a very gradual change near the end, but that was perhaps 2% or so? The rest were tossed out. The results were excellent, after that, and they definitely served their purposes well. But ... In another, which I'm currently doing something to correct right now, the exact same part number from the same manufacturer "worked great" with about 50% or better passing manufacturing testing and then, a few months back, suddenly that rate dropped to about 1% or so... and shipping nearly came to an abrupt halt. Fixable, but parts change and if you don't buy everything you need "today" you might find yourself in deep trouble "tomorrow" if you depend upon specs that aren't front and center on the data sheet. We didn't have a choice here, as the whole thing is basically a bleading edge FAB device. But still ... LEDs, driven as well as you may wish, current wise, aren't what you call "stable." Even adding thermal control doesn't eliminate drift. Not even close, for some needs. I think Charlie's method needs to be functional in the face of, at best, modest current control, led variability, and drift over time and ambient temps if it is going to be practical. I think that can be done. But I think some mathematics will be required here. I'd start with the idea of a linear calibration matrix, 3x3 in size, created by a quick calibration step and inverted and then applied to the data he gathers from then one. Each measurement on his system is a 1x3 vector. I've used such methods with completely uncalibrated RGB LED products from OSRAM, to make excellent use of them that is repeatable and cheaply calibrated in less than a few seconds. Jon
From: Jon Kirwan on 1 Mar 2010 16:09 On Mon, 01 Mar 2010 13:07:50 -0800, I wrote: >then one then on.
From: dcaster on 1 Mar 2010 16:44
On Mar 1, 4:54 pm, Charlie E. <edmond...(a)ieee.org> wrote: > Hi Guys, > Ok, going to put myself in harms way, and ask for a little design > advice. I have been working on this project for a while now, and it > has gone through several iterations, and I keep having the same > problem! > > Thanks, > Charlie Have you considered using an incandescent lamp and two phototransistors with red filter in front of one and a blue filter in front of the other. If you run the lamp with a slightly low voltage, it should have a long life. A 49 lamp runs on 2 volts and 60 ma. Dan |