• Rezultati Niso Bili Najdeni

AVTOMATIZACIJA NOTRANJEGABIVALNEGA OKOLJA

N/A
N/A
Protected

Academic year: 2022

Share "AVTOMATIZACIJA NOTRANJEGABIVALNEGA OKOLJA"

Copied!
82
0
0

Celotno besedilo

(1)

Univerza v Ljubljani

Fakulteta za elektrotehniko

VID BOLČIČ

AVTOMATIZACIJA NOTRANJEGA BIVALNEGA OKOLJA

Diplomsko delo

Visokošolski strokovni študijski program prve stopnje Aplikativna elektrotehnika

Mentor: doc. dr. Vito Logar

Ljubljana, 2021

(2)
(3)

iii

Zahvala

Rad bi se zahvalil svojemu mentorju doc. dr. Vitu Logarju za pomoč pri izdelavi diplomske naloge, za nasvete pri izdelavi projekta in za hitre odgovore na moja vprašanja.

Poleg tega bi se rad zahvalil mami Loredani, ki mi je omogočila in me podpirala skozi študij in Izi za motivacijo med izpitnimi obdobji in pri pisanju diplomske naloge.

(4)

iv Zahvala

(5)

v

Povzetek

Diplomsko delo opisuje izdelavo programa in nadzornega sistema za avtomatizacijo prostora. Vsebuje opise orodij, ki sem jih uporabljal za izdelavo programa in sistema, opis matematičnih modelov za izračun notranje temperature zraka in koncentracije ogljikovega dioksida, ki sem ju uporabil pri zaprto zančnem vodenju, opis uporabljenih regulatorjev ter opis samega programa in nadzornega sistema.

Izdelan program vodenja in nadzorni sistem bi lahko bila uporabljena na dejanskem programirljivem logičnem krmilniku. Ker le-tega nisem imel sem celoten projekt izvedel na nivoju simulacije s pomočjo programskega orodja Siemens PLCSim.

Poleg regulacije notranje temperature in koncentracije ogljikovega dioksida, nadzorni sistem omogoča tudi upravljanje nekaterih drugih elementov v prostoru, ki jih običajno zasledimo v sistemih pametnih hiš, npr. prižiganje luči in upravljanje senčil. Nadzorni sistem je zasnovan za uporabo na Siemensovem uporabniškem panelu, ki bi v realnosti lahko dopolnjeval krmilnik.

Diplomska naloga prestavlja delujoč sistem, ki uspešno vodi notranjo temperaturo s segrevanjem oz. hlajenjem, ter koncentracijo ogljikovega dioksida s pasivnim prezračevanjem; omogoča pa tudi vodenje vseh ostalih naštetih elementov ter spremljanje in upravljanje sistema preko uporabniškega vmesnika.

Ključne besede: avtomatizacija prostora, PLK, matematični model, TIA Portal, regulacija, nadzorni sistem

(6)

vi Povzetek

(7)

vii

Abstract

The presented thesis describes the development of a program and a control system for automatization of the room. It contains description of the tools I used to build the program and the system, a description of mathematical models for calculating indoor air temperature and carbon dioxide concentration, which I then used for control purposes, a description of the controllers used and a description of the program and the control system itself.

The developed program and control system could be used on an actual programmable logic controller. Since I did not have a physical controller, I designed the project on the simulation level, using the Siemens PLCSim software tool.

In addition to internal temperature and concentration of carbon dioxide control, the system also allows the control of some other elements in the room, which are usually found in smart home systems, e.g., lights and blinds. The control system is operated using a Siemens user panel that could complement the controller.

The thesis presents a working system that successfully controls the internal temperature by heating or cooling and the carbon dioxide concentration through passive ventilation; it also enables the management of all the other listed elements and the monitoring and management of the system via the user interface.

Key words: automatization of a room, PLC, mathematical model, TIA Portal, regulation, control system

(8)

viii Abstract

(9)

ix

Kazalo

1. Uvod 1

2. Opis uporabljenih orodij 3

2.1 Totally Integrated Automation (TIA) Portal ... 3

2.1.1 Portalni način ... 3

2.1.2 Projektni način ... 6

2.1.3 Projektno drevo ... 7

2.1.4 Programski jeziki ... 10

2.1.5 Programski bloki ... 12

2.1.6 Operandi in njihova uporaba ... 13

2.1.7 Tabela spremenljivk ... 15

2.1.8 PID regulator ... 16

2.1.9 Uporabniški vmesnik – HMI ... 16

2.2 PLCSim ... 16

2.2.1 Uporabniški vmesnik kompaktnega načina ... 17

3. Izdelava projekta 20 3.1 Matematični modeli prostora ... 20

3.1.1 Karakteristike obravnavanega prostora ... 20

3.1.2 Toplotni model ... 22

3.1.3 Model koncentracije CO2 ... 29

3.2 Načrtovanje vodenja na modelu ... 31

3.2.1 Dvopoložajna regulacija ... 31

3.2.2 Proporcionalna-integrirna regulacija ... 31

3.3 Implementacija modelov in sistema vodenja ... 32

3.3.1 Ciklična prekinitev za delovanje PID bloka ... 43

(10)

x Seznam slikKazalo

3.3.2 PID/PI regulator ... 45

3.3.3 Uporabniški vmesnik HMI ... 46

3.4 Luči ... 49

3.4.1 Programska koda za upravljanje luči ... 49

3.4.2 Uporabniški vmesnik za luči ... 53

3.5 Implementacija upravljanja senčil ... 56

3.5.1 Programska koda za upravljanje luči ... 57

3.5.2 Uporabniški vmesnik za upravljanje luči ... 58

4. Predstavitev delovanja nadzornega sistema 61

5. Sklep 65

6. Viri in literatura 66

(11)

xi

Seznam slik

Slika 1 Portalni način ... 4

Slika 2 Glavno okno ... 5

Slika 3 Dodajanje nove naprave ... 6

Slika 4 Projektni način ... 7

Slika 5 Lastnosti krmilnika "PLC_1" ... 8

Slika 6 Lastnosti vmesnika "HMI_1" ... 9

Slika 7 Struktura programa ... 12

Slika 8 Tabela spremenljivk ... 15

Slika 9 Zagnan uporabniški vmesnik brez naloženega programa ... 17

Slika 10 Zagnan PLCsim ... 18

Slika 11 Ustavljen PLCsim ... 19

Slika 12 Tloris prostora ... 21

Slika 13 Temperaturni model ... 23

Slika 14 Model CO2 ... 30

Slika 15 Dodajanje zagonskega bloka v program ... 33

Slika 16 Spremenljivke v podatkovnem bloku "Podatki" ... 35

Slika 17 Dodajanje funkcijskih blokov v program... 36

Slika 18 Nastavitev vhodov in izhodov v model ... 37

Slika 19 Diferencialne enačbe ... 38

Slika 20 Glavna diferencialna enačba in integracija ... 39

Slika 21 Povečanja števcev ... 40

Slika 22 Nastavitev vhoda v toplotni model ... 40

Slika 23 Delovanje ON/OFF CO2 regulatorja ... 42

Slika 24 Dodajanje bloka ciklične prekinitve v program ... 43

Slika 25 Dodajanje PID regulatorja v program ... 44

Slika 26 Preklop med ON/OFF in PI regulacijo ... 45

Slika 27 Nastavljanje parametrov za PI regulator ... 45

Slika 28 Meni Comissioning ... 46

(12)

xii Seznam slik

Slika 29 Trend view za temperaturo ... 47

Slika 30 Nastavitve grafa ... 48

Slika 31 Trend view za CO2 ... 49

Slika 32 Funkcija lights ... 50

Slika 33 Prepis stanja luči... 50

Slika 34 Nastavitve časovnika ... 51

Slika 35 Statične spremenljivke bloka »light_mood« ... 51

Slika 36 Prva scena ... 52

Slika 37 Druga scena ... 52

Slika 38 Statična spremenljivka bloka "light_pir" ... 53

Slika 39 Funkcija "light_pir" ... 53

Slika 40 HMI za luči ... 54

Slika 41 Nastavitev animacija kroga (luči) ... 54

Slika 42 Ugasnjena in prižgana luč ... 55

Slika 43 Funkcionalnost za pritisnjen gumb ... 55

Slika 44 PIR senzor zazna gibanje in luč se prižge... 56

Slika 45 Statične spremenljivke bloka "roulettes" ... 57

Slika 46 Dviganje/spuščanje senčil s pritiskom na gumb ... 57

Slika 47 Dviganje/spuščanje senčil z držanjem gumba ... 58

Slika 48 HMI za senčila ... 59

Slika 49 Nastavitev grafa ... 59

Slika 50 ON/OFF regulacija koncentracije CO2 ... 62

Slika 51 ON/OFF regulacija temperature... 63

Slika 52 Preklop iz ON/OFF regulacije na PI regulacijo temperature ... 64

(13)

xiii

Seznam tabel

Tabela 1 Površine elementov [m2] ... 33

Tabela 2 Debeline elementov [m] ... 33

Tabela 3 Koeficienti toplotne prevodnosti [𝑊𝑚2𝐾] ... 34

Tabela 4 Specifične toplote [𝐽𝑘𝑔𝐾] ... 34

Tabela 5 Gostote [𝑘𝑔𝑚3] ... 34

