NTNU Gitt: 26.01.00 Fakultet for Elektroteknikk og telekommunikasjon Leveres: 09.02.00 Institutt for elkraftteknikk 1 41070 STABILITET I ELKRAFTSYSTEMER ØVING 13. Obligatorisk dataøving. Formål: - gi en kort innføring i bruk av MATLAB for beregninger, modellering og simulering. - se på modellering av synkronmaskinen, lineær modell. Øvingen kan gjøres i grupper på to. Det leveres da kun én besvarelse. Siden de fleste har PC med MATLAB på det grupperommet de sitter på, er det ikke lagt opp til noen felles veiledning av denne øvingen. Spørsmål om øvingen kan rettes til vit. ass. på tlf. (735)94252, mail: Karstein.Brekke@elkraft.ntnu.no eller ved å stikke innom rom 312 på SEfAS. I øvingstimene onsdag 26.januar blir øving 12 veiledet, som pga av flytting av øvingstimer har ny frist 2. februar. Motivasjon: I øvingsopplegget i Stabilitet er det utover vårsemesteret planlagt gjennomgående bruk av MATLAB. Bakgrunnen for å bruke dette programet er å konkretisere (og visualisere) resultater fra stabilitetsundersøkelser. Denne øvingen har som formål å gi en første innføring i bruk av MATLAB, og dermed legge grunnlaget for arbeid med øvingene hele våren. Oppgave 1. Introduksjon til bruk av MATLAB. Før du setter i gang med deloppgavene, anbefales det at du bruker noen minutter til MATLABs eget introduksjonsprogram. (Skriv intro i MATLAB-vinduet!). 1.1 Legg inn variablene A og b, der A = 12 og b = 5. 34 6 Hvordan får man innholdet i variabelene A og b opp på skjermen? Endre elementet (1,2) i A-matrisen fra 2 til 4. Løs ligningen x = A/b. Hva skjer? 1.2 Plott en sinus-funksjon, fx ( ) = 2 sin( x) for verdier av x i området <0, 2π >. Legg inn tittel på plottet, og tekst på x- og y-aksene.
2 (Tips 1: For å kunne beregne funksjonsverdien over et gitt intervall må du lage en vektor som inneholder verdier for x jevnt spredt over det ønskede området. Dette kan enklest gjøres slik: x = [0:0.1:2*pi] ; Man får nå ut en x-vektor med verdier fra 0 til 2π gitt med intervall på 0.1 mellom hver verdi.) (Tips 2. Hvordan plotte responsen. Kommandoen som brukes heter plot. Generelt: plot(t,y) tegner innholdet i vektoren/matrisen y som funksjon av vektoren t. plot(t,x(:,1))tegner innholdet i kolonne 1 av x-matrisen som funksjon av vektoren t. Det er viktig at de to vektorene som skal plottes inneholder like mange elementer - noe annet vil gi Error: Vectors must be the same lengths. For å tegne flere kurver i samme figur, kan kommandoen hold on benyttes. Plottet som allerede eksisterer holdes fast, og flere kurver kan tegnes i samme figur-rute. hold off slår av holde-funksjonen) (Tips 3. Utskrift av kurveplott. Med kommandoen print <filnavn> lages det en postscript-fil av det kurveplottet som vises på skjermen. print utskrift.ps vil f.eks. generere en ps-fil (utskrift.ps) som lagres på arbeidskatalogen til MATLAB) (Tips 4. Andre nyttige funksjoner. Prøv også ut funksjonene grid, xlabel, ylabel og title i plottene dine! Bruk help-kommandoen for å finne ut hva de gjør og hvordan de fungerer.) 1.3 Brukerne av MATLAB kan definere sine egen funksjoner / program som såkalte m-filer. (Endingen på filnavnet må være.m) Eksempel på bruk av m-filer: % Denne m-fila plotter ut to sinus-kurver % Filen er lagret som plottest.m. % Prosent-tegn angir kommentar-linjer. % m-fila forutsetter at variablene x0 og xf er definert på forhånd. % lager en vektor med tallverdier fra x0 til xf med skritt på 0.01 mellom hver verdi.
3 x = [x0:0.01:xf] ; plot(x,sin(x)) hold on plot(x,sin(x+pi/2)) grid title( Tester bruk av m-filer. ) Kommando-rekken: x0 = 0 xf = 2*pi plottest vil nå gi ut den responsen som er beskrevet i m-fila. Oppgave: Lag ei m-fil som plotter funksjonen f(x) = cos(x) for et gitt intervall. Brukeren skal gi inn start- og stoppverdi for beregningsintervallet. 1.4 Et ligningssystem er gitt ved følgende differensialligninger / ligninger: Legg inn matrisene a, b, c og d ut fra følgende mønster: x = ax + bu La pådraget u 1 være lik 0.1. (Tips 1: Bruk kommandoen lsim til å finne responsen. For å kunne bruke denne må du kjenne matrisene a, b, c og d i ligningssettet over, samt at du trenger en tidsvektor som inneholder de tidx 1 = x 1 + x 2 u 1 x 2 = x 1 y = x 1 x 2 y = cx+ du Simuler responsen til systemet over tidsrommet t = <0,10>.
4 spunkt du vil simulere over og en pådragsvektor som beskriver pådraget over det samme tidsrom.) (Jfr. kap 5.2.8 i Del 1, Systemstabilitet) (Tips 2: Hvordan generere pådragsvektoren. Under er det vist utdrag fra en m-fil der pådragsvektoren lages. Inngangsdata til m-filen er start- (t0) og stopp-tidspunkt (tf) for simuleringen.... % % subrutine som genererer tidsvektoren og paadrags-vektoren % lage tids-vektoren teller = 1; % initialiserer en teller-variabel til bruk senere i rutinen t = [t0:.1:tf] ; % lager vektoren t % finner stoerrelsen paa tids-vektoren [max,dummy] = size(t); % max inneholder nå antall rader i t, mens dummy inneholder antall kolonner. % Bruker en iterasjonsloekke for aa lage paadragsvektoren while teller < (max +1) u(teller,1) = paadrag; % vektorelementet u(i,1) settes lik konst. paadrag. teller = teller + 1; % øker teller-variabelen med 1 end.. Etter denne delrutinen inneholder vektoren u pådraget for systemet over en tidsperiode gitt fra t- vektoren. t- og u-vektoren kan nå brukes videre - f.eks i lsim-kommandoen.)
5 Oppgave 2. Synkronmaskinen, lineær modell. M t - - 1 ------- st a Ω a Ω n - ω N ------ s β Μ e D K 1 Blokkdiagram, linearisert synkronmaskinmodell. I denne oppgaven skal vi bruke MATLAB for å se på endringer i rotorfrekvensen ( Ω a ) og i polhjulsvinkelen ( β) for et aggregat som går i samkjøringsdrift med konstant pådrag, dvs. M t = 0. Denne driftsformen kan en tenke seg for et lite aggregat uten egen turbinregulator. Synkronmaskinen beskrives ved sin enkleste modell: - Fluksene i stator og rotor antas å være konstante - Statorresistansen neglisjeres. Aggregatet går synkront med det ytre nett, dvs. Ω a = Ω n = 0. 2.1 Sett opp (ut fra blokkdiagrammet) tilstandsromsmodellen for synkronmaskinen, x = Ax + Bu. Finn systemets egenverdier uttrykt ved de konstantene som inngår i modellen.
6 2.2 Systemet kan beskrives med følgende enlinjeskjema (det er antatt rund rotor): jx d = 1.0 pu. jx e = 0.3 pu. + + E af,0 U e = 1.0 (Stivt nett) Anta følgende verdier og driftstilstand: ω N T a = 314 rad/sek = 2 sek D = 10 S = 0.85 + j 0.75 pu (effekt overført til det stive nettet) Tegn viserdiagram for denne driftstilstanden. Finn verdien for K 1 for den oppgitte driftstilstanden. Anta at rotorfrekvensen er Ω a = 1.0 pu. 2.3 Ved hjelp av MATLAB kan stabilitetsbetraktninger utføres. I deloppgave 2.1 ble tilstandsromsmodellen for systemet etablert. Bruk MATLAB til å finne systemets egenverdier. Anta K 1 = 1.5. (funksjonen eig vil hjelpe deg på vei...) Vi introduserer et sprang i det ytre nettet ved å sette Ω n = 0.01 pu. Finn responsen til systemet for denne forstyrrelsen, og ta utskrift av kurvene for Ω a (t) og β(t) for denne situasjonen. Foreta systematiske endringer på parametrene T a, D og K 1, og kommenter hvordan disse virker inn på dempning og svingefrekvens. Sammenlign med teorien!