Download as pdf or txt
Download as pdf or txt
You are on page 1of 100

ATOS

Exemplo de convergência alternativa e procedimentos de convergência


M1002
ZRST S0 S127 M1002
S1
SET S1
S1 X0
X0
S SET S20 S20 Y0
S20
S Y0
X1 X4 X7
X1
SET S30 S30 Y1 S31 Y3 S32 Y5
X4
X2 X5 X10
SET S31
X7 S40 Y2 S41 Y4 S42 Y6
SET S32
X3 X6 X11
S30
S Y1
X2 S50 TMR T1 K10
SET S40 T1
S40
S Y2 S60 Y7
X3
X12
SET S50
S31
S Y3 S1
X5
SET S41
S41
S Y4
X6
SET S50
S32
S Y5
X10
SET S42
S42
S Y6
X11
SET S50
S50
S TMR T1 K10
T1
SET S60
S60
S Y7
X12
S1

RET

END

201
ATOS

Exemplo de procedimentos de divergência simultânea e convergência simul-


tânea
M1002
M1002
ZRST S0 S127
S3
SET S3 X0
S3 X0 S20 Y0
S SET S20
X1
S20
S Y0
S30 Y1 S31 Y3 S32 Y5
X1
SET S30 X2 X3 X4
S40 Y2 S41 Y4 S42 Y6
SET S31
X5
SET S32 S50 TMR T1 K10
S30
S Y1 T1
X2 S60 Y7
SET S40 X6
S40
S Y2 S3
S31
S Y3
X3
SET S41
S41
S Y4
S32
S Y5
X4
SET S42
S42
S Y6
S40 S41 S42 X5
S S S SET S50
S50
S TMR T1 K10
T1
SET S60
S60
S Y7
X6
S3

RET

END

202
ATOS

Exemplo de procedimentos de simultânea divergência e convergência alter-


nativa
M1002 M1002
ZRST S0 S127 S4
X0
SET S4
S20 Y0
S4 X0
X1
S SET S20
S20 S30 Y1 S31 Y3 S32 Y5
S Y0 X2 X4 X6
X1 S40 Y2 S41 Y4 S42 Y6
SET S30 X3 X5 X7

SET S31 S50 TMR T1 K10


T1
SET S32 S60 Y7
S30
S Y1
X2 S4
SET S40
S40
S Y2
X3
SET S50
S31
S Y3
X4
SET S41
S41
S Y4
X5
SET S50
S32
S Y5
X6
SET S42
S42
S Y6
X7
SET S50
S50
S TMR T1 K10
T1
SET S60
S60
S Y7
X6
S4

RET

END

203
ATOS

Exemplo de combinação 1: (inclui divergência e convergência alternativas,


divergência e convergência simultâneas)
M1002 S51
ZRST S0 S127 S Y10
X12
SET S0 SET S61
S0 S61
S Y0 S Y14
X0 S60 S61 X15
SET S20 S S SET S70
S20 S70
S Y1 S Y17
X1 X17
SET S30 S0
X2 S32
SET S31 S Y4
X3 X6
SET S32 SET S41
S30 S41
S Y2 S Y6
X4 X10
SET S40 SET S52
S31
S Y3 SET S53
X5 S52
S Y11
SET S40
X13
S40
SET S62
S Y5
X7 S62
S Y15
SET S50
S63
S Y12
SET S51
X14
S50
S SET S63
Y7
S63
X11
S Y16
SET S60
S62 S63 X16
S60 S S S0
S Y13
RET

END

Figura SFC:
M1002
S0 Y0
X0
S20 Y1

X1 X2 X3
S30 Y2 S31 Y3 S32 Y4
X4 X5 X6

S40 Y5 S41 Y6
X7 X10

S50 Y7 S51 Y10 S52 Y11 S53 Y12


X11 X12 X13 X14
S60 Y13 S61 Y14 S62 Y15 S63 Y16

X15 X16
S70 Y17
S0
X17

S0

204
ATOS

Exemplo de combinação 2: (inclui divergência e convergência alternativas,


divergência e convergência simultâneas)

Diagrama "Ladder" Figura SFC:


M1002
M1002
ZRST S0 S127
S0
SET S0 X0
S0 X0
S SET S30 S30 Y0
S30 X1
S Y0 X1
X1 S31 Y1 S32 Y2
SET S31
X2 X3
X1
SET S32
S33 Y3
S31
S Y1 X4
X2
SET S33 S34 Y4 S36 Y6
S32
X5 X6
S Y2
X3 S35 Y5 S37 Y7
SET S33
S33 X7
S Y3
X4 S0
SET S34

SET S36
S34
S Y4
X5
SET S35
S35
S Y5
S36
S Y6
X6
SET S37
S37
S Y7
S35 S37 X7
S S S0

RET

END

205
ATOS

Restrições acerca do procedimento de divergência:

Até 8 pontos de passo de divergência podem ser usados em


um procedimento de divergência. No diagrama seguinte, os
pontos de passo de divergência máximos depois do ponto de
passo S20 são 8 (S30 - S37).
Até 16 giros podem ser usados na combinação de procedi-
mentos de divergência plural ou convergência simultânea. No
diagrama a seguir, 4 pontos de passo após o ponto de passo
S40, 7 pontos de passo após o ponto de passo S41 e 5 pontos
de passo após o ponto de passo S42. Neste procedimento, má-
ximo de 16 giros.
Cada ponto de passo no procedimento pode saltar para qual-
quer outro ponto de passo especificado em outros procedimen-
tos.

4.6 Comando IST


API Mnemônico Operandos Função
Controladores
Manual/controle au- ES EX SS SA SX SC EH
60 IST
tom.
Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP Bit
X Y M S K H KnX KnY KnM KnS T C D E F IST: 7 passos
S * * *
D1 *
D2 *

Operandos:
S: O número de entrada inicial (Operando S ocupará 8 dispo-
sitivos contínuos). D1: O menor número para o ponto de passo
de status designado em modo automático. D2: O maior núme-
ro para o ponto de passo de estado designado em modo auto-
mático.

206
ATOS

Explicações:
1. A faixa disponível para os operandos D1 e D2: para sé-
ries ES, S20~S127; para séries SA/EH, S20~S899.
2. O IST é um comando conveniente feito especificamen-
te para o estado inicial do procedimento de controle
step "Ladder" acomodar o relé auxiliar especial para
comando de controle automático conveniente.
3. O comando IST pode ser usado 1 só vez no programa.
4. Séries ES/SA não suportam registro de índice E, F.

Exemplo de Programa 1:
M1000
IST X10 S20 S60

S X10: Operação individual (Operação manual) X14: Operação contínua


X11: Retorno ao ponto zero X15: Chave de início de retorno ao ponto
X12: Operação de passo zero
X13: Operação de um ciclo X16: Iniciar chave
X17: Parar chave
1. Quando o comando IST é executado, os seguintes relés
auxiliares especiais irão mudar automaticamente.
M1040: Movimento inibido S0: Operação manual /ponto de passo inicial
M1041: Movimento iniciado S1: Retorno ao ponto zero /ponto de passo de estado inicial
M1042: Status do pulso S2: Operação automática/ponto de passo em estado inicial
M1047: Habilitar monitor STL
2. Quando o comando IST é usado, S10~S19 são para
operação de retorno ao ponto zero e o ponto de passo
deste estado não pode ser usado como ponto de passo
geral. Contudo, ao usar pontos de passo S0~S9, S0 i-
nicia a “operação manual”, S1 inicia a “operação de re-
torno ao ponto zero” e S2 inicia “operação automáti-
ca”. Assim, devem haver três circuitos destes três pon-
tos de passo de estado inicial primeiramente escritos
no programa.
3. Quando trocar para S1 (modo de retorno ao ponto ze-
ro), retorno ao ponto zero não terá quaisquer ações
uma vez que um dos S10~S19 estiver On.
4. Quando trocar para S2 (modo de operação automáti-
ca), a operação automática não terá quaisquer ações
uma vez que S entre D1 a D2 estiver On ou M1043=On

207
ATOS

Exemplo de Programa 2:
Exemplo: Controle do braço do robô (usar comando IST):
a. Solicitação de movimento: Neste exemplo,
dois tipos de bolas (grande e pequena) são
separadas e movidas para caixas diferentes.
Distribuir o painel de controle para o contro-
le.
b. Movimento do braço do robô: abaixar o braço
do robô, coletar bolas, levantar braço do
robô, mudar para a direita, abaixar o braço
do robô, soltar as bolas, levantar o braço do
robô, mudar para a esquerda para acabar
movimento em ordem.
c. Dispositivo I/O:
Limite à direita X2
Limite à esquerda X1 (bolas grandes) Limite à direita X3
Y0 (bolas pequenas)
Limite acima X4 Y3 Y2
Y1
Limite acima X5
Sensor X0 Gde Peq.
gde/pequeno
d. Painel de controle
Ligar X15 Iniciar autom.X16

Desligar Parar autom. X17


Virar
Coletar Levantar para
bolas Braço do robô direita Passo X12

Retorno a zero X11 Operação de


X20 X22 X24 um ciclo-+ X13
Virar
Soltar Abaixar para
bolas braço do robô direita
Manual de Operação
operação X10 contínua X14
X21 X23 X25

Sensor X0 grande/pequeno.
O limite à esquerda do braço do robô X1, o limite à direita X2
(bolas grandes), o limite à direita X3 (bolas pequenas), o limite
superior X4, e o limite inferior X5.

208
ATOS

Levantar o braço do robô Y0, abaixar o braço do robô Y1,


virar para a direita Y2, virar para a esquerda Y3, e coletar bolas
Y4.
INICIAR circuito :
X0 X1 Y4
M1044
M1000
IST X10 S20 S80

Modo de operação manual:

Modo de retorno ao ponto zero:

Figura SFC:
S1
X15
S10 RST Y4 Soltar bolas

RST Y1 Parar de abaixar braço do robô


Levantar braço do robô
X4 Y0 até limite superior (X4 está ON)

S11 RST Y2 Parar de virar para a direita


Virar para a esquerda e virar
Y3
X1 para o limite à esquerda (X1 está On)

S12 SET M1043 Flag de início do retorno a zero completado

RST S12 Operação de retorno a zero completada

209
ATOS

Diagrama "Ladder" :
S1 X15
S SET S10 Dar entrada a modo de operação retorno a zero
S10
S RST Y4 Soltar bolas

RST Y1 Parar de abaixar braço do robô

Y0 Levantar braço do robô ao


limite superior (X4 está ON)
X4
SET S11
S11
S RST Parar de virar para a esquerda
Y2

Y3
X1 Virar à esquerda e virar ao limite
SET S12 esquerdo (X1 está On)
S12
S SET M1043 Flag de início do retorno zero completado

RST S12 Operação de retorno ao zero completada

Operação automática (Modo de operação contínuo/ cíclico de


um passo):

Figura SFC:
S2
M1041
M1044
S20 Y1

X5 X5
X0 X0
S30 SET Y4 S40 SET Y4

TMR T0 K30 TMR T1 K30


T0 T1
S31 Y0 S41 Y0
X4 X4
X2 X3
S32 Y2 S42 Y2
X2 X3

S50 Y1
X5
S60 RST Y4

TMR T2 K30
T2
S70 Y0
X4
X1
S80 Y3
X1

S2

210
ATOS

Diagrama "Ladder" :
S2 M1041 M1044
S SET S20 Entrar em modo de operação automática
S20
S Y1 Abaixar braço do robô
X5 X0
SET S30
X5 X0
SET S40
S30
S SET Y4

TMR T0 K30
T0
SET S31
S31
S Y0 Levantar braço do robô ao
limite superior (X4 está ON)
X4
SET S32
S32 X2
S Y2 Virar para a direita
X2
SET S50
S40
S SET Y4 Coletar bolas

TMR T1 K30
T1
SET S41
S41
S Levantar braço do robô
Y0 ao limite superior (X4 está ON)
X4
SET S42
S42 X3
S Y2 Virar para a direita
X3
SET S50
S50
S Y1 Abaixar o braço do robô
X5
SET S60
S60
S RST Y4 Soltar bolas

TMR T2 K30
T2
SET S70
S70
S Levantar braço do robô
Y0
ao limite superior (X4 está ON)
X4
SET S80
S80 X1
S Y3 Virar para esquerda e virar
para o limite esquerdo (X1 is On)
X1
S2

RET

END

211
ATOS

Explicação do Flag:
M1040: Movimento de ponto de passo inibido. Quando
M1040=ON, todos os movimentos do ponto de passo são
inibidos.

1. Modo de operação manual: M1040 permanece ON.


2. Modo de retorno ao ponto zero /Modo de operação de um
ciclo: Enquanto se pressiona o botão PARAR (STOP) e o botão
INICIAR (START) novamente, M1040 permanecerá ON.
3. Modo de operação de passo: M1040 permanece ON, e
ficará OFF quando o botão INICIAR (START) for pressionado.
4. Modo de operação contínua: Quando o CLP for de
STOP→RUN, M1040 permanece ON, e ficará OFF quando o
botão de INICIAR (START) for pressionado.
M1041: Início de movimento do ponto de passo: este é o relé
auxiliar especial que reflete o movimento do primeiro ponto de
passo (S2) ao próximo ponto de passo.
1. Modo de operação manual /Modo de retorno ao ponto
zero: M1041 permanece OFF.
2. Modo de operação de passo/ Modo de operação de um
ciclo: M1041 somente ficará OFF quando o botão START for
pressionado.
3. Modo de operação contínua: permanece On quando o
botão START for pressionado, e permanece OFF quando o botão
STOP é pressionado.
M1042: START pulso (INICIAR): Somente um pulso será
enviado quando o botão for pressionado.
M1043: Retorno ao ponto zero completado: Uma vez que
M1043 =ON é setado, significa que a movimentação RESET
(reconfigurar) for executada.
M1044: Condições de origem: Sob o modo de operação
contínua, as condições de origem M1044 devem ser dirigidas a
ON para executar a movimentação do ponto de passo inicial
(S2) movendo ao ponto de passo seguinte.
M1045: Inibição de todas as saídas reconfiguradas (reset).
Se condições de execução:A. do controle manual S0 para
retorno ao ponto zero (S1)
B. de operação automática S2 para operação manual
S0
C. de operação automática S2 para retorno ao ponto
zero (S1)
1. Qdo M1045=Off e um dos S de D1~D2 estiver ON, o ponto
de passo de saída SET Y e ações serão limpas para OFF.
2. Qdo M1045 =On, a saída SET Y será reservada e o ponto
de passo durante a ação será apagado p/ Off.
3. Se executar do retorno ao ponto zero S1 à operação ma-
nual S0, não importa se M1045=On ou M1045=Off, a saída SET
Y será reservada e a ação do ponto de passo será limpa para
OFF.

212
ATOS

M1046: Config. o estado STL para On: Se um dos pts de


passo S estiver On, M1046=On. Após M1047 forçar p/ ficar On,
M1046 ficará ON se S estiver ON. Ainda, números de 8 pts
antes que S esteja On serão gravados em D1040~D1047.
M1047: Monitor STL habilitado. Qdo o comando IST começar
a executar, M1047 será forçado a ficar ON e ele será forçado a
ficar ON a cada varredura, caso o com. IST esteja ainda ON. O
Flag é usado p/ monitorar o S.
D1040~D1047: Número de estado 1-8 ON do ponto de passo

213
ATOS

214
ATOS

CAPÍTULO 5
.COMANDOS DE APLICAÇÃO.

215
ATOS

216
ATOS

Resumo de parâmetros

Modelos aplicá-
Códigos Mnemônicos PASSOS
Comando veis
Classificação Artigo II. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
00 CJ –  Salto condicional    3 – 244
01 CALL –  Chamar sub-rotina    3 –
02 SRET – – Retorno de sub-rotina    1 – 249
Controle de giro

03 IRET – – Interromper retorno    1 – 250


04 EI – – Habilitar interrupções    1 – 251
05 DI – – Desabilitar interrupções    1 – 251
06 FEND – – Primeiro fim    1 –
Atualização do temporizador de
07 WDT –     1 –
Watchdog
Início de PARA O PRÓXIMO
08 FOR – –    3 – 258
giro
09 NEXT – – Fim de PARA O PRÓXIMO giro    1 – 259
10 CMP DCMP  Comparar    7 13
Comparação de transmis-

11 ZCP DZCP  Comparar zona    9 17


12 MOV DMOV  Mudança de dados    5 9 265
13 SMOV –  Mudança de deslocamento –   11 – 266
14 CML DCML  Complemento (Compliment)    5 9
são

15 BMOV –  Movimento em bloco    7 – 270


16 FMOV DFMOV  Movimento de preenchimento    7 13 272
17 XCH DXCH  Troca de dados    5 9
18 BCD DBCD  Converter dados BIN em BCD    5 9
19 BIN DBIN  Converter dados BCD em BIN    5 9 276
20 ADD DADD  Efetuar a adição de dados BIN    7 13
Efetuar a subtração de dados
Quatro operações aritméticas fun-

21 SUB DSUB     7 13 279


BIN
Efetuar a multiplicação de dados
22 MUL DMUL     7 13 281
BIN
23 DIV DDIV  Efetuar a divisão de dados BIN    7 13 283
damentais

24 INC DINC  Efetuar a adição de 1    3 5 284


25 DEC DDEC  Efetuar a subtração de 1    3 5 285
Efetuar a operação (AND) de
26 WAND DAND     7 13
produto lógico
Efetuar a operação de soma
27 WOR DOR     7 13
lógica (OR)
Efetuar a operação de adição
28 WXOR DXOR     7 13
exclusiva (XOR)
29 NEG DNEG  Negação    3 5 290
30 ROR DROR  Girar para a direita    5 9 293
31 ROL DROL  Girar para a esquerda    5 9 293
Girar para a direita com o flag de
Rotação e Deslocamento

32 RCR DRCR     5 9 294


carry anexado
Girar para a esquerda com o
33 RCL DRCL     5 9 295
carry de flag anexado
Deslocar os dados do dispositivo
34 SFTR –     9 – 296
especificado para a direita
Deslocar os dados do dispositivo
35 SFTL –     9 – 297
especificado para a esquerda
36 WSFR –  Deslocar o registro para a direita –   9 – 299
Deslocar o registro para a es-
37 WSFL –  –   9 – 300
querda
38 SFWR –  Deslocar registro com escrita –   7 – 301

217
ATOS

Modelos aplicá-
Códigos Mnemônicos PASSOS
Comando veis
Classificação Artigo II. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
39 SFRD –  Deslocar registro com leitura –   7 – 302
Reiniciar uma gama de dispositi-
40 ZRST –     5 – 303
vos especificados
41 DECO –  Codificador 8 → 256 bits    7 – 305
42 ENCO –  Codificador 256 → 8 bits    7 – 306
43 SUM DSUM  Soma de bits ON    5 9 308
Operação de dados

44 BON DBON  Checar status do bit especificado    7 13 309


45 MEAN DMEAN  Valor médio    7 13 309
46 ANS – – Saída do dispositivo de alarme –   7 – 310
Reconfiguração (reset) do dispo-
47 ANR –  –   1 – 311
sitivo de alarme
48 SQR DSQR  Raiz quadrada de BIN    5 9 313
Converter BIN inteiro para ponto
49 FLT DFLT  flutuante binário    5 9 314

50 REF –  Atualização I/O    5 – 319


Atualização e ajuste do tempo
51 REFF –  –   3 – 320
de resposta do filtro de entrada
Processamento de alta velocidade

32132
52 MTR – – Introduzir (Input) matriz –   9 –
1
Comparação de contador de alta
53 – DHSCS –    – 13 323
velocidade SET (AJUSTAR)
Comparação de contador de alta
54 – DHSCR – velocidade RESET (RECONFI-    – 13 338
GURAR)
Comparação de zona (contador
55 – DHSZ – –   – 17 341
de alta velocidade)
56 SPD – – Detecção de velocidade    7 – 349
57 PLSY DPLSY – Saída de pulso    7 13 351
Saída por modulação da largura
58 PWM – –    7 – 358
do pulso
Saída de onda de pulso com
59 PLSR DPLSR – velocidade de acelera-    9 17 360
ção/desaceleração
60 IST – – Controle manual/automático    7 – 363
Comando de conveniência

Procurar uma pilha (stack) de


61 SER DSER  –   9 17 370
dados
Seqüenciador tipo “drum” abso-
62 ABSD DABSD – –   9 17 371
luto
Seqüenciador tipo “drum” incre- – 373
63 INCD – – –   9
mental
64 TTMR – – Temporizador de aprendizado –   5 – 375
65 STMR – – Temporizador especial –   7 – 376
66 ALT – – Alternar comando On/Off    3 – 378
67 RAMP – – Sinal tipo rampa –   9 – 379
69 SORT – – Seleção de dados (Data sort) –   11 – 381
Entrada de teclado keypad de 10
70 TKY DTKY – –   7 13 383
teclas
Mostrador externo I/O

Entrada de teclado keypad de 16


71 HKY DHKY – –   9 17 385
teclas
72 DSW – – Entrada de chave digital –   9 – 388
Decodificar o painel mostrador
73 SEGD –     5 – 390
de 7 passos
Saída de varredura do mostrador
74 SEGL – –    7 – 391
de 7 passos
Entrada de teclado keypad de
75 ARWS – – –   9 – 395
setas

218
ATOS
Modelos aplicá-
Códigos Mnemônicos PASSOS
Comando veis
Classificação Artigo II. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
76 ASC – – Conversão de código ASCII –   11 – 397
77 PR – – Imprimir –   5 – 398
Ler dados CR de módulo espe-
78 FROM DFROM     9 17 400
cial
Módulo especial CR de escrita
79 TO DTO     9 17 401
de dados
80 RS – – Comunicação de dados serial    9 – 406
81 PRUN DPRUN  Sistema de Transmissão Octal –   5 9 419
Serial I/O

82 ASCI –  Converter HEX em ASCII    7 – 420


83 HEX –  Converter ASCII em HEX    7 – 424
84 CCD –  Checagem de código –   7 – 426
85 VRRD –  Leitura de potenciômetro –   5 – 428
86 VRSC –  Escala de potenciômetro –   5 – 430
87 ABS DABS  Valor absoluto    3 5 431
88 PID DPID – Cálculo de PID    9 – 432
89 PLS – – Saída em borda de subida    3 –
Operação de detecção em borda
90 LDP – –    3 – 175
de subida
91 LDF – – Operação em borda de descida    3 – 176
Comando de conexão em série
92 ANDP – – para detecção em borda de su-    3 – 176
bida
Comando básico

Comando de conexão em série


93 ANDF – – para operação em borda de des-    3 – 176
cida
Comando de conexão em para-
94 ORP – – lelo para operação de detecção    3 – 177
em borda de subida
Comando de conexão em para-
95 ORF – – lelo para operação de detecção    3 – 178
em borda de descida
96 TMR – – Temporizador    4 – 172
97 CNT DCNT – Contador    4 6 172
98 INV – – Operação invertida    1 – 180
99 PLF – – Saída em borda de descida    3 – 179
100 MODRD – – Leitura de dados MODBUS    7 – 450
101 MODWR – – Escrita de dados MODBUS    7 – 455
Comando de comunicação dos

Comando de avanço do drive da


drives de motor Delta AC

102 FWD – –    7 – 461


série VFD-A
Comando de recuo (reverse) do
103 REV – –    7 – 461
drive da série VFD-A
Comando de parada do drive da
104 STOP – –    7 – 461
série VFD-A
Leitura do status do drive da
105 RDST – –    5 – 463
série VFD-A
Comando de parada anormal do
106 RSTEF – –    5 – 465
drive da série VFD-A
107 LRC –  Checar erro LRC –   7 – 466
108 CRC –  Checar erro CRC –   7 – 468
109 SWRD –  Leitura de deslocamento digital –   3 – 471
Comparação de ponto flutuante
110 – DECMP – 13 472
Operação de

   
binário
Flutuação

Comparação de zona de ponto


111 – DEZCP     – 17 473
flutuante binário
116 – DRAD  Grau  Radiano –   – 9 474
117 – DDEG  Radiano  Grau –   – 9 475

219
ATOS

Modelos aplicá-
Códigos Mnemônicos PASSOS
Comando veis
Classificação Artigo II. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
Converter ponto flutuante binário
118 – DEBCD     – 9 476
em ponto flutuante decimal
Converter ponto flutuante deci-
119 – DEBIN     – 9 477
mal em ponto flutuante binário
120 – DEADD  Adição de ponto flutuante binário    – 13 478
Subtração de ponto flutuante
121 – DESUB     – 13 479
binário
Multiplicação de ponto flutuante
122 – DEMUL     – 13 481
binário
Divisão de ponto flutuante biná-
123 – DEDIV     – 13 482
rio
Efetuar operação de expoente
124 – DEXP     – 9 483
em ponto flutuante binário
Efetuar operação de logaritmo
125 – DLN  natural em ponto flutuante biná-    – 9 484
rio
Efetuar operação do logaritmo
126 – DLOG     – 13 485
em ponto flutuante binário
Raiz quadrada em ponto flutuan-
127 – DESQR     – 9 487
te binário
Efetuar operação de exponenci-
128 – DPOW     – 13 488
ação em ponto flutuante binário
Converter ponto flutuante binário
129 INT DINT     5 9 489
para BIN inteiro
Operação seno em ponto flutu-
130 – DSIN     – 9 490
ante binário
Operação co-seno em ponto
131 – DCOS – 9 492
Operação de Flutuação

   
flutuante binário
Operação tangente em ponto
132 – DTAN     – 9 493
flutuante binário
Operação arco coseno em ponto
133 – DASIN  –   – 9 495
flutuante binário
Operação arco coseno em ponto
134 – DACOS  –   – 9 496
flutuante binário
Operação arco tangente em
135 – DATAN  –   – 9 497
ponto flutuante binário
Operação seno hiperbólico em
136 – DSINH  – –  – 9 498
ponto flutuante binário
Coseno hiperbólico em ponto
137 – DCOSH  – –  – 9 499
flutuante binário
Operação tangente hiperbólica
138 – DTANH  – –  – 9 500
em ponto flutuante binário

143 DELAY –  Atraso de comando –   3 – 501

Saída por modulação de largura


144 GPWM – – –   7 – 502
Comando adicional

do pulso geral
145 FTC – – Controle de temperatura Fuzzy –   9 – 503
147 SWAP DSWAP  Trocar byte alto/baixo (high/low)    3 5 512
Leitura de MEMÓRIA do backup
148 MEMR DMEMR  –   7 13 513
de dados
Escrita da MEMÓRIA do backup
149 MEMW DMEMW  –   7 13 514
de dados
Leitura/escrita de dados MOD-
150 MODRW – –    11 – 521
BUS
Detecção de largura do pulso de
151 PWD – – – –  5 – 535
entrada

220
ATOS
Modelos aplicá-
Códigos Mnemônicos PASSOS
Comando veis
Classificação Artigo II. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
Inicio de medição de tempo de
152 RTMU – – – –  5 – 536
execução de interrupção I
Fim de medição do tempo de
153 RTMD – – – –  3 – 537
execução de interrupção I
154 RAND – – Valor randômico –   7 – 539
Controle de po-

155 – DABSR – Leitura de valor atual ABS –   7 13 539


156 ZRN DZRN – Retorno ao ponto zero – –  9 17 556
sição

Saída de pulso de velocidade


157 PLSV DPLSV – – –  7 13 561
variável
158 DRVI DDRVI – Drive para aumento – –  9 17 562
159 DRVA DDRVA – Drive para absoluto – –  9 17 568
160 TCMP –  Comparação de tempo –   11 – 580
Calendário per-

161 TZCP –  Comparação de fuso horário –   9 – 583


162 TADD –  Adição de tempo –   7 – 584
pétuo

163 TSUB –  Subtração de tempo –   7 – 585


166 TRD –  Leitura de dados de tempo –   3 – 587
167 TWR –  Escrita de dados de tempo –   3 – 589
169 HOUR DHOUR – Horímetro –   7 13 591
170 GRY DGRY  Converter BIN em código Gray –   5 9 592
Gray
digo
Có-

171 GBIN DGBIN  Converter código Gray em BIN –   5 9 593


180 MAND –  Matriz AND – –  9 – 594
181 MOR –  Matriz OR – –  9 – 596
182 MXOR –  Matriz XOR – –  9 – 597
183 MXNR –  Matriz NOR – –  9 – 599
184 MINV –  Inverso de matriz – –  7 – 600
185 MCMP –  Comparação de matriz – –  9 – 601
Manipulando a

186 MBRD –  Leitura de bit de matriz – –  7 – 603


187 MBWR –  Escrita de bit de matriz – –  7 – 604
matriz

188 MBS –  Troca de bit de matriz – –  7 – 606


189 MBR –  Rotação de bit de matriz – –  7 – 608
Contador do estado de bit da
190 MBC –  – –  7 – 609
matriz
196 HST DHST  Contador de alta velocidade – –  3 – 610
Contato de comparação fica ON
215 LD& DLD& – –   5 9
quando S1 & S2 é verdadeiro
Contato de comparação fica ON
216 LD| DLD| – –   5 9
quando S1 | S2 é verdadeiro
Operação lógica tipo contato

Contato de comparação fica ON


217 LD^ DLD^ – –   5 9
quando S1 ^ S2 é verdadeiro
Contato de comparação fica ON
218 AND& DAND& – –   5 9
quando S1 & S2 é verdadeiro
Contato de comparação fica ON
219 AND| DAND| – –   5 9
quando S1 | S2 é verdadeiro
Contato de comparação fica ON
220 AND^ DAND^ – –   5 9
quando S1 ^ S2 é verdadeiro
Contato de comparação fica ON
221 OR& DOR& – –   5 9
quando S1 & S2 é verdadeiro
Contato de comparação fica ON
222 OR| DOR| – –   5 9
quando S1 | S2 é verdadeiro
Contato de comparação fica ON
223 OR^ DOR^ – –   5 9
quando S1 ^ S2 é verdadeiro
Contato de comparação fica ON
224 LD= DLD= –    5 9
Comando de
comparação

quando S1 = S2 é verdadeiro
tipo contato

Contato de comparação fica ON


225 LD> DLD> –    5 9
quando S1 > S2 é verdadeiro
Contato de comparação fica ON
226 LD< DLD< –    5 9
quando S1 < S2 é verdadeiro

221
ATOS

Modelos aplicá-
Códigos Mnemônicos PASSOS
Comando veis
Classificação Artigo II. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
Contato de comparação fica ON
228 LD<> DLD<> –    5 9
quando S1 ≠ S2 é verdadeiro
Contato de comparação fica ON
229 LD<= DLD<= –    5 9
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
230 LD>= DLD>= –    5 9
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
232 AND= DAND= –    5 9
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
233 AND> DAND> –    5 9
quando S1 > S2 é verdadeiro
Contato de comparação fica ON
234 AND< DAND< –    5 9
quando S1 < S2 é verdadeiro
Contato de comparação fica ON
236 AND<> DAND<> –    5 9
quando S1 ≠ S2 é verdadeiro
Contato de comparação fica ON
237 AND<= DAND<= –    5 9
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
238 AND>= DAND>= –    5 9
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
240 OR= DOR= –    5 9
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
241 OR> DOR> –    5 9
quando S1 > S2 é verdadeiro
Contato de comparação fica ON
242 OR< DOR< –    5 9
quando S1 < S2 é verdadeiro
Contato de comparação fica ON
244 OR<> DOR<> –    5 9
quando S1 ≠ S2 é verdadeiro
Contato de comparação fica ON
245 OR<= DOR<= –    5 9
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
246 OR>= DOR>= –    5 9
quando S1 = S2 é verdadeiro

Modelos aplicáveis de série ES acima inclui séries EX e SS;


SA inclui série SA.

Comandos acima para modelos ES/EX/SS não possuem co-


mando de execução de pulso (comando P).

5.2 Estrutura de Comando de Aplicação


Muitos comandos podem ser divididos em um comando e um
operando como em seguida:
Comando : Indica as funções executivas do comando
Operando : Indica o dispositivo que calcula o operando

Um comando geralmente permite a utilização de um passo,


enquanto um operando normalmente permite de dois ou quatro
passos, o que vai variar com base no comando, se ele for de 16
bits ou 32 bits.
Explicação do formato do comando de aplicação:

222
ATOS
1 2 3 4 5 6 7

API Modelos aplicáveis


41 DECO P S D n Codificador de 8 a 256 bits ES/EX/SS EP EH

15 Dispositivo de Bit Dispositivo de palavra (word) Comando de 16 bits (7 PASSOS) 8


14 X Y M S K H T C D E F Execução Execução
DECO contínua DECOP
de pulso
13 S
D C32-bit command 9

n
Flag:nenhum 10
12 Nota: Quando D é um dispositivo de bit, n=1~8 11
Quando D é um dispositivo de palavra (word) , n=1~4
Vide especificações gerais para cada modelo das séries
Para verificar o escopo de uso de cada dispositivo.

Número API para comando de aplicação


Fileira de cima indica comando de 16 bits. Se o limite da fileira é de linha pontilhada, significa que
não está disponível para um comando de 16 bits.
A fileira de baixo indica um comando de 32 bits. Se o limite da fileira pe de linha pontilhada, significa
que não está disponível para um comando de 32 bits. Um “D“ é adicionado à cabeça do código
mnemônico para indicar o comando de 32 bits. (Por exemplo: API 12 DMOV)
O código mnemônico do comando de aplicação.
Um símbolo “☺
☺” na fileira de cima indica que o comando é geralmente aplicado usando-se co-
mando de execução de pulso.
Um “P“ na fileira de baixo indica que o comando é usado com o comando de execução de pulso.
(Por exemplo: API 12 MOVP)
O formato do operando no comando de aplicação
A descrição da função do comando de aplicação
Modelos aplicáveis de DVP série CLP
Os números de passo ocupados pelo comando na operação de 16 bits, o número de execução con-
tínua e o comando de pulso executivo.
Os números de passo ocupados pelo comando em operação de 32 bits, o nome do comando de
execução contínua e o comando de execução de pulso
Flag relativo ao comando de aplicação
O símbolo “*” significa que o dispositivo pode usar o registro de índice.
Nota
Um símbolo “=” é dado ao dispositivo, e pode ser usado para este operando
Nome do dispositivo
Tipo de dispositivo

Entrada de Comandos de Aplicação


Alguns comandos de aplicação são somente combinados por
códigos de comando API, mas a maioria deles é combinada por
códigos de comando API e diversos operandos.
Os comandos de aplicação da série DVP CLP são controlados
por códigos de comando API 00 a API 246. Cada código de co-
mando tem seu significado próprio, por exemplo, API 12 signifi-
ca MOV (mover dados). Ao usar editor de diagrama "Ladder"
para inserir programas, você precisará digitar o comando
“MOV”. Se usar HPP para inserir o programa, precisará colocar

223
ATOS

os códigos dos comandos. Cada comando de aplicação tem seu


operado único.

X0
MOV K10 D10

command operand

Este comando serve para mover o valor do operando para o operando designado.

Operando fonte: se há mais de 1 operando de fonte, usa-se , … para mos-


trar.

Operando destino: se há mais de um operando, usa-se , …. para mostrar.

Se o operando pode ser somente representado como uma constante K, H ou registro, então usa-
se , , , , , para mostrar.

A extensão do operando (comando de 16 bits ou 32 bits)


A extensão do operando pode ser dividida em dois grupos: 16
bits e 32 bits para processar dados de diferente tamanho. Um
”D” antes do comando separa os comandos 32 bits do de 16
bits.
Comando MOV de 16 bits
X0
Quando X0=On, K10 foi enviado para D10.
MOV K10 D10

Comando DMOV de 32 bits


X1 Quando X1=On, dados de (D11, D10) foram
D10 D20 enviados para (D21, D20)

Comando de execução contínua e Comando de execução por pulso


Os comandos do tipo execução podem ser divididos em dois
tipos: comando de execução contínua e comando de execução
por pulso. Devido ao tempo de execução ser mais curto en-
quanto os comandos ainda não foram executados, deve-se usar
o comando de execução por pulso tanto quanto possível para
reduzir o ciclo de varredura da programação. Um “P” deve ser
adicionado diretamente após o comando, que significa que se
trata de um comando de execução por pulso. Os comandos
mais utilizados geralmente usam comando de execução
por pulsos para aplicação, por exemplo, INC, DEC e MOV ou
otros comandos semelhantes. Assim, os comandos de execução

224
ATOS

por pulso são identificados pelo símbolo ☺ na parte superior di-


reita do comando.
Comando de execução por pulso
X0 Quando X0 vai de OFF→ON, o comando MOVP
será executado uma vez e o comando não pode ser
D10 D12 executado novamente na varredura do programa de
varredura. Este é chamado comando de execução
por pulso.
Comando de execução contínua
X1 Quando X1=ON, o comando MOV pode ser execu-
tado novamente em todas as varreduras do progra-
MOV D10 D12 ma. Isso é chamado comando de execução contí-
nua.

As figuras acima mostram que quando X0, X1=OFF, o comando não será executado e os conteúdos do
operando destino “D” permanecerão inalterados.

Os Dispositivos Indicados dos Operandos


1. Dispositivo de Bit como X, Y, M, S podem ser combinados
e são definidos como dispositivo WORD (PALAVRA). Nos
comandos de aplicação, o dispositivo bit pode servir
como dispositivo WORD (KnX, KnY, KnM, KnS) para
armazenar valores numéricos para operar.
2. Registro de dados D, Temporizador T, Contador C and
Registro de Índice E, F são todos dispositivos indicados
dos operandos.
3. Um registro de dados é geralmente registro de 16 bits e
é também um registro D. Desta forma, designar um
registro de 32 bits também significa designar dois
registros D com números contínuos.
4. Se o operando do comando de 32 bits designar D0, o
registro de dados de 32 bits registro que é combinado
por D1 e D0 será ocupado. D1 é o 16 bits superior e D0 é
o 16 bits inferior. A regra de uso do T e do Contador de
16 bits (C0~C199) é a mesma.
5. Quando o contador de 32 bits (C200~C255) é usado
como Registro de Dados, um ponto indica a extensão de
32 bits. Somente o operando do comando de 32 bits
pode ser designado, o operando de 16 bits não pode ser
designado.

Formado de dados do operando


a. X, Y, M, S são somente um único ponto ON/OFF, e são de-
finidos como dispositivo de bit.
b. Contudo, o dispositivo de 16 bits (ou 32 bits) T, C, D, E, F
são registro de dados e são definidos dispositivo WORD
(palavra).

225
ATOS

c. Pode-se também adicionar Kn na frente de X, Y, M e S pa-


ra ser identificado como dispositivo WORD (PALAVRA),
enquanto n=1 significa 4 bits. Então 16 bits podem ser
descritos de K1 a K4, e 32 bits podem ser descritos de K1
a K8. Por exemplo, K2M0 significa que há 8 bits de M0 a
M7.

X0 Quando X0=On, mova os conteúdos de M0 a M7


para os segmentos D10 de 0 a 7, e segmentos 8 a 15
MOV K2M0 D10
são configurados em 0.

Número Específico de Dígitos


Comando de 16 bits Comando de 32 bits
Número específico de dados (comando de 16
Número específico de dados (comando de 32 bits):
bits):
K-2,147,483,648~K+2,147,483,647
K-32,768~K+32,767
Comando de 16 bits: (K1~K4) Comando de 32 bits: (K1~K8)
K1 (4 pontos) 0~15 K1 (4 pontos) 0~15
K2 (8 pontos) 0~255 K2 (8 pontos) 0~255
K3 (12 pontos) 0~4,095 K3 (12 pontos) 0~4,095
K4 (16 pontos) -32,768~+32,767 K4 (16 pontos) 0~65,535
K5 (20 pontos) 0~1,048,575
K6 (24 pontos) 0~167,772,165
K7 (28 pontos) 0~268,435,455
K8 (32 pontos) -2,147,483,648~+2,147,483,647

Flags
1. Flags gerais
Para o resultado de operação dos comandos de aplicação,
existem os seguintes flags da série DVP CLP:
Exemplo : M1020 : Flag M1022 : Flag de Carry M1021
: Flag de Empréstimo (Borrow Flag)
M1029 : Flag de Comando de Execução
Completo
Ao executar o comando, todos os flags serão ligados (ON) ou
desligados (OFF) pelo resultado da operação dos comandos de
aplicação. Contudo, enquanto o comando ainda não foi
executado, o estado ON/OFF dos flags permanecerá. Portanto,
deve-se notar que os flags acima podem não estar conectados
com os comandos especificados mas também com muitos
comandos.
O exemplo de programa do Flag de Execução de Comando
Completo , i.e. M1029
Quando o contato condicional ficar ON, o comando de
entrada de deslocamento digital (DSW) especificará 4 pontos de
saída com frequência de 0.1 segundos e circulará de modo a ler
automaticamente os valores do DSW. Durante o período
intermediário da operação, se o contato condicional estiver OFF,

226
ATOS

o comando DSW é suspenso e o comando mencionado acima


será re-executado do começo do ciclo do programa. Quando o
contato condicional estiver ON novamente, vide circuito abaixo
se quiser que ele pare ou seja interrompido.
X0
SET M0 Quando X0=ON, o comando DSW é ativado.
M0 Quando X0=OFF, espere o ciclo do programa
DSW X10 Y10 D0 K0 do comando DSW ser completado, após
M1029=ON, assim M0 ficará OFF.
M1029
RST M0

2. Flags de erro de operação


Se a combinação do comando de aplicação apresentar erro
e/ou dispositivos designados dos operandos estiverem for a da
faixa, erros ocorrerão e os flags de erro e números no quadro
abaixo serão mostrados durante a execução dos comandos de
aplicação.
M1067 Quando erros de operação ocorrem, M1067=On, D1067 indicará o número do erro e
D1069 indicará o endereço.
D1067
Se outros erros ocorrerem, os conteúdos de D1067 e D1069 serão atualizados.
D1069
(Quando o erro é reconfigurado (reset), M1067=Off.

M1068 Quando erros de operação ocorrem, M1068=On, D1068 mostrará o endereço do erro.

D1068 Se outros erros ocorrerem, os conteúdos de D1068 não serão atualizados, M1068
deve usar o comando RSTpara reiniciar em OFF, caso contrário, o erro permanecerá.

3. Flags para Funções de Extensão


Alguns comandos de aplicação podem ser extendidos ao
usarem alguns flags especiais.
Exemplo: comando RS pode trocar o modo de transmissão
de 8 bits e 16 bits usando M1161.

Quantidade de Utilização Limitada para Comandos de Execução:


Alguns comandos podem ser usados diversas vezes no
programa, mas alguns deles podem ser usados somente duas
vezes ou uma vez no programa. Contudo, estes comandos
podem ser modificados por registro de índice para que haja
extensão de mais funções dos comandos nos operandos.

1. Podem ser usado somente uma vez no programa:


API 58 (PWM) (modelos API 60 (IST) (modelos
ES/EX/SS/SA/SX/SC) ES/EX/SS/SA/SX/SC/EH)
API 74 (SEGL) (modelos ES/EX/SS)

227
ATOS

2. Podem ser usados duas vezes no programa:


API 57 (PLSY) (modelos ES/EX/SS) API 59 (PLSR) (modelos ES/EX/SS)
API 74 (SEGL) (modelos EH ) API 77 (PR) (modelos SA/EH)

3. Podem ser usados quatro vezes no programa:


API 169 (HOUR) (modelos SA)

4. Somente pode ser usado oito vezes no programa:


API 64 (TTMR) (modelos SA)

5. API 53 (DHSCS) e API 54 (DHSCR), estes comandos


podem ser somente executados simultaneamente menos de
quatro vezes no programa dos modelos DVP-ES/EX/SS.
6. Estes comandos somente podem ser executados
simultaneamente menos de seis vezes no programa API 53
(DHSCS), API 54 (DHSCR), API 55(DHSZ) estes comandos
podem ser executados somente menos de seis vezes no
programa dos modelos DVP-SA.

Quantidade de Utilização Limitada para Executar Comandos


Simultaneamente:

Não há quantidade de utilização limitada quando se usa no


mesmo comando no programa. Contudo, há quantidade de
ultização limitada para se executar os comandos
simultaneamente.
1. API 52 (MTR), API 56 (SPD), API 62 (ABSD), API 63
(INCD), API 69 (SORT), API 70 (TKY), API 71 (HKY), API
72 (DSW) (modelos SA), API 74 (SEGL) (modelos SA),
API 75 (ARWS), API 80 (RS), API 100 (MODRD), API 101
(MODWR), API 102 (FWD), API 103 (REV), API 104
(STOP), API 105 (RDST), API 106 (RSTEF), API 150
(MODRW), API 151 (PWD), estes comandos somente
podem ser executados simultaneamente uma vez no
programa.
2. API 57 (PLSY), API 58 (PWM), API 59 (PLSR), API 72
(DSW) (modelos EH), estes comandos podem somente
ser executados simultaneamente duas vezes no
programa.
3. API 169 (HOUR) (modelos EH) podem ser executados
somente quatro vezes no programa.
4. API 64 (TTMR) (modelos EH ) podem ser executados
somente oito vezes no programa.

228
ATOS

5. No programa do DVP modelos EH, não há quantidade de


uso limitada para comandos relacionados ao contador de
alta velocidade do hardware, como DHSCS, DHSCR e
DHSZ. Contudo, há quantidade de uso limitada para
executar os comandos simultaneamente. Os comandos
DHSCS, DHSCR utilizarão uma unidade de memória e o
comando DHSZ utilizará duas unidades de memória.
Quando estes comandos são executados
simultaneamente, o total de unidades memória utilizadas
é de no máximo oito. Se exceder o número de unidades
de memória, o sistema totalizará as unidades de
memória ultilizadas dos comandos que tiverem sido
varridos e executados em primeiro lugar, enquanto os
outros serão ignorados.

5.3 Manipulando valores numéricos


 Os dispositivos tais como X, Y, M, S são dispositivos de
bit e apresentam-se somente em dois estados, ON e
OFF. Contudo, T, C, D, E, F são registro de dados de
são definidos como dispositivos WORD (palavra). Em-
bora o dispositivo de bit possa corresponder somente a
ON/OFF, ele pode ser usado como valor numérico nos
operandos dos comandos de aplicação se adicionados
ao bit especificado mais a frente. O “dispositivo de bit
especificado” é o “número específico de dígitos” e deve
se assemelhar a Kn, onde “n” pode ser um número va-
riando de 0 a 8.
 16 bits podem ser descritos de K1 a K4, e 32 bits po-
dem ser descritos de K1 a K8. Por exemplo, K2M0 sig-
nifica que há 8 bits de M0 a M7.
Dados válidos

M15 M14 M13 M12 M11 M10 M9 M8 M7 M6 M5 M4 M3 M2 M1 M0


0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Bytes baixos
Transmitir
Apagar para 0

D1 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1
b15 b14 b13 b12 b11 b10 b9 b8 b7 b6 b5 b4 b3 b2 b1 b0

Igual a
Bytes baixos
D1 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1

 Transmita K1M0, K2M0, K3M0 para registros de 16 bits


e insuficientes dados em bits da parte superior não
foram transmitidos. É o mesmo que enviar K1M0,
K2M0, K3M0, K4M0, K5M0, K6M0, K7M0 para registros
de 32 bits e insuficientes dados em bits da parte
superior também não foram transmitidos.

229
ATOS

 O bit da parte superior será definido como 0 se o


conteúdo do operando designar K1 a K3 em operação
de 16 bits ou designar K4 a K7 em operação de 32
bits. Portanto, significa que o resultado da operação é
positivo.

M0
BIN K2X4 D0
O valor BCD combinado por X4 a X13 sera
convertido para D0 como valor BIN.

 Os números do dispositivo em bits podem especificar


livremente. Contudo, é recomendado que se use 0
como menos local decimal dos dispositivos X e Y (X0,
X10, X20…Y0, Y10, Y20). Para séries M e S, é
recomendado o uso de múltiplos de 8 no dispositivo
mais eficiente, tais quais M0, M10, M20…etc.
 Designar Números Contínuos
Por exemplo , como o registro de dados D, os números
contínuos de D são D0, D1, D2, D3, D4…etc.
Para o dispositivo de bit, os números contínuos são indicados
como em seguida:
K1X0 K1X4 K1X10 K1X14……
K2Y0 K2Y10 K2Y20 Y2X30……
K3M0 K3M12 K3M24 K3M36…….
K4S0 K4S16 K4S32 K4S48…….
Os números de dispositivos em bits são todos os indicados
acima. Ara prevenir erros, não salte os números contínuos.
Além disso, se K4Y0 for utilizado em operação de 32 bits, o bit
superior de 16 bits é identificado como 0. Portanto, é
recomendado que se use K8Y0 em operação de 32 bits.

Operação de Ponto Flutuante


A operação interna da série DVP CLP geralmente são
operadas por formato “BIN inteiro”. Quando efetuar a operação
de divisão inteira, o ponto decimal será descartado. Por
exemplo: 40 ÷ 3 = 13, sobra 1 e o ponto decimal será
descartado. Mas se usar operação de ponto flutuante, o pontod
ecimal pode ser dado.

Os comandos de aplicação relativos à operação em ponto flu-


tuante estão indicados no quadro abaixo.
API 49 (FLT), API 110 (D ECMP), API 111 (D EZCP), API 116 (D RAD),
API 117 (D DEG), API 118 (D EBCD), API 119 (D EBIN), API 120 (D EADD),
API 121 (D ESUB), API 122 (D EMUL), API 123 (D EDIV), API 124 (D EXP),
API 125 (D LN), API 126 (D LOG), API 127 (D ESQR), API 128 (D POW)
API 129 (INT) API 130 (D SIN) API 131 (D COS) API 132 (D TAN)
API 133 (D ASIN) API 134 (D ACOS) API 135 (D ATAN) API 136 (D SINH)

230
ATOS
API 137 (D COSH) API 138 (D TANH)

Ponto flutuante binário


DVP CLP representa o número em ponto flutuante com
número de 32 bits por IEEE754 e o formato é o seguinte:

8 bits 23 bits

S Expoente Mantisa

b 31 b0

Bit de sinal
0 : pos itiv o
1 : neg ativ o

Equação (− 1) × 2
E −B S
× 1.M ; B = 127

Portanto, a faixa de flutuação de 32 bits vai de ±2-126 a


±2+128, ou seja, de ±1.1755×10-38 para ±3.4028×10+38.
Exemplo 1: usando ponto flutuante de 32 bits para represen-
tar o número decimal 23
Passo 1: converter 23 para número binário: 23.0=10111
Passo 2: Normalizar o binário: 10111=1.0111 × 24, 0111 é
mantissa e 4 é um expoente.
Passo 3: tomar o expoente: ┬E-B=4 →E-127=4
┬E=131=100000112
Passo 4: Pode-se agora combinar o sinal, expoente, e o man-
tissa normalizado na representação “short real” do binário IEEE.
0 10000011 011100000000000000000002=41B8000016
Exemplo 2: usando ponto flutuante de 32 bits para represen-
tar o número decimal –23
Os passos de conversão são os mesmos no número decimal
23. É necessário somente modificar o sinal do bit de 0 a 1 para
ganhar valor.
1 10000011 011100000000000000000002=C1B8000016
DVP CLP também usa dois registros com número contínuo
para armazenagem em ponto flutuante binário. Veja a seguir
um exemplo que usa registro (D1, D0) para armazenar ponto
flutuante binário.

D1(b15~b0) D0(b15~b0)
7 6 5 1 0 -1 -2 -3 -17 -18 -19 -20 -21 -22 -23
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
S E7 E6 E5 E1 E0 A22 A21 A20 A6 A5 A4 A3 A2 A1 A0
b31 b30 b29 b28 b24 b23 b22 b21 b20 b6 b5 b4 b3 b2 b1 b0

8 bits do expoente 23 bits da constante


E0~E7=0 or 1 A0~A22=0 or 1

Bit de sinal (0: positivo 1:negativo)


Quando b0~b31 é 0, o conteúdo é 0.

231
ATOS

Ponto flutuante decimal

 O ponto flutuante binário não é aceito pela maioria das


pessoas. Portanto, o formato em ponto flutuante binário
pode ser convertido em formato de ponto flutuante
decimal para que as pessoas possam efetuar a operação
dos números decimais. Contudo, a série DVP CLP usa
ponto flutuante binário para efetuar a operação de
números decimais.
 Ponto flutuante decimal é armazenado no registro com 2
números contínuos. O registro com números pequenos
armazena constante e o registro com mais números
armazena expoentes.
Por exemplo, usando o registro (D1, D0) para
armazenar um ponto flutuante decimal.
Ponto flutuante decimal = [constante D0] X 10 [expoente
D1 ]

constante D0 = ±1,000~±9,999
expoente D1 = - 41~+35
O bit mais significativo de (D1, D0) é bit de símbolo.
Ao lado disso, a constante 100 não existe em D0
devido ao fato de que 100 aparecerá com 1,000×10-1.
A faixa do número decimalé de ±1175×10-41 a
±3402×10+35.
 Ponto flutuante decimal pode ser usado nos seguintes
comandos.
 O comando de conversão para o ponto flutuante binário 
Ponto flutuante decimal (D EBCD)
 O comando de conversão para o ponto flutuante decimal
 Ponto flutuante binário (D EBIN)
• Flag zero (M1020), Flag de empréstimo (Borrow
flag) (M1021) e Flag de carry (M1022)
• Os flags que correspondem aos comandos de
flutuação são:
• Flag zero: quando o resultado for 0, M1020=On.
• Flag de empréstimo: quando o resultado é
menor do que a unidade mínima, M1021=On
• Carry flag: quando o valor absoluto exceder o
faixa de uso, M1022=On

232
ATOS

5.4 Registro de Índice E, F


O registro de índice é registro de 16 bits. Há 2 dispositivos
para modelos ES/EX/SS (E e F), 8 dispositivos para modelos SA
(E0~E3, F0~F3) e 16 dispositivos para modelos EH (E0~E7,
F0~F7).
E e F são também registros de 16 bits exatamente igual ao
registro geral. Ele pode ser escrito/lido livremente.

Se usar um registro de 32, você deve especificar E. Nesta


16 bits 16 bits
condição, F será coberto por E e não poderá ser usado
E0 F0
mais; caso contrário, os conteúdos de E ficarão incorretos.
32 bits (Quando o CLP iniciar, é recomendado usar o comando

E0 MOVP para apagar os conteúdos de F e reconfigurá-los


F0
Bit superior Bit inferior (reset) a 0)

Quando usar registro de índice de 32 bits, a combinação de


E, F é a seguinte: (E0, F0), (E1, F1), (E2, F2)…(E7, F7).

Como mostra a figura à esquerda, os conteúdos do


MOV K20E0 D10F0 operando mudarão de acordo com E, F. e chamamos
esta modificação de “Índice”.
Por exemplo, tanto E0=8 como K20E0 representam
E0=8 F0=14 constante K28(20+8). Se o contato estiver ON, a
20+8=28 10+14=24 constante K28 será transmitida ao registro D24.
K28 D24 tr a n s mi t ir
Os dispositivos que podem usar registro de Índice para modificar nas séries ES/EX/SS são: P, X, Y, M, S, KnX,
KnY, KnM, KnS, T, C, D.
Os dispositivos que podem usar o registro de Índice para modificar na série SA são: P, X, Y, M, S, KnX, KnY,
KnM, KnS, T, C, D
Os dispositivos que podem usar o registro de Índice para modificar na série EH are: P, I, X, Y, M, S, K, H, KnX,
KnY, KnM, KnS, T, C, D
Os dispositivos acima podem usar registro de índice E, F para modificar. Contudo, o registro de índice E, F não
podem se modificar, nem a Kn. (K4M0E0 está disponível, K0E0M0 não está disponível). Em cada comando de

aplicação, se o símbolo “ ” for adicionado no quadro de operando, significa que o dispositivo pode usar regis-
tro de índice E, F para modificar.
Registro de índice E, F pode ser usado para modificar os dispositivos P, I, X, Y, M, S, KnX, KnY, KnM, KnS, T,
C, D sob certas condições. Dois dispositivos, E ou F podem ser especificados ao se utilizar registro de 16 bits.
Se usar registro E, F para modificar constante K, H no comando de 32 bits, somente um dispositivo, E pode ser
especificado.

Quando constante (K,H) é usada para ter função de índice no modo do comando WPLSoft, ela precisa usar
símbolo “@”.

Exemplo: ”MOV K10@E0 D0F0”

233
ATOS

5.5 Índice de Comandos

Selecionados por Caracteres


Códigos Mnemônicos Modelos aplicáveis STEPS
Comando
Classificação Artigo III. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
43143
87 ABS DABS  Valor absoluto    3 5
1
Seqüenciador de tipo “drum”
62 ABSD DABSD – –   9 17 371
absoluto
155 ABSR DABSR – Leitura do valor atual ABS – –  7 13 539
20 ADD DADD  Efetuar a adição de dados BIN    7 13 277
66 ALT – – Comando para alternar On/Off    3 – 378
Contato de comparação fica ON
218 AND& DAND& – –   5 9 616
quando S1 & S2 é verdadeiro
Contato de comparação fica ON 616
220 AND^ DAND^ – –   5 9
quando S1 ^ S2 é verdadeiro
Contato de comparação fica ON 616
219 AND| DAND| – –   5 9
quando S1 | S2 é verdadeiro
Contato de comparação fica ON
234 AND< DAND< –    5 9 620
quando S1 < S2 é verdadeiro
Contato de comparação fica ON
237 AND<= DAND<= –    5 9 620
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
236 AND<> DAND<> –    5 9 620
quando S1 ≠ S2 é verdadeiro
Contato de comparação fica ON
232 AND= DAND= –    5 9 620
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
A 233 AND> DAND> –    5 9 620
quando S1 > S2 é verdadeiro
Contato de comparação fica ON
238 AND>= DAND>= –    5 9 620
quando S1 = S2 é verdadeiro
Comando de conexão em série
93 ANDF – – para operação de detecção em    3 – 176
borda de descida
Comando de conexão em série
92 ANDP – – para operação de detecção em    3 – 176
borda de subida
Desligar (reset) dispositivo de
47 ANR –  –   1 – 311
alarme
46 ANS – – Saída de dispositivo de alarme –   7 – 310
75 ARWS – – Entrada em teclado de setas –   9 – 395
76 ASC – – Conversão de código ASCII –   11 – 397
82 ASCII –  Converter HEX para ASCII    7 – 420
Operação arco seno em ponto
133 – DASIN  –   – 9 495
flutuante binário
Operação arco coseno em ponto
134 – DACOS  –   – 9 496
flutuante binário
Operação arco tangente em
135 – DATAN  –   – 9 497
ponto flutuante binário
18 BCD DBCD  Converter dados BIN em BCD    5 9 275
19 BIN DBIN  Converter dados BCD em BIN    5 9 276
B
15 BMOV –  Movimentação em bloco    7 – 270
44 BON DBON  Determinar os bits ON    7 13 309

234
ATOS

Códigos Mnemônicos Modelos aplicáveis STEPS


Comando
Classificação Artigo III. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
01 CALL –  Chamar sub-rotina    3 – 248
84 CCD –  Verificar código –   7 – 426
C
00 CJ –  Salto condicional    3 – 244
14 CML DCML  Complemento    5 9 269
10 CMP DCMP  Comparar    7 13 261
97 CNT DCNT – Contador    4 6 172
Operação coseno em ponto flu-
131 – DCOS     – 9 492
C tuante binário
Operação coseno hiperbólico
137 – DCOSH  –   – 9 499
em ponto flutuante binário
108 CRC –  Verificar erro CRC –   7 – 468
25 DEC DDEC  Efetuar a subtração de 1    3 5 285
41 DECO –  Decodificar 8 → 256 bits    7 – 305
143 DELAY –  Comando de atraso (delay) –   3 – 501
117 – DDEG  Radian → Degree –   – 9 475
05 DI – – Desabilitar interrupções    1 – 251
D
23 DIV DDIV  Efetuar a divisão de dados BIN    7 13 283
Escrita de MEMÓRIA de backup
159 DRVA DDRVA – – –  9 17 568
de dados
158 DRVI DDRVI – Drive incremental – –  9 17 562
72 DSW – – Entrada de chave digital –   9 – 388
120 – DEADD  Adição de ponto flutuante binário    – 13 478
Converter ponto flutuante binário
118 – DEBCD     – 9 476
em ponto flutuante decimal
Converter ponto flutuante deci-
119 – DEBIN     – 9 477
mal em ponto flutuante binário
Comparação de ponto flutuante
110 – DECMP     – 13 472
binário
Divisão de ponto flutuante biná-
123 – DEDIV     – 13 482
rio
04 EI – – Habilitar interrupções    1 – 251
Multiplicação de ponto flutuante
E 122 – DEMUL     – 13 481
binário
42 ENCO –  Codificar 256 → 8 bits    7 – 306
Raiz quadrada de ponto flutuan-
127 – DESQR     – 9 487
te binário
Subtração de ponto flutuante
121 – DESUB     – 13 479
binário
Converter ponto flutuante binário
124 – DEXP  para efetuar operação exponen-    – 9 483
cial
Comparação de zona em ponto
111 – DEZCP     – 17 473
flutuante binário

06 FEND – – Primeiro fim    1 – 255

Converter BIN inteiro ao ponto


49 FLT DFLT     5 9 314
flutuante binário
F
Movimento de dispositivos múl-
16 FMOV DFMOV     7 13 272
tiplos
Início de PARA –O-PRÓXIMO
08 FOR – –    3 – 258
passo

235
ATOS

Códigos Mnemônicos Modelos aplicáveis STEPS


Comando
Classificação Artigo III. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
Ler dados CR de módulo espe-
78 FROM DFROM     9 17 400
cial
Comando de avanço do drive
102 FWD – –    7 – 461
da série VFD-A
145 FTC – – Controle de temperatura Fuzzy –   – 9 503
Saída por modulação de pulso
144 GPWM – – –   – 7 502
geral
G 171 GBIN DGBIN  Converter código gray em BIN – P P 5 9 593
170 GRY DGRY  Converter BIN em código GRAY – P P 5 9 592
83 HEX –  Converter ASCII em HEX  P P 7 – 424
H
71 HKY DHKY – Entrada de teclado de 16 teclas – P P 9 17 385
169 HOUR DHOUR – Horímetro – P P 7 13 591
Reconfigurar (RESET) compa-
54 – DHSCR – ração de contador de alta velo-  P P – 13 338
cidade
H Configurar (SET) comparação
53 – DHSCS –    – 13 323
de contador de alta velocidade
196 HST DHST  Contador de alta velocidade – –  3 – 610
Comparação de zona (contador
55 – DHSZ – –   – 17 341
de alta velocidade)
24 INC DINC  Efetuar a adição de 1    3 5 284
Aumentar seqüenciador tipo
63 INCD – – –   9 – 373
“drum”
Converter ponto flutuante binário
I 129 INT DINT     5 9 489
em BIN inteiro
98 INV – – Operação de inversão    1 – 180
03 I250RET – – Interromper retorno    1 – 250
60 IST – – Controle manual/automático    7 – 363
Contato de comparação fica ON
215 LD& DLD& – –   5 9 615
quando S1 & S2 é verdadeiro
Contato de comparação fica ON
217 LD^ DLD^ – –   5 9 615
quando S1 ^ S2 é verdadeiro
Contato de comparação fica ON
216 LD| DLD| – –   5 9 615
quando S1 | S2 é verdadeiro
Contato de comparação fica ON
226 LD< DLD< –
quando S1 < S2 é verdadeiro
   5 9 619
Contato de comparação fica ON
229 LD<= DLD<= –    5 9 619
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
228 LD<> DLD<> –    5 9 619
quando S1 ≠ S2 é verdadeiro
L Contato de comparação fica ON
224 LD= DLD= –    5 9 619
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
225 LD> DLD> –    5 9 619
quando S1 > S2 é verdadeiro
Contato de comparação fica ON
230 LD>= DLD>= –    5 9 619
quando S1 = S2 é verdadeiro
Operação de detecção em borda
91 LDF – –    3 – 176
de descida
Operação de detecção em borda
90 LDP – –    3 – 175
de subida
Converter ponto flutuante binário
125 – DLN  para efetuar operação de loga-    – 9 484
ritmo natural

236
ATOS

Códigos Mnemônicos Modelos aplicáveis STEPS


Comando
Classificação Artigo III. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
Converter ponto flutuante binário
126 – DLOG  para efetuar operação de loga-    – 13 485
ritmo
107 LRC –  Checar erro –   7 – 466
180 MAND –  Matriz AND – –  9 – 594
190 MBC –  Contar estado de bit da matriz – –  7 – 609
189 MBR –  Girar bit da matriz – –  7 – 608
186 MBRD –  Ler bit da matriz – –  7 – 603
188 MBS –  Deslocar bit da matriz – –  7 – 606
M
187 MBWR –  Ler bit da matriz – –  7 – 604
185 MCMP –  Comparar matriz – –  9 – 601
45 MEAN DMEAN  Valor médio (mean value)    7 13 309
Ler MEMÓRIA de backup de
148 MEMR DMEMR  –   7 13 513
dados
149 MEMW DMEMW  Escrever MEMÓRIA –   7 13 514
184 MINV –  Inverter matriz – –  7 – 600
183 MNOR –  Matriz NOR – –  9 –
100 MODRD – – Ler dados MODBUS    7 – 450
150 MODRW – – Ler/escrever dados MODBUS    11 – 521
M 101 MODWR – – Escrever dados MODBUS    7 – 455
181 MOR –  Matriz OR – –  9 – 596
12 MOV DMOV  Mover dados    5 9 265
52 MTR – – Matriz de entrada –   9 – 321
Efetuar a multiplicação de dados
22 MUL DMUL     7 13 281
BIN
182 MXOR –  Matriz XOR – –  9 – 597
29 NEG DNEG  Negação    3 5 290
N
09 NEXT – – Fim de para-próximo giro    1 – 259
Contato de comparação fica ON
221 OR& DOR& – –   5 9 617
quando S1 & S2 é verdadeiro
Contato de comparação fica ON
223 OR^ DOR^ – –   5 9 617
quando S1 ^ S2 é verdadeiro
Contato de comparação fica ON
222 OR| DOR| – –   5 9 617
quando S1 | S2 é verdadeiro
Contato de comparação fica ON
242 OR< DOR< –    5 9 622
quando S1 < S2 é verdadeiro
Contato de comparação fica ON
245 OR<= DOR<= –    5 9 622
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
244 OR<> DOR<> –    5 9 622
quando S1 ≠ S2 é verdadeiro
O Contato de comparação fica ON
240 OR= DOR= –    5 9 622
quando S1 = S2 é verdadeiro
Contato de comparação fica ON
241 OR> DOR> –    5 9 622
quando S1 > S2 é verdadeiro
Contato de comparação fica ON
246 OR>= DOR>= –    5 9 622
quando S1 = S2 é verdadeiro
Comando de conexão paralela
95 ORF – – para operação em borda de    3 – 178
descida
Comando de conexão paralelo
94 ORP – – para operação em borda de su-    3 – 177
bida

237
ATOS

Códigos Mnemônicos Modelos aplicáveis STEPS


Comando
Classificação Artigo III. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
88 PID – – Cálculo PID    9 – 432
99 PLF – – Saída em borda de descida    3 – 179
89 PLS – – Saída em borda de subida    3 –
Saída de onda de pulso com
59 PLSR DPLSR – velocidade de acelera-    9 17 360
ção/desaceleração
Saída de pulso de velocidade
157 PLSV DPLSV – – –  7 13 561
P variável
57 PLSY DPLSY – Saída de pulso    7 13 351
Converter ponto flutuante binário
128 – DPOW  para efetuar operação de expo-    – 13 488
nenciação
77 PR – – Imprimir –   5 – 398
Transmissão por sistema de
81 PRUN DPRUN  –   5 9 419
número octal
Detecção de extensão do pulso
151 PWD – – – –  5 – 535
P de entrada
58 PWM – – Saída por modulação de pulso    7 – 358
116 – DRAD  Grau → Radian –   – 9 474
67 RAMP – – Sinal tipo rampa (ramp signal) –   9 – 379
154 RAND – – Valor randômico –   9 – 539
Girar para a esquerda com o
33 RCL DRCL     5 9 295
carry de flag anexado
Girar para a direita com o flag de
32 RCR DRCR     5 9 294
carry anexado
Leitura do status do drive da
105 RDST – –    5 – 463
série VFD-A
50 REF –  Atualização I/O    5 – 319
Atualizar e ajustar o tempo de
R 51 REFF –  –   3 – 320
resposta do filtro de entrada
Comando de recuo de drive da
103 REV – –    7 – 461
série VFD-A
31 ROL DROL  Girar para a esquerda    5 9 293
30 ROR DROR  Girar para a direita    5 9 293
80 RS – – Comunicação de dados em série    9 – 406
Reset anormal do drive da série
106 RSTEF – –    5 – 465
VFD-A
Finalizar medição de tempo de
153 RTMD – – – –  3 – 537
execução de interrupção I
Iniciar medição de tempo de
152 RTMU – – – –  5 – 536
execução de interrupção I
Decodificar o painel de mostra-
73 SEGD –     5 – 390
dor de 7-passos
Saída de varredura de mostra-
74 SEGL – –    7 – 391
dor de 7 passos
S 61 SER DSER  Procurar pilha de dados –   9 17 370
Leitura de registro de desloca-
39 SFRD –  –   7 – 302
mento
Deslocar os dados do dispositivo
35 SFTL –  –   9 – 297
especificado para a esquerda

238
ATOS

Códigos Mnemônicos Modelos aplicáveis STEPS


Comando
Classificação Artigo III. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
Deslocar os dados do dispositivo
34 SFTR –     9 – 296
especificado para a direita
Escrever registro de desloca-
38 SFWR –  –   7 – 301
mento
Operação seno em ponto flutu-
130 – DSIN     – 9 490
ante binário
Operação de seno hiperbólico
136 – DSINH  –   – 9 498
em ponto flutuante binário
13 SMOV –  Movimentar deslocamento –   11 – 266
69 SORT – – Seleção de dados –   11 – 381
56 SPD – – Detecção de velocidade –   7 – 349
48 SQR DSQR  Raiz quadrada de BIN    5 9 313
02 SRET – – Retorno de sub-rotina    1 – 249
65 STMR – – Temporizador especial –   7 – 376
Comando de pausa em drive da
104 STOP – –    7 – 461
série VFD-A
Efetuar a subtração de dados
21 SUB DSUB     7 13 279
BIN
43 SUM DSUM  Soma de bits ON    5 9 308
147 SWAP DSWAP  Trocar byte alto/baixo    3 5 512
S
109 SWRD –  Leitura de deslocamento digital –   3 – 471
Adição de dados de relógio de
162 TADD –  –   7 – 584
tempo real
Operação tangente em ponto
132 – DTAN     – 9 493
flutuante binário
Operação tangente hiperbólica
138 – DTANH  –   – 9 500
em ponto flutuante binário
160 TCMP –  Comparação de tempo –   11 – 580
Entrada de teclado tipo keypad
70 TKY DTKY – –   7 13 383
de 10 teclas
T 96 TMR – – Temporizador    4 – 172
Escrever dados CR módulo es-
79 TO DTO     9 17 401
pecial
166 TRD –  Ler dados de tempo –   3 – 587

163 TSUB –  Subtração de tempo –   7 – 585


Temporizador de ensino (tea-
64 TTMR – – –   5 – 375
ching timer)
167 TWR –  Escrever dados de tempo –   3 – 589
161 TZCP –  Comparação de fuso horários –   9 – 583
85 VRRD –  Leitura de potenciômetro –   5 – 428
V
86 VRSC –  Escala de potenciômetro –   5 – 430
Efetuar operação de produto
26 WAND DAND     7 13 286
lógico (AND)
Atualização do Watchdog do
07 WDT –     1 – 257
temporizador
W
Efetuar uma operação de soma-
27 WOR DOR     7 13 287
tória lógica (OR)
Deslocar o registro para a es-
37 WSFL –  –   9 – 300
querda

239
ATOS

Códigos Mnemônicos Modelos aplicáveis STEPS


Comando
Classificação Artigo III. Função Página
P 16 32
PI 16 bits 32 bits ES SA EH
bits bits
36 WSFR –  Deslocar o registro para a direita –   9 – 299
Efetuar uma operação de adição
28 WXOR DXOR     7 13 289
lógica exclusiva (XOR)
X 17 XCH DXCH  Troca de dados    5 9 273
11 ZCP DZCP  Comparar zonas    9 17 263
156 ZRN DZRN – Retorno ao ponto zero – –  9 17 556
Z
Desliga diversos dispositivos
40 ZRST –     5 – 303
especificados

Modelos aplicáveis da série ES acima incluem séries EX e


SS; SA inclui série SA.

Comandos acima para modelos ES/EX/SS não possuem


comando de execução por pulso (P comando).

240
ATOS

241
ATOS

CAPÍTULO 6
COMANDOS DE APLICÃO API.

242
COMANDOS DE APLICAÇÃO API ATOS

243
ATOS COMANDOS DE APLICAÇÃO API

API Mnemônico Operandos Função


Controladores
00 CJ P Salto condicional ES EX SS SA SX SC EH

OP Range Passos do programa


P0~P255 CJ, CJP: 3 passos
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S: O ponteiro de destino do salto condicional adf

Explicações:
1. Operando S pode designar P
2. P pode ser modificado pelo registro de índice E, F
3. Modelos das séries ES/EX/SS: Operando S pode de-
signar P0~P63
4. Modelos das séries SA/SX/SC/EH: Operando S pode
designar P0~P255
5. Modelos das séries ES/EX/SS não suportam o co-
mando de execução por pulso (CJP)
6. Comando CJ pode ser usado nas seguintes condi-
ções:
a. Para reduzir o tempo de varredura do pro-
grama quando o usuário não quiser executar
algumas partes desnecessárias do programa
do CLP.
b. Em designação de bobinas duais ou duplas.
7. Quando o programa indicado pelo Ponteiro P estiver
antes do comando CJ, favor verificar que o erro de
WDT de tempo excessivo. Se o CLP parar de funcio-
nar, favor usar cuidadosamente.
8. Comando CJ pode designar o mesmo ponteiro P re-
petidas vezes. Contudo, o Comando CJ e o Coman-
do CALL não podem designar o mesmo ponteiro P,
pois caso isso ocorra, haverá erro.
9. A explicação de cada dispositivo ao executar o Co-
mando CJ.
c. Y, M, S permanece em seu estado prévio an-
tes que ocorra o salto condicional.
d. O temporizador 10ms, 100ms que executa a
contagem irá parar.
e. O temporizador T192~T199 que executa o
programa de sub-rotina continuará e o conta-
to de saída irá executar normalmente.
f. O contador de alta velocidade que executa a
contagem continuará e o contato de saída
executará normalmente.
g. O contador geral irá parar.
h. Se o comando de reiniciar/reconfigurar (re-
set) do temporizador de tipo acumulativo for
ativado antes que o salto condicional for ati-
vado, o dispositivo permanecerá no estado de

244
COMANDOS DE APLICAÇÃO API ATOS

reconfigurar/reiniciar (reset) enquanto o salto


condicional estiver sendo executado.
i. Comandos de aplicação geral não serão exe-
cutados.
j. Comandos de aplicação de execução, ou seja,
API 53 DHSCS, API 54 DHSCR, API 55 DHSZ,
API 56 SPD, API 57 PLSY, API 58 PWM, API
59 PLSR, API 157 PLSV, API 158 DRVI, API
159 DRVA, continuarão executando.

Exemplo de Programa 1:
1. Quando X0=On, o programa irá pular do endereço
0 a N (label P1) automaticamente e continuar exe-
cutando. Mas a área entre o endereço 0 e N serão
saltadas e não serão executadas.
2. Quando X0=Off, normalmente o programa conti-
nuará executando do endereço 0. O comando CJ
não será executado.

(Comando CJ) P***


X0
0 CJ P1

X1
Y1
X2
P1 N Y2

Exemplo de Programa 2:
1. Há cinco situações em que o comando CJ pode ser
executado entre os comandos MC e MCR.
a. Fora de MC~MCR.
b. Válido no giro P1 no quadro seguinte.
c. No mesmo nível de N, dentro de MC~MC .
d. Dentro de MC, fora de MCR.
e. Salto deste MC~MCR para outro MC~MCR. (1)
Esta função é oferecida somente em V4.9 (incluído) ou ver-
sões mais elevadas dos modelos das séries ES/EX/SS e modelos
das séries SA/SX/SC/EH.
2. As explicações da execução de V4.7(incluído) ou
versões inferiores dos modelos das séries
ES/EX/SS.
a. O comando CJ é usado entre o comando MC e MCR
mas é somente utilizado na faixa for a de MC~MCR
ou no mesmo nível dentro de MC~MCR. O coman-
do CJ não pode ser usado para saltar desta faixa
de MC~MCR para outra faixa de MC~MCR, e se is-
so ocorrer haverá erro. O comando CJ pode execu-
tar corretamente na condição 1 e 3 mencionadas
acima mas o erro ocorrerá se não for usado em ou-
tras condições.
b. Quando executar o comando MC, o status da chave
(switch) (X0 como figura abaixo) antes de MC será
de movimentação para dentro da pilha do CLP
controlada pelo próprio CLP ao invés de ser

245
ATOS COMANDOS DE APLICAÇÃO API

controlada pelos usuários; assim, quando executar


o comando MCR, o status da chave (switch) irá
aparecer do ponto mais alto da pilha em ordem.
Regularmente, um comando MC corresponderá a
um comando MCR; mas uma vez que situações
ocorrerem com comando b), d), e) e como acima,
a movimentação para dentro e para fora (push and
pop) pode não corresponder um ao outro em
ordem regular. Quando ocorrer tal desordem, o
valor da movimentação para dentro da pilha é de
até 8 níveis, enquanto o valor da saída para fora
da pilha termina em zero e não há mais saídas.
Assim, deve-se prestar bastante atenção à ordem
da movimentação para dentro e para fora na pilha
do CLP ao usar comandos CALL ou CJs.