Tabela 6 Ostalo ... 34

(14)

xiv Seznam slik

(15)

xv

Seznam uporabljenih simbolov

SIMBOL POMEN OBRAZLOŽITEV

TIA Portal Totally Integrated

Automation Portal

Orodje za programiranje PLK-jev

PLK Programljivi logični

krmilnik

Industrijski računalnik

HMI Human Machine Interface Uporabniški vmesnik med

programom in uporabnikom IEC 61131-3 Tretji del IEC 61131

standarda

Standard, ki definira programske jezike za PLK- je

OB Organisation block Organizacijski blok

FB Function block Funkcijski blok

FC Function Funkcija

DB Data block Podatkovni blok

PID PID controller PID regulator

LAD Ladder diagram Lestvični diagram

SCL Structured control

language

Strukturiran nadzorni jezik

(16)

xvi Seznam uporabljenih simbolov

(17)

1

1. Uvod

Diplomsko delo opisuje izdelavo programa in nadzornega sistema za avtomatizacijo prostora. Z besedo avtomatizacija opišemo nabor tehnologij, ki zmanjšajo človeške posege v proces [1]. Avtomatizacija vedno bolj postaja del našega vsakdana, saj nadomešča vlogo ljudi v industrijskih procesih, znižuje proizvodne stroške, izboljšuje delovne razmere ter zvišuje kvaliteto in kvantiteto izdelkov. Vse pogosteje avtomatizacijo najdemo tudi v različnih priročnih napravah v našem domu, ki nam olajšujejo življenje.

Ideja, na kateri je izdelano diplomsko delo, je osnovana na pametni hiši oz. prostoru, ki je delno avtomatiziran s pomočjo PLK-ja (prezračevanje, ohlajanje/ogrevanje prostora), vodenje ostalih elementov pa je prepuščeno uporabniku, a s pomočjo priročnega nadzornega sistema (nastavljanje temperature, prižiganje luči, dviganje/spuščanje senčil). Avtomatsko vodenje veličin lahko poteka bodisi z dvopoložajnimi bodisi zveznimi regulatorji. Za nastavljanje parametrov slednjih je bilo potrebno izdelati tudi matematične modele, s katerimi je mogoče simulirati želene veličine. Celoten projekt je izveden kot simulacija na PLK-ju, za katero sem v delovnem okolju zgradil potrebne modele, algoritme vodenja ter nadzorni sistem.

Struktura diplomskega dela je naslednja. V drugem poglavju so opisana orodja, ki sem jih uporabil pri izdelavi projekta za diplomsko nalogo. Pri tem je glavni poudarek na namenskemu programskemu okolju za programiranje PLK-jev Siemens TIA Portal, v katerem so zgrajeni matematični modeli, program vodenja in grafični nadzorni sistem. Predstavljen je postopek izgradnje novega projekta in različni meniji znotraj programa, ki jih za to potrebujemo. Opisani so tudi uporabljeni programski jeziki in uporaba organizacijskih blokov, ki jih potrebujemo za izdelavo modelov in sistema vodenja. V poglavju sta na kratko predstavljena tudi blok za izdelavo uporabniškega vmesnika HMI in blok za izvedbo PID regulacije, ki sta podrobneje opisana v tretjem poglavju. Na koncu poglavja je opisano še orodje za simulacijo delovanja PLK-ja, tj. PLCSim, ter različni načini delovanja le-tega, saj sem dejanski PLK nadomestil z njegovo simulacijo.

(18)

2 Uvod

V tretjem poglavju je opisana izdelava projekta. Najprej sta predstavljeni izdelavi matematičnega toplotnega modela ter matematičnega modela za koncentracijo CO2. Razloženo je tudi katere veličine bi bilo potrebno meriti, če bi imeli opravka z realnim sistemom, ter kako nastaviti ravnotežne enačbe, da dobimo odvode potrebnih veličin, ki jih v končni fazi potrebujemo za simulacijo modelov. Opisani so tudi izbrani regulatorji in princip njihovega delovanja. V nadaljevanju je opisana celotna izdelava matematičnih modelov in algoritmov vodenja v TIA Portal-u, in sicer od začetnega dodajanja blokov in spremenljivk v program, pomena posameznih blokov kode, do izdelave uporabniškega vmesnika, tako za modele kot tudi za luči in senčila. Podrobno je opisan tudi izgled nadzornega sistema, gumbov in stikal. Na koncu je izvedena še enostavna primerjava delovanja obeh regulatorjev, tj. dvopoložajnega in zveznega.

V zaključku naloge je kratek povzetek opravljenega dela ter izpostavljene določene težave, s katerimi sem se srečeval med izdelavo naloge.

(19)

3

2. Opis uporabljenih orodij

2.1 Totally Integrated Automation (TIA) Portal

TIA Portal je inženirsko okolje za programiranje Siemensovih krmilnikov SIMATIC S7-1200, S7-1500, S7-300 in S7-400. Omogoča izvedbo različnih rešitev v avtomatizaciji procesov, od planiranja, zagona, obratovanja, vzdrževanja, do nadgradnje obstoječih sistemov avtomatizacije. V enem programskem paketu omogoča programiranje PLK-jev, porazdeljenih vhodno/izhodnih enot, vmesnikov človek-stroj, pogonov ter drugih industrijskih sistemov.

Njegov namen je povezati glavne gradnike preko vseh štirih nivojev avtomatizacije (nivo upravljanja, operaterjev, krmilnikov in izvrševanja). TIA Portal sloni na mednarodnem standardu IEC 61131 – 3, ki določa programsko strukturo in programske jezike za programiranje PLK-jev in ostalih naprav. Programski paket deluje v operacijskih sistemih Windows [2].

TIA Portal omogoča, da krmilnik, ki je povezan v omrežje, dodamo v projekt, nanj prenesemo program, prav tako zgrajen v TIA Portalu in ga zaženemo. Med izvajanjem programa lahko spremljamo njegovo delovanje in stanje spremenljivk v krmilniku, ki jim lahko med izvajanjem tudi spreminjamo vrednosti [3].

2.1.1 Portalni način

Ko odpremo programsko okolje TIA Portal, se najprej prikaže t.i. portalni način (ang.

Portal View), kjer lahko dostopamo do orodij in pripomočkov. Na desni strani slike 1 vidimo možnosti za dodajanje nove naprave, odpiranje novega ali obstoječega projekta ali pa za preklapljanje v projektni način z izbiro »Open the project view«.

(20)

4 Opis uporabljenih orodij

Slika 1 Portalni način

Če v sredinskem meniju izberemo možnost »Open existing project«, se prikaže seznam že ustvarjenih projektov. Če želimo nadaljevati z urejanjem obstoječega projekta, izberemo projekt s seznama in kliknemo »Open«.

Za ustvarjanje novega projekta v sredinskem meniju izberemo »Create new project«. Pri tem določimo ime projekta in mapo, v kateri se bo projekt ustvaril. Če želimo, lahko tudi dodamo komentar oz. kratek opis projekta. Ko smo vse to določili, kliknemo na »Create« in nadalje na »Open the project view«, kot to prikazuje slika 1.

Odpre se glavno okno TIA Portala (slika 2), v katerem izberemo tip krmilnika, ki ga bomo uporabili. V levem meniju oz. v projektnem drevesu kliknemo na »Add new device«.

(21)

5

Slika 2 Glavno okno

S klikom na »Add new device« se odpre meni za dodajanje naprave, preko katerega lahko poleg krmilnikov v projekt dodajamo tudi ostale podprte elemente, npr. uporabniške vmesnike, vhodno-izhodne module idr. Za projekt, predstavljen v diplomskem delu, sem uporabil PLK iz serije S7-1200, model CPU 1214C AC/DC/Rly - 6ES7 214-1BG40-0XB0, ki je prikazan na sliki 3. S klikom na gumb »OK« krmilnik dodamo v projekt.

(22)

6 Opis uporabljenih orodij

Slika 3 Dodajanje nove naprave

Ko je PLK uspešno dodan, se le-ta prikaže v projektu ter s tem tudi v projektnem drevesu, kjer so vidne tudi opcije izbranega PLK-ja, kot so programski bloki (»Program blocks«) in tabele spremenljivk (»PLC tags«).

2.1.2 Projektni način

V projektnem načinu imamo pregled nad vsemi dodanimi komponentami v projektu, in sicer krmilniki PLK, uporabniškimi vmesniki HMI (ang. Human Machine Interface) in PC sistemi. Poleg tega imamo na voljo različna orodja in ostale možnosti, ki nam pomagajo pri izdelovanju projekta. Na sliki 4 so ta orodja označena s številkami, le-te pa pomenijo naslednje:

1 - Naslovna vrstica, v kateri je ime našega projekta.

2- Splošna orodna vrstica

(23)

7 3 - Orodna vrstica, kjer se nahajajo orodja, ki jih bomo najpogosteje uporabljali, kot so npr. prevajanje kode, nalaganje kode na PLK, zagon simulacije ipd.

4 - Projektno drevo, v katerem lahko razširimo in pregledamo možnosti za vse gradnike projekta.

7 - Delovno okno, v katerem lahko vidimo gradnike v projektu ali pišemo program in urejamo kodo.

12 - Vrstica stanja, ki prikazuje ali se je projekt prevedel z/brez napak, shranjevanje projekta ipd.

