Spring200310.450 Process Dynamics, Operations, and Control
ProblemSets-5
Inanefforttogetabetterideaofthebehaviorofdynamicsystems,weshouldputthecomputer towork. GettheseMatlabfiles:
sim450-ascriptthatmaintainsrunningarraysofadisturbancevariable,amanipulated
variable,asetpoint,andacontrolledvariable. It alsoplotstheseonscrolling axes,
resemblingamonitorinaplantcontrolroom.
f_moni-afunctionthatsetsupthemonitorwindow
f_dist-afunctionthatsetsupaGUItodeliverthedisturbancevariabletosim450. The disturbancecanbeinputwithaslider,orsuppliedfromasuiteofstandarddisturbances.
Runningsim450asreceivedwillshowchangesyoumaketothedisturbancevariable. Yourjob istoadaptsim450tocalculatethecontrolledandmanipulatedvariables,aswell.
1.Code inafirstorderprocessthatrespondstothedisturbancevariable. Exploreitsresponse forvariousdisturbances. Canyouobservetheexpectedbehaviorofamplitudeandphase shiftwithchangingdisturbancefrequency? Varythegainandtimeconstant. Verifytoyour satisfactionthatyourcodeiscalculatingcorrectly. Submit1or2plotsthatyoufindmost interesting.
2.Doasimilarthingforasecondorderprocess. Varythetimeconstantanddampingfactor. Submitthebestplots.
3.Now,addfeedbackcontrol. Useonlyproportionalcontrol mode atthispoint. Modifyeach oftheprocessesin1.and2. toincludeamanipulatedvariableinputinadditiontothe disturbancevariableinputyouhavealreadyused. Startthesimulationwithzeroerror,and thenintroduceadisturbance. Documenthowthemanipulatedandcontrolledvariables respond.
Note:
BecausethissimulationshouldrespondtoinputfromtheGUI, thesearetobesimple
numericalcalculationsfromeachtimesteptothenext,nottheanalytical solutions, and
nottheMatlabODEsolvers. Appendix FinMarlinishelpfulwiththecoding. The
controllercodingisdiscussedin MarlinSection 11.4.
Also,whilewedoalotofouranalysisindeviationvariables,rememberthatreal
processesdohave realreferencevalues. Therefore,usereferencesthataresomewhere
in themiddleofthevariabledomains-youshouldshowyourcontrolvariabledeviating
from,forexample, 50,notzero.
1