Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In...

132
FACULTEIT INGENIEURSWETENSCHAPPEN Vakgroep Elektrische Energie, Systemen en Automatisering Voorzitter: Prof. dr. ir. J. Melkebeek Modelleren en Simuleren van een Zonnecentrale door Mathieu Vandenbulcke Promotor: Prof. dr. ir. R. De Keyser Scriptiebegeleiders: Ir. Clara Mihaela Ionescu en Ir. Manuel Galv´ ez-Carrillo Scriptie ingediend tot het behalen van de academische graad van burgerlijk natuurkundig ingenieur optie toegepaste natuurkunde Academiejaar 2005-2006

Transcript of Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In...

Page 1: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

FACULTEIT INGENIEURSWETENSCHAPPEN

VakgroepElektrische Energie, Systemen en Automatisering

Voorzitter: Prof. dr. ir. J. Melkebeek

Modelleren en Simuleren van

een Zonnecentrale

door

Mathieu Vandenbulcke

Promotor:Prof. dr. ir. R. De Keyser

Scriptiebegeleiders:

Ir. Clara Mihaela Ionescuen Ir. Manuel Galvez-Carrillo

Scriptie ingediend tot het behalen van de academische graad vanburgerlijk natuurkundig ingenieur

optie toegepaste natuurkundeAcademiejaar 2005-2006

Page 2: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Voorwoord

In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

kan worden. De bedoeling is dat deze simulator gebruikt wordt bij het testen van geavanceerde

regelaars die de centrale moeten besturen. Hiermee hoop ik een, zij het bescheiden, bijdrage

te leveren tot de ontwikkeling van nieuwe technologieen inzake duurzame energie.

Ik zou hierbij ook iedereen willen bedanken die geholpen heeft bij het verwezenlijken van dit

eindwerk.

In de eerste plaats gaat mijn dank vooral uit naar mijn thesisbeleidster Clara Ionescu, die

altijd klaar stond om te antwoorden op al mijn vragen. Verder wil ik haar ook bedanken voor

haar hulp bij mijn tussentijdse presentaties.

Ook een woord van dank aan mijn promotor Robin De Keyser. Door zijn feedback tijdens de

tussentijdse presentaties wist ik mijn simulator telkens te verbeteren.

Verder zou ik nog mijn tweede thesisbegeleider Manuel Galvez-Carrillo willen bedanken die

mij, wegens zijn doctoraat over dezelfde zonnecentrale in het Plataforma Solar de Almeria,

bijkomende inzichten kon verschaffen.

Daarnaast wil ik ook mijn vriendin Inge bedanken, van wie ik veel steun heb gekregen in deze

laatste stresserende weken. Ik hoop dat ik voor haar volgend jaar hetzelfde kan doen, tijdens

haar thesisjaar.

Ook collega Matthias Marescaux zou ik willen bedanken voor het kritisch nalezen van dit

eindwerk en het helpen de spreekwoordelijke puntjes op de i te zetten.

Dit eindwerk zou er grafisch ook veel minder aantrekkelijk uitgezien hebben mocht het niet

i

Page 3: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

ii

de professionele tekeningen van Jan Moerman bevatten, waarvoor ik hem dan ook wens te

bedanken.

Toelating tot bruikleen

De auteur geeft de toelating deze scriptie voor consultatie beschikbaar te stellen en delen van

de scriptie te kopieren voor persoonlijk gebruik. Elk ander gebruik valt onder de beperkingen

van het auteursrecht, in het bijzonder met betrekking tot de verplichting de bron uitdrukkelijk

te vermelden bij het aanhalen van resultaten uit deze scriptie.

Mathieu Vandenbulcke,

27 mei 2006.

Page 4: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Overzicht

Er valt een toenemende interesse op merken voor milieuvriendelijke energieproductie. Een

mogelijke manier om ’groene energie’ te produceren is via een thermische zonnecentrale.

Deze verwarmt een thermische olie d.m.v. geconcentreerd zonlicht. De hete olie kan daarna

gebruikt worden in verschillende industriele processen waar warmtebronnen nodig zijn, zoals

een ontziltingsinstallatie of een elektriciteitscentrale.

Deze thesis is als volgt opgebouwd: hoofdstuk 1 bevat een korte inleiding. In hoofdstuk 2

wordt een beschrijving gegeven van de zonnecentrale die gemodelleerd wordt. In hoofdstuk

3 wordt de probleemstelling geformuleerd, er treden immers enkele fysische verschijnselen op

die de modellering bemoeilijken. Vanaf hoofdstuk 4 begint de eigenlijke modellering. In dit

hoofdstuk wordt de centrale gemodelleerd via niet-uniforme tijdsmonsters. In deze methode

wordt gebruik gemaakt van een gedistribueerd parameter model. Daarna worden de resultaten

besproken. In hoofdstuk 5 wordt de tweede methode beschreven die gebruikt wordt om de

centrale te modelleren. Deze methode werkt via Proper Orthogonal Decomposition (POD).

Eerst wordt een kleine theoretische uiteenzetting gegeven over de POD-methode en vervolgens

wordt de methode toegepast op de centrale. Daarna worden opnieuw de resultaten besproken.

In hoofdstuk 6 wordt tot slot een korte besluitvorming geformuleerd.

iii

Page 5: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Extended Abstract

iv

Page 6: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

v

Modelling and simulating of a solar power plantMathieu Vandenbulcke

Supervisor(s): Prof. dr. ir. Robin De Keyser, ir. Clara Ionescu, ir. Manuel Galvez-Carrillo

Abstract— This article explains how a simulator is constructed for thesolar power plant located at Plataforma Solar de Alemeria. Two techni-ques are explained. The first one using non-uniform sampling time and thesecond one using Proper Orthogonal Decomposition (POD).

Keywords—Solar power plant, non-uniform sampling time, POD.

I. INTRODUCTION

IT is obvious that fossile fuels won’t be available forever andthat there is an increasing need for renewable energy sources.

A source that has been and will be around for quite some timeis the sun. Solar irradiation can be converted to useful energyin different ways. The method described in this thesis uses pa-rabolic mirrors to concentrate sunlight on a system of parallelpipes. The thermal oil that flows through these pipes gets heatedexstensively and is fed to the top of a storage tank. The heat thatis present in the oil can be used in different industrial processeswhere there’s a need for heat sources. E.g. in an electrical powerplant where steam has to be generated or in a desalination plant.

II. PLANT DESCRIPTION

The plant is located at Plataforma Solar de Almeria, in theSouth-East of Spain and can basically be devided into three lar-ge sections. The first section feeds oil from the bottom of thestorage tank to the system of parallel loops and is called the’feeding section’. The second part of the plant consists of tenparallel loops that collect the sunlight and heat the oil. This sec-tion will be called the ’heating section’. The last section returnsthe hot oil from the ’heating section’ to the top of the storagetank and is called the ’return section’.

Fig. 1. Schematical drawing of the plant.

The oil flow is delivered by a pump situated in the feedingsection. The objective of the plant is to extract as much energy

M. Vandenbulcke is a student of Ghent University (UGent), Gent, Belgium.E-mail: mathieu [email protected].

from the sunlight as possible and to maintain the temperature ofthe oil that flows into the storage tank at a desired level. In orderto do this, there is only one control variable: the flow of the oil.The influence of the flow on the temperature of the oil is simple:a higher flow will lead to a lower temperature, because the oilhas got less time to get heated by the sunlight.

III. NON-UNIFORM TIME SAMPLES

The first methode uses non-uniform time samples [1] to simu-late the plant. This is inspired by the fact that the flow of the oilcan vary substantially during operation. Equation 1 describesthe heat received and stored into the metal tubes, while equation2 describes the amount of heat received by the oil:

ρmCmAm∂Tm

∂t= εDIrr(t)−HlG [Tm − Ta]

−LHt [Tm − Tf ] (1)

ρfCfAf∂Tf

∂t+ ρfCfq(t)

∂Tf

∂x= LHt [Tm − Tf ] (2)

These two equations only hold for the heating section. Thefeeding and return section can be regarded as a pure time delay:these sections are thoroughly insulated and heat losses can beneglected.

Fig. 2. Results for the temperature at the end of the returnsection for the 15thof July.

The results obtained with this first simulator are quite good.The error normally stays below 5%, except during the first mo-ments and when the flow is rather low. The first kind of errorsare due to the fact that the initial temperature distribution alongthe system of parallel pipes is unknown. The second error isprobably caused by an inaccurate heat transfer coefficient Ht.

Page 7: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

viIV. POD-METHOD

The second simulator is constructed using the POD-method[2], [3]. This method produces a number of orthonormal ba-se functions φi(x) which represent the spatial distribution of animportant parameter in the system, in this case the temperature.These base functions can be derived from measured or calcula-ted data. To describe the variations in time, each base function ismultiplied by its own time-varying coefficient ai(t). In this waythe time- and place dependant temperature of the system can be

described by the approximation :n∑

i=1

ai(t)φi(x). The advanta-

ge of using the POD-method is the fact that only a low numberof base functions φi(x) needs to be considered to describe thesystem. To find the base functions φi(x), data concerning thespatial distribution of temperature along the system, is needed.Since this data is not available, it needs to be calculated. In or-der to do is, a state-space model of the system is constructed[4]. The state-space model is derived from a first order partialdifferential equation which describes the conservation of energyin the plant:

ρfcfDT (x, t)

Dt= S(x, t) (3)

where DDt = ∂

∂t + vx(t) ∂∂x is a substantial derivative and

S(x, t) denotes a time and place depandent heat source, in thiscase the solar irradiation. This can be cast into a state spacemodel [5]:

T(t) = A−1(t)T(t− 1) + A−1(t)u(t) (4)

T(t) refers to the temperature distribution of the system attime t and u(t) is a vector with input signals. Substituting T by

its decompositionn∑

i=1

ai(t)φi(x) = Φna(t) leads to:

Φna(t) = A−1(t)Φna(t− 1) + A−1(t)u(t) (5)

Projection of equation 5 on the orthonormal set of base func-tions Φn results in:

a(t) = ΦnTA−1(t)Φna(t− 1) + Φn

TA−1(t)u(t) (6)

Equation 6 gives a simple expression for the time varyingcoefficients ai(t). The result of this method can be seen in fi-gures 3 and 4. The results for the 15th of July look very good,even for low values of the flow. The results for the 16th of Julyon the other hand are less accurate. Only in the second half ofthe experiment there is a match between the real and simulateddata. A possible explanation for this could be the lack of a flowdependant heat transfer coefficient Ht in equation 3, which waspresent in the first simulator.

Fig. 3. Results for the temperature at the end of the returnsection for the 15thof July using POD.

Fig. 4. Results for the temperature at the end of the returnsection for the 16thof July using POD.

V. CONCLUSIONS

This article has presented two techniques for obtaining a mo-del of the solar power plant located at Plataforma Solar de Aler-mia. For the first technique some improvements could be maderegarding the heat transfer coefficient Ht. The second techni-que, using the POD-method, is substantially faster than the firstone. For the second technique, the use of a flow dependant heattransfer coefficient should lead to better results.

REFERENCES

[1] R. N. Silva, L. M. Rato, and J.M. Lemos. Observer based time warpedcontrol of distributed collector solar fields. Improving human potential pro-gramma, proceedings of the 2nd users workshop, pages 103–110, February2002.

[2] Anindya Chatterjee. An introduction to proper orthogonal decomposition,December 1999.

[3] Patricia Astrid. Reduction of Process Simulation Models: a proper ortho-gonal decomposition approach. PhD thesis, Technische Universiteit Eind-hoven, November 2004.

[4] Oscar Mauricio Agudelo Manozca. Control of the temperature profile of anone-dimensional bar using a pod approach. presentation, January 2006.

[5] Yang, Cao, Chung, and Morris. Applied Numerical Methods Using Matlab.John Wiley & Sons Inc, 2005.

Page 8: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Inhoudsopgave

Voorwoord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i

Overzicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii

Extended Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv

1 Inleiding 1

2 Beschrijving van de centrale 7

3 Probleemstelling 14

4 Modelleren via niet-uniforme tijdsmonsters 16

4.1 Vergelijking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

4.1.1 Eigenschappen van de olie . . . . . . . . . . . . . . . . . . . . . . . . . 18

4.1.2 Bepalen van Ht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

4.1.3 Onderstellingen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4.2 Verdelen in secties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

4.2.1 Toevoersectie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

4.2.2 Verhittingssectie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4.2.3 Afvoersectie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

4.3 Niet-uniforme tijdsmonsters . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

4.3.1 Berekening van tk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

4.4 Implementatie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4.4.1 Toevoersectie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.4.2 Verhittingssectie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.4.3 Afvoersectie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

vii

Page 9: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Inhoudsopgave viii

4.4.4 Beginwaarden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

4.5 Resultaten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

4.5.1 15 juli: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

4.5.2 16 juli: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.5.3 28 juli: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

4.5.4 Conclusies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

4.6 Experimentele bepaling van de lengte van de afvoersectie. . . . . . . . . . . . 46

5 Methode II: Proper Orthogonal Decomposition 52

5.1 Theorie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

5.1.1 Bepalen van de basisfuncties . . . . . . . . . . . . . . . . . . . . . . . 54

5.1.2 Bepalen van de tijdsafhankelijke coefficienten . . . . . . . . . . . . . . 57

5.2 Praktijk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

5.2.1 Vergelijking voor het temperatuursprofiel . . . . . . . . . . . . . . . . 60

5.2.2 Opstellen van het toestandsmodel . . . . . . . . . . . . . . . . . . . . 62

5.2.3 Berekenen van de basisfuncties . . . . . . . . . . . . . . . . . . . . . . 64

5.2.4 Bepalen van de tijdsafhankelijk coefficienten . . . . . . . . . . . . . . . 66

5.2.5 Uitbreiding naar de volledige centrale . . . . . . . . . . . . . . . . . . 67

5.3 Resultaten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

5.3.1 15 juli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

5.3.2 16 juli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

5.3.3 28 juli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

5.3.4 Conclusies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

6 Besluit 73

A Dode tijden 75

B Wiskundige bijlage 78

B.1 Definities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

B.2 Oplossing extremumprobleem . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Page 10: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Inhoudsopgave ix

C Figuren 81

C.1 Figuren bij hoofdstuk 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

C.2 Figuren bij hoofdstuk 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

D Matlabcode 100

Bibliografie 121

Page 11: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 1

Inleiding

Het tijdperk waarin onze energievoorzieningen tegemoet gekomen worden door hoofdzakelijk

fossiele brandstoffen lijkt genoodzaakt te eindigen. Hiervoor vallen twee redenen te onder-

scheiden: vooreerst is de voorraad fossiele brandstoffen eindig. De tijden waarin per jaar meer

olie werd gevonden dan geconsumeerd zijn over. Als het huidige verbruikerspeil aanhoudt,

zal er voldoende olie zijn tot in 2050. Voor aardgas zijn de vooruitzichten iets beter, geschat

wordt dat er nog 75 jaar aardgas beschikbaar zal zijn. Steenkool is nog het meest voorhanden.

Daar wordt gesproken over voorraden die minstens 200 jaar aanspreekbaar zijn. Een tweede

oorzaak is de milieu-impact. Begrippen als ’het broeikaseffect’, ’C02-uitstoot’ en ’zure regen’

worden allemaal verbonden met het verbruik van fossiele brandstoffen en zijn helemaal niet

wenselijk.

Naast de conventionele energiecentrales bestaan er ook nog kerncentrales, die anno 2006 goed

zijn voor 55% van stroomvoorziening in Belgie. Het controversiele karakter van kernener-

gie leidt ertoe dat het bouwen van nieuwe kerncentrales op veel weerstand stuit. Nieuwe,

alternatieve en vooral duurzame energiebronnen lijken dus een noodzaak.

Veel wordt verwacht van kernfusie. Kernfusie heeft enkele ontegensprekelijke voordelen te-

genover fossiele brandstoffen en kernfissie 1. Zo worden geen milieu-onvriendelijke gassen

geproduceerd, zoals CO2. Een kernfusiereactor brengt geen grote gevaren met zich mee, wat

niet kan gezegd worden van kernfissiecentrales. Zelfs bij zware ongevallen is er weinig kans1kernfissie of kernsplitsing, het fysisch proces in de huidige kerncentrales, waarbij energie wordt vrijgemaakt

door het splitsen van zware atomen

1

Page 12: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 1. Inleiding 2

op ernstige schade. Daarenboven geldt: de grondstoffen voor een fusiereactor zijn praktisch

overal ter wereld en in overvloed beschikbaar. Zo kan deuterium (waterstof, maar met een

neutron: 2H) gevonden worden in water en lithium (6Li) in gesteenten. Dit zorgt ervoor

dat geografische conflicten, ontstaan door het feit dat sommige landen bijna alle grondstof-

fen bezitten om energie te produceren en andere niet, in de toekomst bijna niet meer zullen

voorkomen. Maar dit is echter toekomstmuziek, gezien commerciele kernfusiereactoren ten

vroegste over 40 jaar beschikbaar zullen zijn. En dit cijfer is nog vrij optimistisch.

Om de periode tussen vandaag en het kernfusietijdperk te overbruggen is er zeker nog nood

aan alternatieve energiebronnen. Hiernaar werd in het verleden reeds veel onderzoek verricht.

Er kunnen drie grote groepen onderscheiden worden: zonne-energie, windenergie (eigenlijk

ook een gevolg van het zonlicht) en hydro-energie. De laatste groep doelt vooral op stuw-

dammen. In dit geval is de energie eigenlijk ook afkomstig van het zonlicht, denk maar aan

de watercyclus. Deze stuwdammen hebben als nadeel dat ze een grote oppervlakte in beslag

nemen. Vele valleien werden reeds getransformeerd tot meren om de turbines in de stuw-

dammen te laten draaien. Het principe van een hydro-centrale is vrij duidelijk: de potentiele

energie van water op een hoger punt wordt omgezet naar kinetische energie door het naar een

lager punt te laten lopen. De kinetische energie die hierbij ontstaat wordt gebruikt om een

turbine te laten draaien en zodus elektriciteit te produceren.

Ook de wind kan omgezet worden in elektrisch energie. Hiervoor worden hoge windturbi-

nes gebruikt. Deze manier van energie-opwekking krijgt de laatste tijd veel belangstelling.

Denk maar aan de vele windmolenparken die gebouwd worden2. Het geınstalleerd vermogen

aan windenergie bedroeg eind 2005 167 MW in Belgie (bron: the European Wind Energy

Association, www.ewea.org).

De laatste groep betreft de energie geproduceerd uit zonlicht. Zonlicht kan enerzijds meteen

omgezet worden in elektriciteit. Dit is het geval bij fotovoltaısche zonnecellen. Deze cellen

worden hoofdzakelijk gemaakt uit halfgeleidermaterialen zoals silicium en germanium. Voor-

beelden hiervan zijn cellen met kristallijn silicium. Het rendement van deze cellen blijkt te

stagneren rond de 16 a 17 %. Dit betekent dat slechts 16 a 17% van het invallende zonlicht

kan omgezet worden in elektriciteit. Daarnaast heb je ook de dunne film cellen. Deze bestaan2Kluizendok in haven van Gent, Villers-le-Bouillet en in de toekomst op de fameuze Thorntonbank

Page 13: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 1. Inleiding 3

uit amorf silicium dat gedeponeerd wordt op een substraat. Hun voordeel is dat de productie

veel goedkoper is, gezien het bestaan van goedkope depositie technieken. Het rendenment van

deze cellen ligt echter lager dan die van de kristallijne cellen en bedraagt 6-10%. Een recentere

vorm van fotovoltaısche cellen maakt geen gebruik meer van halfgeleiders maar van polymeren.

Deze polymere cellen bestaan uit kunststoffen die zich gedragen als halfgeleiders. Aangezien

deze technologie nog in zijn kinderschoenen staat, liggen de rendementen ook eerder laag:

2-3%. Het voordeel van deze technologie is dat de energie gegenereerd in deze fotovoltaısche

cellen rechtstreeks gebruikt kan worden of gestockeerd kan worden in batterijen.

Anderzijds kan het zonlicht in een eerste stadium aangewend worden als warmtebron. In

dit geval kan de geproduceerde warmte gebruikt worden om, via de creatie van stoom, een

generator aan te drijven en zo elektriciteit te produceren. De warmte kan ook opgeslagen

worden in een materiaal dat het een tijdlang kan vasthouden. Zo kan de energie ook aangewend

worden als er even geen zon is. Dit is het geval voor de zonnecentrale die besproken wordt in

dit eindwerk. In dergelijke zonnecentrales wordt olie opgewarmd via zonlicht en gestockeerd in

een grote opslagtank. De energie die vervat zit in de warmte van de olie kan later bijvoorbeeld

aangewend worden voor het creeren van stoom.

Dit eindwerk past in het kader van het onderzoek over dergelijke zonnecentrales. Er wordt

getracht de energie-extractie uit het zonlicht zo optimaal mogelijk te laten verlopen. Verder

wordt er ook geeist dat de temperatuur van de olie gecontroleerd kan worden, om o.a. over-

verhitting te voorkomen. Het controleren van de olietemperatuur is echter niet evident: de

olie warmt immers sneller op onder een wolkeloze hemel dan onder een bewolkte hemel. Om

toch een vooropgestelde temperatuur te krijgen, moet de olie rondgepompt worden met een

varierend debiet: sneller als er veel zon is, trager als er weinig zon is. Dit vereist een geavan-

ceerd regelsysteem en om dit regelsysteem te testen is er nood aan een computermodel dat

de echte centrale simuleert. Het genereren van een dergelijk computermodel is het eigenlijke

onderwerp van deze thesis.

Om dit computermodel te schrijven, is er nood aan een wiskundig model dat het fysisch proces

beschrijft. Dit wiskundig model kan op drie verschillende manieren bekomen worden. Een

eerste manier is via een theoretische analyse. Deze methode vertrekt van de drie bekende

behoudswetten: behoud van massa, behoud van impuls en behoud van energie. Deze drie

Page 14: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 1. Inleiding 4

wetten worden toegepast op het proces wat leidt tot een aantal differentiaalvergelijkingen. Het

voordeel van deze methode is dat het wiskundige model kan gevonden worden, nog voor het

fysisch systeem in werkelijkheid bestaat. Zo kunnen reeds simulaties uitgevoerd worden van

een centrale, nog voor ze gebouwd is. Een tweede voordeel van een theoretische analyse is dat

het zogenaamde ’white models’ betreft. De term ’white’ slaat op het feit dat alle parameters

in de vergelijking een duidelijke fysische betekenis hebben. De bekomen vergelijking schept

een duidelijk fysisch inzicht in het proces. Een nadeel van deze methode is dan ook dat er heel

wat fysisch inzicht nodig is om het wiskundig model op te stellen. Zo moet door de ingenieur

besloten worden welke de belangrijkste fysische verschijnselen zijn. Er kan geen rekening

gehouden worden met elk fysisch proces dat optreedt. Dit zou immers tot een te complex

model leiden. Er moet dus ergens een compromis gevonden worden tussen nauwkeurigheid

en efficientie.

Een tweede manier is via experimentele analyse. In deze analyse wordt gebruik gemaakt

van de informatie die in het in- en uitgangssignaal van het proces zit. Deze informatie, meestal

onder de vorm van een Bodeplot, wordt opgemeten en onderworpen aan een identificatiepro-

cedure, wat leidt tot een wiskundig model van het systeem. Dit identificatieproces kan op

twee verschillende manieren gebeuren. Heeft men reeds een idee over de vorm van de vergelij-

king, dan kan een parametrische identificatie toegepast worden. Enkele populaire voorbeelden

van parametrische identificatie algoritmen zijn: de least squares methode, instrumental va-

riables methode en de prediction error methode. Hierbij wordt het model vooropgesteld en

worden de waarden van de parameters gevonden via identificatie. Is de structuur van het

wiskundig model daarentegen niet op voorhand beschikbaar, dan dient men over te stappen

op niet-parametrische identificatie. Enkele voorbeelden van niet-parametrische identificatie

algoritmen zijn: transient analyse, frequentie analyse, correlatie analyse en spectraalanalyse.

Het grote voordeel van een experimentele analyse is dat er eigenlijk niets hoeft gekend te zijn

over het fysisch proces. Leg een ingang aan aan het systeem, registreer wat eruit komt en er

kan een model opgesteld worden. Wat er zich in het systeem afspeelt, hoeft niet perse ge-

kend te zijn. Vandaar dat de verzamelnaam ’black models’ hiervoor frequent gebruikt wordt.

Identificatie procedures kunnen niet enkel gebruikt worden voor het opstellen van een volledig

model, maar ook voor het schatten van ongekende parameters in een model. Het nadeel is

dat er tijdrovende tests moeten uitgevoerd worden.

Page 15: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 1. Inleiding 5