Slika 4 Projektni način

2.1.3 Projektno drevo

Projektno drevo omogoča dostop do podatkov o projektu in vseh dodanih komponent. V njem lahko dodajamo nove komponente, urejamo že obstoječe ali pa spreminjamo njihove lastnosti. Podrobnejši pogled na projektno drevo je prikazan na sliki 5.

(24)

8 Opis uporabljenih orodij

Slika 5 Lastnosti krmilnika "PLC_1"

Povsem na vrhu projektnega drevesa je prikazano ime »Test1«, ki določa ime projekta.

Z »Add new device« je v projekt možno dodati novo napravo oz. gradnike. Če odpremo možnost »Devices & networks« dobimo vpogled v vse naprave v projektu in povezave med njimi. Če odpremo dodan krmilnik, v tem primeru »PLC_1«, kot je to vidno na sliki 5, dobimo vpogled v različne opcije za urejanje njegovih lastnosti. Nekatere od njih so opisane v nadaljevanju.

»Device configuration« odpre podobne možnosti kot »Devices & networks«, le da tu dostopamo samo do nastavitev izbrane komponente, npr. PLK-ja. V »Device configuration«

lahko nastavljamo različne parametre izbrane komponente, kot npr. omrežne nastavitve, nastavitve dodatnih razširitvenih modulov, pregled vhodno/izhodnih povezav (imena spremenljivk, ki so vezane na vhode oziroma izhode) itd.

»Online & diagnostics« je zavihek, s katerim dostopamo do nastavitev PLK-ja, kot npr.

nastavitev trenutnega časa, nastavitev naslova IP, ponastavitev krmilnika na tovarniške nastavitev in ostalo.

(25)

9 V zavihku »Program blocks« lahko pregledamo vse obstoječe bloke za izbrano komponento, s klikom na »Add new block« pa lahko za izbrano komponento bloke tudi dodajamo.

V meniju »Technology objects« lahko pregledujemo in dodajamo vse tehnološke objekte, kot npr. PID regulatorji, katerim lahko spreminjamo konfiguracijo in sproti spremljamo njihovo delovanje.

»PLC tags« je meni s tabelami spremenljivk, ki so uporabljene za določeno komponento. V njem lahko odpremo tabelo z vsemi spremenljivkami v projektu, tabelo s spremenljivkami trenutno odprtega krmilnika ali pa ustvarimo novo tabelo s spremenljivkami.

V primeru, da v projektu uporabljamo tudi uporabniški vmesnik HMI, bo po dodajanju v projekt ta viden v projektnem drevesu, npr. »HMI_1«, kot to prikazuje Slika 6.

Slika 6 Lastnosti vmesnika "HMI_1"

»HMI_1« predstavlja uporabniški vmesnik, s katerim povežemo krmilnik s fizičnim zaslonom. Kot je vidno na sliki 6, so njegove lastnosti nekoliko drugačne, kot pri krmilniku.

Pod »Screens« so prikazani vsi izdelani zaslonski prikazi, s katerimi pripravimo izgled dejanskega zaslona, in sicer tako, da nanj dodamo gumbe, grafe, alarme in ostale elemente. V

(26)

10 Opis uporabljenih orodij

tem meniju lahko tudi dodamo nov zaslonski prikaz. Meni »HMI tags« je podoben kot meni tabel spremenljivk pri krmilniku, in sicer je v njem tabela z vsemi spremenljivkami uporabljenimi v izbranem HMI-ju, že ustvarjena privzeta tabela spremenljivk, lahko pa so v njem tudi ostale tabele spremenljivk, ki jih ustvarimo. V tabelah spremenljivk so zbrane vse spremenljivke, ki jih uporabljamo v izbranem HMI-ju. Dodamo lahko tudi nove spremenljivke, ki jih nato povežemo z že ustvarjeno spremenljivko v krmilniku.

2.1.4 Programski jeziki

V programskem okolju TIA Portal lahko naprave programiramo v treh programskih jezikih, ki so del standarda standarda IEC 61131-3, in sicer v lestvičnem diagramu (LAdder Diagram – LAD), strukturiranem tekstu (Structured Text – ST oz. Structured Control Language – SCL) in funkcijskem bločnem diagramu (Function Block Diagram – FBD) [4].

V nadaljevanju je opisan programski jezik SCL, ki sem ga največ uporabljal pri izdelavi programa. Opis jezika je delno povzet po prosojnicah predavanj pri predmetu Računalniško vodenje procesov [5].

2.1.4.1 Strukturiran tekst

Strukturirani tekst je tekstovni programski jezik za programiranje PLK-jev. Program vnašamo s pisanjem zaporedja stavkov. Stavki lahko vključujejo enega ali več izrazov, zaključujejo pa se z znakom »;«. Tako prevajalnik ve, da mora izvesti stavek, ko pride do podpičja. Izraze sestavljajo operandi. Primeri stavkov ST-ja so:

• prireditveni stavek, pri katerem spremenljivki dodelimo neko vrednost, npr.:

A := B + 5;

Torej, spremenljivki A dodelimo vrednost, ki je za 5 večja od vrednosti spremenljivke B.

• klic funkcijskega bloka, pri katerem uporabimo program tega bloka in mu podamo svoje parametre (če jih sprejme), npr.:

lights_DB();

V tem primeru kličemo funkcijo z imenom lights_DB, ki ne sprejme nobenega parametra.

• pogojni stavek IF, pri katerem se njegova vsebina izvrši samo v primeru, če drži pogoj tega stavka, npr.:

IF x = 1 THEN x := x * 2;

END_IF;

(27)

11 V tem primeru se bo vrednost spremenljivke »x« primerjala z 1, in če ta pogoj drži, se bo izvedla notranjost IF stavka kar pomeni, da se spremenljivki »x« dodeli njeno vrednost pomnoženo z 2, potem pa se stavek konča. Če na nobenem drugem mestu v programu spremenljivke »x« ne spremenimo, bo njena vrednost ostala 2, ta stavek pa se ne bo nikoli več izvedel, saj pogoj ne bo nikoli več izpolnjen.

• zanka FOR, ki se izvaja toliko časa, dokler drži pogoj zanke. V tem času se v programu ne bo izvedlo nič, kar je izven te zanke, npr.:

FOR i := 0 TO 10 BY 1 DO x := x + 5;

END_FOR;

V tem primeru se bo zanka FOR izvajala toliko časa, dokler spremenljivka »i« ne bo enaka 10. Spremenljivki »i« najprej dodelimo vrednost, nato povemo, do katere vrednosti le-te naj se zanka izvaja, na koncu pa določimo še za koliko naj se poveča vrednost spremenljivke po vsaki iteraciji. V danem primeru se vrednost spremenljivke

»i« vsakič poveča za 1. Dokler »i« ne doseže vrednosti 10, se vrednost spremenljivke

»x« vsakič poveča za 5.

• zanka WHILE zanka, ki se izvaja podobno kot zanka FOR, tj. dokler je izpolnjen pogoj zanke. V tem času se v programu ne bo izvedlo nič, kar je izven te zanke, npr.:

WHILE counter < 5 DO counter := counter + 1;

END_WHILE;

Zanka WHILE se bo izvajala toliko časa, dokler bo spremenljivka »counter« manjša od 5. Ob vsaki iteraciji, se vrednost spremenljivke »counter« poveča za 1, kar pomeni, da bo sčasoma dosegla vrednost 5, pogoj ne bo več izpolnjen in program bo zanko pri naslednjem izvajanju preskočil. Razlika med zankama WHILE in FOR je, da se FOR običajno uporablja, kadar je število ponovitev zanke znano, WHILE pa kadar število ponovitev ni točno znano. Pri zanki FOR se inicializacijo kontrolne spremenljivke lahko naredi na začetku zanke ali izven nje, poveča/pomanjša se jo pa po tem, ko se izvede koda znotraj zanke, pri zanki WHILE pa je potrebno inicializacijo narediti izven zanke, kontrolno spremenljivko pa se lahko poveča/pomanjša še preden se izvede ostala koda znotraj zanke.

(28)

12 Opis uporabljenih orodij

2.1.5 Programski bloki

Pri programiranju PLK-ja zapisujemo kodo v programske bloke. Z njimi zgradimo strukturo progama, pri čemer vsak blok pripada določenem programskem nivoju od najvišjega – organizacijski blok, preko srednjih – funkcijski blok, do najnižjega – funkcije. Poleg teh treh imamo na voljo še podatkovne bloke. Na sliki 7 so prikazani bloki različnih nivojev, ki se med seboj ločijo po namenu in hierarhiji. Ko posamezen blok dodamo v program, izberemo kateri programski jezik bomo uporabili za ta blok. Vsi programski bloki so med seboj kompatibilni, ne glede na uporabljen jezik. V nadaljevanju so opisani vsi ključni bloki v TIA Portalu.

Slika 7 Struktura programa

Organizacijski bloki predstavljajo najvišji programski nivo, obstaja pa več podvrsti organizacijskih blokov, in sicer:

• OB programskega cikla, ki se izvaja ciklično in predstavlja glavni blok programa, iz katerega se kličejo ostali bloki. Za izvajanje programa je potrebno, da je v trenutnem programu prisoten vsaj en OB programskega cikla. Izvajanje tega blok je lahko prekinjeno s strani ostalih organizacijskih blokov, ki jih sprožijo določeni dogodki.

