Control of commutation of SR motor using its magnetic characteristics and back-of-core saturation effects

The control of commutation of switched reluctance (SR) motor has nominally depended on a physical position detector. The physical rotor position sensor limits robustness and increases size and inertia of the SR drive system. The paper describes a method to overcome these limitations by using magnetization characteristics of the motor to indicate rotor and stator teeth overlap status. The method is using active current probing pulses of same magnitude that is used to simulate flux linkage in the winding being probed. A microprocessor is used for processing magnetization data to deduce rotor-stator teeth overlap status and hence rotor position. However, the back-of-core saturation and mutual coupling introduces overlap detection errors, hence that of commutation control. This paper presents the concept of the detection scheme and the effects of back-of core saturation.


I. INTRODUCTION
HE conventional methods used to control commutation of switched reluctance (SR) motor requires physical position sensors, the optical one being cheapest among the options available, to provide controllers with the position feedback [1,2] they require. Fig. 1 shows such a motor, an attached optical position sensor. The physical position sensors are not desired when one is to maximize robustness and minimize size and inertia [2][3][4] . Therefore, sensorless rotor position detector which uses inherent characteristics of the motor would be a better solution for controller since it shall add nothing to the motor itself but at the controller. Therefore, inertia and size will not change. The challenge is in having a robust sensorless detector using magnetization characteristics of the motor. One has also to consider adoption issues for the solution being developed. Since optical head position sensor is very common, a detector producing its equivalent signal can easily be incorporated in the existing controllers. The developed microprocessor based sensorless rotor position detection system using stator voltages and current does produce such signals. It generates and stores rotor position transfer characteristics (RPTC) of the motor that translates flux-linkage at a given current (position representing signals) to rotor position. The inactive phase is used for probing position by injecting current pulses, while active phases carry load current. The active and inactive phases share parts of the magnetic circuit and therefore suffer from magnetic interaction problems that are made complex by the nonlinear nature of the motor expressed by equation 1 and shown in fig. 2 where ψ is fux-linkage, H is permeance and Ө the rotor position.
The effects of current in adjacent phases for a 4-phase 8 stator and 6 rotor poles SR motor on the position diagnostic signals was measured and the results are given in fig. 3 behavior presents a major challenge in realizing reliable and accurate RPTC using magnetic characteristics of the motor. Fig. 4 is a block diagram of the sensorless rotor position detection scheme. The developed method generates rotor position from the characteristics of the motor itself therefore there cannot be an offset between rotor teeth overlap status and the generated position signals to indicate the same.
The commonly used optical encoders use extrapolation to predict commutation position to advance or retard commutation. The developed method can advance or retard SR motor commutation signals by any amount specified at any speed within motors' operating range using the information available within the microprocessor. It also has higher bandwidth since it measures position down standstill state. The scope of this paper is limited to accurate definition of commutation positions for SR motor. The operation of any motor can be divided into four basic regimes: standstill, low-speed, mediumspeed and high-speed operation. Only the first three regimes are covered in this paper.
A number of schemes that have been developed aimed at removing the necessity of using optical encoder or its equivalent in the control of SR motor [6] . These schemes use linear characteristics of phase inductance [2][3][4]9] or non-linear ones based on observer or phase permeance [6-8, 10, 11] . The basic difference between them is in the techniques used to extract and process position information from phase inductance or permeance. Each method is designed for specific application, hence the prescribed features. The method developed aims at simplicity and low cost without loss in reliability and accuracy, which is challenging.

II. THE PRINCIPLE OF THE DETECTOR
This detector is designed for a 4-phase SR motor with eight stator poles and six rotor poles. An 8-bit microprocessor (8 MHz clock) and an 8-bit A/D converter were used from costs perspective which presented low resolution working environment. The observer-based detector and others [7,8,9,10,11] needed at least a fast 16-bit processor but the performance was not always satisfactory when tested online. The SR motor winding excitation was controlled using two snubberless power MOSFET switches per phase, where only one phase was excited at a time. The phase opposite to that excited for motoring was used for position diagnostic purposes (i.e. active probing). It was excited until the current reached a preset value while flux-linkage in the winding being simulated using voltage across the stator winding. The iR drop was assumed to be negligible as expressed in equation 2 from which a rotor position signal Ө signal given by equation 3 was obtained, where u ph is phase voltage. A microprocessor was used to translate Ө signal shown in fig. 5 to position using table lookup method. An alternative to active probing would have been to deduce rotor position from active phase using the three demission motor characteristic shown in fig. 2 which requires large storage and computation power.
The lookup table was made from the rotor position signal Ө signal by assigning the flux-linkage signal at aligned position 180° value and that at mis-aligned position a 0° value as shown in fig. 5. This representation was chosen over the conventional one which use the leading and trailing edges of the rotor pole as reference positions to avoid using of signed numbers. To maximize resolution of the position detector, the minimum flux-linkage value was offset to zero and the maximum mapped to that of the A/D converter. Since the fluxlinkage of the motoring phase increases in the direction of motion that of the diagnostic phase will be decreasing. Hence, the detected position will be decreasing in magnitude irrespective of direction of rotation whenever the motor is in motion.

