Online Model Predictive Torque Control for Permanent Magnet Synchronous Motors Gionata Cimini∗ , Daniele Bernardini∗ , Alberto Bemporad∗ and Stephen Levijoki† ∗ ODYS † General Srl Motors Company 2015 IEEE International Conference on Industrial Technology Gionata Cimini, gionata.cimini@odys.it 1 / 20 Outline 1 Introduction and Motivations 2 Model Predictive Control Design 3 Experimental Results 4 Conclusions Gionata Cimini, gionata.cimini@odys.it 2 / 20 Company Overview (www.odys.it) ODYS is a private SME founded in 2011, originally as a university spin-off Core business: consultancy and software for the development of advanced control systems, with special focus on model predictive control (MPC) Main expertise: advanced multivariable control design, efficient real-time optimization algorithms, and tools for their deployment in embedded systems Application domains automotive aerospace energy process control Gionata Cimini, gionata.cimini@odys.it 3 / 20 Background The standard control method for PMSMs is the Field Oriented Control (FOC) (cascade structure, with three linear regulators) →The work deals with the application of Model Predictive Control (MPC), to PMSM torque control. MPC in electrical drives control is, mainly, motivated by two facts: mathematical models of these systems are relatively well known several constraints are needed for safety reasons Gionata Cimini, gionata.cimini@odys.it 4 / 20 Background The standard control method for PMSMs is the Field Oriented Control (FOC) (cascade structure, with three linear regulators) →The work deals with the application of Model Predictive Control (MPC), to PMSM torque control. MPC in electrical drives control is, mainly, motivated by two facts: mathematical models of these systems are relatively well known several constraints are needed for safety reasons The main idea of MPC Obtain the control actions by solving, at each sampling time, a finite-horizon optimal control problem Gionata Cimini, gionata.cimini@odys.it 4 / 20 Model Predictive Control Output Setpoint Past Measured Output Control Input k k + Nu k + Np Linear prediction model Control and Prediction Horizon Hard input and soft output constraints Gionata Cimini, gionata.cimini@odys.it 5 / 20 Model Predictive Control Output Setpoint Past Predicted Output Future Measured Output Predicted Input Control Input Control Horizion Prediction Horizion k k + Nu k + Np Linear prediction model Control and Prediction Horizon Hard input and soft output constraints Gionata Cimini, gionata.cimini@odys.it 5 / 20 Model Predictive Control Output Setpoint Past Future Measured Output Control Input k+1 k + Nu k + Np Linear prediction model Control and Prediction Horizon Hard input and soft output constraints Gionata Cimini, gionata.cimini@odys.it 5 / 20 Existing solutions Explicit MPCa : the optimization problem is pre-solved offline via multiparametric Quadratic Programming (mpQP) ! it is an easy-to-implement PieceWise Affine (PWA) function of the parameters ! fast binary search tree algorithm can be used % it is applicable only to small problems % high memory requirements Gionata Cimini, gionata.cimini@odys.it 6 / 20 Existing solutions Explicit MPCa : the optimization problem is pre-solved offline via multiparametric Quadratic Programming (mpQP) ! it is an easy-to-implement PieceWise Affine (PWA) function of the parameters ! fast binary search tree algorithm can be used % it is applicable only to small problems % high memory requirements Finite Control Setb : exploits the discrete nature of the system by manipulating the inverter switch positions directly ! MPC is solved on line, by enumeration ! very fast with short prediction horizon % computational load scales exponentially with the horizon % high sampling frequency, not decoupled from control frequency % variable frequency ————————————————————a Bolognani, S.; Bolognani, S.; Peretti, L.; Zigliotto, M., ”Design and Implementation of Model Predictive Control for Electrical Motor Drives” b Rodriguez, J. and Kazmierkowski, M.P. and Espinoza, J.R. and Zanchetta, P. and Abu-Rub, H. and Young, H.A and Rojas, ”C.A, State of the Art of Finite Control Set Model Predictive Control in Power Electronics” Gionata Cimini, gionata.cimini@odys.it 6 / 20 MPC with online optimization Embedded QP solver: Model Predictive Control → Quadratic Programming with affine constraints ! MPC is solved online ! Low memory Requirements ! Switching frequency decoupled from sampling frequency ! Fixed switching frequency % High computational burden Main Objective Verify the feasibility of embedded, online MPC Application in low-power DSP, commonly used for motion control Gionata Cimini, gionata.cimini@odys.it 7 / 20 Standard PI Field Oriented Control Inverter PWM PMSM abc abc dq dq id ud θ iq R Kt PI id,ref uq PI ω τ τref PI ωref The aim is replacing the standard PI-based torque controller, with . . . Gionata Cimini, gionata.cimini@odys.it 8 / 20 Proposed MPC Torque Control Inverter PWM PMSM abc abc dq dq id θ iq R ud uq MPC ω id,ref τref PI ωref . . . an MPC torque control, solved with online optimization. Gionata Cimini, gionata.cimini@odys.it 9 / 20 Outline 1 Introduction and Motivations 2 Model Predictive Control Design 3 Experimental Results 4 Conclusions Gionata Cimini, gionata.cimini@odys.it 10 / 20 Prediction Model Consider an isotropic PMSM , with one pole pair. The nonlinear mathematical model is: 1 R id (t) + ω(t)iq (t) + ud (t) L L R 1 λ i̇q (t) = − iq (t) − ω(t)id (t) + uq (t) − ω(t) L L L B Kt 1 ω̇(t) = ω(t) + iq (t) − τl (t), J J J i̇d (t) = − Gionata Cimini, gionata.cimini@odys.it 11 / 20 Prediction Model Consider an isotropic PMSM , with one pole pair. The nonlinear mathematical model is: 1 R id (t) + ω(t)iq (t) + ud (t) L L R 1 λ i̇q (t) = − iq (t) − ω(t)id (t) + uq (t) − ω(t) L L L B Kt 1 ω̇(t) = ω(t) + iq (t) − τl (t), J J J i̇d (t) = − ——————————————————————————– The linearized model of the electrical subsystem is obtained imposing nominal speed ω(t) = ω0 . x(k + 1) = Ax(k) + Bu(k) + Gv(k) y(k) = Cx(k) Ts Z A = eAc Ts , B= eAc τ dτ Bc , 0 R − L Ac = −ω0 ω0 R − L Gionata Cimini, gionata.cimini@odys.it Ts Z G= eAc τ dτ Gc , C = Cc 0 1 L Bc = 0 0 1 L 0 λ Gc = − L " # Cc = 1 0 0 Kt 11 / 20 System Constraints The most critical constraints concern the electrical components u ∈ Ũ = {u ∈ R2 : kuk2 ≤ Vmax } (1) x ∈ X̃ = {x ∈ R2 : kxk2 ≤ Imax } (2) uq iq Vmax Imax ud (a) Voltage constraints id (b) Current constraints Vmax → Depending from the maximum DC-bus and from the modulation scheme √ (Vmax = VDC / 3 for PWM and SVM) Imax → Chosen to prevent overheating. Peaks larger than this limit are allowed for short time intervals . Gionata Cimini, gionata.cimini@odys.it 12 / 20 System Constraints The most critical constraints concern the electrical components u ∈ Ũ = {u ∈ R2 : kuk2 ≤ Vmax } (1) x ∈ X̃ = {x ∈ R2 : kxk2 ≤ Imax } (2) uq iq Vmax Imax U X ud (c) Voltage constraints id (d) Current constraints Vmax → Depending from the maximum DC-bus and from the modulation scheme √ (Vmax = VDC / 3 for PWM and SVM) Imax → Chosen to prevent overheating. Peaks larger than this limit are allowed for short time intervals . Gionata Cimini, gionata.cimini@odys.it 12 / 20 How about embedded online optimization? MPC problem formulation min ∆u N −1 X kQ(yk+i|k − r(k))k22 + NX u −1 i=0 kR∆uk+j|k k22 + j=0 + kP (yk+N |k − r(k))k22 s.t. xk|k = x(k) xk+i+1|k = Axk+i|k + Buk+i|k + Gv(k) yk+i+1|k = Cxk+i+1|k uk+i|k ∈ U, xk+i+1|k ∈ X i = 0, 1, . . . , N − 1 j = 0, 1, . . . , N − Nu − 1 Gionata Cimini, gionata.cimini@odys.it 13 / 20 How about embedded online optimization? MPC problem formulation min ∆u N −1 X kQ(yk+i|k − r(k))k22 + NX u −1 i=0 kR∆uk+j|k k22 + j=0 + kP (yk+N |k − r(k))k22 s.t. xk|k = x(k) xk+i+1|k = Axk+i|k + Buk+i|k + Gv(k) Quadratic problem (QP) 1 0 z Hz + p(t)0 F 0 z 2 s.t. Gz ≤ W + Sp(t) min q(z) , z yk+i+1|k = Cxk+i+1|k convex quadratic objective function uk+i|k ∈ U, polyhedral constraints xk+i+1|k ∈ X i = 0, 1, . . . , N − 1 j = 0, 1, . . . , N − Nu − 1 Gionata Cimini, gionata.cimini@odys.it QPs are easier to solve than standard formulation 13 / 20 How about embedded online optimization? MPC problem formulation min ∆u N −1 X kQ(yk+i|k − r(k))k22 + NX u −1 i=0 kR∆uk+j|k k22 + j=0 + kP (yk+N |k − r(k))k22 s.t. xk|k = x(k) xk+i+1|k = Axk+i|k + Buk+i|k + Gv(k) Quadratic problem (QP) 1 0 z Hz + p(t)0 F 0 z 2 s.t. Gz ≤ W + Sp(t) min q(z) , z yk+i+1|k = Cxk+i+1|k convex quadratic objective function uk+i|k ∈ U, polyhedral constraints xk+i+1|k ∈ X i = 0, 1, . . . , N − 1 j = 0, 1, . . . , N − Nu − 1 QPs are easier to solve than standard formulation We developed an embedded QP solver Gionata Cimini, gionata.cimini@odys.it 13 / 20 Outline 1 Introduction and Motivations 2 Model Predictive Control Design 3 Experimental Results 4 Conclusions Gionata Cimini, gionata.cimini@odys.it 14 / 20 Processor In the Loop Experiments Inverter PWM PMSM abc abc dq θ dq id iq R ud uq Gionata Cimini, gionata.cimini@odys.it MPC ω id,ref τref PI ωref 15 / 20 Processor In the Loop Experiments Inverter PWM PMSM abc abc dq θ dq id iq R ud uq MPC ω id,ref τref PI ωref c Simulation model: MBE.300.E500 PMSM, commercially available from Technosoft Gionata Cimini, gionata.cimini@odys.it 15 / 20 Processor In the Loop Experiments Inverter PWM PMSM abc abc dq θ dq id iq R ud uq MPC ω id,ref τref PI ωref c Simulation model: MBE.300.E500 PMSM, commercially available from Technosoft c . (32-bit, 150 MHz CPU Platform: Low cost F28335 Delfino DSP by Texas Instruments and IEEE-754 single-precision Floating- Point Unit) Gionata Cimini, gionata.cimini@odys.it 15 / 20 Processor In the Loop Experiments Inverter PWM PMSM abc abc dq θ dq id iq R ud uq MPC ω id,ref τref PI ωref c Simulation model: MBE.300.E500 PMSM, commercially available from Technosoft c . (32-bit, 150 MHz CPU Platform: Low cost F28335 Delfino DSP by Texas Instruments and IEEE-754 single-precision Floating- Point Unit) This board is commonly used for motion control! Gionata Cimini, gionata.cimini@odys.it 15 / 20 Control Performance torque control with MPTC 0.03 0.02 τ (N·m) 0.01 0 -0.01 -0.02 τl -0.03 0 τref MPC 0.1 τMPC 0.2 0.3 0.4 0.5 time (s) Gionata Cimini, gionata.cimini@odys.it 16 / 20 Control Performance torque control with MPTC MPTC vs PI-FOC torque transient 0.03 0.02 -0.015 τ (N·m) τ (N·m) 0.01 0 -0.01 -0.02 -0.025 τl -0.02 τl -0.03 0 τref MPC 0.1 -0.03 0.3 τMPC 0.2 0.3 0.4 0.5 0.31 0.32 τPI 0.33 τMPC 0.34 time (s) time (s) Gionata Cimini, gionata.cimini@odys.it 16 / 20 Control Performance torque control with MPTC MPTC vs PI-FOC torque transient 0.03 0.02 -0.015 τ (N·m) τ (N·m) 0.01 0 -0.01 -0.02 -0.025 τl -0.02 τref τl -0.03 0 0.1 -0.03 0.3 τMPC MPC 0.2 0.3 0.4 0.5 0.31 0.32 τPI 0.33 τMPC 0.34 time (s) time (s) MPTC vs PI-FOC speed tracking 4000 3500 ωref ωPI ωMPC 3000 ω (rpm) 2500 2000 1500 1000 500 0 -500 0 0.1 0.2 0.3 0.4 0.5 time (s) Gionata Cimini, gionata.cimini@odys.it 16 / 20 Control Performance torque control with MPTC MPTC vs PI-FOC torque transient 0.03 0.02 -0.015 τ (N·m) τ (N·m) 0.01 0 -0.01 -0.02 -0.025 τl -0.02 τref τl -0.03 0 0.1 -0.03 0.3 τMPC MPC 0.2 0.3 0.4 0.5 0.31 0.32 τPI 0.33 τMPC 0.34 time (s) time (s) MPTC vs PI-FOC speed tracking 4000 3500 ωref ωPI ωMPC 3000 MPC provides 2.3% and 4.2% improvement in speed and torque tracking, respectively (ISE index) ω (rpm) 2500 2000 1500 1000 500 0 -500 0 0.1 0.2 0.3 0.4 0.5 time (s) Gionata Cimini, gionata.cimini@odys.it 16 / 20 Online Optimization The sampling interval is 0.3ms Dimension of the QP problem: 5 decision variables and 41 constraints DSP with 150MHz processor One hardware multiplier 32 × 32 bit Single precision Gionata Cimini, gionata.cimini@odys.it 17 / 20 Online Optimization The sampling interval is 0.3ms Dimension of the QP problem: 5 decision variables and 41 constraints DSP with 150MHz processor One hardware multiplier 32 × 32 bit Single precision 200 tsol (µs) 150 100 50 0 0 0.1 0.2 0.3 0.4 0.5 time (s) Memory occupancy: 2.5kB out of the 34kB of memory provided by the DSP Gionata Cimini, gionata.cimini@odys.it 17 / 20 Outline 1 Introduction and Motivations 2 Model Predictive Control Design 3 Experimental Results 4 Conclusions Gionata Cimini, gionata.cimini@odys.it 18 / 20 Conclusions Summary The feasibility of MPC with online optimization in terms of required computational power memory occupancy has been demonstrated through processor-in-the-loop tests on a low power DSP Future Activities Extension of the proposed strategy to consider the speed loop Flux weakening handling Evaluation of the effects of winding resistance increase due to temperature rise Application to automotive problems, such as Electronic Throttle Control and Hybrid Electric Motor Control Gionata Cimini, gionata.cimini@odys.it 19 / 20 Thank you for your attention!! www.odys.it Gionata Cimini, gionata.cimini@odys.it 20 / 20