Elementi SFC: Passo e transizione

Simbolo: _cds_img_sfc_element_step.png Passo

Simbolo: _cds_img_sfc_element_transition.png La transizione

Di norma, CODESYS inserisce i passaggi e le transizioni come una ⮫ combinazione. L'inserimento di un passo senza transizione o di una transizione senza passo causa un errore in fase di compilazione. È possibile modificarlo facendo doppio clic sul nome.

Per ulteriori informazioni sull'utilizzo dell'editor SFC, vedere anche: ⮫ «Programmazione in SFC », ⮫ «Creazione di un POU in SFC », ⮫ «Aggiunta di una transizione a gradini », ⮫ «Aggiunta di un'azione di inserimento », ⮫ «Aggiunta di un'azione di uscita », ⮫ «Aggiunta di un'azione », ⮫ «Aggiunta di un ramo alternativo », ⮫ «Aggiunta di un salto », ⮫ «Aggiunta di una macro », ⮫ «Aggiunta di un'associazione »

_cds_img_sfc_step_transition.png
AVVISO

AVVISO
AVVISO
AVVISO

AVVISO

AVVISO

I nomi dei passi devono essere unici nell'ambito della POU madre. Considerare questo aspetto soprattutto quando si utilizzano azioni che sono state programmate anche in SFC.

Si noti che è possibile convertire un passo in un passo iniziale facendo clic su «Init Step» o impostando la rispettiva proprietà in ⮫ «Proprietà dell'elemento SFC ».

Tutti i passi sono definiti dalle proprietà dei passi, che possono essere visualizzate e modificate nella vista «Properties», a seconda delle opzioni impostate.

È necessario aggiungere al passo le azioni che devono essere eseguite quando il passo è attivo. Esistono "azioni IEC" e "azioni a tappe". Per ulteriori informazioni, vedere: ⮫ «Elemento SFC: Azione »

Una transizione deve includere la condizione affinché il passo successivo sia attivo non appena il valore della condizione produce ‎TRUE‎. Pertanto, una condizione di transizione deve produrre ‎TRUE‎ o ‎FALSE‎. Può essere definito in due modi:

1

Condizione in linea (diretta): Si sostituisce il nome predefinito della transizione con il nome di una variabile booleana, un indirizzo booleano, una costante booleana o un'istruzione con un risultato booleano (esempio: ‎ (i<100) AND b‎). Qui non è possibile specificare programmi, blocchi funzione o assegnazioni.

2

"Condizione multiuso" (oggetto di transizione o proprietà separata): Si sostituisce il nome della transizione predefinita con il nome di un oggetto di transizione o di proprietà (_cds_icon_sfc_transition.png, _cds_icon_sfc_property.png). Fare clic su «Project  Add Object» per creare questi oggetti. Ciò consente un "uso multiplo" delle transizioni, ad esempio "condition_xy" nelle figure seguenti. Come una "condizione in linea", l'oggetto può contenere una variabile booleana, un indirizzo booleano, una costante booleana o un'istruzione con un risultato booleano. Inoltre, può contenere più dichiarazioni con qualsiasi codice.

_cds_img_sfc_transition_example.png
AVVISO

AVVISO
AVVISO
AVVISO

AVVISO

AVVISO

È responsabilità dell'utente assegnare l'espressione desiderata a una variabile di transizione se la transizione contiene più dichiarazioni.

Le transizioni che fanno riferimento a un oggetto di transizione o di proprietà sono contrassegnate da un piccolo triangolo nell'angolo superiore destro della casella di transizione.

_cds_img_sfc_transition_mark.png

A differenza di CODESYS V2.3, ora CODESYS gestisce una condizione di transizione come una chiamata di metodo. L'inserimento avviene secondo la seguente sintassi:

‎<transition name>:=<transition condition>‎

(Esempio: ‎trans1:= a=100‎)

o solo

‎<transition condition>‎

(esempio: ‎a=100‎)

Un esempio (‎condition_xy‎) è riportato nella figura precedente.

Per ulteriori informazioni, vedere: ‎⮫ Metodo di chiamata