+ All Categories
Home > Documents > RAPORT STIINTIFIC SI TEHNIC · 2017-01-30 · imprimantă grafică, modem GPRS (3G), şi sursa...

RAPORT STIINTIFIC SI TEHNIC · 2017-01-30 · imprimantă grafică, modem GPRS (3G), şi sursa...

Date post: 26-Dec-2019
Category:
Upload: others
View: 4 times
Download: 0 times
Share this document with a friend
172
Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie pilot - HIDROEOL RST Pagina 1 Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II RAPORT STIINTIFIC SI TEHNIC Etapa 4 : Executie partiala II model functional pentru sistemul energetic hibrid Activitati: 4.1. Elaborare partiala II a modelului functional SCADA (module software) 4.2. Realizare partiala I model functional subsistem eolian
Transcript

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 1

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

RAPORT STIINTIFIC SI TEHNIC

Etapa 4 : Executie partiala II model functional pentru sistemul energetic hibrid Activitati:

4.1. Elaborare partiala II a modelului functional SCADA (module software) 4.2. Realizare partiala I model functional subsistem eolian

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 2

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Ioan Stoian - Director IPA Cluj Napoca COLECTIV DE ELABORARE Alina Calarasu – Director proiect Octavian Capatina – responsabil stiintific Teodora Sanislav Dorina Capatina Cristian Vigu Dan Gota Laurentiu Chirila Universitatea Transilvania Brasov - Partener 2 Corneliu Marinescu – responsabil stiintific Ion Catalin Serban Ioan Iacob Paul Marinescu Daniela Clotea Luminita Georgescu Marius Valcan Dumitru Mihai Barote Luminita

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 3

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

CUPRINS

Nr capitol

Denumire capitol Pagina

1 BAZA LUCRĂRII 5 1.1 Baza juridică 5 1.2 Baza tehnica 5

2 ARHITECTURA SISTEMULUI SCADA 5

3 STRUCTURA APLICATIEI SOFTWARE 7 3.1 Nivelul local 7 3.2 Nivelul distant (dispecer) 13

4 STRUCTURA BAZEI DE DATE 37 4.1 Generalitati 37 4.2 Modelul conceptual 37 4.3 Modelul de date relational 43 4.4 Implementarea 47

5 MODIFICARI HARD LA NIVELUL DULAPULUI DE AUTOMATIZARE 56

6 ELABORAREA/IMPLEMENTAREA BAZEI DE DATE RELAŢIONALE 60 6.1 Baze de date existente 60 6.2 Proiect conceptual 63

Determinarea tipurilor de entitate 63 Determinarea relaţiilor dintre tipurile de entitate 64 Determinarea atributelor 64 Diagrama entitate-relaţie 68

6.3 Crearea şi validarea modelului logic local 68 Proiectarea modelului conceptual local pe un model logic local 69 Crearea relaţiilor pentru modelul logic local 70 Validarea modelului, utilizând normalizarea 71 Validarea modelului utilizând tranzacţiile 72 Desenarea diagramei ER 74 Definirea regulilor de integritate a bazei de date 74

6.4 Distribuţia vântului 76 7 CONCLUZII 88

8. BIBLIOGRAFIE 90 Anexa 1 - Descriere in pseudocod a principalelor rutine ale aplicatiilor de tip

SCADA- HIDROEL 91

Anexa 2- Scriptul SQL_ al bazei de date HIDROEOL 143

Anexa 3 - Modificari hard fata de etapa 3 (rezultate din teste) 174 3.1. Schema circuit de senzori de curent si tensiuni continue 3.2. Schema circuit de prezenta

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 4

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

3.3. Schema formator de implusuri din NRG#40 (anemometru) 3.4. Schema sursa auxiliara de +/- 12Vcc pentru circuitele de senzori 3.5. Schema impachetare Formator de impulsuri si sursa +/-12Vcc

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 5

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

1. BAZA LUCRĂRII

1.1. Baza juridică Proiectul se desfăşoară pe baza unui parteneriat între SC IPA SA CIFATT Cluj (coordonator al

proiectului) unitate cu profil de cercetare-dezvoltare, Universitatea Tehnică Cluj Napoca şi Universitatea Transilvania Braşov.

Baza legală a lucrării o constituie contractul de finanţare de la bugetul de stat având nr. 21062/2007, încheiat între SC IPA SA şi Centrul Naţional de Management Programe.

1.2. Baza tehnică Baza tehnică a lucrării este constituită din:

o Anexa B - Descrierea proiectului o Planul de realizare al proiectului o Anexele contractului.

2. Arhitectura sistemului SCADA

Scopul sistemului SCADA este dublu: sa conducă si sa monitorizeze corect staţia pilot hidro-eoliana si sa facă fata unor experimente precise privind întocmirea unor bilanţuri energetice pe toate componentele din lanţ. Experimentările vor dura aproximativ un an (2009/2010) si vor cuprinde pe lângă achiziţia de date si:

- bilanţuri si randamente energetice pe ansamblu - randamente pe fiecare componenta în parte (generator eolian, pompa, invertor) -

consumurile vor fi evidenţiate si separat, - înregistrarea si analiza regimurilor tranzitorii pentru fiecare componenta a

ansamblului, - debite şi volume de apa pompate, nivele, temperaturi, viteza vântului, şi în general tot

ce este relevant pentru aprecierea experimentului, etc. Arhitectura sistemului SCADA este organizata ierarhic pe 2 nivele: nivelul local (PLC,

senzori, actuatori), nivelul de urmărire (echivalentul unui dispecer) 2.1. Calculatorul principal SCADA

Acest calculator, numit şi calculatorul principal, are următoarea componenţă: PC propriu-zis sau un laptop echivalent - cu CD/writer, o memorie de 2Gocteţi, monitor LCD TFT 19”(1280x1024), imprimantă grafică, modem GPRS (3G), şi sursa neintreruptibilă care să asigure funcţionarea calculatorului şi a echipamentului de comunicaţii cel puţin 30 minute la întreruperea alimentării cu energie electrică din reţeaua publică. Sistemul de operare va fi unul stabil precum Windows XP Professional.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 6

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Pentru o operare prietenoasă în cadrul aplicaţiei telematice ce se va dezvolta ulterior, se va opta pentru o aplicaţie software bazată pe ecrane (interfeţe) dintre sistem (proces, subsistem PLC) şi operator sub forma grafică, cât mai intuitivă. În fond va fi vorba de multe de astfel de ecrane, specifice atât procesului măsurat, condus, urmărit, arhivat, ce se pot dezvolta în LabView sau CVI. Prin intermediul acestor ecrane, care conţin bare de selecţii, „butoane”, „leduri” şi „selectoare” se pot atinge toate funcţiile implementate. Este o analogie perfectă dintre noţiunea noastră de „ecran” (interfaţă) şi noţiunea de fereastră din sistemul de operare Windows – cu singura specificitate a „ecranului”, care ocupându-se de un proces real este mult mai intuitiv mai direct, astfel că un operator cu cunoştinţe minime să poată opera la un nivel de pretenţii acceptabil.

Functii la nivelul calculatorului distant Programul de aplicaţie de pe calculatorul distant, cu scop de urmărire a procesului, este structurat

modular într-un nucleu care gestioneaza: dialogul cu nivelul automatului programabil; gestionarea arhivei de date a procesului intr-o baza de date relationala; stocarea in aceasi baza de date a evenimentelor generate de manevrele efectuate şi/sau

protecţiilor care au acţionat; vizualizarea datelor şi a mărimilor electrice si energetice masurate si sau calculate on-line la

nivelul schemei sinoptice instalatiei; generarea de rapoarte grafice si sau tabelare in formate selectabile de catre operator:

o 4 variabile din proces reprezentate simultan pe acelasi grafic in paralel cu raportul evenimentelor care s-au derulat in perioada selectata;

o 3 variabile din proces reprezentate simultan pe acelasi grafic in paralel cu valorile lor numerice (in forma tabelara) care s-au derulat in perioada selectata;

o imagime comparativa a energiilor vehiculate in paralel cu randamentele calculate; gestiunea configurării resurselor aplicaţiei; tipărirea graficelor de achiziţie respectiv a rapoartelor de evenimente; prelucrarea cu scop ştiinţific şi statistic prin exportarea datelor din baza de date in format

excel; asigurarea accesului restricţionat, pe nivele de competenţă, până la nivelul modificării

configurarii datelor de proces sau până la nivelul comenzilor anumitor elemente de execuţie; atenţionearea prin ecrane speciale şi, după caz, alarmarea sonora la nivel local (prin hupa).

Pentru realizarea acestor functii calculatorul dialigheaza continuu cu PLC local din staţia de pompare şi staţia meteo, prin sistemul de comunicatii GSM GPRS.

Pentru realizarea acestor funcţii programul calculatorului de la distanţă are structura tipică a unui program de achiziţie, stocare şi generare de rapoarte – nivel dispecer dintr-un ansamblu SCADA . Sistemul fiind conceput deschis, pe baza de date create se poate crea o aplicaţie WEB pentru Internet sau Intranet de tip VPN ( in situatia in care este necesara protecţia bazei de date). Acest program este prevăzut cu abilităţi de lucru în timp real.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 7

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

3. STRUCTURA APLICATIILOR SOFTWARE

Aplicaţiile software SCADA se prezintă ca o succesiune de ecrane interactive, functionale, atât în spre operator cât şi în spre „maşină”. Prin maşină înţelegem atât procesul propriu-zis (prin intermediul automatului programabil) cât şi hardul dintre proces până la ecranul operatorului. Aceste ecrane le mai numim, in prezenta documentatie, “intefaţe operator”, indiferent de nivelul ierarhic carora ele apartin. Interfeţele operatorului cu procesul, la nivelul distant (dispecer) sunt ecrane care au fost dezvoltate în LabWindows CVI care este un mediude dezvoltare specializate pe dezvoltarea de aplicatii SCADA. Ele sunt implementate pe calculatorul SCADA, care intruneşte toate cerinţele hard pentru implementarea unui astfel de program aplicativ.

Interfeţele operatorului cu procesul, la nivelul local (automatul programabil) sunt ecrane care se pot dezvolta în MICROWIN, şi locate în memoria CPU respectiv a panoului senzitiv asociat acestuia.

Ferestrele se deschid cu un ecran principal din care se poate naviga, pe principiul subferestrelor din sistemele de operare Windows. Din oricare alt ecran se poate reveni in ecranul principal si astfel operatorul poate ajunge in oricare ecran dorit pentru a urmări, comanda,sau configura orice element al instalaţiei supuse acestei aplicaţii. Avem interfeţe cu ecrane: de configurare, tehnologice (supraveghere on-line a instalatiei) şi de raportare. Interfeţele tehnologice sunt, funcţie de conţinut, interfeţe de comandă, de masură, de comandă şi masură. Prin conţinut aici inţelegem puncte de măsură, bucle de reglaj unde e cazul, stabilire de referinţă fără reglajul propriu zis, comenzi directe de elemente de execuţie. Interfeţele tehnologice de măsura şi Interfeţele tehnologice de comandă specifice unei bucle au pe lângă „led”-ul de Alarmă, şi o fereastră de informare cu privire la ce se întâmplă în ansamblu. Altfel zis dacă te afli într-un ecran de detaliu eşti informat de evenimentele esenţiale din ansamblu instalaţiei printr-o fereasta de informare. Fereatra de informare apare suprapusa ecranului in care se afla la un moment dat operatorul in urma actiunii de click buton stang al mouse-lui pe LED-ul de alarma cand acesta este in stare de palpaire (starea de palpaire a acestui element ecran este indicatia aparitiei unei noi atentionari sau alarme). 3.1. Aplicatia software de la nivelul local

Structura statiei pilot a fost prezentata in figura 6.1. si structura hard a automatizarii realizata cu module PLC S7-200 Siemens a fost prezentata in anexa 3 corespunzator etapei anterioare. Aplicatia soft este scrisa in mediul de dezvoltare Step7 Microwin produsul Siemens aferent automatelor programabile S7-200. Aplicatia soft este una de telemetrie si trebuie sa măsoare:

o viteza vântului, o energia debitata de generatorul eolian, o energia debitata de panourile solare

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 8

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

o pierderile de energie pe controlerul hibrid (eolian si solar) o energia consumata de invertor (regimul standby) o energia consumata de sarcina (pompa etc.) o energia consumata de SCADA (nivel local),

Pentru acestea se măsoară direct tensiunea pe baterie, curentul de încărcare de la panourile solare, curentul de încărcare de la controlerul hibrid (adică suma curenţilor din generatorul eolian si din panourile solare), curentul de alimentare a invertorului, si parametri de esire a invertorului: tensiunea, curentul, frecventa, puteri si energii (aparenta, activa si reactiva). Se observa ca se măsoară toţi curenţii care intra sau ies in/din bancul de acumulatoare; pe baza lor se calculează cuantele de energie (interval de 5 minute) in Wh, si energiile care intra/ies in KWh . Pe baza acestora se calculează bilanţul energetic al ansamblului. Sarcina invertorului, care este pompa de apa, este măsurata exhaustiv (tensiune, frecventa, curent, putere, energii aparenta, activa si reactiva. Toate aceste energii împreuna cu datele de vânt ne permit, după un an de zile, i) sa caracterizam complet un astfel de sistem in ceea ce priveşte eficienta energetica si evidenţierea

pe fiecare componenta a pierderilor, si ii) sa acordam si sa validam modelul matematic dezvoltat pe datelor reale

Tabelul 3.2. Alocarea memoriei Automatului Programabil in scopul realizarii transferului OPC

adresa IA denumire variabila 4000 tensiune_faza_L1 (invertor) 4004 intensitate L1 4008 factor de putere invertor 4012 AIW0 tensiune baterie 4016 putere_apar_L1 4020 putere_activa_L1 4024 putere_reactiva_L1 4028 rezerva 4032 energie_activa_E 4036 energie_reactiva_E 4040 energie_activa_I 4044 energie_reactiva_I 4048 AIW2 curent alim invertor 4052 AIW4 curent CH 4056 AIW6 curent solar 4060 AIW8 rezerva 4064 crt eol calculat/masurat 4068 cuanta_eol 4072 energie_eol

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 9

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

4076 cuanta_verde 4080 energie_verde 4084 energie_inc_verde 4088 energie_desc_verde 4092 cuanta_inv 4096 energie_inv 4100 energie_inc_inv 4104 energie_desc_inv 4108 cuanta_solar 4112 energie_solar 4116 crt_ch 4120 cuanta_ch 4124 energie_ch 4128 energie_rtu 4132 de_verde / h 4136 de_inv / h 4140 ! de_sarc / h 4144 de_sol / h 4148 de_eol / h 4152 de_ch / h 4156 de_rtu / h 4160 de_verde / zi 4164 de_inv / zi 4168 ! de_sarc / zi 4172 de_sol / zi 4176 de_eol / zi 4180 de_ch / zi 4184 de_rtu / zi 4188 val stop plc 4192 val start plc 4196 val stop disp 4200 val start disp 4204 viteza_vant 4208 minut_sol 4210 ora_sol 4212 zi_sol 4214 minut_eol 4216 ora_eol 4218 zi_eol

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 10

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

4220 min_sist 4222 ora_sist 4224 zi_sist 4226 min_inv 4228 ora_inv 4230 zi_inv 4232 min_sarcina 4234 ora_sarcina 4236 zi_sarcina 4237 IB0 4238 IB1 4239 QB0 4240 QB1 4241 cmdQ01 4243 sec_sol 4245 sec_eol 4247 sec_sist 4251 sec_inv 4253 sec_sarcina 4250 flag

Aceasta alocare poate sa sufere modificari, intrucat pe parcursul exploatarii ei (oct – decembrie

2009) s-au facut unele „imbunatatiri” rezultate dintr-un proces firesc de optimizare si se vor face probabil si in continuare. Astfel in cadrul etapei urmatoare se va prezenta intr-o anexa modificarile realizate, cu justificari daca este cazul in anumite situatii.

Toate aceste marimi corelate vor fi stocate pe o durata de un an in baza de date a proiectului.

Masuratorile sunt transmise din locatia Floresti CHE II la distanta (IPA) pentru stocare si prelucrare serverul de proces prin aplicatia software pe care o vom denumi „Dispecer_HIDROEOL”.

In tabelul 3.1 se prezinta alocarea semnalelor de intrare iesire ale automatului programabil pentru

a interfata elementele de masurare si executie ale procesului. Deoarece nu dispunem de toate traductoarele energetice necesare contorizarii punctelor de masura importante ale instalatiei unele din acestea vor fi calcutate prin integrarea puterilor instantanee. Aceste marimi sunt calculate in locatii din memoria de date a automatului programabil, deoarece sunt necesare in controlul local. Harta alocarii acestora este prezentata in tabele 3.2. Continutul tuturor datelor de intrare respectiv al acestor marimi energetice calculate este transferat calculatorului dispecer printr-un server OPC

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 11

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Interfeţe utilizator ale automatului programabil

Intefeţele utilizator ale automatului programabil vor fi identice cu cele de la nivelul distant (dispecer) cu precizarea ca aceste interfete nu au in spate baza de date arhivata cum e cazul aplicatiei de la nivelul distant; vor fi vizualizate doar valorile instantanee plus energiile care provin din integrarea puterilor in timp de la lansarea aplicatiei in data de 20 noiembrie 2009 orele 16:00. In cazul in care automatul programabil Siemens CPU224XP se reseteaza valorile energiilor vor porni din nou, integrarea, de la zero – fapt ce ar trebui evitat.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 12

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Ecranul de la nivel local privitor la energii nu este afectat de lipsa bazei de date constituita la nivel distant.

Toate datele sunt actuale, cele cititite de automat în ultimul ciclu al aplicaţiei, reactualizarea lor se face continuu. Un ciclu care pleaca de la citirea si analizarea tuturor conditiilor din aplicatie care sunt indeplinite si setarea corespunzatoare a iesilor, denumit ciclu scan, pe ramificarea sau cea mai lunga nu dureaza mai mult de un minut. Dar date se transmit cu o frecventa mai mica.

Datele se transmit printr-un canal VPN asigurat de operatorul Vodafone, la un interval de 5 minute. Alegerea frecventei de 5 minute s-a bazat pe faptul ca aceasta baza de date trebuie mentinuta ce putin pana la terminarea temei (20 sept 2010), daca nu mai mult pana in 20 noiembrie 2010, astfel incat factorii interesati IPA, UTCN, UTBv, Hidroelectrica si Hidroserv Cluj Napoca sa dispuna de o baza de date pe cel putin un an. Cuplarea intre automatul programabil si calculatorul local (de service, de urmarire) ne rezident la locatia Floresti II se face pe portul RS485 prin eliberarea acestuia de la comunicarea prin modemul SINAUT

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 13

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

MD720. Pe data acestor urmariri locale ocazionate doar de eventuale service-uri, datele instantanee nu se transmit la nivelul distant, dar energiile continua integrarea. La cuplarea modemului pe linia portului RS485 se reia automat transmisia valorilor instantanee (curenti, tensiuni) iar valorile energiilor care s-au integrat la nivelul automatului programabil e vor transmite in valori corecte, pauza de transmisie nu va distorsiona nivelul acestor marimi. 3.2. APLICATIA SOFT DE LA NIVEL DISPECER (DISTANT)

Aplicatia soft de la acest nivel este scrisa in LabWindows CVI, mediu de dezvoltare aplicatii al firmei National Instruments, si ruleaza facand uz de serviciile:

o unui server SQL pentru baza de date, o respectiv ale aplicatia PC Access (Siemens) care permite accesarea datelor de la nivelul local

(PLC SIEMENS). Aplicatia va avea propria ei baze de date, a carei structura si detalii de proiectare vor fi prezentate in paragrafele urmatoare ale prezentului raport stiintific.

Aplicatia realizata pentru monitorizarea sistemului HIDROEOL de la nivel de centru dispecer se bazeaza pe un proiect care include:

• module de tip “.uir” in care sunt stocate interfetele utilizator ale programului • module de tip “.c” in care sunt implementate secventele de program care realizeaza functiile

aplicatiei • module de tip “.h”, “header” cuprinzand definitiile variabilelor si controalelor din interfete • precum si pe un instrument furnizat de firma producatoare care permite accesarea bazei de date,

rezident in modulul SQL Toolkit, denumit “cvi_db.fp”. Prin aceasta aplicatie se urmareste vizualizarea on line a starii echipamentelor care compun pilotul

HIDROEOL si inregistrarea cu o frecventa cat mai mare a marimilor masurate din proces cu scopul evaluarii eficientei energetice a unui astfel de ansamblu si a realizarii corectarii modelelor teoretice (elaborate de partenerii lucrarii) pentru astfel de ansambluri energetice.

S-a ales sa se dezvolte aplicatia sub acest mediu de dezvoltare tinand cont de experienta si rezultatele bune obtinute de colectivul de specialisti integratori ai IPA Cluj in implementarea aplicatiilor SCADA sub acest mediu de dezvoltare. Facilitatile pe care le ofere acest mediu de dezvoltare sunt:

o controale de tip instrumentatie virtuala scalabile, incapsulate o lucrul flexibil cu timere si intreruperi o o rutina de intrerupere apelata ciclic MainCallback o rutine de intrerupere de tip timer care sunt retrigerate functie de evoluatia procesului condus o rutine de callback function care sunt activate la interventiile operatorului si proceseaza

cererile acestuia. o gestiune comoda a elementelor ecran de tip: controale de editare, controale indicatoare, liste

derulanta, butoane, comutatoare, controale de desemare, controale grafice etc., in fereastra principala sau in ferestre incuibarite

o un bun control al portului serial, USB si paralel al calculatorului

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 14

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

o lucru comod cu imprimanta predefinta a sistemului si un bun control al mouse-ului o interfatarea prin server OPC a diverselor categorii de echipamente o lucrul cu server si clienti TCP, datasocket, DDE, ActiveX o instrumente predefinite (in toolkituri independente) pentru lucru cu baze de date si Internet. In continuare se va prezenta aplicatia „Dispecer_HIDROEOL”. La baza acestei aplicatii sta

schema logica din figura 3.2 care arata modul in care sunt inlantuite functiile sistemului. Proiectul prin care a fost realizata aceasta aplicatie se prezinta in figura 7.3. In figura 3.4. este prezentata arhitectura modulelor care compun aplicatia

„Dispecer_HIDROEOL”. Interfetele utilizator cu care opereaza aplicatia precum si maniera de inlantuire a acestora prin butoane operator face obiectul figurii 3.5.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 15

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 3.2. Schema logica a aplicatiei

DA NU

NU DA

STOP

START

proceseaza comanda i t l ti

proceseaza co-manda calculator

initializari variabile

NU preluare date proces

DA

DA

NU preluare raport

NU

DA

salvare achizitie

DA NU

exista timp achizitie

exista timp raport

exista timp urmarire proces

comanda instalatie

comanda de sfarsit

exista cerere operator (altfel eveniment de

intrerupere

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 16

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 3.3. Proiectul aplicatiei „Dispecer_HIDROEOL”

a) detalierea modulelor program b) detalierea interfetelor operator

Modulele sursa care compun aplicatia sunt: 1) HEmain.c – modul distribuitor al aplicatiei in care este resident programul principal si

functiile de incarcare a tuturor interfetelor utilizator. Descrierea in pseudocod a rutinelor componente ale modului este facuta in Anexa1. In realizarea

functiilor sistemului programul de aplicatie se bazeaza pe patru categorii de mecanisme: a) o rutina de intrerupere apelata ciclic la 250 msec denumita “distribuitor_comunicatie” b) rutine de intrerupere de tip timer care sunt retrigerate functie de evoluatia procesului condus c) rutine de callback function care sunt activate la interventiile operatorului si proceseaza cererile acestuia d) lucrul cu datasocket-uri pentru preluarea datelor de la OPC.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 17

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 18

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 19

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

2. HEschema.c – modulul care cuprinde functiile de gestiune a interfetei schema tehnologica a instalatiei pilot. Comenzile puse la dispozitia operatorului in interfata sunt de :

a) alegere a setului de marimi pe care le doreste vizualizate in graficele de tip strip chart b) selectarea modului de conectare a pompelor – paralel sau serie – prin pozitionarea corecta a

electroventilelor (care in aceasta etapa nu au reactie de pozitie) c) vizualizarea ansamblului de marini citite proces respectiv calculate din acestea.

Descrierea functionala a rutinelor componente este facuta in Anexa 1. In acest modul se regasesc toate rutinele care opereaza in interfata utilizator HEschema.uir

prezentata in figura 3.6. Aceasta interfate prezinta controale dinamice a caror functionare este conforma cu starea ecchipamentelor din proces.

Figura 3.6. Interfata schema tehnologica a pilotului HIDROEOL

In zona inferiora a interfetei in lista derulanta de mesaje apar toate evenimentele survenite in ziua

curenta. Fereastra vizibila se poate manevra cu ajutorul scroll bar-ului vertical. Mesajele de eroare de

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 20

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

manevrare, avertizare sau alarmare au o cromatica astfel realizata incat sa fie mai vizibile cele mai importante.

In partea superiora a ecranului exista un led cu eticheta alarma care senmalizeaza prin culoarea rosie prezenta unei alarme. Daca operatorul efectueaza un click cu butonul stang al mouse-ului intr-o fereastra suprapusa, rezidenta in interfata Halarme.uir, i se detaliaza in clar mesajele de avarie sau preventie care au aparut, asa cum se vede in figura 3.7.

Figura 3.7. Detalierea unei avarii in aplicatia “Dispecer_HIDROEOL”

3. HEdistrib.c – modulul cuprinde functiile de gestiune comunicatilor care se realizeaza cu

automatul programabil deoarece atat contoarele electronice inteligente, cat si toate celelalte echipamentele de masurare respectiv respectiv executie sunt conectate prin intermediul acestui echipament. In ceea ce priveste comunicatia cu automatul programabil aceasta este gestinoata de calculatorul concentrator de date din centrala in rutina de intrerupere principala (MainCallBack) denumita “distribuitor_comunicatie”. Dupa lansarea unei solicitari catre automatul programabil programul de aplicatie realizeaza un anumit numar de tentative de citire a cozii canalului serial iar daca in acest numar de incercari nu se citeste nimic

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 21

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

sau ceea ce s-a citit este un raspuns incorect sau incomplet, se ababdoneaza solicitarea respectiva trecandu-se la alta. Dupa un anumit numar de solicitari abandonate resursa de comunicatie se declara nefunctionala, pentru avertizarea operatorului, dar tentativele de lucru cu aceasta resursa continua.

In aplicatie de la nivel local este controlat si un contor electronic cuplate pe canal serial. Acest contor permite masurarea valorilor tensiunilor, curentilor, frecventei, puterii active si reactive si a energiilor produse sau consumate. Cu acest contor este interfatat invertorul instalatiei.

Descrierea functionala prin pseudocod a rutinelor componente este facuta in Anexa 1.

4. HEafisare.c – modulul cuprinde rutina de tratare a functiilor de afisare. Rutina care realizeaza aceasta functie este denumita « afisare ». In acesta rutina se realizeaza distributia intre functiile de afisare specifice fiecarei categorii de interfete utilizator. Intrucat afisarea in controalele din ecran este una din opratiile cele mai consumatoare de timp procesor, rutinele de afisare se bazeaza pe comparatii intre valorile actuale si cele afisate, inscrierea pe ecran efectuandu-se doar la aparitia unor diferente.

5. HEachizitie.c – modulul cuprinde rutinele de tratare a functiilor de stocare permanenta a achizitie. La nivel acestei aplicatii se realizeaza o baza de date in format standard SQL. Aceasta baza de date contine doua categorii de date: a) tabele cuprinzand valorile analogice ale parametrilor electrici si energetici masurati masurati. Aceste tabele au structura conforma cu definitiile din fisierul de configurare « cfg_aki ». Ele au reprezentare lunara, lungimea lor find variabila deoarece nu se inscriu la epuizarea duratei de achizitie valorile stationare. Informatii mai complete privind structura acestor tabele sunt prezentate in paragraful de descrie a bazei de date generate de aplicatie.

Descrierea detaliata a rutinelor componente ale modului este prezentata in anexa 1 a prezentei documentatii. Modulul lucreaza in conjunctie modulul Hesql.c in care au fost grupate toate rutinele ce acceseaza diversele tabele ale bazei de date

6. HEaraport.c – modulul cuprinde rutinele de tratare a functiilor de stocare permanenta a

rapoartelor. La nivelul aplicatie de pe calculatorul concentrator de date se completeaza in baza de date a procesului tabele cuprinzand evenimentele survenite in proces si manevrele efectuate de operatorul dispecer. Tabelele au reprezentare lunara. Informatii mai complete privind structura acestor tabele sunt prezentate in paragraful despre baza de date a aplicatiei.

