Open access

Extended Simulation of an Embedded Brushless Motor Drive (BLMD) System for Adjustable Speed Control Inclusive of a Novel Impedance Angle Compensation Technique for Improved Torque Control in Electric Vehicle Propulsion Systems

Written By

Richard A. Guinee

Submitted: March 11th, 2011 Published: September 12th, 2011

DOI: 10.5772/29821

Chapter metrics overview

3,363 Chapter Downloads

View Full Metrics

1. Introduction

As already stated for the reasons given in a previous chapter a good continuous time model, of low complexity, of a BLMD system is essential to adequately describe mathematically the PWM inverter switching process with dead time and subsequent binary waveform generation in terms of the switching instant occurrences for accurate computer aided design (CAD) of embedded BLMD model simulation in proposed electric vehicle (EV) propulsion systems. In this chapter a complete software model of the BLMD system as a set of difference equations representing subsystem functionality, the organization of these subsystem activities into flowchart form and the processing details of these modular activities as software function calls in C-language for simulation purposes (Guinee, 2003) is presented.

Furthermore in this the second chapter, concerning BLMD model fidelity for EV applications, BLMD model simulation accuracy for embedded EV CAD is next checked for a range of restraining shaft load torques via numerical simulation and then extensively compared and benchmarked for accuracy against theoretical estimates using known manufacturer’s catalogued specifications and motor drive constants (Guinee, 2003).

Model simulation accuracy is further substantiated and validated through evaluation of the shaft velocity step response rise time when cross checked against (i) experimental test data and (ii) that evaluated from the catalogued performance index relating to the brushless motor dynamic factor (Guinee, 2003). Numerical simulation with outer velocity loop closure is used to demonstrate the accuracy of the completed BLMD reference model, based on established model confidence in torque control mode, in ASD configuration when compared with experimental test data.

In addition to the BLMD model structure presented in the previous chapter for actual drive emulation two innovative measures which relate to increased drive performance are also provided. These novel techniques (Guinee, 2003), which include

  1. inverter dead time cancellation and

  2. motor stator winding impedance angle compensation,

are encapsulated within the BLMD model framework and simulated for validation purposes and prediction of enhanced drive performance in EV systems. An approximate analysis is given to support the approach taken and verify the performance outcome in each case.

In the first of these BLMD performance enhancements a novel compensation method has already been presented in the first chapter to offset the torque reduction effects of inverter delay during BLMD operation. This simple expedient relies on the zener diode clamping of the triangular carrier voltage during the carrier waveform comparison with the modulating current control signal in the comparator modulator to nullify power transistor turnon delay. This approach obviates the need for separate compensation timing circuitry in each phase as required in other schemes. The accuracy of this methodology is supported by current feedback, EM torque generation and shaft velocity trace simulation when compared with similar traces from the BLMD benchmark reference model with the effects of the inverter basedrive trigger delay neglected.

The second proposed innovative improvement, presented in this chapter, relates to the progressive introduction of commutation phase lead with increased shaft speed as BLMD impedance angle compensation which forces the impedance angle to the same value as the internal power factor angle. This effect maintains zero load angle between the stator winding terminal voltage and the back emf. It also results in rated load torque delivery at lower shaft speeds with minimal rise time, overshoot and settling time in the generated torque for a range of torque demand input values. This novel technique greatly enhances the dynamic performance of the embedded BLMD prime mover in EV applications without overstressing mechanical assembly components during periods of rapid acceleration and deceleration. The incorporation of this novel impedance angle compensation technique thus minimizes component wear-out such as gear boxes, transmission shafts and wheel velocity joints and consequently enhances overall EV reliability improvement. BLMD simulation is provided in torque control mode at rated torque load conditions, for the actual drive system represented, with and without impedance angle compensation to gauge model performance accuracy over a range of torque demand step input values.


2. BLMD model structure and program sequence of activities

The BLMD model structure is composed of interconnected subsystems with feedback as shown in Figure 1, of varying complexity according to physical principles. Consequently it can be described by a discrete time configuration of first order digital filter realizations for linear elements cascaded with difference equations representing nonlinear PWM inverter behaviour into a complete software model for simulation purposes as illustrated in Figure 2. The BLMD model program is organized into a sequence of software activities, coded in C-language as function calls, representing the functionality of various subsystem modules shown as the flowchart in Figure 3. All subsystem output (o/p) variable quantities in the cascaded activity chain are assumed to remain constant, once computed irrespective of feedback linkage, throughout the remainder of the time step interval tk based on the simulation sampling rates (1/tk) chosen from considerations given in section 3.1 of the previous chapter. The essential features of the BLMD model program in Figure 3 can be explained by means of the linked modular software configuration encoded as the functional block sequence in Figure 2 along with the appropriate C-language code segments illustrated in Figure 4.

Figure 1.

Transfer Function Block Diagram of a BLMD System (Guinee, 1999)

Figure 2.(a)

Software Functional Block Diagram (Guinee, 2003) of a BLMD System

Figure 2.(b)

Software Functional Block Diagram of a BLMD System

Figure 2.(c)

Software Functional Block Diagram of a BLMD System

Figure 3.(a)

Program Flow Diagram (Guinee, 2003) for BLMD Model Simulation

Figure 3.(b)

Program Flow Diagram for BLMD Model Simulation

2.1. BLMD model simulation

Numerical simulation commences with the declaration of known BLMD system parameters followed by a declaration with initialization of variables and three phase (3) arrays for global usage, over the program linked function call sequence, as outlined in the code blocks shown in Figure 4-1.

Figure 4-1.

Declaration and Initialization (Guinee, 2003)

Figure 5.

Network Structure (Guinee, 1999) of a Typical Brushless Motor Drive System

