Documente Academic
Documente Profesional
Documente Cultură
KeyFeatures
DesigningandSimulatingModelPredictiveControllers
AdjustingConstraints,Weights,andStateEstimation
AdjustingRunTimeControllerPerformance
DesigningAdaptiveModelPredictiveControllers
GeneratingExplicitModelPredictiveControllers
ControllingPlantsOveraRangeofOperatingConditions
DeployingModelPredictiveControllers
KeyFeatures
Designandsimulation(http://www.mathworks.com/help/mpc/gs/designingamodel
predictivecontrollerforasimulinkplant.html)ofmodelpredictivecontrollersin
MATLAB(http://www.mathworks.com/products/matlab/)andSimulink
(http://www.mathworks.com/products/simulink/)
Customizationofconstraintsandweightswithadvisorytoolsforimprovedperformanceand
robustness
AdaptiveMPCcontrolthroughruntimechangestointernalplantmodel
ExplicitMPCcontrolforapplicationswithfastsampletimesusingprecomputedsolutions
Controlofplantsoverawiderangeofoperatingconditionsbyswitchingbetweenmultiple
modelpredictivecontrollers
Specializedmodelpredictivecontrolquadraticprogramming(QP)solver
(http://www.mathworks.com/help/mpc/ug/qpsolver.html)optimizedforspeed,
efficiency,androbustness
SupportforCcodegenerationwithSimulinkCoder
(http://www.mathworks.com/products/simulinkcoder/)andIEC611313StructuredText
generationwithSimulinkPLCCoder(http://www.mathworks.com/products/slplc
coder/)
http://es.mathworks.com/products/mpc/features.html#designingadaptivemodelpredictivecontrollers 1/10
18/5/2016 FeaturesModelPredictiveControlToolboxMathWorksEspaa
MPCControllerblock(red)fordesigningandsimulatingmodelpredictivecontrollersdirectlyinSimulink.
DesigningandSimulatingModelPredictiveControllers
Modelpredictivecontrollerscanbeusedtooptimizeclosedloopsystemperformanceof
MIMOplantssubjecttoinputandoutputconstraints.Becausetheybasetheiractionsonan
internalplantmodel,modelpredictivecontrollerscanforecastfutureprocessbehaviorand
computetheoptimalcontrolactionsaccordingly.Theabilitytomodelprocessinteractions
oftenenablesmodelpredictivecontrollerstooutperformmultiplePIDcontrolloops,which
requireindividualtuningandothertechniquestoreduceloopcoupling.
ModelPredictiveControlToolboxprovidesfunctions,anapp,andSimulinkblocks
(http://www.mathworks.com/help/mpc/blocklist.html)fordesigningandsimulatingmodel
predictivecontrollersinMATLAB(http://www.mathworks.com/products/matlab/)and
Simulink.
Youcaniterativelyimproveyourcontrollerdesignbydefininganinternalplantmodel
(http://www.mathworks.com/help/mpc/gs/mpcmodeling.html#bujvuw0),adjusting
controllerparameterssuchasweightsandconstraints,andsimulatingclosedloopsystem
responsetoevaluatecontrollerperformance.
(http://www.mathworks.com/videos/getting
GettingStartedwithModelPredictiveControlToolbox
startedwithmodel (http://www.mathworks.com/videos/gettingstartedwith
predictivecontrol modelpredictivecontroltoolbox68791.html?
toolbox68791.html? type=shadow)
type=shadow) 3:59 UseModelPredictiveControlToolboxtodesignandsimulate
modelpredictivecontrollers.
DefiningInternalPlantModels
WhendesigningamodelpredictivecontrollerinSimulink,youcanuseSimulinkControl
Design(http://www.mathworks.com/products/simcontrol/)toextractalinearizedform
oftheSimulinkmodel(http://www.mathworks.com/help/mpc/gs/usingsimulinkto
developltimodels.html)andautomaticallyimportitintothecontrollerastheinternalplant
model.
Alternatively,youcanuselineartimeinvariant(LTI)systemsfromControlSystemToolbox
(http://www.mathworks.com/products/control/),suchasatransferfunction
(http://www.mathworks.com/discovery/transferfunction.html)orastatespacemodel
(http://www.mathworks.com/discovery/statespace.html),tospecifytheinternalplant
model.ModelPredictiveControlToolboxalsoletsyoudirectlyimportmodelscreatedfrom
measuredinputoutputdata(http://www.mathworks.com/help/mpc/gs/system
identificationtoolboxmodels.html)usingSystemIdentificationToolbox
(http://www.mathworks.com/products/sysid/).
DesigningControllers
Onceyouhavedefinedtheinternalplantmodel,youcancompletethedesignofyourmodel
http://es.mathworks.com/products/mpc/features.html#designingadaptivemodelpredictivecontrollers 2/10
18/5/2016 FeaturesModelPredictiveControlToolboxMathWorksEspaa
predictivecontrollerbyspecifyingthefollowingcontrollerparameters:
Controlinterval(sampletime(http://www.mathworks.com/help/mpc/ug/choosing
sampletimeandhorizons.html#bujyxxr))
Predictionandcontrolhorizons(http://www.mathworks.com/help/mpc/ug/choosing
sampletimeandhorizons.html#bujyygn)
Scalefactorsforplantinputsandoutputs
Hardandsoftconstraintsonmanipulatedvariables,manipulatedvariablerates,andoutput
variables
Weightsonmanipulatedvariables,manipulatedvariablerates,andoutputvariables
Modelsthatcharacterizemeasurementnoiseandunmeasuredinputandoutput
disturbances
Dialogboxforselectingaplantmodelandspecifyingthecontrolinterval(sampletime),predictionhorizon,
andcontrolhorizoninMPCDesignerapp.
Dialogboxforsettingconstraintsonmanipulatedvariables,manipulatedvariablerates,andoutputvariables
inMPCDesignerapp.
Thetoolboxsupportstimevaryingconstraints
(http://www.mathworks.com/help/mpc/examples/varyinginputandoutput
constraints.html)andweights,constraintsonlinearcombinationsofmanipulatedvariables
andoutputvariables,terminalconstraintsandweights,andconstraintsintheformoflinearoff
diagonalweights.Thetoolboxalsosupportsconstraintsoftening
(http://www.mathworks.com/help/mpc/ug/specifyingconstraints.html#buj077i).
RunningClosedLoopSimulations
YoucanusefunctionsortheMPCDesignerapp
(http://www.mathworks.com/help/mpc/gs/introduction.html)torunclosedloop
simulationsofyourmodelpredictivecontrolleragainstlinearplantmodels.Theappletsyou
setupmultiplesimulationscenarios.Foreachscenario,youcanspecifycontrollersetpoints
anddisturbancesbychoosingfromseveralcommonsignalprofiles.Examplesarestep,ramp,
sinewave,andrandomsignal.
http://es.mathworks.com/products/mpc/features.html#designingadaptivemodelpredictivecontrollers 3/10
18/5/2016 FeaturesModelPredictiveControlToolboxMathWorksEspaa
ConfiguringandrunningasimulationtotestacontrolleragainstalinearplantmodelintheMPCDesigner
app.
Toassessrobustnessundermodelmismatch
(http://www.mathworks.com/help/mpc/examples/simulatingmodelpredictivecontroller
withplantmodelmismatch.html),youcansimulateacontrolleragainstalinearplant
modelthatisdifferentfromtheinternalplantmodelusedbythecontroller.Youcanalso
simulatemultiplecontrollerdesignsagainstthesameplantmodeltoseehowdifferentweight
andconstraintsettingsaffectcontrollerperformance.Withthistoolbox,youalsohavethe
abilitytodisableconstraintstoevaluatecharacteristicsoftheclosedloopdynamics,suchas
stabilityanddamping.UsingSimulinkblocksprovidedwithModelPredictiveControlToolbox,
youcanrunclosedloopsimulationsofyourmodelpredictivecontrolleragainstanonlinear
Simulinkmodel.Youcanconfiguretheblockstoacceptruntimeconstraintandweightsignals
thataregeneratedbyotherSimulinkblocks.
Simulinkmodelforrunningclosedloopsimulationsofamodelpredictivecontrollerandanonlinearplant
model,withcontrollerconstraintscalculatedbyotherSimulinkblocks.
AdjustingConstraints,Weights,andStateEstimation
ModelPredictiveControlToolboxprovidesseveraltoolstohelpyouoptimizecontroller
performancebyadjustingcontrollerconstraintsandweights,aswellasthemodelsandgains
http://es.mathworks.com/products/mpc/features.html#designingadaptivemodelpredictivecontrollers 4/10
18/5/2016 FeaturesModelPredictiveControlToolboxMathWorksEspaa
usedinstateestimation.
AdjustingWeights
Thetoolboxletsyouadjustindividualweights
(http://www.mathworks.com/help/mpc/ug/tuningweights.html#buj38d_)onmanipulated
variables,manipulatedvariablerates,andoutputvariables.MPCDesignerappalsoprovides
additionalweighttuningcapability(http://www.mathworks.com/help/mpc/ug/tuning
weights.html#buj3_8a)tomakethecontrollermorerobustormoreaggressive.Thetoolbox
alsoprovidesacontrollertuningaid
(http://www.mathworks.com/help/mpc/ref/sensitivity.html)tocomputeeffectofweightson
performanceandtosuggestweightadjustmentstoimprovecontrollerdesign.
AnalyzingConstraintsandWeightsforPotentialRunTimeFailures
Thetoolboxprovidesadiagnosticfunction
(http://www.mathworks.com/help/mpc/ref/review.html)fordetectingpotentialstabilityand
robustnessissueswithyourmodelpredictivecontroller,suchas:
Modelpredictivecontrollerorclosedloopsystemisunstable
QPoptimizationproblemisilldefinedwithaninvalidHessianmatrix
Zerosteadystateoffsetcannotbeachieved
Hardandsoftconstraintsettingsmayleadtoinfeasibleoptimizationproblemsatruntime
Youcanusethisdiagnostictooltoadjustcontrollerweightsandconstraintsduringcontroller
designtoavoidruntimefailures.
Resultsofdiagnostictestsforpotentialmodelpredictivecontrollerruntimefailures.
UsingCustomStateEstimation
Thetoolboxprovidesbuiltinstateestimatorsforestimatingcontrollerstatesfrommeasured
outputs.Ifyouhavestatemeasurementsorprefertousevaluesestimatedwithacustom
algorithm,thetoolboxprovidesyouwithanoptiontodoso.
http://es.mathworks.com/products/mpc/features.html#designingadaptivemodelpredictivecontrollers 5/10
18/5/2016 FeaturesModelPredictiveControlToolboxMathWorksEspaa
AdjustingRunTimeControllerPerformance
ModelPredictiveControlToolboxsupportsmonitoringruntimecontrollerperformanceand
adjustingruntimetuningparameters.
MonitoringRunTimeControllerPerformance
ModelpredictivecontrollersformulateandsolveaQPoptimizationproblem
(http://www.mathworks.com/help/mpc/ug/optimizationproblem.html)ateach
computationstep.TheQPsolversuppliedwiththetoolboxisoptimizedforperformanceand
robustness.Itachievesconvergenceevenwhentheoptimizationproblemisillconditioned.
Onrareoccasionswhentheoptimizationmayfailtoconvergeduetoprocessabnormalities,
theMPCControllerblockfreezesthecontrolleroutputatthepreviousvalueandletsyou
monitoroptimizationstatusatruntime.Youcanaccesstheoptimizationstatussignal
(http://www.mathworks.com/help/mpc/examples/monitoringoptimizationstatusto
detectcontrollerfailures.html)todetectwhenanoptimizationfailstoconvergeandthen
decideifabackupcontrolstrategyshouldbeused.
TheMPCControllerblockalsoletsyouaccesstheoptimalcostandcontrolsequence
(http://www.mathworks.com/help/mpc/examples/switchingcontrollersbasedon
optimalcosts.html)ateachcomputationstep.Youcanusethesesignalstoanalyze
controllerperformanceanddevelopcustomcontrolstrategies.Forexample,youcanuse
optimalcostinformationforswitchingbetweentwomodelpredictivecontrollerswhoseoutputs
arerestrictedtodiscretevalues.
Simulinkmodelthatusestheoptimalcostsignaltoswitchbetweentwomodelpredictivecontrollerswhose
outputsarerestrictedtodiscretevalues.Youcancomparethereferencesignal(topright,red)andplant
output(topright,blue)toevaluatecontrollerperformance.Youcanplotthemanipulatedvariablethe
controlleroutput(bottomright,green)toseewhenthecontrolstrategyswitchesbetweencontrollers.
AdjustingWeightsatRunTime
Thetoolboxletsyouadjusttheruntimeweights
(http://www.mathworks.com/help/mpc/examples/tuningcontrollerweights.html)ofyour
modelpredictivecontrollertooptimizeitsperformanceatruntimewithoutredesigningor
reimplementingit.ToperformruntimecontrollertuninginSimulink,youwouldconfigurethe
MPCControllerblocktoaccepttheappropriateweights.Youcanalsoperformruntime
controllertuninginMATLAB.
ModelPredictiveControlToolboxprovidesaccesstothefollowingruntimetuningparameters:
Weightsonplantoutputs
Weightsonmanipulatedvariables
Weightsonmanipulatedvariablerates
Weightonoverallconstraintsoftening
http://es.mathworks.com/products/mpc/features.html#designingadaptivemodelpredictivecontrollers 6/10
18/5/2016 FeaturesModelPredictiveControlToolboxMathWorksEspaa
Simulinkmodelforruntimetuningofmodelpredictivecontrollerparameters.ModelPredictiveControl
Toolboxenablesruntimetuningbychangingweightsonplantoutputs,weightsonmanipulatedvariables,
manipulatedvariablerates,andtheweightonoverallconstraintsoftening.
DesigningAdaptiveModelPredictiveControllers
WithModelPredictiveControlToolbox,youareabletodesign,simulate,anddeployadaptive
MPCcontrollersforyourplant.YoucanuseanadaptiveMPCcontrollertocontrolanonlinear
plantacrossawideoperatingrangethroughruntimechangestoaninternallinearplant
model.ThetoolboxprovidesafunctionandaSimulinkblockforsimulatingandimplementing
adaptiveMPCcontrollersinMATLABandSimulink,respectively.Thetoolboxalsoprovidesa
builtinlineartimevaryingKalmanfilterwithasymptoticstabilityguaranteeforstateestimation
inadaptivemodelpredictivecontrollers.
Youcancontinuouslyestimatealinearplantmodelatruntimewithonlineparameter
estimation(http://www.mathworks.com/products/sysid/features.html#onlineparameter
estimation)capabilitiesofSystemIdentificationToolbox.Youcanthenusetheestimated
modelforruntimeupdatestoaninternalplantmodelinanadaptiveMPCcontroller.This
approachletsyoudesigncontrollersthatcanadapttochangesinplantdynamicsasthese
changeshappen.
AdaptiveMPCControlofNonlinearChemicalReactorUsingOnlineModelEstimation
(http://www.mathworks.com/help/mpc/examples/adaptivempccontrolofnonlinear
chemicalreactorusingonlinemodelestimation.html)(Example)
AdaptiveMPCControllerblock(red)forcontrollingnonlinearmodelsoverawideoperatingrangethrough
runtimechangestoaninternalplantmodel.UseSystemIdentificationToolboxblockstoestimatealinear
plantmodelatruntime.
http://es.mathworks.com/products/mpc/features.html#designingadaptivemodelpredictivecontrollers 7/10
18/5/2016 FeaturesModelPredictiveControlToolboxMathWorksEspaa
GeneratingExplicitModelPredictiveControllers
ModelPredictiveControlToolboxenablesyoutodesign,simulateanddeployexplicitMPC
controllersforyourplant.Byusingoptimalsolutionsprecomputedoffline,explicitMPC
controllersrequirefewercomputationsthantraditional(implicit)modelpredictivecontrollers
andare,therefore,usefulforapplicationswithfastsampletimes.Youareabletogeneratean
explicitMPCcontrollerfromatraditionalmodelpredictivecontroller,aswellassimplifya
generatedexplicitMPCcontrollerforareducedmemoryfootprint.Thetoolboxalsoprovidesa
functionandaSimulinkblockforsimulatingandimplementingageneratedexplicitmodel
predictivecontrollerinMATLABandSimulink,respectively.
ExplicitMPCControlofDCServomotorwithConstraintonUnmeasuredOutput
(http://www.mathworks.com/help/mpc/examples/explicitmpccontrolofdcservomotor
withconstraintonunmeasuredoutput.html)(Example)
MATLABcode(topleft)forcreatinganexplicitMPCcontroller.Thecreatedcontrollercanbeusedwithan
ExplicitMPCControllerblock(topright,red).
ControllingPlantsOveraRangeofOperatingConditions
YoucanusetheMultipleMPCControllersblock
(http://www.mathworks.com/help/mpc/ref/multiplempccontrollers.html)forcontrollinga
nonlinearSimulinkplantmodeloverawiderangeofoperatingconditions.Withthisblockyou
candesignamodelpredictivecontrollerforeachoperatingpointandswitchbetweenmodel
predictivecontrollersatruntime.TheMultipleMPCControllersblockensuresbumpless
controltransfer(http://www.mathworks.com/help/mpc/examples/switchingcontroller
onlineandofflinewithbumplesstransfer.html)fromonemodelpredictivecontrollerto
another.Youcancreatelinearplantmodelsforcontrollerdesignateachoperatingpointeither
bylinearizingaSimulinkmodelwithSimulinkControlDesign
(http://www.mathworks.com/products/simcontrol/)orbyspecifyingtheplantmodel
directly.Thetoolboxalsoprovidesafunctionforswitchingmultiplemodelpredictivecontrollers
inMATLAB.
http://es.mathworks.com/products/mpc/features.html#designingadaptivemodelpredictivecontrollers 8/10
18/5/2016 FeaturesModelPredictiveControlToolboxMathWorksEspaa
MultipleMPCControllersblock(red)forcontrollingnonlinearmodelsoverawideoperatingrangeusing
multiplemodelpredictivecontrollerswithbumplesscontroltransfer.Withthisblockyoucandesignamodel
predictivecontrollerforeachoperatingpointandswitchbetweenmodelpredictivecontrollersatruntime.
DeployingModelPredictiveControllers
ModelPredictiveControlToolboxprovidestwowaystodeployacontrollerinanapplication.
OnewayistouseSimulinkCoder(http://www.mathworks.com/products/simulinkcoder/)
orSimulinkPLCCoder(http://www.mathworks.com/products/slplccoder/)togenerate
CcodeorIEC611313StructuredText,respectively,fromSimulink
(http://www.mathworks.com/products/simulink/)blocksprovidedwiththetoolbox,and
deploythecodetoasupportedtargetsystemforimplementationorrapidprototyping.The
toolboxprovidesadiagnosticfunctionforestimatingdatamemorysizeusedbydeployed
controlleratruntime.
HardwaresetupforrapidprototypingofamodelpredictivecontrolleronPCcompatiblehardwareusing
SimulinkCoderandSimulinkRealTime.
AnotherwaytodeployacontrollerinanapplicationistouseOPCToolbox
(http://www.mathworks.com/products/opc/)toconnectacontrolleroperatinginMATLAB
directlytoanOPCcompliantsystem.
http://es.mathworks.com/products/mpc/features.html#designingadaptivemodelpredictivecontrollers 9/10
18/5/2016 FeaturesModelPredictiveControlToolboxMathWorksEspaa
(http://www.mathworks.com/videos/system
SystemIdentificationandControlUsingOPCData
identificationandcontrol (http://www.mathworks.com/videos/systemidentification
usingopcdata andcontrolusingopcdata68792.html?type=shadow)
68792.html?type=shadow)
17:58 Improveprocessperformancebydesigningandimplementinga
modelpredictivecontroller.UseOPCToolboxandSystem
IdentificationToolboxtocollecttheinputoutputdataand
createaplantmodel.
TRYORBUY
ContactSales(http://www.mathworks.com/company/aboutus/contact_us/contact_sales.html?
s_iid=desc_sales_MP_tb)
ProductTrial(http://www.mathworks.com/programs/trials/trial_request.html?
prodcode=MP&s_iid=desc_trial_MP_tb)
PricingandLicensing(http://www.mathworks.com/pricinglicensing/index.html?
prodcode=MP&s_iid=desc_pl_MP_tb)
Diseodesistemasdecontrolmultivariablepararobtica
Viewwebinar(http://www.mathworks.com/videos/multivariablecontrolpracticaldesignandrealtime
implementation82040.html?s_iid=desc_rw_MP_cta2)
19942016TheMathWorks,Inc.
http://es.mathworks.com/products/mpc/features.html#designingadaptivemodelpredictivecontrollers 10/10