• Zagonski OB, ki se izvede le enkrat, in sicer pri prehodu krmilnika iz načina STOP v način RUN. Trenutne vrednosti iz vhodne slike procesa niso na voljo zagonskemu programu, niti jih ne more spreminjati. Po končani izvedbi zagonskih OB, se prebere izhodna slika procesa in zažene ciklični program.

• OB ciklične prekinitve, ki se izvaja v periodičnih časovnih intervalih (katerih čas nastavimo sami), neodvisno od izvajanja cikličnega programa.

(29)

13 Funkcijski bloki so bloki kode, ki shranjujejo svoje vhode, izhode in vhodno/izhodne parametre v pripadajoče podatkovne bloke, da ostanejo na voljo tudi po tem, ko se blok izvede. Zaradi tega se jih imenuje tudi bloki s spominom. Funkcijski bloki lahko delujejo tudi z začasnimi spremenljivkami. Te se ne bodo shranile v pripadajoči podatkovni blok, ampak bodo bloku na voljo samo v enem ciklu.

Funkcijski bloki vsebujejo podprograme, ki se izvedejo vedno, kadar bo blok poklican s strani drugega bloka kode. Funkcijski bloki so lahko poklicani večkrat, na različnih delih programa. Zaradi tega poenostavijo programiranje pogosto ponavljajočih se funkcij.

Klic funkcijskega bloka se imenuje instanca (v angleščini je se pripadajoči podatkovni blok imenuje Instance data block). Podatki, s katerim dela instanca, so shranjeni v pripadajoči podatkovni blok. Ta blok je potreben za vsak klic funkcijskega bloka, saj vsebuje specifične vrednosti tega klica za parametre, deklarirane v funkcijskem bloku.

Funkcije so bloki kode brez spomina. Pri njih nimamo na voljo nobenega podatkovnega spomina, v katerega bi se lahko shranile vrednosti parametrov bloka. Kadar je funkcija klicana, je potrebno vsem formalnim parametrom dodeliti dejanske parametre, ki jih podamo v klicu funkcije. Funkcija lahko uporablja podatkovne bloke za stalno shranjevanje podatkov.

Podatkovni bloki se uporabljajo za shranjevanje podatkov programa, zatorej vsebujejo podatke spremenljivk, ki jih uporablja program. Med dodajanjem bloka v program, lahko izberemo, kakšnega tipa bo blok. Najbolj uporabljani podatkovni bloki so globalni podatkovni bloki (Global DB). Podatke, ki so shranjeni v teh blokih, lahko uporabljajo vsi ostali bloki. Iz spustnega menija lahko izberemo tudi pripadajoči podatkovni blok, za točno določeno funkcijo.

Vsak funkcijski blok, funkcija ali organizacijski blok lahko prebira podatke iz globalnega podatkovnega bloka ali pa zapiše podatke v ta blok. Podatki ostanejo v bloku tudi po tem, ko se gre iz njega. Globalni podatkovni blok in pripadajoči podatkovni blok sta lahko odprta istočasno, s tem da do pripadajočega bloka lahko dostopa le funkcija, kateri je namenjen.

2.1.6 Operandi in njihova uporaba

Kadar programiramo bloke, moramo določiti, katere podatkovne vrednosti bo naš program obdelal. Te vrednosti se imenujejo operandi. Za operande lahko, na primer, uporabimo:

• spremenljivke (PLC tags),

• konstante,

• spremenljivke v pripadajočih podatkovnih blokih,

• spremenljivke v globalnih podatkovnih blokih idr.

(30)

14 Opis uporabljenih orodij

V TIA Portalu so že rezervirane ključne besede (ang. keywords), ki imajo določen pomen v programu. Z njimi ne moramo poimenovati spremenljivk, ki jih ustvarimo. Primeri ključnih besed so: &, AND, BOOL, BY, BYTE, COUNTER, IF, ELSE, ELSIF, END_IF, FOR, END_FOR, OR, XOR, …

Spremenljivka je rezervirano mesto za podatkovno vrednost, ki jo je mogoče spremeniti v programu. Uporaba spremenljivk naredi progam bolj fleksibilen, saj lahko na primer dodelimo več različnih vrednosti spremenljivkam, ki smo jih ustvarili v vmesniku bloka, za vsak klic bloka. Tako lahko večkrat uporabimo že ustvarjen blok. Spremenljivka je sestavljena iz:

• imena,

• podatkovnega tipa,

• absolutnega naslova (pri čemer imajo spremenljivke, ki jih ustvarimo v tabeli spremenljivk in spremenljivke v podatkovnih blokih s standardnim dostopom absolutni naslov; spremenljivke v podatkovnih blokih z optimiziranim dostopom pa ga nimajo) ter

• vrednosti (ni nujno, lahko obstaja brez vrednosti, ampak jo kot tako ne moremo uporabiti).

Kadar naslavljamo spremenljivko, lahko vpišemo njen simbolični naslov (ime) ali pa njen absolutni naslov. Pri simboličnem naslavljanju napišemo ime spremenljivke, kot smo ga določili v tabeli spremenljivk. Okrog imena spremenljivke se bodo samodejno postavili narekovaji (npr. »vrednost_A«, ki predstavlja simbolično ime spremenljivke). Pri absolutnem naslavljanju v program vpišemo naslov spremenljivke, ki smo ji ga določili (ali pa se je določil samodejno) v tabeli spremenljivk. Absolutni naslov je dejansko številski naslov, ki se začne z identifikatorjem naslova (»%«), npr. %Q1.0, pomeni, da naslavljamo spremenljivko, ki določa izhod 1.0.

Kadar naslavljamo spremenljivko, ki je ustvarjena v podatkovnem bloku, jo lahko normalno naslavljamo v simbolični ali absolutni obliki. Za razliko od globalnih spremenljivk, moramo pred imenom takšnih spremenljivk napisati še ime oz. številko podatkovnega bloka.

Za simbolično naslavljanje napišemo ime bloka in ime spremenljivke, ki ju ločuje pika (npr.

»Blok_1«.vrednost_A, kjer je Blok_1 ime bloka, vrednost_A pa simbolično ime spremenljivke). Pri absolutnem naslavljanju napišemo številko podatkovnega bloka in absolutni naslov spremenljivke v tem bloku, ki ju ločuje pika (npr. %DB1.DBX1.0, kjer je DB1 številka bloka, DBX1.0 pa absolutni naslov spremenljivke).

Podatkovne elemente lahko naslavljamo v vmesniku bloka. Te spremenljivke so shranjene v pripadajoči podatkovni blok. Da naslovimo to spremenljivko, napišemo znak »#«, ki mu sledi ime spremenljivke (npr. #vrednost_A).

(31)

15 2.1.7 Tabela spremenljivk

Tabela spremenljivk vsebuje definicije spremenljivk, ki so veljavne za določen krmilnik. Tabela se ustvari samodejno, ko v projekt dodamo izbran krmilnik. Če želimo spremenljivke sami razvrstiti v različne tabele, lahko krmilniku predpišemo dodatne tabele spremenljivk.

V projektnem drevesu je mapa tabel spremenljivk (PLC tags) za vsak krmilnik, ki vsebuje tabelo z vsemi spremenljivkami (All tags), standardno tabelo spremenljivk, ki jo prikazuje slika 8, in ostale tabele, ki jih lahko ustvari uporabnik. Tabela z vsemi spremenljivkami vsebuje vse spremenljivke, konstante in sistemske konstante PLK-ja. Ta mapa ne more biti izbrisana. Tudi standardna tabela spremenljivk ne more biti izbrisana ali preimenovana. Ta vsebuje enake elemente kot tabela z vsemi spremenljivkami, vendar samo za svoj krmilnik.

V zavihku »Tags« deklariramo globalne PLK spremenljivke, ki jih uporabljamo v programu. Spremenljivko poimenujemo, izberemo njen podatkovni tip in ji določimo naslov (naslov se določi samodejno, lahko pa ga spremenimo). Spremenljivko lahko nato označimo, da obdrži vrednost (»Retain«), kar pomeni da ostane njena vrednost ista, tudi če krmilnik izgubi napajanje. Ostale možnosti, ki so samodejno izbrane (slika 8), pomenijo vidnost, dostopnost in možnost spreminjana spremenljivke s strani vmesnika HMI.

Slika 8 Tabela spremenljivk

Pri poimenovanju spremenljivk lahko uporabljamo črke, številke in posebne simbole.

Uporaba rezerviranih ključnih besed ni priporočljiva. Ime posamezne spremenljivke mora biti, tudi če so spremenljivke definirane v različnih tabelah. To pomeni, da ime, ki je že uporabljeno za blok, drugo spremenljivko ali konstanto znotraj krmilnika, ne more biti uporabljeno za novo spremenljivko. Program ne razlikuje med uporabo velikih in malih črk, tako da »ime_spremenljivke« in »IME_SPREMENLJIVKE« pomeni isto. Takemu poimenovanju se moramo zato izogniti. Če spremenljivko poimenujemo z že uporabljenim imenom, se bo ob drugo poimenovanje samodejno pripisala številka npr. »spremenljivka(1)«.

(32)

