SEM 2018 Fuel Cell Controller and Converter
Written: Apr. 25, 2018
Last Updated: Apr. 25, 2018
At the 2018 Shell Eco-Marathon Americas, we managed to place first in the hydrogen prototype category in addition to winning a technical innovation award for our use of supercapacitors for load leveling. This supercapacitor configuration was a big part of the reason we were able to achieve a score 2.35 times higher than the second place team and, in response to so many questions about the system, we'd like to share the technology with everyone. Although this is nowhere close to a formal documentation or tutorial, we hope that you can still gather some interesting ideas and possibly make your own implementation! We'd love to hear what you do with it or if it helps; so let us know in the comments section!
Hydrogen fuel cells have a limited power output capacity. Most vehicles at the eco-marathon draw around 500-1000W during normal accelerations. To keep up with the demand, you either need a large fuel cell or a way to store the energy generated by your fuel cell for later. We chose the latter for a multitude of reasons including weight/space/cost savings, scalability, and most importantly efficiency. In practice, a battery would work as well, but supercapacitors generally have more desirable charge/discharge characteristics as well as longer lifetimes. Shell allows only the use of supercapacitors for the purpose of temporary energy storage. To see how we incorporate the supercapacitors, refer to the simplified schematic below.
Sizing the Supercapacitors
Sizing the supercapacitors is one of the most important considerations. Too small and you won't get up the hill. Too large and you're lugging around extra mass. We knew from last year's competition that we'd be drawing somewhere around 50W on average during the race. For a 3-4 minute lap, that makes around 10kJ of energy. We also know our hub motor operates most efficiently around 33-40V. The energy contained in the supercapacitor can be computed as 1/2 * C (V1^2-V2^2). Letting energy be 10kJ and solving for C, we find that we probably want around 40F of capacitance. Since ELDC capacitors are by far the most common type of supercapacitor and operate up to 2.7V, we need around 16 in series and each around 640F. These were pretty bulky and we were running low on space in the car, so we decided to play it a bit riskier and go with 400F capacitors - these still hold around 6.4kJ which is more than half the lap.
Supercapacitor Charging Circuitry
To charge the supercapacitors at the right voltage, we need to boost the fuel cell voltage up to 33-40V. The Horizon fuel cell we used was rated for 100W and typically outputs around 16-19V. Therefore, we used a boost topology voltage converter. The top-right block of the schematic below shows the meat of the boost converter. Explaining the inner workings of this configuration is a bit beyond the scope of this post, but rest assured, it will come later. At its core, the circuit simply boosts the voltage by some factor according to the microcontroller-outputted PWM duty cycle. A larger conversion ratio (Vout/Vin) results in the fuel cell voltage dropping (since supercapacitor voltage is quasi-constant) and consequently greater power draw from the fuel cell (since the fuel cell will always follow its I-V curve). This way, we can very precisely control the fuel cell load and charging of supercapacitors.
Why didn't we use an off-the-shelf voltage converter you might ask? There are various parameters which we seek to optimize which simply cannot be done without a custom circuit. For example, we can apply short-circuiting with the same boost circuit. We also seek to control power rather than voltage. Since pretty much every boost converter on the market controls voltage, attempting to coax out a desired power can be very difficult and unstable from a control theory perspective.
Fuel Cell Controller
The same microcontroller which performs voltage conversion also controls the fuel cell. This is useful because many times, the loading of the fuel cell affects its health and efficiency. The Horizon fuel cell has 3 inputs: a supply valve, purge valve, and fan. We also get a temperature reading from a thermistor. The supply valve is actually pretty much always on, so we usually have the BMS control that for safety reasons, but we are still capable of controlling it with the controller board for testing reasons.
The purge valve and fan are controlled via MOSFETs driven directly by the Teensy. Although it is not shown in the schematic, we had to add a rectifying diode on the fan output to prevent back-EMFs.
The software controlling the controller is still in development and I would not yet consider it stable, but I'll be sure to make another post when it reaches a stable point. Until then, you can reach out to us directly via this Google form to request all the files or if you have any questions!
Hopefully, this is just the first of a series of posts describing the technical insights collected over many hours of refinement. Let us know if you have any questions and best of luck in your vehicle building!