X0
MC N0
X2
CJ P0
X3
CJ P1
X1
MC N1
M1000
P1 Y1

MCR N1
M1000
P0 Y0

MCR N0

246
COMANDOS DE APLICAÇÃO API ATOS

Exemplo de Programa 3:
1. Os estados de cada dispositivo são
demonstrados no seguinte quadro:
O estado do
O estado do
contato antes O estado da bobina de saída
Dispositivo contato durante a
da execução de durante a execução de CJ
execução de CJ
CJ
M1, M2, M3 M1, M2, M3
Y1 (nota1), M20, S1 Off
Off OffOn
Y, M, S
M1, M2, M3 M1, M2, M3
Y1 (nota1), M20, S1 On
On OnOff
Temporizador T0 não está ati-
Temporizador de M4 Off M4 OffOn
vado
10ms, 100ms
(ES/EX/SS/SA/S Temporizador T0 irá parar ime-
X/SC/EH) M4 On M4 OnOff diatamente mas retido, M0 vai
de OnOff, T0 é 0.
Temporizador (T240) não está
M6 Off M6 OffOn
ativado
Temporizador de
1ms, 10ms, Todos os temporizadores acu-
100ms (para mulativos irão parar , com ex-
acumulativo) SA ceção do retentivo, uma vez
M6 On M6 OnOff
/SX/SC/EH que executarem o comando
CJ. Quando M0 vai de OnOff,
T240 não será alterado.
Disparador
M7, M10 Off (trigger) M10 Contador não conta.
On/Off
C0~C234 M7 Off, Dis-
Disparador A interrupção do retentivo do
parador (trig-
(trigger) M10 contador. Permanece contando
ger) M10
On/Off após M0 ficar off.
On/Off
Comandos de aplicação não
M11 Off M11 OffOn
serão executados.
Comando de a- Não executa o comando de
plicação aplicação saltada mas API
M11 On M11 OnOff
53~59, API 157~159 permane-
cem executando.

Y1 é saída dual. Quando M0 está Off, ele é controlado por M1.


Quando M0 está On, é controlado por M12.

Quando temporizador que a subrotina usou (T192~T199,


para SA/SX/SC/EH) executar o comando CJ, ele continuará
contando. Depois que o temporizador atingir, o contato de
saída do temporizador ficará On.

Quando os contadores de lata velocidade (C235~C255)


executarem o comando CJ, ele permanecerá contando e o
ponto de saída também continuará a agir.

2. Y1 é designação de bobina dupla ou


dual. Quando M0=Off, é controlada
por M1. Quando M0=On, é contro-
lada por M12.

247
ATOS COMANDOS DE APLICAÇÃO API

M0
CJ P0
M1
Y1
M2
M20
M17
CJ P0
M3
S1
M4
TMR T0 K10
M5
RST T127
M6
TMR T127 K1000
M7
RST C0
M10
CNT C0 K20
M11
MOV K3 D0
M0
P0 CJ P63
M12
Y1
M13
P63 RST T127

RST C0

RST D0

END

API Mnemônico Operandos Função


Controladores
01 CALL P Chamar sub-rotina ES EX SS SA SX SC EH

OP Escopo Passos do programa


P0~P255 CALL, CALLP: 3 passos
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S: O ponteiro de destino para chamar sub-rotina.

Explicações:
1. Operando S pode designar P.
2. P pode ser modificado por Registro de índice E, F.
3. Modelos das séries ES/EX/SS: operando S pode designar
P0~P63.
4. Modelos das séries SA/SX/SC/EH: operando S pode desig-
nar P0~P255.

248
COMANDOS DE APLICAÇÃO API ATOS

5. Modelos das séries ES/EX/SS não suportam comando de


execução por pulso (CALLP).
6. Programa continua em sub-rotina após comando FEND.
7. Ponteiros de sub-rotina do comando CALL e ponteiros do
comando CJ não podem coincidir.
8. Caso se usar somente o comando CALL, ele pode chamar
sub-rotina do número do mesmo ponteiro ilimitadas ve-
zes.
9. A sub-rotina pode estar aninhada por 5 níveis incluindo o
comando inicial CALL. (Caso entre no sexto nível, a sub-
rotina não será executada.)

API Mnemônico Função


Controladores
02 SRET Retorno de Sub-rotina ES EX SS SA SX SC EH

OP Descrições Passos do programa


Retorna automaticamente para a etapa que segue a instrução SRET: 1 passo
N/A
CALL que ativou a sub-rotina

Explicações:
1. Nenhum operando. O comando dirigido por contato não é
necessário.
2. Indica o fim do programa de sub-rotina.
3. A sub-rotina retornará para o programa principal por SRET
após o término da sub-rotina e executar o programa se
seqüência localizado na próxima etapa ao comando CALL.

Exemplo de Programa 1:
Quando X0 = ON, inicie o comando CALL, salte para P2 e ro-
de a sub-rotina. Quando rodar o comando SRET , ele saltará de
volta ao endereço 24 e continuará funcionando.
X0 P***
20 CALL P2 Chamar subrotina P***
X1
24 Y1

FEND

P2 Y0
Subrotina
Subrotina P2 Y0

SRET Retorno de subrotina

Exemplo de Programa 2:
1. Quando X10 for o comando CALL P10 acionado em borda
de subida que vai de Off a On, salte para P10 e rode a
sub-rotina.
2. Quando X11 estiver On, execute CALL P11, salte para P11
e rode a sub-rotina.
3. Quando X12 está On, execute CALL P12, salte para P12 e
rode a sub-rotina.
4. Quando X13 está On, execute CALL P13, salte para P13 e
rode a sub-rotina.

249
ATOS COMANDOS DE APLICAÇÃO API

5. Quando X14 está On, execute CALL P14, salte para P14 e
rode a sub-rotina. Quando rodar o comando SRET, ele sal-
tará de volta ao último P*** sub-rotina e continuará ro-
dando.
6. Rode o comando SRET na sub-rotina P10 e retorne ao
programa principal.
X0 X2
INC D0 P12 INC D30

Y0 Y10
X10 X13
CALL P10 CALL P13
X0 Programa X2 Subrotina
INC D1 principal
INC D31

Y1 Y11

FEND SRET
X2 X2
P10 INC D10 P13 INC D40

Y4 Y12
X11 X14
CALL P11 CALL P14
Subrotina Subrotina
X2 X2
INC D11 INC D41

Y5 Y13

SRET SRET
X2 X2
P11 INC D20 P14 INC D50

Y6 Y14
X12 Subrotina
CALL P12 SRET
Subrotina
X2
INC D21 END

Y7

SRET

API Mnemônico Função


Controladores
03 IRET Interromper retorno ES EX SS SA SX SC EH

OP Descrições Passos do programa


IRET termina o processo de interromper sub-rotina e volta ao IRET: 1 passo
N/A
programa principal

Explicações:
1. Nenhum operando. O comando dirigido por contato
não é necessário.
2. IRET denota a interrupção do programa de sub-rotina.

250
COMANDOS DE APLICAÇÃO API ATOS

3. Terminar o processamento do programa de interrup-


ção e retornar ao programa principal através do co-
mando IRET. Executar o programa original para pro-
duzir o próximo comando de interrupção.

API Mnemônico Função


Controladores
04 EI Habilitar interrupção ES EX SS SA SX SC EH

OP Descrições Passos do programa


Habilitar interrupções, explicação desta instrução coincide EI: 1 passo
com a explicação de DI (instrução para desabilitar interrup-
N/A
ções), vide instrução DI para maiores informações.
M1050~M1059, M1280~M1299

Explicações:
1. Nenhum operando. O comando dirigido pelo contato
não é necessário.
2. A extensão do pulso do sinal de interrupção deve ser
maior do que 200us.
3. Favor consultar nota de rodapé do comando DI para
verificar o limite de números para cada modelo.
4. M1050~M1059, M1280~M1299 (Favor consultar nota
de rodapé do comando DI).

API Mnemônico Função


Controladores
05 DI Desabilitar interrupção ES EX SS SA SX SC EH

OP Descrições
Passos do programa
Instrução EI habilita ELC para aceitar interrupções; como DI: 1 passos
Interrupção de tempo ou interrupção por Contador de alta
velocidade.
N/A
Mesmo no limite permitido à interrupção quando se interrom-

pe o relé auxiliar especial M1050 to M1059 M1280~M1299,
a solicitação de interrupção correspondente não será ativada.

Explicações:
1. Nenhum operando. O comando dirigido pelo contato
não é necessário.
2. O comando habilita a interrupção de sub-rotina a ser
processada no programa, e.x. Interrupção externa, In-
terrupção de tempo, Interrupção de contador de alta
velocidade.
3. No programa, a utilização de interrupção de sub-rotina
entre os comandos EI e DI é permitida. Contudo, não
é permitido usar o comando DI se não há período de
desabilitar interrupção durante o programa.
4. Mesmo se o limite permitido de interrupção ao inter-
romper relé auxiliar especial M1050 a M1059 nos mo-
delos das séries ES/SA/SX/SC e M1280 a M1299 nos

251
ATOS COMANDOS DE APLICAÇÃO API

modelos da série EH, a solicitação de interrupção cor-


respondente não será ativada.
5. O cursor de interrupção ( I ) deve ser utilizado após o
comando FEND.
6. Outras interrupções não podem ocorrer durante a exe-
cução do programa de interrupção de rotina.
7. Quando a maioria das interrupções ocorrer, a priorida-
de é dada à interrupção que ocorre primeiro. Se as in-
terrupções ocorrerem simultaneamente, à interrupção
com o número de ponteiro inferior será dada maior
prioridade.
8. Qualquer solicitação de interrupção que ocorra entre
os comandos DI e EI não pode ser executada imedia-
tamente. A solicitação será memorizada e executará a
sub-rotina ao habilitar o limite da interrupção.
9. As interrupções de tempo dos modelos da séries
ES/SA não serão memorizados.
10.Quando usar o ponteiro de interrupção, favor não usar
repetidamente o contador de alta velocidade dirigido
pelo mesmo contato de entrada X.
11.Quando o programa de interrupção de rotina estiver
rodando e o I/O for imediatamente ativado, o estado
de I/O pode ser atualizado ao se escrever o comando
REF no programa.

Exemplo de programa :
Durante a operação do CLP, o programa varre os comandos
entre EI e DI, se X1 ou X2 estiverem ON, a sub-rotina A ou B
será interrompida. Quando IRET é alcançado, o programa prin-
cipal vai recomeçar.
EI
X0
Y1 Habilitar interrupção

DI
Desabilitar interrupção
EI
Habilitar interrupção
FEND

I 101 Y0
Interromper subrotina A
IRET

I 201 Y0
Interromper subrotina B
IRET

1. Números de ponteiro de interrupção I dos modelos das


séries ES/EX/SS:
2. Interrupções externas: (I001, X0), (I101, X1), (I201, X2),
(I301, X3) 4 pontos.

252
COMANDOS DE APLICAÇÃO API ATOS

a. Interrupções de tempo: I6□□, 1 ponto



(□□ 10~99, base de tempo =1ms) (apoio para
V5.7)
b. Interrupção de comunicação para caracteres es-
pecíficos recebidos (I150) (apoio para V5.7)
3. Número dos modelos das séries SA/SX/SC para Ponteiro
de interrupção I:
4. Interrupções externas: (I001, X0), (I101, X1), (I201, X2),
(I301, X3), (I401, X4), (I501, X5) 6 pontos.
5. Interrupções de tempo: I6□□, I7□□ 2 pontos.

(□□ 1~99ms, base de tempo=1ms)
6. Interrupções de contador de alta velocidade: I010, I020,
I030, I040 4 pontos. (usado com comando API 53 DHSCS
e quando ocorre sinal de interrupção).
7. Interrupção de comunicação para caracteres específicos
recebidos (I150)
8. A ordem do ponto de interrupção I: Interrupção do conta-
dor de alta velocidade, interrupção externa, interrupção
de tempo e interrupção de comunicação para caracteres
específicos recebidos.
9. Ponteiro de interrupção número I dos modelos da série
EH:
a. Interrupções externas: (I00□, X0), (I10□, X1),
(I20□, X2), (I30□, X3), (I40□, X4), (I50□, X5) 6

pontos. (□ 0 indica a interrupção em borda de
descida, □=1 indica a interrupção em borda de
subida)
b. Interrupções de tempo: I6□□, I7□□, 2 pontos.

(□□ 1~99ms, base de tempo=1ms) I8□□ 1 pon-

to. (□□ 1~99ms, base de tempo=0.1ms)
c. Interrupções de contador de alta velocidade:
I010, I020, I030, I040 4 pontos. (usado com
comando API 53 DHSCS e quando ocorre sinal
de interrupção)
d. A interrupção, início e fim da interrupção de saí-
da de pulso deve ser usada com comandos API
57 PLSY. I130, I140 são acionados no começo
da saída de pulso pelo flag de início determinado
do comando de saída de pulso M1342, M1343.
Então, M1340, M1341 irão acionar I110, I120 ao
final do comando de saída de pulso para inter-
romper o programa em execução e saltar para a
interrupção de sub-rotina designada executar.
e. Interrupção de comunicação para caracteres es-
pecíficos recebidos (I150)
f. A ordem do ponteiro de interrupção I : interrup-
ções externas, interrupções de tempo, interrup-
ções do contador de alta velocidade e interrup-
ções de saída de pulso.
10.Interromper Flag de Inibição dos modelos das séries
ES/EX/SS:

253
ATOS COMANDOS DE APLICAÇÃO API

Flag Função
M1050 Interrupção externa, I 001 mascarada
M1051 Interrupção externa, I 101 mascarada
M1052 Interrupção externa, I 201 mascarada
M1053 Interrupção externa, I 301 mascarada

Flag de Inibição de Interrupção dos modelos das séries


SA/SX/SC:
Flag Função
M1050 Interrupção externa, I 001 mascarada
M1051 Interrupção externa, I 101 mascarada
M1052 Interrupção externa, I 201 mascarada
M1053 Interrupção externa, I 301 mascarada
M1054 Interrupção externa, I 401 mascarada
M1055 Interrupção externa, I 501 mascarada
M1056 Interrupção de tempo, I6□□ mascarada
M1057 Interrupção de tempo, I7□□ mascarada
Interrupção de contador de alta velocidade, I010~I040
M1059
mascarada

Flag de Inibição de interrupção dos modelos da série EH:


Flag Função
M1280 Interrupção externa, I00□mascarada
M1281 Interrupção externa, I10□mascarada
M1282 Interrupção externa, I20□mascarada
M1283 Interrupção externa, I30□mascarada
M1284 Interrupção externa, I40□mascarada
M1285 Interrupção externa, I50□mascarada
M1286 Interrupção de tempo, I60□mascarada
M1287 Interrupção de tempo, I70□mascarada
M1288 Interrupção de tempo, I80□mascarada
M1289 Interrupção de contador de alta velocidade, I010 mascarado
M1290 Interrupção de contador de alta velocidade, I020 mascarado
M1291 Interrupção de contador de alta velocidade, I030 mascarado
M1292 Interrupção de contador de alta velocidade, I040 mascarado
M1293 Interrupção de contador de alta velocidade, I050 mascarado
M1294 Interrupção de contador de alta velocidade, I060 mascarado
M1295 Inserção de interrupção de saída de pulso I110 mascarada
M1296 Inserção de interrupção de saída de pulso I120 mascarada
M1297 Inserção de interrupção de saída de pulso I130 mascarada
M1298 Inserção de interrupção de saída de pulso I140 mascarada
M1299 Inserção de interrupção de saída de pulso I150 mascarada
M1340 Após pulso CH0 é transmitido, ocorre interrupção I110
M1341 Após pulso CH1 é transmitido, ocorre interrupção I120
Enquanto o pulso CH0 é transmitido, ocorre interrupção I130 si-
M1342
multaneamente

254
COMANDOS DE APLICAÇÃO API ATOS

Flag Função
Enquanto o pulso CH1 é transmitido; ocorre interrupção I140 si-
M1343
multaneamente

API Mnemônico Função


Controladores
06 FEND Terminar o Programa de Rotina Principal ES EX SS SA SX SC EH

OP Descrições Passos do programa


N/A Instrução dirigida pelo contato não é necessária. FEND: 1 passos

Explicações:
1. Nenhum operando. O comando dirigido pelo contato não é
necessário.
2. Este comando denota o fim do programa de rotina princi-
pal. Ele tem a mesma função do comando END durante a
operação do CLP.
3. O comando CALL deve ser imediatamente posterior ao
comando FEND e adicionar o comando SRET no fim da
sub-rotina. Comandos de interrupção também têm de ser
posteriores ao comando FEND e adicionar o comando IRET
ao fim do programa de serviço.
4. Se utilizar diversos comandos FEND, favor colocar os pro-
gramas de sub-rotina e interrupção de serviço entre o úl-
timo comando FEND e END.
5. Depois de executado o comando CALL, um erro de pro-
grama ocorrerá ao se executar o comando FEND antes
que o comando SRET for executado.
6. Após a execução do comando FOR, um erro de programa
ocorrerá ao se executar o comando FEND antes que o co-
mando NEXT for executado.

Fluxo do Programa de Comando CJ:

255
ATOS COMANDOS DE APLICAÇÃO API

Fluxo do programa Fluxo do programa quando X0=On


quando X0=off, 0 programa salta para P0
X1=off
Programa
principal
X0
CJ P0
X1
CALL P63
Programa
principal

Programa
P0 principal

Comando CHAMAR
P63
(CALL) subrotina

Interromper
I301
subrotina

256
COMANDOS DE APLICAÇÃO API ATOS

Fluxo do Programa do Comando CALL:


Fluxo do programa
quando X0=off, 0 Fluxo do programa
X1=off quando X0=Off,
programa
X1=On.
principal
X0
CJ P0
X1
CALL P63
programa
principal

programa
P0 principal

Comando CHAMAR
P63 (CALL) subrotina

I301 interromper
subrotina

API Mnemônico Função


Controladores
07 WDT P Desligar (Reset) o temporizador do Watchdog ES EX SS SA SX SC EH

OP Descrições Passos do programa


N/A WDT, WDTP: 1 passo
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Explicações:
1. Nenhum operando. Modelos das séries ES/EX/SS não su-
portam o comando de execução por pulso (WDTP).
2. WDT (Temporizador de Watchdog) é usado para monitorar
a operação do CLP nas CPUs da série DVP.
3. O comando WDT pode ser usado para desligar o Tempori-
zador do Watchdog. Se o tempo de varredura do CLP (do
passo 0 ao comando END ou FEND) for maior do que
200ms, um LED de ERRO irá piscar. O usuário terá de
desligar o CLP e ligar novamente para limpar o erro. O
CLP determinará o status RUN/STOP (FUNCIONAR/PARAR)
de acordo com a chave RUN/STOP(FUNCIONAR/PARAR).
Se não há chave RUN/STOP, o CLP retornará para STOP
(PARAR) automaticamente.

257
ATOS COMANDOS DE APLICAÇÃO API

4. Quando usar WDT:


a. Quando ocorrer erro no sistema CLP.
Quando o tempo de execução for muito longo e leve o tempo
de varredura exceder o valor do conteúdo de D1000. Ele pode
ser modificado através da utilização dos seguintes métodos.

a. Usar comando WDT


STEP0 END(FEND)
WDT

T1 t2
b. Usar o valor estabelecido do D1000 (default é 200ms) para modificar o
tempo do temporizador.

Exemplo de Programa:
Se o tempo de varredura do programa for superior a 300ms,
os usuários podem dividir o programa em duas partes. Insira o
Temporizador do Watchdog antes, de forma que o tempo de
varredura dos dois programas seja inferior a 200ms.

API Mnemônico Operandos Função


Controladores
08 FOR Começo de giro ES EX SS SA SX SC EH

Tipo Bit Dispositi-


Dispositivos de palavra Passos do programa
OP vos
X Y M S K H KnX KnY KnM KnS T C D E F PARA: 3 passos
S * * * * * * * * * * *

Operandos:
S: O número de repetições para o giro aninhado.

Explicações:
1. O comando de execução do contato não é neces-
sário.
2. Vide especificações referentes a cada modelo para
faixa de uso.
3. S: O número de repetições para o giro aninhado.

258
COMANDOS DE APLICAÇÃO API ATOS

API Mnemônico Função


Controladores
09 NEXT Final do giro ES EX SS SA SX SC EH

OP Descrições Passos do programa


N/A NEXT: 1 passo

Explicações:
1. Nenhum operando. O comando dirigido pelo contato
não é necessário.
2. Os comandos FOR (PARA) e NEXT (PRÓXIMO) são usa-
dos quando os giros aninhados “n” são necessários.
3. “N” pode estar entre K1 e K32767. Se extensão for
N┬K1, N sempre será K1.
4. Quando não for desejado a execução dos comandos
FOR (PARA) e NEXT (PRÓXIMO), usar o comando CJ.
5. Ocorrerá erro nas seguintes condições:
a. Se o comando NEXT estiver antes do comando
FOR.
b. Com o comando FOR, sem o comando NEXT.
c. Há um comando NEXT após o comando FEND ou
END.
d. Os números se FOR a NEXT são diferentes.
6. O giro FOR ao NEXT podem estar aninhados por cinco
níveis, mas deve-se ficar atento caso haja muitos gi-
ros. Neste caso o tempo de varredura do CLP aumen-
tará e poderá causar a ativação do temporizador do
watchdog e resultar em erro. O usuário poderá usar o
comando WDT para modificar.

Exemplo de programa 1:
Depois que o giro A operar 3 vezes, o programa após o co-
mando NEXT irá reiniciar. Para cada ciclo completo de giro A,
giro B será executado completamente por 4 vezes, portanto, o
número total de vezes que o giro B irá operar será de 3×4 12 =
vezes.
FOR K3

FOR K4
B A
NEXT

NEXT

259
ATOS COMANDOS DE APLICAÇÃO API

Exemplo de Programa 2:
Programação que executa os comandos FOR a NEXT X7 está
OFF. Ela não executa os comandos FOR ao NEXT quando X7 es-
tiver ON e o comando CJ saltar para P6.
X7
CJ P6
M0
MOV K0 D0

FOR K3
M0
MOV D0 D1

INC D0

MEXT
X10
P6 Y10

Exemplo de programa 3:
Quando o comando de FOR a NEXT não são executados, o
comando CJ pode ser usado para saltar. Quando houver o giro
mais interno de FOR a NEXT, X1 ficará ON e o comando CJ sal-
tará para P0 e não será executado.

260
COMANDOS DE APLICAÇÃO API ATOS
X0
TMR T0 K10

FOR K4X100
X0
INC D0

FOR K2
X0
INC D1

FOR K3
X0
INC D2

FOR K4
X0
WDT

INC D3
X1
CJ P0

FOR K5
X0
INC D4

NEXT

P0 NEXT

NEXT

NEXT

NEXT

END

API Mnemônico Operandos Função


Controladores
10 D CMP P Comparar ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de Palavra Passos do programa
OP Bit
X Y M S K H KnX KnY KnM KnS T C D E F CMP, CMPP: 7 passos
S1 * * * * * * * * * * * DCMP, DCMPP: 13 passos
S2 * * * * * * * * * * *
D * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

261
ATOS COMANDOS DE APLICAÇÃO API

Operandos:
S1: Primeiro valor de comparação S2: Segundo valor de
comparação D: Resultado da comparação

Explicações:
1. Se os operandos S1, S2 forem usados com o dispositivo
F, ele só está disponível para o comando de 16 bits.
2. Operando D ocupa 3 dispositivos contínuos.
3. Vide especificação de cada modelo para extensão de
uso.
4. Modelos das séries ES/EX/SS não suportam o comando
de execução por pulso (CMPP, DCMPP).
5. Os conteúdos das fontes de comparação S1 e S2 são
comparados e D denota o resultado da comparação.
6. Dois valores de comparação são comparados algebri-
camente e esta função compara os dois valores que
são considerados valores binários. Se b15=1 no co-
mando de 16 bits ou b31=1 no comando de 32 bits, a
comparação levará em conta o valor como negativo do
valor binário.

Exemplo de Programa:
1. Se D é configurado para Y0, então Y0, Y1, Y2 trabalha-
rão como no exemplo de programa abaixo.
2. Quando X10=On, o CMP comando é dirigido e um dos
Y0, Y1, Y2 está On. Quando X10=Off, o comando CMP
não é dirigido e Y0, Y1, Y2 permanecerão no status an-
terior.
3. O resultado de comparação dos comandos ┬, ┬, ≠
pode ser tomado por conexão paralela de Y0~Y2.

X10
CMP K10 D10 Y0
Y0
If K10>D10, Y0 = On
Y1
If K10=D10, Y1 = On

Y2
If K10<D10, Y2= On

262
COMANDOS DE APLICAÇÃO API ATOS

4. Favor utilizar o comando RST ou ZRST para reconfigu-


rar (reset) o resultado de comparação.

X10 X10
RST M0 ZRST M0 M2

RST M1

RST M2

API Mnemônico Operandos Função


Controladores
11 D ZCP P Comparar zona ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F ZCP, ZCPP: 9 passos
S1 * * * * * * * * * * * DZCP, DZCPP: 17 passos
S2 * * * * * * * * * * *
S * * * * * * * * * * *
D * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S1: Primeiro valor de comparação (Mínimo) S2: Segundo va-
lor de comparação (Máximo) S: Valor de comparação D: Re-
sultado de comparação

Explicações:
1. Se os operandos S1, S2, S forem usados com o disposi-
tivo F, ele só estará disponível no comando de 16 bits.
2. O operando S1 deve ser menos do que o operando S2.
3. Operando D ocupa 3 dispositivos contínuos.
4. Consulte especificações específicas de cada modelo pa-
ra verificação de faixa de utilização.
5. Modelos das séries ES/EX/SS não suportam o comando
de execução por pulso (ZCPP, DZCPP).
6. S é comparado a seu limite S1 e S2 e D denota o resul-
tado da comparação.

263
ATOS COMANDOS DE APLICAÇÃO API


7. Quando S1 S2, configurar S1 como limite de compara-
ção.
8. Dois valores de comparação são comparados algebri-
camente e esta função compara dois valores conside-
rados binários. Se b15=1 no comando de 16 bits ou
b31=1 no comando de 32 bits, a comparação irá con-
siderar o valor como negativo do valor binário.

Exemplo de Programa :
1. Se D é configurado para M0, então M0, M1, M2 irão
funcionar como no exemplo de programa abaixo.
2. Quando X0=On, ZCP o comando é dirigido e um dos
M0, M1, M2 está On. Quando X0=Off, ZCP o comando
não é dirigido e M0, M1, M2 permanecem no estado
prévio.
X0
ZCP K10 K100 C10 M0
M0
If C10 < K10, M0 = On
M1
If K10 =
< C10 <
= K100, M1 = On
M2
If C10 > K100, M2 = On

3. Favor usar o comando RST ou ZRST para reconfigurar


o resultado de comparação.

X0 X0
RST M0 ZRST M0 M2

RST M1

RST M2

264
COMANDOS DE APLICAÇÃO API ATOS

API Mnemônico Operandos Função


Controladores
12 D MOV P Move ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F MOV, MOVP: 5 passos
S * * * * * * * * * * * DMOV, DMOVP: 9 passos
D * * * * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S: Fonte de dados D: Destino de dados

Explicações:
1. Se os operandos S, D forem usados com o dispositivo
F, ele só está disponível no comando de 16 bits.
2. Vide especificações específicas de cada modelo para
extensão de utilização.
3. Modelos das séries ES/EX/SS não suportam o comando
de execução por pulso (MOVP, DMOVP).
4. Quando o comando MOV é dirigido, os dados de S são
movidos para D sem qualquer mudança. Se o comando
MOV não é dirigido, o conteúdo de D permanece inal-
terado.
5. Se o resultado do cálculo é uma saída de 32 bits, (ou
seja, a aplicação MUL) e os dados de um contador de
alta velocidade de 32 bits, usuários terão de usar o
comando DMOV.

265
ATOS COMANDOS DE APLICAÇÃO API

Exemplo de Programa:
1. O comando MOV é usado no comando de 16 bits para
mover dados.
a. Quando X0=Off, o conteúdo de D10 permanece
inalterado. Se X0=On, os dados de K10 são mo-
vidos para o registro de dados.
b. Quando X1=Off, o conteúdo D10 permanece i-
nalterado. Se X1=On, os dados de T0 são movi-
dos para o registro de dados D10.
2. O comando DMOV é usado em comando de 32 bits pa-
ra mover dados. Quando X2=Off, o conteúdo de (D31,
D30) e (D41, D40) permanece inalterado. Se X2=On,
os dados de (D21, D20) são movidos para o registro
de dados (D31, D30). Enquanto isso, os dados de
C235 são movidos para o registro de dados (D41,
D40).
X0
MOV K10 D0

X1
MOV T0 D10
X2
DMOV D20 D30

DMOV C235 D40

API Mnemônico Operandos Função


Controladores
13 SMOV P Mover chave ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F SMOV, SMOVP: 11 passos
S * * * * * * * * *
m1 * *
m2 * *
D * * * * * * * *
n * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S: Fonte de dados m1: Posição de fonte (nibble) do primeiro
dígito a ser movido m2: Número de dígitos de fonte (nibbles) a
serem movidos D: Destino n: posição de destino para o pri-
meiro dígito (nibble)

266
COMANDOS DE APLICAÇÃO API ATOS

Explicações:
1. A extensão de uso do operando m1: m1=1~ 4.
2. A extensão de uso do operando m2: m2=1~ m1.
3. A extensão de uso do operando n: n=m2 ~ 4.
4. Vide especificação de cada modelo para faixa de
uso.
5. Este comando pode organizar ou combinar dados.
6. M1168 (operação de configuração de modo de
SMOV). Quando M1168=On, o modo é BIN. Quando
M1168=Off, o modo é BCD.

Exemplo de Programa 1:
1. Quando M1168=Off, X0=On, designar o conteúdo dos
dois dígitos a partir do 4o dígito (dígito dos milhares)
de D10 (número decimal) e mover os dados designa-
dos para dois dígitos a partir do 2o dígitos (dígitos de
centenas) de D20 (número decimal). Então, o conteú-
do de 103 e 100 de D20 permanecem inalterado após a
execução do comando SMOV.
2. Quando número BCD é maior do que 9.999 ou negati-
vo (for a da faixa de 0 a 9.999), ocorrerá um erro no
CLP. Assim o comando não será executado e M1067,
M1068 ficarão On, D1067 grava código de erro “0E18”
(número hexadecimal).
M1001
M1168
X0
SMOV D10 K4 K2 D20 K3

D10(BIN 16 bits)
Autoconversão
3 2 1 0
10 10 10 10 D10(BCD 4 dígitos)
Mover chave
Nenhuma variação Nenhuma variação
2
10
3
10 10
1
10
0
D20(BCD 4 dígitos)
Autoconversão

D20(BIN 16 bits)

Se D10=K1234 D20=K5678 antes da execução, D10 não
mudará e D20=K5128 após término da execução.

267
ATOS COMANDOS DE APLICAÇÃO API

Exemplo de programa 2:
Quando M1168=On, se utilizar o comando SMOV, D10 e D20
mão mudam dados no formato BCD. Contudo os dados são mo-
vidos em números BIN de 4 dígitos.
M1000
M1168
X0
SMOV D10 K4 K2 D20 K3

Dígito 4 Dígito 3 Dígito 2 Dígito 1


D10(BIN 16bit)

Mover chave

D20(BIN 16bit)
Dígito 4 Dígito 3 Dígito 2 Dígito 1
Nenhuma variação Nenhuma variação


Se D10=H1234 D20=H5678 antes da execução, D10 não
mudará e D20=H5128 após término da execução.

Exemplo de Programa 3:
1. Chave tipo Thumb conectada às entradas de número
interrompido pode usar comando SMOV para combinar.
2. Mover a Chave tipo Thumb (segunda à direita) para
segundo dígito de D2 e mover a Chave tipo Thumb
(primeira à esquerda) para o primeiro dígito da direita
para o primeiro dígito de D1 à direita.
3. Usar o comando SMOV para mover o primeiro dígito ao
terceiro dígito de D2 e combinar as chaves de dois dí-
gitos em um grupo.
2 1 0
10 10 10

6 4 2

8 8
8

X13~X10 X27~X20

PLC

M1001
M1168
M1000
(X20~X27)BCD
BIN K2X20 D2 2 dígitos D2(BIN)

D1 (X10~X13)BCD
BIN K1X10
1 dígito D1(BIN)

SMOV D1 K1 K1 D2 K3

268
COMANDOS DE APLICAÇÃO API ATOS

API Mnemônico Operandos Função


Controladores
14 D CML P Complementa e move ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F CML, CMLP: 5 passos
S * * * * * * * * * * * DCML, DCMLP: 9 passos
D * * * * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S: Fonte de dados D: Destino

Explicações:
1. Se operando S, usar D com dispositivo F, ele está dis-
ponível somente no comando de 16 bits.
2. Vide especificação de cada modelo para extensão de
uso.
3. Modelos das séries ES/EX/SS não suportam o comando
de execução por pulso (CMLP, DCMLP).
4. Efetua o complemento dos conteúdos de S (0→1,
1→0) e faz com que os conteúdos sejam transferidos
para D. Se o conteúdo é Constante K, esta Constante
K será convertida em valor BIN automaticamente.

Exemplo de programa 1:
1. Este comando pode ser usado durante a saída de fase
contrária.
2. Quando X10=ON, conteúdos de D1, b0~b3, serão con-
tra transferidos para K1Y0.

X10
CML D1 K1Y0
b 15 b3 b2 b1 b0
D1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
Sí mbol o bit (0=positivo, 1=negativo)
0 1 0 1

Nenhuma variação Transferir dados de


contrafase

269
ATOS COMANDOS DE APLICAÇÃO API

Exemplo de programa 2:
O giro da esquerda indicado abaixo pode ser mostrado como
no exemplo de programa à direita através da utilização do co-
mando CML.
X000
M0
X001
M1
X002
M2
X003
M3
M1000
CML K1X0 K1M0
X000 Normal ao c ontato
M0
X001
M1
X002
M2
X003
M3

API Mnemônico Operandos Função


Controladores
15 BMOV P Movimento em bloco ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F BMOV, BMOVP: 7 passos
S * * * * * * *
D * * * * * *
n * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S: Fonte D: Destino n: Número de dados a mover

Explicações:
1. A extensão de uso do operando n =1~ 512
2. Vide especificação de cada modelo para ex-
tensão de uso.
3. Modelos das séries ES/EX/SS não suportam o
comando de execução por pulso (BMOVP).

270
COMANDOS DE APLICAÇÃO API ATOS

4. Este comando é usado para mover um bloco


designado de dados múltiplos para um novo
destino. Mover os conteúdos do registro n
com este registro n obtido através da conta-
gem de registros em S – números designa-
dos, para o registro n dentro do número de-
signado D. Se os pontos designados n exce-
derem a extensão deste dispositivo, somente
aqueles que estão dentro da faixa habilitada
serão movidos.

Exemplo de Programa 1:
Quando X10=On, mover os conteúdos dos quatro registros
D0~D3 a seus registros correspondentes D20~D23.

X10
D20 K4 D0 D20
D1 D21
n=4
D2 D22
D3 D23

Exemplo de Programa 2:
1. Se for mover para o dispositivo de bit específico, KnX,
KnY, KnM, KnS, os números de dígitos de S e D devem
ser os mesmos e isso também significa que o número
de n deve ser o mesmo.
2. Modelos das séries ES/EX/SS não suportam dispositi-
vos KnX, KnY, KnM, KnS.

M1000
D0 D20 K4 M0
M1
M2
M3

M4
M5
n=3
M6
M7

M8 Y10
M9 Y11
M10 Y12
M11 Y13

271
ATOS COMANDOS DE APLICAÇÃO API

Exemplo de Programa 3:
O comando BMOV deve construir o movimento automático
como o exemplo de programa abaixo para prevenir que erros de
escrita excessiva ocorram quando os números especificados de
S e D coincidirem.
1. Quando S > D, o comando BMOV é processado na or-
dem 1→2→3
2. Quando S < D, o comando BMOV é processado na or-
dem 3→2→1. Porém, tome cuidado para evitar que o
número especificado esteja contínuo quando S < D nos
modelos das séries ES/EX/SS. Caso contrário, o resul-
tado da execução terá o mesmo valor. Por exemplo,
quando o comando BMOV é processado na ordem
3→2→1, o valor do conteúdo de D11 a D13 será
sempre o valor do conteúdo de D10.
X10 1
BMOV D20 D19 K3 D20 D19
2
D21 D20
3
D22 D21
X11 3
BMOV D10 D11 K3 D10 D11
2
D11
1
D12 D13

API Mnemônico Operandos Função


Controladores
16 D FMOV P Preencher e Mover ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F FMOV, FMOVP: 7 passos
S * * * * * * * * * * * DFMOV, DFMOVP: 13 passos
D * * * * * *
n * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S: Fonte D: Destino n: Número de dados a mover

Explicações:
1. Se os operandos S, D forem usados com o dispositivo
F, ele está disponível somente no comando de 16 bits.
2. A extensão de uso do operando n; n=1~ 512 (coman-
do de 16 bits), n=1~ 256 (comando de 32 bits).
3. Vide especificação de cada modelo para extensão de
uso.
4. Modelos das séries ES/EX/SS não suportam o comando
de execução por pulso (FMOVP, DFMOVP).
5. Os dados armazenados no dispositivo da fonte S são
movidos para cada dispositivo dentro da faixa do dis-
positivo de destino. Mover os conteúdos de S para o
registro n, com este registro n obtido da contagem dos
registros dentro dos números designados D. Se os dis-

272
COMANDOS DE APLICAÇÃO API ATOS

positivos designados n excederem a faixa de uso, so-


mente aqueles que estão dentro da faixa habilitada se-
rão movidos.
6. Modelos das séries ES/EX/SS não suportam dispositi-
vos KnX, KnY, KnM, KnS.

Exemplo de Programa :
Quando X0=ON, mover constante K10 para os cinco registros
contínuos (D10~D14) começando de D10.
X10
FMOV K10 D10 K5

K10 K10 D10

K10 D11

K10 D12 n=5

K10 D13

K10 D14

API Mnemônico Operandos Função


Controladores
17 D XCH P Exchange ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F XCH, XCHP: 5 passos
D1 * * * * * * * * DXCH, DXCHP: 9 passos
D2 * * * * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
D1: Dispositivo de primeira troca D2: Dispositivo de segun-
da troca

Explicações:
1. Se os operandos D1, D2 forem usados com o dispositivo
F, ele fica disponível somente no comando de 16 bits.
2. Vide especificação de cada modelo para extensão de
uso.
3. Modelos das séries ES/EX/SS não suportam o comando
de execução por pulso (XCHP, DXCHP).
4. D1: Primeira troca de dados D2: Segunda troca de da-
dos
5. Intercambiar os conteúdos de D1 e D2.
6. Este comando é geralmente de execução por pulso (X-
CHP).

Exemplo de Programa 1:
Quando X0=Off→On, os conteúdos de D20 e D40 se
intercambiam.

273
ATOS COMANDOS DE APLICAÇÃO API

X0
XCHP D20 D40

Antes da Após a
execução execução
D20 120 40 D20

D40 40 120 D40

Exemplo de Programa 2:
Quando X0=Off→On, os conteúdos de D20 e D40 se inter-
cambiam.
X0
D100 D200

Antes da Após a
execução execução
D100 D100

D101 20 40 D101

D200 D200

D201 40 20 D201

Os modelos da série ES não suportam flag M1303.


No comando de 16 bits, quando os dispositivos especificados
por D1 e D2 são os mesmos e M1303=On, os conteúdos superi-
or e inferior de 8 bits dos dispositivos especificados serão tro-
cados.
No comando de 32 bits, quando os dispositivos especificados
por D1 e D2 são os mesmos e M1303=On, os conteúdos superi-
or e inferior de 16 bits dos dispositivos de 32 bits dispositivos
serão trocados.
Quando X0=On e M1303=On, os conteúdos de D100 e D101
serão trocados.
Antes da Após a
X0 execução execução
M1303
D100L 9 8 D100L

DXCHP D100 D100 D100H 20 40 D100H


D101L 8 9 D101L
D101H 40 20 D101H

274
COMANDOS DE APLICAÇÃO API ATOS

API Mnemônico Operandos Função


Controladores
18 D BCD P Converter BIN para BCD ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F BCD, BCDP: 5 passos
S * * * * * * * * * DBCD, DBCDP: 9 passos
D * * * * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S: Fonte D: Resultado convertido

Explicações:
1. Se os operandos S, D forem usados com o dispositivo F,
ele está disponível somente no comando de 16 bits.
2. Vide especificação de cada modelo para extensão de uso.

3. Modelos das séries ES/EX/SS não suportam o comando de


execução por pulso (BCDP, DBCDP).
4. Converte dados BIN (0 to 9999) do dispositivo fonte S em
BCD e transfere o resultado para o dispositivo D.
5. Se o resultado de conversão BCD está for a da faixa de 0
a 9999, um erro de operação ocorre, os flags de erro
M1067, M1068 ficarão On e D1067 grava o código de erro
“0E18” (número hexadecimal).
6. Se o resultado de conversão DBCD está for a da faixa de 0
a 99,999,999, um erro de operação ocorre, os flags de er-
ro M1067, M1068 estarão On e D1067 grava o código de
erro “0E18” (número hexadecimal).
7. O valor da operação de quatro operações fundamentais
(+, −, ×, ÷), o comando INC e DEC no CLP são executados
em formato BIN. Este comando pode ser usado para pro-
duzir dados de formato BIN a formato BCD diretamente
para um mostrador de sete segmentos.
8. M1067 (erro de operação).M1068 (erro de operação).
D1067 (código de erro).

Exemplo de programa :
1. Quando X0=ON, os dados binários D10 são convertidos
em número BCD e armazenados em K1Y0 (Y0~Y3).

X0
BCD D10 K1Y0

2. Quando D10=001E (Hex)=0030 (número decimal), o re-


sultado da execução será Y0~Y3=0000(BIN).

275
ATOS COMANDOS DE APLICAÇÃO API

API Mnemônico Operandos Função


Controladores
19 D BIN P Converter BCD em BIN ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F BIN, BINP: 5 passos
S * * * * * * * * * DBIN, DBINP: 9 passos
D * * * * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S: Fonte D: Resultado convertido

Explicações:
1. Se os operandos S, D forem usados com o dispositivo F,
ele está disponível somente no comando de 16 bits.
2. Vide especificação de cada modelo para extensão de uso.

3. Modelos das séries ES/EX/SS não suportam comando de