Een derde manier om een wiskundige vergelijking voor een fysisch proces op te stellen maakt

gebruik van een combinatie van de vorige twee methodes, theoretische en experimentele ana-

lyse. Hier kan bijvoorbeeld een wiskundig model vooropgesteld worden op basis van een

theoretische analyse, maar waarvan geen uitdrukking gevonden kan worden voor alle fysische

parameters. Een experimentele analyse kan dan aangewend worden om de missende parame-

ters te schatten. Gezien de modellen gevonden via deze methode gebruik maken van zowel de

’white model’ als van de ’black model’ filosofie, worden ze om begrijpelijke redenen ook wel

’grey models’ genoemd.

Zoals reeds gezegd wordt in dit eindwerk een model opgesteld van een zonnecentrale. Gezien

de fysische processen die zich hier in afspelen goed gekend zijn, wordt begonnen met een

theoretische analyse. Er zijn echter enkele parameters waaraan niet onmiddellijk een waarde

kan toegekend worden. Om deze te schatten wordt gebruik gemaakt van een experimentele

analyse. Vandaar dat het model opgesteld in deze thesis een ’grey model’ is.

In de literatuur werden reeds heel wat modellen voor de zonnecentrale voorgesteld. Over het

algemeen kunnen al deze modellen bestempeld worden als een ’black model’ of als een ’grey

model’. De ’black models’ kunnen verder nog opgedeeld worden in zij die bekomen werden

via parametrische en zij die bekomen werden via niet-parametrische identificatie. Bij degene

bekomen via parametrische identificatie is reeds een en ander gekend over de structuur van

het wiskundig model. Sommige van deze voorgestelde modellen beschrijven de fysische wer-

king van de centrale met slechts een enkele vergelijking. Deze worden ook geconcentreerde

parameter modellen genoemd. Voorbeelden hiervan zijn te vinden in [1]. Andere modellen

delen de centrale op in verschillende subsecties en definieren voor elke subsectie een aparte

vergelijking. Deze modellen worden gedistribueerde parameter modellen genoemd. Voorbeel-

den hiervan zijn te vinden in [1],[2],[3] en [4]. In beide gevallen komt het erop neer de waarde

van de parameters te vinden via identificatie methodes.

Bij de modellen bekomen via niet-parametrische identificatie gaat men ervan uit dat niets

gekend is over de werking van het systeem. Hier worden enkel de in- en uitgang van het

systeem bekeken. Een niet parametrische identificatietheorie, die men voor de zonnecentrale

placht te gebruiken, is die van de artificiele neurale netwerken (ANN). Hier wordt een verband

gelegd tussen in- en uitgang, geınspireerd op de werking van biologische neurale netwerken.

Page 16: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 1. Inleiding 6

Net zoals mensen en dieren bepaalde gedragspatronen moeten aanleren, moet ook het arti-

ficiele neurale netwerk dit doen. Het programma moet met andere woorden een leerproces

ondergaan. Hiervoor wordt beroep gedaan op de data gegenereerd door het werkelijke proces.

Voorbeelden zijn te vinden in [5] en [6].

Een andere methode van niet-parametrische identificatie betreft de modellen opgesteld via

zogenaamde ’fuzzy logic’. Zoals de naam laat vermoeden wordt er in deze algoritmen geen

gebruik gemaakt van strikte binaire waarden zoals ’goed-fout’ en ’1-0’, maar van meer ’troe-

bele’ of ’fuzzy’ waarheden zoals ’relatief goed’, ’normaal’, ’eerder slecht’, enz. Voorbeelden

hiervan zijn te vinden in [7].

Een derde methode van niet-parametrische identificatie heet Proper Orthogonal Decomposi-

tion of kortweg POD. Deze methode werkt aan de hand van orthogonale basisfuncties, die

worden afgeleid uit gemeten of berekende data. Deze basisfuncties geven de ruimtelijke dis-

tributie van een bepaalde fysische grootheid, zoals bijvoorbeeld de temperatuur, doorheen

het proces, weer. Om de tijdsafhankelijkheid van de fysische grootheid te berekenen, wordt

het oorspronkelijke fysische proces, over het algemeen beschreven door een differentiaalverge-

lijking, geprojecteerd op deze basisfuncties volgens de Galerkin projectie. Uit deze projectie

volgen dan een aantal tijdsafhankelijke coefficienten die de variatie van de basisfuncties in

de tijd weergeven. Deze methode is zeer gelijkend op Fourieranalyse, met dat verschil dat

de hierbesproken basisfuncties over het algemeen geen sinussen of cosinussen zijn. Het grote

voordeel van POD is dat het aantal basisfuncties meestal heel beperkt is (orde 10), waardoor

de simulatie weinig berekeningen vergt [8],[9],[10],[11].

Verder kan er ook nog een onderscheid gemaakt worden tussen algoritmen die gebruik maken

van uniforme tijdsmonsters en algoritmen die gebruik maken van niet-uniforme tijdsmonsters.

Het feit dat het debiet varieert in de tijd heeft sommigen ertoe aangezet niet-uniforme tijds-

monsters te gebruiken. Het toepassen ervan leidt tot een zeer eenvoudige implementatie van

het varierend debiet. Een voorbeeld van het gebruik van niet-uniforme tijdsmonsters is te

vinden in [12].

Page 17: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 2

Beschrijving van de centrale

De zonnecentrale bevindt zich op het Plataforma Solar de Almerıa (PSA1), het Europees

centrum voor zonne-energie applicaties in het zuidoosten van Spanje. Op deze site bevinden

zich meerdere centrales (zie figuur 2.1), waarvan het ACUREX-veld onderwerp vormt van dit

eindwerk. Dit veld is een zogenaamd gedistribueerd collector systeem (distributed collector

system of DCS). Dit betekent dat de zonne-energie op verschillende plaatsen wordt omgezet

in thermische energie. Daarnaast bestaan ook systemen waarbij de omzetting op slechts een

plaats gebeurt. Dergelijke systemen noemt men centrale ontvanger systemen (central receiver

system of CRS).

Figuur 2.1: Overzicht van PSA.

1Meer info over PSA op www.psa.es

7

Page 18: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 2. Beschrijving van de centrale 8

De bedoeling van de zonnecentrale is olie op te warmen door middel van zonlicht. De ver-

warmde olie wordt gestockeerd in een grote opslagtank en kan gebruikt worden in verschillende

industriele processen, waar veel gebruik gemaakt wordt van warmtebronnen. Twee veel geci-

teerde voorbeelden zijn: het creeren van stoom om elektriciteit op te wekken en energietoevoer

in een ontziltingsinstallatie.

Om het zonlicht te collecteren wordt op het ACUREX-veld gebruik gemaakt van parabolische

spiegels (figuur 2.2). Hun parabolisch profiel zorgt ervoor dat het invallende licht geconcen-

treerd wordt in het brandpunt. Daar de zon overdag van oost naar west beweegt, hebben

de spiegels een rotationele vrijheidsgraad om tijdens de operationele fase steeds naar de zon

gericht te zijn (zie figuur 2.3). Een eenvoudig systeem van twee fotodiodes met daartussen

een klein plaatje zorgt hiervoor, zoals te zien is in figuur 2.4. Is de spiegel niet volledig naar

de zon gericht dan werpt het plaatje zijn schaduw op een van de fotodiodes, die daardoor

minder spanning zal produceren. Hierdoor genereren de diodes een verschillende spanning en

met dit spanningsverschil kan de positie gecorrigeerd worden. Deze werkingsfase wordt de

’Track toestand’ genoemd. Om oververhitting te vermijden is het ook mogelijk de spiegels

enkele graden van de zon weg te richten (Desteer toestand). Op het eind van elke dag of bij

serieuze defecten wordt de ’Stow toestand’ ingenomen. Hierbij worden de spiegels volledig

naar de grond gericht.

Figuur 2.2: Parabolische spiegels zorgen voor concentratie van het zonlicht.

Page 19: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 2. Beschrijving van de centrale 9

Figuur 2.3: De spiegels volgen de zon bij haar beweging van oost naar west.

Figuur 2.4: Fotodiodes met daartussen een plaatje.

In het brandpunt van de parabolische spiegels loopt, evenwijdig met de as van de spiegels,

een metalen pijpleiding omhuld door een doorzichtige, glazen buis. Deze glazen buis isoleert

de metalen leiding van de wind. Daar het glas doorzichtig is wordt het zonlicht nauwelijks

belemmerd.

Er zijn in totaal 20 rijen spiegels, waarvan er in figuur 2.2 een te zien is. Deze 20 rijen

vormen samen 10 parallelle lussen of ’loops’ met elk een lengte van 172 m. Elke van deze

loops bevat 48 parabolische spiegels en elke spiegel heeft een nuttige oppervlakte of apertuur

van 1, 83 × 3, 05 m2. Het totale collectoroppervlak bedraagt bijgevolg 10 × 48 × 3, 05 m ×

1, 83 m ≈ 2680 m2. De buitendiameter van de metalen pijpleiding is 3,18 cm, wat leidt tot

een concentratiefactor van het zonlicht van 1,83m0,0318m ≈ 57, 5. Deze concentratiefactor zorgt

Page 20: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 2. Beschrijving van de centrale 10

ervoor dat de metalen pijpleiding in het brandpunt van de spiegels sterk verhit wordt. Door

de leiding stroomt een olie die wordt opgewarmd door de verhitte pijpleiding. Aan het begin

van elke loop bevindt zich een klep die de loop kan afsluiten in geval van een noodsituatie

zoals een lek. De olie wordt voortgestuwd door een pomp (zie figuur 2.5), waarvan het debiet

geregeld kan worden. Om veiligheidsredenen is dit debiet beperkt tussen 2 l/s en 10 l/s. In

figuur 2.5 is er ook een buffertank en een driewegenklep te zien. Deze laatste kan aangesproken

worden om de olie enkele malen door het collectorsysteem te laten lopen, tot ze een voldoend

hoge temperatuur bereikt heeft om de opslagtank te betreden.

Figuur 2.5: Schematisch overzicht van de zonnecentrale.

Het volledige buizensysteem kan onderverdeeld worden in drie secties (figuur 2.6). In de

eerste sectie wordt olie vanuit de bodem van de opslagtank naar het collectorveld gepompt.

Deze leiding heet de toevoersectie en is geısoleerd om het warmteverlies te beperken. In de

tweede sectie wordt de leiding gesplitst in tien parallelle leidingen of loops. Elke loop is, zoals

gezegd, voorzien van collectoren die de olie opwarmen. Dit deel wordt de verhittingssectie

genoemd. Om de warme olie terug naar de top van de opslagtank te brengen wordt gebruik

gemaakt van een derde leiding, de afvoersectie, die ook geısoleerd is. De centrale heeft een

thermisch piekvermogen van zo’n 1, 3 MWt bij invallend zonlicht van 900 W/m2. Dagelijks

produceert de centrale gemiddeld een 6, 5 MWht aan thermische energie. Het volume van

de opslagtank (zie figuur 2.7) bedraagt 140 m3 waardoor er bij een olietemperatuur van zo’n

Page 21: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 2. Beschrijving van de centrale 11

290°C ongeveer 2, 3 MWh kan in opgeslagen worden. Door de stratificatie-eigenschappen2

van de opslagtank en het thermoclinisch effect3 van de olie kan de warme temperatuur van

de bovenste olielagen verschillende dagen behouden worden. De onderverdeling in drie secties

wordt meer gedetailleerd besproken in hoofdstuk 4.

Figuur 2.6: Onderverdeling in toevoer-, verhittings- en afvoersectie.

2Stratificatie eigenschappen: olielagen op verschillende temperatuur gaan niet met elkaar mixen.3Thermoclinisch effect: de temperatuur van de olie in de opslagtank stijgt sterk van onder naar boven toe.

Page 22: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 2. Beschrijving van de centrale 12

Figuur 2.7: Foto van de opslagtank.

Het data acquisitie systeem bestaat uit een centrale computereenheid die alle data vergaart.

In totaal wordt rekening gehouden met meer dan 150 variabelen. De belangrijkste hiervan

zijn de in- en uitgangstemperatuur van het buizensysteem, het debiet, de intensiteit van het

zonlicht, de temperatuur op het eind van elke loop4, de omgevingstemperatuur en de tijd.

In het model kan niet met al deze variabelen rekening gehouden worden, dit zou immers teveel

rekenwerk vragen. De variabelen die gebruikt worden door het model zijn onderverdeeld in:

• Input: het debiet van de olie in m3/s

• Output: de temperaturen op het eind van elke loop in de verhittingssectie en de tem-

peratuur op het eind van de afvoersectie in °C

• Storingen: warmteflux van de zon in W/m2, de temperatuur van de olie die uit de

opslagtank vloeit (= olietemperatuur aan het begin van de toevoersectie) in °C en de

omgevingstemperatuur in °C.4Op het eind van elke loop is een temperatuursensor aangebracht.

Page 23: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 2. Beschrijving van de centrale 13

Figuur 2.8: Model

Page 24: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 3

Probleemstelling

Het grote nadeel van een zonnecentrale als deze, is de onvoorspelbaarheid van het weer. Het

is eenvoudig in te zien dat onder een wolkeloze hemel de olie veel sneller zal opwarmen dan

onder een zwaar bewolkte hemel. Denk maar aan de plotselinge warmte die je voelt, als de zon

opeens vanachter een wolk verschijnt. Daarnaast ondergaat het zonlicht ook meer regelmatige

veranderingen, zoals de dag-nacht en zomer-winter cyclus. Deze kunnen, in tegenstelling tot

de vorige, exact berekend worden [3].

Niet alleen het zonlicht bevat een onvoorspelbare factor, ook de omgevingstemperatuur kan

een invloed hebben. De warmteverliezen worden beperkt door de aangebrachte isolatie, maar

volledig isoleren kan nooit, waardoor de warmte van de olie gedeeltelijk weglekt naar de

omgeving. Een derde belangrijke factor is de ingangstemperatuur van het systeem. Hoe lager

die ingangstemperatuur, hoe meer er moet opgewarmd worden om eenzelfde eindtemperatuur

te krijgen. Er is immers een veel grotere hoeveelheid energie nodig om olie van bijvoorbeeld

60°C op te warmen tot 300°C dan olie van 120°C. De sterke invloed van de ingangstemperatuur

kan men zien in figuur C.2 in bijlage C.

Om de invloed van al deze fluctuaties te controleren en zo de uitgangstemperatuur van de

olie op een gewenste waarde te houden, is er slechts een input: het debiet. De invloed van

het debiet kan als volgt begrepen worden: onderstel dat het niet bewolkt is en dat de olie

wordt rondgepompt met een welbepaald debiet. Op deze manier wordt de temperatuur van

de olie tussen in- en uitgang van het systeem met een bepaald aantal graden verhoogd. Als er

plots een wolk voor de zon verschijnt, zal de opwarming van de olie bij eenzelfde debiet fors

14

Page 25: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 3. Probleemstelling 15

dalen. Om dezelfde temperatuurstijging te krijgen, moet de olie trager rondgepompt worden.

Zo heeft de olie meer tijd om op te warmen. Het nadeel van deze debietvariaties is dat ze

een tijdsafhankelijke dode tijd (het tijdsverschil tussen het ogenblik dat de olie het systeem

betreedt en het ogenblik dat dezelfde olie het systeem terug verlaat) induceren:

V

q(t)= τ(t) (3.1)

• V : volume van de olie in het systeem in m3

• q(t): debiet van de olie in m3/s

• τ(t): tijdsafhankelijke dode tijd in s

Het is duidelijk dat er een geavanceerd regelsysteem nodig is om met al deze factoren rekening

te houden. Dit is het onderwerp van de doctoraatsstudie van ir. Manuel Galvez-Carrillo. In

het eerste deel van zijn proefschrift wordt gezocht naar een degelijk model voor predictive

control. In het tweede deel wordt dit model gebruikt in een predictive controller ontworpen

via de EPSAC1 of NEPSAC (alnaargelang het gevonden model lineair dan wel niet-lineair

is) om een regelaar te ontwerpen. Om de werking van deze regelaar te kunnen testen is er

nood aan een simulatiemodel van de zonnecentrale. De constructie van deze simulator is het

eigenlijke onderwerp van dit eindwerk.

1Extended Prediction Self-Adaptive Control

Page 26: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4

Modelleren via niet-uniforme

tijdsmonsters

In de eerste methode wordt gebruik gemaakt van niet-uniforme tijdsmonsters om op een

eenvoudige manier het varierend debiet te modelleren. Zoals in de inleiding reeds vermeld

werd, wordt er in dit eindwerk uitgegaan van een gedistribueerd parameter model. Dit bete-

kent dat het volledige buizennetwerk wordt opgedeeld in een groot aantal subsystemen (cfr

discretisatie). Voor elk subsysteem wordt vervolgens de bijhorende vergelijking opgelost.

4.1 Vergelijking

Als men het systeem in meer detail bekijkt, kunnen er twee verschillende fysische processen

onderscheiden worden. In een eerste fase wordt de metalen leiding opgewarmd door het

geconcentreerde zonlicht en in een tweede fase geeft het metaal haar warmte af aan de olie.

In de literatuur wordt het systeem daarom vaak beschreven door twee vergelijkingen [1],[3]:

ρmCmAm∂Tm(x, t)

∂t= εDIrr(t)−HlG [Tm(x, t)− Ta(x, t)]− LHt [Tm(x, t)− Tf (x, t)] (4.1)

ρfCfAf∂Tf (x, t)

∂t+ ρfCfq(t)

∂Tf (x, t)∂x

= LHt [Tm(x, t)− Tf (x, t)] 1 (4.2)

1de temperatuursafhankelijkheid van ρf , Cf , Ht en Hl wordt niet expliciet vermeld, om de notatie te

verlichten.

16

Page 27: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 17

• m: metaal

• f : olie

• ρ: dichtheid in kg/m3

• C: specifieke warmtecapaciteit in J/kg K

• A: transversale oppervlakte in m2

• T (x, t): tijds- en plaatsafhankelijke temperatuur in K

• ε: optische efficientie (dimensieloos)

• D: breedte van de spiegels in m

• Irr(t): warmteflux van de zon in W/m2

• Hl: warmteverliescoefficient tussen metaal en omgeving in W/m2

• G: buitendiameter van de pijpleiding in m

• L: binnendiameter van de metalen leiding in m

• Ht: warmtetransfercoefficient tussen metaal en olie in W/m2 K

• q(t): debiet van de olie in m3/s

Hierbij berekent de eerste vergelijking de temperatuur van de metalen leiding. In het rechterlid

van vergelijking 4.1 slaat de eerste term op de warmte die het metaal van de zon ontvangt,

de tweede term staat voor de warmte die het metaal verliest aan de omgeving en de derde

term staat voor de warmte die het metaal doorgeeft aan de olie. De tweede vergelijking

legt de temperatuur van de olie vast. In het rechterlid is enkel een term aanwezig die het

warmtetransport tussen metaal en olie bepaalt. Bovenstaande vergelijkingen zijn enkel geldig

in dat deel van het systeem waar de collectoren aanwezig zijn. In de andere delen (toevoer- en

afvoersectie) dient in vergelijking 4.1 de term εDIrr(t) weggelaten te worden, aangezien hier

geen verhitting voorkomt. Verder moet ook de warmteverliescoefficient Hl aangepast worden,

aangezien deze stukken sterk geısoleerd zijn.

Page 28: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 18

4.1.1 Eigenschappen van de olie

De olie die gebruikt wordt om de warmte te transporteren is Santotherm 55. Twee kenmer-

kende eigenschappen van deze olie zijn haar lage warmtegeleidbaarheid en haar dichtheid die

sterk temperatuursafhankelijk is. Door de laatste eigenschap weegt warme olie veel minder

dan koude olie, waardoor er in de opslagtank lagen ontstaan met verschillende temperatuur

(cfr. thermoclinisch effect). Hierna volgen twee temperatuursafhankelijke eigenschappen van

de olie die gebruikt zullen worden:

• dichtheid: ρf (T ) = 903 + 0, 672 T (kg/m3)

• specifieke warmtecapaciteit: Cf = 1820 + 3, 478 T (J/kg K)

4.1.2 Bepalen van Ht

Ht geeft het tempo aan waarmee de olie wordt opgewarmd door de verhitte leiding bij een

gegeven temperatuursverschil tussen olie en leiding. Het is als het ware een convectiecoefficient

(zelfde dimensie). Men kan aanvoelen dat dit tempo afhankelijk zal zijn van het debiet:

hoe groter het debiet, hoe sneller het warmtetransport zal gebeuren. Vergelijk dit met de

gedwongen convectie die gebruikt wordt om een processor sneller af te koelen. Daar zorgt een

ventilator ervoor dat de luchtstroom met een grotere snelheid langs de processor passeert. Op

deze manier wordt de afkoeling versneld. Daarnaast is Ht ook een functie van de temperatuur

van de olie. Ht kan daardoor geschreven worden als:

• Ht = Hv (T ) q(t)0.8 (W/m2 K)

• Hv (T ) = 2.17 106 − 5.01 104T + 4.53 102T 2 − 1.64T 3 + 2.1 10−3T−4 (W/m5 K)

Met q(t) opnieuw het debiet in m3/s en Hv een polynoom die geıdentificeerd werd via een

least squares methode [3]. Voor de waarden van de overige parameters in vergelijkingen 4.1

en 4.2 wordt verwezen naar sectie 4.4.

Page 29: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 19

4.1.3 Onderstellingen

Omdat het niet nodig is elk fysisch proces tot in het kleinste detail te beschrijven, dit leidt im-

mers tot een veel te complex model, worden er een paar vereenvoudigende veronderstellingen

gemaakt:

1. ten eerste wordt het warmtetransport in de olie zelf verwaarloosd. Twee naburig gelegen

punten in de olie op een verschillende temperatuur zullen geen warmte uitwisselen, noch

door convectie, noch door conductie. Aan deze eis is grotendeels voldaan, gezien de lage

warmtegeleidingscoeffient van de olie: 0.1923− 1.3 10−4 T (W/m◦C), vergelijk dit met

0,6 W/m°C voor water en 50 W/m°C voor staal.

2. ten tweede wordt de olie onsamendrukbaar ondersteld. Hierdoor zal bij een debietswij-

ziging, geınduceerd door de pomp, het debiet in elk punt van het systeem op hetzelfde

moment en op eenzelfde manier veranderen. Er treedt met andere woorden geen ver-

traging op in de debietsverandering tussen een punt net na de pomp en een punt ver

van de pomp verwijderd.

3. het debiet in elk van de tien loops is hetzelfde. Stel dat de pomp een debiet levert van

10 l/s dan zal, aangezien er 10 parallelle loops zijn, door elk van de loops olie vloeien

aan een tempo van 1 l/s. In werkelijkheid zal het debiet in loop 1 hoger zijn dan in

loop 2, omdat deze eerste dichter bij de pomp ligt dan de tweede. Het debiet in loop 2

zal hoger zijn dan dat in loop 3, enz.

4. de eigenschappen van elke loop worden identiek beschouwd. In werkelijkheid zullen

deze licht verschillen van loop tot loop, de spiegels zullen bijvoorbeeld niet allemaal

dezelfde reflectiviteit hebben. Daarnaast zullen ook de warmteverliezen in elke loop

licht verschillen. Voor de eenvoud worden deze verschillen genegeerd.

5. het warmteverlies van de toevoer- en afvoersectie wordt verwaarloosd; deze leidingen

zijn sterk geısoleerd.

Page 30: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 20

4.2 Verdelen in secties

In hoofdstuk 2 werd het systeem reeds opgedeeld in drie secties: de toevoersectie, de verhit-

tingssectie en de afvoersectie. In de volgende paragrafen wordt elke sectie apart behandeld.

Er wordt soms verwezen naar punten A, Bi, Ci en D waarbij A verwijst naar het begin van

de toevoersectie, Bi naar het begin van loop i in de verhittingssectie, Ci naar het einde van

loop i van de verhittingssectie en D naar het einde van de afvoersectie, zoals ook kan gezien

worden in figuur 4.1:

Figuur 4.1: Definieren van locaties A, Bi, Ci en D.

4.2.1 Toevoersectie

Dit deel brengt olie vanuit de bodem van de opslagtank naar het begin van elke loop van

het collectorsysteem. De toevoerbuis bestaat uit een leiding met een diameter van 10,16

cm. De afstand tussen het begin van de toevoersectie en het begin van een loop van de

verhittingssectie, is voor elke loop verschillend (zie figuur 4.2). Daardoor wordt in het model

de leiding verdeeld in tien parallelle leidingen, met elk een verschillende lengte:

Page 31: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 21

Figuur 4.2: Geometrie in werkelijkheid.

Figuur 4.3: Geometrie gebruikt in de simulator.

Page 32: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 22

