By Seraphin Sepa Bikek and Frank Thimm
Brushless dc motors offer several advantages over traditional brushed ac and dc motors, including lower materials costs, greater reliability, and longer lifetime. However, since brushless motors don’t self-commutate, torque control, which is fundamental to successful operation of any servo system, presents a more complex challenge.
As a result, several strategies and techniques have evolved for controlling torque in brushless motors. These techniques perform commutation on the motor’s behalf as well as calculating the optimal current for each stator to produce the maximum torque. The aim of such control for a brushless motor is to obtain maximum torque by adjusting the current in the stator windings to produce a net magnetic field that is orthogonal—or in quadrature—to the rotor field.
Any component of the stator field acting parallel to the rotor’s field will produce a force that has no turning effect. This direct component wastes energy and places additional stress on the rotor bearings. While maximising the quadrature component, torque control aims to minimise or, ideally, eliminate the direct component to ensure optimal efficiency and reliability.
To control three-phase brushless motors, which means having three stator phases positioned at 120º intervals around the axis of the rotor, several commutation techniques can be used to adjust the current in each phase to produce a net stator field in quadrature with the rotor field.
Common to each method of commutation, the motor current is sensed and compared with the desired torque, and a proportionalintegral (PI) function then acts on the resulting error signal to generate a correction. This correction signal is subsequently pulse-width modulated and used to control the output bridge of the motor driver.
In trapezoidal motor control, which is also referred to as sixphase motor control, the stator currents have equal magnitude in the two phases on either side of the rotor, while the third stator is disconnected from the power source. Rotor-position data from the three Hall sensors that are located in between each pair of stator phases will determine the phase that will be disconnected.
As the rotor turns, the current in each phase is switched between the maximum positive value, zero, and the maximum negative value. The resulting trapezoidal current approximates to a sinusoidal waveform. Although the average stator field in any period is in quadrature with respect to the rotor field, the instantaneous net stator field can lead or lag by up to 30º. At low rotor speeds, this brings the potential disadvantage of imprecise control, as well as generating high levels of audible noise.
Sinusoidal control produces smoother torque by applying sinusoidal current waveforms to the stator windings. The currents are mutually phase-shifted by 120º, so that the vector sum of the stator field is orthogonal to the rotor field.
Compared to trapezoidal control, more accurate rotor-position information is required to generate the sinusoidal current waveforms. This may be achieved with an angular encoder or, alternatively, by using sensorless position detection based on an analysis of instantaneous motor current.
However, accurate torque control depends on rapid computation of the required current value as soon as the rotor position is sensed. At high rotor speeds, the limited bandwidth of the PI function results in an increasing lag between the calculated stator current and the actual rotor position, which leads to inefficient operation.
Field-oriented control (FOC), sometimes called vector control, overcomes the poor low-speed accuracy of trapezoidal control as well as the high-speed inefficiency of sinusoidal control (Fig. 1).
By manipulating the motor currents and voltages with reference to the rotor’s direct and quadrature axes, FOC maintains a constant stator field in quadrature with the rotor field irrespective of any bandwidth limitations presented by the PI controllers.
In FOC, the sensed stator currents are translated into rotor direct (D) and quadrature (Q) components by a transform function. To achieve maximum torque, the D and Q currents are then compared, respectively, with zero and the torque requested by the application.
The resulting error signals are input to the two PI blocks, which then generate signals in the D-Q reference plane. Subsequently, these must be transformed into the stator domain to generate the PWM signal for each of the stator phases. Figure 1 illustrates the all of the functional blocks of a generic FOC function.
Because the inputs to the PI functions are constant, FOC maintains high efficiency at all rotor speeds regardless of any limitations on PI-controller bandwidth. However, to perform FOC in real time requires very fast execution of the functions that first transform the sensed stator current signals into the rotor domain, and subsequently transform the static PI values into the voltage-control signals for the output bridge.
Traditional software-based FOC places particularly high demand on CPU performance and operating frequency, to complete the loop within an acceptable time period in relation to rotor speed. Other factors such as integration challenges and any licensing issues must also be kept in mind when developing a motor controller using softwarebased FOC.
Because of the challenges associated with software-based FOC, there’s a growing trend toward implementing such control in hardware. Performing time-critical FOC computations in hardware can increase the control loop’s speed as well as reduce operating frequency. At the same time, by offloading the requisite processing requirements from the central CPU, valuable processor cycles can be freed and used to enhance application-level functions and performance.
These issues are creating a push toward microcontrollers that feature integrated FOC functionality. For instance, a re-partitioned FOC function can take advantage of the hardware-based vector-control engine embedded in the Toshiba TMPM370 and TMPM372 microcontrollers developed specifically for brushless-motor control (Fig. 2).
In this scheme, all FOC processing tasks that are fixed and independent of the application are performed in hardware. To perform these functions, the microcontroller’s embedded vector engine implements functions including decoding, a scheduler for event and priority control, and calculation resources such as a multiply-accumulate (MAC) block for computationally intensive operations (Fig. 3). Two vector-control units implement the PI controllers and associated functions.
By offloading the complex and time-critical processing to the vector engine, microcontrollers with integrated FOC capabilities restrict the software component of vector control to application-dependent tasks. In the case of Toshiba’s devices, this processing is performed in the device’s 32-bit ARM Cortex- M3 core. With these processing resources, the microcontroller is able to complete the control loop within each PWM period, resulting in better control stability for PWM frequencies up to 100kHz.
The performance benefits of onboard hardware-based FOC control are such that the Toshiba devices, when operated at 40MHz, can control two brushless motors simultaneously (Fig. 4). This leads to a number of associated design and implementation benefits, including reducing the challenges associated with thermal management, system power budget, and EMI. Alternatively, by taking the more conventional approach of one microcontroller per motor, designers can use the devices operating at 40MHz to take advantage of cost and size savings without affecting performance.
Devices such as Toshiba’s M372 and M370 microcontrollers are suitable for high-end motor-control applications based on permanentmagnet brushless ac-dc, stepper, and three-phase ac induction motors. As a result, they will deliver benefits to designers on a range of motion-control applications.
It should be noted that many of these applications are subject to the IEC60730 class B safety standard, with its specific references to microcontroller- based control systems. Thus, designers must implement solutions to ensure system compliance.
In the case of some of the latest microcontrollers, this task is simplified by implementing an oscillator frequency detection (OFD) function in hardware (Fig. 5). The OFD eliminates the need for complex software algorithms by monitoring CPU operation, automatically detecting abnormal conditions and generating the requisite internal reset.
Finally, in regards to the Toshiba microcontrollers, in addition to the vector engine, integrated analogue IP fulfills specific needs for FOC. This IP includes 2 x 11-channel 12-bit ADCs for fast current sensing and shutdown capability and an ADC-timing network. The latter enables precise measurement over the motor’s full positive and negative current range without requiring an op amp to perform level shifting.