All first order linear system discretization is accomplished by complex variable substitution of the Euler backward rectangular rule using the Z transform. The alternative filter discretization process using Tustin’s bilinear method (Franklin et al, 1980) or the trapezoidal integration rule (Balabanian, 1969) can also be used but with negligible observable differences at the step size t chosen. Resultant digital filter implementation for simulation purposes is facilitated by transfer of the appropriate filter time constant and gain coefficients using the C-language ‘structure’ mechanism in the function call setup_fo_filt ( ) illustrated in Figure 4-2.

Figure 4-2.

Linear Subsystem Discretization

Before proceeding with model program execution in the kth time step (tk-1 tk) all global variables and arrays are captured in the function call capture_filt_out ( ) for later reinstatement, during accurate resolution of the width modulated pulse edge transition time via the regula-falsi method, with restore_filt_out ( ) in Figure 4-3.

Figure 4-3.

Variable capture and restoration

The instruction code group run_to_pwmsw ( ) processes the sequence of BLMD software activities up to the comparator modulator o/p using the following list of function calls in Figures 4-1and 4-4.

tdemf ( ) filters the i/p torque demand signal torq_dem with o/p ftorq_dem.

mot_commutator ( ) establishes the 3-phase reference psink[j], from the computed shaft rotor displacement km, for 3 phase stator winding voltage commutation with modulated amplitude.

tor_sink[j] based on the filtered torque demand ftorq_dem.

idemf ( ) filters the i/p torque related current command signal tor_sink[j] with o/p idemk[j].

cur_cont ( ) The lag compensator ‘optimizes’ the current error as the difference between the current command idemk[j] and the filtered stator winding current feedback fifbk[j] in each phase of the 3 current control loop. The o/p vmpwmk[j] from each of the high gain controllers is amplitude limited to the saturation voltage levels Vz (~10v) by zener diodes.

pwm_mod ( ) produces a width modulated o/p pulse sequence pwmtrk[j] for each phase in accordance with the amplitude comparison of the modulating control signal vmpwmk[j] o/p and the triangular dither signal osc. The modulator has a gain Kmod with complementary outputs, for basedrive operation, that are hard limited to Vz (~10v) by zener diodes.

Figure 4-4.

Call Sequence to PWM O/P

A test is used to interrogate the o/p status of the simulated comparator modulator by monitoring any observational sign change in the o/p polarity (VZ), which is indicative of a modulated pulse edge transition, after execution of the software code module pwm_mod ( ) as shown in Figure 4-5.

Figure 4-5.

Simulation of PWM

The o/p status of the comparator modulator is examined by comparing the trapped value cpwmtrk[j] at the beginning of the time step tk-1 with the new o/p pwmtrk[j] at tk for each phase j and signalling any change via the pwm_test_flag in the function call test_pwm_xover ( ) detailed in Figure 4-6. If a crossover event occurs during simulation then the transition interval tX = (tX-tk-1), denoted by min-time, is determined by the regula falsi method in (LXVII) in the previous chapter.

Figure 4-6.

Search for PWM X-over

A check is made to see if this value occurs within the imposed tolerance limit (tol*delt) at the end of the time step interval tk, denoted by delt, in which it is discarded in the affirmative without test flag registration. If multiple crossover events occur within the simulation interval, corresponding to different phases, then all transition times with the appropriate phase tag number are logged in the respective sw_time[j] and test_flag[j] arrays along with the signaled transition count via the PWM test flag. A check is also performed for identical multiple switch transition times without an increase in test flag count. The test routine is completed by arranging the multiple switch times, with corresponding phase listing, in increasing order of magnitude for subsequent detailed PWM simulation in the function call inter_pwm_simulation ( ). Accurate internal simulation of a modulated pulse transition, indigenous to the time step, commences with restoration of the captured global variables preceding the time step and temporary storage of the original step size (zeit) and time delay (t_del) settings, relevant to the dither ( ) signal source, for later retrieval. The new time step (delt) is initially set to the smallest switching interval t1X (sw_time[1]) for discretization of all first order linear subsystems using the call function setup_fo_filt ( ) as per the C-code module in Figure 4-7.

Figure 4-7.

PWM X-Over Simulation

The necessary delay offset td (tdel) is determined by back tracking (tk-t1X) from tk for proper time registration in the execution of the carrier function dither ( ) and rerun of the call sequence run_to_pwmsw ( ) followed by the block function call run_post_pwmsw ( ). The post PWM simulation call list contains the additional BLMD model basedrive switching features as an embedded layer in the nested base_drive ( ) and associated switch event signalling test_drk_xover ( ) program routines. The complete BLMD model program is subsequently exercised for othermultiple switch time intervals ti>1x with updated linear system discretization and adjusted delay offset. Termination of the remainder of the original time step simulation is accomplished by setting the integration interval delt equal to the time step residue (tk-tmaxX) followed by the call sequences run_to_pwmsw( ) and run_post_pwmsw ( ) and exiting to the main program with a reinstatement of original time settings

Numerical BLMD model simulation proceeds to the next program step in the flowchart cycle shown in Figure 3, by processing the call sequence run_post_pwmsw ( ), with the execution of the switch event routine base_drive ( ) associated with the basedrive turn-on/off as a consequence of the PWM process. The relevant global variables and arrays associated with this call sequence run are trapped by the command capture-drk_out ( ) as a precursor to basedrive simulation. The ‘lockout’ circuit routine, illustrated in Figure 4-8, consists of the integrating capacitor action when the PWM comparator o/p vksm[j] exceeds vk-1lj[j] and charge dumping when vksm[j] < vk-1lj[j] as shown in Figure 3 for the basedrive BDJ with a similar microprogram description for complementary basedrive BDJ¯ operation. The exponential trigger voltage growth on the timing capacitor, due to the inherent RC circuit delay in (LIV) in the previous chapter, along with the basedrive voltage threshold Vth (0.0) setting determines the inverter turn-on time. The charge dump action by the shunt diode across the delay timing resistor is virtually instantaneous when the switched comparator PWM output vksm[j]=Kmod (vkc[j]-vktri) is hard limited to -vz.

