Skip to main content

Compito del ciclo del bus

Generalmente, per ogni task IEC, i dati di input utilizzati vengono letti all'inizio di ogni task (1) e i dati di output scritti vengono trasferiti al driver I/O alla fine del task (3). L'implementazione nel driver I/O è decisiva per il trasferimento aggiuntivo dei dati I/O. È responsabile dell'intervallo di tempo e del momento in cui si verifica il trasferimento effettivo al sistema di bus corrispondente.

Il task ciclo bus del PLC può essere definito globalmente per tutti i bus di campo nelle impostazioni del PLC. Per alcuni bus di campo, tuttavia, è possibile modificarlo indipendentemente dall'impostazione globale. Il task con il tempo di ciclo più breve viene utilizzato come task del ciclo bus (impostazione: non specificato nelle impostazioni del PLC). I messaggi vengono normalmente inviati sul bus in questa attività.

Altri task copiano solo i dati I/O da un buffer interno che viene scambiato solo con l'hardware fisico nel task del ciclo bus.

_task_diagram_standard.png

(1) Legge gli input dal buffer di input

(2) Compito IEC

(3) Scrittura degli output nel buffer di uscita

(4) Ciclo bus

(5) Buffer di ingresso

(6) Buffer di uscita

(7) Copia i dati da/verso il bus

(9) Task ciclo bus, priorità 1, 1 ms

(10) Attività ciclo bus, priorità 5

(11) Task ciclo bus, priorità 10, interrotto dal task 5

Utilizzo delle attività

Il Distribuzione delle attività La scheda fornisce una panoramica dei canali I/O utilizzati, del task ciclo bus impostato e dell'utilizzo dei canali.

Avvertimento

Se un'uscita viene scritta in vari task, lo stato non è definito, poiché può essere sovrascritto in ogni caso.

Se gli stessi input vengono utilizzati in varie attività, è possibile che l'input cambi durante l'elaborazione di un'attività. Ciò si verifica quando l'attività viene interrotta da un'attività con una priorità più alta e causa la rilettura dell'immagine del processo. Rimedio: all'inizio dell'attività IEC, copiate le variabili di input in variabili e lavorate solo con le variabili locali nel resto del codice

Conclusione: l'utilizzo degli stessi input e output in più attività non ha alcun senso e in alcuni casi può portare a reazioni impreviste.

Per ulteriori informazioni, vedere: