FFU (Scarica FIFO)

L'istruzione FFU scarica i dati a 8, 16, 32 e 64 bit da un array unidimensionale creato dall'utente denominato stack FIFO (First In First Out, primo a entrare primo a uscire) nello stesso ordine in cui i dati sono stati caricati usando l'istruzione FFL.
Dettagli operazione:
  • Istruzione FFU: da modalità di non esecuzione in modalità di esecuzione:
    • Quando Esegue passa da FALSE a TRUE:
      • Le condizioni di errore FFU sono verificate.
      • Scarica i contenuti dello stack FIFO in corrispondenza della posizione zero se la Posizione è maggiore di zero e minore o uguale alla Lunghezza.
      • Gli elementi rimanenti si spostano di una posizione verso lo zero e l'elemento massimo dello stack FIFO viene impostato su zero, la Posizione diminuisce di uno.
      • Il bit Vuoto è impostato su TRUE se Posizione è uguale a zero.
      • Il bit Completato viene impostato quando l'istruzione viene eseguita correttamente.
    • Quando Esegue passa da FALSE a TRUE:
      • I bit Errore, Completato e ErrorID sono impostati su FALSE.
      • Il bit Vuoto è impostato su TRUE se Posizione è uguale a zero.
      • Il bit Pieno è impostato su TRUE se la Lunghezza è uguale alla Posizione. Il bit Pieno è impostato su FALSE se la Posizione è minore o uguale a zero e minore della Lunghezza.
      • Le condizioni di errore FFU non sono verificate.
    • Quando Esegue passa da TRUE a TRUE:
      • Non viene eseguita alcuna operazione di scaricamento.
      • Il bit Vuoto è impostato su TRUE se Posizione è uguale a zero.
      • Il bit Pieno è impostato su TRUE se la Lunghezza è uguale alla Posizione.
      • Le condizioni di errore FFU non sono verificate.
    • Quando Esegue passa da FALSE a FALSE:
      • I bit Errore, Completato e ErrorID sono impostati su FALSE.
      • Il bit Vuoto è impostato su TRUE se Posizione è uguale a zero.
      • Il bit Pieno è impostato su TRUE se la Lunghezza è uguale alla Posizione. Il bit Pieno è impostato su FALSE se la Posizione è minore o uguale a zero e minore della Lunghezza.
      • Le condizioni di errore FLU non sono verificate.
  • Istruzione FFU: dalla modalità in esecuzione alla modalità non in esecuzione:
    • I bit Errore, ErrorID, Completato, Vuoto e Pieno conservano lo stato modalità in esecuzione.
  • Per creare un singolo elemento per il parametro FIFO:
    • Non array:
      • l'indirizzo basato sulla variabile come Fifo1 è consentito per FIFO.
      • La lunghezza deve essere configurata come 1.
    • Array monodimensionale:
      • L'indirizzo basato sulla variabile come Fifo1 o Fifo1[0] è consentito per FIFO.
      • La lunghezza deve essere configurata come 1.
Lingue supportate: Diagramma a blocchi funzione, Diagramma Ladder, Testo strutturato.
Questa istruzione vale per i controllori L20E, L50E e L70E.
FFU
FFU
Parametri FFU
Parametro
Tipo di parametro
Tipo di dati
Descrizione
Execute
Ingresso
BOOL
Abilitazione del blocco istruzione.
  • TRUE: se viene rilevato il fronte di salita rilevato, avviare l'operazione FFU.
  • FALSE: fronte di salita non rilevato.
Dest
Ingresso
ANY_ELEMENTARY
Contiene il valore esistente nello stack FIFO.
Tipi di dati elementari supportati per Dest:
  • DWORD, REAL, TIME, DATE, LWORD, ULINT, LINT, LREAL, BOOL, SINT, USINT, BYTE, INT, UINT, WORD, DINT, UDINT.
  • La stringa non è supportata.
  • Supporta solo array unidimensionali come Array[1] o Array[Indice].