Figure 4-8.

Basedrive simulation

This effect results in swift basedrive turn-off with zero delay when referenced to the trailing edge of the PWM o/p. However the capacitor discharge can be gradual, when the PWM o/p is soft switched (vz > vksm[j] > -vz), due to the limited magnitude of the product combination of modulator gain Kosc (~68) and error response vkc[j] of the current loop controller which is implicitly dependent on the filtered current feedback response ikf[j] for fixed current demand ikd[j]. The gradual reduction in capacitor voltage protracts the basedrive switch-off time, when referenced to the initial point of the logic “1-to-0” transition, associated with the PWM trailing edge. This delay has to be accounted for in an accurate inverter software model description with a search of the basedrive turn-off in addition to the turn-on times associated with exponential voltage growth.

The BLMD program test function test_drk_xover (&drk_test_flag), which is shown in Figure 4-10and is very similar to test_pwm_xover ( ) in code content, checks for basedrive on/off firing signal occurrence within a simulation time step interval. This search is complemented with the evaluation of associated multiple phase activation times tix for both normal BDJ and complementary BDJ¯ inverter drive modes of operation. These inverter trigger instants tix are determined by piecewise linear approximation using (LXXVI) in the previous chapter, ranked in increasing order of magnitude and phase tagged via the global storage arrays drk_sw_time[j] and drk_phase_flag[j] for subsequent use in detailed basedrive simulation. Accurate simulation of the basedrive trigger timing signals for subsequent inverter operation is achieved using the software routine call inter_base_drk_loop_sim (&drk_test_flag) which is shown in Figure 4-11and has similar execution features to inter_pwm_simulation ( ).

The function call begins with the reinstatement of the global arrays at the beginning (tk-1) of the time step using restore_drk_out ( ), illustrated in Figure 4-9, and temporary storage (zeit) of the original step size t. The routine proceeds with linear system discretization appropriate to and with execution of the base_drive ( ) function and the subsequent call sequence run_post_drksw ( ), listed in Figure 4-12, for progressive substitution of multiple differential switch times as the temporary variable delt.

This simulation call is completed with restoration of the original time step size followed by first order system discretization with a return to the main BLMD program to begin the new time step tk tk+1. The function call group run_post_drksw ( ), summoned during main program execution in the flowchart of Figure 3, processes the following sequence of modular software activities illustrated in Figures 4-12and 4-13 pertaining to BLMD system electrodynamic operation with inverter interaction.

pwm_inv ( ) generates the 3 inverter output HT binary voltage ph_htk[j] vkg[j] in response to the PWM basedrive gating signals vbj & v¯bj shown in Figure 1. The magnitude of the simulated complementary trigger signals vljk & v¯ljk in relation to the basedrive BDJ threshold voltage Vth establish the conduction states SJ(k) for k{0,1,2} as per (LV) in the previous chapter, by means of the tristate switching indicator VO, of the complementary power transistor pair TJ+ and TJ- in each leg J of the 3 inverter shown in Figure 15 in the previous chapter. The tristate flag condition in conjunction with the sustained stator winding current flow ph_curk[j] iks[j] through the free wheeling shunt diodes establish the inverter o/p binary voltage as 0 or Vdc. The neutral star point voltage Vng (vsg) of the stator winding is determined from (LVIII) in the previous chapter for subsequent evaluation of the phase voltages ph_voltk[j] vks[j] via (LIX) in the previous chapter.

Figure 4-9.

Restore basedrive variables

Figure 4-10.

Search for Basedrive X-Over

Figure 4-11.

BDJ X-over Simulation

Figure 4-12.

Post Basedrive Operation

Figure 4-13.

Post Basedrive Call Sequence For Inverter Fed Motor Operation

If one or more phase currents are zero during the condition VO = 0 a test_flag tf is incremented by unity for each null occurrence and the relevant phases are tagged using the test_cur[j] array for later identification in the computation of the relevant motor winding phase voltages. A test flag count of 2 or 3 indicates that the phase voltages are identical to the back EMF voltages back_emfk[j] vke[j] from the previous simulation step using expressions (XXIII) and (LVII) in the previous chapter. If the test flag (u) value is unity the associated phase current ph_curk[test_flag] is zero and the following relations result

vjg=vjs+vsg=rsijs+Lsdijsdt+vej+vsg; jtfuvus=veu;    ius=0 vsg=12[juvjg+vus]; juijs=0 & jvej=0E1

which enable the phase voltages to be calculated from the 3 inverter o/p.

winding ( )determines the stator winding current ph_curk [j] from a knowledge of the phase voltages and motor parameters {rs, Ls} encoded in the discrete filter representation of the winding electrical behaviour.

convert_torqunit ( )computes the developed electromagnetic torque, manifested in the winding current flow, via the 3 commutation vector psink[j] and motor torque constant Kt for dynamic operation.

mot_shaft_vel ( )evaluates the rotor shaft velocity mot_shaft_vel km from the net torque tot_torq ke available, with the effects of load torque retardation torq_load kl considered, using a discrete filter representation of the rotor dynamics as per (IL) in the previous chapter with parameters {Jm, Jl, Bm}. The back emf can be determined via the motor voltage constant Ke, along with the mechanical (mech_power) and electrical (elec_power) power delivery, once the shaft velocity is known.

mot_shaft_pos ( )evaluates the motor shaft position mot_shaft_pos from the rotor velocity.


3. BLMD model simulation with restraining shaft load torque

