Thanks. Sorry I took a long time to reply, I had to wait until I had something interesting to say
So, after some measurements of the actual dynamo (using the PC soundcard and various loads) and simulation I could get a model, which is basically an AC source (fundamental + 1 harmonic) of a voltage proportional to speed, with a series R of about 2-3 ohm and series inductance of about 100 mH, plus some losses in the magnetic core.
Anyway connecting this to a resistor (like a 6V-2.5W bulb as specified dynamo manufacturer) makes the dynamo behave as a current source, since the E source is proportional to speed, and the series L impedance is proportional to frequency. It puts out about 500 mA. At low speeds (less than 15 km/h) it doesn't put a lot of useful power, hence the battery, useful for climbing hills.
Since the series inductance is the problem then I've designed a virtual load, basically a current sense, a uC (there was going to be one anyway), and a PWM H-bridge with the dynamo in the center of the bridge, and a big smoothing cap. The uC measures the current and sets the PWM voltage. This can simulate a load which looks like a negative inductor, which compensates the dynamo inductance, in series with a resistor. So the dynamo behaves like it's connected to a -90mH inductor in series with a load resistor.
Simulations show this extracts a lot more power (about 2-3x) especially at low speeds where it is the most needed. At high speeds it gives increased efficiency and lower drag on the bike, too.
And since it uses the dynamo's inductance as a kind of boost converter, even at low speeds I can get more than 10 volts (actually more like 20 volts) and at high speeds it's clamped to 30 volts. So this solves one problem : now I know the dynamo voltage is always going to be higher than the LED voltage. Nice.
Now I tought about buck-boost too but the one you suggest has 2 diodes in series, so using it with a source voltage of only 1 LiIon cell is a waste. Then there is LTC3780 which I used in my previous helmet light, at about 10 watts I measured more than 95% efficiency, this chip is really good, but complex to use, and needs at least 2 LiIon cells, it won't work with only 3 volts.
Besides I like buck converters : simple, easy, built-in short circuit protection, etc.
Your ideal diode controller gave me an idea :
- I want to have several LiIon cells onboard (it needs to charge batteries for the helmet lamp during the day, etc).
- It is easier to charge batteries one by one (I don't want to build a balancing charger)
- It is easier to use batteries in series.
So, I'm thinking about 4 LiIon cells (47 grams and 8 Wh each), all in series. Each cell has a bistable relay across it which can replace it with a piece of wire.
Say I have 4 full cells, I remove one to put in my helmet light (not the 10W one), and replace it with a discharged one.
When the uC wants to charge some of the cells (or just one) it simply disconnects the others. So that makes a really efficient balancing charger. When it wants to use the battery power it can switch out the almost dead batteries and only keep the full ones.
So it would be something like :
Dynamo -> 10-30V
10-30V -> buck switcher charger -> battery
10-30V or battery through ideal diode -> buck white LED driver, buck 5V reg for GPS
It seems like an elegant solution, good efficienct, and everything going out of the board will be short-circuit protected without any extra circuitry.