This is the most efficient way I can think to do it. There's a MAX1682 charge pump to give you 6.6v at the super capacitor. The voltage doubler is pretty efficient, probably more then 90%, but they can't supply huge currents. But what's the average current?
5A * 100us / 10s = 0.05mA.
That's well within the MAX1682's 45mA spec.
From a brief look at the datasheet, I couldn't see any reason it wouldn't work with such a large capacitor for C2.
Thanks to Russell McMahon for advice about charge pump efficiency. It looks like an inductor based solution would be more efficient, but would require more components. Take a look at something like MAX17067. This also has the benefit that it can produce the higher voltage required by three LEDs in series. I'll add it to the schematic tonight.
Now the important bit. You'll notice that there's no current limiting resistor. The current limiting will be performed dangerous open-loop style by the MCU. You'll have to get this right by calculation or trial and error (or both).
By supplying PWM to Q2's gate, you will be able to use the inductor as an efficient current limiter. But you won't get a very reliable current this way. It may not matter hugely, as long as 1) sufficient power is delivered to the led in 100us, and 2) the LED's current limit is not breached.
Here's a simulation I did in Altium. I used a 5uH inductor (not the 10mH shown in the schematic). And I supplied PWM with 12us on time, and 3us off time to the gate. I didn't use the 100uF capacitor, just a fixed voltage source instead. So you could expect some current droop.
Red is the current in amps, and blue is the PWM signal. You can see that you get close to 5A within 20us, and stay pretty close to it after that.
If you want better current regulation, then you can add a sense resistor, and use it to feed back to the MOSFET.
Here we have a 0.5ohm current sense resistor. At 5A, this should give us 2.5v to the comparator negative input. This is compared against the value from the pot. If the current is too high, the comparator switches off, and vice versa. The switching speed will vary depending on the hysteresis of the comparator. If the speed is too high, then you can increase the hysteresis (and decrease the switching speed) by adding a few hundred k resistor between the comparator output and its + input.
Note: You must use a high speed (<0.1us propagation delay) comparator with open drain output. You might look at the LMV7235 which is available from Farnell for about one pound.
Added:
The circuits above assume only one LED. If you still want to use 3 in series, you can use two MAX1682s to give you 13.2v.
Also, many thanks to Telaclavo for his advice on this.
Added:
OP has stated:
- He wants a very fast rise time on the current
- Not interested in efficiency
- There will be a single pulse, or two pulses 80us apart, then a long pause
- Wants a simple, robust circuit
Here is a circuit which is a linear current regulator. This is only feasible because the duty cycle is very low. This circuit will likely over-heat the transistor if the duty cycle is too large.
Thoughts:
- A high voltage from the MCU or 555 will switch on the LED. A low voltage will switch it off.
- Set the current using the voltage divider, or put in a pot so that it's adjustable. Or use a digital pot or DAC so the MCU can vary it.
- In the schematic, the current is set to 3.3A. You can set it to whatever you want.
- I drew only one LED, but it's meant to represent three LEDs.
- If you use only a single LED, then set the boost regulator's output voltage lower accordingly.
- I suggest a 555 based pulse generator for safety reasons, so it would be fairly hard to leave the current on
- You could also make it safer by choosing a boost regulator which has a current limit. So, even if the flash is left switched on, the regulator would just limit the current anyway.
- I cannot say what the switch on time will be. This will depend on the inductance of your wiring.
- You should lay out the PCB carefully to avoid EMI.