Power Filter/Regulator Circuit
Although normal car battery voltage is understood to be 12V, in fact it has fairly large fluctuations. It's settled around 12V when engine is off, but if you start engine, it drops down to 6-8V, due to the huge load of engine cranking. When engine is running, the voltage becomes about 14V to charge battery, but with noise from alternator, and from other electrical loads, including motors (both alternator and motors are inductive). Such dirty voltage must be dangerous thing to hook up to a computer. I found on the web that a guy is running his EPIA from car power directly. Alghough it worked fine when I directly plugged power to EPIA from cigarette lighter socket, it would be broken if I continued to do so.
Therefore a circuit is needed to convert car supply to regulated 12V. However, it is not an easy task to survive the low voltage situation while starting engine (it would need a switch mode regulator to step up the voltage, or a separated battery). Hence, I decided to use LM1084, a low drop-out voltage (LDO) type 3-terminal regulator chip, to convert voltage higher than 13V (after engine starts) to 12V. LM1084 operates at about 1V drop-out, and can supply 5A maximum (Cubid case is rated 4.58A.)
Also I wanted to run PC for a while after engine is turned off, to shut down the PC gracefully. While that time, it is powered by battery rather than alternator, then it can't supply 12V because the regulator drops 1V. So, I experimented with LM1084, inserting it between PC and the power brick. Then, alghough output voltage became 11V, PC worked without a problem. I decided to use this circuit and run PC from battery while it is shutting down. This lets DC-to-DC board work at out of specification, hence gives stress to it, but I concluded it is okay because shutdown time will finally become very short, battery voltage is relatively high just after engine off, and my PC's power consumption is less than a half of DC-to-DC board design.
At input side of regulator, I inserted a series inductor in addition to normal decoupling capacitor to form a LC filter, so that it can resist transient voltage. If supply voltage temporary goes up, it can be absorbed by regulator. But if it goes down below 13V, regulator can't do anything but drops its output voltage. If an inductor is there, it prevents capacitor from discharging into battery side, keeping regulator's input voltage high. It also prevents noise emission, smoothing the PC's pulse-ish current consumption.
Additionally, I added a surge suppressor diode (20V) designed especially for car electronics, to protect regulator from higher voltage than its maximum input (30V). Also a DC line filter is inserted just after the input from car, to eliminate high frequency noise.
The diode between output and input of LM1084 is to protect regulator when supply voltage suddenly drops down and the potential difference becomes reverse. Be sure to choose values of inductor (L) and capacitor (C) at input side so that L/C is small enough. If not, large overshoot/undershoot voltage is caused by load transient. Besides large chemical capacitor, I also put a couple of 0.1µF multi-layer ceramic capacitor near the regulator, to stabilize it against high frequency transient.
Relay is at after the regulator, because controller circuit needs regulated and backed-up power. Because of this, regulator is always connected to the battery. I measured the current with no load, it was 5.2mA. It was more than I expected, but I checked the datasheet and it says 5mA typical. I became a little anxious about the battery, and calculated, then it was less than 1Ah if I leave the car for 1 week. Car battery is 40Ah, 55Ah or something like that, that was no problem, after all.
The major headache on series regulator design is heat. Series regulator does its job by converting unneeded electricity into heat. Power supply of this PC is rated 55W, and 12V power brick is labeled 4.58A.
So I calculated it letting maximum current 5A. When supply voltage is 14V (my car was 13.8V), (14V - 12V) * 5A = 10W, regulator dissipates 10W, that means, it generates this much of heat. I calculated thermal resistance based on datasheet, then it turns out to needing 4°C/W heat sink.
However, my mainboard is lowest power one in the EPIA series, and I don't put in any other drives than a hard disk, its consumption must be much less than 55W. At actual measurement, it's 2.1A when HDD is spinning up, 1.2A when Linux is idle, and 1.6A when HDD and CPU working at full speed. (Note that they are measured by watching DMM, maximum momentary current should be higher.)
I actually attached regulator to a heat sink lying around (thermal resistance was not specified though, I guess it's around 10°C/W), ran PC from 12V power through it, then it only got slightly warm. It seemed enough.
Once, I thought to use chassis as a heat sink, but it can be placed very near the case fan so it's forcibly air-cooled, I decided to go with that heat sink.
Now the circuit design is finished, I begun making it. Although I don't make printed circuit boards, I use circuit board CAD pcb to design the optimal layout of components. At this point, it became clear that all of the circuit can't fit in a perforated circuit board I had, I split the circuit into regulator board and controller board.
I used connectors for all connections to outside of the board. They look neat. The one which goes to controller board should be 4P, but 5P is used because I couldn't get the same one. For power lines, the connector pins are tightly and carefully attached to thick wires, so it will not fire.
Next | My Linux Car Project