The effect of a fixed applied shaft load l on BLMD model behaviour can be monitored via its simulation characteristics, in torque control mode with and without impedance angle compensation considered, for a range of torque demand step input stimuli capable of matching the posed restraining torque. A suitable choice for the target load magnitude is based on the manufacturers continuous rated stall torque of 5Nm for the particular motor type specified in Table 1 of the previous chapter. The set of motor shaft velocity step response characteristics {ωr| 4vΓd9v , ΔΓd=1v} for the indicated torque demand d range is displayed in Figures 6 and 7 without impedance angle compensation.

The response time Tres required for the motor drive to reach the maximum shaft velocity of ωrmax=419 rads.sec-1 in each case, corresponding to the rated output of 4000 rpm in Table 1 of the previous chapter, improves with increased motor shaft acceleration via the “dynamic factor” [(ΓeΓl)/Jm]as a consequence of its dependency on torque demand input. The corresponding generated torque step response family of characteristics {Γe| 4vΓd9v & ΔΓd=1v} for the specified variation in torque demand inputs are shown in Figures 8 and 9.

Figure 6.

Shaft Velocity Step Response

Figure 7.

Shaft Velocity Step Response

Figure 8.

Generated Torque Response

Figure 9.

Generated Torque Response

All the torque response characteristics, with the exception of that at d = 4v, exhibit overshoot before settling to the required value of ~5.3Nm to overhaul the fixed restraining load torque (5Nm) and frictional effects. The degree of overshoot increases in proportion to the torque demand i/p, as exhibited in Figure 10 for the average peak EM torque ep responsible for overshoot ep, accompanied by a corresponding reduction in settling time as shown in Figure 11.

Figure 10.

Mutual Torque Characteristic

Figure 11.

Torque Settling Time

3.1. Theoretical consideration of motor accelerative dynamical performance

The reduction in settling time is paralleled by the shaft velocity response time improvement in reaching rated motor speed. It is evident from inspection of the velocity and torque simulation traces that a direct correlation exists between the EM torque settling time and motor shaft velocity response time as indicated in Table 1.

