completed section

This commit is contained in:
Silvano Chiaradonna 2023-10-05 17:04:38 +02:00
parent a3c31be31c
commit 682c3a94ab
1 changed files with 46 additions and 74 deletions

View File

@ -25,7 +25,10 @@ Pertanto, lo strumento supporta l'utilizzo del codice C++ nelle
primitive usate per i modelli, primitive usate per i modelli,
in particolare strutture dati C++ esterne in particolare strutture dati C++ esterne
staticamente definite al momento della compilazione ed il collegamento staticamente definite al momento della compilazione ed il collegamento
di librerie C++ esterne. di librerie C++ esterne, come mostrato in Figura xxx per le librerie
di risoluzione delle equazioni di flusso di potenza e del problema di
ottimizzazione per trovare la migliore configurazione della Smart Grid
a seguito di un cambiamento di stato.
Tra i formalismi per la definizione dei modelli atomici, è stato Tra i formalismi per la definizione dei modelli atomici, è stato
scelto quello delle Stochastic Activity Network (SAN) [SM01], una scelto quello delle Stochastic Activity Network (SAN) [SM01], una
@ -59,82 +62,51 @@ specifica topologia associata a ciascuna di esse (a
differenza di quelle "common" o "local" che sono condivise tra tutte le differenza di quelle "common" o "local" che sono condivise tra tutte le
istanze o solo locali a ciascuna di esse, rispettivamente). istanze o solo locali a ciascuna di esse, rispettivamente).
Figure 3.13 è il template di SAN atomica che rappresenta un generico Figura 3.13 è il template di SAN atomica MV_DS_SAN che rappresenta un
generatore distribuito (DG) ed il suo ambiente esterno (usata da D per generico generatore distribuito (DG) ed il suo ambiente esterno.
generare tutte le istanze dei DG presenti nella Smart Grid). In particolare In particolare
esso modella la generazione di potenza attiva (P) e reattiva(Q), la esso modella la generazione di potenza attiva e reattiva (P e Q,
previsione di potenza generata e l'errore di previsione, l'occorrenza tramite le porte WeatherChange e l'attività WPChange), la
dei fallimenti e le conseguenti azioni di ripristino. previsione di potenza generata e l'errore di previsione (tramite le
porte isWPset e ForecastError, e le attività WP_NextSchedT and
WPForecastChange), l'occorrenza dei fallimenti e le conseguenti azioni
the generation of active and reactive power (gate WeatherChange and di ripristino (nella parte in basso ed in alto a destra di Figura
activity WPChange), the generation forecast and error (gates isWPset 3.13). Il posto UpdateEState è di tipo "dependency-aware" essendo
and ForecastError, activities WP NextSchedT and WPFore- castChange), condiviso tra ogni singola istanza di MV_DS_SAN e il sottomodello
the occurrence of failures and the recovery actions (at bottom and top ESTATE_SAN.
right of the SAN ).
Figura 6.3 è il template di SAN atomica (con una sola istanza) Figura 6.3 è il template di SAN atomica (con una sola istanza)
che rappresenta i cambiamenti dello stato ESTATE_SAN che rappresenta i cambiamenti dello stato
elettrico dell'infrastruttura EI (mediante la risoluzione delle elettrico dell'infrastruttura EI (mediante la risoluzione delle
equazioni di flusso di potenza) e la politica di controllo della equazioni di flusso di potenza) e la politica di controllo della
tensione elettrica (tramite risoluzione di un problema di ottimizzazione) tensione elettrica (tramite risoluzione di un problema di ottimizzazione)
come descritta in Figura 2, condividendo posti (cioè SV) con tutte le come descritta in Figura 2, condividendo posti (cioè SV) con tutte le
altre istanze di template SAN. altre istanze di template SAN.
In dettaglio, In dettaglio, la stima del nuovo stato è
attivata dalla porta di input inUpdate, che abilita l'attività
update non appena UpdateEState==1,
ed è effettuata dalla porta di
i posti P, Q, V, Delta, F (flusso di potenza sulle output NewES, che in base ai risultati delle equazioni di flusso
linee), I (flusso di corrente sulle linee) rappresentano le grandezze aggiorna i valori dei posti P, Q, V, Delta, F
elettriche di EI e sono SV condivise tra tutti i (flusso di potenza sulle linee) e I (flusso di corrente sulle linee)
che rappresentano le grandezze elettriche di EI e richiede un'azione
di controllo aggiornando il valore del posto VOLT_CTRL.
l'attività ScheduledVoltageCTRL rappresenta gli I parametri elettrici sono memorizzati in place di tipo
intervalli di tempo tra successivi inteventi del sistema di controllo "dependency-aware" e sono condivisi con istanze di altri template.
del voltaggo (MVGC o LVGC, a seconda del livello MV o LV rappresentato Altri place di tipo "dependency-aware" sono condivisi con altre
dal modello). istanze di SAN template, come ad esempio DG_CTRL_P, che viene usato
dal controllo per identificare un cambiamento di potenza
generata o il fallimento (DG_CTRL_P==0) in una istanza
it shares places with all the other SAN template instances and it is di MV_DS_SAN.
responsible for the PFEs solution and the optimization problem. Le azioni di controllo, eseguite dalla porta di output VoltageCTRL,
sono attivate quando il place VOLT_CTRL==1.
Questo accade ad intervalli di tempo regolari, quando la porta di
output PromoteVoltageCTRL aggiorna il valore di VOLT_CTRL, o quando
• ESTATE SAN, depicted in Figure 6.3, is responsible for the EI state avviene un cambiamento di stato in cui ci sono bus con il voltaggio
estimation and the voltage control policy formalized by Algorithm fuori dai limiti.
1. The DARep approach replicates only once ESTATE SAN, producing Infine, quando a seguito dell'aggiornamento di uno stato viene messo
ESTATESANSANDAREP0 depicted in Figure 6.4. un token nel posto Blackout, la porta di output TurnOff si
occupa delle situazioni di
blackout aggiornando opportunamente i posti (ad
esempio, ponendo a zero i valori elettrici di potenza e tensione di
tutti i carichi).
Very briefly, SANs are a variant of Stochastic Petri Nets (SPN) with a graphical
representation consisting of places, timed and instantaneous activities, and input
and output gates. Activities are equivalent to transitions in SPN. The amount of time
to complete a timed activity may be exponentially or nonexponentially distrib- uted.
Cases can be associated to activities (represented graphically as circles on the right
side of an activity) and permited to model uncertainty upon completion of an activity.
The use of gates permits a greater flexibility in specifying enabling conditions and
completion rules than simple SPN.
The Mo ̈bius modeling framework and its supporting tool Mo ̈bius [3] are briefly recalled in the following.
Our models are defined using the SAN formalism [28], a stochastic extension of Petri nets based
on the following primitives: plain and extended places (blue and orange circles) represent
SVs, timed and instantaneous activities (hollow and solid vertical bars) with linked input and output gates
(triangles pointing left or right) represent actions. Extended places represent complex data
types (like int, float, double, structures and arrays).
Input gates control when an activity is enabled.
The delay between enabling and completing of timed activities is a generally distributed random variable,
whereas enabling and completing of instantaneous activities take place at the same time.
SVs changes occur when an activity completes, as defined by the input and output gates.
The SAN primitives are defined by C++ statements, supporting external C++ data structures and
the linking to external C++ libraries.
In Mo ̈bius, the Join and Rep state-sharing compositional operators [28] are supported at level of
AFI [23, 3] as already described in Section 4. The auxiliary functions Index() and Deps(), and
the operator D are implemented through a Perl program [34, 20] which manipulates the xml files
describing the models defined in M ̈obius.