Average Current Sensing Empowers Blower Motors
Jun 1, 2007 12:00 PM
By Ramesh T. Ramamoorthy, Senior Applications Engineer, STMicroelectronics, Schaumburg, Ill.
News & Features From Auto Electronics
Committed to improving hybrid electric cars
New Motors for Hybrid Vehicles
Battery Firms Battle for Hybrid Hegemony
Innovative Bipolar Plates for Fuel Cells
See More Headlines
Top Articles
Exploring Current Transformer Applications
Ultracapacitor Technology Powers Electronic Circuits
Buck-Converter Design Demystified
Sensorless Motor Control Simplifies Washer Drives
PET Resources
Buyer's Guide
Conferences
Engineering Jobs
Power Electronics Events
Rent Our Lists
Spotlight on Digital Power
Obtaining Average Current
For linear torque control, it is important to have the average phase current as feedback to the current regulator. Preferably, this information will come from the dc-link current using only a shunt resistor because of its low cost and simplicity. However, the dc-link current is not continuous and is present only during the PWM on-time. During the PWM off-time, the load current freewheels back through the freewheeling diodes in the inverter without passing through the dc-link resistor. To appreciate this fact, analyze a simple buck converter feeding an R-L load (Fig. 3).
Consider that the switching frequency, PWM on-time and load inductance are such that the load current is continuous. If the PWM frequency is greater than the corner frequency of the load by a few orders of magnitude, then the load current will be more linear than exponential.
Fig. 4 shows the load voltage, load current and dc-link current waveforms. A close look at the load current waveform reveals that its average value is equal to its instantaneous value at the center of the PWM on-time or off-time. Since the load current flows through the dc-link shunt resistor only during the PWM on-time, sampling the dc-link current at the center of the PWM on-time gives the average load current.
When considering the dc-link current, there is an analogy between a buck converter feeding an R-L load and a three-phase inverter feeding a BLDC motor operating in six-step mode (Fig. 5). In six-step mode, only two of the three phases of the BLDC motor carry current, while the third phase simply floats (except for short durations after a commutation when the outgoing phase is in the process of losing its stored inductive energy).
From an inverter standpoint, only two switches are enabled to carry current at any time: one from the group of three high-side devices and one from the group of three bottom-side devices, depending on which windings should carry the current at that instant. The impedance presented to the dc bus appears as two windings in series, connecting with the bus at a certain duty cycle. This is true even though the windings get switched in and out sequentially at different times. Under these circumstances, the inverter closely resembles the buck converter. Hence, sampling the dc-link current at the center of the PWM on-time directly gives the average motor current, which can then be used in a feedback loop for torque control or current control.
ST7FMC Motor Control
The main feature of STMicroelectronics' ST7FMC is its motor control macro cell, which is capable of generating control signals to drive a sensorless or sensored three-phase BLDC or ac motor. References 1 through 5 explain in detail the various methods used to control a three-phase BLDC motor using ST7FMC.
Fig. 6 shows the simplified block diagram of the ST7FMC's motor-control macrocell hardware. The macro-cell has multiple timers performing various functions in parallel to generate control pulses for the motor. A self-clock-scaling 8-bit timer (MTIM) monitors the time difference between successive phase BEMF zero crossings (Z events) of the motor.
When a Z event occurs, the timer value is captured into MZREG and the timer restarts counting from zero. Simultaneously, the previous content of MZREG is transferred to MZPRV. This timer is a part of what is called delay manager, which establishes the timing for the next instant of phase commutation (C events). All in parallel, a 12-bit free-running counter generates the PWM carrier for inverter switching. A PWM output is generated as a result of comparison between this carrier and a compare register (MCPU) that carries pulse-width (duty cycle) information. This PWM signal is directed to one of the six inverter switches by a channel manager that acts as a de-multiplexer on the PWM output. The channel manager also selects a complementary switch, as programmed by the user, that, together with the switch receiving PWM, will force current into the motor windings. Based on the motor-terminal voltages or Hall sensor outputs, an analog block identifies the motor-phase BEMF Z events and captures the contents of the MTIM timer into MZREG and the previous value of MZREG into MZPRV, beginning a new cycle.