16 Opis uporabljenih orodij

2.1.8 PID regulator

Tehnološki objekt PID_Compact zagotavlja zvezno regulacijo procesa z uporabo PID regulacijske strukture. Nastavljanje parametrov regulatorja je lahko avtomatsko, pri čemer blok sam nastavi parametre regulatorja, ali pa ročno, pri čemer parametre regulatorja nastavi uporabnik. Blok PID_Compact mora delovati znotraj OB ciklične prekinitve, s čimer zagotovimo izvajanje v točno določenih časovnih intervalih oz. določimo t.i. čas vzorčenja.

Delovanje bloka PID_Compact je naslednje. Blok v vsaki iteraciji izvajanja pridobi vrednost merjene (regulirane) spremenljivke procesa (običajno izhoda) in jo primerja z nastavljeno referenco. Glede na nastavljene parametre nato izračuna novo vrednost regulirne veličine in jo pošlje na svoj izhod oz. na vhod procesa, s čimer poskrbi, da regulirana vrednost po določenem prehodnem pojavu doseže nastavljeno referenco. Izhodna vrednost PID regulatorja je izračunana s pomočjo treh členov regulatorja: proporcionalnega, integrirnega in diferencirnega člena.

2.1.9 Uporabniški vmesnik – HMI

Kot že omenjeno, lahko v meniju HMI zgradimo zaslonske prikaze, ki bodo uporabljeni na fizičnem zaslonu, in sicer tako, da uporabimo različne elemente kot so gumbi, grafi, alarmi idr. Zaslonski prikazi, do katerih lahko dostopa operater, so lahko uporabljeni bodisi za vodenje bodisi za nadzor procesa.

Vsak zaslonski prikaz je lahko zgrajen iz statičnih in/ali dinamičnih elementov. Statični elementi, kot npr. tekst in grafični elementi, se med delovanjem procesa ne spreminjajo.

Dinamični elementi, kot npr. grafični prikazi spremenljivk, vhodno/izhodna polja idr., pa spreminjajo svoj status in izgled glede na delovanje procesa. Vrednosti procesa in ukazi operaterja se med krmilnikom in vmesnikom HMI prenašajo preko spremenljivk, ki jih definiramo v tabelah spremenljivk.

2.2 PLCSim

Ker pri izgradnji projekta nisem imel dejanskega PLK-ja, sem njegovo delovanje simuliral s pomočjo simulatorja PLCsim. Opis tega orodja je delno povzet po navodilih za njegovo uporabo [6].

PLCsim je program, ki omogoča odpravljanje napak (ang. debugging), vrednotenje (ang. validating) in simulacijo programa, brez da bi imeli ta program nameščen na dejanski

(33)

17 PLK. Omogoča tudi, da uporabljamo vse funkcije odpravljanja napak, ki jih omogoča TIA Portal. Najbolj uporabna se mi je zdela funkcija monitoring, ki omogoča spremljanje spreminjanja vrednosti spremenljivk v realnem času. Na tak način nismo prisiljeni čakati, da se progam izvede v celoti, ampak lahko že sproti opazimo, na katerem mestu je, na primer, prišlo do napake.

PLCsim je zasnovan tako, da TIA Portalu sporoča, da je povezava s krmilnikom z določenim IP-jem vzpostavljena, s čimer je omogočeno nalaganje in zaganjanje programa na navidezni krmilnik. Predno se PLCsim zažene, mora biti program preveden brez napak.

2.2.1 Uporabniški vmesnik kompaktnega načina

Kompaktni način programa PLCsim bo aktiven, če PLCsim zaženemo preko programa TIA Portal ali pa direktno (npr. iz namizja), v samem PLCsim pa ni odprtega nobenega projekta. Kompaktni način delovanja prikazuje slika 9.

Slika 9 Zagnan uporabniški vmesnik brez naloženega programa

Na vrhu uporabniškega vmesnika se prikaže ime in vrsta virtualnega PLK-ja, prikazano besedilo pa je odvisno od stanja PLCsim:

• če ni zagnana nobena simulacija, bo prikazano besedilo »no simulation«,

• če programa še nismo naložili na virtualno napravo, bo prikazano besedilo

»Unconfigured PLC«,

• če smo program prenesli, bo prikazano ime, ki smo ga dodelili krmilniku, zraven pa bo v oglatih oklepajih tip krmilnika, npr. »PLC_1 [CPU 1214C ACDCRly]«.

(34)

18 Opis uporabljenih orodij

Nadzorna plošča PLCsim-a je sestavljena iz gumba za napajanje, treh lučk LED, ki prikazujejo stanje navideznega krmilnika (»RUN/STOP«, »ERROR« in »MAINT«) in treh kontrolnih gumbov (»RUN«, »STOP« in »MRES«). Ti gumbi delujejo le takrat, kadar je simulacija aktivna in delujoča. Pod gumbi so prikazani tudi naslovi IP vsakega simuliranega krmilnika.

Ko simulacija poteka, se lučka »RUN/STOP« obarva zeleno. Če simulacijo zaustavimo, se »RUN/STOP« obarva oranžno. Če pa med simulacijo pride do napake, začne lučka

»ERROR« utripati rdeče. Z gumbom »RUN« poženemo ustavljeno simulacijo, z gumbom

»STOP« pa jo lahko zaustavimo. Gumb »MRES« je namenjen ponastavitvi spomina krmilnika (Memory RESet), s katerim počistimo vsa področja delovnega pomnilnika in kopiramo pomnilnik za nalaganje v delovni pomnilnik.

Na dnu okna je prikazano še ime projekta v PLCsim-u. Za delujočo simulacijo in zagon programa iz programa TIA Portal ne potrebujemo projekta ustvarjenega v PLCsim-u.

PLCsim lahko zaženemo neposredno iz programa TIA Portal, in sicer v končnem oknu prevajalnika, lahko pa ga zaženemo s pritiskom na gumb »RUN«.

Slika 10 Zagnan PLCsim

Če PLCsim deluje, kar prikazuje slika 10, to nakazuje:

• gumb za napajanje je zelene barve,

• ime trenutne naprave je prikazano,

• naslov IP je prikazan,

• lučke LED so aktivne (gori zelena),

• gumbi »RUN«, »STOP« in »MRES« so omogočeni, da lahko na njih kliknemo.

V primeru, da pritisnemo na gumb za napajanje, se simulacija ustavi, izgled vmesnika pa se spremeni, kot prikazuje slika 11, in sicer:

• gumb za napajanje se obarva v sivo,

(35)

19

• ni več imena trenutne naprave,

• naslov IP ni več prikazan,

• lučke LED ne gorijo več,

• gumbi »RUN«, »STOP« in »MRES« so onemogočeni,

• lahko izbiramo med različnimi krmilniki iz spustnega menija, ki je omogočen.

Slika 11 Ustavljen PLCsim

Če simulacijo ustavimo, se konfiguracija virtualnega PLK-ja ohrani in ponovno uporabi, ko jo znova zaženemo.

(36)

20 Izdelava projekta

3. Izdelava projekta

To poglavje predstavlja izdelavo sistema pametne hiše oz. prostora. Podrobno je opisana izgradnja matematičnih modelov, algoritmov vodenja ter uporabniškega vmesnika.

Omenjeni sistem je preizkušen s pomočjo simulacije PLCsim.

3.1 Matematični modeli prostora

Ker je celoten sistem osnovan na simulaciji, je bilo najprej potrebno zgraditi matematična modela, ki nadomeščata obravnavana realna procesa. V diplomski nalogi sem se osredotočil na proces ogrevanja in hlajenja prostora ter na proces spreminjanja koncentracije ogljikovega dioksida v prostoru. Oba modela sem zgradil po že narejenih modelih v Matlabu, ki sta podrobneje opisana v [7]. V nadaljevanju sta oba modela podrobneje predstavljena [7].

Ker je izvajanje simulacije v PLCsim nekoliko drugačno kot v Matlabu, je bilo potrebno oba modela prilagoditi in uporabiti ustrezne bloke, ki so potrebni za pravilno izvajanje simulacije.

3.1.1 Karakteristike obravnavanega prostora

Tloris obravnavanega sistema prikazuje slika 12. Za obravnavani prostor lahko podamo naslednje informacije in zahteve:

• v prostoru želimo realizirati sistem vodenja za regulacijo temperature in koncentracije CO2,

• prostor se nahaja v 3. nadstropju (od 4) in ima eno zunanjo steno z oknom ter tri notranje stene (ena z zasteklitvijo), kot prikazuje slika 12,

• orientacija zunanje stene je JZ (približno 30⁰ rotiran glede na smer V-Z),

• prostor je opremljen z vsemi potrebnimi senzorji (temperatura, koncentracija CO2, globalno in difuzno sončno sevanje, …) in aktuatorji (gretje, hlajenje, prezračevanje, senčenje),

(37)

21

• poznane so vse lastnosti prostor (dimenzije, koeficienti, lastnosti vgrajenih materialov itd.), kot tudi fizikalne lastnosti pojavov, ki nastopajo v njem.

Slika 12 Tloris prostora

Ker imamo opravka s sistemom, na katerega delujejo zunanje motnje, ki jih je težko ali pa ekonomsko neupravičeno meriti, je edina prava možnost za vodenje regulacija. V primeru uporabe klasičnega krmiljenja, bi bil zaradi neupoštevanja motenj ter ne merjenja izhodnih veličin rezultat vodenja nezadovoljiv. V primeru realizacije krmiljenja z upoštevanjem motnje, pa bi bil finančni vložek pri nakupu potrebnih senzorjev previsok in tako ekonomsko nesprejemljiv. Glede na tipa obravnavanih procesov ter zahteve, ki sem si jih zadal, sem se odločil, da realiziram dva tipa regulatorjev, in sicer dvopoložajni (ON/OFF) regulator in proporcionalno-integrirni (PI) regulator.

Za obravnavani proces imamo na voljo vse potrebne meritve za izgradnjo modelov, in sicer:

• notranja temperatura [oC],

• zunanja temperatura [oC],

• notranja koncentracija CO2 [ppm],

• delovanje ogrevalno/hladilnega sistema,

• poraba energije za ogrevanje in hlajenje [kWh],

• globalno sončno sevanje [W/m2] ter

(38)

22 Izdelava projekta

• difuzno sončno sevanje [W/m2].

Za izgradnjo toplotnega modela potrebujemo meritve notranje in zunanje temperature, energije za ogrevanje/hlajenje ter sončnega sevanja. Za izgradnjo modela koncentracije CO2

ter ustrezne regulacije potrebujemo meritev koncentracije CO2 ter informacijo o številu ljudi v prostoru (samo v primeru simulacije modelov).

3.1.2 Toplotni model

K spremembi notranje temperature vplivajo energijski tokovi, ki jih v poenostavljeni obliki lahko predstavimo na sliki 13. Ti so:

• toplotni tok skozi zunanje stene (Qst-zun),

• toplotni tok skozi notranje stene (Qst-not),

• toplotni tok skozi zunanje okno (Qokno-zun),

• toplotni tok skozi notranjo zasteklitev (Qokno-not),

• toplotni tok skozi tla in strop (Qtla-strop),

• toplotni tok zaradi ogrevanja/hlajenja (Qogr),

• toplotni tok zaradi sončnega sevanja (Qrad),

• toplotni tok zaradi prezračevanja (Qprez),

• toplotni tok preko inventarja (Qinv) ter

• toplotni tok zaradi prisotnosti ljudi (Qljudje).

Za poenostavitev izgradnje modelov je potrebno pri postopku modeliranja sprejeti določene poenostavitve, in sicer:

• temperatura je po vsem prostoru enaka, kar omogoča obravnavo z navadnimi diferencialnimi enačbami,

• temperatura je enaka po celotnem elementu,

• temperaturo elementa računamo na sredini le-tega ter upoštevamo korekcijo koeficienta toplotne prevodnosti s faktorjem 2 do sredine elementa,

• temperatura vseh sosednjih prostorov je enaka,

• toplotni tok je enak pri prehajanju skozi tla in strop,

• sončno sevanje, ki vstopa skozi okno ima posredni vpliv na temperaturo zraka preko segrevanja okna in tal, na katera pada sevanje,

• sončno sevanje povzroča dvig temperature zunanje površine zunanjega elementa (stene in okna) ter

• temperatura dovodne vode v grelno/hladilni panel je konstanta, moč gretja oziroma hlajenja pa spreminjamo preko normiranega pretoka [0 – 1].

(39)

23

Slika 13 Temperaturni model

Celotni prostor obravnavamo kot skupek različnih elementov, ki vplivajo na spremembo notranje temperature. Vsak od elementov predstavlja eno stanje sistema, za katerega lahko zapišemo diferencialno enačbo. Stanja sistema so: Tin, Tst-zun, Tst-not, Ttla-strop, Tokno-zun, Tokno-not, Tpar, Tinv in predstavljajo temperature notranjega zraka, sten, tal, stropa, oken, talne obloge ter inventarja.

Na potek notranje temperature vplivamo z vhodom fiogr, ki predstavlja normirani pretok skozi ogrevalno-hladilni panel ter z vhodom fiprezracevanje, ki predstavlja pretok zraka pri prezračevanju. Pri simulaciji modela opazujemo spreminjanje izhoda oz. notranje temperature Tin. Pri tem na spremembo notranje temperature vplivajo tudi motnje, in sicer sončno sevanje Qrad, zunanja temperatura Tout, temperatura v sosednjih prostorih Tsosednje ter število ljudi (n) v prostoru.

Modeliranja se lotimo preko ravnotežne enačbe, ki je za toplotni proces:

𝑄𝑠ℎ𝑟𝑎𝑛𝑗𝑒𝑛𝑎 = ∑ 𝑄𝑖𝑛− ∑ 𝑄𝑜𝑢𝑡, (1)

kar pomeni, da je shranjena energija prostora enaka razliki med vsemi viri Qin in vsemi izgubami Qout energije. Splošna energijska enačba za shranjeno energijo je:

𝑄𝑠ℎ𝑟𝑎𝑛𝑗𝑒𝑛𝑎 = 𝑚𝑐𝑝∆𝑇, (2)

oziroma z dinamičnega vidika:

𝑄𝑠ℎ𝑟𝑎𝑛𝑗𝑒𝑛𝑎 = 𝑚𝑐𝑝𝑑𝑇

𝑑𝑡, (3)

pri čemer je m masa, cp specifična toplota, T pa temperatura elementa.

Energijska enačba za toplotni tok skozi element je:

𝑄 = 𝑢𝑒𝑙𝑒𝑚𝑒𝑛𝑡𝑎𝑒𝑙𝑒𝑚𝑒𝑛𝑡(𝑇1− 𝑇2), (4)

pri čemer je uelement koeficient toplotne prevodnosti elementa, aelement površina elementa, T1 in T2 pa temperaturi na eni in drugi strani elementa. V konkretnem primeru ne računamo zgolj

(40)

24 Izdelava projekta

toplotnega toka skozi element, temveč tudi njegovo temperaturo. Zaradi tega ter zaradi poenostavitve problema, bomo za posamezen element predpostavili, da je sestavljen iz dveh plasti, njegovo temperaturo pa bomo izračunali na sredini med obema plastema. Ravnotežna enačba se tako razširi v enačbo:

𝑄𝑠ℎ𝑟𝑎𝑛𝑗𝑒𝑛𝑎 = 𝑄𝑒𝑙−𝑖𝑛− 𝑄𝑒𝑙−𝑜𝑢𝑡=

= 2𝑢𝑒𝑙𝑒𝑚𝑒𝑛𝑡−𝑧𝑢𝑛𝑎𝑒𝑙𝑒𝑚𝑒𝑛𝑡(𝑇1− 𝑇𝑒𝑙𝑒𝑚𝑒𝑛𝑡) − 2𝑢𝑒𝑙𝑒𝑚𝑒𝑛𝑡−𝑛𝑜𝑡𝑎𝑒𝑙𝑒𝑚𝑒𝑛𝑡(𝑇𝑒𝑙𝑒𝑚𝑒𝑛𝑡− 𝑇2), (5) pri čemer je Qel-in toplotni tok v element, Qel-out toplotni tok iz elementa, Telement pa temperatura elementa. Korekcijo s faktorjem 2 smo uporabili, ker smo toplotna tokova Qel-in

in Qel-out računali samo do polovice debeline elementa.

Na podlagi teh energijskih enačb, bomo zapisali diferencialne enačbe, ki bodo opisovale spreminjane temperatur elementov po času.

Notranje stene

Za vse notranje stene predpostavimo, da imajo enako temperaturo, saj smo predpostavili, da je temperatura vseh sosednjih prostorov enaka. Toplotni tokovi ravnotežne enačbe sten so posledica notranje temperature Tin, temperature stene Tst-not in temperature sosednjih prostorov Tsosednje. Diferencialno enačbo lahko torej lahko zapišemo kot:

𝑚𝑠𝑡−𝑛𝑜𝑡𝑐𝑏𝑒𝑡𝑜𝑛𝑑𝑇𝑠𝑡−𝑛𝑜𝑡

𝑑𝑡 = = ∑ 𝑄𝑠𝑡−𝑛𝑜𝑡−𝑖𝑛− ∑ 𝑄𝑠𝑡−𝑛𝑖𝑡−𝑖𝑛 = 2𝑢𝑠𝑡−𝑛𝑜𝑡𝑎𝑠𝑡−𝑛𝑜𝑡(𝑇𝑖𝑛− 𝑇𝑠𝑡−𝑛𝑜𝑡) − −2𝑠𝑡−𝑛𝑜𝑡𝑎𝑠𝑡−𝑛𝑜𝑡(𝑇𝑠𝑡−𝑛𝑜𝑡− 𝑇𝑠𝑜𝑠𝑒𝑑𝑛𝑗𝑎). (6)

Odvod odvisne spremenljivke Tst-not izpostavimo in dobimo:

𝑑𝑇𝑠𝑡−𝑛𝑜𝑡

𝑑𝑡 = 2𝑢𝑠𝑡−𝑛𝑜𝑡𝑎𝑠𝑡−𝑛𝑜𝑡

𝑚𝑠𝑡−𝑛𝑜𝑡𝑐𝑏𝑒𝑡𝑜𝑛 (𝑇𝑖𝑛− 2𝑇𝑠𝑡−𝑛𝑜𝑡+ 𝑇𝑠𝑜𝑠𝑒𝑑𝑛𝑗𝑎). (7)

