MPC IN Under supervision of Dr S K

  • Slides: 54
Download presentation
MPC IN Under supervision of: Dr S. K. Hosseini S. By: S. H. Edjtahed

MPC IN Under supervision of: Dr S. K. Hosseini S. By: S. H. Edjtahed http: //ejtahed. fumblog. um. ac. ir M. G. Farajzadeh D.

MPC in MATLAB: • MATLAB MPC Toolbox (Morari) • IMPACT Toolbox (Camacho) • MPCTools

MPC in MATLAB: • MATLAB MPC Toolbox (Morari) • IMPACT Toolbox (Camacho) • MPCTools (Akesson) • BLOM (Berkeley Lib. for Optimization MPC) • MPT (Multi Parametric Toolbox) • j. MPC (Jonathan Currie)

 • SOSTOOLS Toolbox (caltech) • YALMIP Toolbox (Camacho) • CVX Toolbox (Johan Löfberg)

• SOSTOOLS Toolbox (caltech) • YALMIP Toolbox (Camacho) • CVX Toolbox (Johan Löfberg) • MATLAB LMI Toolbox (Gahinet et al) • MPC in Lab. View (Telemark University College) • MPC with MATLAB (a Book by Wang)

MATLAB MPC Toolbox Overview: 1. MPC Modeling in MATLAB 2. Case Study introduction 3.

MATLAB MPC Toolbox Overview: 1. MPC Modeling in MATLAB 2. Case Study introduction 3. MPC in GUI (mpctool) 4. MPC in Command Line 5. MPC in Simulink

MATLAB MPC Toolbox 1. MPC Modeling

MATLAB MPC Toolbox 1. MPC Modeling

MATLAB MPC Toolbox 1. MPC Modeling: Plant Model

MATLAB MPC Toolbox 1. MPC Modeling: Plant Model

MATLAB MPC Toolbox 1. MPC Modeling: Plant Model The MPC controller performs all the

MATLAB MPC Toolbox 1. MPC Modeling: Plant Model The MPC controller performs all the estimation and optimization calculations using a: discrete-time, delay-free, state-space system, with dimensionless input and output variables.

MATLAB MPC Toolbox 1. MPC Modeling: Plant Model

MATLAB MPC Toolbox 1. MPC Modeling: Plant Model

MATLAB MPC Toolbox 1. MPC Modeling: Plant Model

MATLAB MPC Toolbox 1. MPC Modeling: Plant Model

MATLAB MPC Toolbox 1. MPC Modeling: LTI Object property

MATLAB MPC Toolbox 1. MPC Modeling: LTI Object property

MATLAB MPC Toolbox 1. MPC Modeling: MIMO Plants

MATLAB MPC Toolbox 1. MPC Modeling: MIMO Plants

MATLAB MPC Toolbox 2. Case Study introduction: Servo Mechanism

MATLAB MPC Toolbox 2. Case Study introduction: Servo Mechanism

MATLAB MPC Toolbox 2. Case Study : Modeling

MATLAB MPC Toolbox 2. Case Study : Modeling

MATLAB MPC Toolbox 2. Case Study : Plant Definition

MATLAB MPC Toolbox 2. Case Study : Plant Definition

MATLAB MPC Toolbox 2. Case Study : Plant Definition

MATLAB MPC Toolbox 2. Case Study : Plant Definition

MATLAB MPC Toolbox 3. MPC in GUI (mpctool) >> mpctool

MATLAB MPC Toolbox 3. MPC in GUI (mpctool) >> mpctool

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Specifying signal properties

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Specifying signal properties

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Specifying controller properties

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Specifying controller properties

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Specifying controller properties

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Specifying controller properties

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Specifying controller properties

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Specifying controller properties

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Specifying scenario

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Specifying scenario

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Simulation results

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Simulation results

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Correcting controller properties

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Correcting controller properties

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Simulation results

MATLAB MPC Toolbox 3. MPC in GUI (mpctool): Simulation results

MATLAB MPC Toolbox 4. MPC in Command Line Steps: 1. Defining the Plant Model

MATLAB MPC Toolbox 4. MPC in Command Line Steps: 1. Defining the Plant Model 2. MPC commands 3. Constructing an MPC Object 4. Setting, Getting, and Displaying Object Properties 5. Running a Simulation 6. Plotting the results

MATLAB MPC Toolbox 4. MPC in Command Line 4. 1. Defining the Plant Model:

MATLAB MPC Toolbox 4. MPC in Command Line 4. 1. Defining the Plant Model: 1. Defining Parameters 2. Defining Sys model

MATLAB MPC Toolbox 4. MPC in Command Line 4. 2. MPC commands: 4. 3.

MATLAB MPC Toolbox 4. MPC in Command Line 4. 2. MPC commands: 4. 3. Constructing an MPC Object

MATLAB MPC Toolbox 4. MPC in Command Line 4. 4. Setting, Getting, and Displaying

MATLAB MPC Toolbox 4. MPC in Command Line 4. 4. Setting, Getting, and Displaying Object Properties

MATLAB MPC Toolbox 4. MPC in Command Line 4. 5. Running a Simulation 4.

MATLAB MPC Toolbox 4. MPC in Command Line 4. 5. Running a Simulation 4. 6. Plotting the results

MATLAB MPC Toolbox 5. MPC in Simulink

MATLAB MPC Toolbox 5. MPC in Simulink

MATLAB MPC Toolbox 5. MPC in Simulink

MATLAB MPC Toolbox 5. MPC in Simulink