Deze parallellisering van de toevoersectie blijkt weinig invloed te hebben op het dynamisch

gedrag van het systeem. Uit figuren C.1 tot 4.13 en 4.16 tot 4.18 blijkt er een goede over-

eenkomst te zijn tussen het dynamisch gedrag in werkelijkheid en in de simulator. In de

toevoersectie worden warmteverliezen verwaarloosd en is er geen verhitting aanwezig aange-

zien er zich geen collectoren bevinden. De toevoersectie kan dus beschouwd worden als louter

een dode tijd. Aangezien deze sectie opgedeeld werd in tien parallelle leidingen met verschil-

lende lengte, zal elke leiding zijn eigen dode tijd τ1i (t) (i=1...10 en 1: toevoersectie) hebben,

die verder nog debiet- en dus tijdsafhankelijk is. Een uitdrukking voor deze tijdsafhankelijke

dode tijd τ1i (t) valt eenvoudig op te stellen:

τ1i (t) : V 1

i =

t∫t−τ1

i (t)

q(t′))dt

′(4.3)

• τ1i (t): tijdsafhankelijke dode tijd voor leiding i, in de toevoersectie, in s

• V 1i : volume van leiding i in de toevoersectie in m3

• q(t): debiet in m3/s

τ1i (t) geeft dus weer hoe lang het duurt om het volume V 1

i op te vullen met olie rekeninghou-

dend met het tijdsafhankelijk debiet. De temperatuur in het punt B van leiding i, TBi , is dus

eenvoudigweg de temperatuur in punt A, een tijd τ1i (t) vroeger:

TBi(t) = TAi(t− τ1i (t)) (4.4)

De praktische berekening van τ1i (t) in uitdrukkingen 4.4 en ??.

4.2.2 Verhittingssectie

Vervolgens is de verhittingssectie aan de beurt. In dit deel van het systeem zijn de collectoren

aanwezig en wordt de olie opgewarmd. Naast de opwarming is er ook een warmteverlies

aanwezig waarmee rekening gehouden moet worden. De berekening van de olietemperatuur

gebeurt in twee stappen: eerst moet de temperatuur van de metalen leiding bepaald worden,

vervolgens kan overgegaan worden tot de berekening van olietemperatuur.

Page 33: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 23

Voor het beschrijven van de opwarming van de metalen leiding wordt gebruik gemaakt van

de vooropgestelde vergelijking 4.1. Er wordt eerst een kleine wijziging doorgevoerd in deze

vergelijking; uitdrukking 4.1 is geldig per lengte-eenheid van de leiding. Daarom wordt ze

vermenigvuldigd met de lengte van de verhittingssectie, zodat de energiebalans per loop

verkregen wordt. Aangezien in de verhittingssectie elke loop dezelfde lengte heeft, wordt

telkens met eenzelfde waarde vermenigvuldigd.

ρmCmVm∂Tm(x, t)

∂t= εAmirrIrr(t)−HlGs [Tm(x, t)− Ta(x, t)]−Amf

Ht

π[Tm(x, t)− Tf (x, t)]

(4.5)

• Vm: volume van een loop in m3

• Amirr: apertuur van de spiegel voor elke loop in m2

• Gs: buitendiameter pijpleiding maal lengte verhittingssectie in m2

• Amf : contactoppervlak tussen metaal en olie per loop in m2

Deze continue partiele differentiaalvergelijking dient gediscretizeerd te worden, zoals reeds

werd aangehaald in het begin van dit hoofdstuk. De partiele afgeleide naar de tijd wordt

vervangen door:

∂Tm(x, t)∂t

→ Tm(x, t)− Tm(x, t−∆t)∆t

(4.6)

De discrete vorm van vergelijking 4.5 ziet er als volgt uit:

Tm(x, t) = Tm(x, t−∆t)+∆t

ρmCmVm

εAmirrIrr(t−∆t)−HlGs [Tm(x, t−∆t)− Ta(x, t−∆t)]

−AmfHtπ [Tm(x, t−∆t)− Tf (x, t−∆t)]

(4.7)

De temperatuur van een stuk pijpleiding in de verhittingssectie is duidelijk samengesteld uit

vier bijdragen (in respectievelijke volgorde):

1. de temperatuur van hetzelfde stuk leiding als een tijd ∆t ervoor

Page 34: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 24

2. de temperatuurstijging gecreeerd door het geconcentreerde zonlicht

3. de temperatuurdaling, toe te schrijven aan warmteverlies naar de omgeving

4. de temperatuurverandering, te wijten aan de warmte-uitwisseling met de olie

Voor de berekening van de olietemperatuur wordt gebruik gemaakt van een andere vergelijking

dan uitdrukking 4.2:

dTf (x, t)dt

=Amf

ρfCfVf

Ht

π[Tm(x, t)− Tf (x, t)] (4.8)

• Vf : volume van de olie in een loop van de verhittingssectie

De tijdsafgeleide in vergelijking 4.8 moet ook gediscretizeerd worden, wat leidt tot volgende

iteratieve formule:

Tf (x, t) = Tf (x, t−∆t) +Amf

ρfCfVf

Ht

π[Tm(x, t−∆t)− Tf (x, t−∆t)] (4.9)

Het enige wat voor opwarming van de olie zorgt, is de warmte van de metalen leiding. Ver-

gelijkingen 4.7 en 4.9 lijken eenvoudig te implementeren, ware het niet dat ze geen rekening

houden met het tijdsvarierend debiet. De invoering van het tijdsafhankelijk debiet is geba-

seerd op het gebruik van niet-uniforme tijdsmonsters, terug te vinden in [12]. Dit wordt

uitvoerig besproken in deel 4.3.

4.2.3 Afvoersectie

De laatste sectie brengt de warme olie terug naar de top van opslagtank. De geısoleerde leiding

die hiervoor zorgt, heeft een binnendiameter van 10,16 cm. De lengte van de leiding wordt

verderop experimenteel bepaald, aangezien hierover geen nauwkeurige informatie beschikbaar

is. Evenals bij de toevoersectie worden ook hier de warmteverliezen verwaarloosd waardoor

ook de afvoersectie beschouwd kan worden als louter een dode tijd. Ook hier wordt in het

model de leiding opgesplitst in 10 parallelle leidingen. Dat dit geen grote veranderingen in de

dynamica van systeem teweegbrengt, werd reeds aangehaald in het stuk over de toevoersectie.

Page 35: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 25

Door deze splitsing ontstaan er opnieuw tien verschillende dode tijden τ3i (t) (i=1...10 en 3:

afvoersectie ): voor elke leiding een. De dode tijden kunnen op exact dezelfde wijze berekend

worden als vorige keer:

τ3i (t) : V 3

i =

t∫t−τ3

i (t)

q(t′)dt

′(4.10)

• τ3i (t): tijdsafhankelijke dode tijd voor leiding i in de afvoersectie in s

• V 3i : volume van leiding i in de afvoersectie in m3

• q(t): debiet in m3/s

De temperatuur in het punt D van leiding i, TDi , valt opnieuw eenvoudig te berekenen als de

temperatuur in punt C, een tijd τ3i (t) vroeger:

TDi(t) = TCi(t− τ3i (t)) (4.11)

Op deze manier berekent het model tien temperaturen voor het eind van de afvoersectie. In

werkelijkheid is er natuurlijk maar een temperatuur, aangezien er maar een leiding is. Daarom

wordt het gemiddelde genomen van de tien temperaturen die het model genereert. Zo wordt

slechts een waarde bekomen en kan het model beter gevalideerd worden.

TD(t) =110

10∑i=1

TDi(t) (4.12)

De praktische berekening van τ3i (t) in uitdrukkingen 4.9 en 4.10 wordt hierna behandeld.

Page 36: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 26

4.3 Niet-uniforme tijdsmonsters

Figuur 4.4: buis

Beschouw een rechtlijnige, lange buis waardoor olie gepompt wordt. Het debiet van de olie,

q(t), wordt geregeld door een pomp en is tijdsafhankelijk. Onderstel dat er in de olie een

rood balletje aanwezig is, dat een verwaarloosbare massa heeft en dus even snel als de olie

beweegt. De tijdsafhankelijke plaats van het balletje is weergegeven in figuur 4.5:

De buis is opgedeeld in 6 segmenten, elk met eenzelfde lengte l. Het is zeer belangrijk dat elk

segment dezelfde grootte heeft. Telkens het balletje een nieuw segment betreedt, wordt

het tijdstip waarop dit gebeurt, tk (k=0...5), onthouden. Aangezien het debiet varieert in de

tijd, zal de afstand tussen twee opeenvolgende tijdstippen, tk−tk−1, eveneens varieren. Ze zijn

met andere woorden niet uniform. Uit de grafiek volgt duidelijk dat het balletje op tijdstip

t0 segment 1 betreedt, op tijdstip t1 segment 2, enzovoort tot het op tijdstip t5 segment 6

betreedt. De olie in segment 6 op een tijdstip tk is met andere woorden de olie in segment 1

op tijdstip tk−5.

Dit voorbeeldje illustreert dat de tijdsafhankelijke dode tijden τ1i (t) en τ3

i (t) uit vergelijkingen

4.3, 4.4, 4.9 en 4.10 eenvoudig berekend kunnen worden, als de tijdstippen tk gekend zijn.

4.3.1 Berekening van tk

Om de tk’s van het buizensysteem van de zonnecentrale te berekenen, moet dit buizensysteem

ook opgedeeld worden in even grote segmenten. Voor de eenvoud worden enkel de tk’s van

de toevoersectie berekend. De werkwijze voor de verhittings- en de afvoersectie is exact

dezelfde. Herinner u eraan dat in het model alledrie de secties opgedeeld zijn in tien

parallelle leidingen. Elk van deze tien parallelle leidingen moet dus opgedeeld worden in

Page 37: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 27

Figuur 4.5: Verplaatsing van het balletje.

segmenten. Aangezien elke leiding in het model van de toevoersectie een verschillende lengte

heeft (zie figuur 4.3), zal elke leiding een verschillend aantal segmenten bevatten. Dit aantal

wordt bepaald door het volume van elke leiding te delen door het volume van het segment.

Dit segmentvolume Vsegm wordt vooropgesteld en moet voldoen aan een aantal voorwaarden:

• zo mag het niet te klein zijn, anders zijn er teveel segmenten en duren de berekeningen

te lang.

• anderzijds mag het ook niet te groot zijn, want dan zijn er te weinig segmenten om

nauwkeurige resultaten te krijgen.

• verder moet het segmentvolume Vsegm zo gekozen worden, dat het liefst een geheel

aantal keer in elke leiding past.

Een goede waarde voor het Vsegm kan bekomen worden door te kijken naar de geometrie van

de toevoersectie. In het model wordt de toevoersectie verdeeld in tien parallelle leidingen,

elk met een verschillende lengte en dus verschillend volume. Het volumeverschil ∆V tussen

twee opeenvolgende leidingen is constant en gelijk aan 7,7 liter (zie figuur 4.3). Intuıtief kan

aangevoeld worden dat het segmentvolume best niet groter is dan dit volumeverschil ∆V .

Stel dat dit wel het geval is en dat Vsegm bijvoorbeeld tweemaal ∆V bedraagt, dan zullen er

Page 38: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 28

in het model, doordat elk volume afgerond wordt tot een geheel aantal keer Vsegm, zeker twee

opeenvolgende leidingen zijn met eenzelfde aantal segmenten. Dit leidt tot twee dezelfde dode

tijden τ1i en τ1

i+1, wat fouten in de uitkomst kan induceren. Dit fenomeen wordt verderop nog

verduidelijkt.

Nu de toevoersectie in segmenten opgedeeld is, kan overgegaan worden op de berekening van

de tk’s. Om dit te kunnen doen, wordt een denkbeeldig balletje, met verwaarloosbare massa,

in het begin van de toevoersectie geplaatst. De positieverandering van dit balletje en dus

die van de olie kan gevolgd worden door een klok in te voeren. De periode van de klok is

constant en gelijk aan Tklok. Tijdens elke periode van de klok worden de volgende bewerkingen

uitgevoerd:

• Tklok wordt vermenigvuldigd met het debiet op dat moment. Noem dit product Vtemp.

• Vtemp wordt vervolgens vergeleken met het Vsegm.

Is Vtemp groter of gelijk aan Vsegm, dan beweegt het balletje tijdens Tklok zeker door gans

segment 1 en is t1 = Tklok. t1 wordt onthouden en de klok wordt op nul gesteld. Is daarentegen

Vtemp kleiner dan Vsegm, dan tikt de klok verder. Opnieuw wordt Tklok vermenigvuldigd met

het debiet op dat moment. Deze nieuwe Vtemp wordt bij de vorige opgeteld. Vervolgens wordt

deze som vergeleken met het segmentvolume. Is de som groter dan Vsegm, dan heeft het

balletje twee klokperiodes Tklok nodig om een segment te doorlopen en is t1 = 2Tklok. Daarna

wordt de klok op nul gesteld. Is de som daarentegen kleiner dan Vsegm, dan tikt de klok

opnieuw verder enzovoort. Eenmaal een waarde voor t1 gevonden is, kan op dezelfde manier

een waarde voor t2 gevonden worden.

Het komt er dus op neer een goede waarde voor Tklok te vinden. Deze waarde mag niet te

klein zijn, anders zal de berekening te lang duren. Noch mag ze te groot zijn, anders treden

er onnauwkeurigheden op. Voor een goede eerste schatting wordt opnieuw gekeken naar de

geomtrie van de leidingen. Het volume van een segment Vsegm werd gekozen op 7,7 liter.

Het maximumdebiet in het systeem bedraagt 9 l/s(2). Aangezien er tien parallelle leidingen

aanwezig zijn, zal het debiet in elke leiding 0,9 l/s bedragen. Een segment wordt dus bij2Het debiet overschreed tijdens de experimenten nooit 9 l/s.

Page 39: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 29

dit debiet opgevuld in 7,70,9 = 8, 55s. Aangezien 9 l/s het maximumdebiet was, zal 8,55 s de

minimum tijd zijn die de olie nodig heeft om een segment te vullen. Een eerste schatting

voor Tklok is 10 s . Er treedt echter een probleem op bij een Tklok van 10 s. Er werd reeds

berekend dat bij een debiet van 9 l/s, het ongeveer 8,55 s duurt om Vsegm te vullen:

7, 70, 9

= 8, 55 ≈ Tklok (4.13)

Stel nu dat het debiet verlaagt van 9 l/s naar 8 l/s. Bij dit debiet doet de olie er eveneens 1

Tklok over om door een segment te vloeien:

7, 70, 8

= 9, 625 ≈ Tklok (4.14)

Met deze Tklok zal het model dus geen onderscheid maken tussen een debiet van 9 l/s en

een debiet van 8 l/s. In tabel 4.3.1 wordt voor verschillende waarden van Tklok weergegeven

hoeveel klokperiodes de olie nodig heeft om een segment te vullen bij verschillende waarden

van het debiet:

debiet per leiding tijd om segment te vullen aantal klokperiodes

(l/s) (s) Tklok = 10s Tklok = 2s Tklok = 1s

0,2 38,5 4 20 39

0,3 25,66 3 13 26

0,4 19,25 2 10 20

0,5 15,4 2 8 16

0,6 12,833 2 7 13

0,7 11 2 6 11

0,8 9,625 1 5 10

0,9 8,55 1 5 9

Tabel 1

Op deze manier vindt het model met een Tklok van 10 s slechts vier waarden voor de dode

tijd van een segment, nl 4Tklok, 3Tklok, 2Tklok en Tklok, terwijl er in werkelijkheid toch acht

Page 40: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 30

verschillende waarden voor het debiet zijn. Dit is natuurlijk niet erg nauwkeurig. Een moge-

lijkheid om dit probleem op te lossen is Tklok verlagen. Pas vanaf een waarde voor Tklok van

1 s, worden acht verschillende waarden voor de dode tijd gevonden.

Dat een goede keuze voor Tklok belangrijk is om goede resultaten te verkrijgen kan ook gezien

worden in figuur C.2 van bijlage C.

4.4 Implementatie

Nu beide vergelijkingen, die het fysisch proces beschrijven, omgezet zijn naar hun discrete

vorm en er een methode gevonden werd om het varierend debiet in rekening te brengen, kan

overgegaan worden tot de implementatie ervan in matlab.

In figuur 2.8 van hoofdstuk 2, werd getoond dat de ingang van het systeem het debiet van

de olie is, de uitgang de temperatuur op het eind van de centrale is en verder dat er drie

storingen aanwezig zijn: de warmteflux van de zon, de ingangstemperatuur van de olie en

de omgevingstemperatuur. Om het model te kunnen testen zijn er waarden nodig voor deze

variabelen. Hiervoor kan beroep gedaan worden op data die verzameld werd gedurende drie

dagen: 15, 16 en 28 juli 2003. Voor elk van deze drie dagen is er data beschikbaar over:

• het tijdstip

• het debiet

• de temperatuur aan het begin van de toevoersectie

• de temperatuur op het eind van de afvoersectie

• de omgevingstemperatuur

• de warmteflux van het invallend zonlicht

• de temperatuur van de olie op het eind van elke leiding3 in de verhittingssectie.

Een eerste probleem dat opduikt is de bemonsteringstijd van deze data. Die bedraagt 30 s.

Dus pas om de 30 seconden wordt een nieuwe waarde van de variabelen gegeven. Aangezien3leiding 1 was afgesloten wegens problemen, er waren dus slechts 9 leidingen operationeel.

Page 41: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 31

een goede periode voor de interne klok 1 s bedraagt, is er elke seconde een waarde voor

de variabelen nodig. Dit probleem kan eenvoudig opgelost worden door een zero order hold

te gebruiken: elk monster van het data-acquisitie systeem wordt gedurende 30 klokperiodes

vastgehouden.

Vervolgens wordt berekend in hoeveel segmenten elke leiding in elke sectie opgedeeld moet

worden. Hiervoor moeten eerst de volumes van elke leiding in elke sectie gekend zijn. De

lengtes en diameters van elke sectie zijn weergegeven in de tabel 4.4:

toevoersectie verhittingssectie afvoersectie

lengte (m) 35.12 172 37.694

binnendiameter (cm) 10.16 2.969 10.16

Tabel 2

De toevoer- en afvoersectie worden in het model gesplitst in tien parallelle leidingen, met

elk een verschillende lengte. Dit leidt tot de volgende waarden (leiding 1 wordt afgesloten):

m3 toevoersectie verhittingssectie afvoersectie

leiding 2 0.041 0.103 0.043

leiding 3 0.049 0.103 0.052

leiding 4 0.058 0.103 0.061

leiding 5 0.067 0.103 0.070

leiding 6 0.076 0.103 0.079

leiding 7 0.085 0.103 0.087

leiding 8 0.094 0.103 0.096

leiding 9 0.103 0.103 0.105

leiding 10 0.112 0.103 0.114

Tabel 3: volumes van de leidingen in elke sectie.

4Deze waarde blijkt niet volledig correct te zijn, daarom wordt ze in een volgende hoofdstuk experimenteel

bepaald

Page 42: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 32

toevoersectie verhittingssectie afvoersectie

leiding 2 5 13 6

leiding 3 6 13 7

leiding 4 8 13 8

leiding 5 9 13 9

leiding 6 10 13 10

leiding 7 11 13 11

leiding 8 12 13 13

leiding 9 13 13 14

leiding 10 15 13 15

Tabel 4: aantal segmenten in elke leiding.

De waarden voor het aantal segmenten worden gestockeerd in de matrix N. Nu wordt de

tijdsiteratie met tijdsindex j gestart. Aangezien Tklok 1 seconde bedraagt, zal de tijdsiteratie

gebeuren in stappen van 1 seconde. t0 wordt gelijkgesteld aan 0. Vervolgens wordt berekend

hoelang het duurt vooraleer de olie een segment vult, gegeven het huidige debiet. Dit gebeurt

door Tklok te vermenigvuldigen met het ogenblikkelijke debiet, q(j). De waarde van deze

vermenigvuldiging, Vtemp, wordt vergeleken met het volume van een segment, Vsegm. Is Vtemp

kleiner dan Vsegm, dan loopt de tijdsiteratie j verder naar j + 1. Opnieuw wordt Tklok

vermenigvuldigd met het debiet op dat moment, q(j+1). Dit product wordt opgeteld bij Vtemp.

Deze nieuwe Vtemp wordt opnieuw vergeleken met Vsegm. Stel nu dat de nieuwe Vtemp groter

dan of gelijk is aan dan Vsegm, dan wordt t1 gelijkgesteld aan j+1 en Vtemp wordt teruggebracht

op nul. t1 wordt bewaard in de niet-uniforme tijdsmonster vector TIJD= [t0 t1 t2 ...].

Opnieuw wordt een onderscheid gemaakt in de berekeningen voor de drie secties. Maar eerst

worden nog enkele parameters gedefinieerd.

Temperatuursafhankelijke parameters

Aangezien enkele van de parameters in de vergelijkingen 4.7 en 4.9 temperatuursafhanklijk

zijn moeten deze eerst geevalueerd worden. Het gaat hier in het bijzonder om de parameters

Ht, ρf en Cf . Deze worden voor elk oliesegment apart berekend.

Page 43: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 33

Bepalen van Hl en ε en de overige parameters

Er moet nog een waarde toegekend worden aan de parameters Hl en ε die voorkomen in

vergelijkingen 4.1, 4.5, 4.7 en 4.16. Deze parameters worden op een experimentele manier

bepaald. Door ’trial and error’ blijken de beste waarden:

• Hl = 28 W/m2

• ε = 0, 7

Verder moet er ook nog een waarde toegekend worden aan de parameters ρm en Cm:

• ρm = 7850 Kg/m3

• Cm = 419 J/Kg K

4.4.1 Toevoersectie

Aangezien de toevoersectie louter als dode tijd beschouwd kan worden en de waarden voor tk

tot het huidige tijdstip bekend zijn, is het eenvoudig om te temperatuur op het eind van de

toevoersectie te berekenen. Formule 4.4 wordt als volgt ingevoerd:

TBi(t) = TAi(t− τ1i (t)) → TBi(tk) = TAi(tk−l) (4.15)

waarbij l aangeeft in hoeveel segmenten leiding i in de toevoersectie verdeeld is. Deze waarde

is terug te vinden in de matrix N.

4.4.2 Verhittingssectie

Hierna worden de temperatuursafhankelijke coefficienten ρf , Cf en Ht geevalueerd. Voor de

evaluatie op tk wordt gekeken naar de waarde van de olietemperatuur op het vroegere tijdstip

tk−1, zoals ook kan gezien worden in uitdrukkingen 4.7 en 4.9. ∆t is gelijk aan het verschil

tk − tk−1. Eens deze waarden gekend zijn, hebben we alle waarden van de rechterleden in

uitdrukkingen 4.7 en 4.9 (in de veronderstelling dat de iteratie al enige tijd bezig is en er

reeds waarden bestaan voor Tm(x, t − ∆t) en Tf (x, t − ∆t)). Voor de implementatie moet

nog onderscheid gemaakt worden tussen de verschillende loops (index i; i=1..9) en er moet

Page 44: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 34

nog geıtereerd worden over alle segmenten van elke loop (index n). De implementatie van

uitdrukking 4.7 is eenvoudig, de vergelijking kan zo overgenomen worden:

Tm(n, tk, i) = Tm(n, tk−1, i)+∆t

ρmCmVm

εAmirrIrr(tk−1)−HlGs [Tm(n, tk−1, i)− Ta(n, tk−1, i)]

−AmfHtπ [Tm(n, tk−1, i)− Tf (n, tk−1, i)]

(4.16)

Deze vergelijking drukt uit dat de temperatuur van het metaal in segment n van leiding

i op een tijdstip tk gelijk is aan de temperatuur van datzelfde stuk metaal op het vorige

tijdstip tk−1 (eerste term in het rechterlid), vermeerderd met de warmte ontvangen van de

zon (eerste term binnen de rechte haken), verminderd met de warmte die weggelekt is naar de

omgeving(tweede term binnen de rechte haken) en gecorrigeerd voor de warmte-uitwisseling

met de olie (derde term binnen de rechte haken).

Voor de implementatie van vergelijking 4.9 komt het grote voordeel van de niet-uniforme tijds-

monsters naar voren. Vergelijkingen 4.8 en 4.9 zijn eigenlijk enkel geldig als de olie stilstaat;

ze houden geen rekening met de verplaatsing van de olie. De niet-uniforme tijdsmonsters wer-

den in de eerste plaats ingevoerd, om dit te verhelpen. Stel dat het rode oliesegment in figuur

4.6 wordt gevolgd. Onderstel dat dit oliesegment zich op tijdstip tk−1 in het segment n − 1

bevindt. Het gebruik van niet-uniforme tijdsmonsters zorgt ervoor dat ditzelfde segment zich