Descrierea detaliata a rutinelor componente ale modulului este prezentata in Anexa 1 a prezentei documentatii.

7. HEdialog.c – modulul cuprinde rutinele de tratare a functiilor de avertizare a personalului ce

supravegheza instalatie la aparitia unor disfunctionalitati ale inatalatiei de automatizare. Aceste semnalari sunt impartite in doua categorii :

a) avertizari – afisate in ecran de culoare portocalie (cuprins in interfata utilizator Hatmes.uir) b) erori - afisate in ecran de culoare rosie (cuprins in interfata utilizator Hermes.uir figura 7.19).

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 22

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Ambele categorii de ecrane asteapta confirmarea utilizatorului dar nu opresc derularea procesului in backgroud.

Descrierea detaliata a rutinelor componente ale modului ermes, ermes1, atmes si atmes1 este prezentata in Anexa 1 a prezentei documentatii.

8. HEgrafic.c – modulul cuprinde rutinele de tratare a functiilor de vizualizare a datelor

analogice achizitionate sub forma grafica in paralel cu extragerea din baza de date si a evenimentelor survenite intr-o perioada de timp. Interfata utilizator in care se realizeaza vizualizarea este rezidenta in modulul HEgrafic.uir vezi figura 3.8. Pot fi vizualizate simultan pe acelasi grafic maxim 4 marimi selectabile dintre cele care au fost achizitionate (configuratia achizitie este stocata in fisierul « cfg_aki » respectiv in tabela corespunzatoare a bazei de date « cfg_achizitie ».

Descrierea detaliata a rutinelor componente ale modului este prezentata in Anexa 1 a prezentei documentatii.

9. HEgrafice_comparate.c – modulul cuprinde rutinele de tratare a functiilor de vizualizare a

datelor achizitionate in baza de date in format cat mai util opreratorului.Fara a avea garantia ca este forama cea mia utila cea ce am imaginat este un grafic in paralel cu un tabel in care sunt introduse valorile punctelor din grafic. Interfata utilizator in care se realizeaza vizualizarea este rezidenta in modulul Hegrafice_comparate.uir – prezentat in figura 3.8.

Descrierea detaliata a rutinelor componente ale modului este prezentata in Anexa 1 a prezentei documentatii.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 23

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 3.8. Interfata de vizualizare evolutie grafica in paralel cu raport de evenimente

10. HEenergii.c – modulul cuprinde rutinele de tratare a functiilor de vizualizare a datelor

achizitionate in fisierele de achizitie de tip energetic. Interfata utilizator in care se realizeaza vizualizarea este rezidenta in modulul HEenergii.uir. Vizualizarea se realizeaza sub forma tabelara pentru energiile orare, respectiv zilnice sau lunare functie de baza de timp selectata.

A fost prevazuta si posibilitate calculului cumulat pentru un interval de timp selectabil de operator prin data de inceput si cea de sfarsit. Interfata amintita este vizibila in figura 3.10

Descrierea detaliata a rutinelor componente ale modului este prezentata in anexa 1 a prezentei documentatii.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 24

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 3.9. Interfata de vizualizare evolutie grafica in paralel cu valori tabelare

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 25

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 3.10. Interfata de vizualizare evolutie energiilor si randamentelor

11. HEsalocdin.c – modulul cuprinde rutinele de tratare a functiilor de configurare a intrarilor

de tip digital. Interfata utilizator in care se realizeaza configurarea este rezidenta in modulul HEsalocdin.uir si prezentata in figura 3.11. Structurile de date rezultate in urma configurarii se pastreaza si in fisierul « cfg_din » si in tabela bazei de date Hidroeol « Cfg_intrari_numerice ». Descrierea detaliata datelor rezultate se face in capitolul care cuprinde descrierea bazei de date “Hidroeol” aferenta aplicatiei. Mentionam ca in diversele aplicatii Scada dezvoltate a aparut necesitate lucrului cu intrari digitale fictive (pe care le-m denumit „intrari interne”) care reprezinta niste conditionari logice intre valorile intrarilor reale care conditioneaza evolutia mai multor puncte din proces. In acest mod se fac serioase economii de timp calculator evaluare facandu-se o singura data si doar in conditiile modificarii intrarilor fizice. Tot o intrare digitala interna poate fi utilizata pentru verificarea unor conditii de incadrare in limite a marimilor analogice (prin operatorii de tip relationali de tip <, <=, =,=>,>). Aceste intrari sunt rezervate contiguu intrarilor reale iar numarul de intrari care sunt rezervate depinde de complexitatea sistemului pentru care a fost realizata aplicatia Scada. Modul de generare a acestor intrari digitale interne va fi explicat detaliat in manualul de utilizare a aplicatiei. Figura 3.12 prezinta instanta interfetei de configurare in care sunt vizibile intrarile digitale interne.

Descrierea detaliata a rutinelor componente ale modului este prezentata in Anexa 1 a prezentei documentatii.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 26

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 3.11 – Interfata modulului de configurare a intrarilor digitale ale automatului programabil

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 27

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 3.12. Interfata modulului de configurare a intrarilor digitale de tip intern

12. HEsalocain.c – modulul cuprinde rutinele de tratare a functiilor de configurare a intrarilor

de tip analogic. Interfata utilizator in care se realizeaza configurarea este rezidenta in modulul HEsalocain.uir si este prezentata in figura 3.13. Configurarea intrarilor analogice de la automatul programabil este realizata prin tabloul de marimi din jumatatea superioara a ecranului, iar fisierul de configurare care rezulta este de tip « cfg_ain » respectiv in tabela « cfg_intrari_analogice » din baza de date. Descrierea detaliata a structurilor de date cu care se opereaza se face in Paragraful privind baza de date. Prin intrari analogice la nivel acestei aplicatii nu intelegem strict numai intrarile analogice ale automatului programabil ci toate intrarile care au reprezentare numerica primite de la aparatura de masura a procesului condus. Pentru aceste marimi se pot da in configurator constantele de transformare din format intern (CAN) in unitati ingeneresti, daca ele sunt receptionate in format intern, sau sunt luate ca atare daca aparatul de masura este mai inteligent si le livreaza in format gata convertit. In aplicatia HIDROEOL de exemplu presiunea apaei in conducta prin care este alimentat hidrogeneraturul se preia printr-o intrare analogica a automatului programabil si este livrata ca atare in format CAN calculatorului

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 28

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

distant, in timp ce parametri electrici si energetici ai punctului de iesire din invertor sunt preluati prin intermediul automatului programabil, de la un contor electronic serial, in format convertit in unitati ingineresti. Legat de marimile analogice facem mentiunea ca si ele includ o parte de marimi virtuale rezultate in urma calculelor matematice din marimile citite direct. Aceasta categorie de marimi aduce aceleasi avantaje ca si cele precizate la marimile numerice. Operatiile pe care le-am pus la dispozitia operatorului sunt: cele aritmetice, ridicare la putere, radical, logaritmi si introducerea unor constante. Numarul de operanzi este de maxim opt, dar acest lucru nu reprezinta o limitare deoarece daca sunt necesare operatii mai complexe se poate face uz de rezultate intermediare. Tot pe acest gen de rezultate intermediare am mizat si cand nu am implementat lucrul cu paranteze (care ar fi complicat prea mult analiza expresiilor definite).

Figura 3.13. Interfata modulului de configurare a intrarilor analogice

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 29

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

13. HEsalocaki.c – modulul cuprinde rutinele de tratare a functiilor de configurare a achizitiei marimilor analogice in baza de date a procesului. Interfata utilizator in care se realizeaza configurarea este rezidenta in modulul HEsalocaki.uir prezentata in figura 3.14.

Configurarea marimilor analogice care sunt achizitionate este realizata prin tabloul de marimi ecran in mai multe catogorii de fisiere depinzand de rata de achizitie care se considera a fi necesara pentru a reda cat mai elocvent evolutia marimii respective si in acelasi timp a nu supradimensiona baza de date rezultata, iar fisierul de configurare care rezulta este « cfg_aki » redat si in tabelul bazei de date « cfg_achizitie ». La nivelul acestor inregistrari se precizeaza care dintre marimile analogice citite se salveaza, in ce structura respectiv cu ce rata si in ce format. Interfata in care se realizeaza aceasta configurare este prezentata in figura 3.14.

Descrierea detaliata a structurilor de configurare care descriu marimile analogice achizitionate se face in capitolul de descriere a bazei de date.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 30

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 3.14. Interfata modulului de configurare a achizitiei analogice

14. HEsalocdou.c – modulul cuprinde rutinele de tratare a functiilor de configurare a iesirilor de tip digital. Interfata utilizator in care se realizeaza configurarea este rezidenta in modulul HEsalocdou.uir si este prezentata in figura 3.15. Structurile de date rezultate in urma configurarii se pastreaza si in fisierul « cfg_dou » si in tabela bazei de date Hidroeol « Cfg_iesiri_numerice ». Descrierea detaliata a structurilor de date rezultate din aceasta configurare se face in capitolul care cuprinde descrierea bazei de date “Hidroeol”.

Descrierea prin pseudocod rutinelor componente ale modului este prezentata in Anexa 1 a documentatiei.

15. HEsalocnum.c – modulul cuprinde rutinele de tratare a functiilor de configurare a c.

Interfata utilizator in care se realizeaza configurarea este rezidenta in modulul HEsalocdou.uir si este prezentata in figura 3.15. Structurile de date rezultate in urma configurarii se pastreaza si in fisierul « cfg_dou » si in tabela bazei de date Hidroeol « Cfg_iesiri_numerice ». Descrierea detaliata a structurilor de date rezultate din aceasta configurare se face in capitolul care cuprinde descrierea bazei de date “Hidroeol”. Mentionam ca unii dintre parametri din configuratiile intrarilor si iesirilor digitale precum si ale intrarilor analogice sunt necesari si in automatul programabil de aceea la orice modificare a acestor categorii de configuratii se realizeaza trimiterea ei catre automatul programabil. Descrierea prin pseudocod rutinelor componente ale modului este prezentata in Anexa 1 a prezentei documentatii.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 31

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 3.15. Interfata modulului de configurare a iesirilor digitale

16. HEsalocnum.c – modulul cuprinde rutinele de tratare a functiilor de configurare a

controalelor numerice din interfetele utilizator, pe de o parte, si a altor controale ecran care sunt controlate in evolutia lor pe ecran de diverse marimi digitale sau analogice din proces, pe de alta parte. Pentru controalele numerice s-a realizat automatizarea procesului de afisare acestea fiind prezentate in fiecare interfata cu caracteristicile convenite prin acest modul de configurare . In general am incercat in aplicatiile dezvoltate sa punem la dispozitia utilizatorilor ecrane cat mai intuitive in care acestia sa poata sa vada fara nici un efort starea echipamentului. In acest scop am utilizat elemente ecran dinamice care sa se miste pe ecran cand corespondentele lor reale fac acest lucru (exemplu generatoarele simbolic reprezentate in ecran se rotesc „la fel” cu cele reale, traseele electrice sau conductele de fluide se coloreaza diferit la trecerea curentului respectiv a fluidului). Am mai utilizat si ascunderea unor butoane de comanda in etapele cand ele nu sunt functionale. Interfata utilizator in care se realizeaza configurarea acestor doua categorii de controale este rezidenta in modulul HEsalocnum.uir si este prezentata in figura 3.16. Fisierul de configurare care rezulta este cel denumit « cfg_num » .

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 32

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Descrierea prin pseudocod rutinelor componente ale modului este prezentata in Anexa 1 a prezentei documentatii.

16. HEsaparole.c – modulul cuprinde rutinele de tratare a functiilor de configurare a parolelor utilizatorilor aplicatiei. In aplicatiile SCADA care trebuie sa ruleze continuu pentru a realiza o cat mai fidela inregistrare a datelor din proces trebuie realizate protectii ale resurselor sistemului si fata de persoane straine si fata de operatori care nu au competenta necesara unor actiuni de un anumit nivel. In acest scop s-au stabilit trei nivele ierarhice de parole care restrictioneaza accesul. Rutinele care permit generarea si modificarea parolelor de acces cat si cele care apoi controleaza lucrul aplicatiei facand uz de parolele actuale sunt rezidente in modulul Hesaparole.c. Interfata utilizator in care se realizeaza configurarea acestor parole este rezidenta in modulul HEsaparole.uir si este prezentata in figura 3.18. Fisierul de configurare care rezulta este cel denumit « cfg_par » .

Figura 3.16. Interfata modulului de configurare a controalelor din interfetele operator

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 33

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 3.17. Ecran suprapus interfetei de lucru ce apare la solicitarea accesului catre o zona a aplicatiei

protejata prin parola – interfata Hpames In figura 3.17 este prezentat ecranul suprapus interfetei de lucru, rezident in interfata Hpames.uir,

prin care este solicitata operatorului parola cand acesta doreste intrarea intr-o zona restrictionata a aplicatiei, in particular aici este vorba de modificarea configurarii achizitiei pentru care operatorul trebuie sa dispuna de o parola cel putin de tip service.

Figura 3.18. Interfata modulului de configurare a parolelor de acces

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 34

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

In cazul utilizarii unei parole eronate operatorului ii este semnalata eroarea in ecranul suprapus de

eroare a carui interfata se gaseste in resursa Halarme.uir vizibil in figura 3.19. Fereastra suprapusa este definita in inerfata utilizator Hermes.uir.

Figura 3.19. Ecran suprapus interfetei de lucru in care se indica o operatie utilizator eronata – interfata

Hermes

Descrierea prin pseudocod rutinelor componente ale modului este prezentata in Anexa 1 a prezentei documentatii.

17. HEsql.c – modulul cuprinde rutinele de tratare a functiilor de lucru cu baza de date

relationala. Aceste rutine sunt apelate din modulele de generare a bazei de date (Heachizitie.c, Hearaport.c, Hesalocaki.c, Hesalocain.c, Hesalocdin.c, Hesalocdou.c) respectiv in cele de raportare a masuratorilor si rezultalelor inregistrate in aceasta (Hegrafic.c, Hegrafice_comparate.c, Heenergii.c). Descrierea prin pseudocod rutinelor componente ale modului este prezentata in Anexa 1 a prezentei documentatii.

18. HEtransfOPC.c – modulul cuprinde rutinele de tratare a functiilor comunicare cu nivelul

automatului programabil. Aceste rutine sunt apelate din modulul distribuitor (Hedistrib.c) si se bazeaza pe expluatarea unor surse comune de date dintre cele doua programe de aplicatie controlate de un server OPC. Descrierea prin pseudocod rutinelor componente ale modului este prezentata in Anexa 1 a prezentei documentatii.

20. Hedate.c, Hetabele.c, Hedefcom.h – sunt module care cuprind datele comune de care fac uz

toate modulele anterior descrise. Aceste date cu prezentarea rolului lor apar in Anexa 2 a prezentei documentatii.

La parasirea aplicatie „Dispecer_HIDROEOL”, care poate fi realizata din orice ecran al acesteia

prin apasarea butonului de iesire, operatorului ii este afisat un ecran suprapus (interfata Hiesire.uir din proiect) in care i se cere inca o confirmare a acestei operatii (figura 3.20). Rutinele de tratare a iesirii din proces se gasesc in modulul Hemain.c.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 35

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 3.20. Ecran suprapus interfetei de lucru in care se solicita opratorului confirmarea optiunii de

iesire din urmarirea procesului – interfata Hermes

In aplicatie mai exista un ecran nefunctional prin prisma urmarii procesului, denumit Hesiarhite.uir, in care sunt prezentate toate elementele componente ale arhitecturii pilotului HIDROEOL si legaturile dintre ele. Acesta interfata (Hesiarhite.uir), prezentata in figura 3.20, este acesibila din orice ecran al aplicatiei prin apasarea butonului sinteza. Prin apasarea butonului stang al mose-ului (click stanga) asupra oricarui element functional (anemometru, generator eolian, invertor, generator hidro, automat programabil etc) din aceasta schema apare o lista derulanta suprapusa in care sunt prezentate principalele caracteristici ale echipamentului respectiv.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 36

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 3.21. Interfata afisata la apasarea butonului Sinteza

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 37

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

4. STRUCTURA BAZEI DE DATE „HIDROEOL” 4.1. BAZE DE DATE RELAŢIONALE

Baza de date este un ansamblu de date integrat, anume structurat şi dotat cu o descriere a acestei structuri. Descrierea poartă numele de dicţionar da date şi creează o independenţă între datele fizice şi cele logice.

Scopul principal al unei baze de date constă în stocarea datelor pentru satisfacerea uşoară a cerinţelor unei categorii largi de utilizatori. Va apărea ca un sistem de înmagazinare, regăsire, actualizare şi întreţinere a datelor.

În ceea ce priveşte aplicaţiile de baze de date accentul se pune pe operaţiile de memorare(stocare) si de regăsire(exploatare), efectuate asupra unor volume mari de date şi mai puţin asupra operaţiilor de prelucrare a acestora aşa cum este cazul în alte domenii de aplicare a informaticii(calcule tehnico-ştiinţifice, proiectare, etc.). Accentul se pune pe operaţia de regăsire a datelor; scopul unei baze de date este de a putea fi interogată. Alături de operaţiile de regăsire apar mai mult sau mai puţin frecvent operaţii de memorare, pentru culegerea datelor noi şi stocarea în bază, operaţii de ştergere pentru datele devenite inutile, cât şi operaţii de actualizare a unor noi date existente deja în baza de date.

Organizarea datelor în baze de date existente constituie o formă de centralizare a acestora, fiind un echivalent informatic al bibliotecilor tradiţionale; centralizarea datelor prezintă o serie de avantaje cum ar fi:

• Reducerea redundanţei datelor memorate: este cazul în care fiecare aplicaţie lucrează cu fişierele sale proprii şi este posibil ca aceleaşi date să apară de mai multe ori în fişiere diferite aparţinând unor aplicaţii diferite, ceea ce ar duce la o mare risipă a spaţiului de memorare; • Evitarea inconsistenţei datelor stocate: apare ca o consecinţă a faptului că o dată anume este memorată doar într-un singur loc; • Posibilitatea partajării datelor: se referă la posibilitatea utilizării în comun a datelor de către mai multe aplicaţii; • Încurajarea introducerii standardelor; • Posibilitatea aplicării restricţiilor de securitate: utilizându-se controlul centralizat al datelor se pot introduce verificări de autorizare a accesului la date; • Menţinerea integrităţii datelor: reflectă cerinţa ca baza de date să conţină date corecte.

4.2. MODELUL CONCEPTUAL AL BAZEI DE DATE „HIDROEOL”

Se cunoaşte faptul că datele prin ele însele nu constituie informaţie; este nevoie de o interpretare adecvată pentru obţinerea conţinutului de informaţie al unei colecţii de date.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 38

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Modelul de date este un instrument teoretic care permite obţinerea unei astfel de interpretări; un model de date este un instrument de abstractizare care ne ajută să identificăm conţinutul de informaţie al unei colecţii de date prin contrast cu valorile individuale ale datelor.

Un model conceptual sau schema cuprinde numele categoriilor (ex. CONFIGURĂRI DE ACHIZIŢII, DATELE ACHIZIŢIONATE), proprietăţile acestora (ex. Numele mărimii achiziţionate, Rata de achiziţionare, Valoarea achiziţionată) şi legăturile dintre categorii (ex. Valorile achiziţionate în funcţie de configurarea achiziţiilor). Orice model conceptual este o descriere a unei anumite structuri de date. Structura datelor nu furnizează o interpretare completă a semnificaţiei acestora. Semnificaţia datelor mai depinde şi de modul în care acestea sunt utilizate. De aceea e necesar să se specifice şi operaţiile permise asupra datelor. Se poate concluziona că un model de date defineşte regulile generale pentru specificarea structurii datelor şi operaţiile permise asupra acestor date.

Baza de date este o colecţie de date organizate într-o structură în conformitate cu un model conceptual. Regulile de structurare a datelor şi operaţiile permise asupra lor sunt definite în cadrul modelului de date. Orice model de date constituie un model al lumii înconjurătoare şi încearcă să cuprindă proprietăţile acesteia.

Un model conceptual cuprinde descrierea tuturor entităţilor unei baze de date, împreună cu toate legăturile existente între ele. O entitate este un conţinut de sine stătător, caracterizată prin proprietăţile sale. În cazul modelelor de date aceste proprietăţi sunt caracterizate prin atributele sale. Entităţile sunt reprezentate prin tipuri de entităţi, unde un tip de entitate este o reprezentare în cadrul unui model de date şi corespunde unei categorii de obiecte din lumea reală. Exemplu: Mulţimea de entităţi Tip_marime poate fi reprezentată prin tipul de entitate Tip marime, care corespunde tuturor mărimilor achiziţionate din proces şi este caracterizată prin atributele:

• Id_tip_marime dă codul tipului mărimilor achiziţionate; • Tip_marime dă numele tipului mărimilor achiziţionate.

În cadrul diferitelor modele de date intervin două forme de structurare a datelor. Prima formă de structurare a datelor se referă la modalitatea de asociere a atributelor pentru a

forma descrierile tipurilor de entităţi cărora le aparţin. Între mulţimile de entităţi dintr-o bază de date există o mulţime de legături (relaţii). Aceste legături trebuie să fie descrise în modelul conceptual al bazei de date.

A doua formă de structurare a datelor se referă la modul în care sunt reprezentate legăturile existente între diferitele mulţimi de entităţi ale bazei de date. Modele de date diferă între ele tocmai prin modul în care se poate realiza reprezentarea legăturilor dintre mulţimi de entităţi.

În oricare dintre mulţimile de entităţi M1 şi M2 pot exista trei tipuri de legături (relaţii): • relaţie 1:1, când unei entităţi din M1 îi corespunde o singură entitate din M2 şi reciproc (relaţie de tip soţ-soţie); • relaţie 1:N, când unei entităţi din M1 îi corespund una sau mai multe entităţi din M2, dar fiecărei entităţi din M2 îi corespunde o singură entitate din M1 (relaţie de tip tată-fiu); • relaţie M:N, când unei entităţi din M1 îi corespund una sau mai multe entităţi din M2 şi reciproc (relaţie de tip prieten-prieten).

Exemple:

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 39

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Un exemplu de legătură M:N este următorul: între entităţile Cfg_achizitie şi Cfg_intrari_analogice avem o astfel de relaţie, deoarece o configurare de achiziţie poate să corespundă la mai multe configurări de intrări analogice, iar o configurare de intrări analogice poate să aibă la rândul ei mai multe configurări de achiziţie. Un exemplu de legătură 1:N este următorul: între entităţile Cfg_intrari_numerice şi Opc avem o astfel de relaţie, deoarece pentru un URL al serverului de OPC pot fi mai multe configurări de intrări numerice, iar o configurare de intrări numerice aparţine unui singur URL al serverului de OPC.

Având în vedere informaţiile care trebuie stocate în baza de date, s-au obţinut următoarele tipuri de entităţi care alcătuiesc modelul conceptual:

♦ Locatia – tip de entitate care descrie locaţiile unde sunt amplasate staţiile hidro-eoliene; ♦ Opc – tip de entitate care corespunde URL-urilor serverului OPC; ♦ Grupa_categoria_din – tip de entitate care corespunde grupelor în care sunt împărţite intrările

numerice; ♦ Grupa_categoria_dou – tip de entitate care corespunde grupelor în care sunt împărţite ieşirile

numerice; ♦ Tip_marime - tip de entitate care corespunde tipului de mărimi analogice care sunt achiziţionate; ♦ Cfg_intrari_numerice – tip de entitate care corespunde configurărilor intrărilor numerice; ♦ Cfg_iesiri_numerice – tip de entitate care corespunde configurărilor ieşirilor numerice; ♦ Cfg_intrari_analogice – tip de entitate care corespunde configurărilor intrărilor analogice; ♦ Cfg_achizitie – tip de entitate care corespunde configurărilor achiziţiilor; ♦ aki01_a1, aki01_a2, ..., aki12_a1, aki12_a2 – tip de entitate care corespunde valorilor

mărimilor achiziţionate. Există câte două astfel de entităţi pentru fiecare rată de achiziţionare cuprinzând valorile achiziţionate într-o lună. Pentru a avea valorile achiziţionate pe un an întreg sunt necesare 24 de astfel de entităţi.

♦ rap01, rap02, rap03, ..., rap12 – tip de entitate care corespunde rapoartelor de evenimente. Există câte 12 astfel de entităţi pentru cuprinzând valorile achiziţionate în cele 12 luni ale unui an de către automatul programabil. Analizând proprietăţile care caracterizează tipurile de entităţi enumerate mai sus se pot defini

atributele fiecărui tip de entitate. Tabelul 8.1. prezintă atributele fiecărui tip de entitate.

Tabelul 8.1. - Atributele tipurilor de entităţi considerate Tip entitate Atribute Locatia • ID_locatia - codul de identificare al locaţiei;

• Locatia - numele locaţiei. Opc • ID_opc - codul de identificare al URL-ului serverului OPC;

• URLopc – numele URL-ului serverului OPC. Grupa_categoria_din • ID_grupa - codul de identificare al grupei intrărilor numerice;

• Grupa_categoria_din – numele grupei intrărilor numerice.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 40

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Grupa_categoria_dou • ID_grupa - codul de identificare al grupei ieşirilor numerice; • Grupa_categoria_din – numele grupei ieşirilor numerice.

Tip_marime • ID_tip_marime - codul de identificare al tipului de mărime analogică achiziţionată;

• Tip_marime – numele tipului de mărime analogică achiziţionată.

Cfg_intrari_numerice • ID_int_num, ID_cfg_din, ID_locatia - codul de identificare al configuraţiei intrărilor numerice;

• Automat – intrarea în automatul programabil; • Sir_cleme – sirul de cleme asociat intrării numerice; • Numele – numele sub care apare în raportul evenimentelor intrarea

numerică; • Logica – logica semnalului de intrare numerică; • Tip_semnal – tipul semnalului asociat intrării numerice (unar sau

binar); • Functionalitatea – indică dacă semnalul este sau nu funcţional; • Intarz_x100ms – întârzierea semnalului de intrare; • Data – data la care s-a modificat configurarea.

Cfg_iesiri_numerice • ID_ies_num, ID_cfg_ies, ID_locatia - codul de identificare al configuraţiei ieşirilor numerice;

• Automat – ieşirea din automatul programabil; • Sir_cleme – sirul de cleme asociat ieşirii numerice; • Numele – numele sub care apare în raportul evenimentelor ieşirea

numerică; • Logica – logica semnalului de ieşire numerică; • Tip_semnal – tipul semnalului asociat ieşirii numerice (unar sau

binar); • Functionalitatea – indică dacă semnalul este sau nu funcţional; • Durata_x10ms – durata menţinerii ieşirii numerice; • Ies_cond – ieşirea numeică este condiţionată de alt semnal; • Data – data la care s-a modificat configurarea.

Cfg_intrari_analogice • ID_int_ana, ID_cfg_ain, ID_locatia - codul de identificare al configuraţiei intrărilor analogice;

• Automat – intrarea în automatul programabil; • Nume – numele sub care apare la reprezentarea grafică mărimea

analogică achiziţionată; • Functionalitatea – indică dacă semnalul este sau nu funcţional; • Rezolutia – semnalului asociat intrării analogice;

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 41

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

• Deplasament – al semnalului asociat intrării analogice; • Offset – al semnalului asociat intrării analogice; • Lim_inf_atent – valoarea limitei inferioare la atenţionare a

semnalului de intrare analogică; • Lim_sup_atent – valoarea limitei superioare la atenţionare a

semnalului de intrare analogică; • Lim_inf_alarm – valoarea limitei inferioare la alarmare a semnalului

de intrare analogică; • Lim_sup_alarm – valoarea limitei superioare la alarmare a

semnalului de intrare analogică; • Data – data la care s-a modificat configurarea.

Cfg_achizitie • ID_achizitie, ID_cfg_achizitie, ID_locatia - codul de identificare al configuraţiei achiziţiei analogice;

• Nume – numele sub care apare în raportul evenimentelor intrarea analogică;

• Histerezis – al valorii mărimii achiziţionate; • Lim_inf – valoarea limitei inferioare a valorii mărimii achiziţionate; • Lim_sup – valoarea limitei superioare a valorii mărimii

achiziţionate; • Rata – rata de achiziţonare a mărimilor; • Data – data la care s-a modificat configurarea.

aki01_a1 • id_aki01_a1 - codul de identificare al valorilor achiziţionate cu rata de achiziţionare 1 în luna întâi a anului;

• Data_achizitionare – a valorilor mărimilor achiziţionate; • Valoare – a mărimilor achiziţionate; • Status – indică dacă valoarea a fost transmisă sau nu spre alte baze

de date. ........................................

.............................................................................................................

aki12_a2 • id_aki12_a2 - codul de identificare al valorilor achiziţionate cu rata

de achiziţionare 2 în ultima lună a anului; • Data_achizitionare – a valorilor mărimilor achiziţionate; • Valoare – a mărimilor achiziţionate; • Status – indică dacă valoarea a fost transmisă sau nu spre alte baze

de date. rap01 • id_rapoarte - codul de identificare al rapoartelor de evenimente

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 42

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

achiziţionate în prima luna a anului; • Cod – al evenimentului produs; • Codel – cod al semnalului care a produs evenimentul; • Data – de apariţie a evenimentelor.

........................................

.............................................................................................................

rap12 • id_rapoarte - codul de identificare al rapoartelor de evenimente achiziţionate în ultima luna a anului;

• Cod – al evenimentului produs; • Codel – cod al semnalului care a produs evenimentul; • Data – de apariţie a evenimentelor.

Între entităţile descrise anterior există următoarele legături de tipul 1:N şi M:N aşa cum se pot

vedea în figura 8.1. care prezintă diagrama Bachman a modelului conceptual.

Figura 4.1. – Diagrama simbolică Bachman a bazei de date „Hidroeol”

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 43

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Diagrama modelului conceptual de date, elaborată pe baza tipurilor de entităţi descrise mai sus şi a legăturilor dintre aceste entităţi, care cuprinde şi atributele caracteristice fiecărei entităţi este prezentată în figura 4.2.

Figura 4.2. – Modelul conceptual al bazei de date „Hidroeol”

4.3. MODELUL DE DATE RELAŢIONAL AL BAZEI DE DATE „HIDROEOL”

Modelul de date relaţional stă la baza majorităţii SGBD-urilor comerciale care există şi apar la ora actuală. Popularitatea crescândă a modelului relaţional şi răspândirea tot mai largă a bazelor de date relaţionale se datorează, în mare parte, faptului că acestea dispun de limbaje pentru manipularea datelor de nivel înalt, simple, dar foarte puternice. Caracteristica principală a acestor limbaje de nivel înalt, numite generic şi limbaje relaţionale, este capacitatea lor de a permite definirea de relaţii noi pe baza unor relaţii existente. Pornind de la aceste limbaje în cadrul SGBD-urilor relaţionale au fost dezvoltate interfeţe flexibile şi prietenoase care descriu calea spre exploatarea directă a bazelor de date pentru categorii mult mai largi de utilizatori decât în cazul sistemelor bazate pe modele de date ierarhic sau reţea.

Un model de date foloseşte o singură formă de structurare a datelor: tipurile de înregistrări, pentru reprezentarea tipurilor de entităţi.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 44

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Intensiunea unei baze de date relaţionale este specificată printr-o schemă relaţională, compusă din una sau mai multe relaţii. Schema relaţională este modelul conceptual al bazei de date relaţionale.

O schemă de relaţie este compusă din numele relaţiei şi este urmat de lista atributelor acesteia. Un domeniu reprezintă ansamblul valorilor admisibile pentru o componentă a unei relaţii. În cadrul modelului relaţional conceptul de domeniu este important pentru realizarea legăturilor semantice dintre relaţii.

Un atribut este un domeniu cu nume sau mai precis o utilizare sub un nume oarecare a unui domeniu; din acelaşi domeniu pot fi derivate mai multe atribute având nume diferite.

Numim cheie a unei relaţii R un subset de K al atributelor relaţiei R care satisface următoarele două proprietăţi:

1. Identificare unică: fiecare tuplă a relaţiei R este identificată în mod unic de valorile atributelor care compun cheia K. 2. Neredondanţă: subset K este minimal, în sensul că eliminarea oricărui atribut din K duce la pierderea proprietăţii 1. Proprietatea 1. duce la definirea noţiunii de cheie, iar împreună cu caracteristica dată de proprietatea 2. apare sub conceptul de cheie neredondantă.

Cu siguranţă că în orice relaţie poate fi găsită o cheie, găsirea unei chei se reduce la stabilirea setului de minimal de atribute care satisface proprietatea 1., de identificare unică.

Orice atribut al unei relaţii R care face parte din cel puţin o cheie se numeşte atribut prim; toate celelalte atribute ale relaţiei R fiind neprime.

În cadrul modelului relaţional, pentru reprezentarea legăturilor dintre tipuri de entităţi, se folosesc

două tehnici: 1. Propagarea cheilor dintr-o schemă de relaţie în alta. Tehnica se poate folosi pentru reprezentarea legăturilor de tip funcţional 1:1 şi 1:N. Cheia primară dintr-un tip de entitate devine cheie străină în celălalt tip de entitate. 2. Crearea unei scheme de relaţie separate prin care se reprezintă legătura dintre două tipuri de entităţi. Tehnica se poate folosi pentru a reprezenta orice tip de legătură inclusiv cele M:N, eliminând limitările metodei anterioare. Această tehnică nu este utilizată in reprezentarea legăturilor dintre entităţile schemei relaţionale descrise mai sus.

Pe baza tipurilor de entităţi cu atributele lor specifice, definite anterior s-au putut stabili următoarele scheme de relaţie pentru reprezentarea schemei relaţionale a bazei de date prezentată în figura 4.3.:

Locatia (ID_locatia*, Locatia) Instalatia (ID_instalatia*, Instalatia) Grupa_categoria_din(ID_grupa*, Grupa_categoria_din) Grupa_categoria_dou(ID_grupa*, Grupa_categoria_dou) Tip_marime (ID_tip_marime*, Tip_marime) Cfg_intrari_numerice(ID_int_num*, ID_cfg_din*, ID_locatia*, Automat, Sir_cleme, Numele,

Logica, Tip_semnal, Functionatitatea, Intarz_x100ms, Data, ID_opc, ID_grupa)

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 45

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Cfg_iesiri_numerice(ID_ies_num*, ID_cfg_ies*, ID_locatia*, Automat, Sir_cleme, Numele, Logica, Tip_semnal, Functionatitatea, Durata_x10ms, Ies_cond, Data, ID_opc, ID_grupa)

Cfg_intrari_analogice(ID_int_ana*, ID_cfg_ain*, ID_locatia*, Automat, Nume, Functionatitatea, Rezolutia, Deplasament, Offset, Lim_inf_atent, Lim_sup_atent, Lim_inf_alarm, Lim_sup_alarm, Data, ID_opc)

Cfg_achizitie(ID_achizitie*, ID_cfg_achizitie*, ID_locatia*, Nume, Histerezis, Lim_inf, Lim_sup, Rata, Data, ID_tip_marime)

Cfg_ainaki(ID *, ID_int_ana, ID_cfg_ain, ID_locatia, ID_achizitie, ID_cfg_achizitie) aki01_a1(id_aki01_a1*, Valoare, Data_achizitionare, Status, ID_achizitie, ID_cfg_achizitie,

ID_locatia) aki01_a2(id_aki01_a2*, Valoare, Data_achizitionare, Status, ID_achizitie, ID_cfg_achizitie,

ID_locatia) ..................................................................................................................................................... aki12_a1(id_aki12_a1*, Valoare, Data_achizitionare, Status, ID_achizitie, ID_cfg_achizitie,

ID_locatia) aki12_a2(id_aki12_a2*, Valoare, Data_achizitionare, Status, ID_achizitie, ID_cfg_achizitie,

ID_locatia) rap01(id_rapoarte*, Cod, Codel, Data, ID_locatia) ..................................................................................................................................................... rap12(id_rapoarte*, Cod, Codel, Data, ID_locatia)

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 46

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Figura 4.3. - Schema relaţională a bazei de date „Hidroeol”

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 47

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

4.4. IMPLEMENTAREA BAZEI DE DATE „HIDROEOL”

Pentru implementarea bazelor de date proiectate mai sus s-a folosit mediul SQL Server 2005 sub sistemul de operare Windows XP Professional.

Mediul SQL Server 2005 oferă diferite opţiuni privind stocarea datelor, având capacitatea de a stoca şi manipula acelaşi volum de date ca un sistem mainframe sau ca un minicalculator. SQL Server este o bază de date care a evoluat continuu de la apariţia sa. A fost creată pe baza modelului relaţional, matur şi puternic, acesta fiind şi astăzi modelul preponderent folosit la stocarea şi regăsirea datelor. Un astfel de server de baze de date este accesat de clienţi de pe calculatoare distincte şi nu prin intermediul unor dispozitive de intrare/ieşire, aşa cum sunt terminalele.

În cadrul unei infrastructuri client/server a bazei de date, serverul răspunde şi de conexiunile cu sistemele client. Aceasta se întâmplă printr-o integrare cu elementele de comunicaţie şi prin colaborare strânsă cu sistemul de operare gazdă. SQL Server adaugă peste componentele de reţea componente de tip serviciu, exemple în acest sens fiind OLE-DB sau ODBC. Aceste componente permit interconectarea diferitelor aplicaţii client fără a necesita modificări ale serverului de baze de date sau ale altor aplicaţii client existente. De asemenea mai sunt utilizate un dialect al limbajului structurat de interogare (SQL) şi unele aplicaţii care prezintă o interfaţă grafică cu utilizatorul şi care permit stocarea, manipularea şi administrarea bazei de date. Proiectarea bazelor de date, a tabelelor şi a relaţiilor dintre ele nu a fost niciodată mai simplă.

Se va continua în acest subcapitol cu descrierea schemelor de relaţii şi implementarea lor sub forma tabelelor. Se vor prezenta cheile primare şi străine pentru relaţiile definite, justificându-se acolo unde este necesar, ce a determinat alegerea acestora. Anexa A cuprinde codul sursă (scriptul SQL) prin care au fost create tabelele şi legăturile dintre ele din baza de date „Hidroeol”.

1. Schema de relaţie Locatia este implementată sub forma unei tabele cu numele Locatia care are

următoarele coloane: ID_locatia tinyint 1 Locatia varchar 30 Coloana ID_locatia este cheia primară care identifică unic fiecare înregistrare a tabelei şi care este declarată Identity setat la 1 (indexul se va autoincrementa cu o unitate pentru fiecare înregistrare adăugată). Coloana Locatia specifică numele locaţiei.

2. Schema de relaţie Opc este implementată sub forma unei tabele cu numele Opc care are următoarele coloane:

ID_opc tinyint 1 URLopc varchar 50

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 48

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Coloana ID_opc este cheia primară care identifică unic fiecare înregistrare a tabelei şi care este declarată Identity setat la 1 (indexul se va autoincrementa cu o unitate pentru fiecare înregistrare adăugată). Coloana URLopc specifică numele URL-ului serverului OPC.

3. Schema de relaţie Grupa_categoria_din este implementată sub forma unei tabele cu numele Grupa_categoria_din care are următoarele coloane:

ID_grupa tinyint 1 Grupa_categoria_din varchar 15 Coloana ID_grupa este cheia primară care identifică unic fiecare înregistrare a tabelei şi care este declarată Identity setat la 1 (indexul se va autoincrementa cu o unitate pentru fiecare înregistrare adăugată). Coloana Grupa_categoria_din specifică numele grupei/categoriei din care fac parte semnalele de intrare numerice.

4. Schema de relaţie Grupa_categoria_dou este implementată sub forma unei tabele cu numele Grupa_categoria_din care are următoarele coloane:

ID_grupa tinyint 1 Grupa_categoria_dou varchar 20 Coloana ID_grupa este cheia primară care identifică unic fiecare înregistrare a tabelei şi care este declarată Identity setat la 1 (indexul se va autoincrementa cu o unitate pentru fiecare înregistrare adăugată). Coloana Grupa_categoria_dou specifică numele grupei/categoriei din care fac parte semnalele de ieşire numerice.

5. Schema de relaţie Tip_marime este implementată sub forma unei tabele cu numele Tip_marime care are următoarele coloane:

ID_tip_marime tinyint 1 Tip_marime varchar 50 Coloana ID_tip_marime este cheia primară care identifică unic fiecare înregistrare a tabelei şi care este declarată Identity setat la 1 (indexul se va autoincrementa cu o unitate pentru fiecare înregistrare adăugată). Coloana Tip_marime specifică tipul de mărime analogică achiziţionată.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 49

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

6. Schema de relaţie Cfg_intrari_numerice este implementată sub forma unei tabele cu numele Cfg_intrari_numerice care are următoarele coloane:

ID_int_num smallint 2 ID_cfg_din tinyint 1 ID_locatia tinyint 1 Automat varchar 11 Sir_cleme varchar 6 Numele varchar 53 ID_opc tinyint 1 ID_grupa tinyint 1

Logica tinyint 1 Tip_semnal tinyint 1 Functionalitatea tinyint 1 Intarz_x100ms tinyint 1 Data datetime 8 Coloanele ID_int_num, ID_cfg_din, ID_locatia formează cheia primară care identifică unic fiecare înregistrare a tabelei. Cheia primară conţine numărul intrării numerice, numărul configurării semnalelor de intrare numerice şi locaţia căreia îi aparţine configurarea. Coloana ID_locatia este şi cheie străină şi reprezintă cheia primară din tabela Locatia, care va fi folosită pentru clasificarea şi gruparea locaţiilor. Coloana ID_opc este cheie străină şi reprezintă cheia primară din tabela Opc, care va fi folosită pentru clasificarea şi gruparea semnalelor de intrare numerice dintr-o anumită locaţie a serverului OPC. Coloana ID_grupa este cheie străină şi reprezintă cheia primară din tabela Grupa_categoria_din, care va fi folosită pentru clasificarea şi gruparea semnalelor de intrare numerice dintr-o anumită grupă de semnale. Coloanele Automat, Sir_cleme, Numele, Logica, Functionalitatea, Tip_semnal, Intarz_x100ms sunt specifice fiecărui semnal de intrare numerică din configurare, caracterizându-l. Coloana Data specifică data la care s-a făcut salvarea configurării intrărilor numerice.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 50

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

7. Schema de relaţie Cfg_iesiri_numerice este implementată sub forma unei tabele cu numele Cfg_iesiri_numerice care are următoarele coloane:

ID_ies_num smallint 1 ID_cfg_ies tinyint 1 ID_locatia tinyint 1 Automat varchar 11 Sir_cleme varchar 6 Numele varchar 53

ID_opc tinyint 1 ID_grupa tinyint 1 Logica tinyint 1 Tip_semnal tinyint 1 Functionalitatea tinyint 1 Durata_x10ms tinyint 1 Ies_cond smallint 2 Data datetime 8 Coloanele ID_ies_num, ID_cfg_ies, ID_locatia formează cheia primară care identifică unic fiecare înregistrare a tabelei. Cheia primară conţine numărul ieşirii numerice, numărul configurării semnalelor de ieşire numerice şi locaţia căreia îi aparţine configurarea. Coloana ID_locatia este şi cheie străină şi reprezintă cheia primară din tabela Locatia, care va fi folosită pentru clasificarea şi gruparea locaţiilor. Coloana ID_opc este cheie străină şi reprezintă cheia primară din tabela Opc, care va fi folosită pentru clasificarea şi gruparea semnalelor de ieşire numerice dintr-o anumită locaţie a serverului OPC. Coloana ID_grupa este cheie străină şi reprezintă cheia primară din tabela Grupa_categoria_dou, care va fi folosită pentru clasificarea şi gruparea semnalelor de ieşire numerice dintr-o anumită grupă de semnale. Coloanele Automat, Sir_cleme, Numele, Logica, Functionalitatea, Tip_semnal, Durata_x10ms,

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 51

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Ies_cond sunt specifice fiecărui semnal de ieşire numerică din configurare, caracterizându-l. Coloana Data specifică data la care s-a făcut salvarea configurării ieşirilor numerice.

8. Schema de relaţie Cfg_intrari_analogice este implementată sub forma unei tabele cu numele

Cfg_intrari_analogice care are următoarele coloane: ID_int_ana int 4 ID_cfg_ana tinyint 1 ID_locatia tinyint 1 Automat varchar 9 Nume varchar 40

ID_opc tinyint 1 Functionalitatea tinyint 1 Rezolutia real 4 Deplasament real 4 Offset real 4 Lim_inf_atent real 4

Lim_sup_atent real 4 Lim_inf_alarm real 4 Lim_sup_alarm real 4

Data datetime 8 Coloanele ID_int_ana, ID_cfg_ana, ID_locatia formează cheia primară care identifică unic fiecare înregistrare a tabelei. Cheia primară conţine numărul intrării analogice, numărul configurării semnalelor de intrare analogică şi locaţia căreia îi aparţine configurarea. Coloana ID_locatia este şi cheie străină şi reprezintă cheia primară din tabela Locatia, care va fi folosită pentru clasificarea şi gruparea locaţiilor. Coloana ID_opc este cheie străină şi reprezintă cheia primară din tabela Opc, care va fi folosită pentru clasificarea şi gruparea semnalelor de ieşire numerice dintr-o anumită locaţie a serverului OPC. Coloanele

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 52

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Automat, Nume, Functionalitatea, Rezolutia, Deplasament, Offset, Lim_inf_atent, Lim_sup_atent, Lim_inf_alarm, Lim_sup_alarm sunt specifice fiecărui semnal de intrare analogică din configurare, caracterizându-l. Coloana Data specifică data la care s-a făcut salvarea configurării intrărilor analogice.

9. Schema de relaţie Cfg_achizitie este implementată sub forma unei tabele cu numele

Cfg_achizitie care are următoarele coloane: ID_achizitie tinyint 1 ID_cfg_achizitie tinyint 1 ID_locatia tinyint 1 Nume varchar 41 ID_tip_marime tinyint 1

Histerezis real 4 Lim_inf real 4

Lim_sup real 4 Rata tinyint 1 Data datetime 8 Coloanele ID_achizitie, ID_cfg_achizitie, ID_locatia formează cheia primară care identifică unic fiecare înregistrare a tabelei. Cheia primară conţine numărul mărimii analogice achiziţionate, numărul configurării acestor mărimi şi locaţia căreia îi aparţine configurarea. Coloana ID_locatia este şi cheie străină şi reprezintă cheia primară din tabela Locatia, care va fi folosită pentru clasificarea şi gruparea locaţiilor. Coloana ID_tip_marime este cheie străină şi reprezintă cheia primară din tabela Tip_marime, care va fi folosită pentru clasificarea şi gruparea mărimilor analogice achiziţionate după un anumit tip de mărime. Coloanele Nume, Histerezis, Lim_inf, Lim_sup, Rata sunt specifice fiecărei mărimi analogice

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 53

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

din configurare, caracterizându-l. Coloana Data specifică data la care s-a făcut salvarea configurării mărimilor analogice.

10. Schema de relaţie Cfg_ainaki este implementată sub forma unei tabele cu numele Cfg_ainaki

care are următoarele coloane: ID int 4

ID_int_ana int 4 ID_cfg_ana tinyint 1 ID_locatia tinyint 1 ID_achizitie tinyint 1 ID_cfg_achizitie tinyint 1

Coloana ID formează cheia primară care identifică unic fiecare înregistrare a tabelei şi care este declarată Identity setat la 1 (indexul se va autoincrementa cu o unitate pentru fiecare înregistrare adăugată). Coloanele acestei tabele sunt formate din cheile străine ale tabelelor Cfg_intrari_numerice şi Cfg_achizitie: ID_int_ana, ID_cfg_ain, ID_locatia, ID_achizitie, ID_cfg_achizitie. Tabela Cfg_ainaki este o tabela intermediară care leagă intrările analogice de achiziţii.

11. Schema de relaţie aki01_a1 este implementată sub forma unei tabele cu numele aki01_a1 care are următoarele coloane:

id_aki01_a1 int 4 ID_achizitie tinyint 1

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 54

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

ID_cfg_achizitie tinyint 1 ID_locatia tinyint 1 Data_achizitionare datetime 8 Valoare float 8 Status tinyint 1

Coloana id_aki01_a1 formează cheia primară care identifică unic fiecare înregistrare a tabelei şi care este declarată Identity setat la 1 (indexul se va autoincrementa cu o unitate pentru fiecare înregistrare adăugată). Coloanele Valoare, Data_achizitionare, Status conţin valoarea mărimii achiziţionate, data de achiziţionare a valorii, informaţii despre transmiterea valorii în alte locaţii. Coloanele ID_achizitie, ID_cfg_achizitie, ID_locatia alcătuiesc cheia străină şi reprezintă cheia primară din tabela Cfg_achizitie, făcând legătura cu denumirea mărimii achiziţionate.

12. Schema de relaţie rap01 este implementată sub forma unei tabele cu numele rap01 care are următoarele coloane:

id_rapoarte int 4 ID_locatia tinyint 1 Cod int 4 Codel int 4 Data datetime 8

Coloana id_rapoarte formează cheia primară care identifică unic fiecare înregistrare a tabelei şi care este declarată Identity setat la 1 (indexul se va autoincrementa cu o unitate pentru fiecare înregistrare adăugată). Coloanele Cod, Codel, Data conţin codul de raport apărut, codul elementului care a produs evenimentul şi data de producere a evenimentului. Coloana ID_locatia este cheie străină şi reprezintă cheia primară din tabela Locatia, făcând legătura cu locaţia unde a apărut evenimentul.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 55

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Rezultatul implementării bazei de date este prezentat în figura 4.4. sub forma diagramei unei baze de date relaţionale.

După crearea tabelelor si relaţiilor dintre ele pentru baza de date „Hidroeol” trebuie setate

următoarele proprietăţi ale acesteia: să aibă pusă pe True opţiunea Auto Shrink şi creşterea lungimilor fişierelor .mdf şi .ldf să nu fie restricţionată şi să se facă cu câte un MB, întrucât procesul de achiziţionare a mărimilor electrice şi energetice este unul rapid.

Pentru ca produsul program realizat sub mediul de dezvoltate LabWindows CVI 7.0, Hidroeol, să se poată conecta la baza de date „Hidroeol” trebuie realizată o conexiune prin ODBC. Pentru această se foloseşte opţiunea Data Souces (ODBC) din Administrative Tools, Control Panel. Paşii care trebuie urmaţi sunt următorii: selectarea tipului de conexiune dorit (DNS), alegerea SGBD-ului pe care este stocată baza de date (SQL Server) şi alegerea bazei de date la care se face conexiunea (Hidroeol). Realizarea acestei conexiuni va fi descrisă pe larg în cadrul fazei următoare a proiectului, fază în care va fi prezentat şi modul de întreţinere şi administrare a bazei de date „Hidroeol”.

Figura 4.4. – Fragment al diagramei SQL a bazei de date „Hidroeol”

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 56

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

5. Modificari hard la nivel de dulap de automatizare pentru cazul Floresti II

In baza parteneriatelor vechi cu Hidroelectrica si Hidroserv Cluj Napoca si a intereselor acestora pentru energiile regerabile la centrala hidroelectrica Floreşti II s-a instalat un sistem hidrid (eolian, solar cu conservare de energie si pompare de apa in lacul superior) din fondurile electrica. IPA a adaptat hard si fost sistemul SCADA astfel ca strângerea datelor sa poată sa înceapă imediat, etapa sine qua non finalizării temei. Astfel după aceste adaptări sistemul a fost pus in funcţiune la data de 1 oct 2009, după care au urmat o serie de ajustări fine, inclusiv refacerea totala a sistemului de culegere a datelor eoliene. Ultimele modificări care au avut impact asupra bazei de date din ansamblu Hidroeol s-au finalizat înainte de 20 noiembrie ac orele 16:00. De la acesta data si ora sistemul urmareste, aduna date privind energiile produse si consumate in ansamblu si încheie bilanţuri energetice pe ore, zile si luni.

Acest sistem este compus: dintr-o turbina eoliana de 1 Kw, exact de aceiaşi mărime si produs de aceiaşi firma cu turbina eoliana de la UTCN finanţata prin proiectul Hidroeol, din 2 panouri solare a 240W (nominal) fiecare, care este noutatea acestui sistem, 4 baterii de 12V de 150Ah, invertorul de 4Kw (fata de invertorul Victorin de 3,5Kw de la UTCN), sistemul SCADA local si distant (comunicare prin GSM/GPRS), anemometru si consumatorul (momentan este automatizarea locala si un bec de 100W, ulterior va fi adusa o pompa de imersie monofazata).

Alte modificări hard legate de senzorii de curenţi continuu si de formatorul de impulsuri aferent

anemometrului, sunt detalii tehnice minore, dar sunt prezentate in anexa X., din considerente de acribie. Modificările au fost impuse de testele făcute in august si septembrie ac.

In final a rezultat, ca urmare a acestor desfasurari a evenimentelor, de fapt doua aplicatii la nivel

de dispecer: i) una in WINCC (Siemens) pentru sistemul de la Hidroelectrica Floresti II si ii) alta scrisa in LabView (National Instruments) pentru sistemul dezvoltat de UTCN, dar care n-a participat la aceasta etapa suplimentara/intermediara din motive financiare. Acest prim sistem SCADA al IPA, se va pune in functiune in faza urmatoare, cand partenerul UTCN va finaliza montarea turbinei eoliene pe cladirea facultatii de Inginerie electrica. In figura de mai jos este schiţat sistemul de la CHE Floresti II, împreuna cu punctele de măsura, si valorile lor instantanee la data prelevării pozei.

Acest fapt, mularea pe sistemul de la Floresti II, cat si unele modificari de senzori achizitionati ne a condes la reproiectarea unor repere unicat, de adaptare, proiecte tot de noi in cadrul fazei III. Toate aceste modificari incepand cu placile de circuit imprimat, cu desenul de echipare si lista de piese sunt prezentate in detaliu in anexa 3.

Circuit de senzori de curent si tensiuni continue este echipat cu senzorii LEM LA-55P pentru masurarea de curentii de cc – 200Hz, respectiv, LEM LV-25P pentru masurarea de tensiuni in intervalul 10-250V incepand cu cc-200Hz. De fapt acesti traductori Hall reduc curentul din primar de 1000 de ori, respectiv transforma tensiunea primara (cea care dorim sa o

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 57

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

masuram) intr-un curent de masura care debitat pe o rezistenta de 190ohm. Senzorii LEM folositi necesita doua surse de alimentare de +/- 12Vcc.

Circuit de prezenta avand rolul de adaptare/interfatare cu controlerul hibrid (parte din furnitura de regenerabile) pentru i) a semnaliza echipamentului SCADA prezenta resurselor solare, resppectiv eoliene (prin tensiunile generate), respectiv ii) a masura nivelul tensiunii pe baterie.

Pentru ambele circuite am proiect un singur circuit imprimat (simplu strat) care se echipeaza diferit in cazul celor doua circuite prezentate. Toate datele privind circuitul electronic, lista de piese, cablajul propriuzis sunt prezentate detailiat in anexa 3 a acestui raport.

In cazul sistemului SCADA Floresti CHE II am folosit 3 „Circuite de senzori de curent si tensiuni continue” pentru curentii de la i) panourile solare, ii)controlerul hibrid si iii) alimentarea cc a invertorului respectiv a dulapului de automatizare si un „Circuit de prezenta” pentru masurarea tensiunii pe baterie. Aceasta optiune a noastra de a construi un circuit de masura pur rezistiv si de a nu recurge la un al 4 –lea Circuit de senzori de curent si tensiuni continue echipat doar cu senzorul LEM LV-25P, pentru masurarea tensiunii bateriei are o justificare buna: nu avem nevoie de sursele suplimentare de +/- 12Vcc. Chiar daca suntem obligatii sa avem in echipament aceasta sursa suplimentara, masurarea tensiunii pe baterie care reprezinta un control fundamental al ansamblului ramane functionala si in cazul in care sursele de +/-12Vcc au probleme. Lucru dovedit cu prisosinta in perioada de ajustare si punere in functiune a sistemului SCADA.

Formator de implusuri din NRG#40 (anemometru) Anemometru NRG#40 este calibrat si are urmatoarea lege: V(m/s) = 0,759* f(hz) + 0,35.

Prin urmare noi trebuie sa masuram frecventa implusurilor generate de anemometru sub impulsul vantului. Dar aceste impulsuri generate sunt impulsuri generate de miscarea magnetului rotorului si sunt sub forma unor impulsuri analogice pozitive fara fronturi, greu de numarat. Motiv pentru care am proiect un circuit electronic de formare a impulsurilor alimentat cu tensiunea de alimentare a automatului programabil CPU224XP de 24Vcc, care transforma aceste impulsuri de 0-1V in pulsuri dreptunghiulare de 0/24Vcc ce pot fi usor sesizate de intrarea discreta I1.0. Detalii si schema circuitului sunt prezentate in anexa 3.

Sursa auxiliara de +/- 12Vcc pentru circuitele de senzori este un modul dc/dc achizitionat ca atare de la firma MeanWell, si poate livra 500mA pe fiecare tensiune in parte. Suficient pentru cele 3 circuite de senzori folositi.

Din punct de vedere fizic atat Formator de implusuri din NRG#40 cat si Sursa auxiliara de +/- 12Vcc au fost asamblate impreuna, intrucat dimensiunea lor se preta. (vezi anexa 3).

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 58

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Fig. Schita sistemului Hidroeol de la CHE Floresti II. Ecranul principal SCADA – nivel distant. Un exemplu de interfata operator de la ivelul distant corespunzator aplicatiei de la CHE Floresti II, pentru intervalul 20.11.09 – 1.12.09 se poate vedea in figura imediat urmatoare. In prima diagrama sunt suprapuse evolutia tensiunii bateriei care refelecta incarcarile din energii recuprabile si descarile pe sarcina (inclusiv pe dulapul de automatizare), simultan cu intensitatile curentilor dati de turbina eoliana si panourile solare. In diagrama a doua, pe acelasi interval de timp, am pus cu semn pozitiv cuantele de energie solara (portocaliu), cuantele de energie eoliana (albastru deschis), si cu semn negativ cunatele de energie consumate de invertorul propriu-zis, de sarcina invertorului, respectiv cuantele de energie consumate de dulapul de automatizare.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 59

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Fig. Exemplu de interfata operator cu prezentarea evolutiilor tensiunii, curentilor la nivelul bateriei, respectiv cunatele de energie dupa provenienta si cuantele de energie consumate.

De asemenea, existând si motivaţia financiara, s-a renunţat in cazul nivelului local (automatul programabil) la dispozitivul de afişare locala, TP177A. Acesta a fost înlocuit cu un program identic cu cel de la nivelul distant (dispecer) si care va fi rezident pe orice calculator, Laptop sau Notebook; in acest fel imbunatatim faza de control la nivel local, intrucat posilitatile dispozitivului de afişare locala erau oricum limitate. Astfel la pornirea aplicaţiei de la UTCN, vom avea si a doua baza de date, corespunzătoare sistemului HIDROEOL de la UTCN. In cadrul acestei aplicaţii care este rezidenta in întregime in laboratorul facultatii de Inginerie electrica nu se mai pune problema folosirii unui canal VPN pe GSM/GPRS iar afişorul local (TP177A) nu-si mai are rostul.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 60

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

6. Elaborarea/Implementarea bazei de date relaţionale

6.1. Baze de date existente Putem accesa baza de date a NASA, fie mergând cu un cursor pe hartă, fie introducând coordonatele. Problema, la introducerea coordonatelor, este că nu se pot introduce secunde, dar există, în schimb, mai multe cifre la minute. Probabil sunt zecimale. Datele selectate de noi, pentru o locaţie oarecare, pentru vânt, sunt de forma:

Monthly Averaged Wind Speed At 50 m Above The Surface Of The Earth (m/s)

Lat 46.75 Lon -23.333

Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Annual Average

10-year Average 11.9 10.9 9.99 9.41 7.67 7.25 6.87 6.95 8.10 9.38 10.7 10.9 9.16

Minimum And Maximum Difference From Monthly Averaged Wind Speed At 50 m (%) Lat 46.75 Lon -23.333 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

Annual Average

Minimum -15 -28 -14 -20 -21 -20 -25 -21 -19 -14 -15 -17 -19

Maximum 14 33 23 12 22 20 22 21 19 12 19 16 19

It is recommended that users of these wind data review the SSE Methodology. The user may wish to correct for biases as well as local effects within the selected grid region.

All height measurements are from the soil, water, or ice/snow surface instead of "effective" surface, which is usually taken to be near the tops of vegetated canopies.

Monthly Averaged Percent Of Time The Wind Speed At 50 m Above The Surface Of The Earth Is Within The Indicated Range (%)

Lat 46.75 Lon -23.333

Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Annual Average

0 - 2 m/s 1 2 3 3 4 6 6 8 4 3 2 2 4

3 - 6 m/s 11 17 21 22 36 38 40 39 32 23 18 15 26

7 - 10 m/s 27 32 32 37 40 41 43 38 41 36 28 31 36

11 - 14 m/s 32 25 29 25 17 13 10 13 19 27 30 29 22

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 61

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

15 - 18 m/s 21 17 13 10 3 3 1 2 4 10 16 17 10

19 - 25 m/s 7 7 3 2 0 0 0 0 1 1 5 6 3

Parameter Definition

Parameter Definition Units Conversion Chart

Monthly Averaged Wind Direction At 50 m Above The Surface Of The Earth (degrees) Lat 46.75 Lon -23.333

Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

10-year Average 234 235 237 241 246 248 249 249 248 249 249 246

Parameter Definition

Monthly Averaged Wind Direction At 50 m Above The Surface Of The Earth For Indicated GMT Times (degrees)

Lat 46.75 Lon -23.333 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

Average@0130 230 232 240 266 320 264 249 249 227 257 238 223

Average@0430 233 237 242 269 315 268 254 253 234 257 244 227

Average@0730 236 240 243 272 321 269 255 254 233 260 249 227

Average@1030 237 239 239 267 323 266 248 250 229 259 247 223

Average@1330 236 237 238 262 321 263 246 250 229 261 245 222

Average@1630 236 236 242 264 319 264 252 254 232 264 245 225

Average@1930 235 237 246 270 322 267 254 256 237 266 243 226

Average@2230 230 233 243 270 328 267 249 252 230 261 240 222

Site-ul mai dă şi alte informaţii, dar am luat numai acestea în consideraţie. Importante, pentru viitoarea “moară” este tabela cu frecvenţele vitezelor, după care se poate trasa curba distribuţei Weibull. O altă bază de date ne dă valorile sub formă de tabel EXCEL. Acesta arată astfel:

01.01.2007 00:10:00 11,56 262,29 Floresti 50m 01.01.2007 00:20:00 11,68 264,11 01.01.2007 00:30:00 11,76 266,44 Media anuala este: 4,807379 01.01.2007 00:40:00 11,84 268,65

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 62

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

01.01.2007 00:50:00 11,92 270,24 01.01.2007 01:00:00 11,97 271,05 01.01.2007 01:10:00 11,97 270,91 01.01.2007 01:20:00 11,91 270,36 01.01.2007 01:30:00 11,81 269,95 01.01.2007 01:40:00 11,73 269,69 01.01.2007 01:50:00 11,65 269,5 01.01.2007 02:00:00 11,54 269,2 01.01.2007 02:10:00 11,42 268,75 01.01.2007 02:20:00 11,25 268,21

De aici se pot extrage frecvenţele de mai sus, dar cele pe care la dă NASA sunt multianuale (pe 10 ani) pe când acestea sunt numai pe un an (aici 2007). Se copiază datele pe luna dorită (aici ianuarie) Extragerea datelor se face în felul următor: se copiază datele pe luna dorită (aici ianuarie) se pun pe primele linii condiţiile de numărare:

data ora vv dir vv >=19 <25 data ora vv dir 1/1/2007 0:10:00 11.56 262.29 1/1/2007 0:20:00 11.68 264.11 1/1/2007 0:30:00 11.76 266.44 1/1/2007 0:40:00 11.84 268.65 1/1/2007 0:50:00 11.92 270.24 1/1/2007 1:00:00 11.97 271.05 1/1/2007 1:10:00 11.97 270.91

Aici vv cuprins între 19 şi 25, şi se scrie pe ultima linie funcţia DCOUNT

=DCOUNT(A3:D4466,1,C1:E2) Care dă rezultatul:

31 0.006946 Unde 0.006946 este rezultatul împărţirii lui 31 la câte linii sunt , adică 4466. O altă bază de date ne dă, pe FirstLook, numai intervalul în care este media vitezei vântului, dar o putem accesa şi din hartă şi după coordonate. Aveţi aici rezultatul pentru Cluj (aproximativ).

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 63

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

6.2. Proiect conceptual

6.2.1. Determinarea tipurilor de entitate Tip de entitate descriere Judet Judeţul Locatie Locaţia în judeţ cu lat. Long.

Altitudine

Vantmps Viteza vântului în M-sec în procentaje (pot fi mai multe descrieri în funcţie de sursă)

Medii_si_weibull Viteze medii ale vântului şi rezultate cu distribuţie Weibull )legate tot de sursă

sursa Sursa datelor Conţine şi înălţimea la care s-au făcut măsurătorile

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 64

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

6.2.2. Determinarea relaţiilor dintre tipurile de entitate Tip de entitate relaţie Tip de entitate Judet Are mai multe Locatie Locatie Poate avea mai multe

determinări în funcţie de sursă sursa

sursa Are date despre Vantmps sursa Are date despre Medii_si_weibull Vantmps Relaţie de unu la unu cu cheia

comună sursa Medii_si_weibull

6.2.3.Determinarea atributelor Nume tabelă Nume camp Tipul de dată descriere judete cod_judet numeric Cheie-codul judeţului nume_judet text Numele judeţului Nume tabelă Nume camp Tipul de dată descriere locatii cod_locatie autonumer Cheie – locaţia cu

date despre vânturi nume_locatie text Denumirea locaţiei cod_judet numeric codul judeţului latitudine text Latitudinea locaţiei Longitudine text Longitudinea locaţiei

altitudine numeric altitudinea locaţiei Nume tabelă Nume camp Tipul de dată descriere sursa sursa text Cheie-denumirea

sursei inalt numeric înălţimea la care s-au

făcut măsurătorile şi face parte din cheie

Cod_locatie numeric Codul locaţiei pentru care s-au făcut măsurătorile face parte din cheie

adresa text Adresa sursei Nume tabelă Nume camp Tipul de dată descriere

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 65

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

vantmps codvmps autonumber Cheie surogat sursa text Numele sursei – cheie straina inalt numeric înălţimea la care s-au făcut

măsurătorile şi face parte din cheie straina

cod_locatie numeric Cod al locaţiei cu date despre vânturi face parte din cheie straina

0_2_ian numeric De la 0 la 2 mps ianuarie 3_6_ian numeric De la 3 la 6 mps ianuarie 7_10_ian numeric De la 7 la 10 mps ianuarie 11_14_ian numeric De la 11 la 14 mps ianuarie 15_18_ian numeric De la 15 la 18 mps ianuarie 19_25_ian numeric De la 19 la 25 mps ianuarie 0_2_feb numeric De la 0 la 2 mps februarie 3_6_ feb numeric De la 3 la 6 mps februarie 7_10_ feb numeric De la 7 la 10 mps februarie 11_14_ feb numeric De la 11 la 14 mps februarie 15_18_ feb numeric De la 15 la 18 mps februarie 19_25_ feb numeric De la 19 la 25 mps februarie 0_2_mar numeric De la 0 la 2 mps martie 3_6_ mar numeric De la 3 la 6 mps martie 7_10_ mar numeric De la 7 la 10 mps martie 11_14_ mar numeric De la 11 la 14 mps martie 15_18_ mar numeric De la 15 la 18 mps martie 19_25_ mar numeric De la 19 la 25 mps martie 0_2_apr numeric De la 0 la 2 mps aprilie 3_6_ apr numeric De la 3 la 6 mps aprilie 7_10_ apr numeric De la 7 la 10 mps aprilie 11_14_ apr numeric De la 11 la 14 mps aprilie 15_18_ apr numeric De la 15 la 18 mps aprilie 19_25_ apr numeric De la 19 la 25 mps aprilie 0_2_mai numeric De la 0 la 2 mps mai 3_6_ mai numeric De la 3 la 6 mps mai 7_10_ mai numeric De la 7 la 10 mps mai 11_14_ mai numeric De la 11 la 14 mps mai 15_18_ mai numeric De la 15 la 18 mps mai 19_25_ mai numeric De la 19 la 25 mps mai 0_2_iun numeric De la 0 la 2 mps iunie 3_6_ iun numeric De la 3 la 6 mps iunie 7_10_ iun numeric De la 7 la 10 mps iunie 11_14_ iun numeric De la 11 la 14 mps iunie 15_18_ iun numeric De la 15 la 18 mps iunie 19_25_ iun numeric De la 19 la 25 mps iunie 0_2_iul numeric De la 0 la 2 mps iulie 3_6_ iul numeric De la 3 la 6 mps iulie

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 66

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

7_10_ iul numeric De la 7 la 10 mps iulie 11_14_ iul numeric De la 11 la 14 mps iulie 15_18_ iul numeric De la 15 la 18 mps iulie 19_25_ iul numeric De la 19 la 25 mps iulie 0_2_aug numeric De la 0 la 2 mps august 3_6_ aug numeric De la 3 la 6 mps august 7_10_ aug numeric De la 7 la 10 mps august 11_14_ aug numeric De la 11 la 14 mps august 15_18_ aug numeric De la 15 la 18 mps august 19_25_ aug numeric De la 19 la 25 mps august 0_2_sep numeric De la 0 la 2 mps septembrie 3_6_ sep numeric De la 3 la 6 mps septembrie 7_10_ sep numeric De la 7 la 10 mps septembrie 11_14_ sep numeric De la 11 la 14 mps

septembrie 15_18_ sep numeric De la 15 la 18 mps

septembrie 19_25_ sep numeric De la 19 la 25 mps

septembrie 0_2_oct numeric De la 0 la 2 mps octombrie 3_6_ oct numeric De la 0 la 2 mps octombrie 7_10_ oct numeric De la 0 la 2 mps octombrie 11_14_ oct numeric De la 0 la 2 mps octombrie 15_18_ oct numeric De la 0 la 2 mps octombrie 19_25_ oct numeric De la 0 la 2 mps octombrie 0_2_nov numeric De la 0 la 2 mps noiembrie 3_6_ nov numeric De la 3 la 6 mps noiembrie 7_10_ nov numeric De la 7 la 10 mps noiembrie 11_14_ nov numeric De la 11 la 14 mps noiembrie 15_18_ nov numeric De la 15 la 18 mps noiembrie 19_25_ nov numeric De la 19 la 25 mps noiembrie 0_2_dec numeric De la 0 la 2 mps decembrie 3_6_ dec numeric De la 3 la 6 mps decembrie 7_10_ dec numeric De la 7 la 10 mps decembrie 11_14_ dec numeric De la 11 la 14 mps

decembrie 15_18_ dec numeric De la 15 la 18 mps

decembrie 19_25_ dec numeric De la 19 la 25 mps

decembrie 0_2_an numeric De la 0 la 2 mps decembrie 3_6_ an numeric De la 3 la 6 mps anuala 7_10_ an numeric De la 7 la 10 mps anuala 11_14_ an numeric De la 11 la 14 mps anuala 15_18_ an numeric De la 15 la 18 mps anuala 19_25_ an numeric De la 19 la 25 mps anuala

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 67

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Nume tabelă Nume camp Tipul de dată descriere Medii_si_weibull

codmw autonumber Cheie surogat

sursa text Numele sursei – cheie straina inalt numeric înălţimea la care s-au făcut măsurătorile şi

face parte din cheie straina cod_locatie numeric Cod al locaţiei cu date despre vânturi face

parte din cheie straina wei_a an numeric Coeficient weibull anuală wei_b an numeric Coeficient weibull anuală m_ian numeric Media pe ianuarie mi_ ian numeric Diferenţa minimă faţă de media pe ianuarie ma_ ian numeric Diferenţa maximă faţă de media pe ianuarie wei_a ian numeric Coeficient weibull pe ianuarie wei_b ian numeric Coeficient weibull pe ianuarie m_feb numeric Media pe februarie mi_ feb numeric Diferenţa minimă faţă de media pe februarie ma_ feb numeric Diferenţa maximă faţă de media pe februarie wei_a feb numeric Coeficient weibull pe februarie wei_b feb numeric Coeficient weibull pe februarie m_mar numeric Media pe martie mi_ mar numeric Diferenţa minimă faţă de media pe martie ma_ mar numeric Diferenţa maximă faţă de media pe martie wei_a mar numeric Coeficient weibull pe martie wei_b mar numeric Coeficient weibull pe martie m_apr numeric Media pe aprilie mi_ apr numeric Diferenţa minimă faţă de media pe aprilie ma_ apr numeric Diferenţa maximă faţă de media pe aprilie wei_a apr numeric Coeficient weibull pe aprilie wei_b apr numeric Coeficient weibull pe aprilie m_mai numeric Media pe mai mi_ mai numeric Diferenţa minimă faţă de media pe mai ma_ mai numeric Diferenţa maximă faţă de media pe mai wei_a mai numeric Coeficient weibull pe mai wei_b mai numeric Coeficient weibull pe mai m_iun numeric Media pe iunie mi_ iun numeric Diferenţa minimă faţă de media pe iunie ma_ iun numeric Diferenţa maximă faţă de media pe iunie wei_a iun numeric Coeficient weibull pe iunie wei_b iun numeric Coeficient weibull pe iunie m_iul numeric Media pe iulie mi_ iul numeric Diferenţa minimă faţă de media pe iulie ma_ iul numeric Diferenţa maximă faţă de media pe iulie wei_a iul numeric Coeficient weibull pe iulie

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 68

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

wei_b iul numeric Coeficient weibull pe iulie m_aug numeric Media pe august mi_ aug numeric Diferenţa minimă faţă de media pe august ma_ aug numeric Diferenţa maximă faţă de media pe august wei_a aug numeric Coeficient weibull pe august wei_b aug numeric Coeficient weibull pe august m_sep numeric Media pe septembrie mi_ sep numeric Diferenţa minimă faţă de media pe septembrie ma_ sep numeric Diferenţa maximă faţă de media pe

septembrie wei_a sep numeric Coeficient weibull pe septembrie wei_b sep numeric Coeficient weibull pe septembrie m_oct numeric Media pe octombrie mi_ oct numeric Diferenţa minimă faţă de media pe octombrie ma_ oct numeric Diferenţa maximă faţă de media pe octombrie wei_a oct numeric Coeficient weibull pe octombrie wei_b oct numeric Coeficient weibull pe octombrie m_nov numeric Media pe noiembrie mi_ nov numeric Diferenţa minimă faţă de media pe noiembrie ma_ nov numeric Diferenţa maximă faţă de media pe noiembrie wei_a nov numeric Coeficient weibull pe noiembrie wei_b nov numeric Coeficient weibull pe noiembrie m_dec numeric Media pe decembrie mi_ dec numeric Diferenţa minimă faţă de media pe decembrie ma_ dec numeric Diferenţa maximă faţă de media pe decembrie wei_a dec numeric Coeficient weibull pe decembrie wei_b dec numeric Coeficient weibull pe decembrie 6.2.4. Diagrama entitate-relaţie

6.3. Crearea şi validarea modelului logic local Se urmăreşte crearea unui model logic local bazată pe modelul conceptual al utilizatorilor asupra întreprinderii şi validarea ei prin procesul de normalizare şi prin tehnica tranzacţiilor cerute.

judete locatii sursa

vantmps Medii_si_weibull

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 69

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

În acest pas se verifică modelul conceptual creat în pasul anterior şi se elimină din el structurile care sunt dificil de realizat într-un SGBD. Dacă la sfârşitul acestui proces modelul e alterat, se vor corecta aceste probleme şi ne vom referi în continuare la modelul rezultat, ca fiind modelul logic local. Se va valida modelul logic prin procesul de normalizare şi al tranzacţiilor.

6.3.1. Proiectarea modelului conceptual local pe un model logic local Obiectivele acestui pas sunt: (1) Eliminarea relaţiilor M:N. (2) Eliminarea relaţiilor complexe. (3) Eliminarea relaţiilor recursive. (4) Eliminarea relaţiilor cu atribute. (5) Reexaminarea relaţiilor 1:1. (6) Eliminarea relaţiilor redundante.

(1) Eliminarea relaţiilor multe-la-multe Dacă în modelul de date apar relaţii de tipul multe-la-multe (M:N), trebuie descompuse în două relaţii unu-la-multe (1:M) prin adăugarea unei noi entităţi suplimentare. Modelul nu conţine astfel de relaţii. (2) Eliminarea relaţiilor complexe O relaţie complexă este o relaţie între mai mult de două tipuri de entităţi. Dacă în modelul conceptual apar relaţii complexe, acestea trebuie eliminate. Modelul nu conţine astfel de relaţii. (3) Eliminarea relaţiilor recursive Relaţiile recursive sunt nişte relaţii particulare, prin care un tip de entitate este în relaţie cu el însăşi. Dacă apare o astfel de relaţie în modelul conceptual, ea trebuie eliminată. Modelul nu conţine astfel de relaţii. (4) Eliminarea relaţiilor cu atribute

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 70

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Dacă în modelul conceptual există relaţii cu atribute, se poate descompune această relaţie, identificând un nou tip de entitate în care să fie înregistrate atributele necesare. Modelul nu conţine astfel de relaţii. (5)Reexaminarea relaţiilor de tipul 1:1 În modelul conceptual pot avea entităţi care să fie în relaţie de tipul 1:1. Se poate întâmpla ca aceste entităţi să fie de fapt aceeaşi entitate cu nume diferite. Modelul nu conţine astfel de relaţii. (6)Eliminarea relaţiilor redundante O relaţie este redundantă dacă se poate ajunge de la un tip de entitate la alt tip de entitate pe mai multe drumuri. Se poate spune că au fost eliminate din modelul conceptual acele structuri care sunt dificil de implementat şi deci este mai corect ca în continuare să ne referim la acest model ca fiind un model logic local de date.

6.3.2. Crearea relaţiilor pentru modelul logic local Se crează relaţii peste modelul logic. Relaţia pe care un tip de entitate o are cu alt tip de entitate este reprezentată prin mecanismul cheie primară/cheie străină. Cheia străină pentru o entitate este reproducerea cheii primare a altei entităţi. Pentru a decide entităţiile unde se va include copia cheii primare a altei entităţi, trebuie identificate întâi entităţile “părinte” şi “fiu”. Entităţile “părinte” se referă la acele entităţi ale căror chei primare se vor copia în entităţile “fiu”. Judet (cod_judet, nume_judet) Cheie primară: cod_judet Locatii (cod_locatie,den_locatie,cod_judet,longitudine,latituddine,altitudine) Cheie primară: cod_locatie Cheie străină: cod_judet referire la Judet (cod_judet, nume_judet) Sursa(sursa,inalt, cod_locatie,adresa) Cheie primară: sursa,inalt, cod_locatie Cheie străină: cod_locatie referire la Locatii (cod_locatie,…) Vantmps (codvmps,sursa,inalt,cod_locatie,0_2_ian,3_6_ian,… 19_25_ an) vezi tabela 1.3. Cheie primară: codvmps

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 71

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Cheie străină: sursa,inalt, cod_locatie referire la Sursa(sursa,inalt, cod_locatie,adresa) Medii_si_weibull (codmw,sursa,inalt,cod_locatie, wei_a an, wei_b an, m_ian, mi_ ian, ma_ ian, wei_a ian,…, wei_b dec) vezi tabela 1.3. Cheie primară: codvmps Cheie străină: sursa,inalt, cod_locatie referire la Sursa(sursa,inalt, cod_locatie,adresa) 6.3.3. Validarea modelului, utilizând normalizarea. Se urmăreşte validarea modelului logic, utilizând tehnica normalizării. Prin normalizare trebuie să demonstrăm că modelul creat este consistent, conţine redundanţă minimală şi are stabilitate maximă. Normalizarea - tehnică de generare a unor relaţii cu proprietăţiile dorite, în scopul memorării corecte a datelor unei întreprinderi. Procesul de normalizare include următoarele etape mari:

1. Forma Normală Unu (1NF) 2. Forma Normală Doi (2NF) 3. Forma Normală Trei (3NF) 4. Forma Normală Boyce-Codd (BCNF)

1. Forma Normală Unu (1NF)

Formă Nenormalizată (UNF) – o tabelă care conţine una sau mai multe grupuri repetitive.

2. Forma Normală Doi (2NF) Dependenţa funcţională totală - Dacă A şi B sunt atributele unei relaţii, atunci B este total dependent funcţional de atributul A, dacă B este dependent funcţional de A, dar nu este dependent funcţional de nici un subset al lui A. Forma Normală Doi (2NF) - O relaţie este în forma normală doi dacă este în forma normală unu şi fiecare atribut care nu aparţine cheii primare este total dependent funcţional de cheia primară.

3. Forma Normală Trei (3NF) Dependenţă tranzitivă - Dacă atributele A, B, C sunt în relaţiile A→B şi B→C, atunci spunem că atributul C este dependent tranzitiv de atributul A, via B.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 72

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Forma Normală Trei (3NF) - O relaţie care este în formă normală doi, neexistând nici un atribut care să nu aparţină cheii principale şi care să fie tranzitiv dependent de cheia principală. Examinând relaţiile în forma normală de mai sus, observăm că nu există dependenţe tranzitive. Deci relaţiile sunt în formă normală trei.

3. Forma Normală Trei (3NF)- Boyce-Codd Baza de date trebuie proiectată astfel încât să nu conţină dependenţe parţiale sau tranzitive, pentru că altfel apar anomalii. Forma normală Boyce-Codd este bazată pe cheile candidat din relaţie. O relaţie cu o singură cheie candidat în formă normală trei este şi în formă normală Boyce-Codd. Forma normală Boyce-Codd (BCNF) - O relaţie este în forma normală Boyce-Codd dacă şi numai dacă orice determinant din relaţie este cheie candidat. Exemplul de mai sus este în formă normală Boyce-Codd.

6.3.4. Validarea modelului utilizand tranzactiile Se verifică dacă modelul de date suportă toate tranzacţiile cerute de utilizator. În acest pas se validează baza de date prin verificarea tranzacţiilor ce se cer de utilizator. Luând în considerare tipurile de entităţi, relaţiile, cheile primare şi străine, se încearcă rezolvarea manuală a cerinţelor utilizatorilor. Dacă se poate rezolva fiecare tranzacţie cerută, atunci înseamnă că modelul creat este valid. Dacă nu se poate rezolva o tranzacţie, atunci este foarte posibil să fi omis un atribut, o relaţie, sau o entitate din modelul de date. Lista tranzacţiilor

1. Introducerea sau modificarea unui judeţ. 2. Introducerea sau modificarea unei locaţii. 3. Introducerea sau modificarea unei surse. 4. Introducerea sau modificarea datelor despre frecvenţele zonelor de viteză lunare şi anuale. 5. Introducerea sau modificarea coeficienţilor Weibull. 6. Introducerea sau modificarea mediilor lunare şi anuale. 7. Listarea judeţelor. 8. Listarea locaţiilor pe judeţ. 9. Lstarea surselor pe locaţii. 10. Tabel cu medii pe luni şi pe an. 11. Tabel cu procentaje pe clase de viteze ale vântului, pe luni şi pe an. 12. Curbe Weibull pe luni şi pe an. 13. Calcul de putere vânt.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 73

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

1. Introducerea sau modificarea unui judeţ se face din formular. Dacă a mai fost introdus nu o sa-l

mai lase, cel existent se poate modifica (mai puţin cheia – cod_judet). 2. Introducerea sau modificarea unei locaţii se face din formular, selectând mai întâi judeţul. Dacă

nu există judeţul, cu buton, se introduce mai înâi judeţul. Dacă a mai fost introdusă nu o s-o mai lase, cea existentă se poate modifica (mai puţin cheia - cod_locatie ).

3. Introducerea sau modificarea unei surse se face din formular, selectând mai întâi judeţul şi

locaţia. Dacă nu există locaţia, cu buton, se introduce mai înâi locaţia. Dacă a mai fost introdusă nu o s-o mai lase, cea existentă se poate modifica (mai puţin cheia – sursa, inalt, cod_locatie).

4. Introducerea sau modificarea datelor despre frecvenţele zonelor de viteză lunare şi anuale se face

din formular, selectând mai întâi judeţul, locaţia, sursa şi înălţimea dintre 10m, 50m sau 80m. Dacă a mai fost introdusă nu o s-o mai lase, cea existentă se poate modifica (mai puţin cheia – codvmps).

5. Introducerea sau modificarea coeficienţilor Weibull se face din formular, selectând mai întâi

judeţul, locaţia, sursa şi înălţimea dintre 10m, 50m sau 80m. Coeficienţii Weibull trebuiesc calculaţi înainte (de văzut dacă nu se poate face un modul). Dacă a mai fost introdusă nu o s-o mai lase, cea existentă se poate modifica (mai puţin cheia – codmw).

6. Introducerea sau modificarea mediilor lunare şi anuale se face din formular, selectând mai întâi

judeţul, locaţia, sursa şi înălţimea dintre 10m, 50m sau 80m. Dacă a mai fost introdusă nu o s-o mai lase, cea existentă se poate modifica (mai puţin cheia – codmw).

7. Listarea judeţelor. Se face un raport, pe ecran cu toate judeţele introduse.

8. Listarea locaţiilor pe judeţ. Se face un raport, pe ecran cu toate locaţiile introduse selectând în