execução por pulso (BINP, DBINP).
4. Converter dados BCD (0 a 9,999) do dispositivo fonte S
em BIN e transferir o resultado ao dispositivo D.
5. A faixa habilitada do dispositivo fonte S : BCD (0 a
9,999), DBCD (0 a 99,999,999)
6. Se o conteúdo do dispositivo fonte S não é valor BCD (ca-
da dígito de S que é indicado como HEX que está fora da
faixa de 0 a 9), um erro de operação ocorrerá, os flags de
erro M1067, M1068 estarão On e D1067 grava o código
de erro “0E18”.
7. A constante K e H é automaticamente convertida em da-
dos BIN. Não há necessidade da constante usar este co-
mando.
8. M1067 (erro de operação). M1068 (erro de operação).
D1067 (código de erro)

Exemplo de programa :
Quando X0=ON, o BCD dados K1M0 é convertido em dados
BIN, e o resultado armazenado em D10.

X0
BIN K1M0 D10

A explicação da aplicação de BCD e comando BIN:


1. O comando BIN é usado para converter dados fonte
em dados BIN e armazenar no CLP quando lê uma
chave de dígito de formato BCD de um equipamento
externo.
2. O comando BCD é usado para converter dados arma-
zenados em dados BCD e transmitir para o mostrador
de 7 segmentos quando o CLP indicar os dados arma-

276
COMANDOS DE APLICAÇÃO API ATOS

zenados em mostrador de 7 dígitos de formato BCD de


um equipamento externo.
3. Quando X0=On, converter K4X0 (dados BCD) em da-
dos BIN e transmitir para D100. Em seguida, converter
dados BIN de D100 em dados BCD e transmitir a
K4Y20.
X0
BIN K4X0 D100

BCD D100 K4Y20


3 2 1 0
10 10 10 10

Chave de formato BCD de 4 dígitos


6 6 4 2

8 8 8 8

X17 X0
Valor BCD de 4 dígitos

usar comando BIN para


armazenar valor BIN em D100

usar comando BCD para converter


valor BIN em D100

converter para que seja valor


BCD de 4 dígitos
Y37 Y20

Formato BCD de 4 dígitos


Mostrador de 7 segmentos

API Mnemônico Operandos Função


Controladores
20 D ADD Adição ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F ADD, ADDP: 7 passos
S1 * * * * * * * * * * * DADD, DADDP: 13 passos
S2 * * * * * * * * * * *
D * * * * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S1: Aditivo S2: Adendo D: Resultado da adição

Explicações:
1. Se os operandos S1, S2, D forem usados com o dis-
positivo F, ele está disponível somente no comando
de 16 bits.
2. Vide especificação de cada modelo para extensão
de uso.
3. Modelos das séries ES/EX/SS não suportam o co-
mando de execução por pulso (ADDP, DADDP).

277
ATOS COMANDOS DE APLICAÇÃO API

4. S1 + S2 = D. Efetua a adição nos dados BIN S1 e da-


dos BIN S2, e armazena o resultado da adição no
dispositivo D.
5. Os bit mais significante é o bit simbólico de 0 e 1. 0
indica positivo e 1 indica negativo. Todos os cálcu-
los são processados algebricamente, ou seja, 3 + (-
9) = -6.
6. Mudanças de Flag em adição binária
Comando de 16 bits:
a. Se o resultado da operação é “0”, então Flag
zero, M1020 é configurado para ON.
b. Se o resultado da operação exceder -32,768,
o flag de empréstimo, M1021 é configurado
para ON.
c. Se o resultado da operação exceder 32,767,
o flag de carry, M1022 é configurado para
ON.
Comando de 32 bits:
a. Se o resultado da operação for “0”, então
Flag zero, M1020 é configurado para ON.
b. Se o resultado da operação exceder -
2,147,483,648, o flag de empréstimo, M1021
é configurado para ON.
c. Se o resultado da operação exceder
2,147,483,647, o flag de carry, M1022 é con-
figurado para ON.
7. M1020 (Flag zero). M1021 (Flag de empréstimo).
M1022 (Flag de carry). Vide abaixo para maiores
detalhes:

Exemplo de Programa 1:
Comando de 16 bits:
Quando X0 está ON, os dados contidos dentro do aditivo D0 e
adendo D10 são combinados e o total é armazenado no disposi-
tivo resultado D20.

X0
ADD D0 D10 D20

278
COMANDOS DE APLICAÇÃO API ATOS

Exemplo de Programa 2:
Comando de 32 bits:
Quando X0 está ON, os dados contidos dentro do aditivo
(D31, D30) e adendo (D41, D40) são combinados e o total é
armazenado no dispositivo resultado (D51, D50). (D30, D40,
D50 são os dados menores de 16 bits, e D31, D41, D51 são os
dados maiores de 16 bits).

X10
DADD D30 D40 D50

(D31, D30) + (D41, D40) = (D51, D50)

Operações do Flag:
Comando de 16 bits: Flag zero Flag zero Flag zero

、-1 0 、-32,768
-2 、 、
-1 0 1 、 32,767 0 、 1 、2 、
Flag de O bit mais significante O bit mais significante
empréstimo Flag de carry
torna-se “1” (negativo) torna-se “0” (positivo)

Comando de 32 bits: Flag zero Flag zero Flag zero


-2 -1 、 、
0 -2,147,483,648 、
-1 0 1 、 2,147,483,647 0 1 、 、2 、
Flag de O bit mais significante O bit mais significante
Flag de carry
empréstimo torna-se “1” (negativo) torna-se “0” (positive)

API Mnemônico Operandos Função


Controladores
21 SUB Subtração ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F SUB, SUBP: 7 passos
S1 * * * * * * * * * * * DSUB, DSUBP: 13 passos
S2 * * * * * * * * * * *
D * * * * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S1: Minuendo S2: Subtraendo D: Resultado da subtração

279
ATOS COMANDOS DE APLICAÇÃO API

Explicações:
1. Se os operandos S1, S2, D forem usados com o dispo-
sitivo F, ele está disponível somente no comando de 16
bits.
2. Vide especificação de cada modelo para extensão de
uso.
3. Modelos das séries ES/EX/SS não suportam o comando
de execução por pulso (SUBP, DSUBP).
4. S1 − S2 = D. Efetua subtração de dados BIN S1 e dados
BIN S2, e armazena o resultado da subtração no dispo-
sitivo D.
5. O bit mais significante é o simbólico 0 e 1. 0 indica po-
sitivo e 1 indica negativo. Todo cálculo é algebricamen-
te processado.
6. Mudanças de Flag de subtração binária
Comando de 16 bits:
a. Se o resultado da operação for “0”, Flag Zero,
M1020 é configurado para ON.
b. Se o resultado da operação exceder –32,768,
Flag de Empréstimo, M1021 é configurado para
ON.
c. Se o resultado da operação exceder 32,767, Flag
de Carry, M1022 é configurado para ON.
Comando de 32 bits:
a. Se o resultado do operando for “0”, então o Flag
zero, M1020 é configurado para ON.
b. Se o resultado da operação exceder –
2,147,483,648, o flag de empréstimo M1021 é
configurado para ON.
c. Se o resultado da operação exceder
2,147,483,647, o flag de carry M1022 é configu-
rado para ON.
7. Em relação às operações de flag do comando SUB, vide
operações do flag do comando ADD acima.
8. M1020 (Flag zero). M1021 (Flag de empréstimo).
M1022 (Flag de carry). Vide comando explicação do
comando ADD.

Exemplo de programa 1:
comando de 16 bits:
Quando X0 está ON, os dados contidos no subtraendo D10
são dos dados contidos no minuendo D0 e o resultado desse
cálculo é armazenado no dispositivo de resultado D20.

X0
SUB D0 D10 D20

280
COMANDOS DE APLICAÇÃO API ATOS

Exemplo de programa 2:
comando de 32 bits:
Quando X0 está ON, os dados contidos dentro do subtraendo
(D41, D40) são subtraídos dos dados contidos no minuendo
(D31, D30) e o resultado desse cálculo é armazenado no dispo-
sitivo de resultado (D51, D50). (D30, D40, D50 são os dados
mais baixos de 16 bits, e D31, D41, D51 são os dados mais al-
tos de 16 bits data).

X10
DSUB D30 D40 D50

(D31, D30) − (D41, D40) = (D51, D50)

API Mnemônico Operandos Função


Controladores
22 D MUL P Multiplicação ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F MUL, DMULP: 7 passos
S1 * * * * * * * * * * * DMUL, DMULP: 13 passos
S2 * * * * * * * * * * *
D * * * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S1: Multiplicando S2: Multiplicador D: Resultado da multi-
plicação

Explicações:
1. Se os operandos S1, S2 forem usados com o dispositi-
vo F, ele está disponível somente no comando de 16
bits.
2. Se o operando D for usado com o dispositivo E, ele es-
tá disponível somente no comando de 16 bits.
3. No comando de 16 bits, o operando D ocupa 2 disposi-
tivos contínuos.
4. No comando de 32 bits, operando D ocupa 4 dispositi-
vos contínuos.
5. Vide especificação de cada modelo para extensão de
uso.
6. Modelos das séries ES/EX/SS não suportam o comando
de execução por pulso (MULP, DMULP).

281
ATOS COMANDOS DE APLICAÇÃO API

7. S1 × S2 = D. Efetua a Multiplicação de dados BIN S1 e


de dados BIN S2, e armazena o resultado da multipli-
cação no dispositivo D. Favor tomar cuidado especial
quanto ao mostrador de polaridade do resultado da
operação de S1, S2 e D no comando de 16 bits e 32
bits.
Comando de 16 bits:

+1

b15................ b00 b15................ b00 b31............ b16 b15............. b00


X =
b15 é um bit símbolo b15 é um bit símbolo B31 é um bit símbolo (b15 of D+1)

b15=0,S 2 é um valor positivo b31=0,S 2 é um valor positivo


b15=1,S 1 é um valor negativo B15=1,S 2 é um valor negativo b31=1,S 2 é um valor negativo

Quando D é dispositivo, ele pode especificar K1~K4 e produ-


zir um resultado de 16 bits. Assim, o flag M1067, M1068 ficará
On e D1067 grava o código de erro “0E19”. Todos os modelos
podem armazenar dados baixos de 32 bits exceto o modelo ES
que pode armazenar somente dados baixos de 16 bits.
Comando de 32 bits:
+1 +1 +3 +2 +1

b31.. b16 b15.. b00 b31.. b16 b15.. b00 b63. b48 b47. b32 b31. b16 b15. b00
X =
b31 é um bit símbolo b31 é um bit símbolo b63 é um bit símbolo (b15 de D+3 )
b31=0,S 1 (S 1 +1) são valores positivos b31=0,S 2 (S 2 +1) são valores positivos
b63=0, D1(D1+1) (D1+2) (D1+3) são valores positivos
b31=1,S 1 (S 1 +1) são valores negativos b31=1,S 2 (S 2 +1) s ão valore s negati vos
b63=1, D1(D1+1) (D1+2) (D1+3) são valores negativos

Quando D é dispositivo de bit, K1~K8 podem ser especifica-


dos para construir 32 bits e ocupar continuamente 2 grupos de
dados de 32 bits.

Exemplo de programa :
Comando de 16 bits:
Uma fonte de dados de 16 bits, D10 é multiplicado por outra
fonte de dados de 16 bits, D0 e o total é um resultado de 32
bits, D20. Os dados superiores de 16 bits armzenados em D21 e
os dados inferiores armazenados em D20. O resultado da
polaridade é indicado por OFF/ON do bit mais significante. OFF
indica os valores do positivo e ON indica o valor do negativo 1.

X0
MUL D0 D10 D20

MUL D0 D10 K8M0


(D0) × (D10) = (D21, D20)

282
COMANDOS DE APLICAÇÃO API ATOS

API Mnemônico Operandos Função


Controladores
23 D DIV P Divisão ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F DIV, DIVP: 7 passos
S1 * * * * * * * * * * * DDIV, DDIVP: 13 passos
S2 * * * * * * * * * * *
D * * * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S1: dividendo S2: divisor D: Quociente e Resto
(remainder)

Explicações:
1. Se os operandos S1, S2 forem usados com o dispositi-
vo F, ele está disponível somente no comando de 16
bits.
2. Se o operando D for usado com o dispositivo E, ele es-
tá disponível somente no comando de 16 bits.
3. No comando de 16 bits, operando D ocupa 2 dispositi-
vos contínuos.
4. In comando de 32 bits, operando D ocupa 4 dispositi-
vos contínuos.
5. Vide especificação de cada modelo para extensão de
uso.
6. Modelos das séries ES/EX/SS não suportam o comando
de execução por pulso (DIVP, DDDIVP).
7. S1 ÷ S2 = D. Efetua divisão de dados BIN S1 e de dados
BIN S2, e armazena o resultado em um dispositivo D.
Favor prestar atenção especial em relação ao mostra-
dor de polaridade do resultado da operação de S1, S2 e
D no comando de 16 bits e de 32 bits.
8. Este comando não é executado quando o divisor for
“0”. Assim, o flag M1067, M1068 estarão On e D1067
grava código de erro “0E19”.
Comando de 16 bits:
Quociente Resto
+1

/ =

283
ATOS COMANDOS DE APLICAÇÃO API

Quando D é dispositivo de bit, ele pode especificar K1~K4


para produzir resultado de 16 bits e ocupar 2 grupos contínuos.
Quanto ao resultado da operação, o quociente e o resto são ar-
mazenados. Para modelo ES, o resultado da operação será quo-
ciente sem resto.
Comando de 32 bits:

Quociente Resto

+1 +1 +1 +3 +2

/ =
Quando D é dispositivo de bit, K1~K8 podem ser especifica-
dos para construir 32 bits e continuamente ocupar 2 grupos de
dados de 32 bits para resultar em quociente e resto.

Exemplo de programa :
Quando X0 está ON, a fonte primária D0 (divisor) é dividida
pela segunda fonte D10 (dividendo). O quociente é especificado
para ser armazenado em D20 e o resto para ser armazenado
em D21. A polaridade do resultado é indicada pelo OFF/ON do
bit mais significante. OFF indica o valor do positivo e ON indica
o valor do negativo.

X0
DIV D0 D10 D20

DIV D0 D10 K4Y0

API Mnemônico Operandos Função


Controladores
24 D INC P Incremento ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F INC, INCP: 3 passos
D * * * * * * * * DINC, DINCP: 5 passos
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
D: Destino

284
COMANDOS DE APLICAÇÃO API ATOS

Explicações:
1. Se o operando D for usado com o dispositivo F, ele es-
tá somente disponível no comando de 16 bits.
2. Vide especificação de cada modelo para extensão de
uso.
3. Modelos das séries ES/EX/SS não suportam o pulso de
execução (INCP, DINCP).
4. Se o comando não é o comando de execução por pul-
so, “1” é adicionado ao valor do dispositivo destino D
em cada execução do comando sempre que o comando
INC é varrido a cada ciclo. Este comando é geralmente
execução por pulso (INCP, DINCP).
5. No comando de 16 bits, quando +32,767 é alcançado,
“1” é adicionado e escreverá um valor de –32,768 ao
dispositivo destino. No comando de 32 bits, quando
+2,147,483,647 é alcançado, “1” é adicionado e ele
escreverá o valor de -2,147,483,648 no dispositivo
destino.
6. Flag M1020~M1022 não será influenciado pelo resulta-
do da operação deste comando.

Exemplo de programa :
Quando X0 está On, o conteúdo de D0 irá efetuar a adição de
1.
X0
INCP D0

API Mnemônico Operandos Função


Controladores
25 D DEC P Decremento ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F DEC, DECP: 3 passos
D * * * * * * * * DDEC, DDECP: 5 passos
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
D: Destino

Explicações:
1. Se o operando D for usado com o dispositivo F, ele es-
tá disponível somente no comando de 16 bits.
2. Vide especificação de cada modelo para extensão de
uso.
3. Se o comando não é o comando de execução por pul-
so, “1” é subtraído ao valor do dispositivo destino D
em cada execução do comando sempre que o comando
INC for varrido em cada ciclo. Este comando é geral-
mente de execução por pulso (INCP, DINCP).
4. No comando de 16 bits, quando –32,768 é alcançado,
“1” é subtraído e ele escreverá um valor de +32,767
para o dispositivo destino. No comando de 32 bits,

285
ATOS COMANDOS DE APLICAÇÃO API

quando -2,147,483,648 é alcançado, “1” é subtraído e


ele escreverá um valor de +2,147,483,647 no disposi-
tivo destino.
5. Flag M1020~M1022 não será influenciado pelo resulta-
do da operação deste comando.

Exemplo de programa :
Quando X0 está On, o conteúdo de D0 irá efetuar a subtração
de 1.

X0
DECP D0

API Mnemônico Operandos Função


Controladores
W ES EX SS SA SX SC EH
26 AND P AND Lógico
D
Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F WAND, WANDP: 7 passos
S1 * * * * * * * * * * * DAND, DANDP: 13 passos
S2 * * * * * * * * * * *
D * * * * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S1: Primeira fonte de dados S2: Segunda fonte de dados
D: Resultado da operação

Explicações:
1. Se os operandos S1, S2, D forem usados com o disposi-
tivo F, ele está disponível somente no comando de 16
bits.
2. Vide especificação de cada modelo para extensão de
uso.
3. Modelos das séries ES/EX/SS não suportam a execução
por pulso (WANDP, DANDP).
4. Efetua o produto lógico do dispositivo da fonte de da-
dos S1 e S2, e armazena o resultado da operação no
dispositivo D.
5. Regra de operação geral: Se um dos bits contidos den-
tro do dispositivo da fonte de dados dispositivos for
“0”, então o resultado da operação será também “0”.

286
COMANDOS DE APLICAÇÃO API ATOS

Exemplo de programa 1:
Quando X0 está On, o dispositivo da fonte de dados de 16
bits D0 e D2 são analisados e o resultado da operação do co-
mando lógico WAND é armazenado no dispositivo D4.
X0
WAND D0 D2 D4

b15 b00
D0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1
Antes da
WAND
execução
D2 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0

Após a
execução D4 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0

Exemplo de programa 2:
Quando X1 está On, os dispositivos da fonte de dados de 32
bits (D11, D10) e (D21, D20) são analisados e o resultado da
operação do comando lógico DAND é armazenado no dispositivo
(D41, D40).

X1
DAND D10 D20 D40

b31 b15 b0
1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1
Antes da
D11 D10 DAND
execução
0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0
D21 D20
Após a
execução 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0
D41 D40

API Mnemônico Operandos Função


Controladores
W ES EX SS SA SX SC EH
27 OR P OR Lógico
D
Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F WOR, WORP: 7 passos
S1 * * * * * * * * * * * DOR, DORP: 13 passos
S2 * * * * * * * * * * *
D * * * * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S1: Primeira fonte de dados S2: Segunda fonte de dados
D: Resultado da operação

Explicações:

287
ATOS COMANDOS DE APLICAÇÃO API

1. Se os operandos S1, S2, D forem usados com o disposi-


tivo F, ele está disponível somente no comando de 16
bits.
2. Vide especificação de cada modelo para extensão de
uso.
3. Modelos das séries ES/EX/SS não suportam execução
por pulso (WORP, DORP).
4. Efetua a somatória lógica do dispositivo da fonte de
dados S1 e S2, e armazena o resultado da operação no
dispositivo D.
5. Regra de operação geral: Se um dos bits contidos na
fonte de dados dispositivos for “1”, então o resultado
\da operação é “1” também.

Exemplo de programa 1:
Quando X0 está On, o dispositivo da fonte de dados de 16
bits dispositivo D0 e D2 são analisados e o resultado da opera-
ção do comando lógico WOR é armazenado no dispositivo D4.

X0
WOR D0 D2 D4

b15 b00
D0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Antes da
execução WOR
D2 0 0 0 0 1 1 1 1 1 0 1 0 0 1 0 1

After
execução D4 0 1 0 1 1 1 1 1 1 1 1 1 0 1 0 1

Exemplo de programa 2:
Quando X1 está On, os dispositivos da fonte de dados de 16
bits (D11, D10) e (D21, D20) são analisados e o resultado da
operação do comando lógico DOR é armazenado no dispositivo
(D41, D40).

X1
DOR D10 D20 D40

b31
b b15 b0
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Before
execution D11 D10 DOR
0 0 0 0 1 1 1 1 1 0 1 0 0 1 0 1 0 0 0 0 1 1 1 1 1 0 1 0 0 1 0 1
D21 D20
After
execution 0 1 0 1 1 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 0 1 0 1
D41 D40

