Abstract:
A system for controlling a brushless DC motor which can minimize a torque ripple of a motor, thus reducing minute vibrations of the motor and loading devices and increasing efficiency. The system includes a current command generator for producing a current command signal by multiplying a wave form of the current command signal in correspondence to position information by the desired size of the current command signal; a current controller for controlling actual current in the motor to follow the current command signal produced from the current command generator, in response to a feedback error control signal having proportion, integral, and differential elements, and producing a signal for turning ON/OFF following the current command; and an inverter circuit for controlling switching elements to be turned ON/OFF by the signal produced from the current controller, and the desired amount of current to be applied to three-phase coils by a power supply unit. The proportional element is implemented by a sawtooth comparator; and dead time is selectively introduced to take advantage of the inertia of the motor.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of The Invention 
     The present invention relates generally to a system for controlling a brushless DC motor, and more particularly, to a system capable of minimizing a torque ripple. 
     2. Description of Related Art 
     Various kinds of motors are used as driving devices for industrial electrical devices, such as a video tape recorder or a color printer, for example, and automatic machinery and tools, such as a robot, a numerical control machine, and the like. Demand for such motors is rapidly increasing because of automation. 
     Motors are broadly classified as DC motors and AC motors. DC motors are generally used because they are easily controlled. However, a disadvantage of the DC motor is the necessity for replacing brushes periodically. Although an AC motor does not require brushes, it is difficult to control. Thus, it has not been used for industrial products of high accuracy. However, because control technique for the AC motor are greatly advanced due to the development of microprocessor and other electronic techniques, the AC motor is replacing the DC motor. 
     Specifically, brushless DC motors and synchronous AC motors are generally used in highly accurate servomechanisms. The brushless DC motor is advantageous in that production costs are low. However, because brushless DC motors are difficult to control, they have been generally used for automatic machinery and tools, and industrial electrical devices which do not require micro-precision accuracy. 
     First, the operating principle of the brushless DC motor is described with reference to FIG. 1. Construction of a three-phase brushless DC motor is similar to that of a synchronous AC motor. A rotor 13 consists of a permanent magnet having P pole pairs (one pair being shown). Coils 11 are wound in a stator iron core 12, and three-phase current is supplied through the coils 11. 
     When the rotor 13 of the permanent magnet is rotating at a speed D, a magnetic flux is generated. The magnetic flux cuts current flowing through the coils 11 of the stator, thereby generating a torque between the stator iron core 12 and the rotor 13 according to Ampere&#39;s Law (F=I×B). Arrows illustrated in the rotor 13 of FIG. 1 indicate the directions of the magnetic flux. 
     Secondly, a dynamic equation of the brushless DC motor is derived based upon the following assumptions of a three-phase brushless DC motor. 
     1) The motor operates in a linear area and a the hysteresis loss may be ignored. 
     2) A slit between the rotor and the stator is uniform compared to the radius of the rotor. 
     3) Mutual inductances among each phase are constant regardless of the position of the rotor. 
     Since phase voltage of the motor is the sum of the amount of voltage drop caused by resistance and a time derivative of the amount of magnetic flux interlinkage, an equation of the phase voltage can be expressed as follows: ##EQU1## 
     where V k  is the input voltage to the phase, i k  is the phase current, r k  is phase resistance and λ k  is the magnetic flux. 
     The interlinked magnetic flux of one phase is classified into a magnetic flux produced by current flowing in the phase, a magnetic flux interlinked by current of the other phase and a magnetic flux interlinked by the rotor of the permanent magnet, and the motor is operated in the linear area (Assumption 1). The magnetic flux λ k  can be obtained as follows; ##EQU2## 
     where L jk  is a mutual inductance between phases j and k, L kk  is a self-inductance, and λ mk  is the interlinkage number of the magnetic flux between the rotor and a phase, k. 
     If the equation (2) is substituted into the equation (1), ##EQU3## 
     where θ is a position of the rotor. 
     The last term in the right-hand side of the equation (3) corresponds to the reverse electromotive force of the motor, and is the speed of the rotor multiplied by a position θ derivative of the interlinkage number of the magnetic flux interlinked by the rotor on the stator. Accordingly, most of voltage applied to the motor is cancelled by the reverse electromotive force, which has a large value at high speed, such that it is difficult to obtain current of a predetermined flow and thereby a desired torque can not be obtained. 
     The following may be defined according to condition (3). ##EQU4## 
     The position θ derivative of the interlinkage number of the magnetic flux interlinked by the rotor on the stator is a characteristic function of the motor, and since phases have phase differences by 2/3π from one another, the following definitions may be obtained. ##EQU5## 
     Since three phases are connected in a Y line, the total of the current of the three phases becomes zero. 
     
         i.sub.1 +i.sub.2 +i.sub.3 =0                               (6) 
    
     According to the conditions, (3), (4), (5) and (6), a following equation (7) may be obtained. ##EQU6## 
     The equation (7) can be expressed for the three phases as follows; ##EQU7## 
     A coenergy relationship is introduced to calculate the torque generated by one phase. ##EQU8## 
     Referring to equation (10), the torque generated by one phase is the characteristic function g(θ) of the motor multiplied by the phase current. Since the entire torque T is the total of T 1 , T 2  and T 3 , an equation (11) may be obtained according to equations (5) and (10). 
     
         T=T.sub.1 +T.sub.2 +T.sub.3 =g(θ)i.sub.1 +g(θ-2/3π)i.sub.2 +g(θ+2/3π)i.sub.3                                ( 11) 
    
     g(θ) in the equation (11) is the characteristic function, and may have a trapezoidal wave form or a sinusoidal wave form or a quasi-sinusoidal wave form. Accordingly, the user should obtain a suitable current command according to the wave form of g(θ) to generate the desired torque, and make the actual current follow a current command by adjusting the phase voltage since the actual current is controlled by a dynamic equation shown in the equation (8). Referring to the equation (11), the torque is expressed by the function of θ, and also the current command should be the function of θ to obtain the torque free of θ. 
     The dynamic equation for a mechanical part is expressed as the following equation (12), and J corresponds to a moment of intertia of the motor and B to a frictional coefficient of the motor. 
     
         Jdω/dt+B=T-T.sub.L ω                           (12) 
    
     Third, a mathematical model of the brushless DC motor based on the equations (8) and (11) is shown in FIG. 2. 
     Fourth, a method for controlling the torque of the conventional brushless DC motor--derivation of the current command for minimizing the torque ripple--is as follows. 
     The dynamic equation of the brushless DC motor is as follows: ##EQU9## 
     Referring to the equation (16), the torque is the function of θ as well as of the current. Since the term of g(θ) is the characteristic function of the motor, the phase current should be controlled to generate the desired torque. 
     To make the phase current directly proportional to the current, as in the conventional DC motor, the user should obtain the current command which makes the torque free of θ under the assumption that the actual current perfectly follows the current command according to the operation of a current controller. 
     An equation (17) obtains the current command, which makes the torque proportional to the current as follows: i M  *(t) is a torque command produced from the speed controller, f k  (θ) is a wave form of the current command which makes the torque free of θ, that is, without a ripple. 
     
         i.sub.1 *(i.sub.M *,θ)=i.sub.M *(t)f.sub.1 (θ) 
    
     
         i.sub.2 *(i.sub.M *,θ)=i.sub.M *(t)f.sub.2 (θ) 
    
     
         i.sub.3 *(i.sub.M *,θ)=i.sub.M *(t)f.sub.3 (θ) (17) 
    
     Torque may be obtained by substituting the equation (17) into the equation (16) if the phase current governed by the equations (13), (14) and (15) perfectly follows the current command expressed in the equation (17) according to the operation of the current controller. 
     
         T(i.sub.M *,θ)=i.sub.M *[f.sub.1 (θ)g(θ)+f.sub.2 (θ)g(θ-2/3π) +f.sub.3 (θ)g(θ+2/3π)](18) 
    
     If the equation (19) is satisfied, the torque ripple θ does not exist since the torque is proportional to the current, and the torque is the function of only i M  *. 
     
         f.sub.1 (θ)g(θ)+f.sub.2 (θ)g(θ-2/3π)+f.sub.3 (θ)g(θ+2/3π)]=k                            (19) 
    
     Then, f k  (θ), satisfying the equation (19) for the g(θ), will be obtained. If the g(θ) has the trapezoidal wave form, it has a similar area to a linear area. When the current command is zero in the linear area and constant in a constant area, the torque ripple does not exist. ##STR1## 
     Lastly, f k  (θ) satisfying the equation (19) may expressed as an equation (21), and have a spherical wave as shown in FIGS. 3A-3C. ##STR2## 
     Then, 
     
         f.sub.1 (θ)g(θ)+f.sub.2 (θ)g(θ-2/3π)+f.sub.3 (θ)g(θ+2/3π)]=2M                           (22) 
    
     When the actual current perfectly follows the current command of the spherical wave, as a result, the torque is made to be proportionate to i M  *(t). 
     
         T=2Mi.sub.M *(t)                                           (23) 
    
     A Korean Examined Application No. 93-4030 entitled &#34;A Method For Improving A Torque Ripple Of A Brushless DC Motor&#34; published on May 19, 1994, proposes overcoming the torque ripple of a brushless DC motor. 
     In the above publication a method for driving the linear voltage which allows a slight tilt at a point of turning ON/OFF, is proposed. The above-identified disclosure proposes to overcome the problems and disadvantages of a conventional method for driving a constant current, so that optimal current may flow to improve the torque ripple. This is carried out by controlling an electrothermosensitive angle and the tilt at the time of turning ON/OFF, namely, a slew rate of an active amplifier in an inverter terminal to maximize an average torque as much as possible after minimizing the current in the method for driving linear voltage and rotating a torque pulsating exponent to a minimum. 
     However, the above publication is for minimizing the harmonics of the output current, and the relationship between the output current and an output torque is not clearly disclosed. 
     Since the output torque is a multiplication of the reverse electromotive force and the output current, the ripple is not removed even though the harmonics of the output current is reduced. A certain restriction needs to be made to the wave form of the reverse electromotive force to remove the ripple. 
     In addition, in the above-identified publication, the method which controls the slew rate of the amplifier in the inverter terminal to apply the current command is approximate. A more exact method for controlling current is required. 
     A conventional circuit for controlling the torque and inverter is illustrated in FIG. 4. 
     Referring to FIGS. 5A-5C, current of iM*, -iM* flows in two phases at every range of π/6, and current does not flow in the third phase. Accordingly, it is preferable for current among each line to flow in the amount of iM* uniformly. 
     For example, the current between each line from phase a, to phase between 0 and π/6, is made to be i M  *. The current command in the phase c, is zero, and it is preferable to modify a winding rather than to control the current command in the phase c. 
     Each unit in a torque control circuit and an inverter circuit has the following role. 
     1) A derotator circulates current of one phase among three phases according to the position of the rotor. 
     2) An error amplifier amplifies a current error signal. 
     3) A PWM amplifier converts the amplified error signal into a pulse width modulation signal. 
     4) A rotator supplies BUS voltage and -BUS voltage between each line of two phases to be controlled by the PWM signal, and breaks down the wire of the third phase. 
     5) A commutation logic receives information about position of the rotor and selects two phases to be controlled. 
     A high gain controller is used as the current controller, and FIG. 7 is a block diagram generally illustrating the system for controlling the brushless DC motor including the position and speed controllers. 
     A transfer function between i 1  *, i 1  will be gained as follows when the reverse electromotive force g(θ)ω is ignored. ##EQU10## 
     Then, a bandwidth of a control loop becomes (R+K)/L. However, since the current command i 1  * has the spherical wave form and has an infinite frequency component, K should be infinite in order that i 1  follows i 1  *. However, an infinite K is impossible. The actual current is shown in FIGS. 6A-6D, and the torque ripple is produced six times for each rotation due to the current control error. 
     Since the reverse electromotive force g(θ)ω becomes greater and the voltage offset by input voltage v 1  for controlling current is applied to the motor, the efficiency of controlling the current is reduced and the frequency of torque ripple becomes high when the motor is rotated at a high speed. 
     Since the torque ripple is produced six times for each rotation, it can be expanded in Fourier series as shown in the following equation (25). ##EQU11## 
     Since the frequency of the ripple becomes high and is filtered in a low pass filter, by inertia of the motor when rotated at a high speed, the problem is minor. However, since the frequency of the ripple is represented as a speed ripple, there is a problem in that the speed control is not exact when the motor is rotated at a low-speed. 
     Since the current command is a spherical wave, a discontinuous function, the actual current does not closely follow the command. Thus, the torque ripple is produced in the conventional torque controlling method. 
     In light of the foregoing, there is a need to provide a system for controlling a brushless DC motor that overcomes the problems and disadvantages of the conventional devices. 
     SUMMARY OF THE INVENTION 
     Accordingly, the present invention is directed to a system for controlling a brushless DC motor that substantially obviates one or more of the problems due to limitations and disadvantages of the related art. 
     The features and advantages of the invention will be set forth in the description which follows, and in part will be apparent from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention will be realized and attained by the apparatus and method particularly pointed out in the written description and claims hereof as well as the appended drawings. 
     To achieve these and other advantages, and in accordance with the purpose of the invention, as embodied and broadly described, the invention is a system for controlling a brushless DC motor that includes means for producing a current command signal by multiplying (1) data representing a waveform of the current command signal in one-to-one correspondence with position information by (2) a selected peak an amplitude of the current command, and means for controlling actual current in the motor to follow the current command signal produced from said controlling means by a feedback correction signal including proportional, integral, and differential elements the feedback error correction signal having a level for turning current ON or OFF, including a sawtooth comparator providing the proportional element as a relatively high-gain element, and including a mechanism providing dead time in the feedback error correction signal of an amount such that some high frequency ripple is not responded to in the error correction signal; and means for controlling switching elements to be turned ON/OFF by the feedback error correction signal produced by the actual current controlling means and for passing the desired amount of current to be applied to three-phase coils by a power supply unit. 
     It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the invention as claimed. 
     The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate exemplary embodiments of the invention and together with the description, serve to explain the principles of the invention. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a sectional view illustrating a construction of a conventional brushless DC motor. 
     FIG. 2 is a block diagram illustrating a mathematical model of a brushless DC motor. 
     FIGS. 3A-3C are current wave form charts for trapezoidal reverse electromotive force in a brushless DC motor. 
     FIG. 4 is circuit diagrams of a current control circuit and an inverter circuit embodying the torque control method for brushless DC motor. 
     FIGS. 5A-5C are current wave form charts embodying the torque control method for a brushless DC motor. 
     FIGS. 6A-6D are wave form charts illustrating an actual current command and a torque wave form of a brushless DC motor. 
     FIG. 7 is a block diagram illustrating a system including position and speed controllers for controlling a brushless DC motor. 
     FIG. 8 is a circuit diagram of an inverter according to the invention employing a pulse width modulation method of a current control type of a brushless DC motor. 
     FIG. 9 is a vector diagram of voltage and current in a complex plane applied to the inverter of FIG. 8 according to a pulse width modulation method of a current control type for a brushless DC motor. 
     FIG. 10A is a block diagram and FIGS. 10B and 10C are waveform charts illustrating a principle by which a pulse width modulation signal by a sawtooth wave comparison method is produced. 
     FIG. 11 is a block diagram of a current controller for sawtooth wave comparison method of a brushless DC motor. 
     FIG. 12 is a block diagram of a current controller for a hysteresis method in a brushless DC motor. 
     FIG. 13 is a block diagram illustrating position and speed controllers of a brushless DC motor when current is completely controlled. 
     FIG. 14 is a schematic and circuit diagram of a system for controlling a brushless DC motor according to a preferred embodiment of the present invention. 
     FIG. 15 is a detailed circuit diagram illustrating the current measuring circuit in the system of FIG. 14. 
     FIG. 16 is a detailed circuit diagram illustrating the PID controller in the system of FIG. 14. 
     FIG. 17 is a detailed circuit diagram illustrating the dead time generator in the system of FIG. 14. 
     FIG. 18 is a detailed circuit diagram illustrating the gate driving circuit in the system of FIG. 14. 
     FIG. 19 is a detailed circuit diagram illustrating the current command generator in the system of FIG. 14. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     Reference will now be made in detail to the preferred embodiments of the invention, examples of which are illustrated in the accompanying drawings. 
     In controlling the torque according to a preferred embodiment of the present invention, a current command, which is a continuous function and minimizes the torque ripple, is realized using the Fourier series under a supposition that the actual current closely follows the command. 
     
         T=g(θ)i.sub.1 +g(θ-2/3π)i.sub.2 +g(θ+2/3π)i.sub.3 ( 101) 
    
     Supposition: The wiring forms of the poles of the motor are symmetrical to one another, and the magnetic flux of the rotor is distributed symmetrically to the Pole Axes. 
     Generally, the supposition is as follow; 
     Since g(θ) is a periodic function having a period of 2ω, it can be expanded for θ by the Fourier series, and since g(θ) is an odd function, a cosine term does not exist. According to the supposition, a harmonic term of every even multiple of θ does not exist. 
     
         g(θ)=E.sub.1 sinθ+E.sub.3 sin3θ+E.sub.5 sin7θ+(102) 
    
     Since the current command is also the periodic function, it can be expanded by the Fourier series, and since the sum of current of the three phases is zero, a term of sin (3nθ) does not exist. 
     
         i.sub.1 *=i.sub.M *f.sub.1 (θ) =i.sub.1 *(I.sub.1 sinθ+I.sub.5 sin5θ+I.sub.7 sin7θ+I.sub.11 sin11θ- - -) (103) 
    
     If the equations (102) and (103) are multiplied to the torque of one phase, 
     
         T.sub.1 =g(θ)i.sub.1 * =i.sub.M *(P.sub.0 +P.sub.2 cos2θ+P.sub.4 cos4θ+P.sub.6 cos6θ+- - -) (104) 
    
     And for other phases, 
     
         T.sub.2 =g(θ-2/3π)i1*(θ-2/3π)            (105) 
    
     
         T.sub.3 =g(θ+2/3π)i1*(θ+2/3π)            (106) 
    
     When the equations (104), (105) and (106) are added, only the harmonic term of a multiple of 6 remains. 
     
         T=T.sub.1 +T.sub.2 +T3 =T.sub.0 +T.sub.6 cos6θ+P.sub.4 cos4θ+T.sub.12 cos12θ+- - -                   (107) 
    
     where, 
     
         T.sub.0 =1.5i.sub.M *[E.sub.1 I.sub.1 +E.sub.5 I.sub.5 +E.sub.7 I.sub.7 +E.sub.11 I.sub.11 +- - -] 
    
     
         T.sub.6 =1.5i.sub.M *[I.sub.1 (E.sub.7 -E.sub.5)+I.sub.5 (E.sub.11 -E.sub.1)+I.sub.7 (E.sub.1 -E.sub.13) +I.sub.11 (E.sub.5 -E.sub.7)+- - -] 
    
     
         T.sub.12 =1.5i.sub.M *[I.sub.1 (E.sub.13 -E.sub.11)+I.sub.5 (E.sub.17 -E.sub.7)+I.sub.7 (E.sub.19 -E.sub.5) +I.sub.11 (E.sub.23 -E.sub.1)+- - -] 
    
     
         T.sub.18 =1.5i.sub.M *[I.sub.1 (E.sub.19 -E.sub.17)+I.sub.5 (E.sub.23 -E.sub.13)+I.sub.7 (E.sub.25 +E.sub.11) +I.sub.11 (E.sub.29 -E.sub.7)+- - -] 
    
     
         T.sub.24 =1.5i.sub.M *[I.sub.1 (E.sub.25 -E.sub.23)+I.sub.5 (E.sub.29 -E.sub.19)+I.sub.7 (E.sub.31 +E.sub.17) +I.sub.11 (E.sub.35 -E.sub.13)+- - -] 
    
     Let us ignore terms over E 15  in the equation (102). I 5  and I 7  are obtained to make the terms of T 0  and T 12  zero. 
     
         (E.sub.11 -E.sub.1)I.sub.5 +(E.sub.1 +E.sub.13)I.sub.7=(E5 -E.sub.7)I.sub.1 (108) 
    
     
         E.sub.7 I.sub.5 +E.sub.5 I.sub.7 =(E.sub.13 -E.sub.11)I.sub.1 (109) 
    
     If the equations (108) and (109) are solved, ##EQU12## 
     Following definitions are made. ##EQU13## 
     A last current command for removing the torque ripples, T 6  and T 12  is expressed in a following equation (114). 
     
         i.sub.1 *=i.sub.1 *I.sub.1 (sinθ+G.sub.5 sin5θ+G.sub.7 sin7θ)                                              (114) 
    
     A last torque in which the ripple is removed, 
     
         T=1.51i.sub.M *I.sub.1 (E.sub.1 +E.sub.5 G.sub.5 +E.sub.7 G.sub.7)+T.sub.18 cos18θ+T.sub.24 cos24θ+- - -)                 (115) 
    
     There is no problem since terms of T 18  and T 24  having enough high frequency filtered out by the low pass filter by the general inertia of the rotor according to the equation (115). 
     FIG. 8 is a view of basic circuit of an inverter of current control pulse width modulation type having as a load a three-phase brushless DC motor. It is not preferable to operate a power amplifier for supplying current to a motor in a linear area due to excessive power consumption of a power transistor. Thus, the power transistor is operated in a switching area to decrease the power consumption, such that the power consumption can be minimized. This is called a pulse width modulation inverter method. 
     Current command of each phase is sequentially compared with actual current, and an operation signal of the transistor is produced through a current controller. Referring to FIG. 8, provided a current command vector is i* and an actual flowing current vector is i, current and voltage components are represented on a complex plane as shown in FIG. 8. At this time, a current error vector, Δi can be obtained by a following equation 116. 
     
         Δi=i*-i                                              (116) 
    
     Accordingly, using the output voltage vectors V 1  to V 8  (see FIG. 9), the actual current vector i is made to follow the current command vector i*, and the current is controlled. 
     FIG. 9 is a view of current vector and an axis of coordinates of three phases on the complex plane. 
     The current errors Δi a , Δi b , and Δi c  of each phase can be expressed by projecting the current error vector Δi on each phase. Meantime, an output vector of the PWM inverter having a value of zero of Δi in the equation 116 is selected to make the actual current to follow the current command. But since the actual output signal is discretely produced, it is impossible to make the value of Δi to be zero. Therefor, a certain permissible range in the current error vector is defined, and the voltage vector is selected to make the current error vector be in the permissible range. 
     Methods for selecting the voltage vector, that is, methods for controlling current are generally classified into hysteresis control methods and sawtooth wave comparison methods. 
     In the sawtooth wave comparison method, the current error signal is compared with the sawtooth wave, and the PWM signal is produced. A high gain controller results from the sawtooth wave comparison method, and a ground for this is as follows; 
     Referring to FIGS. 10A-10C, the current error signal is constant as E, voltage V a  (t) (FIG. 10C) applied to the motor is a periodic function having a constant frequency of the sawtooth (V sw&#39;  FIG. 10B) wave. If V a  (t) is developed in Fourier series, it is expressed as a following equation 117. ##EQU14## 
     When the frequency (1/T=f) of the sawtooth wave is set to be enough greater than a time constant of the motor, and a high frequency component is removed by the inertia of the motor, a transmission function of the sawtooth wave comparison method is represented as a following equation (118). ##EQU15## 
     Accordingly, when B is great enough, it becomes the high gain controller. 
     A dead time longer than a turning OFF period of a switching element is generated to prevent two switching elements from turning ON for one phase at the same time, and a hysteresis width is established, considering a noise produced when inputted to a comparator. FIG. 11 is a block diagram of the sawtooth wave comparison method actually embodied. 
     Referring to FIG. 12, in the hysteresis method, the current error signal is not compared with the sawtooth wave, and directly transmitted to the comparator and then the PWM signal is produced. The hysteresis method is easier than the sawtooth wave comparison method in the embodiment, and the actual current in the hysteresis method rather than in the sawtooth wave comparison method follows the current command better. 
     However, a switching frequency is not constant and lots of noise is produced. Likewise, in the sawtooth wave comparison method, the actual current has a ripple by establishing the hysteresis width and the dead time generator in the comparator. Since such the ripple has a high frequency, it is supposed that the ripple may be easily removed by the time constant of the motor. 
     Accordingly, the response speed of the motor becomes speedy, and the speed control becomes easier. Referring to FIG. 13, the system for controlling a brushless DC motor can be illustrated without considering resistance and inductance of the motor when the above-mentioned hysteresis current controller is applied to the three phases a, b, and c. Then, the entire system becomes a linear system, such that a user can easily analyze the system. 
     Referring to FIG. 14, the system for controlling a brushless DC motor in the preferred implementation includes a current command generator 14, a current controller 15, an inverter circuit 16, three-phase coils 17, and a power supply unit 18. 
     The current controller 15 includes a current measuring circuit 151, a proportional integral differential controller 153, a dead time generator 155, and a gate driving circuit 157. 
     Three phases are represented by a, b and c phases respectively (FIG. 8), and by u, v and w phases (FIG. 14). 
     Referring to FIG. 19, the current command generator 14 is for generating current commands I u  *, I w  * of phases u and w from position information θ. Data for wave forms of the current commands is memorized in a mapping method in ROMs 141, 142. When the position information θ is input, data of f(θ) is produced from the ROM 141 and data of f(θ+2/3π) is produced. 
     Functions f(θ) and f(θ+2/3π), the wave form data of the current command produced from the ROMs 141, 142, are converted into analog signals by multi digital/analogue converters 143, 144, and multiplied by a torque command I* corresponding to a size of the current command by operational amplifiers 145, 146, thus producing phase current commands. The operational amplifiers 147, 148 connected to output terminals of the multi digital/analog converters 143, 144 are for obtaining bipolar output signals. 
     The phase current commands, I u  * and I w  * produced from the operational amplifiers 147, 148 are input into the PID controller 153 in the current controller 15 as shown in FIG. 14. 
     The operation of the current measuring circuit 151 will be described in connection with FIG. 15. The current measuring circuit 151 measures current actually flowing in the u and w phases of the motor. The current measuring circuit 151 includes current transducers 1510, 1512, and a low-pass filter having the operational amplifiers 1514, 1516, resistors R, R1, R2 and condensers C, C1, C2. 
     The current transducers 1510, 1512 are for detecting the amount of current flowing in the u and w phases of the motor. Noise in the low frequency area, included in the detected amount of current, can be removed by the low-pass filter having the operational amplifiers 1514, 1516, the resistors R, R1, R2 and the condensers C, C1, C2. 
     A bandwidth of a pass band may be controlled by properly selecting an element value of the resistor R42 and the condenser C40, or the resistor R45 and the condenser C41, in the low-pass filter. 
     FIG. 16 is a detailed circuit diagram of PID controller 153 which receives the output signals I uf , I wf  of the current measuring circuits 151 and the output signals I u  *, I w  * of the current command generator 14. The PID controller 153 is for producing output pulses u, v, and w of three phases after receiving the current commands I u  *, I w  * of the u and w phases and current feedback I uf , I wf . The v phase can be synthesized from the current commands I u  *, I w  * of the u and w phases and current feedback I uf , I wf  using the operational amplifier 1532. 
     Gain values of the operational amplifiers 1531, 1533, 1536 may be controlled by properly selecting the element values of the resistors R141, R142 and the condenser C141, or the resistors R 143, R144 and the condenser C142, or the resistors R145, R146 and the condenser C143. The operational amplifier 1531 is for the u phase, the operational amplifier 1536 is for the v phase, and the operational amplifier 1533 is for the w phase. The input signals are proportionally integrated and differentiated by the operational amplifiers 1531, 1533, 1536. 
     Voltage produced from the operational amplifiers 1531, 1533, 1536 is inputted into the operational amplifiers 1534, 1535, 1537 serving as a comparator, and a pulse width of the voltage is converted and produced. A sawtooth wave is applied as a reference voltage to a non-inverting input terminal of the operational amplifiers 1534, 1535, 1537. 
     The output voltages u, v, w of the operational amplifiers 1534, 1535, 1537 serving as the comparator are input to the dead time generator 155. 
     FIG. 17 is the detailed circuit diagram of the dead time generator 155. The dead time generator 155 is for producing a real ON/OFF signal of a power transistor in the inverter circuit 16 from three-phase output signals of pulse width modulation produced from the operational amplifiers 1534, 1535, 1537 in the PID controller 153. The dead time generator 155 allows a dead time to avoid turning ON/OFF of upper and lower terminals of the power transistor of one phase at the same time. 
     The dead time is made by a combination of the elements values of a resistor RA1 and the condensers C51 to C56, and the size of the dead time is as follow; 
     
         t.sub.d ≈RA1×C51 
    
     That is, after the signals input to the dead time generator 155 pass through the amplifiers 1551, 1553, 1555 or inverters 1552, 1554, 1556, the dead time is formed by the resistor RA1 and the condensers C51 to C56. The signals are input to a connector 1563 after passing through inverters 1557 to 1562, and are transmitted to a gate driving circuit 157. 
     FIG. 18 is the detailed circuit diagram of the gate driving circuit 157 which receives an output signal of the connector 1563. The gate driving circuit 157 controls the ON/OFF signal of the power transistor received from the dead time generator 155 applied to base terminals of the power transistors Q1 to Q6 in the inverter circuit 16 as shown in FIG. 12. 
     That is, the signal produced from the connector 1563 of the dead time generator 155 is processed as a signal by a photocouplers 1571 to 1576 having built-in amplifiers, passes through resistors R161 to R166 connected to the photocouplers 1571 to 1576, and is applied to the base terminals of the power transistors Q1 to Q6 in the inverter circuit 16. HCPL 3101 is used as the photocouplers 1571 to 1576 having the built-in amplifiers in the preferred embodiment of the present invention, but a technical scope of the present invention is not limited to this. 
     The speed of turning ON/OFF of the base terminals of the transistors Q1 to Q6 in the inverter circuit 16 may be controlled by properly selecting element values of the resistors R161 to R166 connected to output terminals of the gate driving circuit 157. In addition, power P1 to P4 and N to N4 applied to condensers C161 to C166 connected to the photo couplers 1571 to 1576 is for producing a voltage level which drives the base terminals of the transistors Q1 to Q6. 
     Each output signal A+, A-, B+, B-, C+ and C- of the gate driving circuit 157 is applied to each base terminal of the power transistors Q1 to Q6 of the inverter circuit 16, and the voltage of the power supply unit 18 is applied to the three-phase coils according to ON/OFF operation of each power transistor Q1 to Q6. 
     The current amount applied to the three-coils 17 according to the ON/OFF timing of the power transistors Q1 to Q6 is changed, thereby the torque ripple of the motor can be minimized. 
     According to a principle of the present invention, the torque ripple is minimized, and thereby the minute vibration of the motor and the loading device can be reduced. In addition, the follow efficiency of the motor after the speed command be enhanced, and more accurate speed control can be possible. 
     It will be apparent to those skilled in the art that various modifications and variations can be made in the camera and method of the present invention without departing from the spirit or scope of the invention. Thus, it is intended that the present invention cover the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents.