SBC PCD family Manuale del proprietario

Tipo
Manuale del proprietario
SAIA
®
PCD
Process Control Devices
Edizione 26/733 I6
Manuale
delle istruzioni
SAIA-Burgess Electronics SA
SAIA
®
Process Control Devices
Manuale delle
istruzioni
Edizione 26/733 I7 02.99
SAIA-Burgess Electronics SA 1994-99. Tutti i diritti riservati
Soggetto a modifiche tecniche
Manuale delle Istruzioni Indice
26/733 I7 (RG-00-I.DOC) SAIA-Burgess Electronics AG Pagina 1
Indice
Pagina
1. Introduzione
1.1 Codice Supporto (MC) - MEDIUM Code 1-3
1.2 Costanti 1-5
1.3 I Codici Condizione [cc] 1-6
1.4 Tipi e Valori delle Risorse 1-7
2. Istruzioni BIT
STH Inizio su Stato Alto (Start High) 2-3
STL Inizio su Stato Basso (Start Low) 2-4
ANH AND su Stato Alto (AND High) 2-5
ANL AND su Stato Basso (AND Low) 2-6
ORH OR su Stato Alto (OR High) 2-7
ORL OR su Stato Basso (Low) 2-9
XOR OR Esclusivo (Exclusive OR) 2-10
ACC Operazioni sull’Accumulatore (ACCU operations) 2-11
DYN Rilevazione Dinamica Fronti (Dynamic edge detection) 2-12
OUT Imposta Elemento da Accumulatore
(Set Element from Accumulator) 2-13
SET Imposta Elemento (Set Element) 2-14
RES Reset Elemento (Reset Element) 2-15
COM Complemento dell’Elemento (Complement Element) 2-16
SETD Set Elemento con Ritardo (Set Element Delayed) 2-17
RESD Reset Elemento con Ritardo (Reset Element Delayed) 2-18
Indice Manuale delle Istruzioni
Pagina 2 SAIA-Burgess Electronics AG (RG-00-I.DOC) 26/733 I7
Pagina
3. Istruzioni WORD
LD Carica (Valore a 32 bit) (Load - 32 bit value) 3-3
LDL Carica Parola Meno Significativa (primi 16 bit)
(Load Low Word - lower 16 bits) 3-4
LDH Carica Parola Più Significativa (ultimi 16 bit)
(Load High Word - higher 16 bits) 3-5
DSP Carica Registro Display (Load Display Register) 3-6
INC Incrementa un Registro o un Contatore
(Increment Register or Counter) 3-7
DEC Decrementa un Registro o un Contatore
(Decrement Register or Counter) 3-8
SEI Imposta il Registro Indice (Set Index Register) 3-9
INI Incrementa il Registro indice (Increment Index Register) 3-10
DEI Decrementa il Registro indice (Decrement Index Register) 3-11
STI Memorizza il Registro Indice (Store Index Register) 3-12
RSI Ripristina il Registro Indice (Restore Index Register) 3-13
MOV Spostamento Dati (Move Data) 3-14
COPY Copia Dati (Copy Data) 3-15
GET Lettura Dati (Get Data) 3-16
PUT Scrittura Dati (Put Data) 3-19
TFR Trasferimento Dati (Transfer Data) 3-21
TFRI Trasferimento Dati Indiretto (Transfer Data Indirect) 3-23
BITI Lettura Bit (Bit In) 3-25
BITIR Lettura Bit Reverse (Bit In Reversed) 3-26
BITO Uscita Bit (Bit Out) 3-27
BITOR Uscita Bit Reverese (Bit Out Reversed) 3-28
DIGI Lettura Digit (Digit In) 3-29
DIGIR Lettura Digit Reverse (Digit In Reversed) 3-30
DIGO Uscita Digit (Digit Out) 3-31
DIGOR Uscita Digit Reverse (Digit Out Reversed) 3-32
AND AND Tra Registri (AND Registers) 3-33
OR OR tra Registri (OR Registers) 3-34
EXOR OR Esclusivo tra Registri (Exclusive OR Registers) 3-35
NOT Complemento Registro (Complement Register) 3-36
SHIU Shift Avanti di Registri (Shift Registers Up) 3-37
SHID Shift Indietro di Registri (Shift Registers Down) 3-38
ROTU Rotazione Avanti di Registri (Rotate Registers Up) 3-39
ROTD Rotazione Indietro di Registri (Rotate Registers Down) 3-40
SHIL Shift a Sinistra di un Registro (Shift Register Left) 3-41
SHIR Shift a Destra di un Registro (Shift Register Right) 3-42
ROTL Rotazione a Sinistra di un Registro (Rotate Register Left) 3-43
ROTR Rotazione a Destra di un Registro (Rotate Register Right) 3-44
Manuale delle Istruzioni Indice
26/733 I7 (RG-00-I.DOC) SAIA-Burgess Electronics AG Pagina 3
Pagina
4. Istruzioni Aritmetiche in INTERO
ADD Somma di Registri (ADD Registers) 4-3
SUB Sotrazione di Registri (SUBtract Registers) 4-4
MUL Moltiplicazione tra Registri (MULtiply Registers) 4-5
DIV Divisione tra Registri (DIVide Registers) 4-6
SQR Radice Quadrata (SQuare Root) 4-7
CMP Confronto tra Registri (CoMPare Registers) 4-8
5. Istruzioni Aritmetiche in VIRGOLA MOBILE
IFP Conversione da Intero a Virgola Mobile
(Integer to Floating Point) 5-3
FPI Conversione da Virgola Mobile a Intero
(Floating Point to Integer) 5-4
FADD Somma di Numeri in Virgola Mobile
(Floating point ADDition) 5-5
FSUB Sottrazione tra Numeri in Virgola Mobile
(Floating point SUBtraction) 5-6
FMUL Moltiplicazione tra Numeri in Virgola Mobile
(Floating point MULtiplication) 5-7
FDIV Divisione tra Numeri in Virgola Mobile
(Floating point DIVision) 5-8
FSQR Radice Quadrata di Numeri in Virgola Mobile
(Floating point SQuare Root) 5-9
FCMP Confronto tra Numeri in Virgola Mobile
(Floating point CoMPare) 5-10
FSIN Funzione Seno (SINe function) 5-11
FCOS Funzione Coseno (COSine function) 5-12
FATAN Arcotangente (Arc TANgent) 5-13
FEXP Funzione Esponenziale (EXPonential function) 5-14
FLN Funzione Logaritmo in Virgola Mobile
(Floating Point Logarithm function)
5-15
FABS Valore Assoluto in Virgola Mobile
(Floating point ABSolute value)
5-16
Indice Manuale delle Istruzioni
Pagina 4 SAIA-Burgess Electronics AG (RG-00-I.DOC) 26/733 I7
Pagina
6. Istruzioni BLOCTEC
COB Blocco ad Organizzazione Ciclica
(Cyclic Organsation Block) 6-3
ECOB Fine Blocco ad Organizzazione Ciclica
(End of Cyclic Organsation Block) 6-4
XOB Blocco ad Organizzazione Esclusiva
(Exception Organisation Block) 6-5
EXOB Fine Blocco ad Organizzazione Esclusiva
(End of Exception Organisation Block) 6-9
PB Blocco di Programma (Program Block) 6-10
EPB Fine del Blocco di Programma (End of Program Block) 6-11
CPB Chiamata Blocco di Programma (Call Program Block) 6-12
CPBI Chiamata Indiretta Blocco di Programma
(Call Program Block Indirect) 6-13
FB Blocco Funzione (Function Block) 6-14
EFB Fine Blocco Funzione (End of Function Block) 6-15
CFB Chiamata Blocco Funzione (Call Function Block) 6-16
NCOB Prossimo COB (Next Cyclic Organsation Block) 6-17
SCOB Stop COB (Stop Cyclic Organsation Block) 6-18
CCOB Continua COB (Continue Cyclic Organsation Block) 6-19
RCOB Ripartenza COB (Restart Cyclic Organsation Block) 6-20
7. Istruzioni GRAFTEC
SB Blocco Sequenziale (Sequential Block) 7-3
ESB Fine del Blocco Sequenziale (End Sequential Block) 7-4
CSB Chiamata Blocco Sequenziale (Call Sequential Block) 7-5
RSB Ripartenza Blocco Sequenziale
(Restart Sequential Block) 7-6
IST Step Iniziale (Initial STep) 7-7
ST STep 7-8
EST Fine Step (End of Step) 7-9
TR Transizione (TRansition) 7-10
ETR Fine Transizione (End of TRansition) 7-11
Manuale delle Istruzioni Indice
26/733 I7 (RG-00-I.DOC) SAIA-Burgess Electronics AG Pagina 5
Pagina
8. Istruzioni di COMUNICAZIONE SERIALE
Modalità C (Mode C) 8-3
Modalità D (Mode D) 8-4
Modalità MM4 (Mode MM4) 8-5
Modalità S-Bus (Mode S-Bus) 8-6
PROFIBUS 8-7
SASI Assegna l’Interfaccia Seriale (Assign Serial Interface) 8-8
Testi SASI (SASI Texts) 8-9
Modalità OFF (Mode OFF) 8-9
<uart_def> 8-10
<mode_def> 8-11
<diag_def> 8-12
<rx_buf> 8-16
<tx_buf> 8-16
Esempi di Testi SASI 8-17
Utilizzo di Simboli nei Testi 8-18
$SASI, $ENDSASI 8-19
SASII Assegna Interfaccia Seriale Indiretta
(Assign Serial Interface Indirect) 8-20
SRXD Ricezione Carattere su Linea Seriale (Modalità C)
(Serial Receive Character - Mode C) 8-21
STXD Trasmissione Carattere su Linea Seriale (Modalità C)
(Serial Transmit Character - Mode C) 8-22
STXT Trasmissione Testo su Linea Seriale (Modalità C)
(Serial Transmit Text - Mode C) 8-23
Testi
8-24
Testi e Variabili 8-25
Formati di Output (Output formats) 8-27
Utilizzo di SIMBOLI nei Testi 8-31
SRXM Ricezione Seriale Dati (Serial Receive Media) 8-32
SRXMI Ricezione Seriale Dati Indiretta
(Serial Receive Media Indirect) 8-37
STXM Trasmissione Seriale Dati (Serial Transmit Media) 8-39
STXMI Trasmissione Seriale Dati Indiretta
(Serial Transmit Media Indirect) 8-44
SICL Segnali di Controllo del Canale Seriale in Ingresso
(Serial Input Control Line) 8-46
SOCL Segnali di Controllo del Canale Seriale in Uscita
(Serial Output Control Line) 8-47
SCON Connessione Seriale (Serial Connect) 8-49
SCONI Connessione Seriale Indiretta (Serial Connect Indirect) 8-51
Indice Manuale delle Istruzioni
Pagina 6 SAIA-Burgess Electronics AG (RG-00-I.DOC) 26/733 I7
Pagina
9. Istruzioni LAN2
LRXD Ricezione Dati via LAN 2 (Receive Data via LAN 2) 9-3
LTXD Trasmissione Dati via LAN 2 (Transmit Data via LAN 2) 9-4
LRXS Ricezione Stato via LAN 2 (Receive Status via LAN 2) 9-5
LTXS Trasmissione Stato via LAN 2 (Transmit Status via LAN 2) 9-6
10. Istruzioni di CONTROLLO
JR Salto Relativo (Jump Relative) 10-3
JPD Salto Diretto (Jump Direct) 10-4
JPI Salto Indiretto (Jump Indirect) 10-5
HALT Arresta la CPU (Halts the cpu) 10-6
LOCK Attiva un Semaforo (Lock semaphore) 10-7
UNLOCK Disattiva un Semaforo (Unlock semaphore) 10-8
11. Istruzioni di DEFINIZIONE
DEFVM Definizione Memoria Volatile (Flag)
(Define Voltile Memory - Flags) 11-3
DEFTC Definizione Temporizzatori/Contatori
(Define Timer/Counter) 11-4
DEFTB Definizione Base Tempi (Define Time Base) 11-5
DEFTR Definizione Risoluzione Temporizzatori
(Define Timer Resolution) 11-6
DEFWPR Definzione Area Protetta da Scrittura (Run)
(Define Write Protected Area - Run) 11-7
DEFWPH Definzione Area Protetta da Scrittura (Halt)
(Define Write Protected Area - Halt) 11-8
12. Istruzioni SPECIALI
NOP Nessuna Operazione (No Operation) 12-3
RTIME Lettura Ora (Read TIME) 12-4
WTIME Scrittura Ora (Write TIME) 12-5
PID Algoritmo di Controllo PID (PID Control Algorithm) 12-6
TEST TEST hardware 12-10
DIAG Lettura Diagnistica (Read XOB Diagnostic) 12-13
SYSRD Lettura Dati Sistema (System Read) 12-14
SYSWR Scrittura Dati Sistema (System Write) 12-17
SYSCMP Comparazione Dati Sistema (System Compare) 12-20
ALGI Ingresso Analogico (Analogue Input) 12-21
ALGO Uscita Analogica (Analogue Output) 12-22
STHS Inizio Lento su Stato Alto (Start High Slow) 12-23
OUTS Imposta Elemento da Accumulatore - Lento
(Set Element form Accumulator Slow) 12-24
13. Tabella Storica
14. Indice Analitico
Manuale delle Istruzioni Indice
26/733 I7 (RG-00-I.DOC) SAIA-Burgess Electronics AG Pagina 7
Elenco delle Istruzioni in Ordine Alfabetico
Istr. Ind Par. Pag. Istr. Ind Par. Pag. Istr. Ind Par. Pag.
ACC
ADD
ALGI
ALGO
AND
ANH
ANL
BITI
BITIR
BITO
BITOR
CCOB
CFB
CMP
COB
COM
COPY
CPB
CPBI
CSB
DEC
DEFTB
DEFTC
DEFTR
DEFVM
DEFWPH
DEFWPR
DEI
DIAG
DIGI
DIGIR
DIGO
DIGOR
DIV
DSP
DYN
ECOB
EFB
EPB
ESB
EST
ETR
EXOB
EXOR
FABS
FADD
FATAN
FB
FCMP
FCOS
FDIV
FEXP
FNL
FMUL
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
2-11
4-3
12-21
12-22
3-33
2-5
2-6
3-25
3-26
3-27
3-28
6-19
6-16
4-8
6-3
2-16
3-15
6-12
6-13
7-5
3-8
11-5
11-4
11-6
11-3
11-8
11-7
3-11
12-13
3-29
3-30
3-31
3-32
4-6
3-6
2-12
6-4
6-15
6-11
7-4
7-9
7-11
6-9
3-35
5-16
5-5
5-13
6-14
5-10
5-12
5-8
5-14
5-15
5-7
FPI
FSIN
FSQR
FSUB
GET
HALT
IFP
INC
INI
IST
JPD
JPI
JR
LD
LDH
LDL
LOCK
LRXD
LRXS
LTXD
LTXS
MOV
MUL
NCOB
NOP
NOT
OR
ORH
ORL
OUT
OUTS
PB
PID
PUT
RCOB
RES
RESD
ROTD
ROTL
ROTR
ROTU
RSB
RSI
RTIME
SASI
SASII
SB
SCOB
SCON
SCONI
SEI
SET
SETD
SHID
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
5-4
5-11
5-9
5-6
3-16
10-6
5-3
3-7
3-10
7-7
10-4
10-5
10-3
3-3
3-5
3-4
10-7
9-3
9-5
9-4
9-6
3-14
4-5
6-17
12-3
3-36
3-34
2-7
2-9
2-13
12-24
6-10
12-6
3-19
6-20
2-15
2-18
3-40
3-43
3-44
3-39
7-6
3-13
12-4
8-8
8-20
7-3
6-18
8-49
8-51
3-9
2-14
2-17
3-38
SHIL
SHIR
SHIU
SICL
SOCL
SQR
SRXD
SRXM
SRXMI
ST
STH
STHS
STI
STL
STXD
STXM
STXMI
STXT
SUB
SYSCMP
SYSRD
SYSWR
TEST
TR
TFR
TFRI
UNLOCK
WTIME
XOB
XOR
X
X
X
X
X
X
X
X
X
X
X
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
3-41
3-42
3-37
8-46
8-47
4-7
8-21
8-32
8-37
7-8
2-3
12-23
3-12
2-4
8-22
8-39
8-44
8-23
4-4
12-20
12-14
12-17
12-10
7-10
3-21
3-23
10-8
12-5
6-5
2-10
Legenda:
Colonna "Ind": il simbolo
'X' indica che l’istruzione
può essere indicizzata.
Colonna "Par": il simbolo
'=' indica che l’istruzione
accetta come operando un
parametro FB
Manuale delle Istruzioni Introduzione
26/733 I7 (RG-01-I.DOC) © SAIA-Burgess Electronics AG Pagina 1-1
1. Introduzione
Il presente Manuale delle Istruzioni descrive in dettaglio ciascuna istruzione della
famiglia SAIA PCD. Le istruzioni sono raggruppate in base al tipo per facilitarne
l'apprendimento.
Lo scopo è quello di fare da supporto al “Manuale Utente” che fornisce la
descrizione dettagliata delle “Utilities PCD” e dei metodi di programmazione
strutturata utilizzati nei SAIA PCD
Importante
Le istruzioni descritte in questo Manuale sono valide per:
PCD1 versione V001 (e successive)
PCD2 versione V004 (e successive)
PCD4.Mxx0 versione V005 (e successive)
PCD4.Mxx5 versione V00C (e successive)
PCD6.M5.. versione V004 (e successive)
PCD6.M1/M2 versione V009 (e successive)
Utilities PCD versione V2.0 (e successive)
Se si dispone di una precedente versione di PCD, alcune istruzioni potrebbero
presentare delle differenze o non esistere del tutto.
Introduzione Manuale delle Istruzioni
Pagina 1-2 © SAIA-Burgess Electronics AG 26/733 I7 (RG-01-I.DOC)
Guida alla consultazione del manuale
Per ogni istruzione del set SAIA PCD vengono fornite una o più pagine.
Prima riga Per ogni istruzione vengono riportate nella prima riga in alto il codice mnemonico, il
nome dell'istruzione stessa e (tra parentesi), il nome originale inglese.
Descrizione Descrive cosa fa l'istruzione e i suoi operandi.
Utilizzo Descrive come viene utilizzata l'istruzione e fornisce il tipo e i possibili valori di
ciascun operando.Una “[X]” dopo il codice mnemonico significa che è possibile
utilizzare l'indirizzamento indicizzato, aggiungendo al codice mnemonico il suffisso
opzionale “ X” (es. STHX, INCX). Per l'indirizzamento indicizzato, l'operando (o
gli operandi) indicizzato(i) viene contrassegnato con una “ (i)”
Esempio Riporta un tipico esempio di utilizzo dell'istruzione.
Flag Indica quali Flag di stato sono influenzati (ACCU, N, P, Z, E)
Vedere anche Riporta un elenco di altre istruzioni o argomenti che possono risultare utili nel
contesto dell'istruzione trattata.
Uso pratico Riporta un esempio pratico che illustra l'utilizzo dell'istruzione in un contesto
appropriato.
Convenzioni tipografiche:
[ ] Le parentesi quadre vengono utilizzate per racchiudere input o dati
opzionali. Ad esempio [;commenti] significa che “;commenti” è
opzionale e che quindi non è necessario includere dei commenti.
[X] Una "[X]" dopo il codice mnemonico significa che si può utilizzare
l'indirizzamento indicizzato, aggiungendo il carattere opzionale 'X' al
codice mnemonico stesso (es: STHX, INCX).
(i) Quando è ammesso l'indirizzamento indicizzato, (vedere [X]);
l'operando indicizzato viene contrassegnato con una “(i)”.
..... Una serie di puntini (“.”) in un esempio, indica che la continuazione
dell'esempio stesso può essere effettuata dal lettore.
LABEL: Negli esempi, tutte le label sono riportate con il rispettivo nome
(etichetta) seguito da un ':'; I due punti sono necessari se si utilizza un editor
diverso da SEDIT. Nel caso in cui si utilizzi SEDIT non devono essere
messi i due punti dopo il nome della label.
< > I simboli di 'maggiore' e 'minore' racchiudono dei testi o delle
espressioni che non devono essere digitati “alla lettera”, ma sostituiti
da un qualsiasi testo o espressione validi.
Manuale delle Istruzioni Introduzione
26/733 I7 (RG-01-I.DOC) © SAIA-Burgess Electronics AG Pagina 1-3
1.1 Codice Supporto (MC) - MEDIUM Code
I codici di controllo del supporto informativo [mc] sono utilizzati per selezionare
il tipo di elemento.
Codice Tipo Campo
I
Ingresso 0..8191
O
Uscita 0..8191
F
Flag 0..8191
R
Registro 0..4095
T
Temporizzatore 0..450
C
Contatore 0..1599
K
Costante 0..16383
X
teXt (Testo) 0..7999
DB
Data Block 0..7999
Ingressi e Uscite
Gli Ingressi e le Uscite sotto forma di moduli di interfaccia possono essere
innestati nel PCD, il campo di indirizzamento può essere assegnato, in base alle
esigenze, attraverso la posizione del modulo nel PCD4 oppure attraverso la
configurazione dei DIP switch nel PCD6. Lo stato degli ingressi può essere solo
interrogato e non modificato. Le Uscite possono essere attivate o disattivate e
possono anche essere interrogate per quanto riguarda lo stato dei segnali.
Flag
I Flag sono celle di memoria di bit che possono essere trattate come le Uscite,
possono cioè essere attivate, disattivate ed interrogate, per quanto riguarda lo
stato. Compatibilmente con la loro struttura, i flag possono essere utilizzati per
memorizzare qualsiasi informazione.
Temporizzatori e Contatori
I Temporizzatori e i Contatori sono dei registri programmabili che possono
contenere un valore di 31 bit (0 - 2.147.483.647 in decimale); il numero di
temporizzatori utilizzati dipende dall'istruzione DEFTC (il valore di default è di
32 Temporizzatori - indirizzi da 0 a 31 - e di 1568 Contatori - indirizzi da 32 a
1599). L'unica differenza tra un Temporizzatore e un Contatore consiste nel fatto
che il Temporizzatore viene decrementato in funzione della base tempi (definita
con l'istruzione DEFTB) il cui valore di default è 1/10 sec. I Temporizzatori e i
Contatori possono contenere solo valori positivi o nulli.
Quando un Temporizzatore o un Contatore contiene un valore diverso da
zero, il suo stato è alto (H), quando invece contiene il valore zero, il suo stato
è basso (L).
Introduzione Manuale delle Istruzioni
Pagina 1-4 © SAIA-Burgess Electronics AG 26/733 I7 (RG-01-I.DOC)
Registri
Un registro è una cella di memorizzazione di 32 bit, che può contenere qualsiasi
tipo di informazione in formato binario, decimale, esadecimale o in virgola
mobile. Sui registri, si possono effettuare operazioni aritmetiche, trasferimenti di
informazioni (da o verso: ingressi, uscite, flag, temporizzatori, contatori o altri
registri).
I registri possono contenere sia valori positivi che valori negativi.
Costanti
Possono essere utilizzati diversi tipi di costanti (vedere dettagli nella pagina
seguente).
Testo (X)
I testi sono stringhe ASCII che possono essere memorizzate nel PCD per essere
emesse su una linea seriale.
Data Block (Blocco Dati)
Un "Data Block" è un'area di memoria che viene utilizzata per la memorizzazione
di dati a 32 bit, i quali possono essere trasferiti a Registri, Temporizzatori,
Contatori e viceversa.
Manuale delle Istruzioni Introduzione
26/733 I7 (RG-01-I.DOC) © SAIA-Burgess Electronics AG Pagina 1-5
1.2 Costanti
Nelle istruzioni PCD vengono utilizzati diversi tipi di costanti; il campo dei valori
dipende dall'istruzione specifica.
Le costanti K NON sono ammesse per le istruzioni LOAD (caricamento) (LD,
LDH e LDL).
Binarie
Il valore termina con una 'Q', esempio: 1001Q, 11111111Q. Massimo 12 bit.
Decimali
Tipo di default per le costanti; non esiste alcun formato speciale per definire le
costanti decimali.
Esadecimali
Il valore esadecimale termina con una 'H', esempio ABCDH, 1234H, DEADH.
ASCII
Il carattere ASCII deve essere racchiuso tra apici, esempio 'A', 'z'.
Virgola mobile
Includono un '.' e/o un esponente 'E', esempio 1.2, 12E-1.
Il campo dei valori ammessi (FFP) è compreso tra 2.710505E-20 e -
9.223371E+18..
Costanti K
Utilizzate quando si richiede un codice di controllo supporto (mc); questo tipo di
costanti non viene mai utilizzato per le istruzioni LOAD (LD, LDL, LDH).
Per indicare che si tratta di una costante, si utilizza il tipo mc 'K'.
Possono essere assegnati valori binari, decimali, esadecimali o ASCII.
Esempio: K 10, K 11Q, K FFH, K'A',
Tipo di costante Valore minimo Valore massimo
Decimale - 2.147.483.648 2.147.483.647
Esadecimale 0 H FFFFFFFF H
Binario 0 Q 1111111111111 Q
ASCII 'a', 'B', '%', ecc.
Virgola Mobile - 9.22337177 E+18 +9.22337177 E+18
- 2.71050535 E -20 +5.42101070 E -20
Introduzione Manuale delle Istruzioni
Pagina 1-6 © SAIA-Burgess Electronics AG 26/733 I7 (RG-01-I.DOC)
1.3 I Codici Condizione [cc]
Flag di Stato sulle Operazioni Aritmetiche
I flag di stato aritmetici sono influenzati principalmente dalle istruzioni che
operano su interi o su valori in virgola mobile.
Il flag di Errore può essere impostato a livello Alto da qualsiasi istruzione eseguita
su dati non validi.
P
Positivo Alto se il risultato di una istruzione aritmetica è
positivo
N
Negativo Alto se il risultato di una istruzione aritmetica è
negativo. (Il Flag P è sempre l’inverso del Flag N)
Z
Zero Alto se il risultato di una istruzione è zero.
E
Errore Alto se una istruzione non può essere eseguita
(impostato a livello Alto in caso di overflow,
underflow o conversione)
Accumulatore
Dal momento che il processore "legge" una riga di istruzione dopo l'altra, ne
consegue che può interrogare solo un elemento dopo l'altro, per quanto riguarda lo
stato del segnale degli elementi stessi (H o L).
Per poter elaborare una sezione di "linkage"
1)
completa fino ad una istruzione di
azione, il risultato intermedio del "linkage" stesso deve essere memorizzato
nell'Accumulatore (ACCU). Al termine del "linkage" ACCU contiene il risultato
finale (0 o 1). In base a questo risultato, l'elemento corrispondente (esempio
un'uscita) verrà attivata (ACCU=1) oppure non attivata (ACCU=0).
L'ACCUmulatore viene impostato a livello Alto/Basso principalmente dalle
istruzioni che operano sui Bit. Può essere impostato ad uno stato specifico oppure
allo stato corrispondente ad un flag aritmetico, utilizzando l'istruzione ACC.
Codici di Condizione [cc]
I codici di condizione [cc] sono utilizzati per selezionare la condizione dei flag di
stato prima di eseguire una istruzione.
Se la condizione è falsa, l'istruzione non viene eseguita.
Nota: Certe istruzioni dipendono dall'Accumulatore e vengono eseguite solo se
l'Accumulatore stesso è Alto (1).
spazio Nessun codice condizione
H
Se l’Accumulatore = H (1)
L
Se l’Accumulatore = L (0)
P
Se il flag Positivo = H (Flag negativo = L)
N
Se il flag Negativo = L
Z
Se il flag Zero = H
E
Se il flag Errore = H
(C)
Complemento, utilizzato solo con l’istruzione ACC
Manuale delle Istruzioni Introduzione
26/733 I7 (RG-01-I.DOC) © SAIA-Burgess Electronics AG Pagina 1-7
1.4 Tipi e Valori delle Risorse
Tipo Descrizione Campo Note
I
Ingresso
condividono
gli stessi
0..8191
O
Uscita
indirizzi
0..8191
F
Flag 0..8191 Volatile/Non volatile
T
Temporizzatore
condividono
gli stessi
0..450 Volatile
Per sistema
C
Contatore
indirizzi
0..1599 Non Volatile
R
Registro 0..4095 Non Volatile
K
Costante K 0..16383
COB
Blocco a Organizzazione
Ciclica
0..15
XOB
Blocco a Organizzazione
Esclusiva
0..31
PB
Blocco di Programma 0..299
FB
Blocco Funzione 0..999
SB
Blocco Sequenziale 0..31
Per CPU
IST
Step Iniziale 0..1999
ST
Step 0..1999
TR
Transizione 0..1999
X
Testo
condividono
gli stessi
0..7999 4000..7999
DB
Data Block
indirizzi
0..7999 in memoria estesa
-
Semaforo 0..99
Per sistema
Manuale delle Istruzioni
26/733 I7 (RG-02-I.DOC) © SAIA-Burgess Electronics AG Pagina 2-1
2. Istruzioni BIT
Le istruzioni sui Bit, agiscono sull'Accumulatore, sugli Ingressi, sulle Uscite, sui
Flag e sullo stato dei Contatori o dei Timer
STH Start high (Inzio su stato alto)
STL Start low (Inizio su stato basso)
ANH AND high (AND su stato alto)
ANL AND low (AND su stato basso)
ORH OR high (OR su stato alto)
ORL OR low (OR su stato basso)
XOR Exclusive OR (OR esclusivo)
ACC Accumulator operations (Operazioni sull’Accumulatore)
DYN Dynamic (edge detection) (Dinamizzazione - Rilevazione Fronti)
OUT Set element from ACCU (Imposta elemento da ACCU)
SET Set element (Set elemento)
RES Reset element (Reset elemento)
COM Complement element (Complmenta elemento)
SETD Set element delayed (Set elemento con ritardo)
RESD Reset element delayed (Reset elemento con ritardo)
Manuale delle Istruzioni STH
26/733 I7 (RG-02-I.DOC) © SAIA-Burgess Electronics AG Pagina 2-3
STH INIZIO SU STATO ALTO (Start High)
Descrizione
L'ACCU è posto nello stato logico dell'elemento indirizzato.
Questo è l'inizio di una nuova linea di combinazione.
Con l'istruzione di start vengono cancellati i risultati della combinazione
precedente; contemporaneamente viene letto lo stato "H" del segnale
corrispondente all'elemento indirizzato I, O, F, T, C e il risultato viene
memorizzato in ACCU.
Utilizzo STH[X] elemento (i) ; I 0-8191, O 0-8191, F 0-8191
; T 0-450, C 0-1599
Esempio
STH I 7 ; ACCU = stato di I 7
Flag ACCU impostato in base allo stato dell'elemento indirizzato
Nota
Se un timer o un contatore contiene 0, il suo stato è definito basso (L), in caso
contrario il suo stato è alto (H).
Vedere anche
STHS, STL.
Uso pratico
I 7
O 32
I 12
O 40
; Nel PCD un programma deve, come minimo, contenere un COB
COB 0 ; Inizio COB
0
STH I 7 ; Se l’ingreso 7 è H
OUT O 32 ; Allora imposta (set) l’uscita 32
; Altrimenti azzera (Reset) l’uscita 32
STH I 12 ; Se l’ingresso 12 è H
OUT O 40 ; Allora imposta (set) l’uscita 40
; Altrimenti azzera (Reset) l’uscita 40
ECOB ; FINE COB
STL Manuale delle Istruzioni
Pagina 2-4 © SAIA-Burgess Electronics AG (RG-02-I.DOC) 26/733 I7
STL INIZIO SU STATO BASSO (Start Low)
Descrizione
L'ACCU è posto nello stato logico opposto a quello dell'elemento indirizzato.
Questo è l'inizio di una nuova linea di combinazione.
Con l'istruzione di start vengono cancellati i risultati della combinazione
precedente; contemporaneamente viene letto lo stato "L" del segnale
corrispondente all'elemento indirizzato I, O, F, T, C e il risultato viene
memorizzato in ACCU
Utilizzo STL[X] elemento (i) ; I 0-8191, O 0-8191, F 0-8191
; T 0-450, C 0-1599
Esempio
STL I 9 ; ACCU = stato di I 9 invertito
Flag ACCU è impostato al valore opposto rispetto allo stato dell’elemento indirizzato.
Vedere anche
STH.
Uso pratico
I 8
O 33
O 34
Temporiz. T 15
COB 0 ; Inizio COB
0
STH I 8 ; Se l’ingresso 8 diventa lato
DYN F 10
LD T 15 ; Allora imposta il temporizzatore a 2 sec
20
STL T 15 ; Se il tempo è scaduto
OUT O 33 ; Allora imposta (Set) l’uscita 33
; Altrimenti azzera (Reset) l’uscita 33
STH T 15 ; Se il tempo non è scaduto
OUT O 34 ; Allora imposta (Set) l’uscita 34
; Altrimenti azzera (Reset) l’uscita 34
ECOB ; FINE COB
Manuale delle Istruzioni ANH
26/733 I7 (RG-02-I.DOC) © SAIA-Burgess Electronics AG Pagina 2-5
ANH AND SU STATO ALTO (AND High)
Descrizione
Viene eseguito l'AND tra il valore dell'ACCU e lo stato logico dell'elemento
indirizzato; ACCU viene impostato con il valore del risultato.
Utilizzo ANH[X] elemento (i) ; I 0-8191, O 0-8191, F 0-8191
; T 0-450, C 0-1599
Esempio
ANH I 3 ; esegue l’AND tra ACCU e lo stato dell’Ingresso 3
ANHX I 128 ; esegue l’AND tra ACCU e l’Ingresso (128 + Reg. Indice)
Flag ACCU impostato in base al risultato.
Vedere anche
ANL.
Uso pratico
I 3
O 32
I 6
&
I 3
I 6
O 32
COB 0 ; Inizio COB
0
STH I 3 ; Se l’ingresso 3 è H
ANH I 6 ; E (AND) l’ingresso 6 è H
OUT O 32 ; Allora imposta (Set) l’uscita 32
; Altrimenti azzera (Reset) l’uscita 32
ECOB ; FINE COB
  • Page 1 1
  • Page 2 2
  • Page 3 3
  • Page 4 4
  • Page 5 5
  • Page 6 6
  • Page 7 7
  • Page 8 8
  • Page 9 9
  • Page 10 10
  • Page 11 11
  • Page 12 12
  • Page 13 13
  • Page 14 14
  • Page 15 15
  • Page 16 16
  • Page 17 17
  • Page 18 18
  • Page 19 19
  • Page 20 20
  • Page 21 21
  • Page 22 22
  • Page 23 23
  • Page 24 24
  • Page 25 25
  • Page 26 26
  • Page 27 27
  • Page 28 28
  • Page 29 29
  • Page 30 30
  • Page 31 31
  • Page 32 32
  • Page 33 33
  • Page 34 34
  • Page 35 35
  • Page 36 36
  • Page 37 37
  • Page 38 38
  • Page 39 39
  • Page 40 40
  • Page 41 41
  • Page 42 42
  • Page 43 43
  • Page 44 44
  • Page 45 45
  • Page 46 46
  • Page 47 47
  • Page 48 48
  • Page 49 49
  • Page 50 50
  • Page 51 51
  • Page 52 52
  • Page 53 53
  • Page 54 54
  • Page 55 55
  • Page 56 56
  • Page 57 57
  • Page 58 58
  • Page 59 59
  • Page 60 60
  • Page 61 61
  • Page 62 62
  • Page 63 63
  • Page 64 64
  • Page 65 65
  • Page 66 66
  • Page 67 67
  • Page 68 68
  • Page 69 69
  • Page 70 70
  • Page 71 71
  • Page 72 72
  • Page 73 73
  • Page 74 74
  • Page 75 75
  • Page 76 76
  • Page 77 77
  • Page 78 78
  • Page 79 79
  • Page 80 80
  • Page 81 81
  • Page 82 82
  • Page 83 83
  • Page 84 84
  • Page 85 85
  • Page 86 86
  • Page 87 87
  • Page 88 88
  • Page 89 89
  • Page 90 90
  • Page 91 91
  • Page 92 92
  • Page 93 93
  • Page 94 94
  • Page 95 95
  • Page 96 96
  • Page 97 97
  • Page 98 98
  • Page 99 99
  • Page 100 100
  • Page 101 101
  • Page 102 102
  • Page 103 103
  • Page 104 104
  • Page 105 105
  • Page 106 106
  • Page 107 107
  • Page 108 108
  • Page 109 109
  • Page 110 110
  • Page 111 111
  • Page 112 112
  • Page 113 113
  • Page 114 114
  • Page 115 115
  • Page 116 116
  • Page 117 117
  • Page 118 118
  • Page 119 119
  • Page 120 120
  • Page 121 121
  • Page 122 122
  • Page 123 123
  • Page 124 124
  • Page 125 125
  • Page 126 126
  • Page 127 127
  • Page 128 128
  • Page 129 129
  • Page 130 130
  • Page 131 131
  • Page 132 132
  • Page 133 133
  • Page 134 134
  • Page 135 135
  • Page 136 136
  • Page 137 137
  • Page 138 138
  • Page 139 139
  • Page 140 140
  • Page 141 141
  • Page 142 142
  • Page 143 143
  • Page 144 144
  • Page 145 145
  • Page 146 146
  • Page 147 147
  • Page 148 148
  • Page 149 149
  • Page 150 150
  • Page 151 151
  • Page 152 152
  • Page 153 153
  • Page 154 154
  • Page 155 155
  • Page 156 156
  • Page 157 157
  • Page 158 158
  • Page 159 159
  • Page 160 160
  • Page 161 161
  • Page 162 162
  • Page 163 163
  • Page 164 164
  • Page 165 165
  • Page 166 166
  • Page 167 167
  • Page 168 168
  • Page 169 169
  • Page 170 170
  • Page 171 171
  • Page 172 172
  • Page 173 173
  • Page 174 174
  • Page 175 175
  • Page 176 176
  • Page 177 177
  • Page 178 178
  • Page 179 179
  • Page 180 180
  • Page 181 181
  • Page 182 182
  • Page 183 183
  • Page 184 184
  • Page 185 185
  • Page 186 186
  • Page 187 187
  • Page 188 188
  • Page 189 189
  • Page 190 190
  • Page 191 191
  • Page 192 192
  • Page 193 193
  • Page 194 194
  • Page 195 195
  • Page 196 196
  • Page 197 197
  • Page 198 198
  • Page 199 199
  • Page 200 200
  • Page 201 201
  • Page 202 202
  • Page 203 203
  • Page 204 204
  • Page 205 205
  • Page 206 206
  • Page 207 207
  • Page 208 208
  • Page 209 209
  • Page 210 210
  • Page 211 211
  • Page 212 212
  • Page 213 213
  • Page 214 214
  • Page 215 215
  • Page 216 216
  • Page 217 217
  • Page 218 218
  • Page 219 219
  • Page 220 220
  • Page 221 221
  • Page 222 222
  • Page 223 223
  • Page 224 224
  • Page 225 225
  • Page 226 226
  • Page 227 227
  • Page 228 228
  • Page 229 229
  • Page 230 230
  • Page 231 231
  • Page 232 232
  • Page 233 233

SBC PCD family Manuale del proprietario

Tipo
Manuale del proprietario