Skip to main content

Oggetto: proprietà

Simbolo: _cds_icon_interface_property.png

Parola chiave: PROPERTY

Le proprietà sono un'estensione della norma IEC 61131-3 e uno strumento per la programmazione orientata agli oggetti.

Le proprietà vengono utilizzate per l'incapsulamento dei dati perché consentono l'accesso esterno ai dati e fungono contemporaneamente da filtri. A tale scopo, una proprietà fornisce i metodi di accesso Get e Set che consente l'accesso in lettura e scrittura ai dati dell'istanza sotto la proprietà.

È possibile aggiungere una proprietà con metodi di accesso sotto un programma, un blocco funzione o un elenco di variabili globali. Clic Progetto → Aggiungi oggetto → Proprietà per aprire il Aggiungi proprietà dialogo.

Suggerimento

Puoi aggiungere un proprietà dell'interfaccia sotto un'interfaccia.

Quando si copia una proprietà inserita sotto una POU e la si aggiunge sotto un'interfaccia, o se si sposta la proprietà lì, le implementazioni incluse vengono rimosse automaticamente.

Finestra di dialogo: Aggiungi proprietà

Funzione: Crea una nuova proprietà sotto la POU selezionata quando la finestra di dialogo viene chiusa.

Chiamata: Progetto → Aggiungi oggetto → Proprietà; menù contestuale

Requisiti: Un programma (PRG), un blocco funzione (FUNCTION_BLOCK) o un elenco di variabili globali (GVL) è selezionato nel POU vista o il Dispositivi Visualizza.

Nome

Nome (identificatore) della proprietà

Esempio: prop_iA

Tipo di reso

Tipo predefinito o tipo strutturato di valore restituito

Esempio: INT

Linguaggio di attuazione

Esempio: Testo strutturato (ST)

Identificatore di accesso

Controlla l'accesso ai dati

PUBBLICO o non specificato

L'accesso non è limitato.

PRIVATO

L'accesso è limitato al programma, blocco funzione o GVL.

L'oggetto è contrassegnato come (private) nella vista POU o dispositivo. La dichiarazione contiene la parola chiave PRIVATE.

PROTETTO

L'accesso è limitato al programma, blocco funzione o GVL con le sue derivazioni.

L'oggetto è contrassegnato come (protected) nella vista POU o dispositivo. La dichiarazione contiene la parola chiave PROTECTED.

INTERNO

L'accesso è limitato allo spazio dei nomi (libreria).

L'oggetto è contrassegnato come (internal) nella vista POU o dispositivo. La dichiarazione contiene la parola chiave INTERNAL.

Astratto

standard icon: identifica che la proprietà non ha un'implementazione e l'implementazione è fornita dall'FB derivato

Aggiungere

Aggiunge una nuova proprietà al di sotto dell'oggetto selezionato e al di sotto dei metodi di accesso Get e Set

Nota: quando si seleziona una proprietà, è anche possibile aggiungere esplicitamente una funzione di accesso rimossa in precedenza facendo clic su Aggiungi oggetto.

Editore: Proprietà

È possibile programmare l'accesso ai dati nell'editor. Il codice può contenere variabili locali aggiuntive. Tuttavia, non deve contenere variabili di input aggiuntive o (al contrario di una funzione o di un metodo) variabili di output.

Esempio 522. Esempio
_cds_img_property.png

Blocco funzione FB_A

FUNCTION_BLOCK FB_A
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
    iA : INT;
END_VAR

iA := iA + 1;

Proprietà prop_iA

PROPERTY PUBLIC prop_iA : INT

Metodo di accesso FB_A.prop_iA.Get

prop_iA := iA;

Metodo di accesso FB_A.prop_iA.Set

iA := prop_iA;
PROGRAM PLC_PRG
VAR
        fbA : FB_A;
        iVar: INT;
END_VAR

fbA();
IF fbA.prop_iA > 500 THEN
        fbA.prop_iA := 0;
END_IF
iVar := fbA.prop_iA;


Ottieni e imposta accessori

