firstly , general description is given on why ripple of torque is produced in the general electronic commutator motor . such general elucidation is made on an electronic commutator motor with four stator coils and six magnetic poles on its rotor magnet , to be operated in two phase full wave driving , and the below - mentioned embodiments are described taking example of this type . but it should be noted of course that other electronic commutator motors having the stator coils and poles of rotor magnet in different numbers may be constituted in accordance with the present invention . fig1 ( a ) shows rotor magnet 1 of the electronic commutator motor embodying the present invention in a plan view , and fig1 ( b ) is a plan view of a printed circuit substrate 2 having stator coils provided thereon . as shown in fig1 ( a ), the rotor magnet 1 has three s poles and three n poles disposed alternately with 60 ° angles ( mechanical angles ) around its center axis . the stator substrate has four stator coils l 1 , l 2 , l 3 and l 4 disposed with 90 ° angles ( mechanical angle ) around its center axis , and each coil has their radial direction parts diverging with 60 ° angle inbetween . the printed circuit substrate 2 also has a first hall element h 1 and a second hall element h 2 which are disposed at a first intermediate position between the first coil l 1 and the second coil l 2 , and at a second intermediate position between the fourth coil l 4 and the first coil l 1 , respectively . fig2 shows one preferred embodiment of a conventional driving circuit . in fig2 amp 1 and amp 2 designate differential amplifiers , inv 1 inv 2 , inv 3 and inv 4 designate inverters ; and 1 , and 2 , and 3 and and 4 designate and gates ; h 1 and h 2 designate the hall elements ; tr 1 , tr 2 , tr 3 , tr 4 , tr 5 , tr 6 , tr 7 and tr 8 designate transistors ; l 1 , l 2 , l 3 and l 4 designate the stator coils ; r 1 , r 2 , r 3 , r 4 , r 5 , r 6 , r 7 , r 8 , r 9 , r 10 , r 11 , r 12 and r 13 designate resistors ; and c 1 and c 2 designate capacitors . when the rotor magnet 1 is rotating in a direction shown by an allow 1 a shown in fig1 ( a ), outputs signals of the hall elements h 1 and h 2 at their output terminals h 1a and h 1b and h 2a and h 2b are as shown by the waveforms in fig3 as designated by the same marks . output signals a and b of the inverters inv 1 and inv 3 are shown by the wave forms designated by the same marks a and b . ab , ab , ab and ab of the output signals of the the and gates and 1 , and 2 , and 3 and and 4 are designated by the wave forms of the same marks , respectively . as shown in fig3 output signals of the hall elements h 1 and h 2 are waves having a period corresponding to the mechanical angle range between the neighboring different magnetic poles . accordingly , the wave forms of the output of the hall elements h 1 , h 2 make one period for 120 ° of rotation angle of the rotor magnet 1 . accordingly , hereafter rotation angle 120 ° ( mechanical angle 120 °) of the rotor magnet 1 is defined as 360 ° electric angle . on the other hand , the first hall element h 1 and the second hall element h 2 are disposed with 90 ° mechanical angle difference , and accordingly their output signals h 1a and h 2a make each other 90 ° phase difference , and the output h 1b and h 2b are signals of opposite polarity to those of h 1a and h 2a . the signals h 1a and h 1b are input to the differential amplifier amp 1 and its output is shaped to square wave a by the inverter inv 1 , and the signals h 2a and h 2b are given to the differential amplifier amp 2 and its output is wave - shaped by the interver inv 3 to form a wave form b . the square waves a and b have 90 ° phase difference of electric angle . then , after obtaining opposite polarity signals a and b by inverting the output signal a by the inverter inv 2 and by inverting the signal b by the inverter inv 4 , respectively , the outputs of the inverters are passed by logic gates networks consisting of four and gates and 1 , and 2 , and 3 and and 4 to produce output signals ab , ab , ab , and ab , respectively . these four output signals have , as shown in fig3 ° ( electric angle ) period and each other differ by 90 ° phase differences . that is , the output signals ab , ab , ab and ab have wave forms in turn delayed by 90 ° each . therefore , by using these pulse signals , desired timing control for electrifying the stator coils l 1 , l 2 , l 3 and l 4 is obtainable . let us define that duty - time when the output ab is high at t 1 , that for output ab is high at t 2 , that for ab is high at t 3 and that for ab is high at t 4 . then , at the time period t 1 , the transistors tr 1 and tr 6 become on , thereby energizing the coils l 3 and l 1 by a current from l 3 to l 1 ; at the time period t 2 , the transistors tr 3 and tr 8 become on thereby energizing the coils l 4 and l 2 by a current from l 4 to l 2 ; at the time period t 3 , the transistors tr 2 and tr 5 become on thereby energizing the coils l 1 and l 3 by a current from l 1 to l 3 ; and finally , at the time period t 4 , the transistors tr 4 and tr 7 become on thereby energizing the coils l 2 and l 4 by a current from l 2 and l 4 . situation of producing torque of the electronic commutator motor is elucidated . as shown in fig4 by the alternative disposition of the magnet poles of the rotor magnet 1 , sinusoidal wave - shaped magnetic flux distribution is formed . the stator coils l 1 , l 2 , l 3 and l 4 each are wound in a range spanning for mechanical angle of 60 ° ( namely , angle of pitch of each magnet pole , irrespective of polarity ). and these coils l 1 , l 2 , l 3 and l 4 are disposed with mechanical angle difference of 90 °. therefore , when the rotor magnet 1 is rotated , the positional relation between the rotor magnet 1 and stator coils l 1 , l 2 , l 3 and l 4 are as shown in fig4 . at the period t 1 , torque is produced as a product of current of coil l 1 and magnetic flux densities of the curve parts b 2 and b 3 , and product of current of coil l 3 and magnetic flux of curve parts b 5 and b . sub . 6 . at the period t 2 , torque is produced as a product of current of coil l 2 and magnetic flux densities of the curve parts b 1 and b 2 , and product of current of coil l 4 and magnetic flux of curve parts b 4 and b 5 . at the period t 3 , torque is produced as a product of current of coil l 1 and magnetic flux densities of the curve parts b 3 and b 4 , and product of current of coil l 3 and magnetic flux of curve parts b 6 and b 1 . at the period t 4 , torque is produced as a product of current of coil l 2 and magnetic flux densities of the curve parts b 2 and b 3 , and product of current of coil l 4 and magnetic flux of curve parts b 5 and b 6 . magnetic flux density curves b 1 , b 2 , b 3 , b 4 , b 5 and b 6 have the same wave forms , and therefore , if the currents fed to the coils l 1 , l 2 , l 3 and l 4 are constant , the torque of the electronic commutator motor fluctuates in 360 ° mechanical angle as shown in fig5 . that is , one rotation , ( i . e . 360 ° mechanical angle ), has twelve repetitions of the same torque ripple patterns each has 30 °. feature of the present invention is devised from the above - mentioned fact that the torque ripple consists of repeated fluctuation patterns of the same type . a first embodiment in accordance with the present invention is described in detail with reference to fig6 fig7 and fig8 as follows . fig6 is a block diagram showing a first embodiment of the present invention . numeral 3 designates a dc brushless motor , i . e ., an electronic commutator motor , which is the same as that shown in fig1 ( a ) and fig1 ( b ), namely having a rotor magnet 4 of six magnetic poles of the same configuration as fig1 ( a ) and a stator coil printed circuit substrate 5 having the same configuration as shown in fig1 ( b ), and also has a frequency generator 6 consisting of an led 1 , a photoelectric element p 1 and a rotary encoder disc r 1 fixedly mounted on a shaft 7 of rotor magnet 4 . output signal of hall element h 3 mounted on the stator coil printed circuit substrate is wave - formed by means of known wave - forming circuit 8 , thereby to be converted to pulse signal v a . the pulse signal v a is input to delay circuit 9 to produce a delayed signal v b , and then both the signals v a and v b are given to an exclusive or gate 10 , which produces rotation position signal v c , thereby the signal output from a hall element on the stator coil printed circuit substrate 5 is wave - formed by another waveform circuit 11 to produce a pulse signal v d . the pulse signal v d is given to a delay circuit 12 which outputs signal v e , and both signals v d and v e are given to another exclusive or gate 13 , which produces rotation position signal v f . the above - mentioned rotation position signals v c and v f are given to an or gate 14 , which produces a rotation position signal s 15 comprised of twelve pulses for every one rotation of the rotor magnet 4 . fig7 shows wave forms of signals v a , v b , v c , v d , v d , v e and v f , and further the rotation position signal s 15 . the rotation position signal s 15 is a signal comprised of pulses which rise up at every 30 ° rotation of the rotor magnet 4 . and it is constituted that current feedings to the stator coils l 1 , l 2 , l 3 and l 4 are switched at timings of every rising - ups of the pulses . signals output from the frequency generator 6 is wave - formed by a wave - forming circuit 16 to produce rotation fine position signal s 17 . the encoder disc r 1 is configurated to have slits of a number of 12 × n 1 , wherein n 1 is an integer of 2 or larger , and therefore the rotation fine position signal s 17 has pulses of a number of 12 × n 1 for every one rotation of the rotor magnet 4 . that is , in a time period from one rise - up of the rotation position signal s 15 to a rise - up of the next pulse of the same signal , the rotation fine position signal s 17 and n 1 pulses , and therefore by counting the number from every rise - up of the rotation position signal s 15 , rotation fine position of the rotor magnet 4 can be detected . a torque compensation circuit 18 is comprised of a rotation fine position signal counter 19 which counts the number of pulses of rotation fine position signal s 17 from each rise - up of the pulse of the rotation position signal s 15 and issues count output s 1 , and a memory 20 which stores compensation component value in digital code for each fine rotation position of the rotor magnet , and a gain control circuit 21 which receives output of the memory 20 for making gain control of a motor control signal s 2 by amplifying or attenuating it in order to make currents of the stator coils thereby to produce uniform torque through converting the digital output of the memory 20 to analog signal . the rotation fine position signal counter 19 is reset at each rise of pulse of the rotation position signal s 15 from the or gate 14 , and counts pulses of rotation fine signal s 17 . accordingly , the resulted count shows rotation fine position from each switching time of the current in the stator coils . for the memory 20 , usually a read only memory ( hereinafter is referred to as rom ) is used , and in respective addresses of this memory , data for use to compensate torque ripple for respective rotation fine positions in each range of partitioned angle ( in this embodiment 360 °/ 12 = 30 °) are stored . accordingly , when an output of the rotation fine position signal counter 19 is given as an address signal , the memory 20 issues compensation signal s 3 for necessary compensation . fig8 shows waveforms related to the compensation signal s 3 . as has been described with reference to fig5 switching of the current of stator coil are made at 0 °, 30 °, 60 °, 90 °, 120 °, 150 °, 180 °, 210 °, 240 °, 270 °, 300 °, 330 ° and 360 °, and within each partition angle range for 30 °, magnetic flux distribution changes in the same pattern as shown in fig8 ( a ). in other words , since the torque before compensation of torque ripple as shown in fig5 has repetition of twelve convex waveforms of the same pattern , it is sufficient with that the memory 20 stores compensation data for each partition angle - range of 30 ° only , and the same compensation data are used for every convex waveforms of torque . thus , the way of compensation for a 0 °- 30 ° partition angle - range only is described below , and the same applies for other partition angle ranges . fig8 ( a ) shows a curve of torque fluctuation for rotation fine angle of 0 °- 30 ° range . fig8 ( b ) shows pulses of rotation fine position signal s 17 . fig8 ( c ) shows data in the memory 20 for torque ripple compensation represented in analogue way . fig8 ( d ) shows rotation position signal s 15 . as has been described , the encoder disc r 1 has 12 × n 1 slits , and accordingly , as the rotor magnet 4 rotates the rotation fine position signal s 17 gives n 1 pulses for rotation fine angle of 0 °- 30 ° range . torque t 0 ( θ ) for the rotation fine angle θ is given by the following equation ( 1 ): b ( θ ) is magnetic flux density at rotation fine angle of θ , i m is motor driving current , i . e ., stator current and as shown in equation ( 1 ), the convex - shaped change of the torque t 0 ( θ ) is induced by the change of the magnetic flux density b ( θ ) which changes as shown in fig4 . accordingly , when a compensation function d c ( θ ) is defined by the following equation ( 2 ): ## equ1 ## wherein k 2 is a constant , then , by utilizing this function and motor control signal s 2 which is for the motor to rotate at stable speed , the stator coil current i m is compensatedly controlled in the gain control circuit 21 , and the following compensated current i m ( θ ) is obtainable : ## equ2 ## wherein ia is a mean value of the current which is constant . accordingly , the torque t c ( θ ) after compensation is given as follows : ## equ3 ## thus , a constant torque irrespective of the rotation fine position θ is obtainable and torque ripple in the rotation of the rotor magnet is drastically reduced . since the memory 20 is embodied by the rom , the compensation data stored in the rom are digital data , represented as d rc ( k ). the torque compensation data d rc ( k ) are stored in addresses of from 0 to ( n 1 - 1 ), and upon reception of a rise - up of pulse of rotation position signal s 15 , the rotation fine position signal counter 19 is reset to the output of count 0 , and therefore the address to be accessed in the rom 20 is reset to address 0 . and as pulses of the rotation fine position signal s 17 come in sequence , the address advances to 1 , 2 , 3 , . . . in sequence , thereby outputting compensation data s 3 which can be represented in analoque way by curve ( c ) of fig8 to the gain control circuit 21 as the torque compensation signal s 3 . hereupon , the compensation data d rc ( k ) stored in the address k of the rom is represented as follows : ## equ4 ## wherein θ k is the fine position at the k - th pulse of the rotation fine signal . since the rotation position signal s 15 is issued at every 30 ° position of the rotor magnet 4 , it has the following advantages in comparison with the driving circuit for electronic commutator motor using only one rotation position signal issued for 360 ° rotation : ( 1 ) since controlling is made by dividing 360 ° of rotation of the rotor magnet into a predetermined number ( for example , 12 in this embodiment ), capacity of the memory 20 ( the rom in this embodiment ) can be decreased to 1 / 12 of a circuit using only one rotation position signal . ( 2 ) the rotation fine position signal counter 19 counts pulses of rotation fine position signal s 17 and the counting is reset by a pulse of the rotation position signal s 15 from the or gate 14 ; and in this case , since the rotation fine position signal counter 19 is reset for a predetermined times during one ( mechanical 360 °) rotation of the rotor magnet , for instance 12 times in the above - mentioned example , the capacity of the counter 19 can be small in comparison with such case the counter is reset only one time for one ( mechanical 360 °) rotation of the rotor magnet and counting of the pulses of rotation fine position signal s 17 is made in sequence without resetting within one rotation . in this example , control signals for energizing the stator coils are utilized as the rotation position signal s 15 , but in a modified example , the rotation position signal can be produced by forming twelve slits on the encoder disc r 1 at a radial position different from the circular row of 12 × n 1 slits for rotation fine position signal s 17 and providing an additional led and an additional photoelectric element to produce the rotation position signal as follows : a second embodiment of the present invention is described with reference to fig9 fig1 , fig1 , fig1 and fig1 . fig9 shows block diagram of the second embodiment , wherein an electronic commutator motor 22 has the same configuration as the electronic commutator motor 3 in fig1 ( a ), fig1 ( b ) and fig6 having a rotor magnet 23 with six magnetic poles and a stator coil printed circuit substrate 24 with four stator coils . the motor also has a rotary encoder disc r 2 having two rows of slits sl 2 and sl 3 and two light emitting diodes d 2 and d 3 , and two photoelectric elements p 2 and p 3 . a motor drive circuit 25 is the same as that in fig2 and is for feeding stator current switched by signals from the hall elements h 5 and h 6 of the stator coil printed circuit substrate 24 . the rotary encoder disc r 2 and the rotor magnet 23 of the electronic commutator motor 22 are fixedly mounted on a shaft 26 . outside circular row of the slit sl 2 has 12 × n 2 slits and issues 12 × n 2 pulses by one ( mechanical 360 °) rotation of the rotor magnet 23 from the photoelectric element p 2 , and the obtained pulses are given to a known waveforming circuit 27 to produce rotation fine position signal s 28 , which is given to a fine position signal counter 34 , which is the same one as the fine position signal counter 19 of fig6 . the inside row of slits sl 3 is provided with 12 slits , and accordingly the photoelectric element p 3 receives the light through the slits sl 3 producing 12 pulses for one ( mechanical 360 °) rotation of the rotor magnet 23 . the pulses from the photoelectric element p 3 is wave - formed by a known waveforming circuit 29 and produces rotation position signal s 30 , which is given to a reset timing circuit 31 , which also receives rotation fine position signal s 28 from the wave forming circuit 27 . the reset time setting circuit 31 also receives reset time setting signals s 32 from outside circuit and the reset timing signal s 32 makes the rotation position signal s 30 delayed by a small time period for a predetermined number of pitch of pulses of the rotation fine position signal s 28 and the delayed rotation position signal s 33 is given to the fine position signal counter 34 as reset signal . as a result of the above - mentioned configuration , n 2 pulses of the rotation fine position signal is counted for a time period of between two rise - ups of pulses of the rotation position signal s 33 . and the number counted by the counter 34 corresponds to the rotation fine position of the rotor magnet 23 , and the count is given to the memory 35 . the compensation circuit 18 &# 39 ; of the embodiment , which is the same as that in fig6 comprises the rotation fine position signal counter 34 for counting pulses of rotation fine position signal s 28 from the wave - forming circuit 27 for a time period defined by two rise - ups of the pulses of rotation position signal s 33 from the reset time setting circuit 31 , a memory 35 for storing compensation data for respective rotation fine position signal s 5 in the partitioned time period between the two rise - ups of the pulses of the rotation position signal s 33 , and a gain control circuit 37 for making gain control of a motor control signal s 36 by amplifying or attenuating it responding to compensation signal from the memory 35 . the counter 34 is constituted to be reset by the rise - ups of the pulses of the rotation position signal s 33 and counts pulses of the rotation fine position signal s 28 from the wave forming circuit 27 , thereby producing count corresponding to rotation fine position of the rotor magnet 23 . the memory 35 is usually a read only memory ( rom ), and stores compensation data for use in compensating the undesirable torque ripple to obtain uniform torque of the electronic commutator motor , and issues compensation data output responding to input signal as address signal of the counter 34 . fig1 shows waveforms related to the compensation signal s 4 . as has been described with reference to fig5 switching of the current of stator coil are made at 0 °, 30 °, 60 °, 90 °, 120 °, 150 °, 180 °, 210 °, 240 °, 270 °, 300 °, 330 ° and 360 °, and within each partition angle range for 30 °, magnetic flux distribution changes in the same pattern as shown in fig1 ( a ). in other words , since the torque before compensation of torque ripple as shown in fig5 has repetition of twelve convex waveforms of the same pattern , it is sufficient with that the memory 35 stores compensation data for each partition angle - range of 30 ° only , and the same compensation data are used for every convex waveforms of torque . thus , the way of compensation for a 0 °- 30 ° partition angle - range only is described below , and the same applies for other partition angle ranges . fig1 ( a ) shows a curve of torque fluctuation for rotation fine angle of 0 °- 30 ° range . fig1 ( b ) shows pulses of rotation fine position signal s 28 . fig1 ( c ) shows data in the memory 35 for torque ripple compensation represented in analogue way . curve ( d ) of fig1 shows rotation position signal s 30 of the case when positional relation between the rotary encoder disc r 2 and the rotor magnet 23 is in a good agreement . curve ( e ) of fig1 shows delayed rotation position signal s 33 from the reset time setting circuit 31 . now provided that , one pulse of the pulse train of the rotation fine position signal s 28 is defined as a clock pulse , the delayed rotation position signal s 33 is delayed by a time period of two clock pitches by the reset time setting circuit 31 for adjustment . the curve ( c ) has a shape which is inversely proportional to the curve ( a ). the reason why the adjusted rotation position signal s 33 is delayed by two clock period from that of the signal s 30 is that compensation of time lag of the output signal s 30 could be compensated of the disagreement within the pitches of ± 2 clock pulses . torque t 0 ( θ ), which is the torque of the electronic commutator motor when the rotation position in mechanical angle is θ ° as shown in ( a ) of fig1 , is represented by the following equation : as shown in equation ( 7 ), the magnetic flux density b ( θ ) changes corresponding to change of rotation position θ °. accordingly , when a compensation function d c ( θ ) is defined by the following equation ( 8 ): ## equ5 ## wherein k 4 is a constant . then , by utilizing this function and motor control signal s 36 which is for the motor to rotate at stable speed , the stator coil current i m is compensatedly controlled in the gain control circuit 37 , and the following compensated current for i m ( θ ) for the rotation position angle θ ° is obtainable : ## equ6 ## wherein k 4 is a constant . accordingly , the torque value t c ( θ ) after compensation is given as follows : ## equ7 ## as is shown in the equation ( 10 ), the t c ( θ ) becomes independent from the rotary fine position θ . that is , the compensated torque becomes uniform irrespective of the rotation position . since the memory 35 is embodied by the rom , the compensation data d rc ( k ) stored in the rom are digital data as shown in fig1 ( c ). the torque compensation data d rc ( k ) are stored in addresses from 0 to ( n 2 - 1 ), and upon reception of a rise - up of pulse of rotation position signal s 33 , the rotation fine position signal counter 34 is reset to the output of count 0 , and therefore the address to be accessed in the rom 35 is reset to address 0 . and as pulses of the rotation fine position signal s 28 come in sequence , the address advances to 1 , 2 , 3 , . . . in sequence , thereby outputting compensation data s 4 to the gain control circuit 37 as the torque compensation signal s 4 . hereupon the compensation data d rc ( k ) stored in the address k of the rom is represented as follows : ## equ8 ## the above - mentioned operation case is the case that a rotary encoder disc r 2 and the rotor magnet 23 are in good positional agreement each other . however , in manufacturing the electronic commutator motor , it is not necessarily possible to construct the rotor magnet 23 and the rotary encoder disc r 2 in accurate agreement in designed position . therefore , the present embodiment can adjust rotating position disagreement between the rotor magnet 23 and the rotary encoder disc r 2 by the extent of fine position angles for two slits which corresponds to ± 2 clock pulses . firstly , fig1 shows a case that the rotation position signal s 30 from the wave - forming circuit 29 advances by two clock pitches from the accurate agreement position . fig1 , curve ( a ) shows a curve of torque fluctuation for rotation fine angle of 0 °- 30 ° range . fig1 , curve ( b ) shows pulses of rotation fine position signal s 28 . fig1 , curve ( c ) shows data in the memory 35 for torque ripple compensation represented in analogue way . curve ( d ) of fig1 shows rotation position signal s 30 , and this signal is leading by two clock pitches from the case of signal ( d ) of fig1 . in this case , by utilizing the reset time setting circuit 31 , the timing is delayed by a time period of four clocks , thereby to obtain a signal shown by a curve ( e ) of fig1 , which shows delayed rotation position signal s 33 from the reset timing circuit 31 . in such way , a torque ripple compensation signal of a pattern of ( c ) of fig1 is obtainable with adjusting timing . thus the compensation signal s 4 has the right rotation position like the curve ( c ) of fig1 . nextly , the case of operation when the rotation position signal s 30 lags from the intended rotation position of the rotor magnet 23 by two clock pitches is described with reference to fig1 . curve ( a ) of fig1 shows a curve of torque fluctuation for rotation fine positions in angle range of 0 °- 30 °; curve ( b ) of fig1 shows pulses of rotation fine position signal s 28 ; curve ( c ) of fig1 shows data in the memory 35 for torque ripple compensation in analogue way ; curve ( d ) of fig1 shows rotation position signal s 30 which lags by two clock pitches from the corresponding case of ( d ) of fig1 . in this case , as a result of utilizing the reset time setting circuit 31 , the timing is not delayed at all , thereby to obtain a signal shown by a curve ( e ) of fig1 , which shows adjusted rotation position signal s 33 . by such adjustment , a torque ripple compensation signal of a pattern of ( c ) of fig1 is obtainable with adjusted timing . thus , the compensation signal s 4 has the right rotation positions like the curve ( c ) of fig1 . fig1 shows one example of the reset time setting circuit 31 . signals b 1 and b 2 reset time setting of the signal 32 are input to the terminals b 1 and b 2 . when b 1 is of l level , amount of delay is 0 as shown in fig1 , when b 1 is of h level and b 2 is of l level the amount of delay is two clock pitches as shown in fig1 , when both b 1 and b 2 are of h level the amount of delay is four clock pitches as shown in fig1 ; thus by selecting the reset time setting signal 32 three ways of delay are selectable , and accordingly even if the rotation position signal 30 and the angular position of the rotor magnet do not agree in the rotation position , the electric adjustment can compensate such disagreement . if further , fine adjustment of delay period is desired , more fine adjustment or in wider range can be made . as other embodiment , output signal from the hall elements h 5 and h 6 for selecting the stator coils may be used instead of the signal s 30 as the rotation position signal . a third embodiment of the present invention is described with reference to fig1 , fig1 , fig1 , fig1 , fig1 , fig1 and fig2 . fig1 shows block diagram of the third embodiment , wherein an electronic commutator motor 38 has the same configuration as the electronic commutator motor 3 in fig1 ( a ), fig1 ( b ) and fig6 having a rotor magnet 39 with six magnetic poles and a stator coil printed circuit substrate 40 with four stator coils . the motor also has a rotary encoder disc r 3 having two rows of slits sl 4 and sl 5 and two light emitting diodes d 4 and d 5 , and two photoelectric elements p 4 and p 5 . a motor drive circuit 25 is the same as that in fig2 and is for feeding stator current switched by signals from the hall elements h 7 and h 8 of the stator coil printed circuit substrate 40 . the rotary encoder disc r 3 and the rotor magnet 39 of the electronic commutator motor 38 are fixedly mounted on a shaft 41 . outside circular row of the slit sl 4 has 12 × n 3 slits and issues 12 × n 3 pulses by one ( mechanical 360 °) rotation of the rotor magnet 39 from the photoelectric element p 4 , and the obtained pulses are given to a known wave - forming circuit 42 to produce rotation fine position signal s 43 , which is given to a fine position signal counter 53 , which is the same one as the fine position signal counter 19 of fig6 . the inside row of slits sl 5 is provided with 12 slits , and accordingly the photoelectric element p 5 receives the light through the slits sl 5 producing 12 pulses for one ( mechanical 360 °) rotation of the rotor magnet 39 . the pulses from the photoelectric element p 5 is wave - formed by a known wave - forming circuit 44 , and produces rotation position signal s 45 , which is given to a reset time setting circuit 50 , which also receives rotation fine position signal s 43 from the wave - forming circuit 42 . output signal from the hall elements h 7 and h 8 are wave - formed by a wave - forming circuit 46 , which is configurated similarly to a wave - forming circuit part in fig2 comprising the resistors r 1 , r 2 , r 5 , the differential amplifier amp 1 and the inverter inv 1 and by another wave - forming circuit 46 , which is configurated similarly to another wave - forming part in fig2 comprising the resistors r 3 , r 4 , r 6 , the differential amplifier amp 2 and the inverter inv 3 , and the output signals s a , s b of the wave - forming parts are input to a rotation direction detection circuit 48 . since the signals from the hall elements h 7 and h 8 have phase a difference of 90 ° with each other , by utilizing relation of lag and lead of signals the rotation direction detection circuit 48 outputs signal s 49 of rotation direction , in a manner that the signal is &# 34 ; h &# 34 ; when the rotor magnet 39 rotates in a clockwise direction and &# 34 ; l &# 34 ; when the rotor magnet 39 rotates in an anticlock direction . the signal s 45 from the wave - forming circuit 44 and the rotation direction detection signal s 49 from the rotation direction detection circuit 48 are given to the reset time setting circuit 50 . the reset time setting circuit 50 also receives reset time setting signals s 51 from outside circuit and the reset time setting signal s 51 makes the rotation position signal s 45 delayed by a small time period for a predetermined number of pitch of pulses of the rotation fine position signal s 43 and the delayed rotation position signal s 52 is given to the fine position signal counter 53 as reset signal . the compensation circuit 18 &# 34 ; of the embodiment , which is the same as that in fig6 comprises the rotation fine position signal counter 53 for counting pulses of rotation fine position signal s 43 from the wave - forming circuit 27 for a time period defined by two rise - ups of the pulses of rotation position signal s 52 from the reset time setting circuit 50 , a memory 54 for storing compensation data for respective rotation fine position signal s 6 in the partitioned time period between the two rise - ups of the pulses of the rotation position signal s 52 , and a gain control circuit 55 for making gain control of a motor control signal s 56 by amplifying or attenuating it responding to compensation signal from the memory 54 . the counter 53 is constituted to be reset by the rise - ups of the pulses of the rotation position signal s 52 and counts the pulses of the rotation fine position signal s 43 from the wave - forming circuit 42 , thereby producing count corresponding to rotation fine position of the rotor magnet 39 . the memory 54 is usually a read only memory ( rom ), and stores compensation data for use in compensating the undesirable torque ripple to obtain uniform torque of the electronic commutator motor , and issues compensation data output responding to input signal as address signal of the counter 53 . fig1 shows waveforms related to the compensation signal s 7 . as has been described with reference to fig5 switching of the current of stator coil are made at 0 °, 30 °, 60 °, 90 °, 120 °, 150 °, 180 °, 210 °, 240 °, 270 °, 300 °, 330 °, and 360 °, and within each partition angle range for 30 °, magnetic flux distribution changes in the same pattern as shown in curve ( a ) of fig1 . in other words , since the torque before compensation of torque ripple as shown in fig5 repetition of twelve convex waveforms of the same pattern , it is sufficient with that the memory 54 stores compensation data for each partitioned angle range of 30 ° only , and the same compensation data are used for every convex waveforms of torque . thus , the way of compensation for a 0 °- 30 ° partition angle - range only is described below , and the same applies for other partition angle ranges . fig1 , ( a ) shows a curve of torque fluctuation for rotation fine angle of 0 °- 30 ° range . fig1 , ( b ) shows pulses of rotation fine position signal s 43 . fig1 , ( c ) shows data in the memory 54 for torque ripple compensation represented in analogue way . curve ( d ) of fig1 shows rotation position signal s 45 of the case when positional relation between the rotary encoder disc r 3 and the rotor magnet 39 is in a good agreement . curve ( e ) of fig1 shows delayed rotation position signal s 52 from the reset time setting circuit 50 . now provided that , one pulse of the pulse train of the rotation fine position signal s 43 is defined as a clock pulse , the delayed rotation position signal s 52 is delayed by a time period of three clocks by the reset time setting circuit 50 for adjustment . and though having minute steps , the curve ( c ) has a shape which is inversely proportional to the curve ( a ). the reason why the adjusted rotation position signal s 52 is delayed by three clock period from that of the signal s 45 is that compensation of time lag of the output signal s 45 could be compensated of the disagreement within the pitches of ± 3 clock pulses . torque t 0 ( θ ), which is the torque of the electronic commutator motor when the rotation position in mechanical angle is θ ° as shown in ( a ) of fig1 , is represented by the following equation : as shown in equation ( 13 ), the magnetic flux density b ( θ ) changes corresponding to change of rotation position θ °. accordingly , when a compensation function d c ( θ ) is defined by the following equation ( 12 ): ## equ9 ## wherein k 6 is a constant . then , by utilizing this function and motor control signal s 56 which is for the motor to rotate at stable speed , the stator coil current i m is compensatedly controlled in the gain control circuit 55 , and the following compensated current i m ( θ ) for the rotation position angle θ ° is obtainable : ## equ10 ## wherein accordingly , the torque value t c ( θ ) after compensation is given as follows : ## equ11 ## as is shown in the equation ( 16 ), the t c ( θ ) becomes independent from the rotary fine position θ . that is , the compensated torque becomes uniform irrespective of the rotation position . since the rom is used as the memory 54 , the actual torque compensation data d rc ( k ) to be stored in the rom in digital data become discrete data as shown in fig1 ( c ). the torque compensation data d rc ( k ) are stored in addresses of from 0 to ( n 3 - 1 ), and upon reception of a rise - up of pulse of rotation position signal s 52 , the rotation fine position signal counter 53 is reset to the output of count 0 , and therefore the address to be accessed in the rom 54 is reset to address 0 . and as pulses of the rotation fine position signal s 43 come in sequence , the address advance to 1 , 2 , 3 , . . . in sequence , thereby outputting compensation data s 7 to the gain control circuit 55 as the torque compensation signal s 7 . hereupon the compensation data d rc ( k ) stored in the address k of the rom is represented as follows : ## equ12 ## the above - mentioned operation case is the case that a rotary encoder disc r 3 and the rotor magnet 39 are in good positional agreement each other . however , in manufacturing the electronic commutator motor , it is not necessarily possible to construct the rotor magnet 39 and the rotary encoder disc r 3 in accurate agreement in designed position . therefore , the present embodiment can adjust rotating position disagreement between the rotor magnet 39 and the rotary encoder disc r 3 by the extent of fine position angles for three slits which corresponds to ± 3 clock pulses . firstly , fig1 shows a case that the rotation position signal s 45 from the wave - forming circuit 44 advances by three clock pitches from the accurate agreement position . fig1 , curve ( a ) shows a curve of torque fluctuation for rotation fine angle of 20 °- 30 ° range like the curve of fig1 ( a ). fig1 , curve ( b ) shows pulses of rotation fine position signal s 43 from the wave - forming circuit 42 . fig1 , curve ( c ) shows data in the memory 54 for torque ripple compensation represented in analogue way . curve ( d ) of fig1 shows rotation position signal s 45 and this signal is leading by three clock pitches from the case of signal ( d ) of fig1 . in this case , by utilizing the reset time setting circuit 50 , the timing is delayed by six clock pitches , thereby to obtain a signal shown by a curve ( e ) of fig1 , which shows delayed rotation position signal s 52 from the reset time setting circuit 50 . in such way , a torque ripple compensation signal of a pattern of ( c ) of fig1 is obtainable with adjusted timing . thus , the compensation signal s 7 has the right rotation position like the curve ( c ) of fig1 . nextly the case of operation when the rotation direction of the rotor megnet 39 is inverse to the case of fig1 is shown in fig1 . in fig1 , curve ( a ) shows a curve of torque fluctuation like the curve ( a ) of fig1 ; curve ( b ) of fig1 shows pulses of rotation fine position signal s 43 ; curve ( c ) of fig1 shows data in the memory 54 for torque ripple compensation represented in analog way ; curve ( d ) of fig1 shows rotation position signal s 45 which lags by three clock pitches from the corresponding case of ( d ) of fig1 . accordingly , by selecting the operation of the reset time setting circuit 50 to keep reset time setting signal s 51 similar to the case of the rotation direction shown in fig1 , and by use of changingthe level of output signal s 49 of the rotation direction detection circuit 48 in a predetermined way , delay value is switched as desired , and the rotation position signal s 52 of fig1 adjusted in a right rotation position is obtainable as shown by curve ( e ) of fig1 by the adjustment . by such signal processing , the obtained signal s 52 has the same timing as that of the curve ( e ) of fig1 . accordingly , a compensated torque pattern as shown by curve ( c ) of fig1 is obtainable . fig1 shows such a case of operation as the rotation position signal s 45 from the wave - forming circuit 42 is lagging by three clock pitches from a right one , contrarily to the case of fig1 . curve ( a ) of fig1 shows a curve of torque fluctuation for one of the twelve - partitioned range of one rotation of the rotor magnet 39 like the curve ( a ) of fig1 . curve ( b ) of fig1 shows pulses of rotation fine position signal s 43 . curve ( d ) of fig1 shows rotation position signal s 45 which is lagging by three clock pitches from that of the curve ( d ) of fig1 . accordingly , by selecting the operation of the reset time setting circuit 50 so as to make the delay value zero , a compensated rotation position signal s 52 of curve ( e ) of fig1 is obtained . therefore , a torque compensation signal s 7 shown by curve ( c ) of fig1 is obtained and a satisfactory torque ripple compensation is achieved . fig1 shows such a case of operation as rotation direction of the rotor magnet 39 is inverse to the case of fig1 . in fig1 , curve ( a ) shows a curve of torque fluctuation for one of the twelve partitioned range of one rotation of the rotor magnet 39 like the curve ( a ) of fig1 . curve ( b ) of fig1 shows pulses of rotation fine position signal s 43 . curve ( d ) of fig1 shows rotation position signal s 45 , which is leading by three clock pitches to the case of the curve ( d ) of fig1 . accordingly , by selecting the operation of the reset time setting circuit 50 to keep reset time setting signal s 51 similar to the case of the rotation direction shown in fig1 , and by use of changing the level of output signal s 49 of the rotation direction detection circuit 48 in a predetermined way , delay value is switched as desired , and thereby , the compensated rotation position signal s 52 of curve ( e ) of fig1 is produced . thus , the compensated rotation position signal s 52 shown by fig1 ( e ) has the same timing as that shown by curve ( e ) of fig1 , and a torque ripple compensation signal s 7 shown by curve ( c ) of fig1 is obtained and satisfactory torque ripple compensation is achieved . fig2 shows one example of a reset time setting circuit 50 to be used in the embodiment illustrated in fig1 - fig1 . the circuit configuration and component circuits are self - evident from their known signs . the delay value obtainable by the reset time setting circuit 50 of fig2 is shown in the chart of fig2 . in fig2 , &# 34 ; h &# 34 ; and &# 34 ; l &# 34 ; designate high level and low level , respectively ; &# 34 ; cw &# 34 ; and &# 34 ; ccw &# 34 ; designate clockwise and counterclockwise , respectively ; and the numerals designate clock - pitches of delays . accordingly , by setting the signals b 1 and b 2 of the reset time setting circuit 51 , so as to produce desired necessary compensation for angular disagreement between the rotor magnet 39 and the rotary encoder disc r 3 , a satisfactory compensation of the angular position is obtainable irrespective of directions of rotation of the rotor magnet 39 . instead of the above - mentioned uses of the hall elements h 7 , h 8 to make the rotation position signal , such other modified configuration may be used as providing a third circular row of slits with an additional led and photoelectric element . as still another modification , output signals for the motor drive circuit 25 from the hall elements h 7 , h 8 may be used to produce the rotation position signal s 45 , instead of the use of the output signal from the photoelectric elements d 5 and p 5 .