Intitutionen för Tillämpad Fyik och elektronik Umeå Univeritet BE Verion: 02-03-09 TFEA3 Introduktion till SIMULINK Grunderna....2 Tidkontinuerliga Reglerytem. 6 Uppgift.. 3 Appendix A. Symboler 4
Introduktion till SIMULINK 2 Grunderna Starta MATLAB - Välj i förta hand den Matlab om finn lokalt intallerad på din dator i labbet. Välj den katalog (mapp) om du vill arbeta med, t.ex. välj en hemkatalog ( cd h:) En ny modell bildar du i Simulink genom att använda rullgardinmenyn "file" - "new" - "model". Sedan parar du din modell (fil) på den katalog du valt. Starta "Simulink library brower" genom att markera ikonen och dubbelklicka höger muknapp: Nu via:
Introduktion till SIMULINK 3 Dubbelklicka edan på Simulink-ymbolen å få: Grundfunktioner Reglerteknik Divere Ett exempel: Simulera hur nivån (h) i en tank med avlopp (area a) i botten variera med inflödet (q): Tanken area = A, utflöde = w. q h w
Introduktion till SIMULINK 4 Fyiken lagar ger o detta ( olinjära pga rottecknet ) uttryck: dv dt dh = A = q a dt 2 9.8 h = q f ( h) Sambandet kan i blockchemaform bekriva å här: q A*dh/dt dh/dt h /A dt w f(h) Skapa en ny modell och rita upp chemat. Dubbelklick höger muknapp för val av funktion och höger muknapp för att dra förbindninglinjer. Ventil / Gain Integrator h Scop Fcn f(u)
Introduktion till SIMULINK 5 Välj edan att imulera förloppet i 50 ekunder: Med parametrarna A = m 2 och a = 0. m 2 få reultatet genom att dubbelklicka på ocillokopet ("cope" ) :
Introduktion till SIMULINK 6 Att fundera över: Ventilen om öppnar flödet ( "tep" ) aktivera efter ekund. Hur ändra denna tid.? Vilken blir den teoretika lutnivån i tanken?. Verkar det tämma med imuleringen? Modifiera å att ventilen täng efter 5 ekunder och imulering 20 ekunder. Du Bör få foljande reultat: Reglerteknik,Tidkontinuerliga ytem. Antag att vi vill reglera proceen ( + 20) G( ) = 2 ( + 24 + 44) med en proportionell regulator med äg K=2 gånger.
Introduktion till SIMULINK 7 Blocket Workpace och Clock behöv normalt ej vid imuleringar Blocket Scope ger tillräcklig information. Step 2 Gain +20 3 +24 2 +44 Tranfer Fcn Scope y To Workpace t Clock To Workpace Om man direkt vill e tegvaret, använd "cope". Alternativt kan imuleringreultat placera i arbetbiblioteket med blocket "To Workpace". Om du använder Klockan å finn den i Source-biblioteket. Obervera att i To Workpce-blocket kall "ave format" ätta till "matrix". Plott av reultatet kan göra med kommandot plot(t,y) om man gör på Matlab kommandorad. 0.9 0.8 0.7 0.6 0.5 Stegvar 0.4 0.3 0.2 0. 0 0 0.2 0.4 0.6 0.8.2.4.6.8 2
Introduktion till SIMULINK 8 Underök vad om händer om en tranportfördröjning ( "dödtid" ) på t.ex 0.5 ek. införe i proceen: Step 2 Gain +20 3+24 2+44 Tranfer Fcn Tranport Delay Scope y To Workpace t Clock To Workpace.5 0.5 0 0 2 3 4 5 6 7 8 9 0 Underök vad händer med ytemet tabilitet om dödtiden öka. Vilken lutat kan dra om dödtiden inverkan?
Introduktion till SIMULINK 9 Exempel Tankreglering. A. tank. Parametrar: q inflöde [m 3 /] w utflöde [m 3 /] A area [m 2 ] a utlopparea [m 2 ] h nivå [m] q Enl. föregående å kan tankdynamiken bekriva om: w dv dt dh = A = q a dt 2 9.8 h = q f ( h) q w /0.0 /A Integrator h f(u) a*qrt(2*g*u) Antag att vi vill reglera nivån i tanken med hjälp av en pump + en PID-regulator. Pumpen lämnar ett flöde q om en funktion av den pänning u om tillför pumpen. Antag att det gäller att q=k*u, med k = 0-5 [m 3 /]. Tanknivå mät med en nivågivare om anta ha överföringfunktionen =. Tankarea A = 0.000 [m 2 ] Ob ignalbegränaren efter regulatorn. Praktika förhållanden gör att utignalen från PID:en begräna till området 0 till +5 Volt. Hur gör begränningen i imuleringen? - Se block Saturation. Ett SIMULINK-chema rita:
Introduktion till SIMULINK 0 Styrignal till pump Step PID PID Controller Saturation 0^(-5) Pump /0.000 /A Integrator Nivå Scope En imulering med PID-parametrarna K = 4, I=0 ( T I = ) och D=0 (T D =0) ger: Nivågivare ( Se appendix under "Simulink extra" för olika PID-algoritmer. ) Fcn f(u) 4 3.5 3 Styrignal 2.5 2.5 Nivå 0.5 0 0 2 4 6 8 0 2 4 6 8 20 Man oberverar att nivån inte når den önkade ( enhet ) utan tannar på 0.8950. Ett kvartående fel på -0.895 = 0.05 enheter uppträder. Med en PI-regulator ( K=4, I= ) kan nämnda fel eliminera:
Introduktion till SIMULINK 4 3.5 3 2.5 2.5 0.5 0 0 2 4 6 8 0 2 4 6 8 20 B. Två tankar. Antag nu att låter utloppet från tanken leda till en likadan tank: q w q För att inte SIMULINK-chemat kall bli å tort kan man nu definiera en tank om att eparat block genom att markera tanken ( med mupekaren ) och under EDIT välja "Create Subytem". Ett ubytem bilda ( Om Du vill kan Du komplettara Namnet till Subytem Tank).. w Bör-värde= PID PID P=, I= 0-5V 0^(-5) Pump ger Inflöde /0.000 /A Integrator Scope Olinjärt utflöde=a*qrt(2*g*u) Nivågivare Utflöde( a=0^(-5)) f(u) y To Workpace Clock t To Workpace
Introduktion till SIMULINK 2 PID Bör-värde= PID P=, I= 0-5V 0^(-5) Pump ger Inflöde Inflöde Nivå Utflöde Scope Subytem Tank Nivågivare y To Workpace t Clock To Workpace Med copy och pate kan ubytemet återanvända: Nivå PID 0^(-5) Inflöde Nivå Bör-värde= PID P=, I= 0-5V Pump ger Inflöde Utflöde SubytemTank Inflöde Utflöde SubytemTank2 Scope Nivågivare y To Workpace Clock t To Workpace
Introduktion till SIMULINK 3 Antag att övre tanken har en tartnivå på 2 m ( hur täller Du in detta värde? ) Börvärde för reglering av undre tanknivån =. En imulering med P=, I= amt D=0 ger detta reultat: ( Vilka förlopp bekriv av kurvorna?) Räkna fram PID-parametrarna K, Ti och Td. ( Svar: ggr, ek. rep. 0 ek.) Förklara den övre kurvan uteende (e graf nedan). 7 6 5 4 3 2 0 0 0 20 30 40 50 60 70 80 90 00 Tid [] Uppgift Underök vad om händer om utlopparean a i den undre tanken öka från 0-5 [m 2 ] till 2*0-5 [m 2 ]. Förklara! Bekriv ärvärdet i en graf. Redovia Redovia i en kort rapport grafen på ärvärdet (för fallet att utlopparean fördubblade). Samt redovia din Simulink källkod för denna imulering (det grafika blockchemat). Blev tyrignalen till pumpen begränad (mättad) under förloppet? Kopiera in dina två grafer (i ett Word-dokument) med en kort bekrivning på vad imuleringen aver/ger för reultat. Sänd din rapport med e-mail.
Introduktion till SIMULINK 4 Appendix A. Några användbara SIMULINK-ymboler.. Tidkontinuerliga ytem. "Continuou"-biblioteket: + Tranfer Fcn Tranport Delay (-) (+) Zero-Pole Överföringfunktion Dödtid Pol-Nolltälle-funktion "Function and table": f(u) Fcn Matematik funktion, t.ex f(u)=qrt(u) om vi vill generera ett rot-uttryck "Math": Gain Product Förtärkning Multiplikation Jämförare ( ob att ett minutecken mäte in ) "Nonlinear": Saturation Relay Mättning Relä "Signal and ytem": SubSytem [] IC In Out Sub-ytem Begynnelevärde MUX IN-port UT-port
Introduktion till SIMULINK 5 "Sink": (Via eller para ignaler. ) Scope imout To Workpace untitled.mat To File Ocillokop Till arbetbibliotek Till fil "Source": (Signalkällor ) Clock Contant Ramp Random Number Signal Generator Sine Wave Step Simuleringtid "Control Sytem Toolbox": tf(,[ ]) LTI Sytem LTI-block. ( Titta i MATLABS help ) "Simulink Extra" Additional linear: PID PID Controller PID-regulator PID PID Controller (with Approximate Derivative) PID-regulator med modifierad derivata-del.
Introduktion till SIMULINK 6 Obervera att i SIMULINK bekriv PID-algoritmen å här: ( P+I+D) Jämför med läroboken PID-algoritm: D I K U + + = ) ( ) ( ) ( T T K U D I + + =