A. The Position Transfer Characteristics
The rotor position can be defined in terms complete angular rotation of shaft, referred to as mechanical angle or in terms of electrical cycle ( fig. 6) which correspond to the cycle of fluxlinkage of phase (i.e. 6 cycle in a single shaft rotation) and commutation cycle which is the excitation period of a phase (i.e. 4 in an electrical cycle). Therefore, any of these can be used to define the rotor position for commutation purposes. When using the electrical cycle, the detected position within the cycle using any of the four phases can be obtained using equation 4 where one of the phases is used as reference, θ n is the sampled position and θ offset is the angle between the diagnostic phase and the reference. Four steps of a 4-phase SR motor result in 360° electrical degrees rotation while there are six electrical cycles in a complete motor shaft rotation.
It is important to take into account the purpose for which position is being detected, which is to control commutation of the motor. For this purpose, it is enough to define position within the commutation cycle, where position magnitude is obtained from diagnostic flux-linkage signals directly using the ψ/θ tables without any transformation [2] . Therefore, the detected position will vary between that of commutation and the commutation position plus fixed phase displacement between adjacent phases (i.e. 90° electrical) during operation.
The constant-current rotor position transfer characteristics (RPTC) is a table of ψ/θ at constant current programmed directly using position information from an optical encoder and the flux-linkage signal whose variable magnitude is mapped to that of input dynamic range the A/D converter used. The differences in the inductance of different phases, circuit components and current transducers were compensated for by adjustment of current traducer sensitivities to enable the use one table of ψ/θ for all phases. The memory requirement, costs and access time were thus optimised. The achieved lowest position resolution for A/D converter used is 0.5° electrical.

B. Implementation Concept
The prototype motor makes 24 steps per rotation, which is 1200 steps/s at 3000 rpm. It implies that commutation cycle can be as low as 0.8 ms, hence for 1% accuracy detection the sample should be obtained within μ8s. Therefore, for the processor used the problem was time critical, hence only low level programming could be used. Interrupt mode of operation was used with appropriate priority assignment to optimize utilisation of processor time. The functions performed by the processor included monitoring operators' commands and fluxlinkage signal status, speed calculations, position extrapolation and provision of commutation signal for principal excitation phase and defining the diagnostic phase. The difference between the generated commutation signals and those from the conventional optical head is that in the later signals change at fixed positions while in the new method the change is at the commutation position.
To optimize the use of the speed of the A/D converter and hence costs, part of the processor external access setup was used as A/D conversion period. Whenever the diagnostic current reached a defined level after application of diagnostic voltage pulse to a phase winding, the processor was signaled to read in flux-linkage data while at the same time the A/D conversion process was initiated. The execution speed was optimised, and the necessary program storage area minimised by changing parts of the program that changed less frequently than execution of a particular routine.
When the motor is stationary the phase for excitation was determined by probing two adjacent phases and comparing the resulting position magnitudes. However, care is required to remove possibility for ambiguity [2] . Once in motion only one phase is used for detection. At low speeds, the sampled position is used directly to determine commutation condition and speed evaluation and position extrapolation are initiated ready to takeover defining when to commutate. At medium and high speed operation, the commutation position is determined from extrapolated position [2] .
The position sampling rate is constrained by the resonant frequency of the electrical components of the stator winding circuit since they determine when the minimum error conditions occurs to initiate sampling for the phase enabled for diagnostic purposes [1] .

