Ordine di elaborazione
Importante
Nell'implementazione delle azioni, tenere presente quanto segue:
All'interno dello stesso ciclo sono possibili più esecuzioni di un'azione, poiché l'azione può essere utilizzata in più diagrammi SFC.
Esempio: un diagramma SFC contiene due azioni IEC A e B, entrambe programmate in SFC ed entrambe richiamano un'azione IEC C. In questo caso, C verrebbe richiamata due volte.
L'utilizzo contemporaneo della stessa azione IEC in livelli diversi di un diagramma SFC può portare a risultati imprevedibili durante l'elaborazione. Per questo motivo, CODESYS genera un messaggio di errore corrispondente. Questo messaggio di errore può essere visualizzato, ad esempio, quando si lavora con progetti creati in una versione precedente del sistema di sviluppo.
Suggerimento
Nota: è possibile utilizzare variabili implicite per monitorare lo stato di elaborazione di passi e azioni o per controllare l'elaborazione.
Comportamento di base degli elementi
Passo attivo
Un passo attivo contiene azioni che sono attualmente in esecuzione. In modalità online, CODESYS visualizza i passi attivi in blu.
Passo iniziale
Nel primo ciclo dopo la chiamata di un POU in SFC, il passo iniziale viene attivato automaticamente e viene eseguita l'azione del passo.
Le azioni IEC vengono eseguite almeno due volte. La prima volta quando il passo viene attivato e la seconda quando il passo viene disattivato (ma non prima del ciclo successivo).
Diramazioni alternative
Se il passo che precede la diramazione è attivo, le prime transizioni delle diramazioni alternative vengono valutate da sinistra a destra. Non appena una transizione restituisce il valore
TRUE, viene attivato il passo successivo della diramazione corrispondente. Le transizioni delle diramazioni alla sua destra non vengono più valutate.Diramazioni parallele
Se il passo che precede la diramazione è attivo e la transizione prima della doppia linea orizzontale è
TRUE, i primi passi di tutte le diramazioni vengono attivati contemporaneamente. Le diramazioni vengono quindi eseguite in parallelo. Il passo che segue la diramazione viene attivato non appena gli ultimi passi di tutte le diramazioni sono attivi e la transizione successiva restituisce il valoreTRUE.
Ordine di elaborazione
Reset delle azioni IEC
I flag di controllo interni delle azioni con i qualificatori
N,R,S,L,D,P,SD,DS,SLvengono resettati. Questi flag controllano un'azione IEC. I flag a cui si accede all'interno delle azioni, tuttavia, non vengono resettati.Esecuzione delle azioni di uscita
Successivamente, per ogni passo viene verificato se soddisfa la condizione per l'esecuzione della sua azione di uscita. L'ordine di verifica segue la disposizione del diagramma SFC, dall'alto verso il basso e da sinistra a destra.
Un'azione di uscita viene eseguita quando il passo viene disattivato, ovvero quando le sue eventuali azioni di ingresso e azioni del passo sono state eseguite nel ciclo precedente e la condizione per il passo successivo restituisce
TRUE.Esecuzione delle azioni di ingresso
Successivamente, per ogni passo viene verificato se soddisfa la condizione per l'esecuzione della sua azione di ingresso. L'ordine di verifica segue la disposizione del diagramma SFC, dall'alto verso il basso e da sinistra a destra. Se la condizione è soddisfatta, vengono eseguite tutte le azioni di ingresso.
Un'azione di ingresso viene eseguita una volta quando il passo associato viene attivato. Il presupposto è che la transizione che precede il passo restituisca il valore
TRUE.Controllo del tempo / Esecuzione delle azioni del passo
Viene eseguito un controllo per rilevare se un passo è rimasto attivo più a lungo di quanto consentito. Il controllo del tempo serve a rilevare errori nella sequenza. Ad esempio, se una transizione attesa non viene soddisfatta e la sequenza si arresta quindi all'interno di un passo.
Esecuzione delle azioni IEC
Le azioni IEC vengono eseguite in ordine alfabetico. Ciò avviene in due passate attraverso l'elenco delle azioni. Nella prima passata vengono eseguite le azioni IEC di tutti i passi che sono stati disattivati nel ciclo precedente. Nella seconda passata vengono eseguite le azioni IEC di tutti i passi attivi.
Controllo delle transizioni / Attivazione dei passi successivi
Il passo successivo viene attivato quando sono soddisfatte le seguenti condizioni:
Il passo è attivo nel ciclo corrente.
La transizione successiva restituisce il valore
TRUE.L'eventuale tempo minimo definito per il passo è trascorso.