Zunanje stene

Toplotni tokovi, ki nastopajo v enačbi so posledica notranje temperature Tin, temperature stene Tst-zun, zunanje temperature Tout in temperature Tst-zun.rad, ki je posledica segrevanja stene zaradi sončnega sevanja. Ravnotežna enačba za notranje stene je:

𝑚𝑠𝑡−𝑧𝑢𝑛𝑐𝑏𝑒𝑡𝑜𝑛𝑑𝑇𝑠𝑡−𝑧𝑢𝑛

𝑑𝑡 = ∑ 𝑄𝑠𝑡−𝑧𝑢𝑛−𝑖𝑛− ∑ 𝑄𝑠𝑡−𝑧𝑢𝑛−𝑜𝑢𝑡 = = 2𝑢𝑠𝑡−𝑧𝑢𝑛𝑎𝑠𝑡−𝑧𝑢𝑛(𝑇𝑖𝑛− 𝑇𝑠𝑡−𝑧𝑢𝑛) − 2𝑢𝑠𝑡−𝑧𝑢𝑛𝑎𝑠𝑡−𝑧𝑢𝑛(𝑇𝑠𝑡−𝑧𝑢𝑛− 𝑇𝑜𝑢𝑡 − 𝑇𝑠𝑡−𝑧𝑢𝑛−𝑟𝑎𝑑). (8)

Odvod odvisne spremenljivke Tst_zun izpostavimo in dobimo:

𝑑𝑇𝑠𝑡−𝑧𝑢𝑛

𝑑𝑡 = 2𝑢𝑠𝑡−𝑧𝑢𝑛𝑎𝑠𝑡−𝑧𝑢𝑛

𝑚𝑠𝑡−𝑧𝑢𝑛𝑐𝑏𝑒𝑡𝑜𝑛 (𝑇𝑖𝑛− 2𝑇𝑠𝑡−𝑧𝑢𝑛+ 𝑇𝑜𝑢𝑡+ 𝑇𝑠𝑡−𝑧𝑢𝑛−𝑟𝑎𝑑). (9)

(41)

25 Dodatek k zunanji temperature Tst-zun-rad, ki je posledica sončnega sevanja, izračunamo po enačbi :

𝑇𝑠𝑡−𝑧𝑢𝑛−𝑟𝑎𝑑 = λst−zun(𝑄𝑑𝑖𝑟 + 𝑄𝑑𝑖𝑓)𝑅𝑠𝑡−𝑧𝑢𝑛, (10) pri čemer je λst-zun absorpcijski koeficient stene za sončno sevanje, Qdir in Qdif sta direktno in difuzno sončno sevanje, Rst-zun pa je koeficient površinske toplotne upornosti stene.

Tla in strop

Predpostavimo, da je toplotni tok skozi strop in tla ekvivalenten. Pri ravnotežni enačbi (podobna enačbi za notranje stene) bomo upoštevali toplotni tok iz talne obloge, ki je posledica sončnega sevanja nanjo skozi okno. Toplotni tokovi, ki nastopajo v enačbi so posledica notranje temperature Tin, temperature tal in stropa Ttla-strop, temperature sosednjih prostorov Tsosednje in temperature talne obloge Tpar, kot posledice sončnega sevanja nanjo.

Ravnotežna enačba za tla in strop je:

𝑚𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝𝑐𝑏𝑒𝑡𝑜𝑛𝑑𝑇𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝

𝑑𝑡 = ∑ 𝑄𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝−𝑖𝑛− ∑ 𝑄𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝−𝑜𝑢𝑡 =

= 2𝑢𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝𝑎𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝(𝑇𝑖𝑛− 𝑇𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝) −

−2𝑢𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝𝑎𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝(𝑇𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝− 𝑇𝑠𝑜𝑠𝑒𝑑𝑛𝑗𝑎) + 𝑢𝑝𝑎𝑟−𝑡𝑙𝑎𝑎𝑝𝑎𝑟−𝑡𝑙𝑎(𝑇𝑝𝑎𝑟− 𝑇𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝), (11)

pri čemer je upar-tla je koeficient toplotne prevodnosti med tlemi in talno oblogo, apar-tla pa površina talne obloge, ki jo segreva sonce.

Odvod odvisne spremenljivke Ttla-strop izpostavimo in dobimo:

𝑑𝑇𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝

𝑑𝑡 = 2𝑢𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝𝑎𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝

𝑚𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝𝑐𝑏𝑒𝑡𝑜𝑛 (𝑇𝑖𝑛− 2𝑇𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝+ 𝑇𝑠𝑜𝑠𝑒𝑑𝑛𝑗𝑎) + +𝑢𝑝𝑎𝑟−𝑡𝑙𝑎𝑎𝑝𝑎𝑟−𝑡𝑙𝑎

𝑚𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝𝑐𝑏𝑒𝑡𝑜𝑛 (𝑇𝑝𝑎𝑟− 𝑇𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝). (12)

Notranja zasteklitev

Toplotni tokovi v enačbi so posledica notranje temperature Tin, temperature zasteklitve Tokno-not in temperature sosednjih prostorov Tsosednje. Ravnotežna enačba (podobna enačbi za notranje stene) za notranjo zasteklitev je:

𝑚𝑜𝑘𝑛𝑜−𝑛𝑜𝑡𝑐𝑜𝑘𝑛𝑜−𝑛𝑜𝑡𝑑𝑇𝑜𝑘𝑛𝑜−𝑛𝑜𝑡

𝑑𝑡 = ∑ 𝑄𝑜𝑘𝑛𝑜−𝑛𝑜𝑡−𝑖𝑛 − ∑ 𝑄𝑜𝑘𝑛𝑜−𝑛𝑜𝑡−𝑜𝑢𝑡 =

= 2𝑢𝑜𝑘𝑛𝑜−𝑛𝑜𝑡𝑎𝑜𝑘𝑛𝑜−𝑛𝑜𝑡(𝑇𝑖𝑛− 𝑇𝑜𝑘𝑛𝑜−𝑛𝑜𝑡) −

−2𝑢𝑜𝑘𝑛𝑜−𝑛𝑜𝑡𝑎𝑜𝑘𝑛𝑜−𝑛𝑜𝑡(𝑇𝑜𝑘𝑛𝑜−𝑛𝑜𝑡− 𝑇𝑠𝑜𝑠𝑒𝑑𝑛𝑗𝑎). (13)

(42)

26 Izdelava projekta

Odvod odvisne spremenljivke Tokno-not izpostavimo in dobimo:

𝑑𝑇𝑜𝑘𝑛𝑜−𝑛𝑜𝑡

𝑑𝑡 = 2𝑢𝑜𝑘𝑛𝑜−𝑛𝑜𝑡𝑎𝑜𝑘𝑛𝑜−𝑛𝑜𝑡

𝑚𝑜𝑘𝑛𝑜−𝑛𝑜𝑡𝑐𝑜𝑘𝑛𝑜−𝑛𝑜𝑡 (𝑇𝑖𝑛− 2𝑇𝑜𝑘𝑛𝑜−𝑛𝑜𝑡+ 𝑇𝑠𝑜𝑠𝑒𝑑𝑛𝑗𝑎). (14) Zunanje okno

Toplotni tokovi v enačbi so posledica notranje temperature Tin, temperature okna Tokno- zun, zunanje temperature Tout in temperature Tokno-zun-rad, ki je posledica segrevanja okna zaradi sončnega sevanja. Ravnotežna enačba (podobna enačbi za zunanjo steno) za zunanje okno je:

𝑚𝑜𝑘𝑛𝑜−𝑧𝑢𝑛𝑐𝑜𝑘𝑛𝑜−𝑧𝑢𝑛𝑑𝑇𝑜𝑘𝑛𝑜−𝑧𝑢𝑛

𝑑𝑡 = ∑ 𝑄𝑜𝑘𝑛𝑜−𝑧𝑢𝑛−𝑖𝑛− ∑ 𝑄𝑜𝑘𝑛𝑜−𝑧𝑢𝑛−𝑜𝑢𝑡 =

= 2𝑢𝑜𝑘𝑛𝑜−𝑧𝑢𝑛𝑎𝑜𝑘𝑛𝑜−𝑧𝑢𝑛(𝑇𝑖𝑛− 𝑇𝑜𝑘𝑛𝑜−𝑧𝑢𝑛) − 2𝑢𝑜𝑘𝑛𝑜−𝑧𝑢𝑛𝑎𝑜𝑘𝑛𝑜−𝑧𝑢𝑛(𝑇𝑜𝑘𝑛𝑜−𝑧𝑢𝑛− 𝑇𝑜𝑢𝑡

−𝑇𝑜𝑘𝑛𝑜−𝑧𝑢𝑛−𝑟𝑎𝑑𝐾𝑠𝑒𝑛𝑐𝑒𝑛𝑗𝑒). (15)

Odvod odvisne spremenljivke Tokno-zun izpostavimo in dobimo:

𝑑𝑇𝑜𝑘𝑛𝑜−𝑧𝑢𝑛

𝑑𝑡 = 2𝑢𝑜𝑘𝑛𝑜−𝑧𝑢𝑛𝑎𝑜𝑘𝑛𝑜−𝑧𝑢𝑛

