• Non ci sono risultati.

Capitolo II - Realizzazione del modello di un impianto di desalinizzazione

2.5 Software utilizzato ed implementazione del modello

Il modello dell’impianto oggetto di studio di questa tesi è stato realizzato in ambiente Matlab-Simulink.

Matlab è un linguaggio di programmazione concepito per il calcolo numerico in cui è possibile analizzare e visualizzare dati, implementare algoritmi e creare modelli.

Realizzazione del modello di un impianto di desalinizzazione

63 Simulink è uno dei toolbox di Matlab, ovvero un’interfaccia grafica per la simulazione dinamica. I modelli vengono costruiti nella forma di schemi a blocchi, i quali sono presenti nella libreria di cui Simulink dispone.

Matlab e Simulink sono perfettamente integrati tra loro e ciò permette di includere all’interno dei modelli Simulink degli algoritmi scritti in Matlab e viceversa di analizzare i risultati della simulazione dinamica in Matlab.

L’approccio di Simulink è di tipo sequenziale, il quale prevede la conoscenza degli input di un certo blocco per calcolare gli output dello stesso. Se l’input di un blocco è espresso in funzione dell’output dello stesso blocco e le equazioni presenti sono solamente di tipo algebrico, allora si crea un loop algebrico, che il programma non è in grado di risolvere. Per ovviare a tale problema è necessario rielaborare le equazioni in modo tale da eliminare il loop, oppure includere un’equazione differenziale ottenendo quindi un loop differenziale che il programma è in grado di risolvere.

2.5.1 Modello Simulink

Il modello dell’impianto è stato realizzato in ambiente Simulink, basandosi sulle equazioni riportate nel paragrafo 2.3.

Ogni componente del sistema all’interno del modello è rappresentato per mezzo di un subsystem, con le variabili di input in ingresso e gli output in uscita. Nella tabella seguente vengono elencati gli input e gli output di ogni componente del sistema.

Tabella 2.3. Elenco degli input e degli output di ogni componente del sistema

Componente Input Output

Impianto fotovoltaico Taria, Gt, NOCT, Tref, βt, ηstc, ηpt, NPV, Am

PPV

Impianto Eolico V0, Z0, Z, ϕ, Vcut-in, Vcut-out, Vnom, P1WT,inst, NWT, ηcampo_eolico

PWT

Batteria Pcarica/scarica, ηcarica, ηscarica, E0, DOD, Ebatt_nom, Nbatt,

Ebatt, Pbatt,scarica_compl, Pbatt_f

Generatore diesel A, B, Pdiesel,nom, Pdiesel FG

Sistema di controllo e inverter PRES, Put,el, ηinv, Pbatt,scarica_compl, Pbatt_f, PDI, PMD, Ptank_f, Ptank_g

Pel_N, PREJ, Pdesal, PRES_AD, Pcarica/scarica

Impianto di desalinizzazione Tacqua, Pdesal, Ap, Bsalt, Se, ne, nv, FF, Pp, Y, Cf, ηhpp, ηerd

QP, consumo Serbatoio Qp, Qdem, Vtank_0, Vtc, FVtg, Tacqua, Ap,

Bsalt, Se, ne, nv, FF, Pp, Y, Cf, ηhpp, ηerd

Vtank, Ptank_f, Ptank_g

All’interno del subsystem che rappresenta il serbatoio sono presenti come input anche le variabili che caratterizzano la membrana e gli altri componenti dell’impianto di

Capitolo II

64

desalinizzazione, perché esse sono necessarie per calcolare la potenza elettrica che dovrebbe essere messa a disposizione per riempire il serbatoio completamente o fino al 90%.

È da specificare che le equazioni dell’impianto ad osmosi inversa, così come sono state presentate nel paragrafo 2.3, non possono essere implementate in Simulink, in quanto si creerebbe un loop algebrico. Questo è dovuto al fatto che in tali equazioni la potenza elettrica è espressa come un output della portata d’acqua di alimentazione, quando invece si vuole determinare la portata di permeato e la portata d’acqua di alimentazione in funzione della potenza assorbita. Per poter risolvere tale problema all’interno del subsystem relativo all’impianto di desalinizzazione è stato realizzato un ciclo iterativo che agisce nel seguente modo:

• Si inizializza il valore di portata di permeato (QP,old).

• Si calcola la potenza richiesta per produrre tale valore di portata mediante le equazioni riportate nel paragrafo 2.3.

• Si calcola l’errore, cioè la differenza tra la potenza calcolata e quella disponibile: 𝑒𝑟𝑟 = 𝑃𝑑𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑖𝑙𝑒− 𝑃𝑐𝑎𝑙𝑐𝑜𝑙𝑎𝑡𝑎

• Si utilizza l’errore calcolato per far variare la portata di permeato nella direzione di riduzione dell’errore. Il nuovo valore di portata quindi è:

𝑄𝑃,𝑛𝑒𝑤= 𝑄𝑃,𝑜𝑙𝑑+ 𝑘 ∙ 𝑒𝑟𝑟

in cui k è una costante di amplificazione o riduzione dell’errore, necessaria affinché il sistema giunga a convergenza.

• Si ripete il ciclo iterativo con il nuovo valore di portata, finché l’errore calcolato è inferiore ad una certa tolleranza, che è stata posta uguale a 10-12.

Una volta che il ciclo è giunto a convergenza è nota la portata d’acqua prodotta dal dissalatore in funzione della potenza in ingresso e con questi valori è possibile calcolare il consumo specifico, che deve essere mediamente di circa 3 kWh/m³.

Tuttavia nell’articolo [1], preso come riferimento, per calcolare la produzione dell’impianto ad osmosi inversa si considera solamente il consumo medio di energia di tale componente, ovvero:

𝑄𝑃 = 𝑃𝑜𝑡𝑒𝑛𝑧𝑎 𝑐𝑜𝑚𝑠𝑢𝑚𝑜 =

𝑃𝑜𝑡𝑒𝑛𝑧𝑎 3 𝑘𝑊ℎ

Realizzazione del modello di un impianto di desalinizzazione

65 Dunque oltre ad aver costruito il modello dell’impianto di dissalazione come esposto precedentemente, è stato realizzato anche un altro modello Simulink in cui si considera il consumo medio di energia pari a 3 kWh/m³ per calcolare la portata d’acqua prodotta dal dissalatore. In questo modo è possibile effettuare un confronto migliore tra i risultati ottenuti nell’articolo [1] e quelli dei due modelli Simulink realizzati, osservando le rispettive differenze.

Una volta realizzato il diagramma a blocchi dell’impianto, sono stati configurati i parametri della simulazione. L’intervallo di simulazione è stato preso pari a 8760 h, ovvero un anno, con un passo temporale di un’ora. Infine, poiché nel modello sono presenti dei blocchi integratori, è stato scelto il solutore “ode 4”.

2.5.2 Codice Matlab

In ambiente Matlab sono stati creati i file contenenti tutti i dati di ingresso del modello realizzato con Simulink e il file utilizzato per lanciare la simulazione ed analizzare i risultati ottenuti.

I valori delle variabili climatiche quali irradianza sul piano inclinato, velocità del vento, temperatura dell’aria e temperatura dell’acqua sono stati inseriti come vettori colonna all’interno dell’m-file denominato “dati_clima”.

Il profilo orario del fabbisogno idrico è stato realizzato utilizzando una function, denominata “acqua_desal”, che richiede in ingresso il numero di residenti e calcola con le equazioni viste al paragrafo 2.3.1 il profilo orario del fabbisogno idrico durante un intero anno.

Analogamente il profilo orario del fabbisogno elettrico è stato realizzato mediante la function chiamata “carico_el”.

All’interno dello script Matlab “dati_ingresso_impianto” è stato specificato il numero di residenti dell’isola, sono quindi state chiamate le funzioni “acqua_desal” e “carico_el” per il calcolo degli andamenti orari dei fabbisogni e sono stati inseriti i valori delle taglie dei componenti dell’impianto e di tutte le altre variabili indipendenti, che dipendono dalle loro caratteristiche e prestazioni.

Infine è stato realizzato lo script “impianto” in cui sono stati richiamati tutti i dati di ingresso riportati negli altri m-file, è stato lanciato Simulink per effettuare la simulazione e sono stati analizzati i risultati ottenuti, calcolando degli indici tecnici ed economici, i quali vengono descritti nei successivi paragrafi.

Capitolo II

66