prealabil judeţul.

9. Lstarea surselor pe locaţii. Se face un raport, pe ecran cu toate locaţiile introduse selectând în prealabil judeţul şi locaţia.

10. Tabel cu medii pe luni şi pe an. Se face un raport tabelar, pe ecran selectând, în prealabil, judeţul,

locaţia şi sursa.

11. Tabel cu procentaje pe clase de viteze ale vântului, pe luni şi pe an. Se face un raport tabelar, pe ecran selectând, în prealabil, judeţul, locaţia şi sursa.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 74

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

12. Curbe Weibull pe luni şi pe an. Se face un raport, mai întâi pe ecran, apoi, dacă se doreşte, se inprimă pe hârtie cu curbele Weibull pentru un an sau pentru o anumită lună care a fost selectată.

13. Calcul de putere vânt. Se face cu formula : 3

21 vACP p ⋅⋅⋅= ρ

unde: Cp – coeficientul mecanic de putere; ρ – densitatea aerului, [kg/m3]; A – aria suprafeţei rotorului, [m2]; v – viteza vântului, [m/s].

Dacă nu este introdusă altitudinea, atunci se va lua altitudinea zero (nivelul mării).

6.3.5. Desenarea diagramei ER

Se vede uşor că toate relaţiile sunt 1 la n. 6.3.6. DEFINIREA REGULILOR DE INTEGRITATE A BAZEI DE DATE Se identifică regulile de integritate care să garanteze că datele introduse în baza de date rămân consistente. Tipuri de reguli de integritate:

• necesitatea datelor,

• reguli asupra domeniului atributelor,

• integritatea entităţilor,

Judete 1 Cod_judet

n Locatii 1 Cod_locatie Cod_judet

n Sursa Sursa,inalt, cod_locatie 1 1

Vantmps n Codvmps Sursa,inalt, cod_locatie

n Medii_si_weibull Codmw Sursa,inalt, cod_locatie

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 75

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

• integritatea referinţelor,

• regulile întreprinderii. Necesitatea datelor Există atribute care nu pot conţine valoarea nulă, ci trebuie să aibă totdeauna o valoare. Reguli asupra domeniului atributelor. Unele atribute au un domeniu de definiţie bine definit. Aceste domenii trebuie respectate. Domeniile de definiţie au fost deja identificate la documentarea domeniilor atributelor, în pasul 1.3. Integritatea entităţilor. Cheia primară a entităţilor nu poate lua valori nule. Aceste reguli au fost deja identificate la documentarea cheilor primare, în pasul 1.2.3. Integritatea referinţelor Cheia străină din tipul de entitate “fiu” face legătura cu o entitate din tipul de entitate “părinte”. Deci, dacă cheia străină conţine o valoare, ea trebuie neapărat să se regăsească şi în tipul de entitate “părinte”. Nu putem avea valoare nulă în cheia străină din tipul de entitate “părinte”. În general, dacă pariciparea tipului de entitate “fiu” este totală, atunci nu putem avea valoare nulă în cheia străină. Cazul 1: Inserarea unei entităţi în tipul de entitate “fiu”): Pentru a verifica integritatea referinţei, verificăm dacă atributele din componenţa cheii străine sunt vide, sau să existe entitate în tipul de entitate “părinte” care să aibă valoarea cheii primare egală cu valoarea cheii străine. Cazul 2: Actualizarea cheii străine în tipul de entitate “fiu”. Acest caz este similar cazului 1. Cazul 3: Stergerea unei entităţi din tipul de entitate “părinte “ .Dacă se şterge o entitate din tipul de entitate “părinte”, integritatea referinţelor se strică în cazul în care există entităţi în tipul de entitate “fiu”, care se referă la entitatea ştearsă. Dintre strategiile severe de rezolvare a integrităţii referinţelor, se recomandă:

• FĂRĂ ACŢIUNE – Cât timp există descencenţi, entitatea părinte nu se va şterge.

Cazul 4: Modificarea cheii primare în tipul de entitate părinte : Dacă se modifică cheia primară din tipul de entitate părinte, integritatea referinţelor se strică. Pentru menţinerea integrităţii, se poate folosi modul CASCADĂ.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 76

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

CASCADĂ înseamnă că o dată cu ştergerea entităţii părinte, se şterg toţi descendenţii. Atenţie ! descendenţii pot fi, la rândul lor, părinte şi se şterg şi descendenţii lorş de aceea se numeşte cascadă. La ştergeri, în cazul nostru se va folosi numai modu no action. Reguli de intreprindere Am mai notat anterior necesitatea de a avea altitudinea pentru corecta calculare a puterii vântului. De asemenea este foarte important să avem frecvenţele la vitezele de vânt pentru a calcula parametri funcţiei Weibull. 6.4. Distribuţia vântului

Ca aplicaţie s-a considerat distribuţia vântului din Floreşti, Cluj-România în anul 2007. Pentru a determina care este probabilitatea vitezei vântului respectiv care este energia lunară/anuală, am parcurs următoarele etape:

• Procesarea datelor în Matlab • Distribuţia Weibull • Calculul energiei lunare/anuale Evoluţia vântului prin folosirea programului Matlab Cu ajutorul programului Matlab s-au realizat curbele caracteristice ale vitezei vântului care au fost înregistrate în Floreşti, Cluj în anul 2007 la 50 m înalţime. Pentru realizarea lor s-au folosit următoarele etape: • Etapa 1. În prima etapă se înregistrează datele într-un fişier Excel, după care se importă în

Workspace - Matlab folosind următoarele comenzi din meniul programului: File Import Data Import file name Import Wizard Finish

• Etapa 2. După înregistrarea datelor în Workspace se foloseşte următoarea instrucţiune din Matlab:

[f, X] = ksdensity (Wind Speed, X); această instrucţiune estimează care este probabilitatea vitezei vântului.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 77

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Vectorul “X” este definit în felul urmator: X = [X1:X2:X3], unde X1 reprezintă valoarea iniţială, X2 reprezintă pasul, iar X3 reprezintă limita superioară a domeniului. • Etapa 3. După realizarea calculelor, se va reprezenta grafic funcţia, utilizând instrucţiunea “plot” din

Matlab. Prin folosirea comenzilor: plot (x, f) şi grid on rezultă caracteristica densitaţii de probabilitate a vitezei vântului în luna Ianuarie a anului 2007 (vezi Fig. 6.1).

0 2 4 6 8 10 12 14 16 18 20 220

0.02

0.04

0.06

0.08

0.1

0.12

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurate

Fig. 6.1. Probabilitatea vitezei vantului pentru luna Ianuarie 2007

• Etapa 4. În continuare prin utilizarea instructiunii “cftool” din Matlab, se obţine caracteristica

liniarizată (ajustată) a vitezei vantului, setând fereastră Curve Fitting Tool Data, dupa cum urmează:

X Data: selectarea vectorului x Y Data: selectarea funcţei f În continuare se selecteaz[ butonul: Create data set se trece la urmatoarea comanda iesind din secţiunea “Data sets” cu ajutorul comenzii Close.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 78

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

La următoarea etapă, din comanda “Curve Fitting Tool” se va seta comanda Fitting Fit Editor New Fit. Dupa cum se poate observa în figura 1.2, s-a reprezentat caracteristica ajustată a probabilităţii vântului cu ajutorul distribuţiei Weibull, pentru vitezele vântului înregistrate în Floreşti în Ianuarie 2007. În comanda “Fit Editor” s-a notat la “Fit Name” – “Distribuţia Weibull”, la “Data set” s-a ales : “f vs. x – Date măsurate” iar la “Type of fit ” s-a selectat tipul de distribuţie cu care s-a realizat ajustarea: “Weibull” În figura de mai jos se poate vedea formula de calcul, precum şi coeficienţii “a” si “b” care alcătuiesc modelul distribuţiei Weibull.

.

Fig. 6.2. Caracteristica de ajustare a probabilitatii vantului

În urma realizării tuturor comenzilor prezentate mai sus, va rezulta caracteristică ajustată a vitezei vântului pentru luna Ianuarie:

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 79

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

0 2 4 6 8 10 12 14 16 18 20 220

0.02

0.04

0.06

0.08

0.1

0.12

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurateDistributia Weibull

a=0.006248b=2.285c=9.2186; k=bvmp=7.1658

Fig. 6.3. Caracteristica ajustată a vitezei vântului

Coeficientii “a” si “b” s-au obţinut utilizând funcţia Weibull, însa pentru calcularea coleficienţilor “c”si”k”, respectiv “vmp”(viteza medie cea mai probabilă) s-au folosit urmatoarele formule: k=b; c=(1/a). ^(1/b); vmp=c*(1-1/k)^(1/k); În tabelul de mai jos se prezintă programul M.file din Matlab pentru calculul tuturor parametrilor care intervin în determinarea probabilităţii vitezei vântului, pentru luna Ianuarie.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 80

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

% programul M.file din Matlab pentru calcularea parametrilor distributiei vitezei vantului. x =[0.1:0.1:22] % reprezinta valoarea vectorului x care poate sa ajunga pana la viteza vantului de 22 m/s. [f, x] = ksdensity (Viteza_Ianuarie, x); plot (x, f); % reprezinta curba densitatii de probabilitate a vitezei vantului grid on, axa x ('Viteza vântului [m/s]'), axa y ('Probabilitate [%]'), legenda (Date masurate'); cftool; % se realizeaza curba ajustata cu diststributia Weibull. a= 0.006248 % coeficientii "a" si "b" rezultati in Matlab in urma folosirii distributiei Weibull. b=2.285 k=b %in Matlab parametrul "b" este egal cu “k” de la distributia Weibull. c=(1/a). ^(1/b) % reprezinta formula de calcul a parametrului "c". vmp=c*(1-1/k)^(1/k); % reprezinta viteza medie cea mai probabila. prob=(k/c)*((vmp/c)^(k-1))*exp (-(vmp/c)^k); % reprezinta cea mai probabila viteza a vantului PROBABILITY=prob*100; % reprezinta probabilitatea in procente Power= [1/2*1.225*Wind_January. ^3]; % reprezinta puterea obtinuta de la vant. time=0:0.16667:744; plot (time, power); % reprezinta curba caracteristica a puterii in functie de timp Energy=trapz (time, power); % reprezinta formula de calcul a energiei obtinute in luna Ianuarie de la vant În conformitate cu cele prezentate în capitolul 3, se prezintă potenţialul energetic total calculat ca urmare a înregistrărilor multianuale, cât şi potenţialul energetic recoltabil ca urmare a utilizării configuraţiei, generator eolian – pompă în condiţiile descrise. Astfel, pentru luna Ianuarie rezultă:

Energia totală, [kWh] Energia recoltabilă, [kWh] 389.5 388.59

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 81

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Februarie 2007

0 5 10 150

0.05

0.1

0.15

Viteza vântului [m/s]

Prob

abil

itat

e [%

]

Date masurate

0 5 10 150

0.05

0.1

0.15

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurateDistributia Weibull

a=0.02653b=1.97c=6.3115; k=bvmp=4.4050

Energia totală, [kWh] Energia recoltabilă, [kWh] 130.3 128.82

Martie 2007

0 5 10 150

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurate

0 5 10 150

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurateDistributia Weibull

a=0.0289b=1.954c=6.1329; k=bvmp=4.2493

Energia totală, [kWh] Energia recoltabilă, [kWh] 125.26 123.25

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 82

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Aprilie 2007

0 5 10 150

0.05

0.1

0.15

0.2

0.25

Viteza vântului [m/s]

Prob

abili

tat [

%]

Date masurate

0 5 10 150

0.05

0.1

0.15

0.2

0.25

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurateDistributia Weibull

a=0.02188b=2.42c=4.8521; k=bvmp=3.8928

Energia totală, [kWh] Energia recoltabilă, [kWh] 58.219 55.71

Mai 2007

0 5 10 150

0.05

0.1

0.15

0.2

0.22

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurate

0 5 10 150

0.05

0.1

0.15

0.2

0.22

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurateDistributia Weibull

a=0.04703b=1.914c=4.9390; k=bvmp=3.3568

Energia totală, [kWh] Energia recoltabilă, [kWh] 77.994 74.782

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 83

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Iunie 2007

0 5 10 150

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurate

0 5 10 150

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurateDistributia Weibull

a=0.04373b=2.033c=4.6621; k=bvmp=3.3415

Energia totală, [kWh] Energia recoltabilă, [kWh] 43.113 40.731

Iulie 2007

0 5 10 150

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurate

0 5 10 150

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurateDistributia Weibull

a=0.0525b=1.759c=5.3407; k=bvmp=3.3119

Energia totală, [kWh] Energia recoltabilă, [kWh]

98.117 95.2

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 84

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

August 2007

0 1 2 3 4 5 6 7 8 9 100

0.05

0.1

0.15

0.20.21

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurate

0 1 2 3 4 5 6 7 8 9 100

0.05

0.1

0.15

0.20.21

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurateDistributia Weibull

a=0.05049b=2.032c=4.3470; k=bvmp=3.1144

Energia totală, [kWh] Energia recoltabilă, [kWh] 41.252 38.059

Septembrie 2007

0 2 4 6 8 10 12 13130

0.05

0.1

0.150.15

Viteza vântului [m/s]

Prob

abil

itat

e [%

]

Date masurate

0 2 4 6 8 10 12 130

0.05

0.1

0.15

Viteza vântului [m/s]

Prob

abili

tat [

%]

Date masurateDistributia Weibull

a=0.06959b=1.491c=5.9744; k=bvmp=2.8363

Energia totală, [kWh] Energia recoltabilă, [kWh] 102.07 100.19

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 85

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Octombrie 2007

0 2 4 6 8 10 120

0.05

0.1

0.15

0.2

0.250.26

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurate

0 2 4 6 8 10 120

0.05

0.1

0.15

0.2

0.250.26

Viteza vântului [m/s]

Prob

ailit

ate

[%]

Date masurateDistributia Weibull

a=0.07656b=1.859c=3.9840; k=bvmp=2.63

Energia totală, [kWh] Energia recoltabilă, [kWh] 47.938 44.036

Noiembrie 2007

0 5 10 150

0.02

0.04

0.06

0.08

0.1

0.12

0.13

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurate

0 5 10 150

0.02

0.04

0.06

0.08

0.1

0.12

0.13

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurateDistributia Weibull

a=0.03663b=1.68c=7.1591; k=bvmp=4.1788

Energia totală, [kWh] Energia recoltabilă, [kWh] 159.44 157.49

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 86

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Decembrie 2007

0 2 4 6 8 10 12 130

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

Viteza vântului [m/s]

Prob

abil

itat

e [%

]

Date masurate

0 2 4 6 8 10 12 130

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

Viteza vântului [m/s]

Prob

abili

tat [

%]

Date masurateDistributia Weibull

a=0.08597b=1.6c=4.6348; k=bvmp=2.5107

Energia totală, [kWh] Energia recoltabilă, [kWh] 63.927 60.736

Anul 2007

0 5 10 15 20 220

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurate

0 5 10 15 20 220

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

Viteza vântului [m/s]

Prob

abili

tate

[%]

Date masurateDistributia Weibull

a=0.05326b=1.739c=5.3998; k=bvmp=3.3011

Energia totală, [kWh] Energia recoltabilă, [kWh] 1337.2 1307.6

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 87

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

În tabelul 1.1 se prezintă comparaţia dintre energia totală calculată şi energia care poate fi recoltabilă în urma utilizării configuraţiei alese, generator eolian – pompă.

Tabelul 1.1. Comparatia energiei produse

0

40

80

120

160

200

240

280

320

360

400

Ianuari

e

Februari

eMart

ieApri

lie MaiIunie Iulie

Augus

t

Septem

brie

Octombrie

Noiembrie

Decem

brie

Anul 2007

Ener

gie

[kW

h]

Energia totală Energia recoltabilă

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 88

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

7. CONCLUZII Etapa 4 - Execuţie model funcţional pentru sistemul energetic hibrid. – partea a II are

termenul de predare in 10 decembrie 2009 si cuprinde următoarele activităţi: 4.1. Elaborare partiala II a modelului functional SCADA (module software) 4.2. Realizare partiala I model functional subsistem eolian

Realizate de coordonatorul proiectului IPA si de partenerul P2- Universitatea Transilvania Braşov. In cadrul activităţii 4.1. au fost realizate următoarele:

1. S-au realizat modulele software pentru sistemul SCADA, s-au testat si ajustat in perioada septembrie – noiembrie. Si din data de 20 noiembrie 2009 sistemul este in faza de adunare de date, in vederea realizării bilanţurilor energetice si acordării modelului matematic final. Si după date de 20 noiembrie 2009, s-au mai făcut unele modificări la nivelul modulelor soft tinand seama de exigente de prezentare s-au prelucrări intermediare. Anumiţi parametri de caracterizare au fost dezvoltaţi si probabil se vor mai dezvolta si in continuare, dar baza de date achiziţionata, maturizata, stabilizata ca structura si componenta, e poate permite acest lucru. Si tocmai aceasta exploatare multipla, fara restricţii si nelimitata a bazei de date este in fapt unul din scopurile temei.

2. In structura sistemului SCADA au fost efectuate mici modificări in structura dulapului de automatizare, ţinând cont de achiziţiile efective (senzorii LEM LA-55P si LV-25P) altele decât cele avute in vedere la proiectare in etapa 3 (senzorii Vydas P-153E). S-au modificat proiectele si s-au realizat fizic următoarelor circuite electronice, astfel:

a. Circuitul de senzori de curent si tensiuni continue b. Circuitul de prezenta c. Formatorul de impulsuri din anemometru NRG #40 d. Sursa auxiliara de ±12Vcc pentru circuitele de senzori

In cadrul activitatii 4.2. s-au realizat 3. Elaborarea/implementarea bazei de date relationale privind evolutia vitezei vantului

pentru locatia Floresti,, la inaltimea de 50 m deasupra solului. Pentru realizarea acestei baze de date se determina: tipurile de entitate (Judet, Locatie, Vantmps, Medii_si_weibull, sursa), relaţiile dintre tipurile de entitate, atributele elementelor, diagram entitate-relatie. S-au creat relatii pentru modelul logic, urmarindu-se validarea modelului logic utilizabd tehnica normalizarii. S-au verificat daca modelul suporta toate tranzactiile cerute de utilizator. Luand in considerare tipurile de entitati, relatiile, cheile primare si straine s-a incercat daca fiecare tranzactie se poate rezolva si manula, aceasta ducand la validarea modelului. Un alt aspect studiat a fost modelarea distributiei vantului pentru locatia analizata. Pentru determinarea probabilitatii vitezei vantului, respective a energiei lunare/anuala se parcurg urmatoarele etape: ►procesarea datelor in programul Matlab ►realizarea distributiei Weibull ► calculul energiei lunare/anuale.

S-a evidentiat potentialul energetic calculate ca urmare a inregistrarilor multiannual, cat si potentialul energetic recoltabil ca urmare a utilizarii configuratiei generator eolian-pompa, in conditiile descries. Deasemenea, s-a ridicat caracteristica densitatii de probabilitate a vitezei vantului pentru fiecare luna in parte. S-a facut comparatia dintre energia totala calculate si energia care poate fi recoltabila in urma configuratiei alese, generator eolian- pompa. 4. Au avut loc actiuni de diseminare a proiectului astfel:

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 89

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

a. S-au publicat 4 articole

b. A fost organizata o masa rotunda pentru diseminarea rezultatelor proiectului HIDROEOL, cu tema “ Surse de energie regenerabile”. Locul dedesfasurare a fost la sediul SC IPA SA Sucursla Cluj, str Zorilor nr 15, in data de 22 octombrie 2009. La acesta masa rotunda au participat membri din consortiu care participa la realizarea lucrarii cat si invitati de la unitatile economice interesate de rezultatele proiectului. Participantii au fost:

Ing. Stoian Ioan SC IPA SA Sucursala Cluj Ing. Capatana Octavian SC IPA SA Sucursala Cluj Ing. Corha Alin SC IPA SA Sucursala Cluj Ing. Gota Dan SC IPA SA Sucursala Cluj Ing. Vigu Cristian SC IPA SA Sucursala Cluj Prof.dr. ing. Vadan Ioan Universitatea Tehnica Cluj Prof.dr.ing. Marinescu Corneliu Universitatea Transilvania Brasov Ing. Chiorean Dorin SC Hidroelectrica SA, SH Cluj Ing. Rogoz Ioan SC Hidroelectrica SA, SH Cluj Ing. Sancraian Nicolae SC Hidroelectrica SA, SH Cluj Ing. Ordean Mircea SC Hidroelectrica SA, SH Cluj Ing. Mircescu Dan SC Hidroserv SA Filiala Cluj

Au fost abordate urmatoarele teme de discutie:

a. Rezultatele obtinute pana acum in cadrul proiectului HIDROEOL b. Prezentarea instalatiei eoliene de 1.5Kw de la Floresti pentru alimentarea, realizata de

IPA Cluj c. Discutii si proiecte comune de viitor

5. S-a participat la Sesiunea de diseminare a rezultatelor proiectelor organizata de Central National de Management Programme la Cluj in perioada 2-4 decembrie 2009

Assessment of Wind Energy Potential in a Cluj-Napoca city location

Florina Leach, Ioan Vadan, Radu Adrian Munteanu, Virgil

Maier, Sorin Pavel

The 8th International Power Systems Conference, ISSN 1582-7194, PSC 2009, Timisoara, Romania,

November 5-6, 2009, pag.. 281-290.

The Unconventional Energies In The Carpathian And Danubian Area Ioan Vadan, Radu Munteanu,

Sorin Pavel, Remus Ghemes, Florina Leach

International Conference, 27 – 28 November 2009, Arad, Romania, under publication process

Storing wind energy by pumping water A. Forcos, C. Marinescu Proceedings of the 7th International Conference on

Electromechanical and Power Systems, SIELMEn, October 8-9, Iasi, Romania, pp: II-357 – II-360

Modelarea sistemelor autonome de stocare a energiei eolian-hidro A. Forcos, C. Marinescu Conferinta Nationala si Expozitia de Energetica,

Volumul II, pp: 751-756, Sinaia, 21-23 Oct, 2009

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 90

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

8. Bibliografie [1.1]. Connoly T., Begg C., Strachan A., “Data base systems”, Addison Wesley, 1997. [1.2]. Iacob, P., “Initiere în Baze de Date”, Editura Lux Libris Brasov, 2005, ISBN: 973 – 9458 – 58 – 0. [1.3]. Harrington J.L., “Relational database design”, AP Professional, 1998. [1.4]. L. Barote, I. Negrea, Wind energy probability estimation using Weibull distribution function, Annals of the Oradea University, Fascicle of Management and Technological Engineering, Vol. VII(XVII), ISSN 1583-0691, May 29 – May 30, Baile Felix, Oradea, Romania, 2008, pp. 1896-1905 – CNCSIS “Clasa B+”.

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 91

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

ANEXA 1

DESCRIEREA IN PSEUDOCOD A PRINCIPALELOR RUTINE

ALE APLICATIEI DE TIP SCADA - HIDROEOL

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 92

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA Dispecer_HIDROEOL // Modulul HEmain.c – modulul principal Interfete incluse: "HEfond.h", "HEschema.h", "HEgrafic.h", "HEenergii.h", "HEgrafice_comparate.h", "HEsaparole.h", "HEsalocdin.h", "HEsalocdou.h", "HEsalocain.h", "HEsalocnum.h", "HEsalocaki.h", "HEsiharta.h", "HEsiarhite.h", "Hiesire.h" Rutine externe: distribuitor_comunicatie

pornire_achizitie_hidroeol

parol

init_indic_hidroeol init_achizitie_hidroeol Init_nume_raport init_nume_controale trans_hidroeol trans_saparole trans_hidroeol trans_salocdin trans_salocdou trans_salocain trans_salocnum trans_sacomaki trans_grafic trans_grafic_sin trans_energii raportd_hidroeol cit_fis_alocare_din cit_fis_alocare_do

u cit_fis_alocare_ain cit_fis_alocare_aki cit_fis_alocare_nu

m cit_fis_alocare_par pune_sigle min_max init_alarme_hidroeol verif_alarme_hidroeol ermes deschide_OPC inchide_OPC ermes1 init_server_DS stop_server_DS Rutine interne: citeste_timp /* ========== programul principal ============= */ main() { initializare variabile de lucru – ceas, data,init_indic_hidroeol init_indic_hidroeol, init_achizitie_hidroeol, init_alarme_hidroeol init_nume_raport citeste configuatia cit_fis_alocare_ain, cit_fis_alocare_din, cit_fis_alocare_dou, cit_fis_alocare_par, cit_fis_alocare_num indica in raportul manevrelor pornirea programului preia condurile pentru elementele dinamice din interfata HEschema.uir – init_nume_controale incarca ecranul distribuitor HEharta.uir

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 93

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

preia atributele de culoare pentru afisarile din diverse interfete initializeaza_achizitia - init_achizitie_hidroeol intializeaza canale de comunicatie - deschide_OPC, init_server_DS instaleaza MainCallback - distribuitor_comunicatie seteaza timer pentru MainCallback la 250 msec trece controlul aplicatie in mod RunUserInterface } /* functii de tip callback - apelate din ecrane */ cbf_iesire – apelata la apasarea butonului de iesire al oricarui ecran { incarca fereastra suprapusa de iesire – HMiesire.uir } cbf_iesire_da – confirmarea iesirii din program { salveaza valorile curente a achizitiei inchide canalele de comunicatie - stop_server_DS, inchide_OPC inchide interfata utilizator a programului } cbf_iesire_nu – infirma iesirea din program { sterge fereastra suprapusa de iesire } rutina dispan – sterge interfete ecran suprapuse cbf_siharta – incarca interfata modului distribuitor { incarca interfata "HEharta.uir" seteaza indicatorii pentru modulul distribuitor } cbf_schema – incarca interfata schema tehnologica a url asociata butonului Schema (din toate ecranele) { incarca interfata "HEschema.uir" seteaza indicatorii pentru interfata suprapusa - trans_hidroeol } cbf_siarhite – incarca interfata vizualizare arhitecturii sistemului asociata butonului Sinteza (din toate ecranele) { incarca interfata "HMraport.uir" seteaza indicatorii pentru interfata suprapusa - trans_hidroeol } cbf_grafic - incarca interfata vizualizare achizitie sub forma grafice/rapoarte asociata butoanelor Arhiva (din toate ecranele)si Grafice si rapoarte (ecrane Arhiva)

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 94

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

{ incarca interfata "HEgrafic.uir" seteaza indicatorii pentru interfata suprapusa - trans_grafic } cbf_grafic_sin - incarca interfata vizualizare achizitie sub forma grafice/valori tabelare asociata butonului Grafice si valori tabelare (ecrane Arhiva) { incarca interfata "Hegrafice_comparate.uir" seteaza indicatorii pentru interfata suprapusa - trans_grafic_sin } cbf_energii - incarca interfata vizualizare achizitie energii asociata butonului Energii si randamente(ecrane Arhiva) { incarca interfata "HMenzi.uir" seteaza indicatorii pentru interfata suprapusa - trans_energii } cbf_saparole - incarca interfata de service pentru configurarea parolelor asociata butonului Parole (ecrane Service) { solicita parola - parol daca parola e corecta incarca interfata "HEaparole.uir" seteaza indicatorii pentru interfata suprapusa - trans_saparole altfel indica eroare - ermes } rutina continua_parole – gestioneaza continuarea executie pentru o operatie parolata cbf_salocdin - incarca interfata de service pentru configurarea intrarilor digitale asociata butoanelor Service (din toate ecranele)si Conf.intrari digitale (ecrane Service) { incarca interfata "HEsalocdin.uir" seteaza indicatorii pentru interfata suprapusa } cbf_salocdou - incarca interfata de service pentru configurarea iesirilor digitale asociata butoului Conf.iesiri digitale (ecrane Service) { incarca interfata "HEsalocdou.uir" seteaza indicatorii pentru interfata suprapusa - trans_salocdou }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 95

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

cbf_salocain - incarca interfata de service pentru configurarea achitiei analogice asociata butoului Conf.intrari analogice (ecrane Service) { incarca interfata "HEsalocain.uir" seteaza indicatorii pentru interfata suprapusa - trans_salocain } cbf_salocaki - incarca interfata de service pentru configurarea intrarilor analogice asociata butoului Conf.achizitii analogice (ecrane Service) { incarca interfata "HEsalocaki.uir" seteaza indicatorii pentru interfata suprapusa - trans_sacomaki } cbf_salocnum - incarca interfata de service pentru configurarea controalelor numerice si a altor elemente ecran asociata butoului Conf.controale numerice (ecrane Service) { incarca interfata "HEsalocnum.uir" seteaza indicatorii pentru interfata suprapusa - trans_salocnum } cbf_unload_hidro – iesire din ecranele suprapuse prin apasare pe ecranul parinte { sterge interfata suprapusa } rutina afis_iesire – asigura miscarea usii din ecranul distribuitor rutina trans_siharta { seteaza controale ceas, conexiune_dispecer, led_general specifice interfetei HEsiharta.uir pune_sigle } rutina citeste_timp { preia timp in lunacrt, zicrt, ancrt preia timp in oracrt, mincrt, seccrt }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 96

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA Dispecer_HIDROEOL // Modulul HEdistrib.c – modulul distribuitor apelat in maincalback Interfete incluse: "HEfond.h" Rutine externe: verificare_OPC incarca_ecrane afisare verif_aki analiza_masuri_hidroeol Simulare_achizitie Rutine interne: distribuitor_comunicatie Cbf_timpaki cbf_permiteafisare rutina distribuitor_comunicatie { daca e intrerupere timer MainCallback incrementeaza nrapeluri incrementeaza timp_opc daca este intr-o interfata actualizeaza ceasul sistem daca este in regim simulat apeleaza simulare_achizitie daca este in interfata HEschema daca nrapeluri este par apeleaza afisare altfel apeleaza analiza_masuri_hidroeol daca timp_opc==timpapelopc apeleaza verificare_OPC daca s-au primit date de la PLC timpapelopc=120 pt. asteptarea unui nou set de date altfel timpapelopc=60 pt. incercarea unei noi citiri initializeaza timp_opc altfel revenire } cbf_timpaki { daca a expirat timerul de achizitie apeleaza verif_aki altfel revenire } cbf_permiteafisare – intarziere a afisarii la pornirea aplicatie { daca a expirat timerul de achizitie permite_afisare=1 dezactiveaza timer_permiteafisare altfel revenire }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 97

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA Dispecer_HIDROEOL // Modulul HEafisare.c Interfete incluse: HEsiarhite.h" Rutine externe: afis_led_unic_hidroeol afis_ledgeneral_hidroeol afis_mas_aloc_din afis_mas_aloc_ain afis_iesire afis_nuc afis_masuri_ana_hidroeol Rutine interne: cbf_afisare_sinteza afisare cbf_afisare_sinteza – afiseaza caracteristicile echipamentelor din inerfata arhitectura { daca s-a selectat un echipament daca exista vreun mesaj afisat sterge mesaj si ascunde casuta de afisare extrage din lista de mesaje mesajul afiseaza mesajul pe pozitia corespunzatoare indica mesaj afisat } rutina afisare { apeleaza afis_ledgeneral_hidroeol selecteaza in functie de ecran {HEharta: apeleaza afis_iesire // harta iesire din bucla de selectie HEschema: // schema monofilara apeleaza afis_masuri_ana_hidroeol apeleaza evalueaza si afiseaza controale conditionate-afis_nuc iesire din bucla de selectie HEsalocain: // alocare ain apeleaza masurile in coloana proprie - afis_mas_aloc_ain iesire din bucla de selectie HEsalocdin: // alocare din apeleaza masurile in coloana proprie - afis_mas_aloc_din iesire din bucla de selectie sfarsit selectie daca e deschisa interfata de alarmare HEalarme apleleaza rutina de afisare a alarmelor setate - afis_led_unic_hidroeol }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 98

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA Dispecer_HIDROEOL // Modulul HEaraport.c – modul de salvare rapoarte de evenimente si manevre si afisare in lista curenta Interfete incluse: "HEschema.h" Rutine externe: ermes1 pune_sigle scrie_art intro_rap DeschideSQL InchideSQL TransferRap Rutine interne: update_raport_hidroeol intro_rap afis_el_rapd init_nume_raport tip_rap raportd_hidroeol rutina init_nume_raport { preia data curenta initializeaza bufferul de afisare a unei linii de raport } rutina intro_rap { selecteaza cromatica corespunzatoare evenimentului de afisat adauga evenimentul de afisat in lista derulanta de afisare a evenimentelor din ecranul HEschema } rutina update_raport_hidroeol { daca exista evenimente de inregistrat in baza de date deschide o noua conexiune la baza de date – DeschideSQL calculeaza numarul de evenimente de inscris din bufferul local cat timp mai exista evenimente apeleaza rutina de transfer a evenimentului dupa formatarea corespunzatoare a sirului - TransferRap inchide conexiunea deschisa - InchideSQL } rutina afis_el_rapd – rutina afiseaza un element de tip manevra operator { extrage elementele cod, codel, ora, min, sec din articolul manevra compune sirul de afisare timp selecteaza dupa valoare cod

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 99

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

100:"Pornire program" apeleaza rutina intro_rap iesire din bucla de selectie 1: "Stabilire comunicatie cu automatul" apeleaza rutina intro_rap iesire din bucla de selectie 11: "Pierdere a legaturii cu automatul" apeleaza rutina intro_rap iesire din bucla de selectie 190: "Elemente de raport cu data eronata” apeleaza rutina intro_rap iesire din bucla de selectie 199: "Oprire program" apeleaza rutina intro_rap iesire din bucla de selectie 208: "Intrare afisare masuri " apeleaza rutina intro_rap iesire din bucla de selectie 209: "Iesire afisare masuri " apeleaza rutina intro_rap iesire din bucla de selectie 220: "Fisier achiz. nu se deschide la scriere" apeleaza rutina intro_rap iesire din bucla de selectie 221: "Fisier achiz. nu se deschide la citire" apeleaza rutina intro_rap iesire din bucla de selectie 222: "Fisier raport nu se deschide la scriere" apeleaza rutina intro_rap iesire din bucla de selectie 223: "Fisier raport nu se deschide la citire" apeleaza rutina intro_rap iesire din bucla de selectie 150: "Alarma","Depasire limita maxima putere activa " se indica punctul de masura apeleaza rutina intro_rap iesire din bucla de selectie 151: "Anulare al","Depasire limita maxima putere activa " se indica punctul de masura apeleaza rutina intro_rap iesire din bucla de selectie 154: "Alarma","Depasire limita superioara tensiune " se indica punctul de masura apeleaza rutina intro_rap iesire din bucla de selectie 155: "Anulare al","Depasire limita superioara tensiune " se indica punctul de masura apeleaza rutina intro_rap iesire din bucla de selectie 158: "Alarma","Depasire limita inferioara tensiune " se indica punctul de

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 100

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

masura apeleaza rutina intro_rap iesire din bucla de selectie 159: "Anulare al","Depasire limita inferioara tensiune " se indica punctul de masura apeleaza rutina intro_rap iesire din bucla de selectie 120: "Intrare in ecranul de parole - supervizor: cu parola ...."

apeleaza rutina intro_rap iesire din bucla de selectie 121: "Modificare configurare …" apeleaza rutina intro_rap iesire din bucla de selectie 122: "Nu s-a citit fisierul de configurare …" apeleaza rutina intro_rap iesire din bucla de selectie sfarsit selectie } rutina afis_el_rap rutina afiseaza un element de tip manevra operator { extrage elementele tip_ev, codel, ora, min, sec din articolul eveniment compune sirul de afisare timp selecteaza dupa valoare tip_ev 1: eveniment comanda se extrage numele comenzii din dou_nume_s

apeleaza rutina intro_rap iesire din bucla de selectie 10: eveniment alarma/preventiv/conectat/ intrare digitala se extrage numele intrarii din din_nume_s apeleaza rutina intro_rap iesire din bucla de selectie 20: eveniment anulare alarma/anulare preventiv/deconectat/ intrare dig. se extrage numele intrarii din din_nume_s apeleaza rutina intro_rap iesire din bucla de selectie 30: eveniment "Depasire limita superioara: " marime analogica se extrage numele intrarii din ain_nume_s apeleaza rutina intro_rap iesire din bucla de selectie 31: eveniment "Depasire limita inferioara: " marime analogica se extrage numele intrarii din ain_nume_s apeleaza rutina intro_rap iesire din bucla de selectie 35: eveniment "Iesire din domeniul de masura: " marime analogica se extrage numele intrarii din ain_nume_s apeleaza rutina intro_rap iesire din bucla de selectie

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 101

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

30: eveniment "Revenire in limite (l.sup): " marime analogica se extrage numele intrarii din ain_nume_s apeleaza rutina intro_rap iesire din bucla de selectie 31: eveniment "Revenire in limite (l.inf):" marime analogica se extrage numele intrarii din ain_nume_s apeleaza rutina intro_rap iesire din bucla de selectie 35: eveniment " Revenire in domeniul de masura: " marime analogica se extrage numele intrarii din ain_nume_s apeleaza rutina intro_rap iesire din bucla de selectie sfarsit selectie } rutina raportd_hidroeol – introduce un element in raportul manevrelor { pregateste inregistrarea manevrei introduce inregistrarea - scrie_raportd_hidroeol(); daca este in Heschema reafiseaza raportul afirap } rutina afirap { initializeaza variabile de lucru raport daca este in ecran de afisare raport citeste raportul pentru ziua selectata daca citirea s-a efectuat cu succes vizualizeaza_raport_hidroeol altfel indica eroare } rutina vizualizeaza_raport_hidroeol {

sterge fereastra de vizualizare a raportului concateneaza mesajul de titlu:

" HIDROEOL - Raportul evenimentelor din data:..." apeleaza intro_rap extrage numarul de evenimente si numarul de manevre operator cat timp mai exista evenimente sau manevre neafisate

extrage timpul cel mai mic daca el apartine unui eveniment

apeleaza afi_el_rap altfel

apeleaza afi_el_rad sfarsit cat timp }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 102

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA Dispecer_HIDROEOL // Modulul HEaraport.c – modul de salvare a achizitiei analogice // actiunea se efectueaza la expirarea timerului timp_aki din interfata HEfond Rutine externe: init_nume_raport DeschideSQL InchideSQL TransferAki Rutine interne: init_achizitie_hidroeol create_fis_aki incarca_nume trimite_timp rutina pornire_achizitie_hidroeol {

initializeaza structurile de citire a valorilor analigice tabfmax si mas_pre } rutina init_achizitie_hidroeol {

preia data curenta si o salveaza in zinew, lunanew, annew calculeaza lungimea articolelor pentru fiecare din categoriile de tabele de achizitie

} rutina scrie_aki_hidroeol { daca in tabfmax exista valori citite compara valorile din tabfmax cu cele precedente din mas_pre

daca valorile nu sunt egale muta valorile din tabfmax in mas_pre si in zona de transfer

spre baza de date initializeaza tabfmax

altfel initializeaza tabfmax } rutina create_fis_aki {

creaza un fisier temporar pt. salvarea datelor analogice daca nu se realizeaza conexiunea la baza de date

} rutina verif_aki { citeste timpul actual in oranew, minnew, secnew daca a trecut un minut

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 103

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

daca oranew este 0 zi noua la prima trecere apeleaza init_achizitie_hidroeol init_nume_raport

datanew[0]=zinew; pasinzi=1;

altfel daca este aceeasi ora

daca minutnew e mai mare decat 30 la prima trecere daca mai exista loc pentru mutare date in zona de transfer

scrie_aki_hidroeol altel

muta datele din zona de transfer in baza de date - muta_aki_bd scrie_aki_hidroeol

altfel daca a expirat rata de achizitie pentru oricare structura

daca mai exista loc pentru mutare date in zona de transfer

scrie_aki_hidroeol altel

muta datele din zona de transfer in baza de date - muta_aki_bd

scrie_aki_hidroeol o data pe ora trimte ceasul calculator automatului programabil – trimite_timp

}