DestOffset
Ingresso
UINT
Offset elemento di destinazione.
Offset elemento se la destinazione è un tipo di dati array unidimensionale, altrimenti impostare l'offset su 0.
Per tipo di dati vettore, per scaricare nel primo elemento, impostare l'offset su 0.
FIFO
Ingresso
ANY_ELEMENTARY
L'indirizzo iniziale dello stack. FIFO deve essere configurato come nelle istruzioni FFL e FFU.
  • Tipi di dati elementari supportati per FIFO:
    DWORD, REAL, TIME, DATE, LWORD, ULINT, LINT, LREAL, BOOL, SINT, USINT, BYTE, INT, UINT, WORD, DINT, UDINT.
  • La stringa non è supportata.
  • È supportato solo l'array unidimensionale per FIFO.
FIFOCon
Ingresso
FF_LF_CON
Controllo e configurazione FIFO. La stessa configurazione deve essere configurata per le istruzioni FFL e FFU.
Per configurare posizione e lunghezza, utilizzare il tipo di dati FF_LF_CON.
Done
Uscita
BOOL
Indica se l'operazione FFU è stata completata.
  • TRUE: Operazione completata correttamente.
  • FALSE: l'operazione ha rilevato una condizione di errore o l'istruzione FFU non è in esecuzione.
Full
Uscita
BOOL
Indica se lo stack FIFO è pieno.
  • TRUE: quando lunghezza è uguale a posizione.
  • FALSE: quando la posizione è maggiore di zero e minore della lunghezza.
Empty
Uscita
BOOL
Indica se lo stack FIFO è vuoto.
  • TRUE: quando la posizione è uguale a 0.
  • FALSE: quando la posizione non è uguale a 0.
Error
Uscita
BOOL
Indica la presenza di una condizione di errore.
  • TRUE: l'operazione ha riscontrato un errore.
  • FALSE: l'operazione è stata completata o l'istruzione non è in esecuzione.
ErrorID
Uscita
USINT
Numero univoco che identifica l'errore. Gli errori sono definiti nei codici di errore FFU.
Tipo di dati FF_LF_CON
Parametro
Tipo di dati
Descrizione
Length
UINT
Numero di elementi utilizzati per l'operazione FIFO. Il limite massimo è 1024.
Position
USINT
Determina la posizione disponibile successiva in FIFO per la rimozione o l'immissione di Src. La posizione è l'offset del vettore.
  • Esempio 1:
    Vettore configurato dall'utente, arr[0..5]. La posizione iniziale è configurata come 1. I dati sono inseriti in arr[1] e la posizione aumenta di + 1.
  • Esempio 2:
    Array unidimensionale configurato dall'utente come arr[1..5]. La posizione iniziale è configurata come 1. I dati sono inseriti in arr[2] e la posizione aumenta di + 1.
Codici di errore FFU
Codice di errore
Descrizione errore
0
Nessun errore.
1
Il tipo di dati Src FFL non è supportato.
2
Il tipo di dati Dest FFU non è supportato.
3
Il tipo di dati FIFO non è supportato.
4
I tipi di dati Src e Dest non corrispondono al tipo di dati FIFO.
Azione correttiva:
Il tipo di dati del parametro Src FFL e del parametro Dest FFU devono corrispondere al tipo di dati del vettore FIFO.
5
FIFO: la dimensione dell'array non è supportata.
Azione correttiva:
FIFO supporta solo array unidimensionali.
6
La lunghezza del controllo FIFOCon supera la dimensione del vettore FIFO.
Azione correttiva:
La lunghezza del controllo FIFOCon non supera la dimensione del vettore FIFO.
7
La lunghezza FIFOCon supera la lunghezza massima.
8
La lunghezza FIFOCon è zero.
9
La posizione FIFOCon supera la lunghezza FIFOCon.
10
La posizione e la lunghezza del controllo FFL sono uguali.
11
La posizione del controllo FFU è zero.
12
La dimensione del vettore FFL o FFU non è supportata.
Azione correttiva:
FFL e FFU supportano solo array unidimensionali.
13
FFL o FFU DestOffset supera la dimensione vettore Dest.

Esempi di FFU

Esempio di diagramma a blocchi funzionali FFU
Esempio di Diagramma a blocchi funzione FFU
Esempio di diagramma ladder FFU
Esempio di Diagramma Ladder FFU
Esempio di testo strutturato FFU
Esempio di Testo strutturato FFU
Risultati
Risultati
Fornire un feedback
Hai domande o feedback su questa documentazione? invia il tuo feedback qui.
Normal