Scheduled Model Predictive Scheduled Model Predictive Control of Wind turbines in Control of Wind turbines in
Above Rated WindAbove Rated Wind
Avishek KumarDr Karl Stol
Department of Mechanical Engineering
2
OverviewOverview
3
BACKGROUNDBACKGROUND
4
Horizontal Axis Wind TurbinesHorizontal Axis Wind Turbines
Source: US Department of Energy
5
Control ObjectivesControl ObjectivesSpeed controlSpeed control Maintain rated rotor speed in above rated Maintain rated rotor speed in above rated
windswinds
Load controlLoad control Oscillations occur in the Low Speed Shaft Oscillations occur in the Low Speed Shaft
(LSS)(LSS) Reduce loads in LSSReduce loads in LSS
6
Turbine NonlinearitiesTurbine Nonlinearities
),(21
432 xCVRP pwrr
w
rr
VR
7
Model Predictive ControlModel Predictive ControlChoose the control input trajectory that will Choose the control input trajectory that will minimize a cost function over the minimize a cost function over the prediction horizon prediction horizon HHpp
Example:Example:
maxmin
maxmin
:subject to
min
uuuxxx
uuxxu
RQJ TH
k
Tp
8
Why MPC?Why MPC?Accommodate disturbancesAccommodate disturbances
MIMOMIMO
ConstraintsConstraints
Many cost functionsMany cost functions
Can extend to nonlinear systemsCan extend to nonlinear systems
9
Current State of MPC for Current State of MPC for Wind TurbinesWind Turbines
MPC using linear models of turbine (LMPC)MPC using linear models of turbine (LMPC) Lacks ability to deal with system nonlinearitiesLacks ability to deal with system nonlinearities
MPC using nonlinear models of turbineMPC using nonlinear models of turbine Difficult to increase order of model as explicit Difficult to increase order of model as explicit
nonlinear equations become very complexnonlinear equations become very complex Computationally expensiveComputationally expensive
10
Bridging the GapBridging the Gap
Scheduled MPC (SMPC)Scheduled MPC (SMPC)
Uses a network of linear models easily obtained Uses a network of linear models easily obtained from linearization codes (FAST)from linearization codes (FAST)
Optimization remains convex for each controllerOptimization remains convex for each controller
Controllers can be specifically tuned at various Controllers can be specifically tuned at various operating points to operate with different aimsoperating points to operate with different aims
11
ObjectivesObjectives
12
MPC OVERVIEWMPC OVERVIEW
13
Constrained Linear Constrained Linear Quadratic RegulatorQuadratic Regulator
Up till now, MPC has been posed as a Up till now, MPC has been posed as a finite horizonfinite horizon problem problem
For better performance set up MPC as an For better performance set up MPC as an infinite infinite horizon problemhorizon problem
This allows LQR control with constraintsThis allows LQR control with constraints
14
Infinite Horizon Cost Function for Infinite Horizon Cost Function for CLQRCLQR
ki
Tki
ikik
Tkik uRuxQxJ |1|1
0|1|1
kiHkTkiHk
ikiHk
TkiHk
kikTkik
H
ikik
Tkik
pppp
p
uRuxQxJ
uRuxQxJ
JJJ
||0
|1|12
||
1
0|1|11
21
pp HkHk
T xPxJ 2
pp
p
HkHkT
ikTik
H
iik
Tik xPxuRuxQxJ
1
011
15
Constrained Linear Constrained Linear Quadratic RegulatorQuadratic Regulator
Design a LQR for the linear system giving Design a LQR for the linear system giving predictions:predictions:
)(
|1|
|1|
|1|
kikkik
kikkik
kikkik
xx
xBKAx
xKu
16
Constrained Linear Constrained Linear Quadratic RegulatorQuadratic Regulator
Create a MPC to calculate perturbations Create a MPC to calculate perturbations cc about control input given by the LQR about control input given by the LQR onlyonly over over HHp p so constraints are met so constraints are met
|1|
|1|1|
|1|1|
kikkik
kikkikkik
kikkikkik
xx
cBxx
cxKu
p
p
p
Hi
Hi
Hi
...2 ,1
...2 ,1
17
CLQR MinimizationCLQR Minimization
maxmin
maxmin
maxmin
1
011
:subject to
min
uuuuuuuuu
c
pp
p
HkHkT
ikTik
H
iik
Tik xPxuRuxQxJ
18
CLQR Block DiagramCLQR Block Diagram
19
Scheduled MPCScheduled MPCCreate a network of MPCs at enough Create a network of MPCs at enough operating points to capture nonlinearities operating points to capture nonlinearities of systemof system
Tune each controller for the region it Tune each controller for the region it operates inoperates in
Weight the outputs of each controller Weight the outputs of each controller based on scheduling variablebased on scheduling variable
20
SMPC Block DiagramSMPC Block Diagram
21
ModelModel
22
Linear Model for Control Linear Model for Control Design/Disturbance EstimationDesign/Disturbance Estimation
op
op
uuu
xxxuBxAx
Speed Wind
errorpower Integralratepitch Blade
pitch BladeTorqueGenerator
rate twist DrivetrainspeedRotor
twistDrivetrainpositionazimuth Rotor
VerrorP
T
r
r
x g
pitch Blade CommandedtorqueGenerator Commanded
,,
cT
u cg
23
Nonlinear Model for EKFNonlinear Model for EKF(7)where
0
1
1
),,(
)(
5
4
21
532
21
321
1
41
x
x
Nx
x
Jx
JNKx
JNDx
NJDx
JKx
NJDx
JDx
JxVxxP
xf
T
g
ggg
s
gg
s
gg
s
r
s
gr
s
r
s
r
wr
uxgxfx )()(
T
xg
10
01000000
)(
cg
c
Tu
,
V
T
x
g
g
r
24
WIND TURBINE CONTROL WIND TURBINE CONTROL DESIGNDESIGN
25
Baseline ControllersBaseline ControllersGSPIGSPI
26
Baseline ControllersBaseline ControllersCLQRCLQR
27
Scheduled MPCScheduled MPCLinearization
Point 1 2 3
Wind Speed (Vi0)
14ms-1 18ms-1 22ms-1
Blade Pitch 2.2° 11.1° 16.1°
Generator Torque 3524Nm 3524Nm 3524Nm
Rotor Speed 41.7rpm 41.7rpm 41.7rpm
28
Scheduled MPCScheduled MPC
kCLQRk
kCLQRkCLQRk
kCLQRkCLQRk
kCLQRk
uu
VV
uuu
VV
uuu
uu
,3
02
03
,3,2
01
02
,2,1
,1
4/)(
)1(
4/)(
)1(
V
V
V
V
1
11
11
1
ms22
ms22ms18
ms18ms14
ms14
29
Scheduled MPCScheduled MPCV̂
30
SimulationsSimulationsSimulations conducted in MATLAB/Simulink with Simulations conducted in MATLAB/Simulink with FAST modelFAST modelActive DOFActive DOF Blade flap (modes 1 and 2)Blade flap (modes 1 and 2) Blade EdgewiseBlade Edgewise TeeterTeeter Tower fore-aft (mode 1 and 2)Tower fore-aft (mode 1 and 2) DrivetrainDrivetrain GeneratorGenerator Tower side-sideTower side-side
31
Wind InputsWind Inputs
32
Performance CriteriaPerformance Criteria
Rotor Speed RMS ErrorRotor Speed RMS Error
Low Speed Shaft Damage Equivalent LoadLow Speed Shaft Damage Equivalent Load
RMS Pitch AccelerationRMS Pitch Acceleration
33
TuningTuningEach SMPC controller tuned to have same Each SMPC controller tuned to have same speed control as GSPI in respective low speed control as GSPI in respective low turbulence windturbulence wind
Each SMPC controller tuned to have same Each SMPC controller tuned to have same LSS load control as CLQR in respective LSS load control as CLQR in respective low turbulence windlow turbulence wind
34
RESULTSRESULTS
35
ConstraintsConstraints
36
Speed ControlSpeed Control
37
LSS DELLSS DEL
38
Pitch AccelerationPitch Acceleration
39
ConclusionsConclusions
40
Future WorkFuture Work
Questions?Questions?
42
Nonlinear ModelNonlinear Model(7)where
43
Extended Kalman FilterExtended Kalman FilterFL design needs FL design needs accurate accurate wind speed wind speed estimateestimateExtended Kalman Filter (EKF) is a Extended Kalman Filter (EKF) is a nonlinear state estimatornonlinear state estimatorSub optimalSub optimalLinearizes the system model each time Linearizes the system model each time step, then estimates states like a linear step, then estimates states like a linear Kalman FilterKalman Filter
44
Choosing HpChoosing Hp