La chiamata del Set l'accessor viene scritto nella proprietà. Quindi viene utilizzato allo stesso modo di un parametro di input. Quando viene chiamata la funzione di accesso Get, la proprietà viene letta. Viene utilizzato allo stesso modo di un parametro di uscita. L'accesso è limitato in ogni caso mediante modificatori di accesso (qualificatori). Di conseguenza, gli oggetti vengono identificati di conseguenza.

Quando si accede a una proprietà in sola lettura o in sola scrittura, è possibile eliminare le funzioni di accesso non necessarie.

È possibile aggiungere esplicitamente le funzioni di accesso selezionando una proprietà e facendo clic Aggiungi oggetto. Si apre anche una finestra di dialogo Aggiungi Ottieni accesso o Aggiungi set di accesso. Lì puoi impostare la lingua di implementazione e l'accesso.

Tabella 60. Finestra di dialogo: Aggiungi accesso (Imposta).

Linguaggio di attuazione

Esempio: Testo strutturato (ST)

Identificatore di accesso

Qualificatore per la parte di dichiarazione

PUBLIC o non specificato

L'accesso non è limitato.

PRIVATE

L'accesso è limitato al programma, blocco funzione o GVL.

L'oggetto è contrassegnato come (private) nella vista POU o dispositivo. La dichiarazione contiene la parola chiave.

PROTECTED

L'accesso alla proprietà è limitato al programma, al blocco funzione o al GVL e alle sue derivazioni. La dichiarazione contiene la parola chiave.

L'oggetto è contrassegnato come (protected) nella vista POU o dispositivo.

INTERNAL

L'accesso al metodo è limitato allo spazio dei nomi (la libreria).

L'oggetto è contrassegnato come (internal) nella vista POU o dispositivo. La dichiarazione contiene la parola chiave.

Aggiungere

Aggiunge i metodi di accesso Get o Set sotto la proprietà selezionata.



Monitoraggio degli immobili in modalità online

Il seguente pragma sono previsti per il monitoraggio degli immobili in modalità online. Li inserisci nella posizione in alto della definizione della proprietà:

  • {attribute 'monitoring' := 'variable'}

    Ogni volta che si accede alla proprietà, CODESYS salva il valore effettivo in una variabile e visualizza il valore di questa variabile. Questo valore può diventare obsoleto se nel codice non avviene più l'accesso alla proprietà.

  • {attribute 'monitoring' := 'call'}

    Ogni volta il valore viene visualizzato, CODESYS chiama il codice del Get accessorio. Se questo codice contiene un effetto collaterale, il monitoraggio esegue l'effetto collaterale.

. È possibile monitorare una proprietà con l'aiuto delle seguenti funzioni.
  • Monitoraggio in linea

    Requisito: il Abilita il monitoraggio in linea l'opzione è selezionata in Editor di testo categoria del Opzioni dialogo.

  • Lista di controllo

Supporto di input durante la generazione di POU ereditari

Quando si esegue la programmazione orientata agli oggetti e si utilizza l'ereditarietà (EXTENDS parola chiave) delle POU, puoi ottenere assistenza come segue:

Quando si inserisce un'azione, una proprietà, un metodo o una transizione sotto una POU derivata da una POU di base, il Aggiungere … si apre la finestra di dialogo. Quindi il campo di input per il nome si estende a una casella di riepilogo. La casella di riepilogo contiene una selezione valida tra le azioni, le proprietà, i metodi o le transizioni disponibili nella POU di base. Ora puoi, ad esempio, accettare facilmente un metodo della POU di base e quindi adattarlo alla funzione derivata della POU.

Metodi e proprietà con il modificatore di accesso PRIVATE non sono elencati qui perché non sono nemmeno ereditati. Metodi e proprietà con il modificatore di accesso PUBLIC ottenere automaticamente un campo modificatore di accesso vuoto quando si accetta nella POU derivata, il che significa la stessa cosa dal punto di vista funzionale.

Per ulteriori informazioni, vedere: Proprietà, Metodo, Transizione, Azione,

Esempio 523. Esempio
_cds_img_input_wizzard_for_blocks.png