You are on page 1of 5

Design and Implementation of an FPGA-Based Motor Control IC for Permanent Magnet AC Servo Motors

Ying-Yu Tzou, Member, IEEE, and Tien-Sung Kuo

Power Electronics and Mechatronics Control Lab. Department of Electrical and Control Engineering, National Chiao Tung University
Abstract- This paper presents the design and implementation of a motor control IC for permanent magnet ac (PMAC) servo motors using the field programmable gate array (FPGA). This paper develops a hardware architecture for the digital control of PMAC servo motors. The proposed control structure has also been realized using FF'GAs from Xilinx Inc. All the control functions, including the PWM waveform generation, current control, vector control, velocity control, and position control have been realized using FPGA based programmable logic gates. The constructed PMAC control IC includes 25,000 logic gates and is realized using 8-bit integer arithmetic. Experimental results are given to verify the implemented PMAC control IC.
PM AC Servo Motor

FPGA-based PMAC Control IC

l l t t
DSP-based Digital Controller

I. INTRODUCTION
Owing to the rapid progress in motor control and microelectronics technologies, development in software servo and motor control IC will become a major trend [ 11-[7]. Although most ac drives (ac servo drives or universal PWM inverters) in use today adopt microprocessor-based digital control strategy, the implementation of current control loop and PWM control are still tied to analog control circuitry. This kind of control scheme possesses the advantage of fast dynamic response, but suffers the disadvantages of complex circuitry, limited functions, and difficulty in circuit modification. The rapid development in high-performance, low-cost DSP has encouraged research on digital control for ac drives. This control scheme has the advantages of simple circuitry, software control, and flexibility in adaptation to various applications. However, generating PWh4 gating signals and current control loops require a high sampling rate to achieve a wide bandwidth performance. The ASIC approach provides a rapid, low-cost manufacturing solution for ICs with special applications. For sophisticated technology linked to a medium size marketing requirement, it is an optimal solution. However, the longer lead time and higher setup cost for prototyping render it inappropriate for product development in the early stage. Since the 1980s, ASIC technology has given rise to several new specialized technologies, including mask-programmable gate array, cell-based IC (CBIC), programmable array logic (PAL), and field-programmable logic array (FPLA). With the advancement of the various technical aspects of ASIC, three major categories have been categorized: CBIC, gate array, and programmable logic device (PLD). This work was supported by National Science Council, Taipei,
Taiwan, R.O.C. Project no. NSC86-2213-E-009-042.

Fig. 1. Configuration of the DSP/FPGA controlled PWM inverter with an PM ac servo motor.

The CBIC has the longest lead time with highest number of gates, while the PLD allows the user to define the gate connections but with a lowest number of gates. The field programmable gate array (FPGA) is a new PLD developed by Xilinx, Inc. [8]. The FPGA comprises thousands of logic gates and these logic gates are functional grouped together as a configurable logic block (CLB) to simplify higher level circuit design. The interconnections of the gates are defined by external S U M or ROM. The simplicity and programmability of FPGA designate it as the most favorable choice for prototyping an ASIC. The advent of FPGA technology has enabled rapid prototyping of digital systems.

11. SYSTEM DESIGN OF THE PMAC CONTROL IC


PMAC servo motor has become the major working horse in applications of precision automation equipment [9]. In the paper, we have developed a new control structure for the digital realization of vector-controlled PM ac servo motor. Fig. 1 shows the configuration of the PMAC control IC incorporates with a digital signal processor for the positioning control of a PM ac servo motor. The DSP is used for the system initialization and parameter setting. Autotuning adaptive control can also be more easily implemented by employing such a control structure. Fig. 2 shows the detailed control block diagram of the developed PMAC control IC. The PMAC control IC consists of a three-phase PWh4 waveform generator, a current controller in the stationary &-coordinate, a decoupling controller, a velocity loop controller, and a position loop controller. Key parameters of the sub-controllers can be on-line adjusted by an external connected microcontroller.

943

speed controller

decoupling controller

current controlle

Fig 2 Control block diagram of the PMAC motor control I C

COORDINATOR TRANSFORMATION

CURRENT LOOP

Fig. 3. Detailed functional block diagram of the PMAC motor control IC

Fig. 3 shows the detailed block diagram for the circuit design of the PMAC motor control IC. This control IC is synthesized using modular circuit design methodology. It consists of three circuit modules: a current loop controller, a velocity-loop and decoupling controller, and a position loop controller. There are a lot of control registers for parameters setting and status feedback. Fig. 4 depicts the external circuit interface and functional block diagram of the PMAC motor control IC. This PMAC control IC consists of a command register and a status register for parameter setting and status monitoring. To simplify the interface circuit, commands to these registers are routed through a common data bus and decoded by a command mode decoder. Control parameters can be set by externally connected hardware, such as AID converters, digital switches, or a microprocessor. In the design of a motor control IC, there are many factors needs to take into considerations, such as simplicity, flexibility, and complexity of the circuit design. In practical

applications, the motor control IC should provide easy interface with conventional microprocessor and, therefore, needs a computer interface. One major design goal in the design of a high-performance motor control IC is to relieve the microprocessor from time consuming computational tasks such as PWM signal generation, delay-time compensation, and high sampling-rate current control. Fig. 5 shows the functional block diagram for the coordinate synchronization in vector control of ac motors. The synchronization angle control register is used to provide an offset angle for the orthogonalization of stator and rotor flux vector. The rotor flux of a PMAC motor is fixed to the rotor and its position can be detected from an initial orientation test. The rotor flux of an induction motor can be estimated via a rotor flux model of the machine and it needs more complicated computation. The provision of this control register has an advantage for its future expansion in application to the vector control of induction motors.

944

WW OE

D7 D6 DS D4 0 3 D2 D I DO A4 A3 A2 AI All

E
. . _ . . . . . . . _ _ _ .

Pulse

B fm

Fig. 4. Circuit connection and block diagram of the PMAC control IC

t
2jL

0 L - b

ADDRESS

jr
P

MACHINICAL ANGLE TO ELECTRICAL ANGLE

f . , <

RING COUNTER

SYNCHRONIZATION ANGLE CONT. REG

Fig. 5. Functional block aiagram of the phase synchronization for vector control ac motors.

111. REALIZATION OF THE PMAC CONTROL IC


This PMAC control IC was implemented employing the field programmable gate array (FPGA) technology. A static RAM-based FPGA from Xilinx was used to implement the proposed scheme. The PMAC IC can be incorporated with a general purpose microcontroller to provide a total solution for high-performance ac drives. In realizing the proposed PMAC control scheme, cost considerations led to selecting a SRAM-based FPGA, XC4010, from Xilinx Inc., for implementing of the PMAC IC. The XC4010 has around 10,000 logic gates, 400 configurable logic blocks (CLBs), and 160 inpuvoutput blocks (IOBs). Xilinx also provided CAD tools (Xilinx Automated CAE Tools, XACT) for the development of ASICs employing FPGAs. XACT consists of a schematic entry editor, a cell library, an interface with the schematic

entry editor, logic and timing simulation software, and design implementation software. The logic and timing simulation software is especially relevant to the design of complicated digital circuits because it is best suited to resolve circuit problems during the early design stage. There are many control schemes developed for the ac motor control in the past two decades [lo]. Determination of the control structure plays a key role in the synthesis of the ac motor control IC. Rotor flux oriented vector control with current regulated in 2-axis stationary reference frame is chosen as the basic control structure for this PMAC motor control IC. To simply the design of this control IC, proportional control is employed in the current regulation and proportional-integral control is adopted for the speed regulation. One important consideration in the design of a motor control IC is that it should provide some flexibility for different applications. This flexibility can be achieved by providing some control and status registers. Table I lists the designed control registers for the PMAC motor control IC. It takes a lot of logic gates in realization of an integer multiplier, especially, when the bit-length is increased. For example, it takes about 115 CLBs for an %bit multiplier, while it takes about 400 CLBs for a 16-bit multiplier. In consideration of limited gate counts available on a single FPGA chip, &bit integer arithmetic is chosen in realization of this motor control IC. Bit-length effect on the digital control of a motor is especially important when it was realized using programmable logic arrays. The study of bitlength effect needs a further research. In this paper, we realize all the control functions using %bit integer arithmetic. Table I1 lists the detailed circuit realization for each subcircuit module.

945

Table I. Control registers of the PMAC motor IC

symbol
KCP

range
0 - 127

Tcs Fcar
KSP

- 255
- 255
0 - 127

description proportional gain for CLC sampling period for current loop, corresponding to 28 psec 510 psec PWM carrier frequency (7843 1 HZ 308 Hz)

proportional gain for VLC integral gain for VLC sampling period of VLC (0 - 3 1 . TCS)

Ksit Tss

0 - 127
1-31

I8

sl

0 -249

synchronization ( 0- 2 x 0

I
1

In the given example, the sampling period of the current loop controller is set at 50 psec, the same as the PWM switching period. The rise time for the current response is about 500 psec. Fig. 8 shows the steady-state current response of the current vector trajectory in dq-plane. Some related data for the experimental verification are listed in Table 111. Decoupling control plays a most important role in the torque control of an lac motor. The designed PMAC IC provides a synchronization angle control register to adjust the phase between the controlled stator current vector and the rotor flux vector. Fig. 9 shows the experimental results of the speed responses at different decoupling angles. Experimental results show a detuned vector control will lead to system unstable.

Table 11. Realization of function modules

function modules rotating coordinate converter 2-axis to 3-axis converter 3-phase PWM generator current loop interrupt timer current loop controller speed detector

function generator 460 74 64 31 268 37 3

flip-flop

0 0

1
I

Table 111. Testing condition description dc-linkvoltage current limit switching frequency CLC sampling Deriod value 39.37

I I I 1I
unit

mA

19.6 1

kHz

VLC samplingperiod
BW of the low-pass filter

1
I

p sec
1

mSec kHz

I1

quadrature decoder synchronization angle and sin/cos reference eenerator velocity loop controller readwrite interface analoddigital interface

91 278 151
122

39 8 200 92

Fig. 10 shows the speed responses of the PMAC servo motor when the control parameters of the velocity loop controller (VLC) are set at different values. The proportional-integral control with 8-bit integer arithmetic is employed in the realization of the speed regulator. Experimental results illustrate the effect in tuning of the control parameters. Fig. 11 shows the velocity and position responses of a PM ac servo motor using the constructed PMAC control IC.
A
KC
Kcv=60

08
06
04
~

Fig. 6. Block diagram of the DSP/FPGA based AC motor control system

0 002

_ _ _ __
0 004

-sec
0 008 00 1

0 006

(4
A

IV. EXPERIMENTAL VERIFICATION


The constructed PMAC has been incorporated with a single-chip digital signal processor (TMS320C 14) for experimental verification. Fig. 6 shows the block diagram of the DSPBPGA based AC motor control system. Fig. 7 shows the step responses of the current control loop at different control parameterg. In the tuning of the control parameters for the current loop controller, the rotor has been locked to eliminate the back emf effect. The control registers of the PMAC IC can be adjusted interactively via the data bus between the p m c IC and its incorporated microcontroller.

08

06
04
02

.o 2
-04
0

r (u -r ~y q r w __ 0 002 0 004
(b)

0 006

___-

0 008

-sec 0 01

Fig 7 Experimental results of the step current response with rotor locked, (a) &axis, and (b) q-axis.

946

V. CONCLUSION
This paper has presented a complete realization of the vector control of a permanent- 3agnet ac servo motor using the state-of-art FPGA technology. The position, velocity, torque, and current control of the PM ac servo motor can all be realized by using the programmable logic arrays. In this paper, we have designed an 8-bit PMAC motor control IC using about 25,000 gate counts. PMAC Experimental results have shown the feasibility in design of advanced motor control IC using programmable gate arrays. The constructed PMAC IC provides a systematic and simple solution for high-performance ac servo drives. The designed PMAC IC can be incorporated with a general-purpose microcontroller to provide a simple, compact, low-cost, and effective solution for high-performance ac drives. Given that an economical manufacturing cost can be achieved, it is believed that such PMAC control ICs will become key components in motor drives of the future.

Fig. 8. Experimental results of the current responses in steady-state, (a) phase current, and (b) current vector trajectories in dq-plane.

0 ini = 20
20
L

REFERENCES
0 04

10

002----

--

0 06

__

0 08

01

sec

[ l ] E. Kappos, D. J. Kinniment, P. P. Acarnley, and A. G. Jack, Design of an integrated circuit controller for brushless DC drives, IEE 4th h t

Fig. 9. Experimental results of the speed responses at different vector control decoupling angles.

- _
0 04

-~ J

sec

0 06

0 08

Fig. IO. Experimental results of the speed responses under different control parameter settings.

Con$ Power Electron. and Variable-Speed Drives, pp. 336-341, 1990 [2] M. G. Egan, J. M. Murphy, E. J. Heffeman, S. U. Lidholm, and M L McGrath, An ASIC-based PWM waveform generator for AC motor control applications, IEEE International Symposium on Circuits and Systems. Proceedings, vol. 2, pp. 1369-72, 1988. [3] T. C. Green, M. Mirkazemi-Moud, J. K. Goodfellow, and B. W Williams, Field-programmable gate-arrays and semi-custom designs for sinusoidal and current-regulated PWM, IEE Colloquium on ASIC Technologyfor Power Electronics Equipment, pp. 411-4, 1992. [4] D. J. Kinniment, E. Kappos, and P. P. Acarnley, Experience of the use of ASIC methods in a motor control application, IEE Fifth European Conference on Power Electronics and Applications, vol. 5, pp. 458463, 1993. [ 5 ] J. Pasanen, P. Jahkonen, S. J. Ovaska, 0. Vainio, H. Tenhunen, An integrated digital motion control unit, IEEE Transactions on Instrumentation and Measurement, vol. 40, no. 3, pp. 654-657, 1991. [6] E. B. Patterson, D. Morley, C. G. Oswald, and P. G. Holmes, Total digital ASIC control for an induction motor drive, IEE Colloquium on ASIC Technologvfor Power Elecr, ,,,its Equipment, pp. 2/14, 1992. [7] D. R. Woodward, D. C. Levy, and R. G. Harley, An FPGA based configurable 110 system for AC drive controllers, Proceedings IEEE International Conference on Computer Design: VLSI in Computers and Processors (Car. N0.94CH35712), pp. 424-142, 1994. [SI Xilinx, The Programmable Gate Array Data Book, Xilinx Inc., San Jose, CA, 1992. [9] T. M. Jahns, Motion control with permanent-magnet ac machines, IEEEProc., vol. 82, no. 8, pp. 1241-1252, Aug. 1994. [10]0gasawara, H. Akagi, and A. Nabae, The generalized theory of indirect vector control for ac machines, IEEE Trans. Ind. Appl., vol.

24, no. 3, pp. 470-478, May/June 1988.

Fig. 11. Experimental results of a PM ac servo motor using the constructed PMAC motor control IC, (a) velocity response to a step command, and (b) position response to a ramp command

947

You might also like