Sei sulla pagina 1di 23

9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

COGI Elettronica

CNC 9732

MANUALE DEL PLC INTEGRATO

Emissione del 15/01/1998


Release Software 1.1xx

1
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

Manuale PLC
Versione 1.123

Il PLCS è un linguaggio di programmazione ideato per poter supportare i Controlli


Numerici di produzione COGI.
E’ caratterizzato da una notevole flessibilità e potenza che consentono di interfacciare
con semplicità i controlli numerici della serie 9732CNC con qualsiasi tipo di macchina.

Nella versione base è possibile gestire fino a:

128 Ingressi PLC


128 Uscite PLC
128 Ingressi CN
128 Uscite CN
256 Bit di Appoggio PLC
512 Bit di Appoggio PLC retentivi
128 Messaggi PLC
64 Timer PLC
32 Contatori PLC
64 Ingressi schede AXSA2
64 Uscite schede AXSA2
16 Ingressi analogici schede AXSA2
8 Bytes pulsanti provenienti da CN di tipo PACK
64 Bytes di parametri provenienti da CN
1 Byte tasto speciale premuto da CN
16 Bytes Sequenziatori PLC

Per applicazioni particolari è possibile variare queste caratteristiche adattandole alle


esigenze del programmatore della logica di macchina.

2
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

Segnali logici - Bit - Bytes - Word - DWord

Indicheremo come segnale logico una grandezza che può assumere solo due valori, ossia
che può esistere in due soli modi detti stati.
Il segnale logico più piccolo esistente è il BIT il quale può assumere due stati :

stato 1 (on.) quando il bit è vero


stato 0 (off.) quando il bit è falso.

In questo modo ogni ‘relè’ o ‘contatto’ del nostro PLC può assumere il valore 1 quando
il relè è eccitato o il contatto è chiuso ed il valore 0 quando il relè è diseccitato o il
contatto è aperto.

Un insieme di questi bits, e più precisamente un insieme di 8 bits formano un BYTE. il


quale può assumere 256 valori differenti:

da 0 a 255 in Decimale
da 0 a FF in Esadecimale
da 0000.0000 a 1111.1111 in Binario.

L’insieme di due Bytes formano una WORD (16 bits), la quale può assumere 65.536
valori differenti.

da 0 a 65535 in Decimale.
da 0 a FFFF in Esadecimale.
da 0000.0000.0000.0000 a 1111.1111.1111.1111 in Binario.

L’insieme di due Words formano una DWord (32 bits), la quale può assumere
4.294.967.296 valori differenti, da 0 a FFFFFFFF in Esadecimale.

La notazione usata per trattare costanti su byte e word può essere di tre tipi:

Decimale : #100
Esadecimale : #64H
Binaria : #1010B

il simbolo cancellino (#) che precede il valore serve a specificare al compilatore che la
grandezza trattata è una costante.

Vi sono altri simboli che possono precedere dei numeri, e precisamente sono:

‘+’ Timer con ritardo alla Eccitazione

3
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

‘-’ Timer con ritardo alla Diseccitazione

Sigle per identificare le aree dati

Il linguaggio PLCS tratta 13 tipi di aree identificabili attraverso lettere che selezionano la
parte del PLC o del CN su cui andare ad agire.

‘R’ = identifica l’area di input del PLC (ingressi fisici)


‘T’ = identifica l’area di output del PLC (uscite fisiche)
‘E’ = identifica l’area di input del CN
‘U’ = identifica l’area di output del CN
‘A’ = identifica l’area interna di appoggio del PLC
‘B’ = identifica l’area interna di appoggio del PLC retentiva
‘M’ = identifica l’area dei messaggi del PLC
‘D’ = identifica l’area dei timer del PLC
‘C’ = identifica l’area dei contatori del PLC
‘I’’ = identifica l’area di input delle schede AXSA2 (ingressi fisici)
‘O’ = identifica l’area di output delle schede AXSA2 (uscite fisiche)
‘N’ = identifica l’area di input dei convertitori AD delle schede AXSA2
‘P’ = identifica l’area parametri provenienti da CN (File: TABCOST.DAT)
‘K’ = identifica l’area pulsanti presenti sul CN di tipo PACK
‘VAR’ = identifica il puntatore delle variabili di sistema del CN
‘KEY’ = identifica il byte contenente il valore di un tasto premuto sul CN
‘SQ’ = identifica l’area dei sequenziatori del PLC

I bytes di un’area sono tra loro distinti con un numero compreso tra 0 e 31 dipendente
dal numero di byte dell’area trattata, scritto prima della lettera che identifica la stessa.

Es.: 3E = è il byte, word, dword 3 dell’area ‘E’

Gli 8 bit di uno stesso byte si distinguono con una cifra compresa tra 0 e 7, scritta dopo
la lettera che identifica l’area.

Es.: 5U6 = è il bit 6 del byte ‘5U’

Per indicare un BYTE, una WORD o una DWORD è sufficiente omettere la cifra che
identifica il bit.

Es.: 3A = è il byte, word o dword dal byte 3 dell’area A

Per utilizzare una variabile di sistema usare la seguente sintassi :

VARx1 :x2

4
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

dove x1 è il numero della variabile di sistema con sommato l’offset x2..

Per utilizzare un sequenziatore usare la seguente sintassi :

STR 0A0 /se 0A0


OUT SQ0 :10 /presetta il valore del sequenziatore 0 = 10

STR 0A0 /se 0A0


OUT SQ0 :+ /incrementa il valore del sequenziatore 0 di 1

STR 0A0 /se 0A0


OUT SQ0 :- /decrementa il valore del sequenziatore 0 di 1

STR SQ0 :10 /inizio condizione sequenziatore 0 = 10


STR 0R0 /
OUT 0T0 /
ENDS /fine condizione sequenziatore 0 = 10

5
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

Equazioni logiche e loro struttura

Ogni equazione è costituita da due distinte parti:

parte decisionale
istruzione esecutiva

Nella parte decisionale vengono dichiarate seguendo una sintassi legata alle istruzioni
utilizzate tutte quelle grandezze logiche che prenderanno parte al risultato dell’equazione
stessa La risoluzione di tali equazioni determina o meno l’esecuzione dell’istruzione
esecutiva posto al termine della parte decisionale.

Es.: STR 0A1


AND 0R0 Parte decisionale
AND 1U0

OUT 1T0 Istruzione esecutiva

In questo esempio se i contatti 0A1, 0R0 e 1U0 sono a livello logico 1, verrà portato
a 1 lo stato del contatto 1T0 altrimenti fissato a 0.

6
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

Elenco istruzioni PLCS

Istruzioni decisionali

 STR x1

Istruzione che permette di iniziare un blocco decisionale. Restituisce un risultato


vero se il bit x1 è allo stato logico 1.

x1 = Bit - R Area, T Area, E Area, U Area, A Area, B Area, M Area,


I Area, O Area, N Area, K Area, D Area, P Area, SQ Area.

Es.: STR 0A0 0A0 0T0


OUT 0T0 0 0
1 1
STR SQ0 :1
STR 0A0
OUT 0T0
ENDS

0A0 0T0

 STRN x1

Istruzione che permette di iniziare un blocco decisionale. Restituisce un risultato


vero se il bit x1 è allo stato logico 0.

x1 = Bit - R Area, T Area, E Area, U Area, A Area, B Area, M Area,


I Area, O Area, N Area, K Area, D Area, P Area.

Es.: STRN 0A0 0A0 0T0


OUT 0T0 0 1
1 0

0A0 0T0

7
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 AND x1

Istruzione che esegue un AND logico tra il risultato delle istruzioni precedenti
ed il bit x1.

x1 = Bit - R Area, T Area, E Area, U Area, A Area, B Area, M Area,


I Area, O Area, N Area, K Area, P Area, D Area.

Es.: STR 0A0 0A0 0R1 0T0


AND 0R1 0 0 0
OUT 0T0 0 1 0
1 0 0
1 1 1
0A0 0R1 0T0

 ANDN x1

Istruzione che esegue un AND NOT logico tra il risultato delle istruzioni
precedenti ed il bit x1.

x1 = Bit - R Area, T Area, E Area, U Area, A Area, B Area, M Area,


I Area, O Area, N Area, K Area, P Area, D Area.

Es.: STR 0A0 0A0 0R1 0T0


ANDN 0R1 0 0 0
OUT 0T0 0 1 0
1 0 1
1 1 0
0A0 0R1 0T0

8
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 OR x1

Istruzione che esegue un OR logico tra il risultato delle istruzioni precedenti ed


il bit x1.

x1 = Bit - R Area, T Area, E Area, U Area, A Area, B Area, M Area,


I Area, O Area, N Area, K Area, P Area, D Area.

Es.: STR 0A0 0A0 0R1 0T0


OR 0R1 0 0 0
OUT 0T0 0 1 1
1 0 1
1 1 1
0A0 0T0

0R1

 ORN x1

Istruzione che esegue un OR NOT logico tra il risultato delle istruzioni


precedenti ed il bit x1.

x1 = Bit - R Area, T Area, E Area, U Area, A Area, B Area, M Area,


I Area, O Area, N Area, K Area, P Area, D Area.

Es.: STR 0A0 0A0 0R1 0T0


ORN 0R1 0 0 1
OUT 0T0 0 1 0
1 0 1
1 1 1

0A0 0T0

0R1

9
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 STKAND

Istruzione che esegue un AND logico tra il risultato delle istruzioni precedenti
e lo stato salvato precedentemente nello stack.

Es.: STRN 0A0


OR 1A1
STR 0A1
OR 1A2
STKAND
STRN 3U6
STKAND
OUT 0T0

0A0 0A1 3U6 0T0

1A1 1A2

 STKOR

Istruzione che esegue un OR logico tra il risultato delle istruzioni precedenti e


lo stato salvato precedentemente nello stack.

Es.: STR 7E6


AND 7E7
STR 0A4
ANDN 7A7
STKOR
STRN 5A0
STKAND
OUT 0T0

5A0 7E6 7E7 0T0

0A4 7A7

10
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 EQU x1,x2 x3,x4

Istruzione che esegue il confronto tra il byte x1 e il byte x2, il risultato


dell’istruzione è vero se x1 è uguale a x2.

x1 = Bit - C Area.
Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, K Area, P Area.
x2 = Bit - C Area.
Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, K Area, P Area, Costante.

Es.: EQU 7E,#10


OUT 0T0

Istruzione che confronta il codice del tasto premuto sul CNC (parametro KEY)
con la costante x10. I tasti validi vanno da F9 a F12 ed i rispettivi codici da 67 a
71.

x3 = Byte - KEY.
x4 = Byte - Costante.

Es.: EQU 7E,#71


OUT 0T0

 EQUN x1,x2

Istruzione che esegue il confronto tra il byte x1 e il byte x2, il risultato


dell’istruzione è vero se x1 è diverso da x2.

x1 = Bit - C Area.
Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area.
x2 = Bit - C Area.
Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, K Area, P Area, Costante.

Es.: EQUN 7E,#10


OUT 0T0

11
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 EQUW x1,x2

Istruzione che esegue il confronto tra la word x1 e la word x2, il risultato


dell’istruzione è vero se x1 è uguale a x2.

x1 = Bit - C Area.
Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area.
x2 = Bit - C Area.
Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Es.: EQUW 7E,#10H


OUT 0T0

 EQUNW x1,x2

Istruzione che esegue il confronto tra la word x1 e la word x2, il risultato


dell’istruzione è vero se x1 è diverso da x2.

x1 = Bit - C Area.
Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area.
x2 = Bit - C Area.
Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Es.: EQUNW 7E,#10H


OUT 0T0

 EQUL x1,x2

Istruzione che esegue il confronto tra la dword x1 e la dword x2, il risultato


dell’istruzione è vero se x1 è uguale a x2.

x1 = DWord - VAR Sistema.


x2 = DWord - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Es.: EQUL VAR0:32,#1000H


OUT 0T0

12
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 EQUNL x1,x2

Istruzione che esegue il confronto tra la dword x1 e la dword x2, il risultato


dell’istruzione è vero se x1 è diversa da x2.

x1 = DWord - VAR Sistema.


x2 = DWord - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Es.: EQUNL VAR0:32,#1000H


OUT 0T0

 GTH x1,x2

Istruzione che esegue il confronto tra il byte x1 e il byte x2, il risultato


dell’istruzione è vero se x1 è maggiore di x2.

x1 = Bit - C Area.
Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area.
x2 = Bit - C Area.
Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Es.: GTH 7E,#10H


OUT 0T0

 GTHW x1,x2

Istruzione che esegue il confronto tra la word x1 e la word x2, il risultato


dell’istruzione è vero se x1 è maggiore di x2.

x1 = Bit - C Area.
Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area.
x2 = Bit - C Area.
Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Es.: GTHW 7E,#10H


OUT 0T0

13
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 GTHL x1,x2

Istruzione che esegue il confronto tra la dword x1 e la dword x2, il risultato


dell’istruzione è vero se x1 è maggiore di x2.

x1 = DWord - VAR Sistema.


x2 = DWord - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Es.: GTHL VAR0:32,#1000H


OUT 0T0

 LTH x1,x2

Istruzione che esegue il confronto tra il byte x1 e il byte x2, il risultato


dell’istruzione è vero se x1 è minore di x2.

x1 = Bit - C Area.
Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area.
x2 = Bit - C Area.
Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Es.: LTH 7E,#10H


OUT 0T0

 LTHW x1,x2

Istruzione che esegue il confronto tra la word x1 e la word x2, il risultato


dell’istruzione è vero se x1 è minore di x2.

x1 = Bit - C Area.
Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area.
x2 = Bit - C Area.
Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Es.: LTHW 7E,#10H


OUT 0T0

14
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 LTHL x1,x2

Istruzione che esegue il confronto tra la dword x1 e la dword x2, il risultato


dell’istruzione è vero se x1 è maggiore di x2.

x1 = DWord - VAR Sistema.


x2 = DWord - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Es.: LTHL VAR0:32,#1000H


OUT 0T0

Istruzioni esecutive

 OUT x1

Istruzione che condiziona lo stato del bit x1 allo stato del blocco decisionale che
l’ha preceduta Se lo stato del blocco decisionale è vero il bit x1 è portato allo
stato logico 1 altrimenti a 0.

x1 = Bit - T Area, U Area, A Area, B Area, M Area, O Area, D Area, SQ Area.

 SET x1

Istruzione che porta allo stato logico 1 il bit x1 se il blocco decisionale che l’ha
preceduta è vero, altrimenti non ne modifica lo stato.

x1 = Bit - T Area, U Area, A Area, B Area, M Area, O Area, D Area, SQ Area.

 RES x1

Istruzione che porta allo stato logico 0 il bit x1 se il blocco decisionale che l’ha
preceduta è vero, altrimenti non ne modifica lo stato.

x1 = Bit - T Area, U Area, A Area, B Area, M Area, O Area, D Area, SQ Area.

 ANDB x1,x2

Istruzione che esegue un AND logico tra il byte x1 e il byte x2, il risultato
dell’operazione viene posto in x1.

x1 = Byte - T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

15
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 ANDW x1,x2

Istruzione che esegue un AND logico tra la word x1 e la word x2, il risultato
dell’operazione viene posto in x1.

x1 = Word- T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 ORB x1,x2

Istruzione che esegue un OR logico tra il byte x1 e il byte x2, il risultato


dell’operazione viene posto in x1.

x1 = Byte - T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 ORW x1,x2

Istruzione che esegue un OR logico tra la word x1 e la word x1, il risultato


dell’operazione viene posto in x1.

x1 = Word- T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 XORB x1,x2

Istruzione che esegue un XOR logico tra il byte x1 e il byte x2, il risultato delle
operazione viene posto in x1.

x1 = Byte - T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 XORW x1,x2

Istruzione che esegue un XOR logico tra l la word x1 e la word x2, il risultato
dell’operazione viene posto in x1.

x1 = Word- T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

16
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 MOV x1,x2 x3,x4 x5,x6

Istruzione che muove il byte x2 nel byte x1.


Attraverso questa istruzione è possibile leggere e scrivere le variabili di sistema
del CN passando obbligatoriamente attraverso area di appoggio.

x1 = Byte - T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Istruzione che muove il byte x4 nel byte x3.

x3 = Byte - VAR Sistema.


x4 = Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Istruzione che muove il byte x6 nel byte x5.

x5 = Byte - R Area, E Area, A Area, B Area, M Area, O Area.


x6 = Byte - VAR Sistema.

 MOVW x1,x2 x3,x4 x5,x6

Istruzione che muove la word x1 nella word x2.


Attraverso questa istruzione è possibile leggere e scrivere le variabili di sistema
del CN passando obbligatoriamente attraverso area di appoggio.

x1 = Word- T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Istruzione che muove il byte x4 nel byte x3.

x3 = Word- VAR Sistema.


x4 = Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Istruzione che muove il byte x6 nel byte x5.

x5 = Word- R Area, E Area, A Area, B Area, M Area, O Area.


x6 = Word- VAR Sistema.

17
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 MOVL x1,x2 x3,x4 x5,x6

Istruzione che muove la word x1 nella word x2.


Attraverso questa istruzione è possibile leggere e scrivere le variabili di sistema
del CN passando obbligatoriamente attraverso area di appoggio.

x1 = DWord - T Area, U Area, A Area, B Area, M Area, O Area.


x2 = DWord - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Istruzione che muove il byte x4 nel byte x3.

x3 = DWord - VAR Sistema.


x4 = DWord - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

Istruzione che muove il byte x6 nel byte x5.

x5 = DWord - R Area, E Area, A Area, B Area, M Area, O Area.


x6 = DWord - VAR Sistema.

 ADD x1,x2

Istruzione che somma il byte x2 con il byte x1, il risultato dell’operazione viene
posto in x1.

x1 = Byte - T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 ADDW x1,x2

Istruzione che somma il word x2 con il word x1, il risultato dell’operazione


viene posto in x1.

x1 = Word- T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

18
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 ADDL x1,x2

Istruzione che somma la dword x2 con la dword x1, il risultato dell’operazione


viene posto in x1.

x1 = DWord - T Area, U Area, A Area, B Area, M Area, O Area.


x2 = DWord - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 SUB x1,x2

Istruzione che sottrae il byte x2 al byte x1, il risultato dell’operazione viene


posto in x1.

x1 = Byte - T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 SUBW x1,x2

Istruzione che sottrae la word x2 alla word x1, il risultato dell’operazione viene
posto in x1.

x1 = Word- T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 SUBL x1,x2

Istruzione che sottrae la dword x2 con la dword x1, il risultato dell’operazione


viene posto in x1.

x1 = DWord - T Area, U Area, A Area, B Area, M Area, O Area.


x2 = DWord - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 MUL x1,x2

Istruzione che moltiplica il byte x2 con il byte x1, il risultato dell’operazione


che è una word viene posto in x1.

x1 = Byte - T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

19
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 MULW x1,x2

Istruzione che moltiplica la word x2 alla word x1, il risultato dell’operazione


che è una dword viene posto in x1.

x1 = Word- T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 DIV x1,x2

Istruzione che divide il byte x2 con il byte x1, il risultato dell’operazione viene
posto in x1.

x1 = Byte - T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Byte - R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 DIVW x1,x2

Istruzione che divide la word x2 con la word x1, il risultato dell’operazione


viene posto in x1.

x1 = Word- T Area, U Area, A Area, B Area, M Area, O Area.


x2 = Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 SHR x1

Istruzione che esegue uno shift destro del byte x1.

x1 = Byte - T Area, U Area, A Area, B Area, M Area, O Area.

Es.: 0ACH >> SHR >> 56H

 SHRW x1

Istruzione che esegue uno shift destro della word x1.

x1 = Word- T Area, U Area, A Area, B Area, M Area, O Area.

Es.: 1FACH >> SHRW >> 0FD6H

20
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 SHL x1

Istruzione che esegue uno shift sinistro del byte x1.

x1 = Byte - T Area, U Area, A Area, B Area, M Area, O Area.

Es.: 0ACH >> SHL >> 058H

 SHLW x1

Istruzione che esegue uno shift sinistro dell’operando x1.

x1 = Word- T Area, U Area, A Area, B Area, M Area, O Area.

Es.: 1FACH >> SHLW >> 3F58H

 ROR x1

Istruzione che esegue una rotazione destra del byte x1.

x1 = Byte - T Area, U Area, A Area, B Area, M Area, O Area.

Es.: ACH >> ROR >> 0D6H

 RORW x1

Istruzione che esegue una rotazione destra dell’operando x1.

x1 = Word- T Area, U Area, A Area, B Area, M Area, O Area.

Es. : 1FACH >> RORW >> 8FD6H

 ROL x1

Istruzione che esegue una rotazione sinistra dell’operando x1.

x1 = Byte - T Area, U Area, A Area, B Area, M Area, O Area.

Es.: ACH >> ROL >> 59H

 ROLW x1

Istruzione che esegue una rotazione sinistra dell’operando x1.

21
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

x1 = Word- T Area, U Area, A Area, B Area, M Area, O Area.

Es.: 1FACH >> ROLW >> 3F59H

 CNTU x1

Istruzione incrementa il contatore x1.

x1 = Bit - C Area.

 CNTD x1

Istruzione decrementa il contatore x1.

x1 = Bit - C Area.

 CNTP x1,x2

Istruzione presetta il contenuto del contatore x1 con l’operando x2.

x1 = Bit - C Area.
x2 = Word- R Area, T Area, E Area, U Area, A Area, B Area, M Area,
I Area, O Area, N Area, P Area, K Area, Costante.

 CNTR x1

Istruzione azzera il contatore x8.

x1 = Bit - C Area.

Istruzioni di controllo programma

 MCRS x1

Istruzione apre un blocco Master Control Relè, tutto quello che si trova al di
sotto di questa istruzione è condizionato dalla veridicità dell’operando x1.

x1 = Bit - R Area, T Area, E Area, U Area, A Area, B Area, M Area,


I Area, O Area, N Area, K Area, D Area, P Area.

 MCRE

Istruzione chiude il blocco Master Control Relè precedentemente aperto.

22
9732CNC - Manuale di programmazione PLC COGI Elettronica S.r.l.

 JMP x1

Istruzione che esegue un salto di programma.

x1 = Label

Es.: STR 0A0


JMP LABEL

STR 0R0
OUT 0T0

:LABEL

Meta Comandi

 L<nomefile>

Comando che permette di inserire nel PLC un programma in formato OBJ


scritto in linguaggio asembler.

 SYN!

Apre un blocco programma ove è possibile assegnare dei sinonimi ad ogni


operando.

 CLQ!

Definisce un blocco di programma ad esecuzione veloce.

 ENDS

Termina un blocco SYN!, CLQ! o SQ.

 MSGxx:

Permette l’inserimento di un messaggio di 32 caratteri. Dove xx è il numero di


messaggio da inserire.

 END
 Fine programma.

23

Potrebbero piacerti anche