Novemb ber 66-10, 2 2006 – Pariis, FRANC CE 32nd IEEE Indu ustrial Ele ectronics Conferen nce PF-014893 Speed and Position Estimation for PM Synchronous Motor using SelfS lf-Compensated Self C t dB Back Backk-EMF Observers Ob Marco TURSINI, TURSINI Roberto PETRELLA, PETRELLA, Alessia SCAFATI University of L L’Aquila Aquila Dept. of Electrical and Information Engineering (DEIE) University of Udine Dept. of Electrical, Managmt and Mechanical Eng. (DIEGM) SS16--1 Advanced SS16 Ad d control t l and d observation b ti off AC drives d i Thursday, November 9th, 2006, 8:00 AM PF-014893 Aim of the paper - provide full analytical description of previously-proposed speed and position observers for PM synchronous motors, based on back-EMF estimation - calculate the (steady-state) rotor position estimation errors s - propose a real-time compensation strategy for rotor position estimation error in a transducer-less PMSM drive y results by y means of simulation analysis y and compare p - validate analytical them with experiments PF-014893 Transducer--less drive scheme Transducer ω *r Rvel iq* Rid id* = 0 vα Luenberger/ Slidingg Mode Observer vβ θ̂r * vˆ iα cos θ̂r(1) ω̂ (r1) θ̂r = arccos ⎛⎜ vˆ iβ ⎝ iˆq iβ iˆd ω̂ r Kalman Filter vˆ i2α + vˆ i2β ⎞⎟ ⎠ vα* dq vd* iα vˆ iβ sin θ̂r(1) Riq vq* αβ iα dq αβ sinθ̂r cosθ θ̂r vβ* SV PWM ia αβ iβ ib 3 ic Observer vα* vβ* iα iβ PMSM PF-014893 Permanent Magnet Synchronous Motor βs ωr d symmetricaly -sinusoidal machine - symmetrical iβ q β Hypothesis: - non salient rotor vβ two--phase θr - represented by two N S equivalent statorstator-fixed αβ windings α vα αs iα Dynamical model: i& = [A] i + [B] v i − [B] v i = [iα , iβ ]T v i = [ viα , viβ ]T v = [ vα , vβ ]T [A] = − RLss [I ] [B] = − L1s [I ] PF-014893 Back--EMF and PMSM Extended Model Back The backback-EMF components contain the information on the rotor position: v iα (θr ) = − k e ω r sin θr v iβ (θr ) = k e ω r cos θr In order to arrange backback-EMF observer, backback-EMF components are added to the state through a couple of fictitious dynamic equations: i& = [A]i + [B]v i − [B]v v& i = 0 x = [iα , iβ , viα , viβ ]T Extended state PF-014893 State and disturbance observers & iˆ = [A]iˆ + [B] vˆ i − [B] v + z v&ˆ = [L] z i Luenberger observer (LO) Sliding mode observer (SMO) z = [K1 ] ⋅ (i − iˆ) z = [K 1 ] ⋅ sgn (i − iî ) ) ~ ~ &xˆ = [ A ] xˆ + [B] v + [K ] (i − i ) ~ ~ xˆ& = [ A] xˆ + [ B] v + [K ] sgn g (i − iˆ) [K ] = [ k [I ] k, l l k [I ] ]T Gain matrix Gain coefficients PF-014893 Why and how to develop a compensation law ? Rotor position estimation error (difference between estimated and actual position) dynamics: e& i = [A] e i + [B] e e − k e i e& e = −v& i − l k e i If known, they it can be onon-line compensated ! Solution of the problem is difficult in the timetime-domain. Let us consider the equivalent s s--domain transfer functions: s E i (s ) − e i 0 = [A] E i (s ) + [B] E e (s ) − k E i (s ) s E (s ) − e = −V& (s ) − l k E (s ) e e0 i i Af After some calculations: l l i 1 Ls V& i (s ) E i (s ) = (s − s1 )(s − s2 ) s1,2 = −h ± Δ = −h ± j Δ E e (s ) = − h= 1 2 (k + Rs s + 2h V& i (s ) (s − s1 )(s − s2 ) Ls ); Δ = 1 4 (k + Rs Ls )2 − mk m = − l Ls PF-014893 Back--EMF estimation error Back The asymptotic stability is a sufficient condition for the existence of the sinusoidal steadysteady-state response to sinusoidal excitation: ⎡ k e ω r2 cos (ω r t + φ F )⎤ v e e (t ) = Fv ( jω ) ω =ω ⎢ ⎥ 2 r k ω sin ( ω t + φ ) ⎢⎣ e r r Fv ⎥ ⎦ ⎧⎪ e eα (t ) = Av cos (ω r t + φ Fv ) ⎨ ⎪⎩ e eβ (t ) = Av sin (ω r t + φ Fv ) Fv ( jω ) ω =ω = r φ Fv ω =ω r ( 2h ( h 2 + Δ )) 2 + ω r2 ( Δ − ω r2 − 3h 2 ) 2 [h − (ω r − Δ )(ω r + Δ )] + (2hω r ) 2 2 ⎛ ω r ( Δ − ω r2 − 3h 2 ) ⎞ ⎟ = arctang ⎜ 2 ⎜ 2h ( h + Δ ) ⎟⎠ ⎝ 2 Av = Fv ( jω r ) k e ω r2 ω r Actual rotor speed PF-014893 Calculation of the rotor position estimation error αβ components of the estimated backback-EMF: v̂iα = viα + eeα (t ) = − k e ω r sinω r t + Av cos ( ω r t + φ Fv ) v v̂iβ = viβ + eeβ (t ) = k e ω r cosω r t + Av sin ( ω r t + φ Fv ) Rotor position estimation errors: ⎛ Av cos φFv ˆθ̂ − θ = arctg ⎜ − r r ⎜ k e ω r + Av sin φF v ⎝ θ̂r − θr = arctg (ω r Ls l ) ⎞ ⎟ ⎟ ⎠ Luenberger observer Sliding mode observer For F a given i sett off motor t parameters, t the th (steady(steady ( t d -state) t t ) rotor t position iti estimation error depends on rotor speed, but it is independent on feeding current (i.e. load torque) PF-014893 Simulation results Luenberger g 800 SM O 1600 16000 ∞ ←k Steady--state estimation errors Steady -7.41 -6.22 -5.19 -5.08 1000 rpm -16.97 -13.22 -10.37 -10.08 2000 rpm -32.63 -21.99 -15.52 -14.93 3000 rpm Comments: - LO rotor t position iti estimation ti ti errors tend to SMO ones for high values of gain k Position error ( θ̂ r − θ r ) [d egrees] - for the same value of gain l, SMO has smaller estimation error with respected to LO Position estim P mation error [d degrees] 0 -5 -5.078 -6.22 -10 - estimation error reaches non non-negligible values at high speed -10.079 -14.928 LO -15 SMO LO -20 SMO -25 0 l = −28.28; k = 1600 p is p possible by y - compensation considering the analytical error as a first attempt -13.22 l = −28.28 l = −56.56; k = 1600 -21.99 l = −56.56 500 1000 1500 2000 Rotor speed [RPM] 2500 3000 - actual implementation could lead to different results due to un--modelled effects un PF-014893 Simulation results L u e n b e rg e r O b s e rv e r 1 Transient estimation errors Position estimatio on error [degrees] 0 0 .5 e -3 -1 -2 P o s itio n e s tim a tio n e rro r C o m p e n s a te d p o s itio n e s tim a tio n e rro r -3 Conditions: -4 - offoff-line operation of the observer -5 -6 lo a d in s e r tio n -6 .2 2 -7 -8 0 .0 5 0 .1 0 .1 5 0 .2 0 .2 5 0 .3 l = − 2 8 .22 8 k = 1600 0 .3 5 0 .4 0 .4 5 0 .5 T im e [s ] S lid in g M o d e O b s e rv e r - 1.2 Nm (60% rated) load torque insertion at 0.35s 1 Posiition estimation errror [degrees] 0 -5 .5 e -3 -1 -2 - position estimation error is compensated by means of analytical values P o s iti itio n e s ti tim a ti tio n e rro r C o m p e n s a te d p o s itio n e s tim a tio n e rro r -3 -4 -5 - 5 .0 8 lo a d in s e r tio n -6 l = − 2 8 .2 8 -7 0 0 .0 5 0 .1 0 .1 5 0 .2 0 .2 5 T im e [s ] 0 .3 0 .3 5 - nono-load speed transient from 0 to 1000 RPM 0 .4 0 .4 5 0 .5 PF-014893 Experimental results The drive system Braking test bench IEE--488 controlled IEE t ll d h hysteresis t i b brake k (Magtrol HDHD-710 710--8NA8NA-0040) PMSM under test rated power /current rated speed/torque pole pairs no load back-EMF no-load back EMF @ rated speed stator resistance stator inductance rotor inertia inverter DC voltage 630 W - 2.5 A rms (*) 3000 rpm (*) - 2.0 Nm (*) 4 82 72 Vrms (*) 82.72 1.9 Ω 6 mH 22⋅10-5 kgm2 300 V Control & power electronics 16--bit fixed 16 fixed--point DSP microcontroller IGBT intelligent power module 150 μs control and modulation cycles PF-014893 uncompensated 500 RPM ωr Experimental results SMO operation Conditions: (θˆ r ,mon − θr ) 9° - no no--load - 500 to 2000 RPM theoretical compensation - 500 RPM slow varying ramp increments Comments: - noise is related to residual “chattering” on the backback-EMF estimates empirical p compensation p - theoretical compensation is not the exact one, but provides good results - empirical i i l compensation ti is i obtained by varying the slope of the compensating angle PF-014893 uncompensated 500 RPM ωr Experimental results LO operation Conditions: (θˆ r ,mon − θr ) 9° - no no--load - 500 to 2000 RPM - 500 RPM slow varying ramp increments - same gains as SMO Comments: - position error has different slope empirical p compensation p - noise is lower PF-014893 Experimental results SMO torque/speed analysis Comments: - load torque affects position estimation error (differently from theoretical results)) - the effect of the load torque is quite small (less than 2 degrees in every condition) - overover-compensation is obtained if theoretical laws are adopted (dotted lines) - compensation with theoretical values leads to a maximum error of 5 degrees PF-014893 Conclusions The possibility to compensate the intrinsic rotor position estimation error in a transducer--less control scheme for PM synchronous motors based on backtransducer backemf observers has been analysed analysed:: - it is possible to evaluate a theoretical compensation law for the steady steady-p both with Luenberger g and Sliding g Mode observers state operation, - such laws yield satisfactory compensation also during fast transients - it has been proven that the presence of a Kalman filter in cascade to the back--EMF observer does not introduce additional position error at steady back steady-state, and negligible one during transients if slow ramp ramp--varying speed reference is used un--modelled effects in the actual drive, motor and real real--time system - the un introduce some discrepancies from theory theory:: exact compensation requires a proper adjustment by experimental tests