Tipi di task

Introduzione

La sezione seguente descrive i vari tipi di task disponibili per il programma, oltre a una descrizione delle loro caratteristiche.

Task ciclico

A un task ciclico viene assegnato un tempo di ciclo fisso utilizzando l'impostazione dell'intervallo nella sezione di tipo della sottoscheda di configurazione per quel task. Ogni tipo di task ciclico viene eseguito come indicato di seguito:

1.

Lettura ingressi: Gli stati dell'ingresso fisico vengono scritti nelle variabili di memoria dell'ingresso %I e vengono eseguite altre operazioni di sistema.

2.

Elaborazione task: Il codice utente (POU e così via) definito nel task viene elaborato. Le variabili della memoria di uscita %Q sono aggiornate in base alle istruzioni del loro programma applicativo non ancora scritte nelle uscite fisiche durante questa operazione.

3.

Scrittura uscite: Le variabili di memoria di uscita %Q vengono modificate con la forzatura di uscita definita; tuttavia, la scrittura delle uscite fisiche dipende dal tipo di uscita e dalle istruzioni utilizzate.

Per ulteriori informazioni sulla definizione del task ciclo bus, vedere EcoStruxure Machine Expert - Guida alla programmazione e Impostazioni PLC.

Per ulteriori informazioni sul comportamento degli I/O, vedere la sezione Descrizione dettagliata degli stati del controller.

4.

Tempo intervallo rimanente: Il firmware del controller esegue l'elaborazione del sistema e altri task a priorità più bassa.

NOTA: Se si definisce un periodo troppo breve per un task ciclico, esso viene ripetuto immediatamente dopo la scrittura sulle uscite e senza eseguire task di priorità più bassa o altre elaborazioni del sistema. Ciò influisce sull'esecuzione di tutti i task, provoca il superamento dei limiti del watchdog del sistema e la generazione di un'eccezione del watchdog del sistema.

Task a esecuzione libera

I task a esecuzione libera non hanno una durata fissa. In modalità a esecuzione libera, ciascuna scansione del task inizia quando la scansione precedente è stata completata e dopo un breve periodo di elaborazione del sistema. Ogni tipo di task a esecuzione libera viene eseguito come indicato di seguito:

1.

Lettura ingressi: Gli stati dell'ingresso fisico vengono scritti nelle variabili di memoria dell'ingresso %I e vengono eseguite altre operazioni di sistema.

2.

Elaborazione task: Il codice utente (POU e così via) definito nel task viene elaborato. Le variabili della memoria di uscita %Q sono aggiornate in base alle istruzioni del loro programma applicativo non ancora scritte nelle uscite fisiche durante questa operazione.

3.

Scrittura uscite: Le variabili di memoria di uscita %Q vengono modificate con la forzatura di uscita definita; tuttavia, la scrittura delle uscite fisiche dipende dal tipo di uscita e dalle istruzioni utilizzate.

Per ulteriori informazioni sulla definizione del task ciclo bus, vedere EcoStruxure Machine Expert - Guida alla programmazione e Impostazioni PLC.

Per ulteriori informazioni sul comportamento degli I/O, vedere la sezione Descrizione dettagliata degli stati del controller.

4.

Elaborazione del sistema: Il firmware del controller esegue l'elaborazione del sistema e gli altri task a priorità più bassa (ad esempio: gestione HTTP, gestione Ethernet, gestione parametri).

NOTA: Se si desidera definire l'intervallo del task, consultare Task ciclico.

Task evento

Questo tipo di task è gestito da evento e avviato da una variabile del programma. Inizia sul fronte di salita della variabile booleana associata all'evento trigger, a meno che non sia presente un task con precedenza a priorità più alta. In questo caso, il task evento si avvia in base alle assegnazioni di priorità dei task.

Ad esempio, se è stata definita una variabile chiamata my_Var e si desidera assegnarla ad un Evento, procedere nel seguente modo:

Passo

Azione

1

Fare doppio clic su TASK nella Struttura Applicazioni.

2

Selezionare Evento dall'elenco Tipo nella schermata Configurazione.

3

Fare clic sul pulsante Accesso facilitato a destra del campo Evento.

Risultato: Viene visualizzata la finestra Accesso facilitato.

4

Spostarsi nella struttura della finestra di dialogo Accesso facilitato per trovare e assegnare la variabile my_Var.

NOTA: Quando il task di evento viene attivato a una frequenza troppo alta, il controller passa in stato HALT (eccezione).

La frequenza massima di eventi è:

  • 12 eventi al millisecondo per TM262L01MESE8T, TM262L10MESE8T, TM262M05MESS8T

    e TM262M15MESS8T
  • 16 eventi al millisecondo per TM262L20MESE8T, TM262M25MESS8T e TM262M35MESS8T

Se il task evento viene attivato a una frequenza più alta, viene registrato il messaggio 'Numero ISR superato' nella pagina di registro dell'applicazione.

Task evento esterno

Questo tipo di task è gestito da evento e avviato dal rilevamento di un evento funzione hardware o correlato all'hardware. Viene avviato quando si verifica un evento, a meno che sia presente un task con priorità più alta. In questo caso, il task evento esterno si avvia in base alle assegnazioni di priorità dei task.

Ad esempio, un task evento esterno può essere associato a un evento di arresto HSC. Per associare l'evento HSC0_STOP a un task evento esterno, selezionarlo dall'elenco a discesa Evento esterno, nella scheda Configurazione.

Il task evento esterno può essere associato all'evento CAN Sync. Per associare l'evento CAN_1_SYNC a un task evento esterno, selezionarlo dall'elenco a discesa Evento esterno nella scheda Configurazione.

A un task di evento esterno possono essere associati diversi tipi di evento:

  • Soglie HSC

  • Arresto HSC

  • Sincronizzazione CAN

  • AFTER_RTP

  • Misuratore di periodo eventi HSC

  • Ingresso evento

NOTA: CAN Sync è un oggetto evento specifico che dipende dalla configurazione del gestore CANopen.
NOTA: Quando il task di evento viene attivato a una frequenza troppo alta, il controller può rilevare un errore e passa in stato HALT (eccezione).

La frequenza massima di eventi è:

  • 12 eventi al millisecondo per TM262L01MESE8T, TM262L10MESE8T, TM262M05MESS8T

    e TM262M15MESS8T
  • 16 eventi al millisecondo per TM262L20MESE8T, TM262M25MESS8T e TM262M35MESS8T

Se il task evento viene attivato a una frequenza più alta, viene registrato il messaggio 'Numero ISR superato' nella pagina di registro dell'applicazione.