|
Processreglering
- En projektkurs som förenar avancerad
reglerteknik och
gränssnittsdesign
med användning av Matlab och Java.
|
Kursintroduktion
Mikael Sternad
2005-05-27
[
Projekt |
Specifikationer |
Lärare |
Redovisning |
Examination |
Föreläsingar |
Litteratur |
Hemsida
|
Grupper
]
1. Mål och syfte
Namnet Processreglering säger långtifrån allt
om vad denna kurs egentligen innehåller.
Den handlar bara om en del av området processreglering,
men innefattar även mer än reglering;
Ni har framför er en projektkurs
där ni tillämpar mycket från
tidigare kurser.
Speciellt
befästs och fördjupas kunskaperna om
reglerteknik och systemidentifiering.
Ni får dessutom möjlighet att själv konstruera
användargränssnitt, samt att bemästra
Matlab, HTML och Java.
Reglersystemen utvecklas och implementeras helt i Matlab.
Vidare utnyttjar vi en web-läsare för vårt
användargränssnitt, som skrivs i Java.
Ni får erfarenhenhet av att genomföra ett större
arbete i grupp. Arbetsformen ger stort utrymme för både
kreativitet och fördjupning.
Förutom en föreläsningsserie
under perioden mars-april
(se avsnitt 7), samt två laborationer som introducerar datorsystemet,
fortlöper arbetet i projektform, fram till början av juni.
I projektet skall en labprocess, ``Coupled electric drives", tillverkad av
TecQuipment Ltd,
modelleras och styras. Dess dynamik liknar
den som uppstår då en kontinuerlig sträng av
någonting (t.ex valsad plåt eller viratråd) skall
passera en bearbetningsstation.
Hastighet och töjning hos det bearbetade
materialet skall då regleras.
I labprocessen går ett gummiband över tre trissor.
Två av trissorna drivs av likströmsmotorer,
medan den tredje är upphängd i en fjäder.
Bandets hastighet och töjning skall här
styras separat.
Denna till synes harmlösa process visar sig vara en
reglerteknisk utmaning.
Systemet är oscillativt och bandtöjningen
är ganska svårstyrd. Dessutom påverkar
var och en av motor-styrsignalerna båda
de styrda variablerna.
Analys och regulatorsyntes kan ske på många sätt.
För att ge er en bred orientering om olika
metoder, kommer olika grupper att få pröva olika
tillvägagångssätt.
Alla grupper ska dock även implementera PID-regulatorer.
Under arbetets gång redovisar grupperna
sitt arbete för varandra, se avsnitt 5.
De projektvarianter som föreslås i år är:
- Fysikalisk modellering
- Frekvensdomän-identifiering
- Parametrisk identifiering
- Direkt adaptiv reglering
- Indirekt adaptiv reglering
- Flervariabel LQ-reglering.
Dessa projekten beskrivs i avsnitt 2 nedan.
Även andra varianter eller helt andra
tillvägagångssätt kan dock prövas,
efter diskussion med handledarna.
Fältet är fritt för experiment och
nytänkande.
2. Förslag till projekt
Gruppindelning, valda projekt och grupphandledare
SISO-reglering baserad på processidentifiering:
- 1. Frekvensdomän-identifiering.
- Ni tar i denna projektvariant
upp Bodediagram och stegsvar för viktiga
insignal-utsignalkombinationer.
(Se kompendiets del I.) Skalära
modeller av processen studeras sedan med hjälp av Matlab.
Parametriska modeller kan estimeras baserat på
frekvensdomändata.
Samplade regulatorer kan sedan konstrueras, t ex med
lead-lag metoder eller polplacering på polynomform.
En sekvens av successivt snabbare regulatorer konstrueras.
Robustheten som funktion av snabbheten studeras sedan.
Förhoppningsvis existerar regulatorer som
både uppfyller specifikationerna och som är
okänsliga för modelleringsfel.
De implementeras sedan i datorerna.
- 2. Parametrisk identifiering.
-
- Liknar föregående projektvariant.
Tidsdiskreta modeller på polynomform kan uppskattas
ur insignal-utsignaldata
med hjälp av System Identification Toolbox för Matlab.
Minsta kvadrat- eller Maximum Likelihoodmetoden
används.
En sekvens av regulatorer konstrueras sedan och
studeras m.a.p. robustheten, som i projekt 1.
Alternativt så kan fokus på
utvärdering av denna regulator
läggas på en utforskning av
vad som begränsar prestanda för
regulatorer med hög förstärkning: är det
mättnadsfenomen (windup) pga
ställdonsbegränsningar
eller är det
omodellerad dynamik i högfrekvensområdet?
Flervariabel reglering:
- 3. Flervariabel LQ-reglering baserad på
underrums-identifiering.
- De båda styrsignalerna till labprocessen
påverkar, som nämnts, både bandspänning
och bandhastighet.
I ansatserna 1-2 ovan utförs först en statisk
dekomponering för att omforma reglerproblemet
till två styrproblem med skalära insignaler.
En flervariabel linjäkvadratisk styrlag skulle dock
automatiskt kunna ge dekomponering,
dvs frånvaro av korspåverkan mellan
bandhastighet och bandspänning.
Syftet med projektet är att undersöka hurvida
så är fallet.
Modelleringen sker med så kallad underrums-identifiering.
- 4. Fysikalisk modellering.
- En linjär tillståndsmodell för labprocessen
kan ställas upp från fysikaliska samband.
Parametrarna i modellen kan mätas upp med
relativt enkla metoder. (Se
kompendiets del I.)
Det finns intressanta möjligheter att utnyttja systemidentifiering
(baserad på en fysikalisk tillståndsmodell) för
att förbättra
modellen; se Matlab-toolboxen för systemidentifiering.
Sedan kan man antingen konstruera två skalära
regulatorer eller använda en flervariabel regulator.
Fokus på utvärdering av denna regulator
kommer att läggas på utforskning av
vad som begränsar prestanda för
regulatorer med hög förstärkning: är det
mättnadsfenomen (windup) pga ställdonsbegränsningar
eller är det
omodellerad dynamik i högfrekvensområdet?
Adaptiv reglering:
- 5. Direkt adaptiv reglering.
- Regulatorparametrar kan uppdateras on line.
Regulatorn ställer då in sig själv,
genom att lära av sina misstag.
En lämplig kandidat är Clarke-Gawthrops
generaliserade minimalvarians-regulator.
Denna regulator uppdaterar en prediktionsmodell
rekursivt.
Insignalen bestäms så att den predikterade
utsignalen ska överensstämma med den önskade.
- 6. Indirekt adaptiv reglering.
- En processmodell kan skattas on line, med hjälp av rekursiv
identifiering. Baserat på någon metod för
regulatordesign, t.ex. LQG på
polynomform, beräknas automatiskt en ny regulator,
när så behövs.
På så sätt kan regleringen anpassas till
förändringar hos processens dynamik.
3. Specifikationer: vad ska göras?
Modellering sker i Matlab, som kan
köras under
Linux.
Reglerprogrammet skrivs i Matlab, utvidgat med realtids-stöd,
under Linux.
Konstruktion av gränssnittet mot användaren sker
med HTML och Java.
med stöd av en utvecklingsmiljö från
Sun,
One Studio (tidigare benämnd Forte).
Till er hjälp finns ett skelettprogram tillgängligt.
Systemet ska bestå av program som körs
på två datorer och består av
- Ett grafiskt gränssnitt i Java
för operatörs-kommunikationen körs på
den ena datorn
- Reglerprocesser
i Matlab där regulatoralgoritmerna
är implementerade körs i realtid på
den andra datorn.
3.1 Grafiskt gränssnitt
Det grafiska gränssnittet SKALL:
- Presentera ärvärden, börvärden
samt styrsignaler grafiskt.
- Möjliggöra inställning av referenssignaler.
- Möjliggöra byte av arbetspunkt m.h.a.
flexibla ramper.
- Larma och stoppa processen vid
- kraftiga oscillationer
- brott på gummibandet
- brott på fjädern.
- Ge användaren möjlighet att fritt byta
regulatormod mellan
- öppen styrning
- PID-regulator
- avancerad regulator.
Olika regulatortyper skall kunna användas
på de två delsystemen. (Gäller ej flervariabel LQ.)
- Ge möjlighet att visa och förändra
(vissa) parametrar för PID-regulatorn och den avancerade
regulatorn.
- Ge möjlighet att nödstoppa processen.
Det är viktigt att gränssnittet är
överskådligt och tydligt.
Varje funktion ska vara genomtänkt.
Man måste hela tiden tänka på
vilken information den tänkte användaren vill ha.
Några exempel på extrafinesser:
Det grafiska gränssnittet kan förbättras
på många sätt.
Här är några exempel:
- Olika nivåer i gränssnittet. Regulatorn
kan tänkas användas av personer som
efterfrågar olika mängder av information och
kan tänkas använda olika reglage.
En operatör har inte samma krav på
ett gränssnitt som en utvecklingsingenjör.
- Presentation av motorsignaler såväl som av
styrsignaler till dekomponerade delsystem.
- Presentation av andra signaler och parametrar
som gör att man bättre förstår processen.
Pol-nollställesdiagram för processmodeller
ger t.ex. ökad insikt i vad som försiggår
vid indirekt adaptiv reglering.
En användbar finess, speciellt vid indirekt adaptiv reglering,
vore om man direkt kunde påverka den skattade dynamiken.
En metod skulle kunna vara att
tvångsförflytta det skattade systemets poler genom
att klicka på dem i ett pol-nollställesdiagram på
skärmen. Detta skulle underlätta för oss
att hjälpa algoritmen, då den råkar fastna
i lokala minima hos kriteriefunktionen.
- Förbättrade larmrutiner.
Olika nivåer av larm, t.ex.
en nivå som bara larmar för
oscillationer utan att stoppa processen.
- Kvittens och loggning av larm.
- Automatisk bestämning av stigtid.
- Möjlighet att lagra signaler på fil.
- Möjlighet att läsa in referenssignalen
från en yttre källa via AD-omvandlare.
3.2 Reglerprestanda
För regulatorerna gäller följande:
- Övergången mellan olika regulatorer skall
ske stötfritt (bumpless transfer).
- Såväl bandhastighetens som
bandspänningens PID-regulatorer skall vara vältrimmade.
- Alla regulatorer skall ge stabila system med statisk
förstärkning 1, för både
bandhastighetssystemet och bandspänningssystemet.
- Den avancerade regulatorn för bandhastighetssystemet
skall ge en stigtid under 0.25s med en översläng
som är mindre än 20%.
- Den avancerade regulatorn för
bandspänningssystemet skall dämpa
störningar bättre än det öppna systemet.
Specifikationerna ovan
skall uppfyllas vid alla arbetspunkter i området
+-5V för bandhastighets-givarens utsignal och +-2V
för bandspännings-givarens utsignal.
För de avancerade regulatorerna gäller också
att de skall vara så snabba som möjligt.
Hur snabba de kan bli beror på vald projektvariant.
För de flesta regulatoransatser är det möjligt
att komma under en stigtid på 0.20 s för hastighetssystmet.
Den direkta adaptiva regulatorn kan dock ha svårt att
uppnå en stigtid på 0.20 s. För
bandspänningssystemet är det möjligt
för de flesta regulatoransatser att åstadkomma
stigtider under 0.25 s.
3.3 Resultatredovisning
Resultaten av arbetet ska presenteras på
följande sätt:
- Muntligt, i form av tre redovisningar
inför de andra grupperna, se avsnitt 5.
- Skriftligt, i en grupprapport, se avsnitt 6.
-
På nätet,
där en
web-sida
presenterar användargränssnittet.
- Med en demonstration av det färdiga systemet
inför er handledare.
4. Lärare och handledning
Föreläsare och handledare för projektgrupperna:
|
|
E-post: |
Tel.: |
|
Mikael Sternad
|
Kursansvarig
föreläsare , handledare |
ms AT signal.uu.se |
4713078
0704-250 354 |
Ove Ewerlid |
Datoransvarig |
ewerlid AT signal.uu.se |
070-6662363 |
Daniel Aronsson
|
Grupphandledare |
dar AT signal.uu.se |
4713071
070-2687612 |
Jens Karlsson
|
Föreläsare , projektarbetsmetodik |
jens.karlsson AT cc-systems.se |
|
|
5. Etappredovisningar
Vi kommer att ha tre redovisningstillfällen, där
grupperna berättar om
framsteg och problem muntligt (ca 10 min per grupp).
Det är våra fasta handledningstillfällen.
Den första redovisningen sker
10/5 kl 13-15.
Senast den 16 maj ska projektgruppen dessutom ha gjort
en etappredovisning
för sin handledare. Minimikravet är att ha en
fungerande PID-regulator
för labprocessen.
6. Examination
För godkänt resultat fordras
-
att er handledare har godkänt etappredovisning och
slutredovisning av det färdiga systemet.
- att det färdiga användargränssnittet
presenterats på en web-sida.
-
att ni skrivit en grupprapport som blivit godkänd.
Rapporterna skall skrivas på svenska eller engelska.
I projektrapporten
ska en kortfattad beskrivning av processen
och utnyttjad reglerteori ges. Processmodellering, regulatorer,
användargränssnitt, programstruktur och
resultat presenteras utförligt.
Rapporterna skall speciellt diskutera följande typ av resultat:
- Robusthetsanalys, som får utföras olika
beroende på vilken projektvariant som valts.
- Prestanda (stigtid, rampfel, störningsdämpning
etc.) för regulatorerna.
Även utsignaler och motsvarande insignaler
för referens-stegsvar och störnings-stegsvar bör
presenteras, i ett urval av arbetspunkter.
- En jämförelse av reglerprestanda (för
både bandhastighet och bandspänning)
mellan den bästa regulatorn ni tagit fram och
en vältrimmad PID-regulator.
Även en användarmanual
för reglersystemet skall ingå.
Källkoden behöver inte inkluderas,
bifoga däremot en diskett med alla program,
inklusive källkoden.
Källkoden ska ligga i ett arkiv med namnet
``procreg.tar.gz''. Arkivet
kan skapas med kommandot:
tar -zcf procreg.tar.gz < katalognamn >
Det är mycket bra om ni bifogar en förteckning
över problem
och svårigheter ni stött på under
projektets gång.
(Detta påverkar inte betygsättning utan
används för kursförbättring.)
Det färdiga styrsystemet ska ha
redovisats senast den 8 juni 2005.
Övrig redovisning måste lämnas in
senast den 14 juni 2005.
Projekt som redovisas för sent kan högst ge
betyget 3 om inte mycket speciella skäl föreligger.
Betygsättningen baseras framförallt på
grupprapporten, det presenterade regler- och
gränssnittsprogrammet samt etappredovisningarna.
Även förmågan att analysera och
lösa problem under
arbetets gång beaktas dock.
7. Föreläsningsplan,
Processreglering 2005
Uppdaterad 27/5 2005.
|
Dag |
Tid |
Sal |
Innehåll: |
Lärare |
1. |
Må 11/4 |
10-12 |
MK22 |
Allmänt om kursen och projekten. |
MS |
| | | |
Beskrivning av labprocessen. |
|
2. |
Ti 12/4 |
13-15 |
MK23 |
Modellbygge, fysikalisk modellering. |
MS |
| | | |
Frekvensdomän-identifiering. |
|
3. |
Ti 12/4 |
15-17 |
MK23 |
Parametrisk identifiering. |
MS |
4. |
On 13/4 |
15-17 |
P1111 |
Parametrisk identifiering, forts. |
MS |
5. |
To 14/4 |
13-15 |
MK23 |
Projektarbetsmetodik |
JK |
|
6. |
Fr 15/4 |
8-10 |
P1111 |
Rekursiv identifiering. |
MS |
|
7. |
Må 18/4 |
13-15 |
P1212 |
Direkt adaptiv reglering |
MS |
8. |
Ti 19/4 |
10-12 |
P1113 |
PID, parameterstyrning och autotuning
|
MS |
9. |
On 20/4 |
8-10 |
P1113 |
Tillståndsåterkoppling
|
MS |
10. |
To. 21/4 |
13-15 |
P2146 |
LQG-reglering på tillståndsform
|
MS |
11. |
Fr. 22/4 |
13-15 |
MK21 |
Introduktion till skelettprogram och
One Studio,
Javabeans, element i gränssnittet
|
OE |
L1 |
Må 25/4 |
13-17 |
|
Laboration 1 |
OE, DAR |
|
L2 |
Ti 26/4 |
13-17 |
|
Laboration 2 |
OE, DAR |
12. |
To 28/4 |
10-12 |
P1111 |
Polynommetoder för skalär återkoppling.
|
MS |
13 |
To 28/4 |
13-15 |
P1111 |
H2 (LQG)-syntes med polynommetoder
|
MS |
|
14. |
Ti 3/5 |
13-15 |
P1113 |
Indirekt adaptiv reglering.
|
MS |
15 |
On 4/5 |
8-10 |
P1212 |
Robusthet hos reglersystem
|
MS |
|
|
R1 |
Må 16/5 |
15-16 |
K23 |
Gruppredovisning nr 1. |
|
R2 |
Fr 27/5 |
9-10 |
P1212 |
Gruppredovisning nr 2. |
|
R3 |
Ti 7/6 |
10-12 |
K23 |
Gruppredovisning nr 3. |
|
|
8. Litteratur
Kurslitteratur:
-
Sternad M.
Modelling and Control:
Lecture Notes for the
Project Oriented Course in Process Control.
Uppsala 1994, rev. 1997.
-
Ahlén A. och M. Sternad.
Adaptiv reglering. Uppsala 1988.
Materialet (1,2) kan köpas av Mikael Sternad.
Priset är 150 kr.
Referenslitteratur:
-
Åström K. and B. Wittenmark.
Computer Controlled Systems,
Prentice Hall International, third ed. 1997.
- Matlab manuals. The MathWorks Inc.
- Eva Pärt-Enander and Anders Sjöberg.
Användarhandledning för Matlab 5,
TDB, IT-institutionen, Uppsala Universitet.
- Ljung L. and T. Glad (1994). Modelling of Dynamic Systems.
Prentice-Hall, Englewood Cliffs, NJ. Svensk version:
Modellbygge och Simulering, Studentlitteratur, 1991.
[
Projekt |
Specifikationer |
Lärare |
Redovisning |
Examination |
Föreläsingar
|
Hemsida
]
[
Uppsala U. |
Signals and Systems: |
Staff |
Research |
Publications |
Education
]
|