Torque Load l =5Nm“Inertial” Time Constant
(m =Jm/ Bm =0.318
Tran. Gain (Fig.10)
K( =1.28
Av. Peak
EM Torq ep
ep -l
Torq. Settling
Tsetl (sec)
Figs. 8/9
Shaft Velocity
Rise Time
Tres (sec)
Figs. 6/7
Rise Time
Tr (sec)
Eqn. (IV)
Rise Time
(sec) via
Eqn (VI)

Table 1.

Correlation of EM Torque Settling Time with Shaft Velocity Response Time

The shaft velocity step response rise time, as defined in Figure 6, can be obtained directly from the solution of the transfer function (XCIX) from the previous chapter in the time domain with a step input approximation for the average peak torque overshoot ΔΓep=(ΓepΓl) in Figure 8 as


with time constant


The step response time, for the shaft velocity under load conditions to reach maximum speedωrmax, can be determined from (Eq. 2) for different torque demand i/p and corresponding peak torque values as per the above Table 1 with


The estimated rise times are in excellent agreement with the approximate settling and response times obtained from the BLMD model simulation traces. An alternative crude estimate of the response time can be obtained from the motor “dynamic factor”


for average peak torque endurance as the acceleration time


from standstill to maximum speed assuming a shaft velocity linear transient response which is valid for torque demand values in excess of 5 volts.

Figure 12.

Motor Winding Voltages

Figure 13.

Motor Winding Voltages

These response estimates, given in above Table 1, are in good agreement with those already obtained except for that at d = 5v where the rise time is longer with exponential speed ramp-up.

3.2. Torque demand BLMD model response - internal node simulation

The simulated back-EMF along with the stator impedance voltage drop are illustrated in Figures 12and 13 for two relatively close values of torque demand i/p. In the former case the torque demand i/p of 4volts results in sufficient motor torque to meet the imposed shaft load constraint (5Nm) without reaching rated speed and saturation (10v) of the current compensator o/p trace shown in Figure 14. The corresponding reaction EMF exceeds the winding impedance voltage VZ and is almost in phase with the stator current, which is proportional to VZ, at the particular low motor speed reached. The torque demand i/p of 5v in the latter case results in the onset of a clipped current controller o/p in Figure 15 due to saturation (10) at rated motor speed rmax.

Figure 14.

Current Compensator o/p

Figure 15.

Current Compensator o/p

The back-EMF generated at this speed greatly exceeds the winding impedance voltage, as in the former case, and leads the stator current necessary to surmount the torque load by the internal power factor (PF) angle (~27°) with a correspondingly low power factor (~0.7).

The stator winding currents corresponding to the inputs Γd{5v,9v} are displayed in Figures 16 and 17 respectively which indicate the marked presence of peak clipping in the latter case with loss of spectral purity due to heavy saturation of the current controller o/p for d >5v.

The simulated motive power characteristic with the steady state threshold value of ~2.3kW necessary to sustain shaft motion, for d =5v with restraining load torque and friction losses is shown in Figure 18 at base speed rmax 420 rad.sec-1.

Figure 16.

Stator Winding Current

Figure 17.

Stator Winding Current

This can be rationalized from the power budget required to sustain the load torque at rated speed via (LXXXVIII) in the previous chapter as


The excess coupling field power required to surmount mechanical shaft friction losses is shown simulated in Figure 19 with a steady state estimate of ~200 watts.

Figure 18.

Mechanical Power Delivery

Figure 19.

Dynamic Friction Loss

Stator Winding Phasor RMS Magnitude Estimation as per Figure 44 in previous chapter via BLMD Model Simulation
Torq_Dem d
Step i/p
Shaft_Vel rmax
Elec_Power Pe volts (XLVII) – Prev. ChapBack_EMF Vej
Imped_Vol VZ volts
(XC) –
Previous Chap
Derived Phase Quantities as per Figure 42 in previous chapter
Torq_Dem d
Int. PF Ang I
(XCII) – Prev. Chap.
I Estimate
Figure 13
Prev. Chap
Imp_Ang Z

(LXXXIV) – Prev. Chap.
Load Ang
(XCV) –
Prev. Chap
PF Ang

I + T

Table 2.

Phase Angle Evaluation for BLMD Steady State Operation with l = 5Nm

The effect of shaft load on the BLMD model simulation characteristics for d >5v is summarized in above Table 2 for steady state conditions with the aid of the general phasor diagram in Figure 42 of the previous chapter.

Figure 20.

Motor RMS Phasor Voltages

Figure 21.

Stator Winding Phase Angles

It is evident from the table that the back EMF has reached its peak rms value with the onset of maximum shaft velocity, for all values of d >5V, with


Furthermore the impedance voltage drop Vz in (XC) of the previous chapter is limited to a very small increase with torque demand current Idj listed in Table 2 and is shown almost stabilized to a constant value in Figure 20. This voltage clamping effect, due to current compensator o/p saturation in response to tracking current feedback, is controlled to achieve the desired rms level of clipped current flow in the stator winding as shown in Figure 17 to satisfy torque load requirements. The rms winding current flow necessary at unity internal power factor to meet steady state toque load and friction demands at ~5.4Nm in Figures 8 and 9 can be determined from (XLV) in the previous chapter as

Ijs=(23)(ΓeKe)=(23)(5.420.315)=8.11 AmpsE9

This is almost identical to the rms values obtained from BLMD model simulations in Table 2, which are consistent with increased torque current demand, when internal power factor self adjustments are accounted for as in

Ijs=IjscosφI8.1 AmpsE10

The internal power factor angles, listed in Table 2 and displayed in Figure 21, are deduced for d >5v from the mechanical power transfer by substituting the rms quantities obtained from back EMF and winding current simulations in expression (XCII) of the previous chapter. These angles, which increase with torque demand i/p, can be alternatively calculated from the simulated winding current response using (X) with knowledge ofIjs. The tabulated angle estimates obtained statistically as the phase lag between the current and back EMF waveforms in Figure 13, for example, are in close agreement with those from (XCII) of the previous chapter. The motor winding impedance angle z, which is fixed at rated machine speed rmax, is determined from (LXXXIV) as ~81.2 in Table 2.

The rms winding voltage Vjs is obtained in its pure spectral form, instead of the PWM version furnished by the current controlled inverter, upon application of (XCIII) to the known rms phasor quantities given in Table 2 for different values of d >5V.

Knowledge of the relevant phasor magnitudes with corresponding phase angles enable the load angle T to be determined from (XCV) of the previous chapter for given shaft load conditions. This is approximately fixed, at ~15 as indicated in Table 2 with about 2 variation, over the torque demand i/p range as shown in Figure 21. The resulting power factor angle listed in Table 2 increases with I, for fixed load angle over the torque demand i/p range as shown, in a way that is commensurate in (X) with motor current requirements towards sustaining shaft load torque with a decreasing power factor as illustrated in Figure 22.

Figure 22.

Power Factor Variation

3.3. BLMD model simulation with novel impedance angle compensation

The effect of motor impedance angle compensation (MIAC), manifested as commutation phase lead angle incorporated into the BLMD model in (XCVIII) of the last chapter as pθr2(j1)π3(pθr+φz)2(j1)π3 on the motor step response velocity and torque characteristics is illustrated in Figures 23 and 24 for the torque command i/p range 4vΓd9at step size intervals of ΔΓd=1 volt.

Figure 23.

Shaft Velocity with MIAC

Figure 24.

Torque Response with MIAC

The variation of peak torque overshoot with i/p demand, displayed as the mutual characteristic in Figure 25, is linear with a transfer gain that is lower than that without MIAC in Figure 10. Consequently the maximum peak torque delivery, for a given i/p demand to sustain shaft load requirements, is lower in amplitude and of shorter overshoot pulse duration as seen in Figure 24 when compared with that without MIAC in Figures 8 and 9. Furthermore the persistence of torque overshoot is lower with a much reduced settling time (<0.015 sec), in reaching steady state sustained load conditions in all cases albeit at lower acceleration and much smaller drive speeds, thereby exerting less mechanical stress on the drive shaft components and minimizing shaft flexure in EV propulsion applications.

Figure 25.

Mutual Torque with MIAC

Figure 26.

Torque - Velocity Transfer Curve

Figure 27.

Impedance Angle Compensation

Figure 28.

Phasor Voltages with MIAC

The shaft velocity characteristics also indicate a much lower steady state motor run speed, with MIAC deployed, which never reaches velocity saturation ωrmax=419 rads.sec-1over the permissible torque demand i/p range of 10VΓd10V. The relevant command torque to shaft velocity transfer characteristic is approximately linear as shown in Figure 26 which indicates a maximum motor operating speed of ωrmax120 rad.sec-1 with ωrmax<30%ωrmax under rated load conditions (5Nm) for a maximum demand i/p of dmax =10V. This speed reduction is singly due to the maintenance of an almost zero load angle T shown in Figure 27, between the motor terminal Vjs and back EMF Vej rms voltage phasors in Figure 45 of the previous chapter, by commutation phase angle advance for optimal torque production as indicated from the BLMD simulation results in Table 3.

This phase compensation technique results in back EMF and winding impedance voltage Vz phasors that appear approximately equal in magnitude over the allowable torque demand input range as shown in Figure 28. Furthermore the internal power factor angle I is forced to adopt approximately the same value as the machine impedance angle z as indicated in Table 3, by the phase advance measure z in the current commutation circuit, with a consequent collinear alignment of phasors Vej and Vz in Figure 45. This collinear arrangement can only be sustained at a particular machine speed that is dependent on the torque demand i/p which determines the subsequent winding current flow and thus the necessary impedance angle for alignment. This reasoning can be deduced as follows by noting that for a given torque load l the rms winding current flow is linear with torque demand i/p as per Table 3 and Figure 29.

Stator Winding Phasor RMS Magnitude Estimation as per Figure 45 of the Previous Chapter via BLMD Model Simulation
Step i/p
Elec_Power Pe (XLVII) in Prev. Chap.Back_EMF
Imped_Vol VZ volts – (XC) in Prev. Chap.Ph_Cur
Derived Phase Quantities as per Figure 42 of the Previous Chapter
Int. PF Ang I
(XCII) in
Prev. Chap.
Ph_Vol Vjs
(XCIII) in
Prev. Chap.
Imp_Ang Z
(LXXXIV) in Prev. Chap.
Load Ang T
(XCV) in
Prev. Chap.

I + T

Table 3.

Phase Angle Evaluation at l = 5Nm with Motor Impedance Angle Compensation

Figure 29.

Motor Current Variation

3.3.1. MIAC substantiation via theoretical analysis and validation

The internal power factor angle I can be determined theoretically for fixed winding current flow corresponding to a given torque demand i/p using (Eq. 9) and (Eq. 10), assuming negligible dynamic friction at the shaft speeds concerned withΓl>>Γf, as


The motor terminal voltage i/p Vjs from previous chapter can be optimized with respect to the motor impedance angle z, which is unknown, in terms of the rms phasor quantities Vej, Vz and the fixed internal power angle I from (Eq. 11) by letting


This procedure results in the impedance angle z in terms of the known angle I as

max Vjs=Vej2+Vz2+2VejVz=(Vej+Vz)E14

which is unknown as both Vej and Vz depend on the motor shaft velocity r. The shaft velocity can now be determined from (LXXXIV) from previous chapter using expression (Eq. 13) as

Theoretical Estimation of RMS Phasor Magnitudes
Torq_Dem d
Step i/p
Table 3
Eqn. (XI)
Eqn (XV)
Eqn (VIII)
Imp_Vol VZ
Eqn. (XC) in Prev. Chap.
Eqn. (XIV)
4v7.76 A15.3717.71 rad/s3.94v6.04v9.98v
5v9.70 A39.5253.17 rad/s11.84v9.43v21.27v
6v11.71 A50.2877.55 rad/s17.27v13.74v31.01v
7v13.66 A56.7998.43 rad/s21.92v18.71v40.63v
8v15.70 A61.54118.87 rad/s26.48v24.71v51.19v
9v17.74 A65.05138.49 rad/s30.85v31.54v62.39v

Table 1V.

Motor Impedance Angle Compensation

This value of r can be used to theoretically generate the rms voltage phasors Vej, Vz and Vjs using expressions (VIII), (XC) and (XCIII) in the previous chapter respectively from a knowledge of the motor winding phasor current Ijs as per Table 1V over the i/p torque demand range rangeΓd4V. The quantities obtained from BLMD simulations in Table 3 compare reasonably well with those derived in Table 1V from theoretical considerations which reinforces model validation and confidence. The optimized internal power factor angle, which is almost identical to that in Table 3, results in a zero load angle T from (XCV) in the previous chapter due to the phasor collinearity and thus improved torque control via the PWM voltage supplied by the current controlled inverter. The power factor angle , internal power factor angle I and machine impedance angle z variations with torque demand i/p, which are displayed in Figure 27 using estimates extracted from BLMD model simulation in Table 3 forΓd4V, are almost congruent with a mismatched difference manifested as the negligible load angle (T 0).

Figure 30.

Motor Power Factor

Figure 31.

Power Factor Comparison

The internal power factor cosφI shows a gradual deterioration with increasing torque demand i/p in Figure 30 as expected with the accompanying internal power factor angle I adjustment, from the mirrored motor current increase in Figure 29, constrained by a fixed shaft load in (Eq. 10). Impedance angle compensation results in a improved motor power factor as shown in Figure 31 than that without MIAC over the torque demand i/p range 4VΓd6V necessary to meet load requirements l.

Motor speed reduction is also mirrored with a decrease of the shaft velocity step response rise time as shown Figure 32 with maximum values falling below the velocity time response floor of the uncompensated BLMD model. This results in constant motor speed operation, though small by comparison to that without phase angle advance, well below the rated value in torque control mode with smooth torque delivery to satisfy load requirements.

Figure 32.

Shaft Velocity Rise Times

The simulated motor winding impedance and back EMF voltages for mid (5V) and full range (9V) torque demand input values, which result in developed torque capable of surmounting the fixed restraining shaft load (5Nm), are displayed in Figures 33 and 34. Both sets of characteristics exhibit comparable amplitudes appropriate to the level of torque demand i/p, with speed related motor current phase lags I as per Table 3, that are much lower than those without MIAC in Figure 13. The impedance and back EMF voltages are interrelated which can be shown as follows by starting with expression (XC) for Vz and using (Eq. 9) and (Eq.10) giving


This can be rewritten by using (LXXXIV) in the previous chapter with optimized value of I in (Eq. 13) as


Figure 33.

Motor Winding Voltages

Figure 34.

Motor Winding Voltages

The shaft velocity r, linking the back EMF, can be replaced in (Eq. 18) by using (Eq. 13) yielding






from substitution of parameters in Table 1 of the previous chapter and l = 5Nm. The impedance voltage in (Eq. 17) is expressed as a quadratic equation in terms of the back EMF with points of equality corresponding to

Vej{6.915v, 29.79v|Vz=Vej}E21

which are visible in Figure 28 as points of intersection of the two voltage traces.

Figure 35.

Stator Winding Current Flow

Figure 36.

Motor Current Feedback

These crossover points divide the rms Vz amplitude variation along with Vej in Figure 28 into three distinct regions, over the usable torque demand i/p range as per Table 1V, with

Vz>Vej for Vej<6.9vVz<Vej for  6.9v<Vej<29.8vVz>Vej for Vej>29.8vE22

Figure 37.

Current Controller o/p

Figure 38.

Stator Winding Current Flow

These regions can also be inferred from the voltage amplitude traces in Figure 33 and 34 where Vej exceeds Vz in the former case with Γd=5v and vice versa for Γd=9v in the latter diagram.

Figure 39.

Motor Current Feedback

Figure 40.

Current Controller o/p

The simulated stator winding current along with current feedback response and current controller o/p are displayed in Figures 35, 36 and 37 respectively for Γd=5v without saturation related distortion in the current compensator o/p. The BLMD model simulation current characteristics corresponding Γd=9v are also shown in Figures 38, 39 and 40 without saturation effects.


4. BLMD reference model simulation in velocity control mode

In this section the BLMD reference model performance as an ASD emulator is examined and compared with experimental step response data for shaft inertial load conditions with Jl ~ 3Jm. Adjustable speed drive operation, with embedded inner PWM current control, is effected by closing the outer velocity loop via a two term PI term controller Gv as shown in Figures 1 and 5. The analog velocity controller shown in Figure 41, which has an inbuilt velocity offset adjustment and speed gain control adjustment Ks for the chosen BLMD system modelled here (Moog GmbH, 1989) has a transfer function


with proportional and integral compensation gain settings Kp and KI respectively. The inclusion of this outer loop velocity compensator, in addition to the inner torque control current loop, results in a complete holistic BLMD reference model that can now be used for ASD simulation and performance evaluation in embedded applications. Proportional and integral control is easily incorporated in C-language routine during BLMD simulation of velocity closed loop operation as a digital filter code module via (LXV) of the previous chapter using the backward Euler method in (LXIV) of the previous chapter. The resulting ASD model was exercised at low and high shaft velocities corresponding to 36.4% and 73.6% of rated motor speed no in Table 1 of the previous chapter and compared with experimental test data at critical internal nodes in Figure 1 for model validation and simulation accuracy.

Figure 41.

BLMD Velocity Controller

The current controller GI step response simulation traces for a velocity step command input V of 2volts, corresponding to 36% of rated motor speed (~4000rpm), are exhibited in Figures 42 to 44 for linear pulsewidth modulator operation.

Figure 42.

ASD Reference Model Current Demand Comparison with Experimental Test Data

Figure 43.

ASD Model Reference Current Feedback Comparison with Experimental Test Data

Figure 44.

ASD Model Current Controller o/p Comparison with Experimental Test Data

The accuracy of these simulation traces, which capture the essence of the velocity transient step response Vr overshoot in Figure 45, is characterized by a large waveform correlation coefficient of fit in Table 5 which provides a good indication of the model fidelity when matched with experimental data.

Figure 45.

ASD Model Reference Shaft Velocity Comparison with Experimental Test Data

Target Data Length ND =3000Data Sampling Rate: 12.5kHzBLMD Simulation
Time Step: 1s
Waveform Correlation Analysis for Total Inertial Shaft Load
JTot = Jl + Jm. =12.3kg.cm2
ASD WaveformVelocity Command i/p
V( = 2V
Velocity Command i/p
V( = 4V
Current Demand Idj96.8%92.85%
Current Feedback (FC) Ifj97.26%93.27%
Current Compensator output Vcj59.81%45.46%
Motor Shaft Velocity output V(r99.8%99.68%

Table 5.

ASD Model Trace Simulation Comparison with Experimental Test Data

The simulated current demand and feedback waveforms, which have high matching coefficients with test data, exhibit an amplitude modulated step response with velocity transient overshoot and ringing, before eventually setting to negligible constant amplitude traces with fixed frequency commensurate with reached shaft speed r demanded (Vr ~2V) in Figure 45.

The compensated velocity error output for 2Volts operation Vr in the BLMD network structure in Figure 5 is equivalent to the filtered torque demand df, as the velocity control effort Ve shown in Figure 46, applied to the inner closed loop for motor current control and BLMD output torque regulation. This optimized velocity error Ve in Figure 46 is a short duration pulse for reasons of fast BLMD shaft velocity risetime Tres and short setting time Tsetl as required in high performance ASD industrial applications.

Figure 46.

ASD Reference Model Compensated Velocity Error Output

The presence of overshoot in the BLMD velocity step response in Figure 45 is due to the non-optimal tuning of the velocity controller PI parameters required to ensure stiff dynamical operation for the total drive shaft inertial load JTot = Jm+Jl in question.

Figure 47.

ASD Shaft Velocity Step Response Variation with Rotor Inertial Load JTot

Figure 48.

Variation of ASD Velocity Control Effort with Rotor Inertial Load JTot

Figure 49.

Variation of ASD Settling Time with Inertial Loading

Examination of the ASD velocity step response trace simulations over a range of shaft inertial load multiples of the rotor value Jm in Figure 47 reveal that the PI parameters have been optimized only at zero load with JTot = Jm for good drive dynamic transient performance with little overshoot. The effect of increased shaft inertia on the velocity control effort Ve in Figure 48, for a velocity command input of 2 volts, is a greater sustained oscillation accompanied by longer settling times Tsetl manifested in the simulated ASD velocity step response as shown in Figure 49. This behaviour is mirrored by an increased overshoot, as defined in Figure 47, in the BLMD shaft velocity step response with shaft load inertia as shown in Figure 50.

The effect of increased load inertia on ASD dynamic performance also translates into slower rise times Tres as shown in Figure 51 for a non optimally tuned velocity controller.

Further ASD step response simulation and comparison with experimental measurements in Figures 52 to 55, for a 4 volts velocity command input which corresponds to 74% of rated motor speed n0 with resulting saturated pulsewidth modulator operation in Figure 54 for the load inertia considered (~12.3kg.cm2), reveal good BLMD model accuracy.

Figure 50.

Variation of ASD Shaft Velocity Overshoot with Inertial Loading

Figure 51.

Variation of ASD Velocity Response Rise Time with Load Inertia

Figure 52.

BLMD Reference Model Current Demand Comparison with Experimental Test Data

Figure 53.

BLMD Model Current Feedback Comparison with Experimental Test Data

Figure 54.

BLMD Model Current Controller Output Comparison with Experimental Test Data

Figure 55.

BLMD Model Shaft Velocity Comparison with Experimental Test Data

The quality of ASD simulation trace match with test data is indicated by the high value of the waveform correlation coefficients given in Table 5.

Figure 56.

BLMD Reference Model Compensated Velocity Error Output

The velocity loop derived torque command input stimulus Ve in Figure 56 has a pulse duration that is much shorter than the time constant (ml ~ Jtot/Bm) of the load dynamics, eventhough the pulse amplitude is of sufficient strength to force the shaft velocity to the value demanded (V~4volts). The endurance * of the velocity control effort in Figure 56, associated with pronounced PWM saturation in Figure 54, is a measure of the maximum sustained EM torque necessary to accelerate the total BLMD inertial load masses to the appropriate shaft velocity demanded by the ASD command setting V. This velocity error pulse has amplitude that is clipped to a maximum saturation limit of 10 volts at the three phase current generator input, which limits the size of the torque loop input stimulus, in the derivation of the BLMD current command signals.

Examination of the family of characteristics pertaining to velocity control effort over a range of motor shaft inertial loads in Figure 57 indicate peak saturation over long pulse intervals * proportional to the inertial masses as in Figure 58 to be accelerated to the required speed Vr. This velocity error saturation is absent in the characteristics displayed in Figure 48 for 2volt ASD operation and results in linear PWM operation with a BLMD acceleration torque delivery commensurate with the velocity effort.

Figure 57.

Variation of Velocity Control Effort with Motor Shaft Inertial Load JTot

Figure 58.

Variation of Saturated Velocity Error Pulse Duration with Load Inertia

Figure 59.

ASD Velocity Step Response Variation with Inertial Shaft Load

The variation of the simulated ASD velocity step response overshoot and settling time with shaft inertial load for a 4volt velocity command corresponding to 75% of rated shaft speed in Figures 50 and 49 respectively appear to be lower than those for 2 volt ASD operation at 36% rated speed. This is due to the saturation effect of the velocity error in ASD torque generation, which limits the peak amplitude swing of the oscillatory step response on velocity overshoot in Figure 59. However the rise time is longer in this instance as indicated through ASD simulation in Figure 51 for higher velocity command input (~4V) and increases almost linearly with shaft inertial load. The bigger the load inertia being handled during normal ASD operation the greater the corrective action required in the control effort to limit shaft velocity overshoot with inertial deceleration and settling time with reached velocity experienced with a non optimal speed controller during large step changes in velocity command input.

Unless the inertial load is known apriori in this scenario the variable PI parameters cannot be optimally selected for fast risetime and minimum overshoot except through offline manual tuning approximation procedures during the installation and commissioning phase (Moog GmbH, 1988) of the embedded drive in industrial applications. Inertial load parameter extraction in new ASD industrial applications, using the BLMD reference model with step response testing in an offline identification strategy for autotuning purposes, is difficult without knowledge of the initial PI settings of the velocity controller for zero load conditions before drive hookup to the embedded application. In this instance the procedure of accurate inertia parameter extraction using the ASD model in any identification strategy is complicated by the control action of outer velocity loop closure on the wideband inner torque loop when the variable PI settings are unknown. The ASD parameter identification problem is this case has to incorporate evaluation of the existing PI term settings in addition to the inertial load parameter in the new application in order to optimally design the embedded drive velocity controller. However if the drive is configured in torque control mode, thereby eliminating the velocity controller during step response testing in the commissioning phase, inertial load parameters are more amenable to extraction using low torque command input stimuli (<1V) for linear BLMD behaviour with small perturbation of the drive dynamics. The identification problem in this case has to focus only on the extraction of inertial load parameter JTot and also on the friction coefficient Bm if required.


5. Conclusions

Further BLMD simulation for various load torque settings, based on model confidence, yield results that compare favourably with those obtained from theoretical considerations using catalogued data for the actual drive concerned. The introduction of stator impedance angle compensation at high shaft speed results in improved motor power factor and better BLMD steady state performance. This is verified theoretically and illustrated through model simulation. Detailed BLMD simulation, configuration as an ASD with velocity feedback, is provided at internal observation nodes and checked against measured data at low and high command speed settings for confirmation of model accuracy and validation purposes.



The author wishes to acknowledge

Eolas – The Irish Science and Technology Agency – for research funding.

Moog Ireland Ltd for brushless motor drive equipment for research purposes.


  1. 1. BalabanianN.BickartT. A.1969Electrical Network TheoryJ.Wiley & Sons
  2. 2. FranklinG. F.PowellJ.J.D.,1980Digital Control Of Dynamic Systems, Addison Wesley
  3. 3. GuineeR. A.2003Modelling, Simulation, and Parameter Identification of a Permanent Magnet Brushless Motor Drive System, Ph. D. Thesis, NUI- University College Cork.
  4. 4. GuineeR. A.LydenC.1999Accurate Modelling And Simulation Of A DC Brushless Motor Drive System For High Performance Industrial ApplicationsIEEE ISCAS’99IEEE International Symposium on Circuits and Systems, May/June 1999, Orlando, Florida
  5. 5. Moog GmbH;1988Moog Brushless Technology:Brushless Servodrives User Manual, D310.01.03 En/De/It 01.88, Moog GmbH, D-7030 Bblingen, Germany.
  6. 6. Moog GmbH;1989Moog Brushless Technology User Manual:D31X-XXX Motors,T15801X Controllers,T157-001 Power Supply,, D-7030 Bblingen.

Written By

Richard A. Guinee

Submitted: March 11th, 2011 Published: September 12th, 2011