Elemento: generalizzazione
UN Generalizzazione è una relazione UML che esprime eredità o specializzazione. L'elemento ereditante ha gli attributi e le operazioni dell'elemento radice. Nel codice IEC, questa relazione corrisponde alla parola chiave EXTENDS
.
Una generalizzazione punta dalla classe ereditaria alla classe radice. Pertanto, la direzione della freccia indica chi eredita da chi.
Un blocco funzione può ereditare da un altro blocco funzione.
Un'interfaccia può ereditare da un'altra interfaccia.
Un DUT può ereditare da un altro DUT.
I programmi e le funzioni non possono ereditare ed essere ereditati.

Visualizza come freccia
Proprietà
Relazione | Tipo di relazione |
Ottimizza percorso | Quando questa opzione è selezionata, il percorso della freccia di relazione viene ottimizzato automaticamente. I punti fissi sono il punto iniziale dell'elemento iniziale e il punto finale dell'elemento finale. Ad esempio, se l'elemento finale viene spostato, il punto in cui la freccia punta all'elemento finale rimane lo stesso. Quando questa opzione è deselezionata, il percorso rimane invariato. Non appena un elemento di relazione viene posizionato manualmente nel diagramma di classe, questa opzione viene deselezionata. Selezionare questa opzione se è richiesta l'ottimizzazione automatica. |
Elemento iniziale | Nome dell'elemento in cui inizia l'elemento di relazione |
Elemento finale | Nome dell'elemento a cui punta l'elemento di relazione |
Identificatore | Per il Associazione e Composizione solo relazioni Nome dell'elemento di relazione |
Input dell'utente
Azione | Descrizione | |
---|---|---|
| Viene tracciata una generalizzazione tra l'erede e l'elemento padre. Il codice IEC viene adattato in modo sincrono specificando l'elemento padre nella parte di dichiarazione della classe ereditaria. Esempio: | |
| Viene tracciata una generalizzazione tra l'erede e l'elemento padre. Il codice IEC viene adattato automaticamente creando il nuovo oggetto e specificando l'oggetto padre nella parte di dichiarazione dell'oggetto ereditante. Esempio: NotaQuesto input non funziona per l'elemento DUT. | |
| Le linee sono cambiate. Il Ottimizza il percorso la proprietà viene deselezionata automaticamente. | |
| La generalizzazione viene rimossa dal diagramma e dal codice IEC. La dichiarazione |
Esempio
Fb_A
eredita da Fb_Base
:

FUNCTION_BLOCK Fb_A EXTENDS Fb_Base
Itf_A
eredita da Ift_Base
:

INTERFACE Itf_A EXTENDS Itf_Base
Dut_A
eredita da Dut_Base
:

TYPE Dut_Base : STRUCT counter : INT; END_STRUCT END_TYPE TYPE Dut_A EXTENDS Dut_Base : STRUCT data : ARRAY[0..9] OF WORD; END_STRUCT END_TYPE