meta data for this page
  •  

Descrizione funzionale uPLC

Il programma uPLC viene scansionato ogni 6 millisecondi. In ogni scan, prima viene letto l'ingresso, i due timer vengono aggiornati, il programma utente viene scansionato e l'uscita viene aggiornata. Per questo motivo, la lettura dell'ingresso e l'impostazione dell'uscita possono variare fino a 6 ms rispetto all'evento fisico. Se il microprocessore è sovraccarico (la modalità operativa è attiva, ci sono frequenti richieste seriali e il programma PLC è lungo), può richiedere più di 6 ms per scansionare l'intero programma.

Tutte le istruzioni pico-PLC, con l'eccezione delle istruzioni aritmetiche, sono istruzioni a bit singolo. Lo stack ha una profondità di solo un bit.

L'istruzione LD (LDN) carica il bit definito come operando sullo stack, mentre tutte le altre istruzioni logiche operano sullo stack stesso. Le istruzioni aritmetiche vengono eseguite solo se il bit dello stack è impostato a 1.

La tabella di verità per le operazioni logiche è data sotto per comodità dell'utente.

Operazione logica AND
bit Abit Brisultato
000
010
100
111
Operazione logica OR
bit Abit Brisultato
000
011
101
111

Le operazioni negate ANDN e ORN seguono la stessa logica, eccetto che viene usato il valore negato del bit specificato. Sono sempre impostate a 0 quando il convertitore viene alimentato.

La pico-PLC include 9 costanti per le operazioni aritmetiche. Queste sono le costanti più spesso usate dalle applicazioni tipiche. Inoltre, 17 parametri di parola sono riservati — in particolare da 8683 a 8700 — che possono essere memorizzati e usati come parametri PLC. Questi parametri sono impostati a zero ad ogni avvio PLC.

Quando le operazioni aritmetiche (ADD, SUB, MUL, DIV) vengono usate, gli operandi sono trattati come parole con segno. Per le operazioni a doppia parola, gli operandi e il risultato sono definiti come segue: il parametro dell'operando definisce la parte meno significativa, mentre la parte più significativa è rappresentata dalla parola successiva.

Dopo ogni operazione aritmetica, il bit 2 di 8671 è impostato a 0 se il risultato è positivo e a 1 se è negativo. Allo stesso modo, il bit 3 di 8671 è impostato a 1 se il risultato è 0 e a 0 se non è 0. Queste impostazioni rimangono attive finché non viene eseguita la successiva operazione aritmetica.

Un'operazione matematica viene eseguita mettendo il risultato in uno dei parametri liberi (Parametro 8674…8682).