NB: See final edit. The question is based on a false premise
Friends are making a test-bench for automotive ("Lundell") type alternators. They were supplied with an example alternator plus a voltage regulator module (the alternator requires external excitation current control). But they were not able to use that regulator, because it absolutely requires having a battery in the system, which they don't, as it's a test bench (the regulator also tries to be "smart", detect battery type, apply charging algorithms, etc).
So I gave the idea to design a very simple regulator to meet their spec, as it is almost a textbook control theory problem:
- you have a setpoint: the alternator should produce 13.5 volts
- the process variable is the actual output on the alternator power terminals
- the control variable is the excitation current
The wiring is as follows:
V1 and V2 are AC/DC power supplies (V1 is hefty, capable of many amperes), and replace the battery in the typical automotive application. PL1 is a programmable DC load, and includes some hefty capacitance in front of it.
When it works, the alternator is being driven by an external motor, which rotates it at a constant speed, say 1500 RPM. The MCU adjusts the duty cycle to Q1 (PWM is at 1kHz), so that the alternator's output voltage (as measured by VM1, and independently by the MCU via Vsense) is about 13.5V. E.g. at 1500 RPM and 50A load (as measured by AM2), the excitation current is ~2.7A (through AM1). If they increase the load to 60A, the voltage (VM1) dips briefly some 100-200mV before the MCU counteracts: it increases the excitation to e.g. 2.8A, and the voltage is back at 13.5V
Our initial tests were with voltage setpoint 14.4V, at 1500RPM and up to 80A load. The regulation worked all OK up to 75A. At 80A the following happened: the voltage (@VM1) started dropping, the MCU tried to compensate by increasing excitation current, but to no avail: even at 100% duty cycle (~7.5A through AM1), the voltage was far below the setpoint, ~6-7 volts. It seems the rotor saturated. It was fine up to ~3.5A, but saturated above that.
We repeated the test with a lower setpoint, 13.5V. This time the saturation happens around 130A load. This is still below what's expected by the alternator (it is heavy-duty model, intended for truck or bus usage, rated 6000 RPM/450A. By linear interpolation, you'd expect 112.5A at 1500RPM, however in reality the relation is sublinear, as the efficiency is much better at lower RPM, hence we expect more than 130A at 1500RPM).
It may be possible to produce more current if the PI controller is tuned further. What puzzles me is that near the max nonsaturated excitation current point, the regulator seems to be in a particularly unstable area: decrease the excitation current just a bit, and the output voltage falls. Increase the excitation current a bit, you get into saturation and the voltage falls. I.e. the regulator needs to "dance on the tip of the needle", which seems like an awkward position to be in.
How do real automotive voltage regulators avoid this "dancing on the tip of the needle" problem and ensure they don't saturate the excitation coils? Do they do a characterization beforehand? Or smart algorithms? Or something completely different?
Number of comments here correctly point out that the rotation speed of the alternator is too low for a typical automotive alternator, which may be or may not be relevant (it is a bus/truck alternator for lower speeds). We'll further test larger speeds and currents, but my primary concern is how to avoid the "dancing on the tip of the needle" problem, which would be present on any RPM.
The power input in the alternator at the setup mentioned above is 14 Nm @ 1500 RPM, so it gets ~2.2kW input mechanical power. I know it would require more RPM for more power.
However, let's assume I've placed a 0.1 ohm power resistor across the output terminals of the alternator. The shaft is driven at 1500 RPM and I slowly increase the excitation current, from 0 to 7.5A (the max possible).
I'm assuming (correct me if I'm wrong!) that the alternator output voltage will then have a roughly sawtooth response to the excitation current ramp. It would start at close to 0V at zero excitation, then rise as the excitation increases, reaching a maximum (e.g. 13.3 volts around 3.5A excitation), then drop sharply as the rotor gets into saturation.
It is this maximum point I'm interested in. If my regulator is there, running at 3.5A excitation, it would be measuring that the output voltage is below the target, then try increasing the excitation. This will lead to the voltage dropping sharply, but since it is a dumb PI controller, it would simply apply more excitation, driving the rotor even harder into saturation. What kind of approach can avoid that behaviour, and for the example given, stay at the 3.5A point where it gets the most power out of the alternator? It is somewhat akin to maximum power point tracking. As I understand from the existing comments, the actual regulators on alternators don't do this, they are of the dumb-but-reliable type, that just won't stand being overloaded (and also the battery is there to cope with brief power surges).
As it looks, the whole question is somewhat moot, as it is based on a false premise: that the rotor saturates, and typical automotive applications need to deal with this scenario. I believe they don't. After further experimentation, my friends found several odd things about the max excitation current at different temperatures, and concluded that the alternator is defective. They swapped it for a different one, and the saturation issue is gone. With a constant load (e.g. load resistor), increasing the excitation increases the output voltage, it's a non-linear relationship, but it's monotonic, not sawtooth-like as I presumed in EDIT 2. At no point does the output voltage drop when you increase the excitation current. Indeed, the output voltage is at the maximum when you apply 100% duty cycle.
Mods, feel free to close the question if you see fit.