288
COMANDOS DE APLICAÇÃO API ATOS

API Mnemônico Operandos Função


Controladores
W ES EX SS SA SX SC EH
28 XOR P Exclusive XOR
D
Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F WXOR, WXORP: 7 passos
S1 * * * * * * * * * * * DXOR, DXORP: 13 passos
S2 * * * * * * * * * * *
D * * * * * * * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
S1: Primeira fonte de dados S2: Segunda fonte de dados
D: Resultado da operação

Explicações:
1. Se os operandos S1, S2, D forem usados com o disposi-
tivo F, ele está disponível somente no comando de 16
bits.
2. Vide especificação de cada modelo para extensão de
uso.
3. Modelos das séries ES/EX/SS não suportam a execução
por pulso (WXORP, DXORP).
4. Efetua a soma lógica exclusiva do dispositivo da fonte
de dados S1 e D, e armazena o resultado da operação
no dispositivo D.
5. Regra geral de operação: Se os dois bits contidos nos
dispositivos da fonte de dados são os mesmos, então o
resultado da operação é “0”. Mas se os dois bits conti-
dos nos dispositivos da fonte de dados são diferentes,
então o resultado da operação é “1”.

Exemplo de programa 1:
Quando X0 está On, o dispositivo da fonte de dados de 16
bits D0 e D2 são analisados e o resultado da operação do co-
mando lógico WXOR é armazenado no dispositivo D4.

X0
WXOR D0 D2 D4

b15 b00
D0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Antes da
execução WOR
D2 0 0 0 0 1 1 1 1 1 0 1 0 0 1 0 1

Após a
execução D4 0 1 0 1 1 0 1 0 1 1 1 1 0 0 0 0

289
ATOS COMANDOS DE APLICAÇÃO API

Exemplo de programa 2:
Quando X1 está On, os dispositivos da fonte de dados de 32
bits (D11, D10) e (D21, D20) são analisados e o resultado da
operação do comando lógico DXOR é armazenado no dispositivo
(D41, D40).

X1
DXOR D10 D20 D40

b
b31 b15 b0
1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1
Antes da
execução D11 D10 DXOR
0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0
D21 D20
Após a
execução 1 1 1 0 1 1 0 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 0 1 0 0 1 1 1 0 1 1
D41 D40

API Mnemônico Operandos Função


Controladores
29 D NEG P Negativo (complemento de 2 ) ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F NEG, NEGP: 3 passos
D * * * * * * * * DNEG, DNEGP: 5 passos
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Operandos:
D: Armazenar a operação de Complemento de 2’s (2’s com-
pliment)

Explicações:
1. Se o operando D for usado com o dispositivo F, ele
está disponível somente no comando de 16 bits.
2. Vide especificação de cada modelo para extensão
de uso.
3. Modelos das séries ES/EX/SS não suportam execu-
ção por pulso (NEGP, DNEGP).
4. D: uma vez executado o comando, o dispositivo es-
pecificado, D, servirá de complemento de 2.
5. Este comando pode converter o valor BIN negativo
em número positivo, ou seja, tomar seu valor abso-
luto.
6. Este comando é normalmente de execução por pul-
so (NEGP, DNEGP).

290
COMANDOS DE APLICAÇÃO API ATOS

Exemplo de programa 1:
Quando X0 vai de OFF → ON, cada bit do conteúdo de D10
será contado (0→1, 1→0) e será adicionado 1, e então será sal-
vo no registro original, D10.

X0
NEGP D10

Exemplo de programa 2:
Obtendo valor absoluto de um valor negativo:
a. Quando o 15o bit de D0 for “1”, M0 fica On. (D0 é um
valor negativo).
b. Quando M0 está On, o valor absoluto de D0 pode ser
obtido usando o comando NEG.

M1000
BON D0 M0 K15
Normal ON contact

M0
NEGP D0

Exemplo de programa 3:
Obtendo o valor absoluto por resultado da subtração
a. Quando D0>D2, M0=ON.
b. Quando D0=D2, M1=ON.
c. Quando D0<D2, M2=ON.
d. Então D4 pode ser obtido e será valor positi-
vo.

X0
CMP D0 D2 M0
M0
SUB D0 D2 D4
M1

M2
SUB D2 D0 D4

291
ATOS COMANDOS DE APLICAÇÃO API

Indicação do valor negativo e valor absoluto


a. O conteúdo do bit mais significante do regis-
tro indica o valor positivo e negativo. Trata-
se de um valor positivo quando o conteúdo
for “0” e de um valor negativo quando o con-
teúdo for “1”.
b. Se for um valor negativo, o valor absoluto
pode ser obtido através do uso do comando
NEG (API 29).

(D0=2)
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0

(D0=1)
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

(D0=0)
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

(D0=-1) (D0)+1=1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

(D0=-2) (D0)+1=2
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0

(D0=-3) (D0)+1=3
1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1

(D0=-4) (D0)+1=4
1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0

(D0=-5) (D0)+1=5
1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1

(D0=-32,765) (D0)+1=32,765
1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1

(D0=-32,766) (D0)+1=32,766
1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0

(D0=-32,767) (D0)+1=32,767
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

(D0=-32,768) (D0)+1=-32,768
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Máx. valor absoluto é 32,767

292
COMANDOS DE APLICAÇÃO API ATOS

API Mnemônico Operandos Função


Controladores
30 D ROR P Girar para a direita ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F ROR, RORP: 5 passos
D * * * * * * * * DROR, DRORP: 9 passos
n * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Explicações:
1. Se o operando D for usado com o dispositivo F, ele
está disponível somente no comando de 16 bits.
2. Se o operando D é especificado como KnY, KnM,
KnS, somente K4 (16 bits) e K8 (32 bits) são váli-
dos.
3. Condição essencial: 1≤n≤16 (16 bits), 1≤n≤32 (32
bits).
4. Vide especificação de cada modelo para extensão
de uso.
5. Modelos das séries ES/EX/SS não suportam execu-
ção por pulso (RORP, DRORP).
6. D: Dispositivo de rotação (dispositivo destino) n:
Locais do Bit para rotação de uma vez.
7. O padrão de bit do dispositivo D é rodado por n lo-
cais de bit à direita a cada operação do comando.
8. Este comando é geralmente de execução por pulso
(RORP, DRORP).
9. M1022 (Flag de carry).

Exemplo de programa :
Quando X0 vai de OFF a ON, os dados de 16 bits de D10 irão
girar 4 bits à direita, como indicado no diagrama, e b3 localiza-
do originalmente em D10 irá, então, ser movido para o flag de
carry (CY) M1022.

X0
RORP D10 K4

Girar para a direita


Bit superior Bit inferior
D10 0 1 1 1 1 0 1 1 0 1 0 0 0 1 0 1 Flag de
Carry

16 bits
Após uma rotação
para a direita
Bit superior Bit inferior Flag de
D10 0 1 0 1 0 1 1 1 1 0 1 1 0 1 0 0 0 Carry
*

293
ATOS COMANDOS DE APLICAÇÃO API

API Mnemônico Operandos Função


Controladores
31 D ROL P Girar para a esquerda ES EX SS SA SX SC EH

Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F ROL, ROLP: 5 passos
D * * * * * * * * DROL, DROLP: 9 passos
n * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Explicações:
1. Se o operando D for usado com o dispositivo F, ele está
disponível somente no comando de 16 bits.
2. Se o operando D for especificado como KnY, KnM, KnS,
somente K4 (16 bits) e K8 (32 bits) são válidos.
3. Condição essencial: 1≤n≤16 (16 bits), 1≤n≤32 (32 bits).
4. Vide especificação de cada modelo para extensão de uso.
5. Modelos das séries ES/EX/SS não suportam execução por
pulso (ROLP, DROLP).
6. D: Dispositivo de rotação (dispositivo destino) n: Locais
bit de rotação de uma vez
7. O padrão de bit do dispositivo D é rotado n locais bit à
esquerda a cada operação do comando.
8. Este comando é geralmente de execução por pulso (ROLP,
DROLP).
9. M1022 (Flag de carry).

Exemplo de programa :
Quando X0 vai de OFF → ON, os dados de 16 bits de D10 irão
girar 4 bits para a esquerda, como indicado no diagrama, e b12
localizado originalmente em D10 irá, então, ser movido ao flag
de carry (CY) M1022.
X0
D10 K4

Girar para a esquerda


Bit superior Bit inferior
Flag de
Carry 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 D10

16 bits
Após uma rotação para a esquerda
Flag de Bit superior Bit inferior
Carry
1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 D10

294
COMANDOS DE APLICAÇÃO API ATOS

API Mnemônico Operandos Função


Controladores
Girar para a direita com ES EX SS SA SX SC EH
32 D RCR P
o Flag de carry
Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F RCR, RCRP: 5 passos
D * * * * * * * * DRCR, DRCRP: 9 passos
n * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Explicações:
1. Se o operando D for usado com o dispositivo F, ele está
disponível somente no comando de 16 bits.
2. Se o operando D for especificado como KnY, KnM, KnS,
somente K4 (16 bits) e K8 (32 bits) são válidos.
3. Condição essencial: 1≤n≤16 (16 bits), 1≤n≤32 (32 bits).
4. Vide especificação de cada modelo para extensão de uso.
5. Modelos das séries ES/EX/SS não suportam execução por
pulso (RCRP, DRCRP).
6. D: Dispositivo de rotação (dispositivo destino) n: Locais
bit após uma rotação
7. O padrão de bit do dispositivo D com o flag de carry
(M1022) anexado é rotado n locais bit para a direita a ca-
da operação do comando.
8. Este comando é geralmente de execução por pulso (RCRP,
DRCRP).
9. M1022 (Flag de carry).

Exemplo de programa :
Quando X0 for de OFF a ON, os dados de 16 bits de D10, in-
cluindo o flag de carry (M1022) anexado, irão girar 4 bits para
a direita, como indicado no diagrama, e b3 localizado original-
mente em D10 irá, então, ser movido para o flag de carry
M1022, e os conteúdos originais do flag de carry M1022 serão
movidos para o bit de b12.
X0
D10 K4

Girar para a direita


Bit superior Bit inferior
D10 0 0 0 0 1 1 1 1 0 0 0 0 0 1 1 0 1
Flag de
Carry
16 bits
Após uma rotação
Bit superior para a direita Bit inferior
D10 1 1 0 1 0 0 0 0 1 1 1 1 0 0 0 0 0
Flag de
Carry

295
ATOS COMANDOS DE APLICAÇÃO API

API Mnemônico Operandos Função


Controladores
Girar par a direita com o ES EX SS SA SX SC EH
33 D RCL P
Flag de carry
Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F RCL, RCLP: 5 passos
D * * * * * * * * DRCL, DRCLP: 9 passos
n * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Explicações:
1. Se o operando D for usado com o dispositivo F, ele está
disponível somente no comando de 16 bits.
2. Se o operando D é especificado como KnY, KnM, KnS, so-
mente K4 (16 bits) e K8 (32 bits) são válidos.
3. Condição essencial: 1≤n≤16 (16 bits), 1≤n≤32 (32 bits).
4. Vide especificação de cada modelo para extensão de uso.
5. Modelos das séries ES/EX/SS não suportam execução por
pulso (RCLP, DRCLP).
6. D: Dispositivo de rotação (dispositivo destino) n: Locais
bit após rotação de uma vez.
7. Este comando é geralmente de execução por pulso (RCLP,
DRCLP).
8. M1022 (Flag de carry).

Exemplo de programa :
Quando X0 vai de OFF a ON, os dados de 16 bits de D10, in-
cluindo o flag de carry anexado (M1022), irá girar 4 bits para a
esquerda, como indicado no diagrama, e b12 localizado origi-
nalmente em D10 será então movido para o flag de carry
M1022, o os conteúdos originais do flag de carry M1022 serão
movidos para o bit de b3.
X0
RCLP D10 K4

Girar para a esquerda


Bit superior Bit inferior
1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 D10
Flag de
Carry
16 bits
Após uma rotação
para a esquerda
Bit superior Bit inferior
1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 D10
Flag de
carry

296
COMANDOS DE APLICAÇÃO API ATOS

API Mnemônico Operandos Função


Desloca os dados do Controladores
34 SFTR P dispositivo especificado ES EX SS SA SX SC EH
para a direita
Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F SFTR, SFTRP: 9 passos
S * * * *
D * * *
n1 * *
n2 * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Explicações:
1. Condição essencial: 1≤n1≤1024, 1≤ n2≤n1.
2. Em modelos das séries ES/EX/SS: 1┬n2┬n1┬512.
3. Vide especificação de cada modelo para extensão de uso.
4. Modelos das séries ES/EX/SS não suportam execução por
pulso (SFTRP).
5. S: Número inicial do dispositivo de deslocamento (disposi-
tivo fonte) D: Número inicial do dispositivo de desloca-
mento especificado (dispositivo destino) n1 : Pilha de bit
especificada de extensão de dados n2: Locais de bit após
deslocamento por uma vez
6. Desloca bits de dados n1 do dispositivo S para a direita
por bits n1. Bits n2 bits, que começam com D, são deslo-
cados para a direita.
7. Este comando é geralmente de execução por pulso (SF-
TRP).
8. Modelo da série ES não suportam registro de índice E e F

Exemplo de programa :
Quando X0 estiver em borda de subida, os dados de 16 bits
de M0~M15 irão se deslocar 4 bits para a direita.
Favor observar os passos ~ seguintes para efetuar o co-
mando de uma varredura:
M3~M0 → carry
 M7~M4 → M3~M0
 M11~M8 → M7~M4
 M15~M12 → M11~M8
 X3~X0 → M15~M12 completo
X0
SFTR X0 M0 K16 K4

4 bits em um deslocamento de grupo para a direita


X3 X2 X1 X0
5
M15 M14 M13 M12 M11 M10 M9 M8 M7 M6 M5 M4 M3 M2 M1 M0 carry

4 3 2 1

297
ATOS COMANDOS DE APLICAÇÃO API

API Mnemônico Operandos Função


Deslocamentos de da- Controladores
dos do Dispositivo Es- ES EX SS SA SX SC EH
35 SFTL P
pecificado para a Es-
querda
Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F SFTL, SFTLP: 9 passos
S * * * *
D * * *
n1 * *
n2 * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Explicações:
1. Condição essencial: 1≤n1≤1024, 1≤ n2≤n1.
2. Em modelos das séries ES/EX/SS: 1┬n2┬n1┬512.
3. Vide especificação de cada modelo para extensão de uso.
4. Modelos das séries ES/EX/SS não suportam execução por
pulso (SFTLP).
5. S: Número inicial do dispositivo de deslocamento (disposi-
tivo fonte) D: Número inicial do dispositivo de desloca-
mento especificado (dispositivo destino) n1: Pilha de bit
especificada de extensão de dados n2: Bits após desloca-
mento por uma vez
6. Deslocamentos de bits de dados n2 do dispositivo S para a
esquerda por bits n1. Bits n2 , que começam com D, são
deslocados para a esquerda.
7. Este comando é geralmente de execução por pulso (SF-
TLP).
8. Modelo da série ES não suporta registros de índice E e F

Exemplo de programa :
1. Quando X0 está em borda de subida, os dados de 16 bits
de M0~M15 irão girar 4 bits para a esquerda.
2. Favor observar os passos ~ seguintes para efetuar o
comando SFTL de uma varredura de tempo.
M15~M12 → carry
 M11~M8 → M15~M12
 M7~M4 ┬ M11~M8
 M3~M0 ┬ M7~M4
 X3~X0 ┬ M3~M0 completo
X0
SFTR X0 M0 K16 K4

4 bits em um deslocamento de grupo para a esquerda


X3 X2 X1 X0
5
carry M15 M14 M13 M12 M11 M10 M9 M8 M7 M6 M5 M4 M3 M2 M1 M0

1 2 3 4

298
COMANDOS DE APLICAÇÃO API ATOS

API Mnemônico Operandos Função


Controladores
Deslocar Registro pa- ES EX SS SA SX SC EH
36 WSFR P
ra a Direita
Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F WSFR, WSFRP: 9 passos
S * * * * * * *
D * * * * * *
n1 * *
n2 * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Explicações:
1. Ao usar dispositivos de bit como operando S (fonte) e D
(destino) o dispositivo especificado deve ser igual, por e-
xemplo, on tipo é o KnX, KnY, KnM, KnS e o outro tipo é T,
C, D.
2. Quando usar dispositivos de bit como operando S (fonte)
e D (destino) o valor Kn deve ser igual.
3. Condição essencial: 1≤n1≤512, 1≤ n2≤n1
4. Vide especificação de cada modelo para extensão de uso.
5. Modelos das séries ES/EX/SS não suportam execução
(WSFR, WSFRP).
6. S: Número inicial do dispositivo de deslocamento (disposi-
tivo fonte) D: Número inicial do dispositivo de desloca-
mento especificado (dispositivo destino) n1: Pilha de bit
especificada de extensão de dados n2: Palavras após des-
locamento por uma vez
7. Deslocamentos n1 de palavras de dados do dispositivo S
para a direita por palavras n1. Palavras n2, que começam
com D, são deslocadas para a direita.
8. Este comando é geralmente de execução por pulso (WS-
FRP).

Exemplo de programa 1:
1. Quando X0 vai de OFF a ON, os dados de registro de 16
de D20~D35 são paralelos a área de deslocamento e des-
locam 4 registros para a direita.
2. Favor observar os passos ~ seguintes para efetuar o
comando WSFR por uma vez.
D23~D20 → carry
( D27~D24 → D23~D20
( D31~D28 → D27~D24
( D35~D32 → D31~D28
( D13 ~D10 → D35~D32 completo
┬ EMBED CorelDRAW.Graphic.11 ┬┬┬

Exemplo de programa 2:
1. Quando X0 for de OFF a ON, os registros de palavra de
Y10~Y27 são paralelos à área de deslocamento e deslo-
cam 2 dígitos para a direita.

299
ATOS COMANDOS DE APLICAÇÃO API

2. Favor observar os passos ~ seguintes para efetuar o


comando WSFR de uma varredura de tempo.
Y17~Y10 → carry
( Y27~Y20 → Y17~Y10
( X27~X20 → Y27~Y20 completo
┬ EMBED CorelDRAW.Graphic.11 ┬┬┬

API Mnemônico Operandos Função


Controladores
Deslocar o Registro ES EX SS SA SX SC EH
37 WSFL P
para a Esquerda
Tipo Dispositivos de
Dispositivos de palavra Passos do programa
OP bit
X Y M S K H KnX KnY KnM KnS T C D E F WSFR, WSFRP: 9 passos
S * * * * * * *
D * * * * * *
n1 * *
n2 * *
PULSO 16 bits 32 bits
ES EX SS SA SX SC EH ES EX SS SA SX SC EH ES EX SS SA SX SC EH

Explicações:
1. Quando usar dispositivos de bit como operando S (fonte)
e D (destino) o dispositivo especificado deve ser igual, por
exemplo, um tipo é o KnX, KnY, KnM, KnS e o outro tipo é
T, C, D.
2. Quando usar dispositivos de bit como operando S (fonte)
e D (destino) o valor de Kn deve ser igual.
3. Condição essencial: 1≤n1≤512, 1≤ n2≤n1
4. Vide especificação de cada modelo para extensão de uso.
5. Modelos das séries ES/EX/SS não suportam execução
(WSFL, WSFLP).
6. S: Número inicial do dispositivo chave (dispositivo fonte)
D: Número inicial do dispositivo chave especificado (dis-
positivo destino) n1: Pilha de bit especificada de extensão
de dados n2: Palavras após deslocamento por uma vez
7. Chaves n1 palavras de dados do dispositivo S para a es-
querda por palavras n1. Palavras n2, que começam com
D, são deslocadas para a esquerda.
8. Este comando é geralmente de execução por pulso (WS-
FLP).

Exemplo de programa :
1. Quando X0 for de OFF para ON, o registro de dados de 16
de D20~D35 ficam paralelos a região de deslocamento e
deslocam 4 registros para a direita.
2. Favor consultar os passos ~ seguintes para efetuar o
comando WSFL de um deslocamento.
D35~D32 → carry
 D31~D28 → D35~D32
 D27~D24 → D31~D28
 D23~D20 → D27~D24
 D13~D10 → D23~D20 completo

300

You might also like