rutina muta_aki_bd {

DeschideSQL TransferAki InchideSQL

} rutina trimite_timp {

impacheteaza timp calculator in formatul inteles de automatul programabil

pune cod_comanda=10 }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 104

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA Dispecer_HIDROEOL // Modulul HEdialog.c – modul de generare a mesajelor de eroare a manevrelor sau atentionare a operatorului Interfete incluse: "Hermes.h", "Hatmes.h" Rutine externe: raportd_hidroeol cbf_iesire_da Rutine interne: ermes ermes1 atmes rutina ermes {

preia din parametri titlu interfetei si numarul mesajului de eroare afiseaza in panelul Hermes eroarea de operare

} cbf_mesajer { descarca panelul suprapus Hermes } rutina atmes {

preia din parametri titlu interfetei si numarul mesajului de atentionare afiseaza in panelul Hatmes atentionarea

} cbf_mesajat { descarca panelul suprapus Hatmes } rutina ermes1 { se selecteaza dupa parametrul rutinei 26: ermes("Eroare canal comunicatie","Nu se transfera mesajul automatului" iesire din bucla de selectie; 27: ermes("Eroare canal comunicatie","Nu se citeste automatul "

dispare sigla de comunicatie iesire din bucla de selectie

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 105

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

127:ermes("Eroare interfata seriala modem", "Nu accepta configurarea - resursa devine nefunctionala"

dispare sigla de comunicatie iesire din bucla de selectie

31: ermes("Eroare vizualizare achizitie istorica","Data in viitor" iesire din bucla de selectie

32: ermes("Eroare vizualizare achizitie istorica","Zi inexistenta" iesire din bucla de selectie

41: ermes("Eroare vizualizare raport","Data in viitor" iesire din bucla de selectie

42: ermes("Eroare vizualizare raport","Zi inexistenta" iesire din bucla de selectie

45: ermes("Eroare vizualizare raport"," Nu exista fisier raport " iesire din bucla de selectie

49: ermes("Eroare configuratie","Fisierul de configuratie pentru aceasta data este incorect sau nu exista" iesire din bucla de selectie

65: ermes("Eroare afisare energii","Pe parcursul anului s-a schimbat contorul"

iesire din bucla de selectie 201: ermes("Eroare de conectare","Conexiunea la serverul SQL nu se realizeaza" iesire din bucla de selectie

202: ermes("Eroare de conectare","Deschiderea Conexiunii la serverul SQL nu se realizeaza" iesire din bucla de selectie

203: ermes("Eroare de deconectare", "Deconectarea de la serverul SQL nu se realizeaza"

iesire din bucla de selectie 204: ermes("Eroare la inserare", "Inserarea in baza de date nu s-a facut cu succes"

iesire din bucla de selectie 205: ermes("Eroare la reprezentarea grafica", "Reprezentarea grafica nu s-a facut cu succes"

iesire din bucla de selectie 206: ermes("Eroare", "Nu exista date in baza de date pentru data selectata"

iesire din bucla de selectie 207: ermes("Eroare la reprezentarea grafica", "Nu exista marimi incarcate");

iesire din bucla de selectie 208: ermes("Eroare",

"Nu exista baza de date pentru anul selectat"

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 106

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

iesire din bucla de selectie 250: ermes("Eroare de operare",

"Referinta introdusa este in afara limitelor admise" 1055: //nu se poate config. serialul InstallMainCallback (temporar, NULL, 1) ermes("Alarma",

"Magistrala de comunicatie blocata! Reporniti calculatorul!" InstallCtrlCallback (prer,Hermes_mesok, cbf_iesire_da, 0)

} rutina atmes1 { 10:atmes("Eroare de operare","Comanda locala - Nu se poate actiona" }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 107

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA Dispecer_HIDROEOL // Modulul HEsalocain.c – modul de gestiune a configurarilor intrari analogice Interfete incluse: "HEsalocain.h" Rutine externe: parol raportd_hidroeol ermes1 scrie_config_hidroeol conversie_float_CAN SalvareCfgAin_db Rutine interne: trans_salocain ctrlmode_alocare_ain restaurare_linii_lipsa_ain calcul_aii cit_fis_alocare_ain load_ecran_aloc_ain rutina trans_salocain {

initializeaza ceas, sigla conexiune, led general val_min=0; val_max=nrs_ainT1; insereaza numele url-uri in cele 16 controale de selectare initializeaza: grup_lucruain=1 afis_offset=1 ind_modifica=0 nrsemnal_grup=16 apeleaza comuta_ain } rutina comuta_ain {

pentru grup_lucruain stabileste zonele ce pot fi modificate apeleaza restaurare_linii_lipsa_ain pentru toate semnalele muta configuratia in zona de lucru: ain_nume_a, ain_nume_n, ain_val_j, ain_val_f, ain_val_r, ain_val_d, ain_val_o, ain_val_i, ain_val_l, ain_val_ai, ain_val_al stabileste daca ultimul grup e complet si retine-i parametri apleleza rutina load_ecran_aloc_ain fa toate controalele ecran indicatoare

} rutina scrie_fis_alocare_ain {

daca exista fisierul cfg_ain pentru toate intrarile analogice salveaza configuratia pentru toate intrarile de tip intern salveaza stivele de operanzi si operatii

inchide fisierul

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 108

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

} rutina cit_fis_alocare_ain(void) {

initializeaza zonele de citire pentru aplicatie a configurarii ain daca fisierul cfg_ain nu exista

scrie_fis_alocare_ain – vid scrie in raportul evenimentelor - raportd_hidroeol(122,4) ermes1(504)

altfel deschide fisierul cfg_ain in citire citeste toti parametri ain in zonele de lucru ale aplicatiei cisteste toate stivele de evaluare intrari interne inchide fisierul

} rutina incarca_ecran_lucru_ain - se realizeaza la trecerea de la o grupa la alta {

incarca in cele 16 linii vizibile pe ecran valorile aferente grupului selectat cu cele trei variante posibile:

16 linii pentru grupurile complete care nu sunt intrari interne 8 linii pentru grupurile complete care sunt intrari interne nr. Linii ramase pt. grupurile incomplete

} rutina salveaza_ecran_lucru_ain(void)- se realizeaza la trecerea de la o grupa la alta {

preia din linii vizibile pe ecran valorile aferente cu cele trei variante posibile:

16 linii pentru grupurile complete care nu sunt intrari interne 8 linii pentru grupurile complete care sunt intrari interne nr. Linii ramase pt. grupurile incomplete

depune valorile preluate in buferele de lucru specifice ecranului pe pozitiile proprii

} rutina restaurare_linii_lipsa_ain(void) {

completeaza liniile lipsa dupa o navigare printr-o grupa incompleta

} rutina load_ecran_aloc_ain(int nr_minain,int nr_maxain) {

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 109

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

stabileste dimensiunilegrupurilor incomplete si le incaeca in selectorul de grup pentru prima pozitie de apartenenta a intrarii analogice grup_lucruain=1 apleleaza incarca_ecran_lucru_ain

} rutina afis_mas_aloc_ain(void) {

preia valorile convertite ale intrarilor analogice si le depune pe pozitia specifica preia valorile CAN ale intrarilor analogice si le depune pe pozitia specifica

} rutina ctrlmode_alocare_ain(tip) // tip=0 pt.normal sau tip=1 pt.indicator; {

daca tip este zero seteaza toate controalele de configurare in mod normal

altfel seteaza toate controalele de configurare in mod indicator

} cbf_grup_ain //rutina aferenta comutatorului de grup {

apeleaza salveaza_ecran_lucru_ain apeleaza restaurare_linii_lipsa_ain pune selectorul de grup pe pozitia selectata apleleaza incarca_ecran_lucru_ain

} cbf_nrautomatain //rutina aferenta comutatorului de apartenenta a intrarii {

apeleaza salveaza_ecran_lucru_ain preia valoarea selectorului apeleaza restaurare_linii_lipsa_ain functie de valoarea selectorului stabileste din constantele de cofigurare inceputul si sfarsitul domeniului se fac si corectiile pt. marimile interne se apeleaza load_ecran_aloc_ain(val_min,val_max);

} cbf_modificaconf_ain //apelata pe butonul ecran <<Modificare configuratie>>

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 110

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

{ daca se introduce o parola de tip supervizor prin rutina parol se lanseaza in executie rutima continua_modificaconf_ain

} rutina continua_modificaconf_ain(int tip_parola) {

in functie de parola introdusa se stabilesc limitele de configurare accesibile

ind_modifica=1 se trec controalele in mod normal - ctrlmode_alocare_ain(0

apleleaza incarca_ecran_lucru_ain() } cbf_salveazaconf_ain //apelata pe butonul ecran <<Salveaza configuratie>> {

preia ultimul set de date din ecran - salveaza_ecran_lucru_ain transfera datele de configurare din zonele de lucru ale ecranului in cele de lucru a aplicatiei salveaza configurarea in fisierul cfg_ain scrie_fis_alocare_ain salveava configuratia in baza de date SalvareCfgAin_db readuce butonul <<Modificare configuratie>> in fata inscrie operatia in raportul manevrelor raportd_hidroeol(121,4)

} cbf_aintex //apelata pe toate selectoarele de operand din editorul de marimi interne {

la terminarea editarii valorii numerice sau daca se da dublu click stanga pe un operand aplicatia incarca intr-o ferestra suprapusa situata in vecinatatea controlului numele in clar al resursei avute in vedere

} cbf_sterg_aintex { sterge controlul de vizualizare la click asupra lui insusi } cbf_transferaut_ain //apelata pe butonul ecran <<Transfera date catre automat>> {

operatia este parolata si pentru o parola corecta lanseaza in executie conversie_float_CAN

seteaza crespunzator variabilele de control transfer cod_comanda=120 }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 111

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

cbf_tipar_alocain //apelata pe butonul ecran <<Tiparire>> {

formateaza buferele in care e pastrata configurare in mod de lucru curent in pagini de cate 60 de randuri formeaza antetul fiecarei pagini si o listeaza la imprimanta sistem

} //intrucat prezentarea prin pseudocod a procesului de calcul ar fi destul de dificil am preferat sa inseram direct codul lor sursa rutina evaluare_aii { float val,val1; unsigned char operatia,operatia_unara; int j; // oper1=0 nimic oper2=0 nimic // oper1=1 radical oper2=1 + // oper1=2 **2 oper2=2 - // oper1=3 **3 oper2=3 * // oper2=4 / val=autmas_hidroeol[0].mas_ain[aii[i][0].op-1]; operatia_unara=aii[i][0].oper1; switch(operatia_unara) { case 1: val=sqrt(val); break; case 2: val=pow(val,2); break; case 3: val=pow(val,3); break; case 9: val=aii[i][0].op; break; } for(j=1;j<8;j++) {operatia=aii[i][j-1].oper2; if(operatia==0) return(val); val1=autmas_hidroeol[0].mas_ain[aii[i][j].op-1]; operatia_unara=aii[i][j].oper1; switch(operatia_unara) { case 1: val1=sqrt(val); break; case 2: val1=pow(val,2); break; case 3: val1=pow(val,3); break; case 9: val1=aii[i][j].op; break; } switch(operatia) { case 1: val=val + val1; break; // adunare case 2: val=val - val1; break; // scadere case 3: val=val * val1; break; // inmultire case 4: if(val1>0) val=val/val1; break; // impartire } } return(val); }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 112

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

rutina calcul_aii { int i; for(i=0;i<nrs_ainintT;i++) {if(aii[i][0].op!=0) // exista tagul intern autmas_hidroeol[0].mas_ain[nrs_ain_maxT-nrs_ainintT+i]=evaluare_aii(i); } }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 113

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA Dispecer_HIDROEOL // Modulul HEsalocdin.c – modul de gestiune a configurarilor intrari digitale Interfete incluse: "HEsalocdin.h" Rutine externe: parol raportd_hidroeol ermes1 scrie_config_hidroeol conversie_float_CAN SalvareCfgDin_db Rutine interne: trans_salocdin ctrlmode_alocare_din restaurare_linii_lipsa_din calcul_dii cit_fis_alocare_din load_ecran_aloc_din rutina trans_salocdin {

initializeaza ceas, sigla conexiune, led general val_min=0; val_max=nrs_dinT1; insereaza numele url-uri in cele 16 controale de selectare initializeaza: grup_lucrudin=1 afis_offset=1 ind_modifica=0 nrsemnal_grup=16 apeleaza comuta_din } rutina comuta_din {

pentru grup_lucrudin stabileste zonele ce pot fi modificate apeleaza restaurare_linii_lipsa_din pentru toate semnalele muta configuratia in zona de lucru: din_nume_a, din_nume_n, din_val_j, din_val_f, din_val_r, din_val_d, din_val_o, din_val_i, din_val_l, din_val_ai, din_val_al stabileste daca ultimul grup e complet si retine-i parametri apleleza rutina load_ecran_aloc_din fa toate controalele ecran indicatoare

} rutina scrie_fis_alocare_din {

daca exista fisierul cfg_din pentru toate intrarile digitale salveaza configuratia pentru toate intrarile de tip intern salveaza stivele de operanzi si operatii

inchide fisierul

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 114

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

} rutina cit_fis_alocare_din(void) {

initializeaza zonele de citire pentru aplicatie a configurarii din daca fisierul cfg_din nu exista

scrie_fis_alocare_din – vid scrie in raportul evenimentelor - raportd_hidroeol(122,4) ermes1(504)

altfel deschide fisierul cfg_din in citire citeste toti parametri din in zonele de lucru ale aplicatiei cisteste toate stivele de evaluare intrari interne inchide fisierul

} rutina incarca_ecran_lucru_din - se realizeaza la trecerea de la o grupa la alta {

incarca in cele 16 linii vizibile pe ecran valorile aferente grupului selectat cu cele trei variante posibile:

16 linii pentru grupurile complete care nu sunt intrari interne 8 linii pentru grupurile complete care sunt intrari interne nr. Linii ramase pt. grupurile incomplete

} rutina salveaza_ecran_lucru_din(void)- se realizeaza la trecerea de la o grupa la alta {

preia din linii vizibile pe ecran valorile aferente cu cele trei variante posibile:

16 linii pentru grupurile complete care nu sunt intrari interne 8 linii pentru grupurile complete care sunt intrari interne nr. Linii ramase pt. grupurile incomplete

depune valorile preluate in buferele de lucru specifice ecranului pe pozitiile proprii

} rutina restaurare_linii_lipsa_din(void) {

completeaza liniile lipsa dupa o navigare printr-o grupa incompleta

} rutina load_ecran_aloc_din(int nr_mindin,int nr_maxdin) {

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 115

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

stabileste dimensiunilegrupurilor incomplete si le incaeca in selectorul de grup pentru prima pozitie de apartenenta a intrarii digitale grup_lucrudin=1 apleleaza incarca_ecran_lucru_din

} rutina afis_mas_aloc_din(void) {

preia valorile convertite ale intrarilor digitale si le depune pe pozitia specifica preia valorile CAN ale intrarilor digitale si le depune pe pozitia specifica

} rutina ctrlmode_alocare_din(tip) // tip=0 pt.normal sau tip=1 pt.indicator; {

daca tip este zero seteaza toate controalele de configurare in mod normal altfel seteaza toate controalele de configurare in mod indicator

} cbf_grup_din //rutina aferenta comutatorului de grup {

apeleaza salveaza_ecran_lucru_din apeleaza restaurare_linii_lipsa_din pune selectorul de grup pe pozitia selectata apleleaza incarca_ecran_lucru_din

} cbf_nrautomatdin //rutina aferenta comutatorului de apartenenta a intrarii {

apeleaza salveaza_ecran_lucru_din preia valoarea selectorului apeleaza restaurare_linii_lipsa_din functie de valoarea selectorului stabileste din constantele de cofigurare inceputul si sfarsitul domeniului se fac si corectiile pt. marimile interne se apeleaza load_ecran_aloc_din(val_min,val_max);

} cbf_modificaconf_din //apelata pe butonul ecran <<Modificare configuratie>> {

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 116

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

daca se introduce o parola de tip supervizor prin rutina parol se lanseaza in executie rutima continua_modificaconf_din

} rutina continua_modificaconf_din(int tip_parola) {

in functie de parola introdusa se stabilesc limitele de configurare accesibile

ind_modifica=1 se trec controalele in mod normal - ctrlmode_alocare_din(0

apleleaza incarca_ecran_lucru_din() } cbf_salveazaconf_din //apelata pe butonul ecran <<Salveaza configuratie>> {

preia ultimul set de date din ecran - salveaza_ecran_lucru_din transfera datele de configurare din zonele de lucru ale ecranului in cele de lucru a aplicatiei salveaza configurarea in fisierul cfg_din scrie_fis_alocare_din salveava configuratia in baza de date SalvareCfgDin_db readuce butonul <<Modificare configuratie>> in fata inscrie operatia in raportul manevrelor raportd_hidroeol(121,4)

} cbf_dintex //apelata pe toate selectoarele de operand din editorul de marimi interne {

la terminarea editarii valorii numerice sau daca se da dublu click stanga pe un operand aplicatia incarca intr-o ferestra suprapusa situata in vecinatatea controlului numele in clar al resursei avute in vedere

} cbf_sterg_dintex {

sterge controlul de vizualizare la click asupra lui insusi } cbf_transferaut_din //apelata pe butonul ecran <<Transfera date catre automat>> {

operatia este parolata si pentru o parola corecta lanseaza in executie conversie_float_CAN

seteaza crespunzator variabilele de control transfer cod_comanda=120 }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 117

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

cbf_tipar_alocdin //apelata pe butonul ecran <<Tiparire>> {

formateaza buferele in care e pastrata configurarea in mod de lucru curent in pagini de cate 60 de randuri formeaza antetul fiecarei pagini si o listeaza la imprimanta sistem

} //intrucat prezentarea prin pseudocod a procesului de calcul ar fi destul de dificila am preferat sa inseram direct codul lor sursa rutina char evaluare_dii { unsigned char val=0,val1=0,operatia=0,tip1=0,tip2=0; int j=0; float valf,val1f; //oper1=0 nimic oper2=0 nimic pt.primele 2 oper1=3 analogic oper2=6 > //oper1=1 negare oper2=1 & sunt in plus oper1=4 constanta oper2=7 >= //oper1=2 iesire oper2=2 | oper2=8 < // oper2=3 ^ oper2=9 <= tip1=dii[i][0].oper1; //extrage operand 1 switch(tip1) { case 0: val=din_val_mT[dii[i][0].op-1]; break; case 1: val=din_val_mT[dii[i][0].op-1]; val=~val & 0x1; break; //non case 2: val=dou_val_oT[dii[i][0].op-1]; break; //iesire digitala case 3: valf=autmas_hidroeol[0].mas_ain[dii[i][0].op-1]; break; //intrare analogica case 4: valf=dii[i][0].op; break; //constanta } operatia=dii[i][0].oper2; // prima operatie if(operatia==0) return(val); tip2=dii[i][1].oper1; // extrage operand 2 switch(tip2) { case 0: val1=din_val_mT[dii[i][1].op-1]; break; case 1: val1=din_val_mT[dii[i][1].op-1]; val1=~val1 & 0x1; break; //non case 2: val1=dou_val_oT[dii[i][1].op-1]; break; //iesire digitala case 3: val1f=autmas_hidroeol[0].mas_ain[dii[i][1].op-1]; break; //intrare analogica

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 118

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

case 4: val1f=dii[i][1].op; break; //constanta } switch(operatia) { case 1: val=val & val1; break; // si case 2: val=val | val1; break; // sau case 3: val=val ^ val1; break; // sau exclusiv case 6: if(valf>val1f) return(1); // comparare cu > else return(0); case 7: if(valf>=val1f) return(1); // comparare cu >= else return(0); case 8: if(valf<val1f) return(1); // comparare cu < else return(0); case 9: if(valf<=val1f) return(1); // comparare cu <= else return(0); } for(j=2;j<8;j++) // pt restul operanzilor {operatia=dii[i][j-1].oper2; if(operatia==0) return(val); tip2=dii[i][j].oper1; switch(tip2) { case 0: val1=din_val_mT[dii[i][j].op-1]; break; case 1: val1=din_val_mT[dii[i][j].op-1]; val1=~val1 & 0x1; break; //non case 2: val1=dou_val_oT[dii[i][j].op-1]; break; //iesire digitala } switch(operatia) { case 1: val=val & val1; break; // si case 2: val=val | val1; break; // sau case 3: val=val ^ val1; break; // sau exclusiv } } return(val); } rutina calcul_dii { int i,j; unsigned char vv; for(i=0;i<nrs_dinintT;i++) {if(dii[i][0].op!=0) // exista tagul intern din_val_mT[nrs_din_maxT-nrs_dinintT+i]=evaluare_dii(i); } for(i=nrs_din_maxT-nrs_dinintT;i<nrs_din_maxT;i=i+8) { vv=0;

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 119

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

for(j=0;j<8;j++) { vv=vv+din_val_mT[i+j]*pow(2,j); } autmas_hidroeol[0].mascit[i/8]=vv; } }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 120

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA Dispecer_HIDROEOL // Modulul HEsalocdou.c – modul de gestiune a configurarilor iesiri digitale Interfete incluse: "HEsalocdou.h" Rutine externe: parol raportd_hidroeol ermes1 scrie_config_hidroeol conversie_float_CAN SalvareCfgDou_db Rutine interne: trans_salocdou ctrlmode_alocare_dou restaurare_linii_lipsa_dou cit_fis_alocare_dou load_ecran_aloc_dou rutina trans_salocdou {

initializeaza ceas, sigla conexiune, led general val_min=0; val_max=nrs_douT1; insereaza numele url-uri in cele 16 controale de selectare initializeaza: grup_lucrudou=1 afis_offset=1 ind_modifica=0 nrsemnal_grup=16 apeleaza comuta_dou } rutina comuta_dou {

pentru grup_lucrudou stabileste zonele ce pot fi modificate apeleaza restaurare_linii_lipsa_dou pentru toate semnalele muta configuratia in zona de lucru: dou_nume_a, dou_nume_n, dou_val_j, dou_val_f, dou_val_r, dou_val_d, dou_val_o, dou_val_i, dou_val_l, dou_val_ai, dou_val_al stabileste daca ultimul grup e complet si retine-i parametri apleleza rutina load_ecran_aloc_dou fa toate controalele ecran indicatoare

} rutina scrie_fis_alocare_dou {

daca exista fisierul cfg_dou pentru toate iesirile digitale salveaza configuratia pentru toate iesirile de tip intern salveaza stivele de operanzi si operatii

inchide fisierul

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 121

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

} rutina cit_fis_alocare_dou(void) {

initializeaza zonele de citire pentru aplicatie a configurarii dou daca fisierul cfg_dou nu exista

scrie_fis_alocare_dou – vid scrie in raportul evenimentelor - raportd_hidroeol(122,4) ermes1(504)

altfel deschide fisierul cfg_dou in citire citeste toti parametri dou in zonele de lucru ale aplicatiei cisteste toate stivele de evaluare iesiri interne inchide fisierul

} rutina incarca_ecran_lucru_dou - se realizeaza la trecerea de la o grupa la alta {

incarca in cele 16 linii vizibile pe ecran valorile aferente grupului selectat cu cele trei variante posibile:

16 linii pentru grupurile complete nr. Linii ramase pt. grupurile incomplete

} rutina salveaza_ecran_lucru_dou(void)- se realizeaza la trecerea de la o grupa la alta {

preia dou linii vizibile pe ecran valorile aferente cu cele trei variante posibile:

16 linii pentru grupurile complete nr. Linii ramase pt. grupurile incomplete

depune valorile preluate in buferele de lucru specifice ecranului pe pozitiile proprii

} rutina restaurare_linii_lipsa_dou(void) {

completeaza liniile lipsa dupa o navigare printr-o grupa incompleta

} rutina load_ecran_aloc_dou(int nr_mindou,int nr_maxdou) {

stabileste dimensiunilegrupurilor incomplete si le incaeca in selectorul de grup pentru prima pozitie de apartenenta a iesirii digitale

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 122

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

grup_lucrudou=1 apleleaza incarca_ecran_lucru_dou

} rutina afis_mas_aloc_dou(void) {

preia valorile convertite ale iesirilor digitale si le depune pe pozitia specifica preia valorile CAN ale iesirilor digitale si le depune pe pozitia specifica

} rutina ctrlmode_alocare_dou(tip) // tip=0 pt.normal sau tip=1 pt.indicator; {

daca tip este zero seteaza toate controalele de configurare in mod normal

altfel seteaza toate controalele de configurare in mod indicator

} cbf_grup_dou //rutina aferenta comutatorului de grup {

apeleaza salveaza_ecran_lucru_dou apeleaza restaurare_linii_lipsa_dou pune selectorul de grup pe pozitia selectata apleleaza incarca_ecran_lucru_dou

} cbf_nrautomatdou //rutina aferenta comutatorului de apartenenta a iesirii {

apeleaza salveaza_ecran_lucru_dou preia valoarea selectorului apeleaza restaurare_linii_lipsa_dou functie de valoarea selectorului stabileste dou constantele de cofigurare inceputul si sfarsitul domeniului se apeleaza load_ecran_aloc_dou(val_min,val_max);

} cbf_modificaconf_dou //apelata pe butonul ecran <<Modificare configuratie>> {