MATLAB MPC Toolbox 5. MPC in Simulink

MATLAB MPC Toolbox 5. MPC in Simulink

INTEGRATED MULTIPLE PREDICTIVE ALGORITHM CONTROL TOOL The controllers implemented under IMPACT: GPC (Generalized Predictive

INTEGRATED MULTIPLE PREDICTIVE ALGORITHM CONTROL TOOL The controllers implemented under IMPACT: GPC (Generalized Predictive Control) SPGPC DMC PFC (GPC with Smith Predictor) (Dynamic Matrix Control) (Predictive Functional Control) SSMPC (State Space Model Predictive Control)

Containing (Systems + Experiments): All Simulation Examples of the Book All exercise corresponding to

Containing (Systems + Experiments): All Simulation Examples of the Book All exercise corresponding to the chapters of the book MPC. You can add your own! All Simulation Results is available here in FUMBlog: ADD THE PATH OF IMPACT DIRECTORY INTO THE MATLAB PATH IN ORDER TO RUN IMPACT CORRECTLY. TYPE IN COMMAND WINDOW OF MATLAB: >> IMPACT

FOR MIMO SYSTEMS SELECT THE: SYSTEM TO SIMULATE CONTROLLER TO BE USED PARAMETERS OF

FOR MIMO SYSTEMS SELECT THE: SYSTEM TO SIMULATE CONTROLLER TO BE USED PARAMETERS OF MPC SET: DURATION REFERENCE TO REACH CONSTRAINTS NOISE DISTURBANCES RESULT: OUTPUTS , U , DU

The interface is divided in three different parts: SYSTEM: This part loads the system

The interface is divided in three different parts: SYSTEM: This part loads the system file to be simulated, changes its properties (matrices) and saves a system created by the user in a file. CONTROLLER: It sets the kind of MPC controller to be used, and allows changing the specific tuning parameters, such as horizons or weighting matrices. EXPERIMENT: It establishes the main features of the simulation: time, reference parameters, constraints, noises, disturbances and graphics to be showed

The following forms of modelling a system are accepted by IMPACT. 1. Carima Model.

The following forms of modelling a system are accepted by IMPACT. 1. Carima Model. A and B model the system, and the delay factor (z-d) have been integrated in B. 2. Step Response Model (DMC) The variable gninputs contains the inputs of the system 3. Space State Model the variables Mm, Nm and Qm. (PFC and SSMPC) Error Modelling: Ap, Bp for the CARIMA--- gp for the Step response--- Mp, Np and Qp for State Space sinfo: General information about the system in a cell array 2 variables for reference: Constant: vrefc Variable: vrefv

LINEAR MATRIX INEQUALITY IN MATLAB >> lmidem

LINEAR MATRIX INEQUALITY IN MATLAB >> lmidem

For all 3 Solvers: Input: an LMI system Output: x* (decision variable)

For all 3 Solvers: Input: an LMI system Output: x* (decision variable)

>> lmiedit

>> lmiedit

Solving LMI:

Solving LMI:

See Problem Definition at FUMblog: http: //ejtahed. fumblog. um. ac. ir

See Problem Definition at FUMblog: http: //ejtahed. fumblog. um. ac. ir

umax=2 Q 1=[1 0; 0 0] B 1=B 2=[0 0. 1*0. 787]’ Y Q

umax=2 Q 1=[1 0; 0 0] B 1=B 2=[0 0. 1*0. 787]’ Y Q

AN USEFUL MATLAB FUNCTION FOR DESIGNING RMPC WITH LMI Available at FUMblog: http: //ejtahed.

AN USEFUL MATLAB FUNCTION FOR DESIGNING RMPC WITH LMI Available at FUMblog: http: //ejtahed. fumblog. um. ac. ir

A USEFUL FUNCTION FOR DESIGNING CGPC WITH MATLAB

A USEFUL FUNCTION FOR DESIGNING CGPC WITH MATLAB

A USEFUL FUNCTION FOR DESIGNING CGPC WITH MATLAB Available at FUMblog: http: //ejtahed. fumblog.

A USEFUL FUNCTION FOR DESIGNING CGPC WITH MATLAB Available at FUMblog: http: //ejtahed. fumblog. um. ac. ir

MPC IN LABVIEW

MPC IN LABVIEW

ALL THING IS AVAILABLE AT: HTTP: //EJTAHED. FUMBLOG. UM. AC. IR

ALL THING IS AVAILABLE AT: HTTP: //EJTAHED. FUMBLOG. UM. AC. IR

References: http: //www. mathworks. com/ http: //www. i 2 c 2. aut. ac. nz/Resources/Software/j.

References: http: //www. mathworks. com/ http: //www. i 2 c 2. aut. ac. nz/Resources/Software/j. MPCToolbox. html https: //www. embotech. com/FORCES-Pro/How-to-use/MATLAB-Interface/Simple-MPC-Example http: //www-control. eng. cam. ac. uk/jmm/mpcbook/software. html http: //www. mpc. berkeley. edu/mpc-course-material http: //forces. ethz. ch/doku. php? id=examples: simplempc#simple_mpc_example http: //www. control. lth. se/user/johan. akesson/mpctools/ http: //www. mpclab. net/Trac/ http: //control. ee. ethz. ch/research/software. php http: //cvxr. com/cvx/ http: //users. isy. liu. se/johanl/yalmip/pmwiki. php? n=Main. What. Is. YALMIP http: //www. cds. caltech. edu/sostools/ http: //ejtahed. fumblog. um. ac. ir/