What about the fact that we no longer have forward/reverse signals? For bipolar PWM, forward and reverse information is encoded within the PWM signal itself. Assuming no load, a PWM value with a duty cycle above 50% will result in forward motion, and a value with a duty cycle below 50% will result in reverse motion. To the mechanical engineers there, this is electrically equivalent to a hydrostatic continuously variable transmission (CVT). With such a system, you don't have separate forward and reverse gears. You simply move a joystick to control both speed and direction simultaneously, with the intermediate position corresponding to zero speed.
Bipolar PWM technology is essentially a four-quadrant technique. As long as the applied average motor voltage has the same polarity as the motor's back EMF voltage and its amplitude is greater than the back EMF, the motor will operate in motoring mode. You can click here to watch a simulation of bipolar PWM running in quadrant 1. However, if the applied average motor voltage has the same polarity as the back EMF but its amplitude is less than the back EMF, the motor will operate in generating mode. You can click here to watch a simulation of bipolar PWM running in quadrant 4.
Another advantage of bipolar PWM technology is that it requires only one PWM signal from the processor (two are needed if the dead time is generated within the PWM module itself). Assuming the dead time is provided externally by the FET gate driver, this means that up to six DC motors can be driven using bipolar PWM on a processor with six independent PWM signals!
But perhaps the biggest advantage of bipolar PWM is that the motor current always flows through a single shunt resistor, regardless of the state of the PWM signal. Therefore, since we can continuously observe the motor current, the question becomes, "When should we sample the current waveform?" While I intend to address current sampling in more detail in a later article, let me briefly explain here. In most cases, you want to obtain the average motor current as a function of time. However, the problem is that the points on the current waveform corresponding to the average current value will appear at different times within the PWM cycle, depending on the duty cycle. Therefore, we either have to use a timer to trigger the ADC at different times within the PWM waveform, depending on the command's duty cycle, or…
We can use center-aligned PWM. In most cases, we choose center-aligned PWM because there is harmonic interaction between two independent PWM signals. But in this case, we only have one PWM signal. So why is using center-aligned PWM helpful? Here's how center-aligned PWM is created in the PWM module in this case, offering unique advantages when applied to bipolar PWM. Referring to the diagram below, a center-aligned PWM can be generated using a triangular counter waveform, where the counter counts up to the maximum magnitude, then flips and counts down to the minimum magnitude, and so on. As the modulation voltage changes, the PWM pulse width also changes, causing the carrier peak and trough to appear in the center of the low and high pulse widths, respectively. If we ignore any delay caused by the dead time, we'll see that the average current also appears when the carrier reaches its peak or trough! Pretty neat, right? On the PWM module used on our C2000 processor, an ADC flip-flop can be generated at the counter peak and trough, which can then be used to sample the current when the current waveform equals its average value. In fact, with bipolar PWM, you have two opportunities to sample the motor current within a PWM cycle, which allows you to run the digital current loop at twice the frequency of the PWM as needed.
Another problem that arises when reconstructing motor current waveforms is that with very narrow pulse widths, the shunt signal reflects the motor current for only a very short time, and may be too short to obtain a reliable reading. However, with bipolar PWM, if the pulse width of one PWM state is too short, you can simply switch to another PWM state, where the shunt signal becomes correspondingly longer! Therefore, you can always be guaranteed at least one interval within each PWM cycle (regardless of the duty cycle) where the shunt signal width is wide enough to easily and accurately read the motor current.
However, bipolar PWM technology does have a notable drawback: compared to unipolar PWM technology, the motor voltage waveform contains more harmonic components. The figure below compares the normalized RMS content of unipolar and bipolar PWM voltage waveforms (minus the DC component) as a function of the PWM duty cycle swept from -1 to +1. These additional harmonics not only lead to higher current ripple but also cause additional motor heating. This is why bipolar PWM technology is generally limited to motors with high electrical time constants, where these harmonics can be filtered out better. If the motor's electrical time constant is not high, the PWM frequency must often be increased to reduce current ripple. However, this increases switching losses in the H-bridge.
However, in some applications, even this drawback can be translated into an advantage over unipolar PWM. Sometimes you need to adjust the motor current very quickly (e.g., high-frequency microstepping on a stepper motor). In fact, some applications require a rapid transition from unipolar PWM to bipolar PWM at specific points in the current waveform.
A VisSim simulation can be found here, comparing unipolar and bipolar PWM on the same motor running under the same load. I encourage you to play around with this simulation and see if you can empirically verify the above diagram. In our next article, we'll explore another unipolar PWM technique that can actually double the PWM frequency seen by the motor while still switching transistors at the regular PWM frequency. It also provides a springboard for understanding how standard three-phase sinusoidal PWM works.