daca se introduce o parola de tip supervizor prin rutina parol se lanseaza in executie rutima continua_modificaconf_dou

} rutina continua_modificaconf_dou(int tip_parola)

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 123

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

{ in functie de parola introdusa se stabilesc limitele de configurare accesibile

ind_modifica=1 se trec controalele in mod normal - ctrlmode_alocare_dou

apleleaza incarca_ecran_lucru_dou() } cbf_salveazaconf_dou //apelata pe butonul ecran <<Salveaza configuratie>> {

preia ultimul set de date dou ecran - salveaza_ecran_lucru_dou transfera datele de configurare dou zonele de lucru ale ecranului in cele de lucru a aplicatiei salveaza configurarea in fisierul cfg_dou scrie_fis_alocare_dou salveava configuratia in baza de date SalvareCfgDou_db readuce butonul <<Modificare configuratie>> in fata inscrie operatia in raportul manevrelor raportd_hidroeol(121,4)

} cbf_transferaut_dou //apelata pe butonul ecran <<Transfera date catre automat>> {

operatia este parolata si pentru o parola corecta lanseaza in executie conversie_float_CAN

seteaza crespunzator variabilele de control transfer cod_comanda=120 } cbf_tipar_alocdou //apelata pe butonul ecran <<Tiparire>> {

formateaza buferele in care e pastrata configurare in mod de lucru curent in pagini de cate 60 de randuri formeaza antetul fiecarei pagini si o listeaza la imprimanta sistem

}

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 124

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA HIDROEOL // Modulul HEsql.c – modulul de gestiune a operatiilor cu baza de date Hidroeol Module incluse: "HEdefcom.h" Rutine interne: DeschideSQL InchideSQL VerificCon SalvareCfgDin_db SalvareCfgDou_db SalvareCfgAin_db SalvareCfgAki_db TransferAki TransferRap rutina DeschideSQL { initieaza deschiderea unei noi conexiuni la baza de date; seteaza stringul de conexiune la baza de date; deschide conexiunea la baza de date; returneaza handler-ul conexiunii deschise; } rutina InchideSQL { inchide conexiunea a carui handler ii este transmis ca parametru; } rutina VerificCon { verifica starea conexiunii a carui handler ii este transmis ca parametru prin preluarea atributelor acestei conexiunii; } rutina SalvareCfgDin_db { opreste timerele de achizitie date si rapoarte; deschide o conexiune la baza de date apeland DeschideSQL; preia data si timpul sistemului de calcul pe care ruleaza aplicatia; introduce in baza de date configurarea intrarilor numerice apeland InserareDin_hidroeol; inchide conexiunea la baza de date apeland InchideSQL; porneste timere de achizitie date si rapoarte; afiseaza un mesaj de tip popup in cazul in care introducerea datelor in baza de date s-a facut cu succes; } rutina InserareDin_hidroeol { verifica daca exista configurari ale intrarilor numerice; daca nu exista configurari anterioare seteaza indicele configurarii curente; altfel selecteaza indicele ultimei configurari din baza de date; seteaza indicele configurarii curente la valoarea indicelului ultimei configurari+1;

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 125

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

pentru fiecare intrare numerica corespunzatoare configurarii curente executa introduce in baza de date datele caracteristice; } rutina SalvareCfgDou_db { opreste timerele de achizitie date si rapoarte; deschide o conexiune la baza de date apeland DeschideSQL; preia data si timpul sistemului de calcul pe care ruleaza aplicatia; introduce in baza de date configurarea iesirilor numerice apeland InserareDou_hidroeol; inchide conexiunea la baza de date apeland InchideSQL; porneste timere de achizitie date si rapoarte; afiseaza un mesaj de tip popup in cazul in care introducerea datelor in baza de date s-a facut cu succes; } rutina InserareDou_hidroeol { verifica daca exista configurari ale iesirilor numerice; daca nu exista configurari anterioare seteaza indicele configurarii curente; altfel selecteaza indicele ultimei configurari din baza de date; seteaza indicele configurarii curente la valoarea indicelului ultimei configurari+1; pentru fiecare iesire numerica corespunzatoare configurarii curente executa introduce in baza de date datele caracteristice; } rutina SalvareCfgAin_db { opreste timerele de achizitie date si rapoarte; deschide o conexiune la baza de date apeland DeschideSQL; preia data si timpul sistemului de calcul pe care ruleaza aplicatia; introduce in baza de date configurarea intrarilor analogice apeland InserareAin_hidroeol; inchide conexiunea la baza de date apeland InchideSQL; porneste timere de achizitie date si rapoarte; afiseaza un mesaj de tip popup in cazul in care introducerea datelor in baza de date s-a facut cu succes; } rutina InserareAin_hidroeol { verifica daca exista configurari ale intrarilor analogice; daca nu exista configurari ale intrarilor analogice anterioare seteaza indicele configurarii curente;

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 126

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

altfel selecteaza indicele ultimei configurari analogice din baza de date; seteaza indicele configurarii curente la valoarea indicelului ultimei configurari+1; verifica daca exista configurari ale marimilor achizitionate; daca nu exista configurari de marimi achizitionate anterioare pentru fiecare intrare analogica corespunzatoare configurarii analogice curente executa introduce in baza de date datele caracteristice; altfel selecteaza indicele ultimei configurari de achizitie din baza de date; pentru fiecare intrare analogica corespunzatoare configurarii analogice curente executa introduce in baza de date datele caracteristice intrarilor analogice; introduce indicii noi configurarii de intrari analogice si indicii ultimei configurari de achizitie in baza de date; } rutina SalvareCfgAki_db { opreste timerele de achizitie date si rapoarte; deschide o conexiune la baza de date apeland DeschideSQL; preia data si timpul sistemului de calcul pe care ruleaza aplicatia; introduce in baza de date configurarea marimilor achizitionate apeland InserareAki_hidroeol; inchide conexiunea la baza de date apeland InchideSQL; porneste timere de achizitie date si rapoarte; afiseaza un mesaj de tip popup in cazul in care introducerea datelor in baza de date s-a facut cu succes; } rutina InserareAki_hidroeol { verifica daca exista configurari ale marimilor achizitionate; daca nu exista configurari ale marimilor achizitionate anterioare seteaza indicele configurarii curente; altfel selecteaza indicele ultimei configurari de achizitie din baza de date; seteaza indicele configurarii curente la valoarea indicelului ultimei configurari+1;

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 127

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

verifica daca exista configurari ale intrarilor analogice; daca nu exista configurari ale intrarilor analogice anterioare pentru fiecare marime achizitionata corespunzatoare configurarii de achizitie curente executa introduce in baza de date datele caracteristice marimilor achizitionate in tabele corespunzatoare ratelor de achizitie; altfel selecteaza indicele ultimei configurari analogice din baza de date; pentru fiecare marime achizitionata corespunzatoare configurarii de achizitie curente executa introduce in baza de date datele caracteristice marimilor achizitionate in tabele corespunzatoare ratelor de achizitie;; introduce indicii noi configurarii de achizitie si indicii ultimei configurari ale intrarilor analogice in baza de date; } rutina TransferAki { preia din baza de date indicele ultimei configurari de achizitie; preia din baza de date indicele ultimei marimi achizitionate din configuratia de achizitie; daca indicele ultimei marimi achizitionate nu este din categoria datelor care se achizitioneaza cu rata de 1 minut, respective 15 minute introduce in baza de date valoarea marimii si data la care s-a facut achizitia; } rutina TransferRap { verifica daca exista rapoarte de evenimente generate la un moment dat de timp; daca nu exista rapoarte de evenimente introduce in baza de date codul raportului, codul elementului care produce evenimentul si amprenta de timp a acestuia; }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 128

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA HIDROEOL // Modulul HEenergii.c – Tratarea interfetei de afisare a raportarilor orare, zilnice, lunare si bianuale ale energiilor si randamentelor Module si interfete incluse: "HEdefcom.h", "HEenergii.h" Rutine externe: DeschideSQL InchideSQL Rutine interne: rutina afi_eng_ore { preia anul, luna si ziua pentru care se doreste raportarea orara; initializeaza cu 0 bufferul de stocare a valorilor orare din baza de date; pentru fiecare ora din ziua selectata interogeaza tabelul din baza de date specific achizitiilor din luna selectata in functie de un interval orar; calculeaza sumele orare din valorile gasite in baza de date; } rutina afi_eng_zi { preia anul si luna pentru care se doreste raportarea zilnica; initializeaza cu 0 bufferul in care se vor stoca valorile zilnice calculate din baza de date; pentru fiecare zi din luna selectata interogeaza tabelul lunar din baza de date specific in functie de un interval zilnic; calculeaza sumele zilnice din valorile gasite in baza de date; } rutina afi_eng_lunare { preia anul pentru care se doreste raportarea lunara siinitializeaza cu 0 bufferul in care se vor stoca valorile lunare calculate din baza de date; pentru fiecare luna din anul selectat interogeaza tabelul lunar din baza de date specific; calculeaza sumele lunare din valorile gasite in baza de date; } rutina afi_eng_bianual { preia anul pentru care se doreste raportarea bianuala initializeaza cu 0

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 129

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

bufferul in care se vor stoca valorile bianuale calculate din baza de date; pentru fiecare luna din anul selectat interogeaza tabelul lunar din baza de date specific; calculeaza sumele lunare din valorile gasite in baza de date; calculeaza sumele bianuale din sumele lunare gasite in baza de date; } Rutine interne de tip callback function: cbf_tabele { alege tipul de raportare dorit; daca raportarea este orara afiseaza tabelul corespunzator acestei raportari (24 linii si 9 coloane); pentru fiecare din cele 9 coloane pentru fiecare din cele 24 de linii seteaza la valoarea 0 celulele tabelului orar; daca raportarea este zilnica afiseaza tabelul corespunzator acestei raportari (31 linii si 9 coloane) pentru fiecare din cele 9 coloane; pentru fiecare din cele 31 de linii seteaza la valoarea 0 celulele tabelului zilnic; daca raportarea este lunara afiseaza tabelul corespunzator acestei raportari (12 linii si 9 coloane) pentru fiecare din cele 9 coloane; pentru fiecare din cele 12 de linii seteaza la valoarea 0 celulele tabelului lunar; daca raportarea este bianuala afiseaza tabelul corespunzator acestei raportari (2 linii si 9 coloane) pentru fiecare din cele 9 coloane; pentru fiecare din cele 2 de linii seteaza la valoarea 0 celulele tabelului bianual; } cbf_zi { alege anul sau luna pentru care se doreste raportarea; preia valorile de an si luna din controalele specifice; sterge valorile din controlul care permite alegerea unei zile; daca anul este bisect pentru fiecare luna calendaristica

populeaza controlul care permite alegerea unei zile cu valori

specifice lunii respective din anul bisect; altfel

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 130

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

pentru fiecare luna calendaristica populeaza controlul care permite alegerea unei zile cu

valori specifice lunii respective din anul nebisect; } cbf_clear { alege ziua pentru care se doreste raportarea orara; pentru fiecare din cele 9 coloane pentru fiecare din cele 24 de linii seteaza la valoarea 0 celulele tabelului orar; } cbf_afis_eng { alege tipul de raportare dorit; deschide o conexiune la baza de date apeland DeschideSQL; daca raportarea este orara afiseaza valorile energiilor si randamentelor in celulele tabelul orar apeland afi_eng_ore in functie de numarul marimilor energetice din configurare; daca raportarea este zilnica afiseaza valorile energiilor si randamentelor in celulele tabelul zilnic apeland afi_eng_zi in functie de numarul marimilor energetice din configurare; daca raportarea este lunara afiseaza valorile energiilor si randamentelor in celulele tabelul lunar apeland afi_eng_lunare in functie de numarul marimilor energetice din configurare; daca raportarea este bianuala afiseaza valorile energiilor si randamentelor in celulele tabelul bianual apeland afi_eng_bianual in functie de numarul marimilor energetice din configurare; inchide conexiunea la baza de date apeland InchideSQL; }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 131

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA HIDROEOL // Modulul HEgrafic.c – Tratarea interfetei de afisare a graficelor si rapoartelor de evenimente Module si interfete incluse: "HEdefcom.h", "HEgrafic.h" Rutine externe: DeschideSQL InchideSQL ermes Rutine interne: rutina populare_ringuri { preia data selectata de utilizator si scala (intervalul orar) din controalele aferente; daca in baza de date exista configuratie de achizitie corespunzatoare intervalului de timp specificat sterge valorile celor 4 controalele de selectare a marimilor achizitionate; selecteaza din configuratia de achizitie gasita numele si identificatorul marimilor achizitionate; introduce in cele 4 controalele de selectare a marimilor achizitionate numele marimilor; altfel returneaza un mesaj de eroare prin apelarea rutinei ermes; } rutina populare_ring { preia data selectata de utilizator si scala (intervalul orar) din controalele aferente; daca in baza de date exista configuratie de achizitie corespunzatoare intervalului de timp specificat sterge valorile controlului de selectare a marimilor achizitionate actionat; selecteaza din configuratia de achizitie gasita numele si identificatorul marimilor achizitionate; introduce in controlul de selectare a marimilor achizitionate actionat numele marimilor; altfel returneaza un mesaj de eroare prin apelarea rutinei ermes; } rutina inserare_date_grafic { preia data selectata de utilizator si scala (intervalul orar) din controalele aferente; stabileste numarul maxim de valori care pot fi afisate in functie de scala aleasa; daca in baza de date exista configuratie de achizitie corespunzatoare intervalului de timp specificat

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 132

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

selecteaza limita superioara si inferioara a marimilor din configuratia gasita; scalarea controlului de tip grafic in functie de limitele gasite; citirea valorilor achizitionate ale marimilor selectate din tabela corespunzatoare din baza de date prin apelarea citire_date_grafic_DB; trasarea graficului folosind valorile citite; altfel returneaza mesaj de eroare prin apelarea rutinei ermes; } rutina citire_date_grafic_DB { daca in baza de date exista configuratie de achizitie corespunzatoare intervalului de timp specificat selecteaza valorile achizionate in intervalul orar selectat ale marimilor specificate de utilizator din tabela corespunzatoare din baza de date; altfel returneaza mesaj de eroare prin apelarea rutinei ermes; } rutina scalare_Y { preia marimile care se doresc a fi reprezentate grafic din controalele specifice; daca se doreste afisarea graficului in format maxim pentru fiecare marime selectata seteaza axele Y (dreapta si stanga) in functie de limitele maxime si minime ale valorilor marimii selectate; preia scala (intervalul orar) pentru care se doreste reprezentarea grafica; daca scalarea se face automat seteaza in modul automat scalarea axelor Y a controlului de tip grafic; preia maximul si minimul axelor X si Y ale controlului grafic; preia pozitiile cursoarelor controlului grafic; seteaza pozitiile cursoarelor in functie de maximul si minimum axelor X si Y; altfel preia pozitiile cursoarelor controlului grafic; preia pozitiile minime si maxime ale axelor Y a controlului de tip grafic; seteaza pozitiile axelor Y ale controlului de tip grafic la noi valori calculate in functie de pozitia cursoarelor si de pozitiile minime si maxime admise pentru axele Y; seteaza pozitiile cursoarelor in functie de noile dimensiuni ale axelor Y a controlului de tip grafic; } rutina scalare_X { preia marimile care se doresc a fi reprezentate grafic din controalele specifice;

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 133

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

daca nu a fost selectata nici o marime returneaza un mesaj de eroare prin apelarea rutinei ermes; altfel preia scala (intervalul orar) pentru care se doreste reprezentarea grafica; pentru fiecare diviziune specifica scalei modifica etichetele axei X a controlului de tip grafic; } rutina afis_el_rap_bd { preia data selectata de utilizator si scala (intervalul orar) din controalele aferente; selecteaza din tabela bazei de date aferenta intervalului de timp selectat, codul evenimentului si codul elementului care a produs evenimentul, precum si amprenta de timp a acestuia; analizeaza codul pentru afisarea mesajului evenimentului produs este facuta apeland analiza_cod; introducere in lista de evenimente a mesajelor in culori diferite, functie de gravitatea lor; } rutina afis_el_rap_cursor { preia din coordonatele cursorului vertical al controlului de tip grafic data de start a raportului de evenimente care se doreste a fi afisat; preia scala (intervalul orar) – data de sfarsit a raportului de evenimente; selecteaza din tabela bazei de date aferenta intervalului de timp selectat, codul evenimentului si codul elementului care a produs evenimentul, precum si amprenta de timp a acestuia; analizeaza codul pentru afisarea mesajului evenimentului produs este facuta apeland analiza_cod; introducere in lista de evenimente a mesajelor in culori diferite, functie de gravitatea lor; } rutina analiza_cod { analizeaza codul evenimentului pentru a returna starea elementului care a produs evenimentul (alarma, preventiv, conectat, deconectat); analizeaza codul elementul prin interogarea configuratiilor de intrari numerice si analogice din baza de date in scopul returnarii denumirii elementului care a produs evenimenutul; } Rutine interne de tip callback function: cbf_zi_graf { sterge controalele de selectare a marimilor care se doresc a fi afisate grafic si ontrolul de tip grafic din interfata;

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 134

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

daca unitatea de baza de afisare a valorilor marimilor este diferita de valoarea implicita rescaleaza controlul grafic la dimensiunile implicite; alege anul sau luna pentru care se doreste raportarea grafica si a evenimentelor; preia valorile de an si luna din controalele specifice; sterge valorile din controlul care permite alegerea unei zile; daca anul este bisect pentru fiecare luna calendaristica

populeaza controlul care permite alegerea unei zile cu valori specifice lunii respective din anul bisect;

altfel pentru fiecare luna calendaristica

populeaza controlul care permite alegerea unei zile cu valori specifice lunii respective din anul nebisect; } cbf_marimi { sterge controalele de selectare a marimilor care se doresc a fi afisate grafic si controlul de tip grafic din interfata; deschide o conexiune la baza de date apeland DeschideSQL; populeaza controalele de selectare a marimilor care se doresc a fi afisate in functie de configurarea acestora din baza de date, apeland populare_ringuri; inchide conexiunea la baza de date apeland InchideSQL; } cbf_ring_graf { deschide o conexiune la baza de date apeland DeschideSQL; populeaza controalele de selectare a marimilor care se doresc a fi afisate in functie de configurarea acestora din baza de date si categoria marimii achizionate, apeland populare_ring; inchide conexiunea la baza de date apeland InchideSQL; } cbf_afis_graf { deschide o conexiune la baza de date apeland DeschideSQL; scalare pe axa X a controlului de tip grafic din interfata prin apelarea scalare_X; preia din cele patru controale marimile a caror valori se doresc a fi afisate grafic; daca valorile preluate sunt 0 afiseaza eroare prin apelarea rutinei ermes; preia categoria de marimi achizitionate; introduce in controlul de tip grafic, graficele rezultate prin apelarea inserare_date_grafic; scalare pe axa Y a controlului de tip grafic din interfata prin apelarea scalare_Y; inchide conexiunea la baza de date apeland InchideSQL;

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 135

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

} cbf_scala { sterge controlul de tip grafic si controlul de tip lista evenimente din interfata; seteaza axele X si Y (dreapta si stanga) ale controlului de tip grafic in functie de valoarea scalei (24 ore, 12 ore, 8 ore, 4 ore,1 ora); seteaza pozitia cursoarelor in functie de valorile axelor si de modul de scalare ales (manual sau automat); } cbf_tip_graf { pregateste antetul raportului grafic tiparit – titlu, data, denumire marimi afisate grafic; seteaza culorile controlului de tip grafic astfel incat sa asigure vizibilitatea graficelor; seteaza proprietatile imprimantei – rezolutie, culori, format pagina; tipareste antetul raportului grafic; tipareste continutul controlului de tip grafic; } cbf_afisare_rap { sterge controlul de tip lista evenimente; deschide o conexiune la baza de date apeland DeschideSQL; afiseaza raportul evenimentelor din ziua selectata, apeland afis_el_rap_bd; inchide conexiunea la baza de date apeland InchideSQL; } cbf_gr_rap { preia pozitia cursorului vertical atasat controlului de tip grafic; daca pozitia cursorului este diferita de valoarea initiala sterge controlul de tip lista evenimente; deschide o conexiune la baza de date apeland DeschideSQL; afiseaza raportul evenimentelor din intervalul indicat de cursor si sfarsitul zilei selectate, apeland afis_el_rap_cursor; inchide conexiunea la baza de date apeland InchideSQL; } cbf_tip_evenimente { pregateste formatul raportului de evenimente – numar de linii pe pagina, numar de pagini in functie de numarul de evenimente inregistrate in perioada selectata; pentru fiecare pagina pregateste antetul paginii – titlu, data; seteaza proprietatile imprimantei – format pagina, tip si dimeniune font; tipareste antetul paginii; pentru fiecare rand din pagina pregateste continutul acestuia; tipareste randul; }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 136

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// APLICATIA HIDROEOL // Modulul HEgrafice_comparate.c – Tratarea interfetei de afisare a graficelor si valorilor marimilor achizitionate Module si interfete incluse: "HEdefcom.h", "HEgrafice_comparate.h" Rutine externe: DeschideSQL InchideSQL ermes Rutine interne: rutina populare_ringuri1 { preia data selectata de utilizator si scala (intervalul orar) din controalele aferente; daca in baza de date exista configuratie de achizitie corespunzatoare intervalului de timp specificat sterge valorile controalelor de selectare a marimilor achizitionate; selecteaza din configuratia de achizitie gasita numele si identificatorul marimilor achizitionate; introduce in controalele de selectare a marimilor achizitionate numele marimilor; altfel returneaza un mesaj de eroare prin apelarea rutinei ermes; } rutina populare_ring1 { preia data selectata de utilizator si scala (intervalul orar) din controalele aferente; daca in baza de date exista configuratie de achizitie corespunzatoare intervalului de timp specificat sterge valorile controlului de selectare a marimilor achizitionate actionat; selecteaza din configuratia de achizitie gasita numele si identificatorul marimilor achizitionate; introduce in controlul de selectare a marimilor achizitionate actionat numele marimilor; altfel returneaza un mesaj de eroare prin apelarea rutinei ermes; }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 137

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

rutina inserare_date_grafic_tabel { preia data selectata de utilizator si scala (intervalul orar) din controalele aferente; stabileste numarul maxim de valori care pot fi afisate in functie de scala aleasa; daca in baza de date exista configuratie de achizitie corespunzatoare intervalului de timp specificat selecteaza limita superioara si inferioara a marimilor din configuratia gasita; scalarea controlului de tip grafic in functie de limitele gasite; citirea valorilor achizitionate ale marimilor selectate din tabela corespunzatoare din baza de date prin apelarea citire_date_DB; trasarea graficului folosind valorile citite; popularea controlului de tip tabel cu valorile citite; altfel returneaza mesaj de eroare prin apelarea rutinei ermes; } rutina citire_date_DB { daca in baza de date exista configuratie de achizitie corespunzatoare intervalului de timp specificat selecteaza valorile achizionate in intervalul orar selectat ale marimilor specificate de utilizator din tabela corespunzatoare din baza de date; altfel returneaza mesaj de eroare prin apelarea rutinei ermes; } rutina scalare_Y1 { preia marimile care se doresc a fi reprezentate grafic din controalele specifice; daca se doreste afisarea graficului in format maxim pentru fiecare marime selectata seteaza axele Y (dreapta si stanga) in functie de limitele maxime si minime ale valorilor marimii selectate; preia scala (intervalul orar) pentru care se doreste reprezentarea grafica; daca scalarea se face automat

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 138

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

seteaza in modul automat scalarea axelor Y a controlului de tip grafic; preia maximul si minimul axelor X si Y ale controlului grafic; preia pozitiile cursoarelor controlului grafic; seteaza pozitiile cursoarelor in functie de maximul si minimum axelor X si Y; altfel preia pozitiile cursoarelor controlului grafic; preia pozitiile minime si maxime ale axelor Y a controlului de tip grafic; seteaza pozitiile axelor Y ale controlului de tip grafic la noi valori calculate in functie de pozitia cursoarelor si de pozitiile minime si maxime admise pentru axele Y; seteaza pozitiile cursoarelor in functie de noile dimensiuni ale axelor Y a controlului de tip grafic; } rutina scalare_X1 { preia marimile care se doresc a fi reprezentate grafic din controalele specifice; daca nu a fost selectata nici o marime returneaza un mesaj de eroare prin apelarea rutinei ermes; altfel preia scala (intervalul orar) pentru care se doreste reprezentarea grafica; pentru fiecare diviziune specifica scalei modifica etichetele axei X a controlului de tip grafic; } Rutine interne de tip callback function: cbf_zi_graf_tabel { sterge controalele de selectare a marimilor care se doresc a fi afisate grafic, controlul de tip grafic din interfata si controlul de tip tabel corespunzator afisarii valorilor marimilor achizitionate; daca unitatea de baza de afisare a valorilor marimilor este diferita de valoarea implicita rescaleaza controlul grafic la dimensiunile implicite;

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 139

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

alege anul sau luna pentru care se doreste raportarea grafica si a evenimentelor; preia valorile de an si luna din controalele specifice; sterge valorile din controlul care permite alegerea unei zile; daca anul este bisect pentru fiecare luna calendaristica

populeaza controlul care permite alegerea unei zile cu valori

specifice lunii respective din anul bisect; altfel

pentru fiecare luna calendaristica populeaza controlul care permite alegerea unei zile cu

valori specifice lunii respective din anul nebisect; } cbf_marimi_graf_tabel { sterge controalele de selectare a marimilor care se doresc a fi afisate grafic si controlul de tip grafic din interfata; deschide o conexiune la baza de date apeland DeschideSQL; populeaza controalele de selectare a marimilor care se doresc a fi afisate in functie de configurarea acestora din baza de date, apeland populare_ringuri1; inchide conexiunea la baza de date apeland InchideSQL; } cbf_ring_graf_tabel { deschide o conexiune la baza de date apeland DeschideSQL; populeaza controalele de selectare a marimilor care se doresc a fi afisate in functie de configurarea acestora din baza de date si categoria marimii achizionate, apeland populare_ring1; inchide conexiunea la baza de date apeland InchideSQL; } cbf_afis_graf_tabel { deschide o conexiune la baza de date apeland DeschideSQL; scalare pe axa X a controlului de tip grafic din interfata prin apelarea scalare_X1; preia din cele trei controale marimile a caror valori se doresc a fi afisate grafic; daca valorile preluate sunt 0

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 140

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

afiseaza eroare prin apelarea rutinei ermes; preia categoria de marimi achizitionate; introduce in controlul de tip grafic si in controlul de tip tabel, graficele si matricele de valori rezultate prin apelarea inserare_date_grafic_tabel; scalare pe axa Y a controlului de tip grafic din interfata prin apelarea scalare_Y1; inchide conexiunea la baza de date apeland InchideSQL; }

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 141

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Anexa 2

Scriptul SQL_al bazei de date HIDROEL

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 142

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

// Scriptul SQL_al bazei de date Hidroeol SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Grupa_categoria_din]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[Grupa_categoria_din]( [ID_grupa] [tinyint] NOT NULL, [Grupa_categoria_din] [varchar](15) NULL, CONSTRAINT [PK_Grupa_categoria] PRIMARY KEY CLUSTERED ( [ID_grupa] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Grupa_categoria_dou]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[Grupa_categoria_dou]( [ID_grupa] [tinyint] NOT NULL, [Grupa_categoria_dou] [varchar](20) NULL, CONSTRAINT [PK_Grupa_categoria_dou] PRIMARY KEY CLUSTERED ( [ID_grupa] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Opc]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[Opc]( [ID_opc] [tinyint] NOT NULL, [URLopc] [varchar](50) NULL,

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 143

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

CONSTRAINT [PK_Instalatia] PRIMARY KEY CLUSTERED ( [ID_opc] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Locatia]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[Locatia]( [ID_locatia] [tinyint] IDENTITY(1,1) NOT NULL, [Locatia] [varchar](30) NULL, CONSTRAINT [PK_Locatia] PRIMARY KEY CLUSTERED ( [ID_locatia] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Tip_marime]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[Tip_marime]( [ID_tip_marime] [tinyint] NOT NULL, [Tip_marime] [varchar](50) NULL, CONSTRAINT [PK_Tip_marime] PRIMARY KEY CLUSTERED ( [ID_tip_marime] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Cfg_intrari_numerice]') AND type in (N'U'))

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 144

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

BEGIN CREATE TABLE [dbo].[Cfg_intrari_numerice]( [ID_int_num] [smallint] NOT NULL, [ID_cfg_din] [tinyint] NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Automat] [varchar](11) NULL, [Sir_cleme] [varchar](6) NULL, [Numele] [varchar](53) NULL, [ID_grupa] [tinyint] NULL, [ID_opc] [tinyint] NULL, [Logica] [tinyint] NULL, [Tip_semnal] [tinyint] NULL, [Functionalitatea] [tinyint] NULL, [Intarz_x100ms] [tinyint] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_Cfg_intrari_numerice] PRIMARY KEY CLUSTERED ( [ID_int_num] ASC, [ID_cfg_din] ASC, [ID_locatia] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Cfg_iesiri_numerice]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[Cfg_iesiri_numerice]( [ID_ies_num] [tinyint] NOT NULL, [ID_cfg_ies] [tinyint] NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Automat] [varchar](11) NULL, [Sir_cleme] [varchar](6) NULL, [Numele] [varchar](53) NULL, [ID_grupa] [tinyint] NULL, [ID_opc] [tinyint] NULL, [Logica] [tinyint] NULL, [Functionalitatea] [tinyint] NULL, [Durata_x10ms] [tinyint] NULL, [Ies_cond] [smallint] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_Cfg_iesiri_numerice] PRIMARY KEY CLUSTERED (

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 145

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

[ID_ies_num] ASC, [ID_cfg_ies] ASC, [ID_locatia] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Cfg_ainaki]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[Cfg_ainaki]( [ID] [int] IDENTITY(1,1) NOT NULL, [ID_int_ana] [int] NOT NULL, [ID_cfg_ain] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [ID_locatia] [tinyint] NOT NULL, CONSTRAINT [PK_Cfg_ainaki] PRIMARY KEY CLUSTERED ( [ID] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki06_a2]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki06_a2]( [id_aki06_a2] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki06_a2] PRIMARY KEY CLUSTERED ( [id_aki06_a2] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 146

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki07_a2]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki07_a2]( [id_aki07_a2] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki07_a2] PRIMARY KEY CLUSTERED ( [id_aki07_a2] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki01_a2]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki01_a2]( [id_aki01_a2] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki01_a2] PRIMARY KEY CLUSTERED ( [id_aki01_a2] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 147

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki05_a2]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki05_a2]( [id_aki05_a2] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki05_a2] PRIMARY KEY CLUSTERED ( [id_aki05_a2] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki02_a1]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki02_a1]( [id_aki02_a1] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki02_a1] PRIMARY KEY CLUSTERED ( [id_aki02_a1] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 148

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki09_a2]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki09_a2]( [id_aki09_a2] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki09_a2] PRIMARY KEY CLUSTERED ( [id_aki09_a2] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki10_a2]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki10_a2]( [id_aki10_a2] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki10_a2] PRIMARY KEY CLUSTERED ( [id_aki10_a2] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki11_a2]') AND type in (N'U'))

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 149

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

BEGIN CREATE TABLE [dbo].[aki11_a2]( [id_aki11_a2] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki11_a2] PRIMARY KEY CLUSTERED ( [id_aki11_a2] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki12_a2]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki12_a2]( [id_aki12_a2] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki12_a2] PRIMARY KEY CLUSTERED ( [id_aki12_a2] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki04_a1]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki04_a1]( [id_aki04_a1] [int] IDENTITY(1,1) NOT NULL,

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 150

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

[ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki04_a1] PRIMARY KEY CLUSTERED ( [id_aki04_a1] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki05_a1]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki05_a1]( [id_aki05_a1] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki01] PRIMARY KEY CLUSTERED ( [id_aki05_a1] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki06_a1]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki06_a1]( [id_aki06_a1] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL,

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 151

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

[Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki04] PRIMARY KEY CLUSTERED ( [id_aki06_a1] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki01_a1]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki01_a1]( [id_aki01_a1] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki01_a1] PRIMARY KEY CLUSTERED ( [id_aki01_a1] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki08_a2]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki08_a2]( [id_aki08_a2] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL,

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 152

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

CONSTRAINT [PK_aki08_a2] PRIMARY KEY CLUSTERED ( [id_aki08_a2] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki03_a2]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki03_a2]( [id_aki03_a2] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki03_a2] PRIMARY KEY CLUSTERED ( [id_aki03_a2] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki04_a2]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki04_a2]( [id_aki04_a2] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki04_a2] PRIMARY KEY CLUSTERED ( [id_aki04_a2] ASC

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 153

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki12_a1]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki12_a1]( [id_aki12_a1] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki12_a1] PRIMARY KEY CLUSTERED ( [id_aki12_a1] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki02_a2]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki02_a2]( [id_aki02_a2] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki02_a2] PRIMARY KEY CLUSTERED ( [id_aki02_a2] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 154

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki10_a1]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki10_a1]( [id_aki10_a1] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki10_a1] PRIMARY KEY CLUSTERED ( [id_aki10_a1] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki11_a1]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki11_a1]( [id_aki11_a1] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki11_a1] PRIMARY KEY CLUSTERED ( [id_aki11_a1] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 155

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki08_a1]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki08_a1]( [id_aki08_a1] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki08_a1] PRIMARY KEY CLUSTERED ( [id_aki08_a1] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki09_a1]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki09_a1]( [id_ak09_a1] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki09_a1] PRIMARY KEY CLUSTERED ( [id_ak09_a1] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 156

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki03_a1]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki03_a1]( [id_aki03_a1] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki03_a1] PRIMARY KEY CLUSTERED ( [id_aki03_a1] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aki07_a1]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[aki07_a1]( [id_aki07_a1] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Data_achizitionare] [datetime] NULL, [Valoare] [float] NULL, [Status] [tinyint] NOT NULL, CONSTRAINT [PK_aki07_a1] PRIMARY KEY CLUSTERED ( [id_aki07_a1] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Cfg_intrari_analogice]') AND type in (N'U')) BEGIN

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 157

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

CREATE TABLE [dbo].[Cfg_intrari_analogice]( [ID_int_ana] [int] NOT NULL, [ID_cfg_ain] [tinyint] NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Automat] [varchar](9) NULL, [Nume] [varchar](40) NULL, [ID_opc] [tinyint] NULL, [Functionalitatea] [tinyint] NULL, [Rezolutia] [real] NULL, [Deplasament] [real] NULL, [Offset] [real] NULL, [Lim_inf_atent] [real] NULL, [Lim_sup_atent] [real] NULL, [Lim_inf_alarm] [real] NULL, [Lim_sup_alarm] [real] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_Cfg_intrari_analogice] PRIMARY KEY CLUSTERED ( [ID_int_ana] ASC, [ID_cfg_ain] ASC, [ID_locatia] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rap12]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[rap12]( [id_rapoarte] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Cod] [int] NULL, [Codel] [int] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_rap04_r1] PRIMARY KEY CLUSTERED ( [id_rapoarte] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 158

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rap11]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[rap11]( [id_rapoarte] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Cod] [int] NULL, [Codel] [int] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_rap03_r4] PRIMARY KEY CLUSTERED ( [id_rapoarte] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rap01]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[rap01]( [id_rapoarte] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Cod] [int] NULL, [Codel] [int] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_rap01_r1] PRIMARY KEY CLUSTERED ( [id_rapoarte] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rap02]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[rap02]( [id_rapoarte] [int] IDENTITY(1,1) NOT NULL,

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 159

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

[ID_locatia] [tinyint] NOT NULL, [Cod] [int] NULL, [Codel] [int] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_rap01_r3] PRIMARY KEY CLUSTERED ( [id_rapoarte] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rap10]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[rap10]( [id_rapoarte] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Cod] [int] NULL, [Codel] [int] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_rap03_r3] PRIMARY KEY CLUSTERED ( [id_rapoarte] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rap09]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[rap09]( [id_rapoarte] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Cod] [int] NULL, [Codel] [int] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_rap03_r2] PRIMARY KEY CLUSTERED ( [id_rapoarte] ASC

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 160

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rap06]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[rap06]( [id_rapoarte] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Cod] [int] NULL, [Codel] [int] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_rap02_r3] PRIMARY KEY CLUSTERED ( [id_rapoarte] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rap07]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[rap07]( [id_rapoarte] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Cod] [int] NULL, [Codel] [int] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_rap02_r4] PRIMARY KEY CLUSTERED ( [id_rapoarte] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 161

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rap08]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[rap08]( [id_rapoarte] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Cod] [int] NULL, [Codel] [int] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_rap03_r1] PRIMARY KEY CLUSTERED ( [id_rapoarte] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rap03]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[rap03]( [id_rapoarte] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Cod] [int] NULL, [Codel] [int] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_rap01_r4] PRIMARY KEY CLUSTERED ( [id_rapoarte] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rap04]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[rap04]( [id_rapoarte] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL,

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 162

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

[Cod] [int] NULL, [Codel] [int] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_rap02_r1] PRIMARY KEY CLUSTERED ( [id_rapoarte] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rap05]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[rap05]( [id_rapoarte] [int] IDENTITY(1,1) NOT NULL, [ID_locatia] [tinyint] NOT NULL, [Cod] [int] NULL, [Codel] [int] NULL, [Data] [datetime] NULL, CONSTRAINT [PK_rap02_r2] PRIMARY KEY CLUSTERED ( [id_rapoarte] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Cfg_achizitie]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[Cfg_achizitie]( [ID_locatia] [tinyint] NOT NULL, [ID_achizitie] [tinyint] NOT NULL, [ID_cfg_achizitie] [tinyint] NOT NULL, [Nume] [varchar](41) NULL, [ID_tip_marime] [tinyint] NULL, [Histerezis] [real] NULL, [Lim_inf] [real] NULL, [Lim_sup] [real] NULL, [Rata] [tinyint] NOT NULL,

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 163

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

[Data] [datetime] NULL, CONSTRAINT [PK_Cfg_achizitie] PRIMARY KEY CLUSTERED ( [ID_achizitie] ASC, [ID_cfg_achizitie] ASC, [ID_locatia] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Cfg_intrari_numerice_Grupa_categoria]') AND parent_object_id = OBJECT_ID(N'[dbo].[Cfg_intrari_numerice]')) ALTER TABLE [dbo].[Cfg_intrari_numerice] WITH CHECK ADD CONSTRAINT [FK_Cfg_intrari_numerice_Grupa_categoria] FOREIGN KEY([ID_grupa]) REFERENCES [dbo].[Grupa_categoria_din] ([ID_grupa]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Cfg_intrari_numerice_Instalatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[Cfg_intrari_numerice]')) ALTER TABLE [dbo].[Cfg_intrari_numerice] WITH CHECK ADD CONSTRAINT [FK_Cfg_intrari_numerice_Instalatia] FOREIGN KEY([ID_opc]) REFERENCES [dbo].[Opc] ([ID_opc]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Cfg_intrari_numerice_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[Cfg_intrari_numerice]')) ALTER TABLE [dbo].[Cfg_intrari_numerice] WITH CHECK ADD CONSTRAINT [FK_Cfg_intrari_numerice_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Cfg_iesiri_numerice_Grupa_categoria_dou]') AND parent_object_id = OBJECT_ID(N'[dbo].[Cfg_iesiri_numerice]')) ALTER TABLE [dbo].[Cfg_iesiri_numerice] WITH CHECK ADD CONSTRAINT [FK_Cfg_iesiri_numerice_Grupa_categoria_dou] FOREIGN KEY([ID_grupa]) REFERENCES [dbo].[Grupa_categoria_dou] ([ID_grupa]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Cfg_iesiri_numerice_Instalatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[Cfg_iesiri_numerice]')) ALTER TABLE [dbo].[Cfg_iesiri_numerice] WITH CHECK ADD CONSTRAINT [FK_Cfg_iesiri_numerice_Instalatia] FOREIGN KEY([ID_opc]) REFERENCES [dbo].[Opc] ([ID_opc]) GO

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 164

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Cfg_iesiri_numerice_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[Cfg_iesiri_numerice]')) ALTER TABLE [dbo].[Cfg_iesiri_numerice] WITH CHECK ADD CONSTRAINT [FK_Cfg_iesiri_numerice_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Cfg_ainaki_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[Cfg_ainaki]')) ALTER TABLE [dbo].[Cfg_ainaki] WITH CHECK ADD CONSTRAINT [FK_Cfg_ainaki_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Cfg_ainaki_Cfg_intrari_analogice1]') AND parent_object_id = OBJECT_ID(N'[dbo].[Cfg_ainaki]')) ALTER TABLE [dbo].[Cfg_ainaki] WITH CHECK ADD CONSTRAINT [FK_Cfg_ainaki_Cfg_intrari_analogice1] FOREIGN KEY([ID_int_ana], [ID_cfg_ain], [ID_locatia]) REFERENCES [dbo].[Cfg_intrari_analogice] ([ID_int_ana], [ID_cfg_ain], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki06_a2_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki06_a2]')) ALTER TABLE [dbo].[aki06_a2] WITH CHECK ADD CONSTRAINT [FK_aki06_a2_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki07_a2_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki07_a2]')) ALTER TABLE [dbo].[aki07_a2] WITH CHECK ADD CONSTRAINT [FK_aki07_a2_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki01_a2_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki01_a2]'))

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 165

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

ALTER TABLE [dbo].[aki01_a2] WITH CHECK ADD CONSTRAINT [FK_aki01_a2_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki05_a2_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki05_a2]')) ALTER TABLE [dbo].[aki05_a2] WITH CHECK ADD CONSTRAINT [FK_aki05_a2_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki02_a1_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki02_a1]')) ALTER TABLE [dbo].[aki02_a1] WITH CHECK ADD CONSTRAINT [FK_aki02_a1_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki09_a2_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki09_a2]')) ALTER TABLE [dbo].[aki09_a2] WITH CHECK ADD CONSTRAINT [FK_aki09_a2_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki10_a2_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki10_a2]')) ALTER TABLE [dbo].[aki10_a2] WITH CHECK ADD CONSTRAINT [FK_aki10_a2_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki11_a2_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki11_a2]'))

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 166

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

ALTER TABLE [dbo].[aki11_a2] WITH CHECK ADD CONSTRAINT [FK_aki11_a2_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki12_a2_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki12_a2]')) ALTER TABLE [dbo].[aki12_a2] WITH CHECK ADD CONSTRAINT [FK_aki12_a2_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki04_a1_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki04_a1]')) ALTER TABLE [dbo].[aki04_a1] WITH CHECK ADD CONSTRAINT [FK_aki04_a1_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki01_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki05_a1]')) ALTER TABLE [dbo].[aki05_a1] WITH CHECK ADD CONSTRAINT [FK_aki01_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki04_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki06_a1]')) ALTER TABLE [dbo].[aki06_a1] WITH CHECK ADD CONSTRAINT [FK_aki04_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki01_a1_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki01_a1]'))

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 167

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

ALTER TABLE [dbo].[aki01_a1] WITH CHECK ADD CONSTRAINT [FK_aki01_a1_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki08_a2_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki08_a2]')) ALTER TABLE [dbo].[aki08_a2] WITH CHECK ADD CONSTRAINT [FK_aki08_a2_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki03_a2_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki03_a2]')) ALTER TABLE [dbo].[aki03_a2] WITH CHECK ADD CONSTRAINT [FK_aki03_a2_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki04_a2_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki04_a2]')) ALTER TABLE [dbo].[aki04_a2] WITH CHECK ADD CONSTRAINT [FK_aki04_a2_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki12_a1_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki12_a1]')) ALTER TABLE [dbo].[aki12_a1] WITH CHECK ADD CONSTRAINT [FK_aki12_a1_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki02_a2_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki02_a2]'))

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 168

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

ALTER TABLE [dbo].[aki02_a2] WITH CHECK ADD CONSTRAINT [FK_aki02_a2_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki10_a1_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki10_a1]')) ALTER TABLE [dbo].[aki10_a1] WITH CHECK ADD CONSTRAINT [FK_aki10_a1_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki11_a1_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki11_a1]')) ALTER TABLE [dbo].[aki11_a1] WITH CHECK ADD CONSTRAINT [FK_aki11_a1_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki08_a1_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki08_a1]')) ALTER TABLE [dbo].[aki08_a1] WITH CHECK ADD CONSTRAINT [FK_aki08_a1_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki09_a1_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki09_a1]')) ALTER TABLE [dbo].[aki09_a1] WITH CHECK ADD CONSTRAINT [FK_aki09_a1_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki03_a1_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki03_a1]'))

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 169

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

ALTER TABLE [dbo].[aki03_a1] WITH CHECK ADD CONSTRAINT [FK_aki03_a1_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_aki07_a1_Cfg_achizitie]') AND parent_object_id = OBJECT_ID(N'[dbo].[aki07_a1]')) ALTER TABLE [dbo].[aki07_a1] WITH CHECK ADD CONSTRAINT [FK_aki07_a1_Cfg_achizitie] FOREIGN KEY([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) REFERENCES [dbo].[Cfg_achizitie] ([ID_achizitie], [ID_cfg_achizitie], [ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Cfg_intrari_analogice_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[Cfg_intrari_analogice]')) ALTER TABLE [dbo].[Cfg_intrari_analogice] WITH CHECK ADD CONSTRAINT [FK_Cfg_intrari_analogice_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Cfg_intrari_analogice_Opc]') AND parent_object_id = OBJECT_ID(N'[dbo].[Cfg_intrari_analogice]')) ALTER TABLE [dbo].[Cfg_intrari_analogice] WITH CHECK ADD CONSTRAINT [FK_Cfg_intrari_analogice_Opc] FOREIGN KEY([ID_opc]) REFERENCES [dbo].[Opc] ([ID_opc]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_rap04_r1_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[rap12]')) ALTER TABLE [dbo].[rap12] WITH CHECK ADD CONSTRAINT [FK_rap04_r1_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_rap03_r4_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[rap11]')) ALTER TABLE [dbo].[rap11] WITH CHECK ADD CONSTRAINT [FK_rap03_r4_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_rap01_r1_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[rap01]'))

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 170

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

ALTER TABLE [dbo].[rap01] WITH CHECK ADD CONSTRAINT [FK_rap01_r1_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_rap01_r3_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[rap02]')) ALTER TABLE [dbo].[rap02] WITH CHECK ADD CONSTRAINT [FK_rap01_r3_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_rap03_r3_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[rap10]')) ALTER TABLE [dbo].[rap10] WITH CHECK ADD CONSTRAINT [FK_rap03_r3_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_rap03_r2_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[rap09]')) ALTER TABLE [dbo].[rap09] WITH CHECK ADD CONSTRAINT [FK_rap03_r2_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_rap02_r3_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[rap06]')) ALTER TABLE [dbo].[rap06] WITH CHECK ADD CONSTRAINT [FK_rap02_r3_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_rap02_r4_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[rap07]')) ALTER TABLE [dbo].[rap07] WITH CHECK ADD CONSTRAINT [FK_rap02_r4_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_rap03_r1_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[rap08]')) ALTER TABLE [dbo].[rap08] WITH CHECK ADD CONSTRAINT [FK_rap03_r1_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 171

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_rap01_r4_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[rap03]')) ALTER TABLE [dbo].[rap03] WITH CHECK ADD CONSTRAINT [FK_rap01_r4_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_rap02_r1_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[rap04]')) ALTER TABLE [dbo].[rap04] WITH CHECK ADD CONSTRAINT [FK_rap02_r1_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_rap02_r2_Locatia]') AND parent_object_id = OBJECT_ID(N'[dbo].[rap05]')) ALTER TABLE [dbo].[rap05] WITH CHECK ADD CONSTRAINT [FK_rap02_r2_Locatia] FOREIGN KEY([ID_locatia]) REFERENCES [dbo].[Locatia] ([ID_locatia]) GO IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Cfg_achizitie_Tip_marime1]') AND parent_object_id = OBJECT_ID(N'[dbo].[Cfg_achizitie]')) ALTER TABLE [dbo].[Cfg_achizitie] WITH CHECK ADD CONSTRAINT [FK_Cfg_achizitie_Tip_marime1] FOREIGN KEY([ID_tip_marime]) REFERENCES [dbo].[Tip_marime] ([ID_tip_marime])

Structura energetica hibrida hidro-eoliana. Modelare si tuning pe statie

pilot - HIDROEOL

RST Pagina 172

Etapa 4 : Executie model functional pentru sistemul energetic hibrid. – partea a II

Anexa 3 Modificari hard fata de etapa 3 (rezultate din teste)

3.1. Circuit de senzori de curent si tensiuni continue 3.2. Circuit de prezenta 3.3. Formator de implusuri din NRG#40 (anemometru) 3.4. Sursa auxiliara de +/- 12Vcc pentru circuitele de senzori 3.5. Impachetare Formator de impulsuri si sursa +/-12Vcc


Recommended