𝑚𝑜𝑘𝑛𝑜−𝑧𝑢𝑛𝑐𝑜𝑘𝑛𝑜−𝑧𝑢𝑛 (𝑇𝑖𝑛− 2𝑇𝑜𝑘𝑛𝑜−𝑧𝑢𝑛+ 𝑇𝑜𝑢𝑡+ 𝑇𝑜𝑘𝑛𝑜−𝑧𝑢𝑛−𝑟𝑎𝑑𝐾𝑠𝑒𝑛𝑐𝑒𝑛𝑗𝑒), (16)

pri čemer je Ksencenje koeficient senčenja okna [0 - 0,8] in je odvisen od položaja in naklona žaluzij. Pribitek k zunanji temperaturi Tokno-zun-rad izračunamo po naslednji enačbi:

𝑇𝑜𝑘𝑛𝑜−𝑧𝑢𝑛−𝑟𝑎𝑑 = λokno−zun (𝑄𝑑𝑖𝑟+ 𝑄𝑑𝑖𝑓)𝑅𝑜𝑘𝑛𝑜−𝑧𝑢𝑛, (17) pri čemer je λokno-zun absorpcijski koeficient okna za sončno sevanje, Qdir in Qdif sta direktno in difuzno sončno sevanje, Rokno-zun pa koeficient površinske toplotne upornosti okna.

Talne obloge

Predpostavimo, da energija sončnega sevanja, ki prehaja v prostor segreva talno oblogo, in da je površina, na katero pada sončno sevanje, konstanta. Velja tudi, da koeficienta toplotne prevodnosti z ene in druge strani nista enaka (koeficient toplotne prevodnosti med oblogo in tlemi upar-tla, koeficient toplotne prevodnosti med oblogo in zrakom upar-zrak). Toplotni tokovi, ki nastopajo v enačbi, so posledica notranje temperature Tin, temperature talne obloge Tpar, temperature tal Ttla-strop, sončnega sevanja Qdir in Qdif in faktorja senčenja okna Ksencenje. Ravnotežna enačba za talne obloge je:

𝑚𝑝𝑎𝑟𝑐𝑝𝑎𝑟𝑑𝑇𝑝𝑎𝑟

𝑑𝑡 = ∑ 𝑄𝑝𝑎𝑟−𝑖𝑛− ∑ 𝑄𝑝𝑎𝑟−𝑜𝑢𝑡 =

=(𝑄𝑑𝑖𝑟 + 𝑄𝑑𝑖𝑓)𝑎𝑜𝑘𝑛𝑜gokno(1 − 𝐾𝑠𝑒𝑛𝑐𝑒𝑛𝑗𝑒) + 𝑢𝑝𝑎𝑟−𝑧𝑟𝑎𝑘𝑎𝑝𝑎𝑟(𝑇𝑖𝑛− 𝑇𝑝𝑎𝑟) −

−𝑢𝑝𝑎𝑟−𝑡𝑙𝑎𝑎𝑝𝑎𝑟(𝑇𝑝𝑎𝑟− 𝑇𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝), (18) pri čemer je gokno koeficient prepustnosti okna za sončno sevanje.

(43)

27 Odvod odvisne spremenljivke Tpar izpostavimo in dobimo:

𝑑𝑇𝑝𝑎𝑟

𝑑𝑡 = 1

𝑚𝑝𝑎𝑟𝑐𝑝𝑎𝑟 ((𝑄𝑑𝑖𝑟 + 𝑄𝑑𝑖𝑓)𝑎𝑜𝑘𝑛𝑜𝑔𝑜𝑘𝑛𝑜(1 − 𝐾𝑠𝑒𝑛𝑐𝑒𝑛𝑗𝑒) + 𝑢𝑝𝑎𝑟−𝑧𝑟𝑎𝑘𝑎𝑝𝑎𝑟(𝑇𝑖𝑛− 𝑇𝑝𝑎𝑟) − 𝑢𝑝𝑎𝑟−𝑡𝑙𝑎𝑎𝑝𝑎𝑟(𝑇𝑝𝑎𝑟− 𝑇𝑡𝑙𝑎−𝑠𝑡𝑟𝑜𝑝)). (19)

Ogrevanje

Prostor se ogreva/hladi preko grelno-hladilnih panelov. Toplotni tokovi, ki nastopajo v enačbi so posledica notranje temperature Tin in temperature panela Togr. Enačba za ogrevanje je:

𝑄𝑜𝑔𝑟 = 𝑢𝑜𝑔𝑟𝑎𝑜𝑔𝑟(𝑇𝑜𝑔𝑟− 𝑇𝑖𝑛)𝜑𝑜𝑔𝑟, (20)

pri čemer je 𝜑ogr je normiran pretok vode skozi panel [0 – 1].

Prezračevanje

Prostor se prezračuje pasivno, preko oken. Toplotni tokovi, ki nastopajo v enačbi so posledica notranje temperature Tin, zunanje temperature Tout ter pretoka zraka skozi okno 𝜑prezracevanje. Enačba za prezračevanje je:

𝑄𝑝𝑟𝑒𝑧𝑟𝑎𝑐𝑒𝑣𝑎𝑛𝑗𝑒 = 𝑚𝑧𝑟𝑎𝑘𝑐𝑧𝑟𝑎𝑘

𝑉𝑠𝑜𝑏𝑒 (𝑇𝑖𝑛− 𝑇𝑜𝑢𝑡)𝜑𝑝𝑟𝑒𝑧𝑟𝑎𝑐𝑒𝑣𝑎𝑛𝑗𝑒. (21) Inventar

V prostoru je nameščeno pohištvo in ostali predmeti (inventar). Za toplotne tokove med zrakom in inventarjem lahko predpostavimo, da je le-ta enake oblike kot ostali elementi, tj.

ploskev, zato zanj velja podobna ravnotežna enačba. Toplotni tokovi, ki nastopajo v enačbi so posledica notranje temperature Tin in temperature inventarja Tinv. Ravnotežna enačba za inventar je:

𝑚𝑖𝑛𝑣𝑐𝑖𝑛𝑣𝑑𝑇𝑖𝑛𝑣

𝑑𝑡 = ∑ 𝑄𝑖𝑛𝑣−𝑖𝑛− ∑ 𝑄𝑖𝑛𝑣−𝑜𝑢𝑡 = 2𝑢𝑖𝑛𝑣𝑎𝑖𝑛𝑣(𝑇𝑖𝑛− 𝑇𝑖𝑛𝑣) − 2𝑢𝑖𝑛𝑣𝑎𝑖𝑛𝑣(𝑇𝑖𝑛𝑣− 𝑇𝑖𝑛). (22)

Odvod odvisne spremenljivke Tinv izpostavimo in dobimo:

𝑑𝑇𝑖𝑛𝑣

𝑑𝑡 = 2𝑢𝑖𝑛𝑣𝑎𝑖𝑛𝑣

𝑚𝑖𝑛𝑣𝑐𝑖𝑛𝑣 (2𝑇𝑖𝑛− 2𝑇𝑖𝑛𝑣). (23)

Osebje

V modelu bomo upoštevali tudi ljudi v prostoru. Veliko število ljudi dejansko prispeva k toplotnemu toku in segrevanju prostora. Tokovi, ki nastopajo v enačbi, so posledica notranje temperature Tin in normalne temperature človeškega telesa, tj. 36,5 °C. Enačba za osebje je:

𝑄𝑙𝑗𝑢𝑑𝑗𝑒 = 𝑢𝑙𝑗𝑢𝑑𝑗𝑒𝑎𝑙𝑗𝑢𝑑𝑗𝑒(36.5 − 𝑇𝑖𝑛)𝑛, (24)

Reference

POVEZANI DOKUMENTI

Prikaz uporabe sistema za upravljanje poslovnih pravil Drools na primeru izraˇ cuna plaˇ c..

Na navideznem streˇ zniku pa poleg izdelka Maximo Asset Management 7.5 teˇ cejo ˇse Tivoli Monitoring Agent for Linux OS 6.2.2, IBM Tivoli Compo- site Application Manager for

V diplomskem delu najprej analizirajte in načrtujte, nato pa tudi razvijte delujoč prototip informacijskega sistema za nadzorovanje in upravljanje dogodkov in virov

- sistem Dicta – Iskratelova rešitev za zbiranje telefonskih glasov iz omrežja - internetna aplikacija za upravljanje in pregled rezultatov glasovanj.. - sistemski servis

Upravljanje omreˇ znih naprav in storitev mora vkljuˇ cevati podporo za upravljanje tako omreˇ znih naprav kot tudi streˇ znikov, na katerih teˇ cejo storitve.. V primeru, da nam

Razˇsiritev sistema za upravljanje veˇ c procesov je moˇ zna z dodajanjem dodat- nih spletnih storitev za orkestracijo procesa in po potrebi tudi z dodajanjem podpornih

Poleg mobilne Android aplikacije je bila izdelana tudi spletna aplikacija, ki sluˇ zi kot vmesnik za dostop do najljubˇsih poti in upravljanje z njimi. Razvoj aplikacije je potekal

Glede na to, da nam mobilno multimedijsko stojalo ponuja moˇ znost poljubne konfiguracije, smo se odloˇ cili nadgraditi sto- jalo z modulom, ki omogoˇ ca brezˇ ziˇ cno