C. Processing
The microprocessor reads in flux-linkage data when signaled by the RPTC generator of its availability that is translated into position using pre-stored ψ/θ table. The routine for reading in position data also records time and the difference between the current position and the next commutation position given by the extrapolation routine. Position sampling and commutation control were implemented in the same routine when operating in the low speed regime to minimise execution time. However, at medium speeds operation data acquisition routine and that for commutation were different since the two events do not necessarily coincide in time. However, partial speed calculation is done in the sampling routine in both speed regimes to optimise overall execution time by minimising data transfer between routines.
The commutation function defines and passes to the driver/control board the next principal and diagnostic phases for excitation using two bit codes for compatibility with controllers using conventional optical head signals. This is done whenever the detected or extrapolated instantaneous rotor position signal equals or crosses the set commutation The magnetic coupling between different phases was initially assumed negligible since opposite phase was used, but as shown in fig. 3 errors in adjacent phases is very significant from coupling with adjacent phases. All other residue error sources were assumed to be random in speed calculations.  (8) was used for position extrapolation. This is a compromise between delay and extrapolated position errors. Also, tests were made to correlate position and speed changes of successive position samples before adoption for speed calculations. This eliminated sporadic large errors. The concept used is based on the fact that inertia of moving parts limits acceleration/deceleration hence magnitude and the rate of change. Performing correlation tests on both speed and position increased reliability of the limited resolution (8-bit) system used while saving processor time.

Equation 6
gives the concept used in extrapolation of rotor position. Two CTC counters of the microprocessor kit are used to integrate speed to get position so as to free the processor. One of the counters contained position information while the other speed information (i.e. inverse of speed). The speed counter contained Δt r /Δθ r , Δθ r being the resolution of the speed detector and Δt r the time required for the motor to move by the resolution amount assuming constant speed operation.
The Δt r is obtained from speed calculations while Δθ r is unity. The slope counter is updated with Δt r value after every position sample. By decrementing the contents of the position counter at the end of every timed interval Δt r defined by the value of the slope counter, the contents of the position counter shall reflect relative rotor position. When initialized properly position counter will give instantaneous position. However, the initialisation method adopted shown in fig. 7 was for defining commutation instance. Therefore, the value of the position counter was initialized by the position differences between two successive commutation positions θ comm at commutation instant. Hence, contents of the position counter θ * is the difference between the instantaneous position magnitude and the commutation position θ sw . θ comm is 90° electrical for a 8/6 poles four phase SR motor operating under fixed conduction angle with only one phase excitation at time. When operating in the medium speed regime an interrupt is generated at every zero count of the position counter making the processor to generate commutation signal.
Assuming error free operation, initialisation need be made once in the low speed regime. However, errors due to electromagnetic and electrostatic coupling of windings are there. Therefore, they must be addressed. The diagnostic position value at each sampling instant prior to entering the 8 '  and transient errors were detected and compensated for using the feedback control system shown in fig. 8. Persistent errors were detected by averaging a pre-set number of successive samples that was a compromise between achievable accuracy and introduced delay which modified the error in (8) to that given by (9). Eight samples were used and the factors k 1 , k 2 , and k 3 for the system shown in figure 8 were set at 0.75, 2.0, and 1.0 respectively. This further modified the error term in (8) to improve accuracy and response making it to be that given by (10) where n refers to the present sample, The additional term k 3 provided dynamic pre-set position displacement between phases in case there is a continuous position error that is used to alter position counter constant to ensure that commutation always takes place at the desired position. Extrapolation of position is not made entirely in a separate routine but is a result of execution of three or four routines depending on the operating speed range.
Two counters that form part of peripheral ICs for the microprocessor system are used in position extrapolation immediately after each position sample. A nominal approach of updating the counter when counter value reduces to zero introduces delay of one cycle leading to sluggish decaying or under-damped oscillatory response to a transient error. To remove this problem and correct transient error in a single step i.e. one commutation cycle the cycle was divided into two extrapolation cycles each with a nominal position change of θ comm /2, although equality in the magnitudes is not obligatory. In the first cycle a modified value of θ comm /2 in response to detected errors was used, while in the second perceived as a "forget" cycle the nominal θ comm /2 was used and there was no error was detection. Therefore, error θ ε occurring is detected and corrected within one commutation cycle before the next position error detection takes place. Omitting the "forget" cycle produces poor detection transient response for the limited to 8 -bit resolution.

