DOCA0272IT-00

Dati ciclici

Tutti i blocchi di funzione che accedono ai dati ciclici. Utilizzano due variabili interfaccia per parametrizzare l'accesso ai dati ciclici:

  • i_hwStartAddress per i dati di ingresso ciclici

  • iq_hwQWAddress per i dati di uscita ciclici

La variabile interfaccia "i_hwStartAddress" (tipo di dati "Variante") è utilizzata dai blocchi di funzione per recuperare l'intera quantità di dati di ingresso ciclici associati all'avatar. Affinché il blocco di funzione possa eseguire questa procedura, deve essere parametrizzato con l'indirizzo di avvio dell'intervallo di ingresso dell'avatar (modulo secondario di ingresso dell'avatar per PROFINET IO, modulo avatar per PROFIBUS DP). Il metodo tradizionale prevede la creazione di tag di un PLC per un indirizzo all'inizio dell'intervallo. Le dimensioni dei dati del tag di un PLC non comportano conseguenze, fintantoché si trova all'inizio dell'intervallo (ad esempio, BOOL "AvPump02_StartAddress" che punta su Indirizzo "%I4.0" per l'avatar della pompa nell'esempio seguente).

Per la direzione dei dati di uscita, i blocchi di funzione utilizzano la variabile in/out "iq_hwQWAddress" (in alcuni casi anche "iq_hwQBAddress" perché è presente un unico byte di dati di uscita per l'avatar). Al contrario dei dati di ingresso, questa variabile si riferisce ai dati di uscita completi dell'isola (nella maggior parte dei casi una Word) ed è collegata come variabile in/out al blocco di funzione, come in alcuni casi, più blocchi di funzione accedono ai dati di uscita dello stesso avatar in diverse aree (ad esempio, blocco di funzione controllo avatar insieme al blocco di funzione Diagnostica avatar) pertanto lo stato corrente deve essere letto prima che venga scritta una modifica nell'uscita. Generalmente, l'accesso all'area di uscita dell'avatar deve essere configurato mediante un tag di un PLC per l'area di uscita completa (nell'esempio precedente, "AvConveyorOneDir03_OutAddress" dell'indirizzo di referenziazione tipo Word "%QW5").

NOTA: i blocchi di funzione nella libreria di TeSys™ island per TIA Portal non possono rilevare la configurazione errata delle aree di ingresso/uscita degli avatar. Pertanto, l'utente deve garantire che le aree di ingresso e uscita corrette siano configurate e utilizzate insieme ai tipi di blocchi di funzione appropriati. La mancata esecuzione di questa operazione potrebbe provocare un comportamento imprevisto di TeSys™ island.

Non appena la variabile di ingresso "i_xEnable" è impostata su "true" nel programma, i blocchi di funzione che implicano la comunicazione ciclica eseguono e aggiornano i dati ciclici. Questo significa che eventuali variabili di ingresso nell'interfaccia del blocco di funzione che controlla l'avatar attraverso la comunicazione ciclica (ad esempio, "i_xRunFwd" nell'esempio precedente) verrà scritta nell'area di dati di uscita dell'avatar. Contemporaneamente, eventuali informazioni importanti sullo stato dall'area dei dati di ingresso dell'avatar vengono letti dal blocco di funzione e copiati nell'interfaccia di uscita (ad esempio, "q_xRunFwd").

L'uscita di stato "q_xActive" dei blocchi di funzione è la controparte di "i_xEnable". Se l'esecuzione del blocco di funzione è abilitato e non si è verificato alcun errore rilevato, "q_xActive" è "true". Se si verifica un errore rilevato durante l'esecuzione del blocco di funzione, questo verrà segnalato da un fronte di salita su "q_xError". Il recupero dei dati di ingresso ciclico e l'esecuzione del blocco di funzione vengono arrestati. Inoltre, "q_dwErrorID" fornisce i dettagli sul tipo di errore rilevato che si è verificato utilizzando uno dei valori dei codici errore dal blocco di dati ConstTeSysIsland (vedere Blocco di dati ConstTeSysIsland). Contemporaneamente, tutte le uscite del blocco di funzione, che sono i risultati della comunicazione ciclica o aciclica con TeSys island, vengono reimpostati ai rispettivi valori predefiniti. Ciò significa che:

  • Tutti i risultati del tipo numerico (INT, UINT, …) di campo di bit (WORD, DWORD, …) sono impostati su 0

    .
  • Tutti i risultati del tipo di stringa sono impostati su una stringa vuota.

  • Tutti i risultati del tipo booleano sono impostati su FALSE.

  • Tutti i risultati del tipo data e ora (DTL in questa libreria) sono reimpostati al valore minimo di quel tipo (DTL#1970-01-01-00:00:00.0).

  • Tutti i risultati raggruppati in un tipo definito dall'utente (UDT) o struct vengono reimpostati ai valori predefiniti specificati nella definizione del tipo. Anche queste in generale seguono le regole precedenti.

NOTA: le modifiche alle definizioni degli UDT contenute nella libreria determinano anche modifiche dei valori predefiniti utilizzati dai blocchi di funzione quando si verifica un errore, pertanto devono essere evitate.
AVVERTIMENTO
Funzionamento accidentale dell'apparecchio
  • Per evitare interruzioni del funzionamento del carico rappresentato dall'avatar quando si verifica un errore, i dati di uscita ciclici inviati all'isola (ad esempio, i comandi in funzione) vengono lasciati invariati. Se è necessario arrestare il carico quando si verifica un errore, l'utente è responsabile della rimozione di eventuali bit di ingresso attivi del blocco di funzione, se necessario, a causa della situazione.
Il mancato rispetto di queste istruzioni può provocare morte, gravi infortuni o danni alle apparecchiature.

Il blocco di funzione abbandona solo lo stato di errore rilevato dopo che viene rilevato un nuovo fronte di risalita su "_xEnable" e se la condizione che porta al blocco di funzione per accedere allo stato di errore viene cancellata.

QR Code is a registered trademark of DENSO WAVE INCORPORATED in Japan and other countries.

Le informazioni sono state utili?