op tijdstip tk in segment n zal bevinden. Intuıtief kan aangevoeld worden dat de temperatuur

van het rode olievolume op tijdstip tk in segment n, de temperatuur van datzelfde olievolume

zal zijn op het vroegere tijdstip tk−1 in het segment n−1, vermeerderd met de warmte die de

olie ontvangen heeft van het metaal in segment n− 1 (zie figuren 4.64.7. Of in computertaal:

Tf (n, tk, i) = Tf (n− 1, tk−1, i) +Amf

ρfCfVf

Ht

π[Tm(n− 1, tk−1, i)− Tf (n− 1, tk−1, i)] (4.17)

Page 45: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 35

Figuur 4.6: Een deel uit loop i van de verhittingssectie op tijdstip tk−1.

Figuur 4.7: Een deel uit loop i van de verhittingssectie op tijdstip tk.

Page 46: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 36

Nu kunnen de temperaturen TCi (i=2...10) in het punt C berekend worden. Deze tempera-

turen zijn voor elke loop i gelijk aan de temperatuur van de olie in het laatste segment van

loop i in de verhittingssectie:

TCi(tk) = Tf (ni, tk, i) (i = 2...10)

met ni het aantal segementen in loop i van de verhittingssectie. Deze waarde is terug te

vinden in de matrix N.

4.4.3 Afvoersectie

Het laatste deel van het traject bestaat uit de afvoersectie. Net als de toevoersectie kan ook

deze sectie beschouwd worden als een sectie die enkel een dode tijd invoert. Formule 4.15 kan

dus rechstreeks overgenomen worden, mits aanpassing van de indices:

TDi(t) = TCi(t− τ3i (t)) → TDi(tk) = TCi(tk−l′ ) (4.18)

Waar l′

aangeeft in hoeveel segmenten loop i van de afvoersectie verdeeld is. Ook deze

waarde werd gestockeerd in matrix N. Op deze manier worden 9 (normaal 10 maar loop 1 is

afgesloten) temperaturen verkregen op het eind van de afvoersectie. Om deze te kunnen

vergelijken met de eenwaardige, werkelijk eindtemperatuur wordt het gemiddelde van de

berekende uitgangstemperaturen genomen:

TD(t) =19

9∑i=1

Di(t) (4.19)

Op deze manier worden de gesimuleerde waarde voor de uitgangstemperatuur bekomen. Het

probleem dat hier optreedt, is dat er in elk van de vier vergelijkingen 4.15, 4.16, 4.17 en 4.18

verwezen wordt naar een temperatuurswaarde op een vorig tijdstip tk−1,tk−l of tk−l′ . Dus

voor de berekening van de temperatuur op de eerste tijdstippen t0, t1, t2,... kan het zijn

dat wordt verwezen naar tijdstippen met een negatieve index, wat natuurlijk niet kan. In de

volgende paragraaf wordt uitgelegd hoe dit opgelost wordt.

Page 47: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 37

4.4.4 Beginwaarden

Wanneer het programma gestart wordt, is er nood aan enkele beginwaarden. Bij de bereke-

ning van vergelijking 4.15 wordt verwezen naar de temperatuur op tijdstip tk−l. Indien het

programma zich op tijdstip t0 bevindt, bestaat er nog geen waarde voor de temperatuur op

dit tijdstip. TBi kan dus niet berekend worden. Daarom worden de eerste l waarden van TBi

geınitialiseerd op TAi(0), de ingangstemperatuur5 op tijdstip 0. Dus:

TBi(t0) = TBi(t1) = TBi(t2) = ... = TBi(tl−1) = TAi(t0)

De volgende stap in de berekening is het uitrekenen van vergelijking 4.16. In deze vergelijking

wordt telkens verwezen naar de temperatuur van het metaal en de olie en naar de warmteflux

van de zon op een vorig tijdstip tk−1. Hier treedt enkel een probleem op bij de berekening

van Tm op het moment t0. Dan kan niet verwezen worden naar t−1. De temperatuur van

Tm moet dus ook geınitialiseerd worden. Er wordt hier ook gekozen om als beginwaarde de

ingangstemperatuur te nemen:

Tm(n, t0, i) = TAi(t0) (i = 2...10; n = 1...ni)

met ni het aantal segmenten in loop i in de verhittingssectie.

Hierna wordt de temperatuur van de olie in de verhittingssectie berekend. Formule 4.17

wordt hiervoor uitgerekend. Hier treedt een dubbel probleem op: er wordt enerzijds verwezen

naar de temperatuur op een vorig tijdstip (tk−1) en anderzijds naar de temperatuur in een

vorig segment (n − 1). Als beginwaarde voor de temperatuur van de olie wordt ook hier de

ingangstemperatuur gekozen:

Tf (n, t0, i) = TAi(t0) (i = 2...10; n = 1...ni)

Het tweede probleem, de verwijzing naar het segment n − 1 als n = 1 levert niet eenmalig,

maar voor alle tijdstippen tk een probleem. Aangezien de verhittingssectie voorafgegaan5Deze waarde wordt gemeten en hoeft dus niet berekend te worden

Page 48: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 38

wordt door de toeversectie (zie figuur 2.6), kan verwezen worden naar het laatste segment

van de toevoersectie voor de berekening van de olietemperatuur in het eerste segment van

de verhittingssectie (n = 1). De temperatuur van de olie op het einde van de toevoersectie

speelt hier dus de rol van het segment n− 1 als n = 1. Dit leidt tot de volgende uitdrukking

voor de randvoorwaarde:

Tf (0, tk, i) = TBi(tk) (i = 2...10)

In de laatste sectie, de afvoersectie, treedt net hetzelfde probleem op als in de toevoersectie.

Bij het uitrekenen van vergelijking 4.18 wordt er de eerste l′

tijdstippen verwezen naar een

temperatuur die niet gekend is. Hier dienen de eerste l′waarden voor TDi geınitialiseerd te

worden. Als beginwaarde wordt opnieuw gekozen voor de ingangstemperatuur:

TDi(t0) = TDi(t1) = TDi(t2) = ... = TDi(tl′−1) = TAi(t0)

Op deze manier worden temperatuurswaarden voor alle olie- en metaalsegmenten bekomen op

alle tijdstippen. Dit impliceert dat het berekenen van de temperatuursafhankelijke coefficienten

Ht, ρf en Cf geen problemen oplevert.

Nu alles geımplementeerd is en de begin- en randvoorwaarden gedefinieerd zijn, kan overge-

gaan worden tot het simuleren.

4.5 Resultaten

Nu het volledige programma af is kan overgegaan worden tot simuleren. Hiervoor kan beroep

gedaan worden op data gegenereerd op drie verschillende testdagen: 15, 16 en 28 juli. Aange-

zien de temperatuur in de centrale gemeten wordt op zowel het einde van de verhittingssectie

(9 waarden, voor elke loop 1) als op het einde van de afvoersectie (een waarde), kan er op

deze twee punten een vergelijking gemaakt worden tussen de werkelijke temperatuur en de

temperatuur bekomen via de simulatie. Omdat het wat omslachtig is om de negen gemeten

temperatuurswaarden op het einde van de verhittingssectie te vergelijking met de negen ge-

simuleerde waarden, wordt telkens het gemiddelde genomen. Met andere woorden, de negen

Page 49: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 39

gemeten temperatuurswaarden worden vervangen door het gemiddelde van die negen waar-

den. Hetzelfde wordt gedaan met de gesimuleerde waarden. Deze gemiddelde waarden wordt

in de volgende grafieken aangeduid met Tgem. De fout in de grafieken is gedefinieerd als het

verschil tussen de werkelijke en de gesimuleerde waarde, genormeerd op het temperatuursbe-

reik van de werkelijke waarden. De eenheid van de tijdsas in onderstaande grafieken is een

tijdsmonster. Een tijdsmonster slaat op de bemonsteringsperiode van klok en bedraagt Tklok

of dus 1 seconde.

4.5.1 15 juli:

Eerst worden de resultaten bekeken als de gegevens van 15 juli gesimuleerd worden. In figuur

C.16 zijn de resultaten te zien van de temperatuur op het einde van de verhittingssectie en in

de tweede grafiek die op het einde van de afvoersectie.

0 2000 4000 6000 8000 10000 12000 14000200

400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 2000 4000 6000 8000 10000 12000 14000

0

5

10

debi

et (

l/s)

tijdsmonster

0 2000 4000 6000 8000 10000 12000 14000120

130

140

150

160

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 2000 4000 6000 8000 10000 12000 14000

50

100

150

200

250

Tge

m (

°C)

tijdsmonster

reële temperatuurgesimuleerde temperatuur

0 2000 4000 6000 8000 10000 12000 140000

5

10

tijdsmonster

fout

in %

Figuur 4.8: Resultaten voor de temperatuur in punt C op 15 juli.

6Voor een groter formaat van de figuren wordt verwezen naar bijlage C

Page 50: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 40

De berekende waarden aan het begin van de simulatie blijken niet goed overeen te stemmen

met de werkelijkheid. Dit komt omdat de eerste temperatuurswaarden die worden gemeten

in punt C, afkomstig zijn van de olie die nog in de toevoer- en verhittingssectie aanwezig

was. Deze olie heeft een volledige nacht in de leidingen doorgebracht en is daarom vrij

koud. De eerste temperatuurswaarden die berekend worden door de simulator, starten met

de eerste waarde van de ingangstemperatuur. Daarom begint de gesimuleerde curve op een

hogere temperatuur en begint ze ook onmiddellijk te stijgen. Verder kan rond het 2900ste

tijdsmonster een klein dipje (omcirkeld) opgemerkt worden in de reele temperatuur. Na

nauwkeuriger onderzoek van de data, bleek dit afkomstig te zijn van loop 9 (zie figuur C.1

in bijlage C). In het temperatuursverloop op het einde van loop 9 is rond dit tijdstip een

sterke daling van de temperatuur merkbaar. Wellicht werden de spiegels van deze loop even

van de zon weggedraaid. Helemaal op het einde van het experiment treedt er ook een grote

fout op. Dit komt omdat op het eind van de dag de spiegels volledig naar beneden gericht

worden om ze beschermen tegen stof en regen. Daardoor neemt de temperatuur van de olie

op het eind zo sterk af. Dit verdraaien van de spiegels wordt niet gesimuleerd. Buiten deze

fenomenen komt de gesimuleerde temperatuur redelijk goed overeen met de werkelijke. De

fout blijft bijna overal onder de 5%. In de foutplot werd bij 5% een horizontale lijn getekend

om te zien waar de simulator een fout genereert groter dan 5%. Na de 10 000 tijdsmonsters

treedt er echter een grote fout op, groter dan de 5% limiet. Opvallend is dat het debiet op dit

tijdstip laag is. De tendens dat er grotere fouten optreden bij een lager debiet zal op volgende

testdagen ook merkbaar zijn, wat leidt tot het vermoeden dat de enige coefficient die van het

debiet afhankelijk is, Ht, niet bepaald nauwkeurig is.

In de figuur 4.9 staan de resultaten voor de uitgangstemperatuur van het systeem, met andere

woorden de temperatuur in punt D:

Page 51: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 41

0 2000 4000 6000 8000 10000 12000 14000200

400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 2000 4000 6000 8000 10000 12000 14000

0

5

10

debi

et (

l/s)

tijdsmonster

0 2000 4000 6000 8000 10000 12000 14000120

130

140

150

160

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 2000 4000 6000 8000 10000 12000 1400060

80

100

120

140

160

180

200

220

240

260

uitg

angs

tem

pera

tuur

(°C

)

tijdsmonster

reële temperatuurgesimuleerde temperatuur

0 2000 4000 6000 8000 10000 12000 140000

5

10

tijdsmonster

fout

in %

Figuur 4.9: Resultaten voor de temperatuur in punt D op 15 juli.

De werkelijke temperatuur in punt D start hoger dan die in punt C. Ook dit is vrij logisch:

de afvoersectie is veel sterker geısoleerd dan de verhittingssectie. Hierdoor is de temperatuur

van de olie die ’s nachts in de afvoersectie aanwezig was, minder sterk afgenomen dan de

temperatuur van de olie in de verhittingssectie. Vervolgens is er een sterke daling waarneem-

baar in de werkelijke temperatuur in punt D. Op dit ogenblik vloeit de olie die ’s nachts

in de verhittingssectie aanwezig was en dus sterker is afgekoeld, langs de temperatuursensor

in punt D. Daarna stijgt de olietemperatuur sterk tot de werkelijke en gesimuleerde tempe-

ratuur elkaar goed benaderen. Dit gebeurt rond het 2000ste tijdsmonster. Als er gekeken

wordt naar de grafiek die de fout weergeeft, kan gezien worden dat die licht toeneemt in

vergelijking met figuur C.1. De fout komt nu enkele keren boven de 5%. Dit is te wijten

aan een lichte tijdsshift die optreedt tussen de werkelijke en de gesimuleerde waarden. De

gesimuleerde waarden komen eerder in tijd dan de werkelijke. Deze shift komt nog beter tot

Page 52: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 42

uiting in de resultaten van 28 juli, zoals zal blijken. Aangezien deze shift niet aanwezig is in

de berekening van de temperaturen in punt C, mag besloten worden dat ze volledig te wijten

is aan de afvoersectie. Later komt aan bod hoe deze shift weggewerkt kan worden. Daarnaast

treden er opnieuw fouten op voor de beginwaarden, die nooit goed benaderd kunnen worden,

en voor de waarden na de 10 000 tijdsmonsters. Maar er werd reeds gesuggereerd dat deze

laatste fout waarschijnlijk te wijten is aan een verkeerde uitdrukking voor Ht.

4.5.2 16 juli:

Hierna volgen de resultaten voor 16 juli. Opnieuw eerst de waarden in punt C en erna die in

punt D.

0 0.5 1 1.5 2

x 104

400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 0.5 1 1.5 2

x 104

0

5

10

debi

et (

l/s)

tijdsmonster

0 0.5 1 1.5 2

x 104

50

100

150

200

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 0.5 1 1.5 2

x 104

50

100

150

200

250

Tge

m (

°C)

tijdsmonster

reële temperatuurgesimuleerde temperatuur

0 0.5 1 1.5 2

x 104

0

5

10

tijdsmonster

fout

in %

Figuur 4.10: Resultaten voor de temperatuur in punt C op 16 juli.

Hier gelden dezelfde opmerkingen in verband met de slechte resultaten voor de beginwaarden

als voor 15 juli. Uit de grafiek van de fout blijkt dat de resultaten vrij goed zijn; de fout

Page 53: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 43

overstijgt nergens de 5% lijn, behalve voor de beginwaarden en helemaal op het einde. Er

komen opnieuw mindere resultaten voor bij lage waarden van het debiet, zo rond het 14 000ste

en 16 000ste tijdsmonster. Een mogelijke oorzaak is reeds aangehaald: de debietafhankelijke

parameter Ht.

0 0.5 1 1.5 2

x 104

400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 0.5 1 1.5 2

x 104

0

5

10

debi

et (

l/s)

tijdsmonster

0 0.5 1 1.5 2

x 104

50

100

150

200

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 0.5 1 1.5 2

x 104

60

80

100

120

140

160

180

200

220

240

260ui

tgan

gste

mpe

ratu

ur (

°C)

tijdsmonster

reële temperatuurgesimuleerde temperatuur

0 0.5 1 1.5 2

x 104

0

5

10

tijdsmonster

fout

in %

Figuur 4.11: Resultaten voor de temperatuur in punt D op 16 juli.

Uit de foutgrafiek van figuur 4.11 blijkt duidelijk dat die dramatisch is toegenomen. Deze toe-

name kan opnieuw verklaard worden door het optreden van een tijdsshift. Hoe dit verholpen

kan worden, komt later aan bod.

4.5.3 28 juli:

De derde meetwaarden werden bekomen op 28 juli. Hieronder zijn de resultaten van deze data

zichtbaar. Er wordt opnieuw eerst gekeken naar de temperatuur in het punt C en vervolgens

die in punt D.

Page 54: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 44

0 0.5 1 1.5 2 2.5

x 104

200

400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 0.5 1 1.5 2 2.5

x 104

0

5

10

debi

et (

l/s)

tijdsmonster

0 0.5 1 1.5 2 2.5

x 104

0

50

100

150

200

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 0.5 1 1.5 2 2.5

x 104

50

100

150

200

250

Tge

m (

°C)

tijdsmonster

reële temperatuurgesimuleerde temperatuur

0 0.5 1 1.5 2 2.5

x 104

0

5

10

tijdsmonster

fout

in %

Figuur 4.12: Resultaten voor de temperatuur in punt C op 28 juli.

Voor de resultaten van 28 juli zien we opnieuw de fout in de eerste waarden voor de tempe-

ratuur. Ongeveer halverwege het experiment, zo rond de 10 000 tijdsmonsters, is er een dip

in de ingangstemperatuur (omcirkeld). Deze komt duidelijk naar voor in zowel de werkelijke

als de gesimuleerde eindtemperatuur. Dit onderstreept de sterke invloed van de ingangstem-

peratuur op het systeem. Het feit dat de dip ook voorkomt in de gesimuleerde waarden, is

een teken dat het model goed reageert op deze storing.

Page 55: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 45

0 0.5 1 1.5 2 2.5

x 104

200

400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 0.5 1 1.5 2 2.5

x 104

0

5

10

debi

et (

l/s)

tijdsmonster

0 0.5 1 1.5 2 2.5

x 104

0

50

100

150

200

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 0.5 1 1.5 2 2.5

x 104

60

80

100

120

140

160

180

200

220

240

260

uitg

angs

tem

pera

tuur

(°C

)

tijdsmonster

reële temperatuurgesimuleerde temperatuur

0 0.5 1 1.5 2 2.5

x 104

0

5

10

tijdsmonster

fout

in %

Figuur 4.13: Resultaten voor de temperatuur in punt D op 28 juli.

In bovestaande figuur komt de tijdsshift pas echt goed naar voor. Door de vele pieken in

de eindtemperatuur vanaf 15 000 tijdsmonsters kan een schatting gemaakt worden van de

grootte van de shift: ongeveer 120 s of 2 minuten.

4.5.4 Conclusies

Voor alle drie de testdagen zijn de resulaten in het begin, ongeveer de eerste 2500 tijdsmon-

sters, niet erg nauwkeurig. Dit komt omdat de temperatuursdistributie van de olie in het

systeem, voor de centrale wordt opgestart, niet gekend is. Dat de tijd die de olie nodig heeft

om gans het systeem te doorlopen ongeveer 1800 tijdsmonsters bedraagt bij een debiet van

2 l/s, lijkt deze hypothese deels te bevestigen. Het lage debiet van 2 l/s wordt in het begin

bijna altijd gebruikt om de pomp niet te overbelasten aangezien de olie in het begin koud

en dus erg visceus is. Voorts werden er steeds grote fouten ontdekt als het debiet laag is.

Page 56: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 46

Dit leidt tot het vermoeden dat de enige coefficient die van het debiet afhangt, Ht, niet erg

nauwkeurig is. Een derde opmerking is dat er bij de temperatuursberekeningen in punt D een

tijdsshift optreedt van ongeveer 2 minuten. In wat volgt zal de lengte van de afvoersectie op

een experimentele manier berekend worden om deze shift weg te werken.

De voordelen van het model zijn dat de simulator slechts een kleine steady sate fout heeft.

Dit is zichtbaar in de resultaten van 15 juli, tussen de 2000 en de 4000 seconden, aangezien

gedurende deze periode de storingen constant zijn. Verder reageert het model ook goed op

veranderingen in de intensiteit van het zonlicht. Dit is zichtbaar in de resultaten van 16

juli. Hier neemt de intensiteit van het zonlicht vrij sterk toe tussen de 5000 en de 10 000

seconden. Dit genereert geen grote fouten in de berekende resultaten. En als laatste reageert

de simulator blijkbaar ook goed op veranderingen van de ingangstemperatuur. Dit is zichtbaar

in de resultaten van 28 juli.

4.6 Experimentele bepaling van de lengte van de afvoersectie.

Er wordt nu getracht om op een experimentele manier de lengte van de afvoersectie te be-

rekenen. De gegevens over de lengte ervan, lijken niet zeer nauwkeurig. Deze experimentele

bepaling gebeurt als volgt:

1. Er wordt begonnen met de data van 28 juli te analyseren. Hieruit kan gevonden worden

hoeveel tijd de olie nodig heeft om van het einde van loop 2 naar het einde van de

afvoersectie te reizen.

2. Vervolgens wordt gekeken bij welk debiet dit gebeurt.

3. De lengte van het afvoerstuk kan dan eenvoudig berekend worden met de volgende

formules (de precieze binnendiameter van de afvoersectie is wel gekend):

∆t q(t) = Vf

Vf = lA

⇒ l = ∆t q(t)A

• ∆t: tijdsverschil in seconden

Page 57: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 47

• q(t): het debiet in m3/s

• Vf : volume van de olie in m3

• A: doorsnede van de afvoersectie in m2

• l: lengte van de afvoersectie in m

Figuur 4.14: detail van de afvoersectie.

Aangezien het einde van loop 2 zich het dichtst bij het einde van de afvoersectie bevindt (loop

1 is afgesloten), zal een temperatuursverandering op het einde van de afvoersectie eerst en

vooral te wijten zijn aan een temperatuursverandering in T27. Daarom wordt gekeken naar

het tijdsverschil tussen een temperatuursverandering in T2 en Tout (=TD), dat geınduceerd

wordt door een debietverandering. Dit tijdsverschil wordt ∆t genoemd en kan gehaald worden

uit de figuur 4.15 (Hier is de eenheid van de tijdas de bemonsteringstijd van de data en die

bedraagt 30 s):7Dit is de temperatuur geregistreerd door de temperatuursensor op het einde van loop 2

Page 58: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 48

500 520 540 560 580 600 620 640 660 680

210

215

220

225

230

235

240

245

250

255

tem

pera

tuur

(°C

)

tijdsmonster

einde afvoersectieeinde loop 2

Figuur 4.15: Detail van T2 en Tout op 28 juli.

Als gekeken wordt naar het debiet dat op de overeenkomstige tijdstippen geleverd werd, kan

de volgende tabel opgesteld worden:

wijziging wijziging ∆t q(t) l

T2(K) Tout(K) (s) (m3/s) (m)

258 263 150 5 10−3 92,51

270 281 330 5 10−3 203,52

395 399 120 8 10−3 118,41

405 412 210 8 10−3 207,22

519 525 180 7 10−3 155.42

567 573 180 9 10−3 199,82

597 603 180 8 10−3 177,62

652 658 180 7,5 10−3 166,52

Tabel 5: Experimentele bepaling van de lengte van de afvoersectie.

De eerste kolom geeft het tijdstip weer van een temperatuurswijziging op het eind van loop

2, met als tijdseenheid de bemonsteringstijd van de data, nl. 30 s. De tweede kolom geeft het

tijdstip aan van de overeenkomstige temperatuurswijziging op het einde van de afvoersectie.

Page 59: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 49

Het gemiddelde van alle berekende lengtes bedraagt 165,13 m en deze waarde wordt nu

gebruikt in de simulator. Dit levert de volgende resultaten voor de temperatuur op het eind

van de afvoersectie (punt D) voor 15, 16 en 28 juli:

0 2000 4000 6000 8000 10000 12000 14000200

400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 2000 4000 6000 8000 10000 12000 14000

0

5

10

debi

et (

l/s)

tijdsmonster

0 2000 4000 6000 8000 10000 12000 14000120

130

140

150

160

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 2000 4000 6000 8000 10000 12000 1400060

80

100

120

140

160

180

200

220

240

260ui

tgan

gste

mpe

ratu

ur (

°C)

tijdsmonster

reële temperatuurgesimuleerde temperatuur

0 2000 4000 6000 8000 10000 12000 140000

5

10

tijdsmonster

fout

in %

Figuur 4.16: Resultaten voor de temperatuur in punt D op 15 juli, met de nieuwe lengte voor de

afvoersectie.

Page 60: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 50

0 0.5 1 1.5 2

x 104

400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 0.5 1 1.5 2

x 104

0

5

10

debi

et (

l/s)

tijdsmonster

0 0.5 1 1.5 2

x 104

50

100

150

200

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 0.5 1 1.5 2

x 104

60

80

100

120

140

160

180

200

220

240

260

uitg

angs

tem

pera

tuur

(°C

)

tijdsmonster

reële temperatuurgesimuleerde temperatuur

0 0.5 1 1.5 2

x 104

0

5

10

tijdsmonster

fout

in %

Figuur 4.17: Resultaten voor de temperatuur in punt D op 16 juli, met de nieuwe lengte voor de

afvoersectie.

Page 61: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 4. Modelleren via niet-uniforme tijdsmonsters 51

0 0.5 1 1.5 2 2.5

x 104

200

400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 0.5 1 1.5 2 2.5

x 104

0

5

10

debi

et (

l/s)

tijdsmonster

0 0.5 1 1.5 2 2.5

x 104

0

50

100

150

200

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 0.5 1 1.5 2 2.5

x 104

60

80

100

120

140

160

180

200

220

240

260

uitg

angs

tem

pera

tuur

(°C

)

tijdsmonster

reële temperatuurgesimuleerde temperatuur

0 0.5 1 1.5 2 2.5

x 104

0

5

10

tijdsmonster

fout

in %

Figuur 4.18: Resultaten voor de temperatuur in punt D op 28 juli, met de nieuwe lengte voor de

afvoersectie.

De tijdsshift is praktisch verdwenen. Het positieve effect van de nieuwe lengte van de afvoer-

sectie wordt pas duidelijk als gekeken wordt naar de procentuele fout (linksonder in de figuren

4.16, 4.17 en 4.18). Als de beginwaarden genegeerd worden, is deze enkel nog groter dan 5%

voor 15 juli, maar dat is hoogstwaarschijnlijk te wijten aan een slechte waarde voor Ht.

Page 62: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5

Methode II: Proper Orthogonal

Decomposition

Een veelgebruikte methode om systemen waarin bewegende vloeistoffen of gassen voorkomen

te modelleren is via CFD-technieken (Computational Fluid Dynamics). Deze methode ver-

deelt het systeem in een groot aantal1 segmenten. Op elk van deze segmenten worden de

wetten van behoud van energie, momentum en massa toegepast. Dit leidt voor elk segment

tot een aantal differentiaalvergelijkingen. Het is duidelijk dat via deze methode heel wat

berekeningen moeten worden uitgevoerd. Tegenwoordig is dat meestal geen probleem, gezien

de grote rekenkracht van moderne computers. Doch, in sommige gevallen is het gewenst

de rekenintensiteit te verlichten, bijvoorbeeld in het geval van ’real time prediction’, ’model

based predictive control’ (MBPC), ... Voor deze applicaties moet de simulator veel sneller

werken dan het werkelijke proces omdat de simulator de toekomstige uitgang moet voorspel-

len. Vandaar de nood aan technieken die op een snellere manier de uitgang van een proces

kunnen reproduceren. Ondermeer hiervoor werd de POD-methode ontwikkeld. Het aantal

berekeningen kan via deze methode soms met een factor 100 gereduceerd worden [11].

De tweede simulator steunt op de POD-methode. Zoals reeds aangehaald in de inleiding

gebruikt ze een aantal orthonormale basisfuncties die uit gemeten of berekende gegevens kun-

nen gedistilleerd worden. Deze gegevens worden best gemeten (of berekend) in een situatie

waarbij het systeem sterk geexciteerd wordt teneinde zoveel mogelijk informatie te verzamelen1Dit aantal kan oplopen tot 108.

52

Page 63: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 53

in de basisfuncties. De orthonormale basisfuncties geven de ruimtelijke distributie van een

bepaalde fysische grootheid, zoals bijvoorbeeld de temperatuur, weer. Om verder de tijds-

afhankelijkheid van het systeem te beschrijven wordt elke basisfunctie vermenigvuldigd met

zijn tijdsafhankelijke coefficient. Deze coefficienten kunnen gevonden worden door de diffe-

rentiaalvergelijking, die het systeem beschrijft, op de basisfuncties te gaan projecteren. Uit

deze projectie ontstaat een set van vergelijkingen die samen met een aantal rand- en begin-

voorwaarden uitdrukkingen genereren voor de tijdsafhankelijke coefficienten [8],[9],[10],[11].

5.1 Theorie

Omdat het misschien allemaal wat magisch overkomt is een stukje theorie hier op zijn plaats.

Omdat dit werk echter niet theoretisch is opgevat, blijft dit inleidend stukje theorie beperkt

tot de belangrijkste begrippen. Voor een wiskundige, maar zeer begrijpelijke uitleg wordt

verwezen naar [11]. Een belangrijk theorema hierin luidt als volgt:

Theorema 5.1 Als (χ, (., .)) een separabele Hilbert ruimte2is met orthonormale basis {φi}i∈I ,

dan kan elk element f ∈ χ geschreven worden als:

f =∑i∈I

(f, φi)φi (5.1)

met χ een lineaire vectorruimte en I een aftelbare verzameling.

Hierin stelt (f, φi) de projectie van de functie f op φi voor. We kunnen deze expansie nu

toepassen op de tijds- en plaatsafhankelijke temperatuur T (x, t) van het systeem. Om dit te

kunnen doen moet de ruimte χ waartoe de functie T (x, t) behoort, voldoen aan de volgende

voorwaarden:

• de ruimte χ moet een lineaire ruimte zijn, voorzien van optelling en vermenigvuldiging.

• de ruimte χ moet voorzien zijn van het inwendig product: χ×χ→ R, zodat het begrip

orthonormaliteit geformuleerd kan worden.2Zie bijlage B voor een definitie van separabele Hilbert ruimte.

Page 64: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 54

• de ruimte χ moet een separabele Hilbertruimte zijn.

Aan deze drie voorwaarden is voldaan [11] en theorema 5.1 is van toepassing. De functie

T (x, t) kan als volgt voorgesteld worden:

T (x, t) =∑i∈I

ai(t)φi(x) (5.2)

met voor alle t ∈ T:

ai(t) = (T (x, t), φi(x))

de tijdsafhankelijk coefficienten. Beschouw nu Tsnap als

Tsnap = {T(t) ∈ χ | t ∈ T}

Met T(t) wordt de temperatuursdistributie over het ganse systeem op tijdstip t bedoeld en

T ⊆ R stelt het tijdsdomein voor. Tsnap is dus een verzameling van tijd- en plaatsafhankelijke

temperaturen, die worden bekomen uit metingen of berekeningen. Uit deze Tsnap moet de

set van orthonormale basisfuncties {φi}i∈I gevonden worden.

5.1.1 Bepalen van de basisfuncties

Alnaargelang de Hilbertruimte χ eindig of oneindig dimensionaal is, zal de sommatie in 5.2

gebeuren over een eindig of oneindig aantal basisfuncties. Gezien een computer slechts kan

werken met een eindig aantal variabelen, worden de functies φ(x)i voorgesteld door vectoren

met een eindig aantal elementen φ(k)i, k = 1...N . Dit impliceert dat de ruimte die kan

opgespannen worden door deze vectoren φi(k) maximaal N dimensionaal kan zijn. Bijgevolg

gebeuren de sommaties in wat volgt over een eindig aantal basisfuncties. Verder moeten de

signalen ai(t) in de computer ook voorgesteld worden door vectoren met een eindig aantal

elementen ai(t) waarbij t nu een discrete waarde voorstelt (t = 1...M). Dit leidt tot de

volgende nieuwe uitdrukking voor 5.2:

T (k, t) =N∑i

ai(t)φi(k), t = 1...M, k = 1...N (5.3)

Page 65: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 55

Bedoeling van de POD methode is het reduceren van het aantal basisfuncties φi, maar op een

zodanige manier dat de expansie 5.3 nog nauwkeurig blijft. Op een meer wiskundige manier

wordt dit als volgt geformuleerd:

Probleem 5.1 Gegeven de expansieN∑iai(t)φi(k) van de functie T (k, t) in de Hilbertruimte

χ waartoe T (k, t) behoort, vind T (k, t)′

=n∑iai(t)φi(k) waarvoor geldt dat n < N , zo dat

d(T (k, t) , T (k, t)

′)

minimaal is.

met de volgende definitie:

Definitie 5.1 d(T (k, t) , T (k, t)

′)

= ‖T (k, t)− T (k, t)′‖

Er wordt dus een T (k, t)′

gezocht waarbij de sommatie in expansie 5.3 over n loopt met

n < N . In het extreme geval dat n = 1 wordt expansie 5.3 dus1∑

i=1ai(t)φi(k) = a1(t)φ1(k).

De ruimtelijke component van de tijd- en plaatsafhankelijke temperatuur T (k, t) wordt in

deze expansie dus enkel gegeven door φ1. Deze eerste basisfunctie moet dus de ruimtelijke

distributie van de temperatuur zo goed mogelijk weergeven en dit voor alle tijdstippen t =

1...M . Om dit te bekomen wordt de volgende extremumvergelijking opgesteld:

φ1 = maxφ1∈χ

⟨(T (k, t), φ1)2

⟩‖φ1‖2

(5.4)

Waarbij 〈 〉 staat voor het tijdsgemiddelde. De projectie van φ1 op de functie T (k, t) moet

dus gemaximaliseerd worden en dit voor alle tijdstippen t.

De oplossing van dit extremumprobleem wordt afgeleid in bijlage B. Het resultaat van de

berekening is eenvoudig; φ1 moet voldoen aan volgende eigenwaardevergelijking:

〈(T (k, t), φ1)χT (k, t)〉 = λ1φ1 (5.5)

Zoals reeds eerder vermeld worden de basisfuncties φi bekomen uit gemeten of berekende

data. Deze data werd verzameld in de snapshot matrix Tsnap die dus niets anders is dan een

matrixvoorstelling van de functie T (k, t) geevalueerd in een aantal punten k = 1...N op een

aantal tijdstippen t = 1...M :

Page 66: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 56

T (1, 1) T (1, 2) · · · T (1,M)

Tsnap = T (2, 1) T (2, 2) · · · T (2,M)...

.... . .

...

T (N, 1) T (N, 2) · · · T (N,M)

Vergelijking 5.5 kan dus geschreven worden als:

⟨(Tsnap, φ1)χ Tsnap

⟩= λ1φ1 (5.6)

Dit kan korter geschreven worden in operatorvorm, waarbij de operator C gedefinieerd wordt

als C(φi) = 〈(Tsnap, φi)χTsnap〉:

C(φ1) = λ1φ1 (5.7)

λ1 is dus een eigenwaarde van de operator C met bijhorende eigenvector φ1 die de eerste

basisvector vormt van de expansie 5.3. De tweede basisfunctie φ2 wordt uit dezelfde extre-

mumvergelijking 5.4 gevonden, maar met de restrictie dat φ2 orthonormaal moet zijn met φ1.

Ditzelfde geldt nu voor alle basisfuncties; ze voldoen allemaal aan de extremumvergelijking 5.4

en ze moeten allemaal orthonormaal zijn. Als nu de operator C zelftoegevoegd is, dan kan

aangetoond worden dat al zijn eigenvectoren orthogonaal (en na normering orthonormaal)

zijn en dat zijn eigenwaarden voldoen aan de ongelijkheid:

λ1 ≥ λ2 ≥ ... ≥ λN (5.8)

De gezochte basisfuncties zijn dus eenvoudigweg de eigenvectoren operator C. Uit de manier

waarop de basisfuncties φi geconstrueerd worden is het duidelijk dat de basisfunctie met

de meeste informatie over de ruimtelijke distributie van de temperatuur, basisfunctie φ1 is.

Basisfunctie φ2 is die met het op een na meeste informatie over de ruimtelijke distributie van

de temperatuur enzovoort. Het is echter niet de bedoeling om alle gevonden basisfuncties φi

te gaan gebruiken, maar slechts een deel ervan. Het feit dat niet alle φi’s nodig zijn voor

Page 67: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 57

een nauwkeurige voorstelling van de functie T (x, t) is juist het grote voordeel van de POD-

methode. Er is echter een criterium nodig om te weten welke functies φi nog als belangrijk

mogen beschouwd worden en welke niet. Hiervoor wordt gekeken naar de eigenwaarden λi

die volgen uit eigenwaardevergelijking 5.5. Er werd reeds gezegd dat de relevantie van de

basisfuncties φi afneemt bij toenemende index i. Samen met ongelijkheid 5.8 levert dit volgend

criterium:

Pn =

n∑i=1

λi

N∑i=1

λi

(5.9)

Als alle basisfuncties in gebruik worden genomen is n = N en wordt Pn gelijk aan 1. Hoe

minder basisfuncties beschouwd worden, hoe minder nauwkeurig decompositie 5.3 en hoe

lager Pn zal worden. Pn kan beschouwd worden als een maat voor de nauwkeurigheid van

decompositie 5.3.

5.1.2 Bepalen van de tijdsafhankelijke coefficienten

Er wordt nu getracht een uitdrukking te vinden voor tijdsafhankelijke coefficienten ai(t).

Definieer daartoe de volgende partiele differentiaalvergelijking voor de functie

T (x, t) : X× T → R:

M(T ) = D(T ) (5.10)

Met D een differentiaaloperator die enkel afgeleiden naar de plaats bevat en M een differen-

tiaaloperator die enkel afgeleiden naar de tijd bevat:

M(T ) = M0 +M1∂T∂t + ...+MP

∂P T∂tP

D(T ) = D0 +D1∂T∂x + ...+DP

′ ∂P′T

∂xP′

(5.11)

Definieer nu de restoperator R van vergelijking 5.10 als volgt:

R(T ) = M(T )−D(T ) (5.12)

Page 68: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 58

Voor de functie T in vergelijking 5.10 is R(T ) dus duidelijk nul. Stel dat er reeds een POD-

basis {φi}Ni=1 voor de functie T (x, t) gevonden werd. Als de oplossing T (x, t) van diffe-

rentiaalvergelijking 5.10 vervangen wordt door een gereduceerde lineaire combinatie van de

basisfuncties φi, waarbij de sommatie over n loopt met n ≤ N :

Tn =n∑

i=1

ai(t)φi(x) ≈ T (x, t) (5.13)

dan zal de restoperator R(Tn) over het algemeen niet meer nul zijn. Om de originele partiele

differentiaalvergelijking 5.10 zo goed mogelijk te benaderen wordt geprobeerd om de tijdsaf-

hankelijke coefficienten ai(t) zodanig te kiezen dat de restoperator R(Tn) nul wordt. Om dit

na te streven wordt gebruik gemaakt van een zogenaamde Galerkin Projectie.

Definitie 5.2 Gegeven een orthonormale basis {φi}Ni=1 van een Hilbertruimte χ en een resi-

duele operator R van het model M(T ) = D(T ). Als T benaderd wordt door een expansie van

de vorm Tn(k, t) =n∑

i=1ai(t)φi(k) dan resulteert een Galerkin projectie in:

(R (Tn) , φi) = 0; i = 1...n (5.14)

Deze definitie zegt dat de projectie van de restoperator R(Tn) op het gereduceerde aantal

basisfuncties {φi}ni=1; n ≤ N nul moet zijn. Deze projectie leidt tot een uitdrukking voor de

tijdsafhankelijk coefficienten ai(t):

R(Tn) = M(Tn)−D(Tn) = M0+M1∂Tn

∂t+...+MP

∂PTn

∂tP−D0−D1

∂Tn

∂x−...−DP ′

∂P′Tn

∂xP ′ (5.15)

De restoperator R(Tn) wordt nu geprojecteerd op de gereduceerde basis {φj}nj=1 en Tn wordt

voluit geschreven:

(R(Tn), φj(x)) =

M0

n∑i=1

ai(t) (φi(x), φj(x)) +M1

n∑i=1

∂ai(t)∂t (φi(x), φj(x)) + ...+MP

n∑i=1

∂P ai(t)∂tP

(φi(x), φj(x))

−D0

n∑i=1

ai(t) (φi(x), φj(x))−D1

n∑i=1

ai(t)(

∂φi(x)∂x , φj(x)

)− ...−DP ′

n∑i=1

ai(t)(

∂P′φi(x)

∂xP′ , φj(x)

)= 0

(5.16)

Page 69: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 59

Rekeninghoudend met de orthonormaliteit van de basisfuncties: (φi, φj) = δij leidt dit tot

een differentiaalvergelijking voor de coefficienten ai(t):

MP∂P aj(t)

∂tP+ ...+M1

∂aj(t)∂t +M0aj(t) =∑

i=1nai(t)

[D0 +D1

(∂φi(x)

∂x , φj(x))

+ ...+DP ′

(∂P′ φi(x)

∂xP′ , φj(x)

)] (5.17)

5.2 Praktijk

De analytische formules en algebraısche basis zijn nu beschikbaar om dit in de praktijk toe te

passen. Er bestaat een eenvoudige methode die toelaat de beschreven theorie in praktijk om

te zetten [13]. Daartoe wordt een eerste orde partiele differentiaalvergelijking opgesteld die

het tijdsafhankelijke temperatuursprofiel van de olie beschrijft. Vervolgens wordt van deze

vergelijking een discreet toestandsmodel opgesteld. Dit toestandsmodel genereert het tijdsaf-

hankelijk temperatuursprofiel in het systeem en kan dus gebruikt worden om de waarden voor

Tsnap te berekenen. Uit de uitdrukking voor het toestandsmodel kunnen verder de tijdsaf-

hankelijk coefficienten ai(t) gevonden worden. Deze methode impliceert wel dat de resultaten

via de POD-methode nooit beter kunnen zijn dan de resultaten van het toestandsmodel. De

reden dat de POD-methode gebruikt wordt, is dat het aantal berekeningen sterk gereduceerd

wordt.

Er wordt opnieuw ondersteld dat het volledige buizensysteem is opgedeeld in tien parallelle

leidingen zoals te zien in figuur 4.3. Verder wordt opnieuw een onderscheid gemaakt tussen

de toevoer-, verhittings- en afvoersectie. Het is belangrijk dat hier ondersteld wordt dat de

leidingen dezelfde diameter hebben in elk van deze drie secties. In de methode waarbij niet-

uniforme tijdsmonsters gebruikt werden, was dit niet het geval (zie tabel 4.4). Daar was het

ook niet nodig omdat enkel het volume van elk segment gelijk moest zijn. In de methode

waarbij POD-technieken gehanteerd worden, moeten alle segmenten hetzelfde volume en de-

zelfde lengte ∆x hebben. Dit laatste volgt uit het feit dat er bij de discretizering slechts een

ruimtelijke discretisatie geformuleerd wordt. Dit impliceert dat de diameter van elk segment

gelijk moet zijn. Daardoor wordt de diameter van de leidingen in de toevoer- en afvoersectie

gelijkgesteld aan de diameter van de leidingen in de verhittingssectie. Dit zal de lengte van de

leidingen in toevoer- en afvoersectie veranderen, maar dit is niet erg want hun volume blijft

Page 70: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 60

ongewijzigd. De nieuwe lengte voor leiding i in de toevoersectie (en een volledige analoge

formule voor de afvoersectie) is eenvoudig te berekenen volgens de formule:

V toevi = Ltoev

i

19

(dtoev

2

)2

π

= Ltoevnieuwi

(dverhit

2

)2

π

Ltoevnieuwi

= Ltoevi

19

(dverhit

)2

(dtoev)2(5.18)

met:

• V toevi : het volume van leiding i in de toevoersectie in m3

• Ltoevi : de lengte van leiding i in de toevoersectie in m

• dtoev: de werkelijke diameter van de toevoersectie in m

• Ltoevnieuwi

: de aangepaste lengte van leiding i in de toevoersectie in m

• dverhit: de werkelijke diameter van een leiding in de verhittingssectie in m

Voor de eenvoud wordt de methode eerst enkel toegepast op leiding 2. In een volgende stap

wordt overgegaan op de uitbreiding naar de volledige centrale.

5.2.1 Vergelijking voor het temperatuursprofiel

Voor het berekenen van een vergelijking die het temperatuursprofiel langsheen het systeem

beschrijft, wordt vertrokken van de wet van behoud van energie [14]:

ρfcfDT (x, t)Dt

= k∂2

∂x2T (x, t) + S(x, t) (5.19)

• ρf : dichtheid van de olie in kg/m3

• cf : specifieke warmtecapaciteit van de olie in J/kg K

Page 71: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 61

• T (x, t): plaats- en tijdsafhankelijk temperatuursprofiel van de olie

• k: warmtegeleidingscoefficient van de olie in W/m K

• S(x, t): plaats- en tijdsafhankelijke warmtebron in W/m3

Hierin stelt DDt = ∂

∂t + vx(t) ∂∂x een substantiele afgeleide voor. Dit is een tijdsafgeleide die

rekening houdt met de verplaatsing van de olie (vx(t) is de tijdsafhankelijke snelheid van de

olie in m/s). De warmtegeleidingscoefficient k wordt opnieuw verwaarloosd en de warmtebron

is in dit geval het geconcentreerde zonlicht Irr(t) (in W/m2). De differentiaalvergelijking

5.19 is enkel geldig voor de verhittingssectie. In de toevoer- en afvoersectie is immers geen

warmtebron aanwezig. In deze twee secties wordt volgende vergelijking gebruikt:

ρfcfDT (x, t)Dt

= ρfcf∂T (x, t)∂t

+ ρfcfvx(t)∂T (x, t)∂x

= 0 (5.20)

Het zonlicht wordt gecollecteerd door parabolische spiegels die een apertuur Amirr en een

reflectiecoefficient ε hebben. Vergelijkingen 5.19 en 5.20 zijn geldig per m3 en worden dus

vermenigvuldigd met het volume van de respectievelijke secties: Vtoev,Vverhit en Vafv. Dit

leidt tot:

ρfcfVtoev∂T (x, t)∂t

+ ρfcfVtoevvx(t)∂T (x, t)∂x

= 0 (5.21)

ρfcfVverhit∂T (x, t)∂t

+ ρfcfVverhitvx(t)∂T (x, t)∂x

= Irr(t)εAmirr (5.22)

ρfcfVafv∂T (x, t)∂t

+ ρfcfVafvvx(t)∂T (x, t)∂x

= 0 (5.23)

Waarbij vergelijkingen 5.21, 5.22 en 5.23 geldig zijn voor respectievelijk de toevoer-, de

verhittings- en de afvoersectie. Verder kan elk van de drie volumes Vtoev,Vverhit en Vafv

opgesplitst worden als Vi = A.Li waarbij A (m2) de dwarsdoornede en Li (m) de lengte van

leiding 2 in sectie i voorstelt (i =toev, verhit of avf). De diameter in elk van de drie secties

werd gelijk gekozen dus is de dwarsdoorsnede A in elk van de drie secties ook gelijk. Het

product van vx(t) met A vormt een uitdrukking voor het debiet q(t) van de olie in loop 2.

Dit leidt tot de volgende vormen voor de partiele differentiaalvergelijking:

Page 72: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 62

ρfcfVtoev∂T (x, t)∂t

+ ρfcfLtoevq(t)∂T (x, t)∂x

= 0 (5.24)

ρfcfVverhit∂T (x, t)∂t

+ ρfcfLverhitq(t)∂T (x, t)∂x

= Irr(t)εAmirr (5.25)

ρfcfVafv∂T (x, t)∂t

+ ρfcfLafvq(t)∂T (x, t)∂x

= 0 (5.26)

Er wordt een randvoorwaarde gedefinieerd voor het begin van het systeem, aan de ingang van

de toevoersectie:

T (0, t) = Tin(t) (5.27)

De ruimtelijke distributie van de temperatuur in het systeem is niet gekend op tijdstip t = 0,

daarom wordt ze gelijk gesteld aan een constante, nl. de ingangstemperatuur op tijdstip

t = 0:

T (x, 0) = Tin(0) (5.28)

5.2.2 Opstellen van het toestandsmodel

Vergelijkingen 5.24, 5.25 en 5.26 dienen nu gediscretizeerd te worden om een discreet toe-

standsmodel te krijgen. Voor de discretizering wordt beroep gedaan op de ’Implicit Backward

Euler Method’[15]. Dit leidt tot de volgende uitdrukkingen:

c31T t

k − T t−1k

∆t+ c21

T tk − T t

k−1

∆x= 0 voor k = 1...N1 (5.29)

c32T t

k − T t−1k

∆t+ c22

T tk − T t

k−1

∆x= c1Irr

tk voor k = N1 + 1...N1 +N2 (5.30)

c33T t

k − T t−1k

∆t+ c23

T tk − T t

k−1

∆x= 0 voor k = N1 +N2 + 1...N1 +N2 +N3(5.31)

met

• T tk: temperatuur in segment k op tijdstip t in K

• c1 = εAmirr

Page 73: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 63

• c21 = ρfcfLtoev c22 = ρfcfLverhit c23 = ρfcfLafv

• c31 = ρfcfVtoev c32 = ρfcfVverhit c33 = ρfcfVafv

• N1, N2 en N3 het aantal ruimtelijke discretizatiestappen in respectievelijk de toevoer-,

verhittings- en afvoersectie

Door de verschillende termen te herschikken in vergelijking 5.29 wordt een uitdrukking beko-

men voor T t−1k :

T t−1k = T t

k +c21∆tc31∆x

(T t

k − T tk−1

)= T t

k + at11

(T t

k − T tk−1

)= (1 + at

11)Tkt − at

11Ttk−1 (5.32)

Voor vergelijkingen 5.30 en 5.31 volgen analoge resultaten:

T t−1k = (1 + at

12)Tkt − at

12Ttk−1 + at

2Irrt (5.33)

T t−1k = (1 + at

13)Tkt − at

13Ttk−1 (5.34)

met

• at11 = c21∆t

c31∆xqt at

12 = c22∆tc32∆xq

t at13 = c23∆t

c33∆xqt

• at2 = − c12∆t

c32

Om T t1 te berekenen wordt randvoorwaarde 5.27 gebruikt:

T t−11 = (1 + at

11)Tt1 − at

11Tt0 + a2Irr

t (5.35)

waarbij T t0 verwijst naar de ingangstemperatuur Tin van het systeem. Vergelijkingen 5.32,

5.33 en 5.34 kan in matrixvorm gegoten worden:

Page 74: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 64

1 + at11

−1 1 + at11

. . . . . .

−1 1 + at12

. . . . . .

−1 1 + 1at13

T t1

T t2

...

T tN1+1

...

T tN1+N2+N3

+

0

0...

a2Irrt

...

0

=

T t−11 + at

1Tt0

T t−12

...

T t−1N1+1...

T t−1N1+N2+N3

(5.36)

De matrices kunnen wat beter gerangschikt worden:

1 + at11

−1 1 + at11

. . . . . .

−1 1 + at12

. . . . . .

−1 1 + 1at13

T t1

T t2

...

T tN1+1

...

T tN1+N2+N3

=

T t−11 + at

1Tt0

T t−12

...

T t−1N1+1...

T t−1N1+N2+N3

0

0...

a2Irrt

...

0

(5.37)

Dit kan nog korter geschreven worden als:

A(t)T(t) = T(t− 1) + u(t)

T(t) = A−1(t)T(t− 1) + A−1(t)u(t) (5.38)

5.2.3 Berekenen van de basisfuncties

Er is dus een uitdrukking beschikbaar om het temperatuursprofiel in het systeem op elk tijd-

stip t = 1...M te berekenen. Hiermee kan de snapshotmatrix Tsnap opgesteld worden. Eens

deze gekend is kan vergelijking 5.6 berekend worden. Dit leidt tot de volgende uitdrukking:

C(φi) = 〈(Tsnap, φi)χTsnap〉 =1M

TsnapTφiTsnap =

1M

TsnapTsnapTφi = λiφi (5.39)

Page 75: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 65

De operator C kan dus zeer eenvoudig berekend worden aan de hand van de matrixvermenig-

vuldiging:

C =1M

TsnapTsnapT (5.40)

Het totaal aantal segmenten N1 +N2 +N3 waarin leiding 2 wordt opgedeeld wordt vanaf nu

N genoemd. Op de N×N matrix C wordt nu een eigenwaardendecompositie uitgevoerd, wat

leidt tot N eigenwaarden λi en N bijhorende eigenvectoren φi. In figuur 5.1 zijn als voorbeeld

de eerste drie basisfuncties zichtbaar voor de gegevens van 15 juli:

Figuur 5.1: De eerste drie basisfuncties voor de gegevens van 15 juli.

De essentie van de POD-methode is dat er slechts een klein aantal basisfuncties φi gebruikt

worden. Er werd reeds een criterium opgesteld om te bepalen hoeveel basisfuncties nodig

zijn om nog nauwkeurige resultaten te krijgen (zie vergelijking 5.9). Als voorbeeld worden in

figuur 5.2 de eigenwaarden λi van C geplot voor de gegevens van 15 juli:

Als een waarde voor Pn gekozen wordt, kan berekend worden hoeveel basisfuncties er nodig

zijn.

Page 76: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 66

Figuur 5.2: Logaritmische plot van de eigenwaarden.

5.2.4 Bepalen van de tijdsafhankelijk coefficienten

De tijdsafhankelijke coefficienten ai(t) worden nu bepaald via de Galerkin projectie. Daartoe

worden de vectoren T(t) en T(t − 1) uit vergelijking 5.38 vervangen door hun decompositie

in basisfuncties:

T(t) →n∑

i=1

ai(t)φi(k) = Φna(t) = Tn(t)

T(t− 1) →n∑

i=1

ai(t− 1)φi(k) = Φna(t− 1) = Tn(t− 1) (5.41)

De differentieverelijking 5.38 kan dus geschreven worden als:

Tn(t) = A−1(t)Tn(t− 1) + A−1(t)u(t) (5.42)

Vervolgens wordt de restoperator R(Tn) van vergelijking 5.42 gedefinieerd:

R(Tn) = Tn(t)−A−1(t)Tn(t− 1)−A−1(t)u(t) (5.43)

Page 77: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 67

Uit definitie 5.2 volgt dat de projectie van R(Tn) van op de set van basisfuncties Φn nul moet

zijn. Dit geeft, rekeninghoudend met 5.41:

ΦnTΦna(t) = Φn

TA−1(t)Φna(t− 1) + ΦnTA−1(t)u(t) (5.44)

Aangezien de basisfuncties orthonormaal zijn is het matrix product ΦnTΦn gelijk aan 1.

ΦnTA−1(t)Φn wordt in wat volgt B(t) genoemd en Φn

TA−1(t) wordt vanaf nu korter ge-

schreven als D(t). Dit leidt tot de zeer eenvoudige uitdrukking voor de tijdsafhankelijk

coefficienten ai(t):

a(t) = B(t)a(t− 1) + D(t)u(t) (5.45)

5.2.5 Uitbreiding naar de volledige centrale

De voorgaande afleiding is slechts geldig voor een enkele leiding uit het model. Het is de

bedoeling dit uit te breiden naar de volledige centrale. Daartoe wordt de centrale gemodelleerd

als een enkele leiding, waarvan het volume hetzelfde is als de som van alle leidingen in de

centrale. Opnieuw wordt de leiding opgesplitst in een toevoer-, verhittings- en afvoersectie.

Om een model van deze nieuwe geometrie op te stellen, kan vertrokken worden van vergelij-

kingen 5.21, 5.22 en 5.23, mits aanpassing van de parameters Vtoev, Vverhit, Vafv en Amirr.

Er wordt nu immers rekening gehouden met alle spiegels en niet enkel met die van loop 2.

Amirr moet dus vermenigvuldigd worden met 9, het aantal loops dat tijdens het experiment in

gebruik werd genomen. Omdat alle leidingen in de verhittingssectie hetzelfde volume hebben,

kan Vverhit ook gewoon met 9 vermenigvuldigd worden, om dezelfde reden. Vtoev is voor elk

van de 9 leidingen verschillend, daarom wordt het gemiddelde van de negen volumes in de

toevoersectie genomen. Dit komt overeen met het volume van leiding 6 in de toevoersectie.

Vervolgens wordt dit volume ook vermenigvuldigd met 9. Dezelfde redenering geldt voor

Vafv; als nieuwe waarde voor deze parameter wordt negen keer het volume van leiding 6 in

de afvoersectie genomen.

De waarde voor de bemonsteringstijd wordt dezelfde gekozen als de bemonsteringstijd van de

data, namelijk 30 s. Als ruimtelijke discretisatiestap wordt 25 m genomen. Dit bleek door

Page 78: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 68

’gis en mis’ de beste waarde te zijn. Deze waarde voor de discretisatiestap zorgt ervoor dat

de leiding wordt opgedeeld in 22 segmenten. De Hilbertruimte van de basisfuncties heeft dus

dimensie 22 en er kunnen bijgevolg 22 orthonormale basisfuncties gevonden worden.

5.3 Resultaten

De basisfuncties moeten maar een keer opgesteld worden. Ze worden best berekend door

gebruik te maken van een experiment waarbij het systeem goed geexciteerd wordt (dit is: er

worden grote variaties aangebracht in het ingangssignaal en de storingen). Op deze manier

komt veel informatie in de basisfuncties terecht. Dit is de reden dat de basisfuncties berekend

worden aan de hand van de gegevens van 28 juli, aangezien er die dag grote variaties in het

debiet waren.

Er moet nog besloten worden hoeveel basisfuncties er in rekening gebracht worden. Daarvoor

werd een criterium opgesteld, zie vergelijking 5.9. De nauwkeurigheid van de POD-methode

werd er voorgesteld door de parameter Pn; hoe dichter Pn bij 1 hoe nauwkeuriger. Daarom

wordt als waarde voor Pn 1− 10−5 genomen. Voor de data van 28 juli komt dit overeen met

4 basisfuncties.

5.3.1 15 juli

In figuur 5.33 zijn de resultaten zichtbaar voor de temperatuur op het eind van de afvoersectie

berekend via de POD-methode. Ze maken zoals gezegd gebruik van eerste de vier basisfuncties

berekend met gegevens van 28 juli.3Voor een groter formaat van de figuren wordt verwezen naar bijlage C

Page 79: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 69

0 50 100 150 200 250 300 350 400200

400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 50 100 150 200 250 300 350 400

0

5

10

debi

et (

l/s)

tijdsmonster

0 50 100 150 200 250 300 350 400120

130

140

150

160

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 50 100 150 200 250 300 350 400100

150

200

250

uitg

angs

tem

pera

tuur

(°C

)

tijdsmonster

reele temperatuurgesimuleerde temperatuur

0 50 100 150 200 250 300 350 4000

5

10

tijdsmonster

fout

in %

Figuur 5.3: Resultaten met de POD-methode voor 15 juli.

De resultaten blijken vrij goed te zijn. De fout komt nergens boven de 5% behalve tijdens

de beginwaarden en helemaal op het einde. De reden voor de afwijkende beginwaarden is

dezelfde is als bij de vorige simulator. De temperatuursdistributie van de olie in het systeem

is niet gekend op de eerste tijdstippen. De reden voor de afwijkende eindwaarden is eveneens

dezelfde als bij de vorige simulator: op het eind van elke dag worden de spiegels naar beneden

gericht om ze te beschermen tegen stof en regen. Daardoor neemt de temperatuur van de olie

sterk af op het einde. Dit verdraaien van de spiegels wordt niet gesimuleerd. De berekende

temperaturen zijn verder ook goed bij lage waarden voor het debiet. Dit in tegenstelling tot

de vorige simulator. Verder is de tijdsshift die in de eerste versie van de vorige simulator

opdook hier afwezig. Dit komt omdat de experimenteel bepaalde lengte van de afvoersectie

(zie sectie 4.6) gebruikt werd. Een laatste opmerking: de simulatie gebeurt zeer snel en neemt

Page 80: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 70

ongeveer een seconde in beslag in vergelijking met ongeveer 30 s bij de vorige simulator. Dit

werd ook verwacht, aangezien het de bedoeling is van POD om het aantal berekeningen sterk

te reduceren. Er wordt nogmaals benadrukt dat de resultaten via de POD-methode niet beter

kunnen zijn dan de resultaten van het toestandsmodel. Voor een vergelijking beide resultaten

voor alledrie de testdagen wordt verwezen naar bijlage C. De afwijkingen die voorkomen

tussen de reele temperatuur en de temperatuur berekend via POD zijn dus vooral te wijten

aan de nauwkeurigheid van het toestandsmodel.

5.3.2 16 juli

In figuur 5.4 zijn de resultaten van de POD-methode zichtbaar voor de gegevens van 16 juli.

0 100 200 300 400 500 600400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 100 200 300 400 500 600

0

5

10

debi

et (

l/s)

tijdsmonster

0 100 200 300 400 500 60050

100

150

200

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 100 200 300 400 500 60040

60

80

100

120

140

160

180

200

220

240

uitg

angs

tem

pera

tuur

(°C

)

tijdsmonster

reele temperatuurgesimuleerde temperatuur

0 100 200 300 400 500 6000

5

10

tijdsmonster

fout

in %

Figuur 5.4: Resultaten met de POD-methode voor 16 juli.

Zelfde opmerkingen voor de beginwaarden als bij de vorige figuur. Daarnaast is er ook een

Page 81: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 71

opmerkelijk grote fout te zien in de eerste helft van het experiment. De reden hiervoor wordt

later onderzocht. De tweede helft van de simulatie ziet er redelijk goed uit. De fout blijft

steeds een stuk onder de 5%.

5.3.3 28 juli

In figuur 5.5 worden de resultaten getoond van de simulatie van 28 juli.

0 100 200 300 400 500 600 700200

400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 100 200 300 400 500 600 700

0

5

10

debi

et (

l/s)

tijdsmonster

0 100 200 300 400 500 600 7000

50

100

150

200

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 100 200 300 400 500 600 7000

50

100

150

200

250

300

uitg

angs

tem

pera

tuur

(°C

)

tijdsmonster

reele temperatuurgesimuleerde temperatuur

0 100 200 300 400 500 600 7000

5

10

tijdsmonster

fout

in %

Figuur 5.5: Resultaten met de POD-methode voor 28 juli.

Opnieuw zijn er sterk afwijkende resultaten voor ruim de eerste helft van de simulatie, maar

dit wordt verderop onderzocht. In figuur 5.5 is ook te zien dat de simulator goed reageert

op een storing in de ingangstemperatuur. De daling in de werkelijke uitgangstemperatuur,

veroorzaakt door een daling in de ingangstemperatuur, is ook aanwezig in de gesimuleerde

uitgangstemperatuur (omcirkeld).

Page 82: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 5. Methode II: Proper Orthogonal Decomposition 72

5.3.4 Conclusies

Vooreerst is de POD-simulator veel sneller dan de vorige. Het duurt ongeveer 1 seconde om

alle berekeningen uit te voeren, terwijl de eerste simulator er ongeveer een halve minuut over

deed. Verder bleken de resultaten het best voor 15 juli. De fout bleef er telkens onder de

5%, behalve in het begin en op het einde. Er werden ook goede resultaten geboekt voor lage

waarden van het debiet, wat minder het geval was met de vorige simulator. Voor 16 en 28 juli

waren de resultaten van de simulator sterk afwijkend. Enkel voor de tweede helft van beide

experimenten was er een overeenkomst tussen de waarden berekend door de simulator en de

werkelijke waarden. De reden hiervoor is waarschijnlijk te wijten aan het feit dat de opwar-

ming van de olie via twee mechanismen afhankelijk is van het debiet. Een eerste mechanisme

is vrij logisch; hoe hoger het debiet hoe minder tijd de olie in de verhittingssectie doorbrengt

dus hoe minder de olie zal opwarmen. Hiermee wordt rekening gehouden in de POD-methode

via het gebruik van de substantiele afgeleide DDt . Deze houdt rekening met het debiet van de

olie. Een tweede mechanisme is minder voor de hand liggend en werd reeds aangehaald in het

opstellen van de eerste simulator. Daar werd een warmtetransfercoefficient Ht ingevoerd die

op een niet-lineaire manier afhankelijk was van het debiet. Deze kan beschouwd worden als

een convectiecoefficient: hoe sneller de olie langs de metalen wand van de pijpleiding vloeit,

hoe meer warmte de olie zal opnemen. Dit werd vergeleken met een ventilator die gebruikt

wordt om processors sneller af te koelen. Dit mechanisme heeft dus een omgekeerd effect op

de opwarming van de olie in vergelijking met het vorige mechanisme. In het toestandsmodel

dat werd opgesteld voor de tweede simulator werd de temperatuur van de metalen pijpleiding

niet gesimuleerd en ook de warmtetransfercoefficient Ht werd niet gedefinieerd. Aangezien

de POD-simulator opgesteld wordt uit het toestandsmodel, zal deze de parameter Ht ook

niet bevatten. Dus de gesimuleerde temperatuur zal bij lage debietwaarden waarschijnlijk te

hoog zijn. Dit kan een mogelijke verklaring zijn voor de afwijkingen in de eerste helft van de

simulaties van 16 en 28 juli.

Page 83: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 6

Besluit

In dit eindwerk werd op twee manieren een simulator ontworpen voor het ACUREX-veld op

het Plataforma Solar de Almeria. De eerste maakte gebruik van een gedistribueerd parameter

model met niet-uniforme tijdsmonsters. De reden voor het gebruik van niet-uniforme tijds-

monsters was het varierend debiet. Er werd vertrokken van twee vergelijkingen die enerzijds

de temperatuur van de metalen leiding en anderzijds de temperatuur van de olie bepaalden.

Er werden enkele vereenvoudigende veronderstellingen gemaakt om het model niet te com-

plex te maken. De resultaten bleken de werkelijkheid vrij goed te benaderen. Er was wel

telkens een probleem in het begin en op het eind van de simulatie. Het eerste probleem werd

toegeschreven aan het feit dat de initiele temperatuursdistributie in het systeem niet gekend

is. Het tweede probleem was een gevolg van het feit dat de spiegels op het einde van het

experiment naar beneden werden gericht. Verder leken er ook problemen op te treden bij lage

waarden van het debiet. De reden hiervoor is waarschijnlijk een slechte uitdrukking voor de

warmtetransfercoefficient Ht.

Een voordeel van de eerste methode is dat alle parameters een duidelijke fysische betekenis

hebben. Voor sommige diende de waarde op een experimentele manier bepaald te worden,

zoals voor Ht, Hl en de lengte van de afvoersectie.

Een nadeel van de eerste methode is dat het aantal berekeningen relatief groot is; het simuleren

van de gegevens van 15, 16 en 28 juli duurt gemiddeld ongeveer 30 s.

De tweede simulator steunde op POD-technieken. Deze maken gebruik van orthonormale

73

Page 84: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Hoofdstuk 6. Besluit 74

basisfuncties die de ruimtelijke distributie van een belangrijke parameter, in dit geval de

temperatuur, beschrijven. De basisfuncties worden vermenigvuldigd met tijdsafhankelijke

coefficienten om de tijdsafhankelijkheid van het systeem weer te geven. Er werd een discreet

toestandsmodel afgeleid uit de vergelijking van behoud van energie. Dit toestandsmodel le-

verde genoeg data om de basisfuncties te kunnen berekenen. Uit dit toestandsmodel konden

verder op een eenvoudige manier de tijdsafhanklijke coefficienten bepaald worden. De resul-

taten waren het best voor 15 juli. Er was telkens een goede overeenkomst tussen de werkelijk

en de gesimuleerde waarde, behalve in het begin en op het einde. De reden hiervoor is de-

zelfde als bij de vorige simulator. Voorts waren de resultaten ook goed voor lage waarden

van het debiet. Voor 16 en 28 juli daarentegen, bleek er slechts vanaf halverwege het ex-

periment een goede overeenkomst te bestaan tussen de resultaten van de simulator en de

werkelijke waarden. Een mogelijke oorzaak hiervan werd toegeschreven aan het ontbreken

van een niet-lineaire warmtetransfercoefficient Ht.

Een voordeel van deze methode is het lage aantal berekeningen. Daar vooral de eerste basis-

functies het meest representatief zijn voor de temperatuursdistributie in het systeem, moeten

ook enkel die in rekening gebracht worden. Het lage aantal berekeningen heeft als gevolg

dat de simulaties zeer snel kunnen gebeuren. Zo duurde het simuleren van de gegevens van

15, 16 en 28 juli gemiddeld ongeveer 1 s. Verder moeten de basisfuncties slechts eenmaal

berekend worden. Hiervoor wordt best gebruik gemaakt van gegevens verzameld tijdens een

experiment waarbij het systeem voldoende geexciteerd werd, bijvoorbeeld dat van 28 juli.

Een nadeel van de POD-methode is dat de simulator minder goed reageert op data van

twee van de drie testdagen. De simulator kan waarschijnlijk verbeterd worden door in het

toestandsmodel een warmtetransfercoefficient in te voeren die op een niet-lineaire manier van

het debiet afhangt.

Page 85: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage A

Dode tijden

In de onderstaande tabel staan de dode tijden die optreden in de verschillende leidingen van

de drie secties, voor alle waarden van het debiet. De waarden werden berekend via de formule

τ = 1000Vq met τ de dode tijd in s, V het volume in m3, q het debiet in l/s en 1000 een

omrekenfactor om het volume om te zetten van m3 naar l. Ze zijn dus niet experimenteel

maar theoretisch.

(s) Toevoersectie

debiet loop 1 loop 2 loop 3 loop 4 loop 5 loop 6 loop 7 loop 8 loop 9 loop 10

(l/s)

2 138 177 216 255 293 332 371 410 449 488

3 92 118 144 170 196 222 247 273 299 325

4 69 88 108 127 147 166 186 205 224 244

5 55 71 86 102 117 133 148 164 180 195

6 46 59 72 85 98 111 124 137 150 163

7 39 51 62 73 84 95 106 117 128 139

8 38 49 60 71 82 92 103 114 125 136

9 34 44 54 64 73 83 93 103 112 122

Tabel A.1: Dode tijden voor de toevoersectie.

75

Page 86: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage A. Dode tijden 76

De volumes van alle loops in de verhittingssectie zijn dezelfde. Daardoor is de dode tijd voor

elke loop ook dezelfde.

(s) Verhittingssectie

debiet loop i; i = 1...10

(l/s)

2 514

3 343

4 257

5 206

6 171

7 147

8 128

9 114

Tabel A.2: Dode tijden voor de verhittingssectie.

(s) Afvoersectie

debiet loop 1 loop 2 loop 3 loop 4 loop 5 loop 6 loop 7 loop 8 loop 9 loop 10

(l/s)

2 610 648 687 726 765 804 843 882 921 959

3 406 432 458 484 510 536 562 588 614 640

4 305 324 344 363 383 402 421 441 460 480

5 244 259 275 290 306 322 337 353 368 384

6 203 216 229 242 255 268 281 294 307 320

7 174 185 196 207 219 230 241 252 263 274

8 152 162 172 182 191 201 211 220 230 240

9 135 144 153 161 170 179 187 196 205 213

Tabel A.3: Dode tijden voor de afvoersectie.

Page 87: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage A. Dode tijden 77

Als laatste worden de dode tijden voor gans het systeem (toevoer-, verhittings- en afvoersectie

samen) gegeven per leiding.

(s) Toevoer-, verhittings- en afvoersectie

debiet loop 1 loop 2 loop 3 loop 4 loop 5 loop 6 loop 7 loop 8 loop 9 loop 10

(l/s)

2 1261 1339 1417 1495 1572 1650 1728 1806 1883 1961

3 841 893 945 996 1048 1100 1152 1204 1256 1307

4 631 670 708 747 786 825 864 903 942 981

5 505 536 567 598 629 660 691 722 753 784

6 420 446 472 498 524 550 576 602 628 654

7 360 383 405 427 449 471 494 516 538 560

8 315 335 354 374 393 413 432 451 471 490

9 280 298 315 332 349 367 384 401 419 436

Tabel A.4: Dode tijden voor gans het systeem.

Page 88: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage B

Wiskundige bijlage

B.1 Definities

Definitie B.1 Een deelverzameling V van een genormeerde lineaire vectorruimte is dicht in

χ als zijn compactum gelijk is aan χ. Dit betekent dat voor elk element f van χ een v ∈ V

gevonden kan worden, zodanig dat voor elke ε > 0 geldt dat ‖f − v‖ < ε.

Definitie B.2 Een genormeerde lineaire vectorruimte χ is separabel als het een aftelbaar

dichte deelverzameling bevat.

Een voorbeeld van een aftelbare verzameling is de verzameling van de gehele getallen en een

voorbeeld van een onaftelbare verzameling is de verameling van de reele getallen.

Definitie B.3 Een rij {fn}∞n=1 in een genormeerde ruimte χ is een Cauchy rij als

‖fn − fm‖χ → 0 voor n, m→∞

Definitie B.4 Een genormeerde, lineaire ruimt χ is compleet als elke Cauchy rij een opho-

pingspunt heeft in χ.

Definitie B.5 Een Hilbertruimte is een ruimte waarin het lineair product gedefinieerd is en

die compleet is.

78

Page 89: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage B. Wiskundige bijlage 79

B.2 Oplossing extremumprobleem

φ1 = maxφ1∈χ

⟨(T (k, t), φ1)2

⟩‖φ1‖2

(B.1)

Definieer om bovenstaand extremumprobleem op te lossen de volgende Lagrangiaan J(φ1)

met de Lagrangiaanse vermenigvuldiger λ1:

J(φ1) =⟨|T(t), φ1|2

⟩T− λ1

(‖φ1‖2 − 1

)(B.2)

Om het extremumprobleem op te lossen wordt gebruik gemaakt van variatierekening en wordt

φ1 vervangen door:

φ1 → φ1 + δψ, δ ∈ R; ψ ∈ χ

met ψ een arbitraire functie in de Hilbert ruimte χ.

Een voorwaarde opdat φ1 een extremum zou zijn van is dat:

d

dδJ(φ1 + δψ) |δ=0= 0 (B.3)

Vergelijking voluit schrijven levert:

d

dδJ(φ1 + δψ) |δ=0 =

d

[⟨| (T(t), φ1) |2

⟩T − λ1

(‖φ1‖2

χ − 1)]

=d

[⟨(T(t), φ1 + δψ)χ (T(t), φ1 + δψ)χ

⟩T

]− d

[λ1 (φ1 + δψ, φ1 + δψ)χ

]|δ=0 (B.4)

met (, )χ het inwendig product in de Hilbert ruimte χ. Vergelijking kan verder uitgewerkt

worden tot:

Page 90: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage B. Wiskundige bijlage 80

d

dδJ(φ1 + δψ) |δ=0 = − d

dδ[λ1 ((φ1, φ1) + (φ1, δψ) + (δψ, φ1) + (δψ, δψ))] |δ=0

+d

dδ[〈((T(t), φ1) + (T(t), δψ)) ((T(t), φ1) + (T(t), δψ))〉] |δ=0

=d

dδ〈(T(t), φ1) (T(t), φ1) + (T(t), φ1) (T(t), δψ) + (T(t), δψ) (T(t), φ1)〉 |δ=0

− d

dδλ1 ((φ1, φ1) + (φ1, δψ) + (δψ, φ1) + (δψ, δψ)) |δ=0

(B.5)

Door de termen die niet functie zijn van δ zoals (T(t), φ1), gelijk te stellen aan nul en door

alles te herschikken wordt volgende uitdrukking bekomen:

d

dψJ (φ1 + δψ) |δ=0= 2 〈(T(t), φ) (T(t), ψ)〉 − 2λ1 (φ1, ψ) (B.6)

Deze laatste variatie gelijkstellen aan nul levert de uitdrukking:

〈(T(t), φ1) (T(t), ψ)〉 − λ1 (φ1, ψ1) = 0 (B.7)

Gebruik makend van de commutativiteit van de operatoren 〈 〉 en (, ) vinden we:

(〈(T(t), φ1) (T(t))〉 − λ1φ1)ψ = 0 (B.8)

En omdat moet gelden voor elke willekeurige functie ψ geldt er:

〈(T(t), φ1) (T(t))〉 − λ1φ1 = 0

〈(T(t), φ1) (T(t))〉 = λ1φ1

(B.9)

Page 91: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C

Figuren

C.1 Figuren bij hoofdstuk 4

In figuur C.1 (elk tijdsmonster meet 30s) is de oorzaak van het dipje in figuur zichtbaar. Er

is een grote daling merkbaar in de temperatuur op het eind van loop 9. Dit kan veroorzaakt

worden doordat de parabolische spiegels van deze loop gedurende enkele ogenblikken van de

zon werden weggedraaid.

81

Page 92: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 82

0 50 100 150 200 250 300 350 400300

400

500

600

700

800

900

1000

zonl

icht

(W

/m²)

tijdsmonster0 50 100 150 200 250 300 350 400

0

2

4

6

8

10

debi

et (

l/s)

tijdsmonster

0 50 100 150 200 250 300 350 400120

130

140

150

160

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster0 50 100 150 200 250 300 350 400

100

150

200

250

uitg

angs

tem

pera

tuur

(°C

)

tijdsmonster

reële temperatuur

Figuur C.1: Gegevens van 15 juli met i.h.b. rechtsonderaan het temperatuursverloop op het eind

van loop 9.

In figuur C.2 is de invloed van de ingangstemperatuur op de uitgangstemperatuur merkbaar.

Er is een plotse verlaging van de ingangtemperatuur rond het 310ste tijdsmonster (elk tijds-

monster meet 30s). Deze dip komt ook voor in de uitgangstemperatuur en kan niet te wijten

zijn aan een debietsverhoging aangezien het debiet gedurende dit tijdstip constant blijft. Het

minimum in de dip in de ingangstempetuur komt voor op het 318de tijdsmonster terwijl die

in de eindtemperatuur voorkomt op het 338ste tijdsmonster. Dit komt overeen met een dode

tijd van 20 30s = 600s. Deze waarde ligt tussen de dode tijd van loop 1 en loop 10 bij een

debiet van 5 l/s in tabel A.4.

Page 93: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 83

0 100 200 300 400 500 600 700300

400

500

600

700

800

900

1000

zonl

icht

(W

/m²)

tijdsmonster0 100 200 300 400 500 600 700

0

2

4

6

8

10

debi

et (

l/s)

tijdsmonster

0 100 200 300 400 500 600 7000

50

100

150

200

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster0 100 200 300 400 500 600 700

100

150

200

250

uitg

angs

tem

pera

tuur

(°C

)

tijdsmonster

Figuur C.2: Gegevens van 28 juli: invloed van de ingangstemperatuur.

In de twee onderstaande figuren is de invloed van Tklok te zien. In de eerste grafiek werd een

Tklok (en dus tijdsmonster) van 2 s gebruikt. Ter vergelijking werd in de figuur eronder een

Tklok (en dus tijdsmonter) van 1 s gebruikt.

Page 94: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 84

0 2000 4000 6000 8000 10000400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 2000 4000 6000 8000 10000

0

5

10

debi

et (

l/s)

tijdsmonster

0 2000 4000 6000 8000 1000050

100

150

200

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 2000 4000 6000 8000 1000060

80

100

120

140

160

180

200

220

240

260

uitg

angs

tem

pera

tuur

(°C

)

tijdsmonster

reële temperatuurgesimuleerde temperatuur

0 2000 4000 6000 8000 100000

5

10

tijdsmonster

fout

in %

Figuur C.3: Gegevens van 16 juli met Tklok = 2s.

Page 95: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 85

0 0.5 1 1.5 2

x 104

400

600

800

1000

zonl

icht

(W

/m²)

tijdsmonster0 0.5 1 1.5 2

x 104

0

5

10

debi

et (

l/s)

tijdsmonster

0 0.5 1 1.5 2

x 104

50

100

150

200

inga

ngst

empe

ratu

ur (

°C)

tijdsmonster

0 0.5 1 1.5 2

x 104

60

80

100

120

140

160

180

200

220

240

260

uitg

angs

tem

pera

tuur

(°C

)

tijdsmonster

reële temperatuurgesimuleerde temperatuur

0 0.5 1 1.5 2

x 104

0

5

10

tijdsmonster

fout

in %

Figuur C.4: Gegevens van 16 juli met Tklok = 1s.

In de volgende figuren zijn de resultaten van de simulator bekomen bij het testen van de data

van 15, 16 en 28 juli nog eens in het groot afgedrukt (tijdsmonster telkens 1 s).

Page 96: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 86

020

0040

0060

0080

0010

000

1200

014

000

200

400

600

800

1000

zonlicht (W/m²)

tijds

mon

ster

020

0040

0060

0080

0010

000

1200

014

000

0510

debiet (l/s)

tijds

mon

ster

020

0040

0060

0080

0010

000

1200

014

000

120

130

140

150

160

ingangstemperatuur (°C)

tijds

mon

ster

020

0040

0060

0080

0010

000

1200

014

000

50100

150

200

250

Tgem (°C)

tijds

mon

ster

reël

e te

mpe

ratu

urge

sim

ulee

rde

tem

pera

tuur

020

0040

0060

0080

0010

000

1200

014

000

0510

tijds

mon

ster

fout in %

Figuur C.5: Resultaten voor de temperatuur in punt C op 15 juli.

Page 97: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 87

020

0040

0060

0080

0010

000

1200

014

000

200

400

600

800

1000

zonlicht (W/m²)

tijds

mon

ster

020

0040

0060

0080

0010

000

1200

014

000

0510

debiet (l/s)

tijds

mon

ster

020

0040

0060

0080

0010

000

1200

014

000

120

130

140

150

160

ingangstemperatuur (°C)

tijds

mon

ster

020

0040

0060

0080

0010

000

1200

014

000

6080100

120

140

160

180

200

220

240

260

uitgangstemperatuur (°C)tij

dsm

onst

er

reël

e te

mpe

ratu

urge

sim

ulee

rde

tem

pera

tuur

020

0040

0060

0080

0010

000

1200

014

000

0510

tijds

mon

ster

fout in %

Figuur C.6: Resultaten voor de temperatuur in punt D op 15 juli met verbeterde lengte van de

afvoersectie.

Page 98: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 88

00.

51

1.5

2

x 10

4

400

600

800

1000

zonlicht (W/m²)

tijds

mon

ster

00.

51

1.5

2

x 10

4

0510

debiet (l/s)

tijds

mon

ster

00.

51

1.5

2

x 10

4

50100

150

200

ingangstemperatuur (°C)

tijds

mon

ster

00.

51

1.5

2

x 10

4

50100

150

200

250

Tgem (°C)

tijds

mon

ster

reël

e te

mpe

ratu

urge

sim

ulee

rde

tem

pera

tuur

00.

51

1.5

2

x 10

4

0510

tijds

mon

ster

fout in %

Figuur C.7: Resultaten voor de temperatuur in punt C op 16 juli.

Page 99: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 89

00.

51

1.5

2

x 10

4

400

600

800

1000

zonlicht (W/m²)

tijds

mon

ster

00.

51

1.5

2

x 10

4

0510

debiet (l/s)

tijds

mon

ster

00.

51

1.5

2

x 10

4

50100

150

200

ingangstemperatuur (°C)

tijds

mon

ster

00.

51

1.5

2

x 10

4

6080100

120

140

160

180

200

220

240

260

uitgangstemperatuur (°C)

tijds

mon

ster

reël

e te

mpe

ratu

urge

sim

ulee

rde

tem

pera

tuur

00.

51

1.5

2

x 10

4

0510

tijds

mon

ster

fout in %

Figuur C.8: Resultaten voor de temperatuur in punt D op 16 juli met verbeterde lengte van de

afvoersectie.

Page 100: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 90

00.

51

1.5

22.

5

x 10

4

200

400

600

800

1000

zonlicht (W/m²)

tijds

mon

ster

00.

51

1.5

22.

5

x 10

4

0510

debiet (l/s)

tijds

mon

ster

00.

51

1.5

22.

5

x 10

4

050100

150

200

ingangstemperatuur (°C)

tijds

mon

ster

00.

51

1.5

22.

5

x 10

4

50100

150

200

250

Tgem (°C)

tijds

mon

ster

reël

e te

mpe

ratu

urge

sim

ulee

rde

tem

pera

tuur

00.

51

1.5

22.

5

x 10

4

0510

tijds

mon

ster

fout in %

Figuur C.9: Resultaten voor de temperatuur in punt C op 28 juli.

Page 101: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 91

00.

51

1.5

22.

5

x 10

4

200

400

600

800

1000

zonlicht (W/m²)

tijds

mon

ster

00.

51

1.5

22.

5

x 10

4

0510

debiet (l/s)

tijds

mon

ster

00.

51

1.5

22.

5

x 10

4

050100

150

200

ingangstemperatuur (°C)

tijds

mon

ster

00.

51

1.5

22.

5

x 10

4

6080100

120

140

160

180

200

220

240

260

uitgangstemperatuur (°C)

tijds

mon

ster

reël

e te

mpe

ratu

urge

sim

ulee

rde

tem

pera

tuur

00.

51

1.5

22.

5

x 10

4

0510

tijds

mon

ster

fout in %

Figuur C.10: Resultaten voor de temperatuur in punt D op 28 juli met verbeterde lengte van de

afvoersectie.

Page 102: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 92

C.2 Figuren bij hoofdstuk 5

In de volgende figuren zijn de resultaten van de simulator bekomen bij het testen van de data

van 15, 16 en 28 juli via de POD-methode nog eens in het groot afgedrukt.

Page 103: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 93

050

100

150

200

250

300

350

400

200

400

600

800

1000

zonlicht (W/m²)

tijds

mon

ster

050

100

150

200

250

300

350

400

0510

debiet (l/s)

tijds

mon

ster

050

100

150

200

250

300

350

400

120

130

140

150

160

ingangstemperatuur (°C)

tijds

mon

ster

050

100

150

200

250

300

350

400

100

150

200

250

uitgangstemperatuur (°C)

tijds

mon

ster

reel

e te

mpe

ratu

urge

sim

ulee

rde

tem

pera

tuur

050

100

150

200

250

300

350

400

0510

tijds

mon

ster

fout in %

Figuur C.11: Resultaten voor de temperatuur op het eind van de afvoersectie op 15 juli via POD-

methode.

Page 104: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 94

010

020

030

040

050

060

040

0

600

800

1000

zonlicht (W/m²)

tijds

mon

ster

010

020

030

040

050

060

00510

debiet (l/s)

tijds

mon

ster

010

020

030

040

050

060

05010

0

150

200

ingangstemperatuur (°C)

tijds

mon

ster

010

020

030

040

050

060

040608010

0

120

140

160

180

200

220

240

uitgangstemperatuur (°C)

tijds

mon

ster

reel

e te

mpe

ratu

urge

sim

ulee

rde

tem

pera

tuur

010

020

030

040

050

060

00510

tijds

mon

ster

fout in %

Figuur C.12: Resultaten voor de temperatuur op het eind van de afvoersectie op 16 juli via POD-

methode.

Page 105: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 95

010

020

030

040

050

060

070

020

0

400

600

800

1000

zonlicht (W/m²)

tijds

mon

ster

010

020

030

040

050

060

070

00510

debiet (l/s)

tijds

mon

ster

010

020

030

040

050

060

070

0050100

150

200

ingangstemperatuur (°C)

tijds

mon

ster

010

020

030

040

050

060

070

0050100

150

200

250

300

uitgangstemperatuur (°C)

tijds

mon

ster

reel

e te

mpe

ratu

urge

sim

ulee

rde

tem

pera

tuur

010

020

030

040

050

060

070

00510

tijds

mon

ster

fout in %

Figuur C.13: Resultaten voor de temperatuur op het eind van de afvoersectie op 28 juli via POD-

methode.

Page 106: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 96

In de volgende drie figuren worden de resultaten van het toestandsmodel met die van de

POD-methode vergeleken. De basisfuncties worden telkens berekend met de gegevens van de

overeenkomstige dag.

Page 107: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 97

050

100

150

200

250

300

350

400

200

400

600

800

1000

zonlicht (W/m²)

tijds

mon

ster

050

100

150

200

250

300

350

400

0510

debiet (l/s)

tijds

mon

ster

050

100

150

200

250

300

350

400

120

130

140

150

160

ingangstemperatuur (°C)

tijds

mon

ster

050

100

150

200

250

300

350

400

120

140

160

180

200

220

240

260

uitgangstemperatuur (°C)

tijds

mon

ster

toes

tand

smod

elP

OD

050

100

150

200

250

300

350

400

0123

tijds

mon

ster

fout in %

Figuur C.14: Vergelijking van de resusultaten voor het toestandsmodel en de POD-methode voor

15 juli.

Page 108: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 98

010

020

030

040

050

060

040

0

600

800

1000

zonlicht (W/m²)

tijds

mon

ster

010

020

030

040

050

060

00510

debiet (l/s)

tijds

mon

ster

010

020

030

040

050

060

05010

0

150

200

ingangstemperatuur (°C)

tijds

mon

ster

010

020

030

040

050

060

0608010

0

120

140

160

180

200

220

240

uitgangstemperatuur (°C)

tijds

mon

ster

toes

tand

smod

elP

OD

010

020

030

040

050

060

00

0.51

1.52

tijds

mon

ster

fout in %

Figuur C.15: Vergelijking van de resusultaten voor het toestandsmodel en de POD-methode voor

16 juli.

Page 109: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage C. Figuren 99

010

020

030

040

050

060

070

020

0

400

600

800

1000

zonlicht (W/m²)

tijds

mon

ster

010

020

030

040

050

060

070

00510

debiet (l/s)

tijds

mon

ster

010

020

030

040

050

060

070

0050100

150

200

ingangstemperatuur (°C)

tijds

mon

ster

010

020

030

040

050

060

070

0050100

150

200

250

300

uitgangstemperatuur (°C)

tijds

mon

ster

toes

tand

smod

elP

OD

010

020

030

040

050

060

070

00

0.51

1.5

tijds

mon

ster

fout in %

Figuur C.16: Vergelijking van de resusultaten voor het toestandsmodel en de POD-methode voor

28 juli.

Page 110: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D

Matlabcode

100

Page 111: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 101

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Auteur : Mathieu Vandenbulcke %% laatste versie : 06/06/2006 %% %% Dit programma simuleert de werking van het ACUREX-veld %% op het Plataforma Solar de Almeria. De simulator maakt %% gebruik van niet-uniforme tijdsmonsters. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

clear all;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% HET VOORAFGAANDE WERK %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%% De gegevens inladen %%%%%%%%%%%%%%%%%%%%%%%%

load(’data1507R’);load(’data1607R’);load(’data2807R’);data=data15R; %kies hier data15R, data16R of data28R voor de testdata

%van 15,16 of 28 juli

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Initialiseren van vectoren en %% waarden toekennen aan alle parameters %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

lengte=size(data);lengte=lengte(1,1);

T_klok=1; %in secondenV_segm=0.0077; %in m

V_temp=0;klok=0;

N=zeros(10,3);

aantal=9; %aantal operationele leidingen

1

Page 112: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 102

r_inner=0.0318/2-0.00211; %straal binnenkant leiding in verhittingssectier_outer=0.0318/2; %straal buitenkant leiding in verhittingssectieR_inner=4*2.54/2*0.01; %straal binnenkant toever- en afvoersectierho_m=7850; %dichtheid metaal van de leidingc_m=419; %specifieke warmtecapaciteit metaal van leiding

TIJD=zeros(30/T_klok*lengte,1); %vector met verschillende t_k’sTa=zeros(lengte,1); %vector voor omgevingstemperatuurIrr=zeros(lengte,1); %vector voor zonlichtflow1=zeros(lengte,1); %vector voor debietV=zeros(9,3); %matrix voor volume van elke sectie

%De temperatuursbereiken van de verschillende loops%worden bewaard voor het berekenen van de fout:maxwaarde=max(data);minwaarde=min(data);bereik2=maxwaarde(7)-minwaarde(7); %temperatuursbereik loop 2bereik3=maxwaarde(8)-minwaarde(8); %temperatuursbereik loop 3bereik4=maxwaarde(9)-minwaarde(9); %temperatuursbereik loop 4bereik5=maxwaarde(10)-minwaarde(10); %temperatuursbereik loop 5bereik6=maxwaarde(11)-minwaarde(11); %temperatuursbereik loop 6bereik7=maxwaarde(12)-minwaarde(12); %temperatuursbereik loop 7bereik8=maxwaarde(13)-minwaarde(13); %temperatuursbereik loop 8bereik9=maxwaarde(14)-minwaarde(14); %temperatuursbereik loop 9bereik10=maxwaarde(15)-minwaarde(15); %temperatuursbereik loop 10bereik11=maxwaarde(4)-minwaarde(4); %temperatuursbereik in punt D

%vector voor het opslaan van de werkelijke%temperatuur van de olie aan het begin%van de toeversectie:Tin=zeros(30/T_klok*lengte,1);

%vector voor het opslaan van de berekende%temperatuur op het eind van de toevoersectie:T1=zeros(30/T_klok*lengte,1);

%vectoren voor het opslaan van de werkelijke%temperatuur van de olie in de verhittingssectie:T2echt=zeros(30/T_klok*lengte,1);T3echt=zeros(30/T_klok*lengte,1);T4echt=zeros(30/T_klok*lengte,1);T5echt=zeros(30/T_klok*lengte,1);T6echt=zeros(30/T_klok*lengte,1);T7echt=zeros(30/T_klok*lengte,1);T8echt=zeros(30/T_klok*lengte,1);

2

Page 113: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 103

T9echt=zeros(30/T_klok*lengte,1);T10echt=zeros(30/T_klok*lengte,1);

%vector voor het opslaan van de berekende%temperatuur van de olie in de verhittingssectie:T2=zeros(30/T_klok*lengte,9,50);

%vector voor het opslaan van de berekende%temperatuur van het metaal in de verhittingssectie:Tm=zeros(30/T_klok*lengte,9,50);

%vector voor het opslaan van de werkelijke%temperatuur op het eind van de avoersectie:Toutecht=zeros(30/T_klok*lengte,1);

%vectoren om de fout tussen de werkelijke en berekende%temperatuur op het einde van de verhittings- en op het%einde van de afvoersectie te berekenen:fout22=zeros(30/T_klok*lengte,1);fout23=zeros(30/T_klok*lengte,1);fout24=zeros(30/T_klok*lengte,1);fout25=zeros(30/T_klok*lengte,1);fout26=zeros(30/T_klok*lengte,1);fout27=zeros(30/T_klok*lengte,1);fout28=zeros(30/T_klok*lengte,1);fout29=zeros(30/T_klok*lengte,1);fout210=zeros(30/T_klok*lengte,1);foutTout=zeros(30/T_klok*lengte,1);foutTCavg=zeros(30/T_klok*lengte,1);

%vectoren voor het opslaan van de werkelijke en berekende%gemiddelde olietemperatuur op het einde van de verhittingssectie:TCavg_echt=zeros(30/T_klok*lengte,1);TCavg=zeros(30/T_klok*lengte,1);

%vectoren voor het opslaan van de berekende%temperaturen op het eind van de afvoersectie:Touter=zeros(30/T_klok*lengte,1);Tout=zeros(30/T_klok*lengte,9);

%variaIrrplot=zeros(30/T_klok*lengte,1);F=zeros(30/T_klok*lengte,1);

3

Page 114: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 104

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Berekenen van de volumes van elke %% leiding in elk van de drie secties: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

for k=1:3for j=1:aantal

if k==1V(j,k)=(R_inner^2)*pi*(35.12+(j)*9.9)/aantal;

endif k==2

V(j,k)=(r_inner^2)*pi*172;endif k==3

V(j,k)=(R_inner^2)*pi*(155.23+(j)*9.9)/aantal;% met 155.23 de experimenteel berekende lengte

endend

end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Berekenen hoeveel V_segm in elke %% leiding van elke sectie gaat: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

for j=1:aantalN(j,1)=round(V(j,1)/V_segm);N(j,2)=round(V(j,2)/V_segm);N(j,3)=round(V(j,3)/V_segm);

end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Om de 30 s worden nieuwe waarden van de %% data ingelezen %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

for i=1:lengte

4

Page 115: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 105

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% De werkelijke gegevens worden gestockeerd %% in de overeenkomstige vectoren. %% Gezien de data slechts om de 30 s werd gemeten %% en de klok van het programma een periode T_klok %% heeft, wordt er een zero-order hold toegpast. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

for s=1+30/T_klok*(i-1):30/T_klok*iTin(s,1)=data(i,3);T2echt(s,1)=data(i,7);T3echt(s,1)=data(i,8);T4echt(s,1)=data(i,9);T5echt(s,1)=data(i,10);T6echt(s,1)=data(i,11);T7echt(s,1)=data(i,12);T8echt(s,1)=data(i,13);T9echt(s,1)=data(i,14);T10echt(s,1)=data(i,15);

% Het gemiddelde van de werkelijk temperaturen op het% einde van de verhittingssectie wordt berekend:TCavg_echt(s,1)=(T2echt(s,1)+T3echt(s,1)+T4echt(s,1)+T5echt(s,1)

+T6echt(s,1)+T7echt(s,1)+T8echt(s,1)+T9echt(s,1)+T10echt(s,1))/9;

%variaToutecht(s,1)=data(i,4);Irrplot(s,1)=data(i,6);F(s,1)=data(i,2);

end

%variaTa(i,1)=data(i,5);flow1(i,1)=data(i,2)/(aantal*1000); %omzetten naar m/s en delen door

%aantal leidingenIrr(i,1)=data(i,6);

%%%%%%%%%%%%%%%%%%%%%%%%%% De tijdsiteratie die %% verspringt met T_klok %%%%%%%%%%%%%%%%%%%%%%%%%%

5

Page 116: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 106

for s=1+30/T_klok*(i-1):30/T_klok*i

%Berekening van de t_k’s:V_temp=V_temp+flow1(i,1)*T_klok;if V_temp>V_segm

klok=klok+1;V_temp=0;TIJD(klok,1)=s;

end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% De berekening van de temperatuur op %% het eind van de toevoersectie %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

for n=1:aantalif klok<=N(n,1)

T1(s,n)=Tin(1,1); %beginvoorwaarden invullenelse

T1(s,n)=Tin(TIJD(klok-N(n,1)),1);end

end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% De berekening van de temperatuur %% in de verhittingssectie %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

for n=1:aantalepsilon=0.7;A_mirr=5.42*6*8/N(n,2);G_s=(2*r_outer*pi*172/N(n,2));A_mf=2*r_inner*172*pi/N(n,2);V_m=(r_outer^2-r_inner^2)*pi*172/N(n,2);V_f=r_inner^2*pi*172/N(n,2);H_l=29;for k=1:N(n,2)

if s==1H_t=1/pi*(2.17*10^6-5.01*10^4*Tin(1,1)

+4.53*10^2*Tin(1,1)^2-1.64*Tin(1,1)^3+2.1*10^(-3)*Tin(1,1)^4)*(flow1(i,1)^0.8);%beginwaarde

elseH_t=1/pi*(2.17*10^6-5.01*10^4*T2(s-1,n,k)

+4.53*10^2*T2(s-1,n,k)^2-1.64*T2(s-1,n,k)^3+2.1*10^(-3)*T2(s-1,n,k)^4)*(flow1(i,1)^0.8);

end

6

Page 117: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 107

if (klok==0)||(klok==1)Tm(s,n,k)=Tin(1,1); %beginwaarden invullenT2(s,n,k)=Tin(1,1); %beginwaarden invullen

elsedelta_t=(TIJD(klok,1)-TIJD(klok-1,1))*T_klok;

%randvoorwaarden invullenif k==1

rho_f=903-0.672*(T1(TIJD(klok-1),n));c_f=1820+3.478*(T1(TIJD(klok-1),n));

Tm(s,n,k)=Tm(TIJD(klok-1),n,k)+delta_t/(rho_m*c_m*V_m)*(epsilon*A_mirr*Irr(i,1)-H_l*G_s*(Tm(TIJD(klok-1),n,k)-Ta(i,1))-H_t*A_mf*(Tm(TIJD(klok-1),n,k)-T1(TIJD(klok-1),n)));

T2(s,n,k)=T1(TIJD(klok-1),n)+delta_t/(rho_f*c_f*V_f)*H_t*A_mf*(Tm(TIJD(klok-1),n,k)-T1(TIJD(klok-1),n));

%berekening van de temperaturen in het metaal%en de olie in de verhittingssectie:else

rho_f=903-0.672*(T2(TIJD(klok-1),n,k-1));c_f=1820+3.478*(T2(TIJD(klok-1),n,k-1));

Tm(s,n,k)=Tm(TIJD(klok-1),n,k)+delta_t/(rho_m*c_m*V_m)*(A_mirr*epsilon*Irr(i,1)-H_l*G_s*(Tm(TIJD(klok-1),n,k)-Ta(i,1))-A_mf*H_t*(Tm(TIJD(klok-1),n,k)-T2(TIJD(klok-1),n,k)));

T2(s,n,k)=T2(TIJD(klok-1),n,k-1)+delta_t/(rho_f*c_f*V_f)*A_mf*H_t*(Tm(TIJD(klok-1),n,k-1)-T2(TIJD(klok-1),n,k-1));

endend

end

end

7

Page 118: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 108

%Het gemiddelde van de berekende waarden op%het einde van de verhittingssecties berekenen:for n=1:aantal

TCavg(s,1)=TCavg(s,1)+T2(s,n,N(n,2));endTCavg(s,1)=TCavg(s,1)/aantal;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% De berekening van de temperatuur %% op het eind van de afvoersectie %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

for n=1:aantalif klok<=N(n,3)+1

Tout(s,n)=Tin(1,1); %beginwaarden invullenelse

Tout(s,n)=T2(TIJD(klok-N(n,3)),n,N(n,2));end

end

%Het gemiddelde nemen van%alle temperaturen op einde%van de afvoersectie:for n=1:9

Touter(s,1)=Touter(s,1)+Tout(s,n);endTouter(s,1)=Touter(s,1)/aantal;

%foutenvectoren voor elke loop afzonderlijk:%fout22(s,1)=100*abs(T2echt(s,1)-T2(s,1,N(1,2)))/bereik2;%fout23(s,1)=100*abs(T3echt(s,1)-T2(s,2,N(2,2)))/bereik3;%fout24(s,1)=100*abs(T4echt(s,1)-T2(s,3,N(3,2)))/bereik4;%fout25(s,1)=100*abs(T5echt(s,1)-T2(s,4,N(4,2)))/bereik5;%fout26(s,1)=100*abs(T6echt(s,1)-T2(s,5,N(5,2)))/bereik6;%fout27(s,1)=100*abs(T7echt(s,1)-T2(s,6,N(6,2)))/bereik7;%fout28(s,1)=100*abs(T8echt(s,1)-T2(s,7,N(7,2)))/bereik8;%fout29(s,1)=100*abs(T9echt(s,1)-T2(s,8,N(8,2)))/bereik9;%fout210(s,1)=100*abs(T10echt(s,1)-T2(s,9,N(9,2)))/bereik10;

%foutvector voor de gemiddelde temperatuur op het einde%van de verhittingssectie:foutTCavg(s,1)=100*abs(TCavg_echt(s,1)-TCavg(s,1));

%foutenvector voor de temperatuur op het einde

8

Page 119: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 109

%van de afvoersectie:foutTout(s,1)=100*abs(Toutecht(s,1)-Touter(s,1))/bereik11;

end

end

%%%%%%%%%%%%%%%%%%%%%%% De figuren plotten %%%%%%%%%%%%%%%%%%%%%%%

%figure;%hold on;

%plot(F,’m’)%plot(tt1,’r’)%plot(Tin,’c’)%plot(Irrplot,’y’)

%plot(T2echt,’r’)%plot(T3echt,’r’)%plot(T4echt,’r’)%plot(T5echt,’r’)%plot(T6echt,’r’)%plot(T7echt,’r’)%plot(T8echt,’r’)%plot(T9echt,’r’)%plot(T10echt,’r’)%plot(TCavg_echt,’r’)%plot(Toutecht,’k’)

%plot(T2(s,1,N(1,2)))%plot(T2(s,2,N(2,2)))%plot(T2(s,3,N(3,2)))%plot(T2(s,4,N(4,2)))%plot(T2(s,5,N(5,2)))%plot(T2(s,6,N(6,2)))%plot(T2(s,7,N(7,2)))%plot(T2(s,8,N(8,2)))%plot(T2(s,9,N(9,2)))%plot(TCavg)

%plot(Tm(s,1,N(1,2)),’k’)%plot(Tm(s,2,N(2,2)),’k’)

9

Page 120: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 110

%plot(Tm(s,3,N(3,2)),’k’)%plot(Tm(s,4,N(4,2)),’k’)%plot(Tm(s,5,N(5,2)),’k’)%plot(Tm(s,6,N(6,2)),’k’)%plot(Tm(s,7,N(7,2)),’k’)%plot(Tm(s,8,N(8,2)),’k’)%plot(Tm(s,9,N(9,2)),’k’)

%plot(Touter/aantal,’b’);ylabel(’C’)

%plot(fout22)%plot(fout23)%plot(fout24)%plot(fout25)%plot(fout26)%plot(fout27)%plot(fout28)%plot(fout29)%plot(fout210)

%hold off

%figure;%subplot(3,2,1);plot(Irrplot,’b’);ylabel(’zonlicht (W/m)’);xlabel(’tijdsmonster’)

%subplot(3,2,2);plot(F,’b’);ylabel(’debiet (l/s)’);xlabel(’tijdsmonster’);ylim([0,10]);

%subplot(3,2,3);plot(Tin,’b’);ylabel(’ingangstemperatuur (C)’);xlabel(’tijdsmonster’)

%subplot(3,2,[4 6]);hold on;plot(TCavg_echt,’r’);plot(TCavg,’b’);ylabel(’T_g_e_m (C)’);ylim([20,260]);xlabel(’tijdsmonster’);hold off;legend(’reele temperatuur’,’gesimuleerde temperatuur’,’Location’,’SouthEast’);

%subplot(3,2,5);hold on;plot(foutTCavg/(max(TCavg_echt)-min(TCavg_echt)),’b’);plot(5*ones(30/T_klok*lengte,1),’k’);xlabel(’tijdsmonster’);ylabel(’fout in %’);ylim([0,10]);hold off;

%figure;%subplot(2,1,1);hold on;plot(TCavg,’k’);plot(TCavg_echt,’r’);ylabel(’TC average(C)’);ylim([160,260]);xlabel(’timesamples’);hold off

10

Page 121: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 111

%subplot(2,1,2);hold on;plot(foutTCavg/(max(TCavg_echt)-min(TCavg_echt)),’k’);plot(5*ones(30/T_klok*lengte,1),’r’);ylabel(’error in %’);ylim([0,10]);hold off;

%figure;%subplot(3,2,1);plot(Irrplot,’b’);ylabel(’zonlicht (W/m)’);xlabel(’tijdsmonster’)

%subplot(3,2,2);plot(F,’b’);ylabel(’debiet (l/s)’);xlabel(’tijdsmonster’);ylim([0,10]);

%subplot(3,2,3);plot(Tin,’b’);ylabel(’ingangstemperatuur (C)’);xlabel(’tijdsmonster’)

%subplot(3,2,[4 6]);hold on;plot(Toutecht,’r’);plot(Touter,’b’);ylabel(’uitgangstemperatuur (C)’);ylim([60,260]);xlabel(’tijdsmonster’);hold off;legend(’reele temperatuur’,’gesimuleerde temperatuur’,’Location’,’SouthEast’);

%subplot(3,2,5);hold on;plot(foutTout,’b’);plot(5*ones(30/T_klok*lengte,1),’k’);xlabel(’tijdsmonster’);ylabel(’fout in %’);ylim([0,10]);hold off;

%figure;%subplot(2,1,1);hold on;plot(Touter,’b’);plot(Toutecht,’r’);ylabel(’Tout(C)’);xlabel(’samples’);ylim([180,250]);hold off;

%subplot(2,1,2);hold on;plot(foutTout,’b’);plot(5*ones(30/T_klok*lengte,1),’r’);ylabel(’error in %’);hold off;

%figure;%subplot(4,1,[1 2]);hold on;plot(Toutecht,’r’);plot(Touter,’b’);ylabel(’outlet temperature (C)’);ylim([100,250]);xlabel(’time(s)’);hold off;legend(’real temperature’,’simulated temperature’,’Location’,’SouthEast’);

%subplot(4,1,3);plot(F,’b’);ylabel(’flow (l/s)’);xlabel(’time (s)’);ylim([0,10]);

%subplot(4,1,4);hold on;plot(foutTout,’b’);plot(5*ones(30/T_klok*lengte,1),’k’);xlabel(’time (s)’);ylabel(’error in %’);ylim([0,10]);hold off;

11

Page 122: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 112

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Auteur : Mathieu Vandenbulcke %% laatste versie : 06/06/2006 %% %% Dit programma simuleert de werking van het ACUREX-veld %% op het Plataforma Solar de Almeria. De simulator maakt %% gebruik van POD-technieken. %% %% Nota: Om dit programma te kunnen gebruiken dient de %% file ’berekenbasis2.m’ zich in dezelfde directory als %% deze file te bevinden. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

clear all;

load (’data1507R’); % data inladen van 15 juliload (’data1607R’); % data inladen van 16 juliload (’data2807R’); % data inladen van 28 juli

%%%%%%%%%%%%%%%%%%%% INPUT: %% vul de gewenste %% waarden in %%%%%%%%%%%%%%%%%%%%

par1=1; % ’fine tuning’ parameter 1

par2=0.51; % ’fine tuning’ parameter 2

data=data28R; % selecteer de gewenste data% (data15R, data16R of data28R)

dag=3; % dag waarop je de basisfuncties% wil berekenen (1=15 juli,2=16 juli% 3=28 juli)

begin=1; % simulatie wordt gestart op dit% tijdsmonster

einde=length(data); % simulatie wordt beeindigd op dit% tijdsmonster

Nref=1 ; % aantal keer dat je het tijdsegment van% de data (30s) wil verfijnen

1

Page 123: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 113

dx=25; % ruimtelijke stap in meter

n=12; % aantal basisfuncties die% gebruikt moeten worden

%%%%%%%%%%%%%% PROGRAMMA %%%%%%%%%%%%%%nr_of_loop=6; % er wordt gesteund op de eigenschappen

% van loop 6

N=einde-begin; % aantal tijdstappen

N2=Nref*N; % aantal tijdstappen na verfijning

L1=35.12+(nr_of_loop-1)*9.9; % lengte van de toevoersectieL1_apt=L1*(0.1016/2)^2/9*1/(0.02969/2)^2;

% lengte van de toevoersectie, na% aanpassing van de diameter

L2=172; % lengte van de verhittingssectie

L3=155.23+(nr_of_loop-1)*9.9; % lengte van de afvoersectieL3_apt=L3*(0.1016/2)^2/9*1/(0.02969/2)^2;

% lengte van de afvoersectie, na% aanpassing van de diameter

dt=(30*N)/N2; % tijdstap

M1=round(L1_apt/dx); % aantal segmenten in toevoersectieM2=round(L2/dx); % aantal segmenten in verhittingssectieM3=round(L3_apt/dx); % aantal segmenten in afvoersectie

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% de data aanpassen aan de verfijnde tijdstap %% via een zero-order hold %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

for i=1:Nfor s=(i-1)*Nref+1:i*Nref

flow(s,1)=data(begin+i-1,2)/(1000); % debietirr(s,1)=data(begin+i-1,6); % zonlichtTin(s,1)=data(begin+i-1,3); % ingangstemperatuur

2

Page 124: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 114

Tout_real(s,1)=data(begin+i-1,4); % uitgangstemperatuurTendloopi(s,1)=data(begin+i-1,nr_of_loop+5);

% temperatuur op einde% van gebruikte loop

endend

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% tijdsonafhankelijk parameters %% definieren %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

rho_f=903-0.672*250; % dichtheid van de olieL=0.029; % binnendiameter verhitt.sect.

V1=(L/2)^2*pi*9*L1_apt; % totaal volume toevoersectieV2=(L/2)^2*pi*9*L2; % totaal volume verhitt. sectieV3=(L/2)^2*pi*9*L3_apt; % totaal volume afvoer sectie

c_f=1820+3.478*250; % warmtecapaciteit olieeff=0.69; % reflectiecoeff. spiegelsG=9*5.42*8*6; % volledige apertuur spiegels

c1=eff*G;

c21=rho_f*c_f*L1_apt;c22=rho_f*c_f*L2;c23=rho_f*c_f*L3_apt;

c31=rho_f*c_f*V1;c32=rho_f*c_f*V2;c33=rho_f*c_f*V3;

%%%%%%%%%%%%%%%%%%%%%%%% POD-basis berekenen %%%%%%%%%%%%%%%%%%%%%%%%

phi=berekenbasis2(dag,dx,nr_of_loop,L1_apt,L2,L3_apt,M1,M2,M3,par1,par2);

phi_n=phi(:,1:n); % getrunceerde set basisfuncties

3

Page 125: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 115

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% berekening van de tijdsaf- %% hankelijk coefficienten a_i(t) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

a(1:n,1)=phi_n’*ones(M1+M2+M3,1)*data(1,3);% als temperatuursdistributie% op het eerste tijdstip wordt% de ingangstemperatuur op het% eerste tijdstip gekozen

for k=2:N2

a11=par1*(c21*dt/(c31*dx)*flow(k-1));a12=par1*(c22*dt/(c32*dx)*flow(k-1));a13=par1*(c23*dt/(c33*dx)*flow(k-1));

a2=par2*(-c1*dt/c32);

for i=1:M1+M2+M3 % opvullen van de matrix Aif i<=M1

A(i,i)=1+a11;if (i>1)

A(i,i-1)=-a11;end

elseif (i>M1)&&(i<=M2)A(i,i)=1+a12;A(i,i-1)=-a12;

elseif (i>M2)A(i,i)=1+a13;A(i,i-1)=-a13;

endend

A_inv=inv(A); % inverse van A berekenenB=phi_n’*A_inv*phi_n; % matrix B berekenenD=phi_n’*A_inv; % matrix D berekenen

a(1:n,k)=B*a(1:n,k-1)+D*([a11*Tin(k-1,1);zeros(M1+M2+M3-1,1)]-[zeros(M1,1);ones(M2,1)*a2*irr(k-1,1);zeros(M3,1)]);

end

4

Page 126: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 116

T_POD=phi_n*a; % Temperatuur berekenen met% POD-methode

%%%%%%%%%%%%%%%%%%% fout berekenen %%%%%%%%%%%%%%%%%%%

bovengrens=max(Tout_real(:,1));ondergrens=min(Tout_real(:,1));

fout=abs(Tout_real(:,1)-T_POD(M1+M2+M3,:)’)/(bovengrens-ondergrens)*100;

FOUT=sum(fout)/(N2);

%%%%%%%%%%%%%%%%%%%% figuren plotten %%%%%%%%%%%%%%%%%%%%

figure;subplot(3,2,1);plot(irr,’b’);ylabel(’zonlicht (W/m)’);xlabel(’tijdsmonster’);

subplot(3,2,2);plot(1000*flow,’b’);ylabel(’debiet (l/s)’);xlabel(’tijdsmonster’);ylim([0,10]);

subplot(3,2,3);plot(Tin,’b’);ylabel(’ingangstemperatuur (C)’);xlabel(’tijdsmonster’)

subplot(3,2,[4 6]);hold on;plot(Tout_real,’r’);plot(T_POD(M1+M2+M3,:),’b’);ylabel(’uitgangstemperatuur (C)’);xlabel(’tijdsmonster’);hold off;legend(’reele temperatuur’,’gesimuleerde temperatuur’,’Location’,’SouthEast’);

subplot(3,2,5);hold on;plot(fout,’b’);plot(5*ones(length(fout),1),’k’);xlabel(’tijdsmonster’);ylabel(’fout in %’);ylim([0,10]);hold off;

5

Page 127: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 117

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Auteur : Mathieu Vandenbulcke %% laatste versie : 06/06/2006 %% %% Dit programma simuleert de werking van het ACUREX-veld %% op het Plataforma Solar de Almeria. De simulator maakt %% gebruik van POD-technieken. %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

function [phi]=berekenbasis2(dag,dx,nr_of_loop,L1_apt,L2,L3_apt,M1,M2,M3,par1,par2)

load (’data1507R’); % data inladen van 15 juliload (’data1607R’); % data inladen van 16 juliload (’data2807R’); % data inladen van 28 juli

if dag==1data=data15R; % POD-basis berekenen uit

end % gegevens 15 juli

if dag==2data=data16R; % POD-basis berekenen uit

end % gegevens 16 juli

if dag==3data=data28R; % POD-basis berekenen uit

end % gegevens 28 juli

%%%%%%%%%%%%%%%%%%%% INPUT: %% vul de gewenste %% waarden in %%%%%%%%%%%%%%%%%%%%

begin=1; % simulatie wordt gestart op dit% tijdsmonster

einde=length(data); % simulatie wordt beeindigt op dit% tijdsmonster

Nref=1 ; % aantal keer dat het het tijdsegment van% de data (30s) wil verfijnen

1

Page 128: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 118

%%%%%%%%%%%%%% PROGRAMMA %%%%%%%%%%%%%%

N=einde-begin; % aantal tijdstappen

N2=Nref*N; % aantal tijdstappen na verfijning

dt=(30*N)/N2; % tijdstap

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% de data aanpassen aan de verfijnde tijdstap %% via een zero-order hold %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

for i=1:Nfor s=(i-1)*Nref+1:i*Nref

flow(s,1)=data(begin+i-1,2)/(1000); % debietirr(s,1)=data(begin+i-1,6); % zonlichtTin(s,1)=data(begin+i-1,3); % ingangstemperatuurTout_real(s,1)=data(begin+i-1,4); % uitgangstemperatuurTendloopi(s,1)=data(begin+i-1,nr_of_loop+5);

% temperatuur op einde% van gebruikte loop

endend

for i=1:M1+M2+M3u(i,1)=data(begin,3); % temperatuursdistributie op

% tijdstip 1 is onbekend en wordt% gelijkgesteld aan ingangstemp.% op tijdstip 1

end

rho_f=903-0.672*250; % dichtheid van de olieL=0.029; % binnendiameter verhitt.sect.

V1=(L/2)^2*pi*9*L1_apt; % totaal volume toevoersectieV2=(L/2)^2*pi*9*L2; % totaal volume verhitt. sectieV3=(L/2)^2*pi*9*L3_apt; % totaal volume afvoer sectie

2

Page 129: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 119

c_f=1820+3.478*250; % warmtecapaciteit olieeff=0.69; % reflectiecoeff. spiegelsG=9*5.42*8*6; % volledige apertuur spiegels

c1=eff*G;

c21=rho_f*c_f*L1_apt;c22=rho_f*c_f*L2;c23=rho_f*c_f*L3_apt;

c31=rho_f*c_f*V1;c32=rho_f*c_f*V2;c33=rho_f*c_f*V3;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% berekenen van de temperatuursdistributie %% in het systeem op de verschillende tijdstippen %% door middel van discreet toestandsmodel %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

for k=2:N2

a11=par1*(c21*dt/(c31*dx)*flow(k-1));a12=par1*(c22*dt/(c32*dx)*flow(k-1));a13=par1*(c23*dt/(c33*dx)*flow(k-1));

a2=par2*(-c1*dt/c32);

for i=1:M1+M2+M3 % opvullen van de matrix Aif i<=M1

A(i,i)=1+a11;if (i>1)

A(i,i-1)=-a11;end

elseif (i>M1)&&(i<=M2)A(i,i)=1+a12;A(i,i-1)=-a12;

elseif (i>M2)A(i,i)=1+a13;A(i,i-1)=-a13;

endend

3

Page 130: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bijlage D. Matlabcode 120

b=[a11*Tin(k-1,1);zeros(M1+M2+M3-2,1);0]+u(1:M1+M2+M3,k-1)-[zeros(M1,1);ones(M2,1)*a2*irr(k-1,1);zeros(M3,1)];

u(1:M1+M2+M3,k)=trid(A,b);

end

%%%%%%%%%%%%%%%%%%%%%%%%%%%% berekenen basisfuncties %%%%%%%%%%%%%%%%%%%%%%%%%%%%

C=1/N2*u*u’; % correlatie matrix[V W]=eig(C); % eigenwaardendecompositie

for i=1:M1+M2+M3lambda(i,1)=real(W(i,i)); % door numerieke fouten durven

end % er al eens complexe eigenwaarden% te ontstaan, wat niet kan, aan-% gezien C reeel symmetrisch is

phi=real(V); % zelfde opmerking voor% eigenvectoren

4

Page 131: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bibliografie

[1] E.F. Camacho, M. Berenguel, and F.R. Rubio. Advanced control of solar power plants.

1997.

[2] Tor A. Johansen and Camilla Storaa. An internal energy controller for distributed solar

collector fields. Improving human potential programme, proceedings of the 2nd users

workshop, pages 111–117, February 2002.

[3] E.F. Camacho, M. Berenguel, and F.R. Rubio. Simulation software package for the

ACUREX field. Springer.

[4] Tor A. Johansen and Camilla Storaa. Energy-based control of a distributed solar collector

field.

[5] Michaela Sbarciog, Bart Wyns, Clara Ionescu, Robin De Keyser, and Luc Boullart.

Neural network models for a solar power plant.

[6] Clara Ionescu, Bart Wyns, Mihaela Sbarciog, Luc Boullart, and Robin De Keyser. Com-

parison between physical modelling and neural network modelling of a solar power plant.

[7] C. Pereira and A. Dourade. Application of a neuro-fuzzy network with support vector

learning to a solar power plant. Improving human potential programma, proceedings of

the 2nd users workshop, pages 71–78, February 2002.

[8] Y. C. Liang, H. P. Lee, S. P. Lim, W. Z. Lin, K. H. Lee, and C. G. Wu. Proper

orthogonal decomposition and its applications-part i: Theory. Journal of Sound and

Vibration, 252(3):527–544, 2002.

121

Page 132: Ghent Universitylib.ugent.be/fulltxt/RUG01/001/311/817/RUG01-001311817_2010_000… · Voorwoord In deze thesis tracht ik uit te leggen hoe een simulator van een zonnecentrale geprogrammeerd

Bibliografie 122

[9] Y. C. Liang, W. Z. Lin, H. P. Lee, S. P. Lim, K. H. Lee, and H. Sun. Proper orthogonal

decomposition and its applications-part ii: Model reduction for mems dynamical analysis.

Journal of Sound and Vibration, 256(3):515–532, December 2002.

[10] Anindya Chatterjee. An introduction to proper orthogonal decomposition, December

1999.

[11] Patricia Astrid. Reduction of Process Simulation Models: a proper orthogonal decompo-

sition approach. PhD thesis, Technische Universiteit Eindhoven, November 2004.

[12] R. N. Silva, L. M. Rato, and J.M. Lemos. Observer based time warped control of

distributed collector solar fields. Improving human potential programma, proceedings of

the 2nd users workshop, pages 103–110, February 2002.

[13] Oscar Mauricio Agudelo Mannozca. Control of the temperature profile of an one-

dimensional bar using a pod approach. presentation, January 2006.

[14] James R. Welty, Charles E. Wicks, Robert E. Wilson, and Gregory Rorrer. Fundamentals

of Momentum, Heat and Mass Transfer.

[15] Yang, Cao, Chung, and Morris. Applied Numerical Methods Using Matlab. John Wiley

& Sons Inc, 2005.