IV. MAGNETIC COUPLING ERRORS
The magnetic coupling can be divided into two categories: (a) saturation in the common magnetic path for different phases (back-of-core saturation) and (b) mutual coupling between the phases. Although the control strategy is that of exciting one phase at a time, current can exist in up to three phases in some cases when the diagnostic phase is turned on while the current in the just-off switching sequence has not decayed to zero. Therefore, their influence on position detection cannot be ignored. For position detection purposes, the magnetic coupling effects are treated as disturbances.
A. Back-of-Core Saturation effects Back-of-core saturation affects diagnostic signals since reluctance of common magnetic path increases with saturation level for single stack variable reluctance motors. An analytical approach to the problem of magnetic coupling between phases is beyond the scope of this paper. Such analysis will involve consideration of the effects of a wide range of flux levels, mutual coupling, eddy currents in core laminations, and switching transients that may include switching circuits. Empirical method was used where disturbance was introduced in one phase and its effect monitored in the others and by introducing disturbances in other phases and monitoring its effect in a given phase.
The effects of back-of-core saturation was measured by injecting diagnostic current pulses in phase A when the other phases, one at a time, carried different magnitudes of dc constant current for different locked rotor positions relative to that when diagnostic current acts alone. The normalised backof-core saturation response in fig. 3 shows that the effect of adjacent phase can be very significant. The effect in one of the adjacent phases increases with the permeance at first and then decreasing before the phase reaches the aligned position. Errors in the other adjacent phases is low initially but rising sharply at the end. That of opposite phase remain throughout although position dependent as well. The resulting errors are given in fig. 9 which was obtained as a difference in the diagnostic signal with and without current in other phases.
Measured results show that the back-of-core saturation errors become particularly large when the principal excitation phase carries current while close to the aligned region (where the airgap reluctance is minimum) while the diagnostic phase is away from the mis-aligned region. This is due to the high level of saturation in the back-of-core while the influence of the air-gap on the permeance of the diagnostic phase is diminishing. Furthermore, when the diagnostic phase is electrically opposite to the excited phase, the error due to the back-of-core saturation remains below 1° mechanical for most of the commutation cycle, under single-phase excitation control mode. Also, high currents around the mis-aligned region make a small contribution to the back-of-core saturation errors.

B. Mutual Coupling Effects
SR motors with an even number of rotor and stator poles have a low mutual coupling between phases. The highest coupling is between adjacent phases. The peak value of the coupling coefficient between the adjacent phases was approximately 0.1, but the average over one electrical cycle was claimed to be much lower [12] hence neglected in torque calculations. For position detection it is the instantaneous Fig. 9 Position errors due to back-of-core saturation value that matters particularly because it is being simulated. Mutual coupling between phases was determined by measurements. Mutual coupling between phases at low currents was measured using diagnostic pulses. The diagnostic phase was excited in the same way as used in the position detection scheme, under locked rotor condition. The diagnostic pulse was introduced in one phase, and flux-linkage simulated in all phases one at a time for different positions. A bias flux was introduced into the back-of-core using a constant dc current for one of the adjacent phases only, with a constant dc current in the phase electrically opposite to the diagnostic one.
The results show that mutual coupling between electrically opposite phases can be neglected, since they are small. However, that between adjacent phases cannot be ignored. Figure 10 shows that the diagnostic phase has minimum mutual coupling to a phase that is in the mis-aligned region. But, when the diagnostic phase is itself at the mis-aligned region, the magnitude of flux-linkage coupled to other phases remains significant relative to that due to its self inductance. Although at the diagnostic current level the magnitude of the flux-linkage coupled to the adjacent phases is low, that due to self inductance is also small. The highest normalized value occurred when the diagnostic phase was about 9 o mechanical (i.e. 54 o electrical) away from the aligned position. The technique used made the speed of response of the position detector to be very good.
Careful planning of the compensator routine was very useful for the 8-bit accuracy in calculations in minimizing delays. The limited accuracy can be seen as an additional disturbance to the controller.
The comparison of measured and extrapolated positions and the compensation done in extrapolation process ensured detector robustness.
The scheme is superior to that of fixed optical heads since extrapolation can be done in between commutation instance as position samples becomes available thus higher bandwidth. At light loads and low speeds the detected position is not influenced by changes in the excitation status of other phases. However, at medium speeds the interaction of the diagnostic phase with other phases cannot be ignored. The current decay time in the just OFF phase is relatively long compared to the commutation interval. The just OFF phase being adjacent to the diagnostic phase has stronger influence to diagnostic phase than was the opposite phase, see fig. 8. However, this occurs in the upper limit of the operating speed range. Compensation is therefore necessary [2] .

V. CONCLUSION
The paper has demonstrated that magnetisation characteristics of a SR motor can be used to indicate reliably the phase for principal excitation for starting the motor and operating it in any direction. The developed scheme is reliable and robust for operations with low or high initial slew rates and for different loading conditions. The motor does not loose synchronisation or hunt under different operating condition. Measurement results on the prototype showed that magnetic interaction of diagnostic phase with other phases is too significant to be neglected. Without inter-phase magnetic interaction compensation a commutation position jitter of 2.5° electrical was observed at full-load. For higher commutation accuracy and hence performance of the motor compensation is necessary. A maximum commutation position error of 0.5° electrical at aligned position was realized when operating at low and medium loading conditions.