Professional Documents
Culture Documents
Ref. 3-0002.180
Manual Rev. 1.80 Fevereiro/2005
Este manual no pode ser reproduzido, total ou parcialmente, sem autorizao por escrito da Atos.
Seu contedo tem carter exclusivamente tcnico/informativo e a Atos se reserva no direito, sem
qualquer aviso prvio, de alterar as informaes deste documento.
Pgina 2 - Conjunto de Instrues DWARE / Manual rev. 180 / Fevereiro- 2005
Sistema de
Certificado ISO
9001 desde 1996,
com foco na
Satisfao do
Cliente
A Atos conta com uma equipe de engenheiros e representantes treinados na prpria fbrica e oferece a
seus clientes um sistema de trabalho em parceria para especificar, configurar e desenvolver software
usurio e solues em automao e presta servios de aplicaes e start-up.
A Atos mantm ainda o servio de assistncia tcnica em toda a sua linha de produtos, que prestado
em suas instalaes.
Com o objetivo de criar um canal de comunicao entre a Atos e seus usurios, criamos um servio
denominado CALL CENTER. Este servio centraliza as eventuais dvidas e sugestes, visando a
excelncia dos produtos e servios comercializados pela Atos.
CALL CENTER
De Segunda a Sexta-feira
Das 7:30 s 12:00 h e das 13:00 s 17:30 h
55 11 5522 1944 - Ramal: 111
E-mail: suportec@atos.com.br
Para contato com a Atos utilize o endereo e telefones mostrados na primeira pgina deste Manual.
ndice
ndice
1. INTRODUO ............................................................................................................................ 9
Tabela de Instrues ..............................................................................................................................9
Restries das Instrues: ..................................................................................................................11
Lista de PSEUDO-Instrues existentes (por driver) ........................................................................11
Lista de instrues existentes (por driver) ........................................................................................12
Lista de drivers para programao das CPUs ..................................................................................14
SRIE MPC4004..................................................................................................................................................... 14
SRIE TICO ............................................................................................................................................................ 14
SRIE EXPERT ...................................................................................................................................................... 15
Instrues de Comparao..................................................................................................................26
CMP......................................................................................................................................................................... 26
FCMP ...................................................................................................................................................................... 27
ndice
DVBLL......................................................................................................................................................................34
MULT .......................................................................................................................................................................35
FMUL .......................................................................................................................................................................35
MULTB .....................................................................................................................................................................36
MULBL .....................................................................................................................................................................36
ndice
Instrues Especiais ............................................................................................................................71
JMP ......................................................................................................................................................................... 71
CALL........................................................................................................................................................................ 71
ADSUB .................................................................................................................................................................... 72
ADSUD .................................................................................................................................................................... 72
ASCB....................................................................................................................................................................... 73
PRINT...................................................................................................................................................................... 74
FATOR .................................................................................................................................................................... 75
CTCPU .................................................................................................................................................................... 77
CCS ......................................................................................................................................................................... 79
LDIA......................................................................................................................................................................... 79
PID........................................................................................................................................................................... 80
OUTIS...................................................................................................................................................................... 81
SCL.......................................................................................................................................................................... 81
SCL2G..................................................................................................................................................................... 83
TXPR ....................................................................................................................................................................... 85
CEP ......................................................................................................................................................................... 86
AJUST ..................................................................................................................................................................... 87
FILT ......................................................................................................................................................................... 88
MED......................................................................................................................................................................... 90
RAIZQ...................................................................................................................................................................... 92
ndice
Captulo 1 - Introduo
1. Introduo
O conjunto de instrues DWARE possibilita maior flexibilidade de programao ao usurio, sendo
composto de instrues lgicas e aritmticas, atuando sobre bits, palavras ou blocos de dados, alm de
instrues especiais de converso de dados, calendrio, impresso de dados, ponto flutuante, etc.
A tabela a seguir apresenta os mnemnicos (em ordem alfabtica) das instrues, sua breve descrio
e a pgina do manual onde a instruo descrita com detalhes.
Tabela de Instrues
8
MNEMNICO
DESCRIO
ADSUB
ADSUD
AJUST
ASCB
ATAB
BCDAS
BCDAP
BITW
BMOVX
CALL
CCS
CEP
CMP
CNT
CNT2
CONV
CONVL
CTCPU
DIV
DIVB
DIVBL
DVBLL
FATOR
FCMP
FCONV
FDIV
FILT
FMUL
FSUB
FSUM
JMP
LD
LDATA
LDAT2
LDI
LDIA
LDN
LDW
LDX
LTIME
MED
MONOA
MONOD
MOV
PGINA
72
72
87
73
38
55
55
67
42
71
78
86
26
22
23
53
53
77
32
33
33
34
75
27
54
32
88
35
30
28
71
17
57
60
17
79
17
24
24
58
90
19
20
37
Captulo 1 - Introduo
MNEMNICO
DESCRIO
MULT
Multiplicao Decimal
35
MOVX
39
MULT
Multiplicao Decimal
35
MULTB
Multiplicao Hexadecimal
36
MULBL
36
OUT
Sada
18
OUTI
18
OUTIN
18
OUTIS
81
OUTN
Sada invertida
18
OUTR
Sada imediata
19
OUTX
Sada indexada
25
PID
Calcula PID
79
74
RAIZQ
92
SCL
81
SCL2G
83
SCRLL
43
SDATA
Acerto de dia/ms/ano
59
SDAT2
Acerto de dia/ms/ano/sculo
60
SETR
19
SFR
47
SFRW
Deslocamento de bits
48
SHIFB
Deslocamento de bit
50
SHIFN
51
SHIFL
Deslocamento de n bits
52
STIME
Acerto de hora/min/seg.
59
SUB
Subtrao Decimal
30
SUBB
Subtrao Hexadecimal
31
SUBBL
31
SUM
Soma Decimal
28
SUMB
Soma Hexadecimal
29
SUMBL
29
TAB
38
TMR
Temporizador
21
TXPR
84
UPDB
62
UPDBC
64
UPDD
62
UPDDC
63
VTAB
39
WAND
65
WBIT
68
WBITX
69
WLDX
41
WNOT
65
WOR
66
WXOR
66
PGINA
Captulo 1 - Introduo
MNEMNICO
DESCRIO
PGINA
CAV
GAV
SYNC
TMRX
96
95
97
96
Observaes: Os operandos tipo registro so formados por 2 bytes (exceto OP3 da multiplicao que tem
4 bytes) , que necessitam estar na mesma pgina.
Exemplo:
OP1 = 5FE
OP1 corresponde aos bytes 5FE/5FF que esto na mesma pgina.
OP3 = 5FE
(caso da multiplicao OP3 deveria corresponder aos bytes 5FE/5FF/600/601 porm por
haver uma mudana de pgina OP3 = 5FE/5FF/500/501).
MPC4004L
MPC4004
MPC4004G
MPC4004R
MPC4004R
AJUST
CEP
CONVL
DVBLL
FATOR
LDAT2
MULBL
PID
Pseudo
SCL
SDAT2
SHIFL
SUBBL
SUMBL
TXPR
AJUST
CEP
CONVL
DVBLL
FATOR
LDAT2
MULBL
PID
Pseudo
SCL
SDAT2
SHIFL
SUBBL
SUMBL
TXPR
AJUST
CEP
FATOR
CEP
FATOR
FATOR
MPC4004
MPC4004L
MPC4004G
MPC4004R
MPC4004T
MPC2200
175212Vx
175243Vx
175272Vx
175210XE
1755Vx
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
Captulo 1 - Introduo
MPC4004
MPC4004L
MPC4004G
MPC4004R
MPC4004T
MPC2200
175212Vx
175243Vx
175272Vx
175210XE
1755Vx
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
NO
SIM
NO
SIM
NO
NO
SIM
SIM
NO
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
NO
NO
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
NO
SIM
NO
NO
NO
NO
NO
SIM
SIM
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
SIM
NO
SIM
SIM
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
NO
NO
NO
SIM
SIM
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
NO
SIM
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
SIM
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
Captulo 1 - Introduo
MPC4004G
MPC4004R
MPC4004T
MPC2200
175212Vx
175243Vx
175272Vx
175210XE
1755Vx
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
NO
SIM
SIM
NO
NO
NO
NO
SIM
SIM
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
NO
NO
NO
SIM
SIM
NO
NO
NO
NO
NO
NO
SIM
NO
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
NO
SIM
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
NO
NO
NO
NO
NO
NO
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
NO
SIM
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
NO
SIM
SIM
SIM
NO
NO
SIM
NO
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
SIM
SIM
SIM
NO
SIM
NO
SIM
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
NO
NO
NO
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
SIM
Captulo 1 - Introduo
SRIE MPC4004
DRIVER
MPC4004
CPUs
4004.01
4004.02
4004.04
4004.09
4004.11
4004.12
DRIVER
MPC4004G
CPUs
DRIVER
CPUs
4004.04B
4004.05B
4004.06B
4004.09B
4004.05E
4004.06E
4004.09E
MPC4004R
4004.05R
4004.06R
4004.09R
MPC4004T
4004.05T
4004.06T
4004.09T
MPC4004L
4004.11L
4004.12L
SRIE TICO
Todas as CPUs da srie TICO so programadas pelo driver MPC2200, mas somente os modelos listados abaixo
possuem as instrues LDAT2 e SDAT2. Isso se deve ao fato destas instrues trabalharem com o relgio interno
do controlador, recurso inexistente nos outros modelos da srie.
DRIVER
MPC2200
CPUs
CPUs c/ relgio
2200.11
2200.12
2200.19
2200.21
2200.22
2200.29
2200.39
2200.71
2200.21R
2200.22R
2200.29R
2200.39R
2200.71
2200.21R
2200.22R
2200.29R
2200.39R
Captulo 1 - Introduo
SRIE EXPERT
Os controladores da srie EXPERT so programados atravs dos drivers MPC4004 e IHM1755. Deve-se observar
que dependendo do controlador EXPERT adquirido, algumas instrues no estaro habilitadas em seu firmware,
mesmo estando disponveis no WinSUP. A tabela a seguir relaciona os controladores da srie EXPERT separados
por cdigo de firmware.
atravs deste cdigo que voc poder identificar na tabela de instrues, quais as instrues existentes para a
CPU que est utilizando.
DRIVER
MPC4004
FIRMWARE
175212Vx
CPUs
1752P12
1752P22
1752P32
1752P42
1752P51
1752P54
1752P56
1752P57
1752P58
1752P61
1752P64
1752P66
1752P67
1752P68
DRIVER
FIRMWARE
CPUs
MPC4004
175243Vx
1752P43
MPC4004
175272Vx
1752P71
1752P72
1752P74
1752P76
1752P77
1752P78
MPC4004
17516Vx
1752P16
MPC4004
175210xE
1752P10F
1752P10R
1755Vx
1755P02
1755P12
1755P22
1755P32
1755P02S
1755P12S
1755P22S
1755P32S
IHM1755
Observao: os modelos terminados com /S/R/RS tambm esto relacionados nesta listagem, mas sem a
terminao.
Captulo 1 - Introduo
2. Conjunto de Instrues
Instrues Bsicas
LD
Load ou carregamento.
Comea a operao em cada lgica ou bloco lgico atravs de contato NA. uma instruo de um
operando.
A instruo LD faz com que o contedo de um estado interno especificado pelo operando (estado ON ou
OFF) se armazene em um registro de operaes lgicas.
Para formar operaes lgicas esta instruo deve ser combinada com outras instrues como OR, AND.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
LDN
Carregamento de NF.
similar a instruo LD, porm para contatos NF
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
LDI
Load ou carregamento imediato.
Comea a operao em cada lgica ou bloco lgico atravs de contato NA correspondente a uma entrada
da faixa E100 a E107. uma instruo de um operando.
A instruo LDI faz com que o contedo de uma entrada (estado ON ou OFF) especificada pelo operando,
se armazene em um registro de operaes lgicas no instante em que a instruo executada.
Para formar operaes lgicas esta instruo deve ser combinada com outras instrues como OR, AND.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Essa instruo garante que o estado (ON ou OFF) da entrada 100 ser carregado no instante da
execuo da instruo.
OUT
Output. Coloca o resultado de uma operao lgica em um estado interno especificado pelo operando.
Este estado interno pode ser uma sada, um estado interno auxiliar ou um estado interno auxiliar com
reteno.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
OUTN
Output negado. Coloca o resultado invertido de uma operao lgica em um estado interno especificado
pelo operando.
Este estado interno pode ser uma sada, um estado interno auxiliar ou um estado interno auxiliar com
reteno.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
OUTI
Output no em fim de linha. Coloca o resultado de uma operao lgica (armazenada no primeiro
registro de operaes lgicas) em um estado interno especificado pelo operando (sem alterar o contedo
do primeiro registro de operaes lgicas) podendo portanto ser continuada a seqncia de operaes
lgicas da linha.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
OUTIN
Output negado no em fim de linha. Coloca o resultado invertido de uma operao lgica (armazenada
no primeiro registro de operaes lgicas) em um estado interno especificado pelo operando (sem alterar
o contedo do primeiro registro de operaes lgicas) podendo portanto ser continuada a seqncia de
operaes lgicas da linha.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
OUTR
Output imediato.
Coloca o resultado de uma operao lgica imediatamente em uma sada fsica especificada pelo
operando, vlida na faixa S180 a S187.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Essa instruo garante que a sada fsica 180 ser atualizada na execuo dessa instruo
SETR
SET-RESET.
Permite executar um estado interno com reteno (LATCH). composta por duas entradas:
(S)ET - Se a entrada acionada, mesmo durante um nico perodo de varredura, o estado interno
especificado pelo operando acionado;
(R)ESET - se a entrada acionada, mesmo durante um nico perodo de varredura o estado interno
especificado pelo operando desacionado. Se ambas as entradas so acionadas a entrada RESET
tem prioridade.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se a entrada 100 acionada a sada 180 acionada; desacionando a entrada 100 a sada 180 continua
acionada (LATCH). Acionando a entrada 101 a sada 180 desacionada.
MONOA
Monoestvel no acionamento.
Realiza o acionamento de um estado interno especificado por uma nica varredura quando as condies
lgicas de entrada passam do estado desativado (OFF) para o estado ativado (ON). Quando a condio
lgica de entrada est desativada o estado interno especificado permanece desativado.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
No exemplo apresentado, a sada 180 ser acionada pelo tempo de uma varredura toda vez que a entrada
100 passar do estado OFF para o estado ON.
MONOD
Monoestvel no desacionamento.
Realiza o acionamento de um estado interno especificado por uma nica varredura quando as condies
lgicas de entrada passam do estado ativado (ON) para desativado (OFF). Quando a condio lgica de
entrada est ativada (ON) o estado interno especificado permanece desativado.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
No exemplo apresentado, a sada 180 ser acionada pelo tempo de uma varredura toda vez que a entrada
100 passar do estado ON para estado OFF.
TMR
Simula um temporizador com retardo na energizao.
composta por 2 entradas:
HABILITA - permite a contagem do temporizador, quando a condio lgica da entrada ativada.
Caso contrrio a contagem zerada.
START/STOP - Quando ativada permite a contagem e quando desativada pra a contagem (sem
zerar).
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Inicialmente deve-se presetar este temporizador no endereo (400/401). Este endereo devido ao
estado interno utilizado (000), consultar mapeamento do CP utilizado.
Este valor de preset pode ser colocado na memria de vrias formas, por exemplo, atravs de uma tela de
1 edio e 1 visualizao em uma IHM ou atravs de uma instruo que escreva dados na memria do
CP.
Estando a entrada 100 acionada, quando a entrada 101 for acionada a contagem de tempo iniciada, e
neste caso alocada, ou atualizada no endereo (440/441) efetivo. E com a entrada 100 desacionada o
valor da contagem zerado. Se a entrada 101 for desacionada a temporizao para e no zera
continuando assim que a entrada 101 for acionada novamente.
Neste exemplo, quando o valor da contagem de tempo (end. 440/441) se igualar ao valor de preset
(end.400/401) o E.I. 000 ser acionado e conseqentemente a sada 180 tambm.
CNT
Simula um contador.
composta por duas entradas:
(H)ABILITA - Permite que ocorra a contagem, quando a condio lgica da entrada ativada. Caso
contrrio a contagem zerada.
EXEMPLO DE PROGRAMAO
Inicialmente deve-se presetar este contador no endereo (400/401). Este endereo devido ao estado
interno utilizado (000), consultar mapeamento do CP utilizado.
Este valor de preset pode ser colocado na memria do CP de vrias formas, por exemplo, atravs de uma
tela de 1 edio e 1 visualizao em uma IHM ou atravs de uma instruo que escreva dados na
memria.
Estando a entrada 100 acionada, a cada acionamento da entrada 101 o contedo do endereo (440/441)
efetivo incrementado de uma unidade. E com a entrada 100 desacionada o valor da contagem zerado.
Neste exemplo, quando o valor da contagem (end.440/441) se igualar ao valor de preset (end.400/401) o
EI 000 ser acionado e conseqentemente a sada 180 tambm.
CNT2
Simula um contador.
Se a entrada (H)abilita estiver acionada e houver uma transio de OFF para ON na entrada (P)ulso, esta
instruo executar o incremento de uma unidade no contedo do endereo apontado em OP2 (valor
efetivo do contador) e a comparao entre um valor BCD de 4 dgitos (0000 a 9999) contido no endereo
apontado por OP1 (preset do contador) com o valor BCD de 4 dgitos (0000 a 9999) contido no endereo
apontado por OP2 (valor efetivo do contador). Se o valor efetivo do contador for igual ao valor do preset do
contador, ser acionado o estado interno declarado em OP3 e o valor efetivo do contador no ser mais
incrementado.
Estando a entrada (H)abilita desacionada, o valor efetivo do contador ser zerado, independente da
entrada (P)ulso e o estado interno declarado em OP3 estar desacionado.
composta por duas entradas:
(P)ULSO - na transio de OFF para ON incrementa uma unidade do valor contido no endereo
apontado por OP2. Para isto a entrada (H)abilita deve estar acionada.
(H)ABILITA executa a comparao, e estando desacionada zera o valor contido no endereo
apontado por OP2.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Estando o estado interno 100 acionado, o valor contido nos endereos 2002 e 2003 (valor efetivo da
contagem) ser igual a 0000 e o estado interno 0200 estar acionado se o valor contido nos endereos
2000 e 2001 (valor do preset para contagem) tambm for igual a 0000.
Estando o estado interno 100 acionado, a cada acionamento do estado interno 101 o valor contido nos
endereos 2002 e 2003 (valor efetivo da contagem), ser incrementado de uma unidade. O estado interno
0200 estar desacionado se o valor contido no endereos 2002 e 2003 (valor efetivo da contagem) for
menor que o valor contido nos endereos 2000 e 2001 (valor de preset para contagem).
O estado interno 0200 estar acionado se o valor contido no endereos 2002 e 2003 (valor efetivo da
contagem) for igual ao valor contido nos endereos 2000 e 2001 (valor de preset para contagem).
LDX
Load ou carregamento indexado.
Comea a operao em uma linha lgica com um contato normalmente aberto. uma instruo de um
nico operando.
A instruo faz com que um estado interno, especificado pelo contedo do operando (estado ON ou OFF)
se armazene em um registro de operaes lgicas.
SMBOLO EM DIAGRAMA DE RELS
0 2
700
EXEMPLO DE PROGRAMAO
0 0
701
A instruo LDX 700 carregar no registro de operaes lgicas o estado (ON ou OFF) do estado interno
200.
O operando deve ser sempre par, pois indica um registro ndice e deve estar entre 400 e 7FF
LDW
Comea linha com chave (NA) do tipo bit enderevel.
Executa o carregamento do contedo do bit selecionado por OP2, do registro apontado por OP1, em um
registro interno de operaes lgicas.
Se o contedo do bit selecionado for igual a 1, equivaler a condio OFF para o restante da lgica. Se o
contedo do bit selecionado for igual a 0, equivaler a condio ON para o restante da lgica.
Esta instruo s pode ser utilizada no incio de uma linha de programa, podendo a seguir ser combinada
com outras instrues tais como AND, ANDN, OR, ORN, LD ou LDN.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
OUTX
Output indexado
Coloca o resultado de uma operao lgica (ON ou OFF) em um estado interno especificado pelo
contedo do operando (registro ndice).
Este estado interno indexado pode ser uma sada ou um estado interno auxiliar.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
O operando deve ser sempre par, pois indica um registro ndice e deve estar entre 400 e 7FF.
Se o contedo de 702 for:
0 1
702
8 0
703
Quando o EI 100 for ativado, o EI 180 ser ativado e quando o EI 100 for desativado, conseqentemente o
EI 180 ser desativado.
Instrues de Comparao
CMP
Comparao entre contedos de registros.
Esta instruo executa a comparao dos 16 bits de um registro de palavras indicado por OP1 com outro
registro indicado por OP2.
uma instruo de entrada nica:
(H)ABILITA quando acionada permite que a comparao seja executada e aps sua execuo os
flags de comparao estaro na seguinte condio:
se (OP1) > (OP2) -> LIGA 0F8
se (OP1) = (OP2) -> LIGA 0F9
se (OP1) < (OP2) -> LIGA 0FA
Onde: (OP1) e (OP2) indicam o contedo dos registros OP1 e OP2 definidos na instruo.
O contedo dos registros no alterado por uma instruo de comparao.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Os E.I.s 0F8, 0F9 e 0FA so flags de comparao, portanto cada vez que se habilitar as diversas
instrues CMP em um programa, esses flags sero alterados. Para se preservar as sadas em caso de
no habilitao da comparao em uma determinada varredura, podemos utilizar a instruo JMP.
Se no exemplo acima o estado interno 200 derivado de uma operao MONOA ou MONOD, quando na
varredura a instruo CMP no executada, ocorre um salto no programa de modo a no atualizar os
estados internos ativados pelos flags 0F8, 0F9 e 0FA.
Se o estado interno 200 for ativado e o contedo dos registros 600 e 800 forem, por exemplo, 1000d e
0999d respectivamente, aps a execuo da instruo somente EI 0F8 estar ligado.
Para 600=0999d e 800=0999d somente o EI 0F9 estar ligado.
Finalmente, para 600=0999d e 800=1000d somente o EI 0FA estar ligado.
FCMP
Comparao entre valores com ponto flutuante.
Esta instruo executa a comparao de 2 nmeros em ponto flutuante indicado por OP1 e OP1+2 com
outro registro indicado por OP2 e OP2+2.
Observao: Os valores de ponto flutuante esto armazenados segundo a norma ANSI/IEEE Std 7541985.
uma instruo de entrada nica:
(H)ABILITA Caso a entrada habilita acionada a instruo executada e aps sua execuo os flags
de comparao estaro na seguinte condio:
EXEMPLO DE PROGRAMAO
Os EI's 0F8, 0F9 e 0FA so flags de comparao, portanto cada vez que se habilitar as diversas
instrues CMP em um programa, esses flags sero alterados. Para se preservar as sadas em caso de
no habilitao da comparao em uma determinada varredura, podemos utilizar a instruo JMP.
Se no exemplo acima o estado interno 200 derivado de uma operao MONOA ou MONOD, quando na
varredura a instruo CMP no executada, ocorre um salto no programa de modo a no atualizar os
estados internos ativados pelos flags 0F8, 0F9 e 0FA.
Se o estado interno 200 for ativado e o contedo dos registros 600/602 e 800/802 forem, por exemplo,
1,35d e 1,34d respectivamente, aps a execuo da instruo somente EI 0F8 estar ligado.
Para 600=1,34d e 800=1,35d somente o EI 0F9 estar ligado.
Finalmente, para 600=1,34d e 800=1,34d somente o EI 0FA estar ligado.
Importante: Note que no importa o momento, somente um dos trs EI's estar ligado aps a execuo
da instruo.
Instrues Aritmticas
SUM
Soma BCD.
Soma dois operandos em BCD. uma instruo de entrada nica:
(H)ABILITA - Quando a entrada habilita acionada o contedo de OP1 somado em BCD com o
contedo de OP2 e o resultado colocado no registro OP3. Se ocorrer "overflow", o E.I. 0FF ser
acionado.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD estiver acionado o contedo do
registro 400 somado ao contedo do registro 404 e o resultado da adio na base decimal colocado no
registro 600.
FSUM
Soma em ponto flutuante.
Esta instruo contm trs operandos e uma entrada (Habilita). Quando a entrada habilita acionada os
32bits a partir de OP1 so somados com os 32 bits a partir de OP2, o resultado colocado no registro
OP3 e OP3+2. Se ocorrer "overflow", o estado interno 0FF ser acionado.
Observao: Os valores de ponto flutuante esto armazenados segundo a norma ANSI/IEEE Std 7541985.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
SUMB
Soma binria.
Esta instruo contm trs operandos e uma entrada (Habilita). Quando a entrada habilita acionada o
contedo de OP1 somado em binrio com o contedo de OP2 e o resultado colocado no registro OP3.
Se ocorrer "overflow", o E.I. 0FF ser acionado.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD, estiver acionado, o contedo do
registro 400 somado ao contedo do registro 404 e o resultado da adio na base hexadecimal
colocado no registro 600.
SUMBL
Soma Binria de 32 Bits.
Esta instruo contem trs operandos e uma entrada Habilita. Quando a entrada habilita acionada o
contedo de OP1 somado em binrio com o contedo de OP2 e o resultado colocado no registro OP3.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD estiver acionado o contedo do
registro 400 somado ao contedo do registro 404 e o resultado da adio binria colocado no registro
600.
Conjunto de Instrues DWARE / Manual rev. 1.80 / Fevereiro- 2005 Pgina 29
SUB
Subtrao BCD.
Esta instruo contm trs operandos e uma entrada (Habilita). Quando a entrada habilita acionada o
contedo do registro OP1 subtrado em BCD do contedo do registro OP2 e o resultado colocado no
registro OP3. Se o contedo de OP1 for maior que o contedo de OP2, o E.I. 0FF ser desacionado.
(OP3) = [(OP2) - (OP1)]
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD, estiver acionado, o contedo do
registro 400 subtrado do contedo do registro 404 e o resultado da subtrao na base decimal
colocado no registro 600.
FSUB
Subtrao em ponto flutuante.
Esta instruo contm trs operandos e uma entrada (Habilita). Quando a entrada habilita acionada os
32 bits a partir do registro OP1 so subtrados dos 32 bits do registro OP2 e o resultado colocado nos 32
bits a partir do registro OP3. Se o contedo de OP1 for maior que o contedo de OP2, o estado interno
0FF ser desacionado.
Observao: Os valores de ponto flutuante esto armazenados segundo a norma ANSI/IEEE Std 7541985.
(OP3) = [(OP2) - (OP1)]
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
SUBB
Subtrao binria. Esta instruo contm trs operandos e uma entrada (Habilita). Quando a entrada
habilita acionada o contedo do registro OP1 subtrado em binrio do contedo do registro OP2 e o
resultado colocado no registro OP3. Se o contedo de OP1 for maior que o contedo de OP2, o E.I. 0FF
ser desacionado.
(OP3) = [(OP2) - (OP1)]
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD, estiver acionado, o contedo do
registro 400 subtrado do contedo do registro 404 e o resultado da subtrao na base hexadecimal
colocado no registro 600.
SUBBL
Subtrao binria de 32 bits. Esta instruo contm 3 operandos e uma entrada (HABILITA). Quando a
entrada habilita acionada o contedo do registro OP1 subtrado em binrio do contedo do registro
OP2 e o resultado colocado no registro OP3.
(OP3) = [(OP2) - (OP1)]
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD estiver acionado o contedo do
registro 400 subtrado do contedo do registro 404 e o resultado da subtrao binria colocado no
registro 600.
Conjunto de Instrues DWARE / Manual rev. 1.80 / Fevereiro- 2005 Pgina 31
DIV
Diviso BCD.
Esta instruo contm trs operandos e uma entrada (habilita). Quando a entrada habilita acionada, o
contedo do registro OP1 (dividendo) dividido pelo contedo do registro OP2 (divisor) e o quociente
(parte inteira) colocado no registro OP3. O resto da diviso colocado em um registro especial (780h).
Nesta operao h a restrio de que o divisor (apontado por OP2) seja um nmero menor ou igual a 255.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
No exemplo acima, se o contedo de 400 for 0090d, de 404 for 0020d e a entrada 200 for acionada
atravs de uma instruo MONOA ou MONOD, o contedo de 600 ser igual a 0004d e o contedo de
780 ser igual a 000Ah. (O resto sempre dado em hexadecimal)
A diviso por zero (contedo de OP2 = 0) no executada, ou seja, o comportamento o mesmo da
entrada Habilita desacionada.
FDIV
Diviso com ponto flutuante.
Esta instruo contm trs operandos e uma entrada (habilita). Quando a entrada habilita acionada, o
contedo do registro OP1/OP1+2 (dividendo) dividido pelo contedo do registro OP2/OP2+2 (divisor) e o
quociente (parte inteira) colocado nos registro OP3 e OP3+2. Se ocorrer "overflow", o estado interno 0FF
ser acionado.
Se o resultado for superior a + ou - [3,402823E+38] o EI 0FF ser ligado.
Se o resultado for inferior a + ou - [1,175495E-38] o valor ser arredondado para zero.
Observao: Os valores de ponto flutuante esto armazenados segundo a norma ANSI/IEEE Std 7541985.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
DIVB
Diviso binria.
Esta instruo contm trs operandos e uma entrada (habilita). Quando a entrada habilita acionada, o
contedo do registro OP1 (dividendo) dividido pelo contedo do registro OP2 (divisor) e o quociente
(parte inteira) colocado no registro OP3. O resto da diviso colocado em um registro especial (780h).
Nesta operao h a restrio de que o divisor (apontado por OP2) seja um nmero menor ou igual a
0FFh.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o contedo de 400 for 0090h, de 404 for 0020h e a entrada 200 for acionada atravs de uma instruo
MONOA ou MONOD, o contedo de 600 ser igual a 0004h e o contedo de 780 ser igual a 0010h. (O
resto sempre dado em hexadecimal)
A diviso por zero (contedo de OP2 = 0) no executada, ou seja, o comportamento o mesmo da
entrada Habilita desacionada.
DIVBL
Diviso binria longa.
Esta instruo contm trs operandos e uma entrada (habilita). Quando a entrada habilita acionada, o
contedo do registro OP1 (dividendo) dividido pelo contedo do registro OP2 (divisor) e o quociente
(parte inteira) colocado no registro OP3. O resto da diviso colocado em um registro especial (780 h).
Nesta operao o divisor (apontado por OP2) um nmero cujo mximo FFFFh. Se o contedo de OP2
for menor ou igual a FFh, utilize a instruo DIVB.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
400
7777h
404
FFFFh
Se o estado interno 200 for acionado atravs de uma instruo MONOA ou MONOD, teremos:
RESULTADO DA DIVISO RESTO DA DIVISO
600
0000h
780
7777h
DVBLL
Diviso binria.
Esta instruo contem 3 operandos e uma entrada (habilita). Quando a entrada habilita acionada, o
contedo do registro OP1 (dividendo) dividido pelo contedo do registro OP2 (divisor) e o quociente
(parte inteira) colocado no registro OP3. O resto da diviso colocado em um registro especial (780 H).
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
MULT
Multiplicao BCD.
Esta instruo contm trs operandos e uma entrada (habilita). Quando a entrada habilita acionada, o
produto do contedo de OP1 e do contedo OP2 colocado no registro OP3
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Note que OP3 aponta para o byte mais significativo do produto, que est contido em 4 bytes (8 dgitos) a
partir de OP3 (Multiplicao de valor de 4 dgitos por valor de 4 dgitos implica em um produto de 8
dgitos). A escolha da parte do resultado a ser usado em outra operao fica a critrio do programador.
(Flutuao do ponto decimal).
No exemplo, se o contedo de 400 for 0002d, de 404 for 0005d e a entrada 200 for acionada atravs de
uma instruo MONOA ou MONOD, o contedo de 600 ser igual a 0000d e o contedo de 602 ser igual
a 0010d.
FMUL
Multiplicao em ponto flutuante.
Esta instruo contm trs operandos e uma entrada (habilita). Quando a entrada habilita acionada, o
produto do contedo de OP1/OP1+2 e do contedo OP2/OP2+2 colocado nos registro OP3/OP3+2.
Se o resultado for superior a + ou - [3,402823E+38] o EI 0FF ser ligado.
Se o resultado for inferior a + ou - [1,175495E-38] o valor ser arredondado para zero.
Observao: Os valores de ponto flutuante esto armazenados segundo a norma ANSI/IEEE Std 7541985.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o contedo de 400/402 for 1,25d, de 404/406 for 1,55d e a entrada 200 for acionada atravs de uma
instruo MONOA ou MONOD, o contedo de 600/602 ser igual a 1,9375d.
Conjunto de Instrues DWARE / Manual rev. 1.80 / Fevereiro- 2005 Pgina 35
MULTB
Multiplicao binria.
Esta instruo contm trs operandos e uma entrada (habilita). Quando a entrada habilita acionada, o
produto do contedo de OP1 e do contedo OP2 colocado no registro OP3
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Note que OP3 aponta para o byte mais significativo do produto, que est contido em 4 bytes (8 dgitos) a
partir de OP3 (Multiplicao de valor de 2 bytes por valor de 2 bytes implica em um produto de 4 bytes).
No exemplo, se o contedo de 400 for 0002h, de 404 for 0005h e a entrada 200 for acionada atravs de
uma instruo MONOA ou MONOD, o contedo de 600 ser igual a 0000h e o contedo de 602 ser igual
a 000Ah.
MULBL
Multiplicao binria de 32 bits.
Esta instruo contm 3 operandos e uma entrada (habilita). Quando a entrada habilita acionada, o
produto do contedo de OP1 e do contedo OP2 colocado no registro apontado por OP3
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Note que OP3 aponta para o byte mais significativo do produto, que est contido em 8 bytes a partir de
OP3. (Multiplicao de valor de 4 bytes por valor de 4 bytes implica em um produto de 8 bytes)
EXEMPLO DE PROGRAMAO
Se a entrada 100 estiver fechada o contedo do registro 600 copiado para o registro 800. Ento aps a
execuo da instruo o contedo de 800 ser o mesmo de 600.
MOVK
Carregamento de constante em um registro.
Esta instruo executa a colocao de um valor de 16 bits em um registro de palavras indicado por OP1.
A instruo tem uma nica entrada (Habilita).
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
No exemplo acima, se o estado 200, derivado da operao MONOA estiver acionado, o valor 1234
colocado no registro 600 (posies 600 e 601 da memria).
1 2
600
3 4
601
TAB
Carregamento de constantes em uma tabela de dados.
Esta instruo possibilita o carregamento de at 16 constantes de 16 bits a partir de um registro indicado
por OP1. A instruo especifica tambm a quantidade de constantes que sero carregadas e tem uma
nica entrada (Habilita). Os valores a serem carregados so declarados imediatamente aps a instruo.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Quando o estado interno 200 for acionado, o registro 600 passar a conter 1234, 602 conter 5678 e
assim por diante.
Observao: A tabela de dados deve comear e terminar dentro de uma mesma pgina, neste exemplo a
pgina comea em 600 e terminando conseqentemente em 6FF.
ATAB
Armazena bloco de dados.
uma instruo de uma nica entrada (habilita). A instruo copia um bloco de dados de at 64 bytes
para uma regio de armazenamento correspondendo a uma das 64 tabelas possveis.
Onde OP1 aponta para o primeiro byte; NB o nmero de bytes (01 a 64) que sero armazenados e NT
o nmero da tabela (01 a 64 ) que vai receber os bytes.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
No exemplo acima, os 64 bytes entre os registros 400 e 43E que so exatamente os 32 presets de
temporizadores/contadores foram armazenados numa regio da memria identificada por tabela 01. Isso
ocorreu aps o acionamento do estado interno 200.
VTAB
Recupera bloco de dados.
uma instruo de uma nica entrada (Habilita). A instruo copia um bloco de dados de at 64 bytes de
uma regio de armazenamento para a regio de dados.
Onde OP1 aponta para o primeiro byte da regio de dados; NB o nmero de bytes (01 a 64) que sero
copiados e NT o nmero da tabela (01 a 64) fonte dos dados.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
No exemplo acima, aps o acionamento do estado interno 200 ocorrer o carregamento de 64 bytes que
esto na regio de memria de armazenamento identificada por tabela 64 para 64 bytes a partir do
endereo 400 na regio da memria de dados.
MOVX
Movimentao de dados indexada no destino.
Se a entrada Habilita estiver acionada o contedo do registro apontado por OP1 ser transferido para o
registro cujo ndice (endereo) apontado pelo registro OP2.
A instruo tem ainda uma entrada AI (auto incremento), que quando ativada provoca um decremento
automtico no ndice (contedo de OP2), caso contrrio provoca um incremento.
Como o incremento ou decremento feito antes da execuo da transferncia, necessrio que o
contedo inicial do ndice seja duas unidades a menos ou a mais conforme a operao seja de incremento
ou decremento respectivamente.
uma instruo de duas entradas:
AI - quando ativada provoca um decremento automtico, caso contrrio um incremento;
HABILITA - se acionada executa a funo anterior
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
0
7
X
X
7
5
X
X
X
X
8
6
X
X
6FE
3
1
4
2
600
800
702
700
Se a entrada 100 estiver acionada o contedo do registro ndice 800 passar para 6FE, caso contrrio
passar para 702, portanto ficando a estrutura de dados da seguinte forma:
E100 acionada:
E100 desacionada:
F E
0
0 6 800 0
2
7
X X
3
X X 702 1
7 8
7
5 6 700 5
3 4
X
1 2 6FE X
4
2
8
6
X
X
3
1
4
2
4
3
2 600 1
WLDX
Movimentao de dados indexada na origem.
Se a entrada Habilita estiver acionada o contedo do registro cujo ndice (endereo) apontado por OP1
ser transferido para o registro apontado pelo registro OP2.
A instruo tem ainda uma entrada AI(auto incremento), que quando ativada provoca um decremento
automtico no ndice (contedo de OP1), caso contrrio provoca um incremento.
Como o incremento ou decremento feito antes da execuo da transferncia, necessrio que o
contedo inicial do ndice seja duas unidades a menos ou a mais conforme a operao seja de incremento
ou decremento respectivamente.
uma instruo de duas entradas:
(AI)- quando ativada provoca um decremento automtico, caso contrrio um incremento;
(H)ABILITA - se acionada executa a funo anterior
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD estiver acionado a instruo
ser executada, caso contrrio a prxima linha de programa ser iniciada.
Suponha que atravs de instrues realizadas anteriormente a estrutura de dados esteja da seguinte
maneira antes da execuo:
X
X
X
X
7
5
X
X
3
1
8
6
X
X
4
2
6FE
0
0
0
7
600
800
702
700
Se a entrada 100 estiver acionada o contedo do registro ndice passar para 6FE, caso contrrio para
702 portanto ficando a estrutura de dados da seguinte forma:
E100 acionada:
3 4
1 2
800
E100 desacionada:
7 8
5 6
5 6
7 8 702
X X
X X 700
3 4
1 2 6FE
7
5
X
X
3
1
8
6
X
X
4
2
F E
0 6
0
0
2
7
600
BMOVX
Movimentao de bloco de dados indexados na origem e no destino.
Se a entrada Habilita estiver acionada ser copiada uma determinada quantidade de bytes (n), a partir do
endereo apontado por OP1 (origem), para uma outra regio que comea no endereo apontado por OP2
(destino).
A instruo BMOVX pode ler toda a memria do CP utilizado e pode escrever em qualquer regio da
memria que no seja a regio de uso interno do sistema.
A instruo tem uma nica entrada (HABILITA).
Onde n o nmero de bytes do bloco (se n = 0 o bloco ser de 256 bytes).
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Observao: No necessrio que o todo o bloco seja colocado em uma nica pgina de destino.
No exemplo, suponhamos a seguinte situao:
600
0400
800
06D2
Quando o estado interno 200 for acionado atravs de uma instruo MONOA OU MONOD, ocorrer a
"cpia" de 64 bytes a partir do endereo apontado por 600 (400) para 64 bytes a partir do endereo
apontado por 800 (6D2).
Observe que neste caso o bloco de dados de destino (6D2 a 711) comeou na pgina 6 (6D2 a 6FF) e
terminou na pgina 7 (700 a 711).
400
XXXX
XXXX
64
BYTES
43E
XXXX
6D2
64
BYTES
XXXX
710
XXXX
XXXX
XXXX
XXXX
SCRLL
Scroll de dados de uma tabela de n posies.
Se a entrada (H)abilita for acionada com a entrada (S)entido desacionada, os conjuntos de dados (OP3 =
quantidade de bytes dos conjuntos) iniciados no endereo apontado por OP1 e contidos nas n posies
da tabela (OP2 = nmero de posies da tabela) sero deslocadas no sentido crescente da tabela, ou seja
da primeira ltima posio, descartando-se o ltimo conjunto.
Se a entrada (H)abilita for acionada com a entrada (S)entido acionada, os conjuntos de dados iniciados no
endereo apontado por OP1 e contidos nas n posies da tabela sero deslocadas no sentido
decrescente da tabela, ou seja da ltima primeira posio, descartando-se o primeiro conjunto.
Se a entrada (H)abilita for acionada com a entrada (C)arrega acionada, o valor declarado de K ser
carregado em toda a tabela, independente da entrada (S)entido. Esta ltima possibilidade implementada
na instruo permite a inicializao da tabela com valores predefinidos.
A instruo SCRLL permite a movimentao de no mximo 10000 bytes (determinados pela multiplicao
do valor de OP2 pelo valor de OP3) em toda regio de registros do CP.
A instruo SCRLL composta das seguintes entradas:
(S)ENTIDO - indica se o deslocamento dos dados contidos nas n posies da tabela no sentido da
primeira para ltima posio da tabela (S desacionado) ou no sentido da ltima para primeira posio
da tabela (S acionado);
EXEMPLO DE PROGRAMAO
ANTES
Primeira
Posio (01)
Primeira
Posio (02)
60
BYTES
Penltima
Posio (09)
ltima
Posio (10)
DEPOIS
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
600A
600B
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
603A
603B
AB
FF
44
77
68
16
99
09
35
CC
F6
86
9F
00
32
99
FF
B3
66
88
A3
15
04
09
Primeira
Posio (01)
Primeira
Posio (02)
60
BYTES
Penltima
Posio (09)
ltima
Posio (10)
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
600A
600B
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
603A
603B
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
ANTES
Primeira
Posio (01)
Primeira
Posio (02)
60
BYTES
Penltima
Posio (09)
ltima
Posio (10)
DEPOIS
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
600A
600B
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
603A
603B
11
12
13
14
15
16
21
22
23
24
25
26
91
92
93
94
95
96
A1
A2
A3
A4
A5
A6
Primeira
Posio (01)
Primeira
Posio (02)
60
BYTES
Penltima
Posio (09)
ltima
Posio (10)
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
600A
600B
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
603A
603B
11
12
13
14
15
16
11
12
13
14
15
16
81
82
83
84
85
86
91
92
93
94
95
96
ANTES
Primeira
Posio (01)
Primeira
Posio (02)
60
BYTES
Penltima
Posio (09)
ltima
Posio (10)
DEPOIS
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
600A
600B
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
603A
603B
11
12
13
14
15
16
21
22
23
24
25
26
91
92
93
94
95
96
A1
A2
A3
A4
A5
A6
Primeira
Posio (01)
Primeira
Posio (02)
60
BYTES
Penltima
Posio (09)
ltima
Posio (10)
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
600A
600B
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
603A
603B
21
22
23
24
25
26
31
32
33
34
35
36
A1
A2
A3
A4
A5
A6
A1
A2
A3
A4
A5
A6
Instrues de Deslocamento
SFR
Deslocamento de estados internos.
A instruo de deslocamento uma instruo de dois operandos e funciona como uma entrada serial a
um registro de deslocamento, sendo composta das seguintes entradas:
EXEMPLO DE PROGRAMAO
BLOCO ORIGINAL
300
301
302
303
304
305
ON
OFF
ON
OFF
ON
ON
306
307
308
309
30A
30B
OFF
OFF
ON
OFF
OFF
ON
30C
30D
30E
30F
310
ON
OFF
OFF
OFF
ON
Com as entradas 100 e 101 acionadas e a entrada 102 desacionada, assim que o E.I. 200 for acionado
atravs da instruo MONOA, ocorrer a insero de um estado ON no endereo 300 e
conseqentemente o deslocamento dos 17 E.I.'s. Neste caso, o estado ON que pertencia ao endereo 310
perdido.
O bloco de estados, em relao ao bloco original, passa a ser o seguinte:
300
301
302
303
304
305
ON
ON
OFF
ON
OFF
ON
306
307
308
309
30A
30B
ON
OFF
OFF
ON
OFF
OFF
30C
30D
30E
30F
310
ON
ON
OFF
OFF
OFF
300
301
302
303
304
305
OFF
ON
OFF
ON
ON
OFF
306
307
308
309
30A
30B
OFF
ON
OFF
OFF
ON
ON
30C
30D
30E
30F
310
OFF
OFF
OFF
ON
OFF
Com a entrada 102 acionada, independentemente das entradas 100 e 101, assim que a entrada 103 for
acionada, ocorrer a mudana de todos os estados (300 a 310) para OFF.
Se o estado interno 200, derivado de uma operao MONOA ou MONOD estiver acionado, a instruo
executada, caso contrrio ser executada a prxima linha de programa.
SFRW
Executa o deslocamento de bits a partir do bit15 do contedo do registro inicial (OP1) at o bit0 do
contedo do registro final (OP2).
Se a entrada (H)abilita for acionada e estando a entrada (L)impa acionada, todos os bits contidos entre os
registros iniciais e finais sero limpos, ou seja, o valor FFFFh ser escrito no contedo dos registros.
Se a entrada (H)abilita for acionada e estando a entrada (L)impa desacionada, o valor 1 representado
para entrada (D)ado desacionada ser deslocado para contedo do bit15 do registro inicial, cujo contedo
ser deslocado para contedo do bit14, cujo contedo ser deslocado para o contedo do bit13 e assim
sucessivamente at que o contedo do bit0 do registro final seja descartado.
Se a entrada (H)abilita for acionada e estando a entrada (L)impa desacionada, o valor 0 representado
para entrada (D)ado acionada ser deslocado para contedo do bit15 do registro inicial, cujo contedo
ser deslocado para contedo do bit14, cujo contedo ser deslocado para o contedo do bit13 e assim
sucessivamente at que o contedo do bit0 do registro final seja descartado.
A instruo SFRW composta pelas seguintes entradas:
EXEMPLO DE PROGRAMAO
F890
0000
A055
3777
0101
FFFF
1234
9999
1111100010010000
0000000000000000
1010000001010101
0011011101110111
0000000100000001
1111111111111111
0001001000110100
1001100110011001
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
1111111111111111
1111111111111111
1111111111111111
1111111111111111
1111111111111111
1111111111111111
1111111111111111
1111111111111111
Estando o estado interno 201 desacionado e o estado interno 202 desacionado, quando o estado interno
200 for acionado atravs de uma instruo MONOA OU MONOD, o bit15 do registro 3000 assumir o
valor 1, correspondente a entrada 202 desacionada, deslocando seu contedo e todos os bits a partir
dele at o bit0 do contedo do registro 300E, que ser descartado.
ANTES DO ACIONAMENTO DO EI 200
CONTEDO
CONETDO EM
REGISTRO
EM HEXA
BINRIO
3000
3002
3004
3006
3008
300A
300C
300E
0000
0000
0000
0000
0000
0000
0000
0007
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000111
8000
0000
0000
0000
0000
0000
0000
0003
1000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000011
Estando o estado interno 201 desacionado e o estado interno 202 acionado, quando o estado interno 200
for acionado atravs de uma instruo MONOA OU MONOD, o bit15 do registro 3000 assumir o valor 0,
correspondente a entrada 202 acionada, deslocando seu contedo e todos os bits a partir dele at o bit0
do contedo do registro 300E, que ser descartado.
ANTES DO ACIONAMENTO DO EI 200
CONTEDO
CONETDO EM
REGISTRO
EM HEXA
BINRIO
3000
3002
3004
3006
3008
300A
300C
300E
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
FFF8
1111111111111111
1111111111111111
1111111111111111
1111111111111111
1111111111111111
1111111111111111
1111111111111111
1111111111111000
7FFF
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
FFFC
0111111111111111
1111111111111111
1111111111111111
1111111111111111
1111111111111111
1111111111111111
1111111111111111
1111111111111100
SHIFB
Deslocamento de bit.
Provoca um deslocamento de um bit em um registro de palavras. A instruo tem duas entradas:
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD estiver acionado a instruo
ser executada, caso contrrio a prxima linha de programa ser iniciada.
Estando a entrada 100 acionada o deslocamento para a direita; com a entrada 100 desacionada o
deslocamento para a esquerda.
Antes da execuo da instruo temos:
800
SHIFN
Deslocamento de nibble.
Provoca um deslocamento de 4 bits (NIBBLE) em um registro de palavras.
A instruo tem duas entradas:
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD estiver acionado a instruo
ser executada, caso contrrio a prxima linha de programa ser iniciada.
Estando a entrada 100 acionada o deslocamento para a direita; com a entrada 100 desacionada o
deslocamento para a esquerda.
Antes da execuo da instruo temos:
800
800
800
SHIFL
Deslocamento de bit.
Provoca um deslocamento de 'n' bits em um registro de 32 bits. A instruo tem 2 entradas:
desativada
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD estiver acionado a instruo
ser executada, caso contrrio a prxima linha de programa ser iniciada.
Estando a entrada 100 acionada o deslocamento para a direita. Com a entrada 100 desacionada o
deslocamento para a esquerda.
COM E100 ACIONADA:
0
0
0
802
1
0
800
0
1
802
0
0
800
0
0
802
1
0
800
0
1
802
0
0
800
803
1
1
801
0
803
1
801
ANTES DA EXECUO
APS A EXECUO
0
803
1
801
0
803
1
801
ANTES DA EXECUO
APS A EXECUO
(D)ECIMAL - estando a entrada D acionada a converso feita considerando a fonte (OP1) como um
dado em hexadecimal portanto uma converso binrio para BCD. Caso a entrada D esteja
desacionada a converso feita BCD para binrio. Se a converso binrio para BCD implica em um
nmero maior que 9999, a parte mais significativa deste nmero ser perdida.
(H)ABILITA - se acionada executa as funes anteriores.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Neste exemplo, se o contedo do registro 600 for 270Fh, com a entrada 100 acionada, logo aps o
acionamento da entrada 101 o contedo do registro 800 ser 9999d. Agora se o contedo do registro 600
for igual a 9999d e a entrada 100 estiver desacionada, depois do acionamento da entrada 101 o contedo
do registro 800 ser 270Fh.
CONVL
Converso bcd/bin ou bin/bcd de 32 bits. uma instruo de dois operandos, onde o operando 2
define para onde vai o resultado da converso e o operando 1 onde est a fonte de dados para converso,
a instruo tem duas entradas:
(D)ECIMAL - estando a entrada D acionada a converso feita considerando a fonte (OP1) como um
dado em hexadecimal portanto uma converso binrio para BCD. Caso a entrada D esteja desacionada a
converso e feita BCD para binrio. Se a converso binrio para BCD implica em um nmero > 99999999,
a parte mais significativa deste nmero ser perdida.
(H)ABILITA - se acionada executa as funes anteriores
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
FCONV
Converso Float/BCD ou BCD/Float. uma instruo de trs operandos, onde OP2 define para onde vai
o resultado da converso, OP1 onde est a fonte de dados para converso e OP3 qual EI indicar se o
nmero a ser convertido positivo ou negativo, a instruo tem duas entradas:
Float/Decimal - Estando a entrada F/D acionada a converso feita considerando a fonte (OP1) como um
dado em BCD, portanto uma converso BCD para Float. Caso a entrada F/D esteja desacionada a
converso feita Float para BCD. Se a converso de Float para BCD implica em um nmero superior a +
ou - [9999.9999], a instruo no ser executada e o EI 0FFh ser ligado.
HABILITA - se acionada executa as funes anteriores.
Observao: Os valores de ponto flutuante esto armazenados segundo a norma ANSI/IEEE Std 7541985.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Converso Float/BCD ou BCD/Float. uma instruo de trs operandos, onde OP2 define para onde vai o
resultado da converso, OP1 onde est a fonte de dados para converso e OP3 qual EI indicar se o
nmero a ser convertido positivo ou negativo, a instruo tem duas entradas:
Float/Decimal - Estando a entrada F/D acionada a converso feita considerando a fonte (OP1) como um
dado em BCD, portanto uma converso BCD para Float. Caso a entrada F/D esteja desacionada a
converso feita Float para BCD. Se a converso de Float para BCD implica em um nmero superior a +
ou - [9999.9999], a instruo no ser executada e o EI 0FFh ser ligado.
Observao: Os valores de ponto flutuante esto armazenados segundo a norma ANSI/IEEE Std 7541985.
No exemplo, sempre que o EI 200 estiver ligado o contedo do registro 600 ser convertido (obedecendo
o sinal indicado no EI 206), de float p/ BCD ou vice-versa, dependendo do EI 100, e armazenado no
registro 800.
BCDAS
Converso de dados decimais para ASCII.
uma instruo de dois operandos que provoca a converso de um dado em BCD ou HEXADECIMAL de
4 dgitos em 4 bytes ASCII correspondentes.
A fonte para converso indicado por OP1 e o destino indicado por OP2. A instruo tem uma entrada
Habilita.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o contedo de F00 for igual a 9876d e o estado interno 200 for acionado, atravs de MONOA ou
MONOD, o contedo de F02 ser igual a 3938 e o contedo de F04 ser igual a 3736.
Se o contedo de F00 for igual a FE90h e o estado interno 200 for acionado, atravs de MONOA ou
MONOD, o contedo de F02 ser igual a 4645 e o contedo de F04 ser igual a 3930.
Cada dgito original convertido produz um byte em ASCII.
BCDAP
Converso de dados decimais para ASCII com colocao de ponto decimal.
uma instruo de trs operandos que provoca a converso de um registro BCD em ASCII, levando em
considerao a colocao do ponto decimal (.), vrgula (,) ou dois pontos (:).
A fonte para converso indicado por OP1 e o destino indicado por OP2 e o byte de controle em OP3.
SMBOLO EM DIAGRAMA DE RELS
ONDE:
EXEMPLO DE PROGRAMAO
01
02
03
11
12
13
21
22
23
XXX.X
XX.XX
X.XXX
XXX,X
XX,XX
X,XXX
XXX:X
XX:XX
X:XXX
EXEMPLO DE PROGRAMAO
Estando a entrada A/B desacionada a leitura feita no formato BCD. Com a entrada A/B acionada o
formato ser ASCII (possibilitando a impresso direta).
O formato dos dados ser o seguinte :
FORMATO BCD
OP1+3
OP1+2
OP1+1
OP1
0
DIA+
MS+
ANO
FORMATO ASCII
0
DIAMSANO-
OP1+7
OP1+6
OP1+5
OP1+4
OP1+3
OP1+2
OP1+1
OP1
No exemplo apresentado, se o estado interno auxiliar 200 estiver acionado (atravs de uma instruo
MONOA ou MONOD) os registros 600, 601, 602 e 603 sero atualizados com os seguintes dados:
603
602
601
600
0
DIA+
MS+
ANO
0
DIAMSANO-
LTIME
Ler hora.
uma instruo de um operando tendo uma entrada ASC/BCD e uma entrada Habilita. Esta instruo
utilizada para se conhecer em qualquer instante a hora fornecida por um relgio em tempo real e cujos
dados so colocados em registros a partir de OP1.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Estando a entrada A/B desacionada a leitura feita no formato BCD. Com a entrada A/B acionada o
formato ser ASCII (possibilitando a impresso direta).
O formato dos dados ser o seguinte:
FORMATO BCD
OP1+3
OP1+2
OP1+1
OP1
0
SEG+
MIN+
HORA+
FORMATO ASCII
0
SEG.MINHORA-
OP1+7
OP1+6
OP1+5
OP1+4
OP1+3
OP1+2
OP1+1
OP1
No exemplo apresentado, se o estado interno 200 estiver acionado (atravs de uma instruo MONOA ou
MONOD) os registros 800 a 807 sero atualizados com os seguintes dados:
807
806
805
804
803
802
801
800
SDATA
Acerta data.
uma instruo de um operando, tendo uma entrada Habilita. Esta instruo serve para acertar a data de
um calendrio a partir de dados apontados por OP1.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
OP1+3
OP1+2
OP1+1
OP1
0
DIA+
MS+
ANO
0
DIAMSANO-
STIME
Acerta hora.
uma instruo de um operando, tendo uma entrada Habilita. Esta instruo serve para acertar a hora de
um relgio em tempo real a partir de dados apontados por OP1.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
OP1+3
OP1+2
OP1+1
OP1
0
SEG+
MIN+
HORA+
0
SEG.MINHORA-
LDAT2
Ler data.
uma instruo de um operando tendo uma entrada ASC/BCD e uma entrada Habilita. Esta instruo
utilizada para se conhecer em qualquer instante a data fornecida por um relgio em tempo real e cujos
dados so colocados em registros apontados por OP1. Esta instruo se difere da LDATA por trazer o ano
em 4 dgitos. Fornece tambm o dia da semana, representado por nmeros de 0 a 6, onde 0 representa o
domingo.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Estando a entrada A/B desacionada a leitura feita no formato BCD. Com a entrada A/B acionada o
formato ser ASCII (possibilitando a impresso direta).
O formato dos dados ser o seguinte :
FORMATO BCD
OP1+5
OP1+4
OP1+3
OP1+2
OP1+1
OP1
0
0
DIA+
MS+
ANO+
SECULO+
FORMATO ASCII
OP1+11
OP1+10
OP1+9
OP1+8
OP1+7
OP1+6
OP1+5
OP1+4
OP1+3
OP1+2
OP1+1
OP1
No exemplo apresentado, se o estado interno auxiliar 200 estiver acionado (atravs de uma instruo
MONOA ou MONOD) os registros 600, 601, 602, 603 e 604 sero atualizados com os seguintes dados:
604
603
602
601
600
0
DIA+
MS+
ANO+
SECULO +
0
DIAMSANOSECULO -
Nesse caso esses dados sero fornecidos pela CPU.Os dados podero ser vistos se uma tela de um
campo de visualizao de oito dgitos for programada na IHM utilizada.
Pgina 60 - Conjunto de Instrues DWARE / Manual rev. 1.80 / Fevereiro- 2005
SDAT2
Acerta data.
uma instruo de um operando, tendo uma entrada Habilita. Esta instruo serve para acertar a data de
um calendrio a partir de dados apontados por OP1.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
OP1+3
OP1+2
OP1+1
OP1
ANO+
SECULO+
MS+
DIA+
ANOSECULOMSDIA-
EXEMPLO DE PROGRAMAO
Se o contedo do registro 600 for inicialmente igual a 0000d e estando as entradas 100 e 101
desacionadas, assim que o estado interno 200 for acionado atravs de uma instruo MONOA ou
MONOD o contedo de 600 passar a ser igual a 0001d, portanto a cada acionamento do E.I. 200 o
contedo de E.I. 600 ser incrementado de uma unidade.
Agora se a entrada 100 estiver acionada e o E.I. 200 for acionado o contedo de 600 ser decrementado
de uma unidade, deste modo se o contedo de 600 fosse igual a 0000d passaria a ser igual a 9999d.
Para zerar o contedo de 600 necessrio acionar a entrada 101 e o E.I. 200.
Em caso de no se desejar zerar o registro em nenhuma condio, a entrada RST pode ser ligada ao
contato invertido da entrada HABILITA.
UPDB
similar a instruo UPDDr porm a contagem feita em hexadecimal.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
A instruo UPDB executada da mesma forma que a instruo UPDD, porm utilizando a base
hexadecimal.
Pgina 62 - Conjunto de Instrues DWARE / Manual rev. 1.80 / Fevereiro- 2005
UPDDC
Incrementa e compara (decimal).
Aumenta ou diminui uma unidade do contedo, em BCD, do registro indicado por OP1 e executa a
comparao dos 16 bits deste registro com os 16 bits do registro indicado por OP2. Esta instruo tem
trs entradas:
EXEMPLO DE PROGRAMAO
UPDBC
Incrementa e compara (hexadecimal).
Aumenta ou diminui uma unidade do contedo, em binrio, do registro indicado por OP1 e executa a
comparao dos 16 bits deste registro com os 16 bits do registro indicado por OP2. Esta instruo tem 3
entradas:
EXEMPLO DE PROGRAMAO
EXEMPLO DE PROGRAMAO
800
600
800
600
XX
XX
AA
AA
55
55
AA
AA
WAND
AND (bit a bit) do contedo de dois registros de 16 bits.
Se a entrada Habilita estiver acionada executada uma operao lgica AND entre o contedo do registro
OP1 e o contedo do registro OP2. O resultado da operao colocado no registro OP2.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
800
600
800
600
FF
FF
00
00
00
00
00
00
WOR
OR (bit a bit) do contedo de dois registros de 16 bits.
Se a entrada Habilita estiver acionada executada uma operao lgica OR entre o contedo do registro
OP1 e o contedo do registro OP2. O resultado da operao colocado no registro OP2.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
800
600
800
600
55
55
AA
AA
FF
FF
AA
AA
WXOR
XOR (bit a bit) do contedo de dois registros de 16 bits.
Se a entrada Habilita estiver acionada executada uma operao lgica XOR (OR exclusivo) entre o
contedo do registro OP1 e o contedo do registro OP2. O resultado da operao colocado no registro
OP2.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
800
600
800
600
AA
AA
AA
AA
AA
AA
AA
AA
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD, estiver acionado, os estados
internos 100 a 10F so transferidos para os bits do registro 600.
Se os estados internos 100 a 10F estiverem no seguinte formato:
100
101
102
103
104
105
106
107
=
=
=
=
=
=
=
=
ON
OFF
ON
OFF
OFF
OFF
OFF
OFF
108
109
10A
10B
10C
10D
10E
10F
=
=
=
=
=
=
=
=
OFF
OFF
ON
OFF
OFF
OFF
OFF
OFF
WBIT
Movimentao de palavra para estado.
Esta instruo executa a transferncia de 16 bits de um registro de palavras para 16 estados internos
consecutivos. uma instruo de dois operandos onde OP2 indica o primeiro estado interno da seqncia
de 16 e OP1 indica o registro de palavras de onde ir ocorrer a transferncia. A instruo tem ainda uma
entrada Habilita.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD estiver acionado, os bits do
registro 600 sero transferidos para os estados internos (neste caso sadas) 180 a 18F.
Por exemplo, se o contedo do registro 600/601 for FAFBh os estados internos 180 a 18F sero afetados
da seguinte forma:
180
181
182
183
184
185
186
187
=
=
=
=
=
=
=
=
OFF
OFF
ON
OFF
OFF
OFF
OFF
OFF
188
189
18A
18B
18C
18D
18E
18F
=
=
=
=
=
=
=
=
ON
OFF
ON
OFF
OFF
OFF
OFF
OFF
WBITX
Movimentao de palavra para estado no modo indexado com auto incremento ou auto
decremento.
Esta instruo executa a transferncia de 16 bits de um registro de palavras para 16 estados internos
consecutivos. uma instruo de dois operandos onde o OP2 indica o primeiro estado interno de uma
seqncia de 16 estados internos e OP1 indica um registro de palavras ndice, ou seja o contedo de OP1
aponta para os 16 bits a serem transferidos.
Como o incremento ou decremento feito antes da execuo da transferncia, necessrio que o
contedo inicial do ndice seja 2 unidades a menos ou a mais conforme a operao seja de incremento ou
decremento respectivamente.
uma instruo de duas entradas:
AUTO INCREMENTO - quando ativada provoca um decremento automtico; caso contrrio um
incremento automtico;
HABILITA - se acionada executa a funo anterior
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma operao MONOA ou MONOD estiver acionado a instruo
ser executada, caso contrrio a prxima linha de programa ser iniciada.
Suponha que atravs de instrues realizadas anteriormente a estrutura de dados seja:
0 6 0 0
800
801
Se a entrada 100 estiver acionada o contedo do registro ndice 800 passar a ser 5FE.
Importante: um bit 0 corresponde a um E.I. ON e um bit 1 corresponde a um E.I. OFF.
AUTO DECREMENTO
F
0
E
5
AUTO INCREMENTO
800
0
0
2
6
800
Instrues Especiais
JMP
Salto no programa.
Controla a seqncia de execuo do programa de usurio. Caso a entrada esteja acionada a operao
salto executada, caso contrrio a seqncia de programa ser a prxima linha do diagrama de rels.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
No exemplo acima, se a entrada 100 estiver acionada a prxima linha de programa a ser executada ser a
linha 3, que neste caso contm a indicao de desvio (LABEL 00), a qual feita atravs da tecla F8 na
edio do programa usurio, portanto neste ciclo de varredura, a linha 2 no ser executada
permanecendo sem alterao a sada 180.
CALL
Chamada de subrotina.
Controla o desvio de execuo de um programa de usurio, com retorno para a instruo seguinte ao
CALL. Caso a entrada esteja acionada a operao chamada de sub-rotina executada, caso contrrio a
seqncia de programa ser a prxima linha do diagrama de rels. necessria uma instruo RET no
final da sub-rotina para voltar ao ponto seguinte origem do CALL. As chamadas podem ser encadeadas
em at 4 chamadas.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
ADSUB
Aumenta/diminui valor constante de registro binrio.
A instruo soma ou subtrai uma constante de valor K (mximo 12 bits), em binrio, do contedo de um
registro indicado por OP1. composta das seguintes entradas:
EXEMPLO DE PROGRAMAO
Neste exemplo ocorrer o mesmo que no prximo exemplo, porm utilizando a base hexadecimal.
ADSUD
Aumenta/diminui valor constante de registro BCD.
A instruo soma ou subtrai uma constante de valor K (mximo 999), em BCD, do contedo de um registro
indicado por OP1. composta das seguintes entradas:
EXEMPLO DE PROGRAMAO
Se o estado interno 200, derivado de uma instruo MONOA ou MONOD, estiver acionado, estando a
entrada 101 e a entrada 100 desacionadas o contedo do registro 600 ser aumentado de 12 unidades,
agora se a entrada 100 estiver acionada o contedo do registro 600 ser diminudo de 12 unidades. O
contedo do registro 600 ser zerado quando a entrada 101 estiver acionada e o estado interno 200 for
acionado.
ASCB
Converte 8 cdigos ASCII em 8 dgitos BCD ou Hexadecimais correspondentes.
Se a entrada (H)abilita for acionada, o contedo de 8 bytes iniciados no endereo apontado por OP1 ser
convertido em 8 dgitos BCD ou Hexadecimais e o resultado da converso ir para o contedo de 4 bytes
iniciados no endereo apontado por OP2.
A instruo ASCB composta da seguinte entrada:
(H)ABILITA - se acionada executa a converso.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Quando o estado interno 200 for acionado atravs de uma instruo MONOA ou MONOD, os valores
contidos nos endereos 2000 a 2007 sero convertidos para BCD ou Hexadecimal correspondentes e o
resultado da converso ser colocado no contedo dos endereos 2008 a 200B.
Exemplo 1:
DADOS EM ASCII
ENDEREO
VALOR
2000
2001
2002
2003
2004
2005
2006
2007
30
31
32
33
34
35
36
37
DADOS CONVERTIDOS
ENDEREO
VALOR
2008
01
2009
23
200A
45
200B
67
Exemplo 2:
DADOS EM ASCII
ENDEREO
VALOR
2000
2001
2002
2003
2004
2005
2006
2007
30
41
42
43
30
44
45
46
DADOS CONVERTIDOS
ENDEREO
VALOR
2008
0A
2009
BC
200A
0D
200B
EF
PRINT
Envio de dados para o canal serial.
Atravs desta instruo os dados enviados so as palavras contidas entre os operandos OP1 e OP2. A
instruo tem uma entrada Habilita, necessitando tambm para ser ativada que um flags de controle (0FB)
impressora/rede esteja na posio impressora a mais de uma varredura de programa e que o flag de
impressora em uso (0FC) esteja desativado.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Como a transferncia feita diretamente da memria de dados, necessrio que o formato da memria
de dados esteja em ASCII e que OP1 seja menor que OP2.
Para a impresso de:
ATOS
AUTOMAO INDUSTRIAL
Neste formato (centralizado) em uma impressora serial de 32 colunas deve-se carregar o seguinte bloco
de dados :
F00=2020
F0E=4154
F1C=4155
F2A=5354
F02=2020
F10=4F53
F1E=544F
F2C=5249
F04=2020
F12=0A0D
F20=4D41
F2E=414C
F06=2020
F14=0A0D
F22=4341
F08=2020
F16=2020
F24=4F20
F0A=2020
F18=2020
F26=494E
F0C=2020
F1A=2020
F28=4455
O registro F00 foi escolhido como incio do bloco de dados (ver exemplo apresentado).
Deste modo se o estado interno especial 0FB estiver acionado (indicando impressora), quando o estado
interno 200 for acionado atravs de MONOA ou MONOD, o bloco de dados acima ser transferido para o
canal serial do CP utilizado.
FATOR
Ajuste de escala de entrada analgica.
Esta instruo possibilita o ajuste da escala de uma entrada analgica definida pelo parmetro EA. OP1
ser um registro que conter o valor relativo ao zero da escala ajustada (incio da escala ajustada) e OP2
ser um registro que conter o valor relativo ao fundo de escala para a escala ajustada (fim da escala
ajustada). TIPO definir se o valor de leitura da EA ser apresentado em BCD (decimal) ou BIN
(hexadecimal).
A instruo possui duas entradas:
ZERO/FUNDO DE ESCALA - Define se o ajuste ser de ZERO (incio da escala ajustada), quando
desacionado ou de FUNDO de ESCALA (fim da escala ajustada), quando acionado.
(H)ABILITA - permite a execuo do ajuste da escala.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se a entrada 100 (Habilita) for acionada, com a entrada 101(Z/F) desacionada o contedo de OP1(600) e
o valor efetivo real da EA sero os dados para o clculo do fator.
(OP2 - OP1)
= Fator
(Fundo de Escala Real - Zero Real)
A partir desse fator a escala de leitura da entrada analgica 33 estar ajustada para o novo "Zero" (incio
de escala).
Agora se a entrada 100 (Habilita) for acionada, com a entrada 101(Z/F) acionada, o contedo de OP2(602)
e o valor efetivo real da EA sero os dados para o clculo do fator.
(OP2 - OP1)
= Fator
(Fundo de Escala Real - Zero Real)
A partir desse fator a escala da entrada analgica 33 estar ajustada para o novo valor de FUNDO de
ESCALA (final de escala).
Observao: Se o contedo de OP2 for menor que o contedo de OP1, o efetivo da EA ficar com o valor
fixo 9999 para a escala em decimal e FFFF para a escala em hexadecimal. O mesmo acontece com o
valor Zero Real > Fundo de escala Real.
................................Escala Ajustada...............................
0000 (offset)
1750 (fundo de escala)
CTCPU
Contador rpido CPU.
Esta instruo faz a comparao do efetivo do contador rpido presente na CPU com o contedo de um
registro (OP1). Pode-se escolher que tipo de comparao ser executada (efetivo >, < ou = ao contedo
de OP1) e quando o resultado da comparao for verdadeiro ser acionado um nico estado interno
(OP2) em cada bloco, escolhido de 180 a 187.
No mesmo programa usurio s poder haver oito instrues CTCPU, das quais somente uma habilitada
por vez. O estado interno 3FF quando acionado indica valor "negativo" no efetivo do contador.
A instruo possui duas entradas:
RESET - quando ativada permite o reset do efetivo do contador rpido presente na CPU.
HABILITA - quando acionada a instruo executada.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Pulsos de Encoder
900
1000
Quando a entrada 100 for acionada, o estado interno 200 tambm ser acionado durante uma varredura
(atravs da instruo MONOA), deste modo o efetivo do contador ser resetado. Na prxima varredura a
sada 180 ser acionada e assim permanecer enquanto o efetivo for menor que o contedo do registro
600. Com o desacionamento da sada 180 ocorrer a habilitao da segunda instruo CTCPU e da
mesma forma a sada 181 ficar acionada at que o efetivo do contador fique com um valor igual ou
superior ao contedo do registro 700.
CCS
Esta instruo calcula o CHECK SUM (OU EXCLUSIVO) de todos os bytes que estiverem dentro de
um intervalo apontado por OP1 e OP2.
O resultado da operao colocado no registro OP3 no formato 00XX on XX o byte de CHECK SUM.
SMBOLO EM DIAGRAMA DE RELS
Onde:
EXEMPLO DE PROGRAMAO
721
34
722
56
723
78
12 = 0001 0010
34 = 0011 0100
XOR= 26 = 0010 0110
70 = 0111 0000
78 = 0111 1000
XOR= 08 = 0000 1000
LDIA
Atualiza canal de entrada analgica.
uma instruo de uma nica entrada (habilita). A instruo atualiza o canal de entrada analgica
selecionado. Onde OP1 define o canal a ser atualizado.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
PID
Calcula PID.
Esta instruo contm trs operandos, uma entrada Habilita e uma de Reset para carregar o valor inicial
da somatria do erro.
Quando a entrada Habilita (H) acionada e a entrada Reset (R) estiver acionada, o valor inicial da
somatria do erro transferido para a regio de parmetros e efetuado o clculo do PID (deve ser
utilizado um MONOA na entrada Reset (R), caso contrrio o valor inicial da somatria do erro ser
transferido para a regio de parmetros toda varredura). Se a entrada Habilita (H) acionada e a entrada
Reset (R) estiver desacionada, efetuado apenas o clculo do PID.
A instruo PID segue a seguinte equao: S = P + I + D
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Onde:
OP1 Varivel de entrada (efetivo) (0 9999)
OP2 Ponteiro do bloco de dados
OP2
OP2+02
OP2+04
OP2+06
OP2+08
OP2+0A
OP2+0C
OP2+0E
OP2+10
OP2+12
OP2+14
OP2+16
OP2+18
OP2+1A
OP2+1C
OP2+CE
- Set point
(0 9999)
- Banda
(0 255)
- Kp (ganho proporcional)
(0 100%)
- Ki (ganho integral)
(4 250 rep/min)
- Kd (ganho derivativo)
(0 25,0 min.)
- RESERVADO
- Valor mnimo da sada
(0 1000)
- Valor mximo da sada
(0 1000)
- Tempo
(2 25,0 seg.)
- Estado interno de aquecimento
- Valor inicial somatria do erro (0 9999)
- RESERVADO
- RESERVADO
- RESERVADO
- RESERVADO
- RESERVADO
OUTIS
Atualiza canal de sada analgica.
uma instruo de uma nica entrada (habilita). A instruo atualiza o canal de sada analgica
selecionado. Onde OP1 define o canal a ser atualizado.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
SCL
Gera uma sada linear em relao a entrada.
Esta instruo necessita da entrada de quatro valores no intervalo de 0 e 9999. Os parmetros de entrada
so:
x0 = valor inicial do ponto x
y0 = valor inicial do ponto y
x1 = valor final do ponto x
y1 = valor final do ponto y
A frmula para converso da entrada :
y = mx + b
onde:
y = sada
m = fator de escalonamento (y1 - y0) / (x1 - x0)
x = entrada
b = offset (b = y1 - mx1)
O valor de "m" deve estar entre -99,990 a 99,990. Caso o valor calculado exceda os limites, ser ligado o
estado interno 0FFH indicando a ocorrncia do erro. Se a entrada Habilita estiver acionada e a entrada
y/m estiver acionada, ser feito o clculo do valor de m, caso a entrada y/m estiver desacionada ento
ser feito o clculo de y.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
No necessrio que OP1, OP2 e OP3 estejam na mesma pgina. So RESERVADOS 16 bytes a partir
do endereo apontado em OP1.
Importante: Os valores apontados a partir de OP1 devem estar na mesma pgina.
Conjunto de Instrues DWARE / Manual rev. 1.80 / Fevereiro- 2005 Pgina 81
Valor de x0
Valor de y0
Valor de x1
Valor de y1
RESERVADO
RESERVADO
RESERVADO
RESERVADO
Exemplo:
800
802
804
806
808
80A
80C
80E
350
y1
0000
0010
0500
0350
RESERVADO
RESERVADO
RESERVADO
RESERVADO
10
y0
0
x0
800
802
804
806
808
80A
80C
80E
0500
0350
1000
0000
RESERVADO
RESERVADO
RESERVADO
RESERVADO
500
x1
350
y0
0
y1
500
x0
1000
x1
A instruo define limites para o valor de f(x), quando a entrada L estiver habilitada. O limite ser obtido
atravs dos prprios valores de y0 y1, fornecidos pelo usurio, garantindo assim com que os valores de
f(x) estejam sempre dentro dos limites dados por y0 y1 .
Exemplo: Para X crescente, se o valor de Y for menor do que Y0 ento a funo assumir o valor de Y
igual a Y0 e sendo Y maior que Y1 a funo assumir Y igual a Y1.
350
Y1
120
Y0
500
X0
1000
X1
SCL2G
Gera uma parbola.
A instruo SCL2G utilizada para gerar rampas de acelerao e desacelerao. Estas rampas seguem
uma equao do segundo grau. Esta instruo possui trs operandos, os quais so descritos a seguir:
SMBOLO EM DIAGRAMA DE RELS
OP1
EXEMPLO DE PROGRAMAO
OP1
- Min Y ra (0 - 0999)
OP1 + 2 - Min Y rd (0 - 0999)
OP1 + 4 - Max Y (0 - 0999)
OP1 + 6 - Max X (00065536)
OP1 + 10 - Ra (0010 - 4999)
OP1 + 12 - Rd (0010 - 4999)
OBS: Min Y ra e Min Y rd devem ser menores que Max Y
Max X deve ser maior que Ra + Rd
OP2 - Valor da entrada.
OP3 - Valor da sada.
K - Entrada que habilita o clculo do fator de ajuste da parbola.
H - Entrada que habilita a instruo.
O grfico abaixo demonstra o funcionamento da instruo.
Ymax
Ymin ra
Ymin rd
Ra
Rd
X max
Y min ra
Y min rd
Y mx
X max
Ra
Rd
Y
2,78
1,00
0,00
X
200
5500
500
6000
Onde:
800
802
804
806
80A
80C
0100
0000
0278
00006000
0200
0500
Y min ra
Y min rd
Y max
X max
Ra
Rd
1,00 V
0,00 V
2,78 V
6000
200
500
820
00000149
824
0532
149
TXPR
A instruo TXPR utilizada para carregar blocos de impresso.
Em aplicaes onde h uma grande variedade de mensagens a serem impressas, h um gasto excessivo
de programa de usurio e de registros para guardar os textos. A funo da instruo TXPR poder
chamar automaticamente textos previamente construdos pelo usurio para a regio de registros os quais
sero impressos atravs da instruo PRINT.
A formatao do texto como por exemplo a incluso de campos, fica a cargo do usurio para que haja
maior liberdade de opes.
Mnemnico para lista de instrues: TXPR OP1 OP2
SMBOLO EM DIAGRAMA DE RELS
Onde:
EXEMPLO DE PROGRAMAO
Os textos sero construdos no menu configurao submenu PRINT. O usurio poder criar at 16
textos para serem manipulados, com um tamanho mximo de 256 caracteres.
No menu do print existe a configurao, de parmetros bsicos do texto:
Nmero de colunas
CR no final da linha
LF no final da linha
:
:
:
xx
sim
no
(mximo)
(sim/no)
(sim/no)
Observao: para otimizao das tabelas o fim da tabela ser sinalizado com o caracter FF (default do
buffer).
No exemplo apresentado, se o estado interno 200 for acionado, atravs de uma instruo MONOA ou
MONOD, os caracteres referentes a tabela 01 sero carregados a partir do endereo 0F00.
Observao: Onmero de caracteres carregados depender do tamanho da tabela criada no menu
configurao submenu PRINT.
CEP
Manipulao de um bloco de dados tipo FIFO correspondentes a uma varivel do CP.
Se a entrada Habilita acionada e a entrada R desacionada, ser descartado o ensimo elemento da FIFO
e adicionado o primeiro elemento correspondente ao valor OP1 neste instante. O endereo do primeiro
elemento da FIFO apontado por OP2 e n o numero de elementos da FIFO (mx = 64).
So executadas tambm as seguintes operaes:
Se a entrada Habilita estiver acionada e a entrada R estiver acionada, sero zerados os dados da FIFO.
O clculo do menor valor, do maior valor e da mdia leva em considerao quantos elementos foram
preenchidos desde a ultima zeragem da FIFO.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
AJUST
Esta instruo possibilita o ajuste da escala.
A instruo possui duas entradas:
ZERO/FUNDO DE ESCALA - Define se o ajuste ser de ZERO (incio da escala ajustada), quando
desacionado ou de FUNDO de ESCALA (fim da escala ajustada), quando acionado.
(H)ABILITA - permite a execuo do ajuste da escala.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Onde:
OP1 Valor do Zero e fundo de escala relativo.
OP2 Endereo da varivel de entrada.
OP3 Endereo da varivel de sada
TIPO Define se as variveis de entrada e sada sero apresentadas em BCD (decimal) ou BIN
(hexadecimal).
No exemplo apresentado, se a entrada 100 (Habilita) for acionada, com a entrada 101(Z/F) desacionada o
contedo de OP1(0600) e o valor da varivel de entrada sero os dados para o clculo do fator da escala.
(OP1+2 - OP1)
= Fator
(Fundo de Escala Real - Zero Real)
A partir desse fator a escala da entrada estar ajustada para o novo "Zero" (incio de escala).
Agora se a entrada 100 (Habilita) for acionada, com a entrada 101(Z/F) acionada, o contedo de
OP1+2(602) e o valor da varivel de entrada sero os dados para o clculo do fator.
(OP1+2 - OP1)
= Fator
(Fundo de Escala Real - Zero Real)
A partir desse fator a escala da entrada estar ajustada para o novo valor de FUNDO de ESCALA (final de
escala).
Observao: Se o contedo de OP1+2 for menor que o contedo de OP1, a varivel de sada ficar com
o valor fixo 9999 para a escala em decimal e FFFF para a escala em hexadecimal. O mesmo acontece
com o valor Zero Real > Fundo de escala Real.
FILT
Filtro de amostras.
Classifica um universo entre 3 e 15 amostras de uma varivel de entrada, obtendo como resultado o valor
da amostra central.
O nmero de amostras, apontado por OP3, pode ser escolhido de uma lista.
Se a entrada (H)abilita for acionada, o valor contido no registro apontado por OP1, ser capturado como
nova amostra e substituir a amostra mais antiga. Em seguida ser executada a classificao das
amostras (colocao dos valores das amostras em ordem crescente) e o valor da amostra central, aps a
classificao, ser colocado no contedo do registro apontado por OP2 (varivel de sada do filtro).
A primeira execuo da instruo FILT (aps inicializao do CLP) preenche a pilha de amostras e o valor
da varivel de sada com o primeiro valor lido da varivel de entrada.
O BUFFER de armazenamento das amostras est apontado por OP4 e seu tamanho (em bytes) igual a
2 bytes para o contador da pilha + 2 bytes por amostra, podendo atingir um tamanho mximo de 32 bytes
(contador + 15 amostras).
A instruo FILT composta da seguinte entrada:
(H)ABILITA - se acionada executa a captura de uma amostra, a classificao das amostras e atualiza a
varivel de sada com o valor da amostra central.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Onde:
OP1 = Registro da varivel de entrada do filtro
OP2 = Registro da varivel de sada do filtro
OP3 = Nmero de amostras do filtro
OP4 = Endereo do BUFFER de armazenamento das amostras
Valor
Valor
Varivel de Entrada
N-4
N-3
N-2
103,4
99,8
100,2
99,5
99,8
100,2
Registro
0800
N-1
N
101,8
99,5
Valor
99,5
Aps
classificao
Varivel de Sada
Registro
Valor
0880
100,2
Valor central
101,8
103,4
Amostra
Valor
Valor
N-4
N-3
N-2
N-1
N
99,8
100,2
101,8
99,5
99,8
99,5
99,8
99,8
100,2
101,8
Aps
classificao
Varivel de Sada
Registro
Valor
0880
99,8
Valor central
Observao: O contedo do BUFFER apontado por OP4 no expressa a classificao das amostras, e
para se conhecer a amostra mais antiga ou a recente, h necessidade de clculo juntamente com o
contador da pilha, pois uma amostra no remanejada de sua posio e sim descartada (a mais antiga)
quando uma nova amostra adquirida e colocada em seu lugar (mtodo de pilha circular). O valor do
contador determina o deslocamento a ser somado ao endereo da primeira amostra (OFF-SET) afim de
apontar para o endereo da prxima amostra a ser descartada e atualizada.
MED
Executa a mdia aritmtica de 3 a 125 amostras.
Se a entrada (H)abilita for acionada e a entrada (D)ecimal estiver desacionada, o valor HEXADECIMAL
contido no registro apontado por OP1, ser capturado como nova amostra e substituir a amostra mais
antiga.
Se a entrada (H)abilita for acionada e a entrada (D)ecimal estiver acionada, o valor DECIMAL contido no
registro apontado por OP1, ser capturado como nova amostra e substituir a amostra mais antiga. Em
seguida ser executada a mdia aritmtica do nmero de amostras selecionadas por OP3 e o resultado
ser colocado no contedo do registro apontado por OP2 (varivel de sada).
O resultado da mdia ser dado HEXADECIMAL OU DECIMAL de acordo com a condio da entrada
(D)ecimal. A primeira execuo da instruo MED (aps inicializao do CLP) preenche a pilha de
amostras e o valor da varivel de sada com o primeiro valor lido da varivel de entrada.
O BUFFER de armazenamento das amostras est apontado por OP4 e seu tamanho (em bytes) igual a
2 bytes para o contador da pilha + 4 bytes para o totalizador + 2 bytes por amostra, podendo atingir um
tamanho mximo de 256 bytes (contador + totalizador +125 amostras).
A instruo MED composta das seguintes entradas:
(D)ECIMAL estando esta entrada desacionada, o valor da amostra ser considerado com sendo um
dado HEXADECIMAL e conseqentemente o resultado tambm ser HEXADECIMAL. Estando esta
entrada acionada, o valor da amostra ser considerado com sendo um dado DECIMAL e
conseqentemente o resultado tambm ser DECIMAL.
(H)ABILITA - se acionada executa a captura de uma amostra, a mdia aritmtica do nmero de amostras
declarado e coloca o resultado na varivel de sada.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Onde:
OP1 = Registro da varivel de entrada
OP2 = Registro da varivel de sada
OP3 = Nmero de amostras
OP4 = Endereo do BUFFER de armazenamento das amostras
Amostra
Valor
N-4
N-3
N-2
N-1
N
103,4
99,8
100,2
101,8
99,5
Varivel de Sada
Aps mdia
aritmtica
Registro
Valor
0880
100,9
Resultado
Amostra
Valor
N-4
N-3
N-2
N-1
N
99,8
100,2
101,8
99,5
99,8
Varivel de Sada
Aps mdia
aritmtica
Registro
Valor
0880
100,2
Resultado
RAIZQ
Clculo de raiz quadrada.
Executa o clculo da raiz quadrada de um nmero BCD de at 8 dgitos (00000000 a 99999998),
apontado por OP1, e fornecendo como resultado um nmero BCD de 4 dgitos (0000 a 9999), apontado
por OP2, que correspondente parte inteira do resultado do clculo.
A instruo RAIZQ composta pela seguinte entrada:
HABILITA - Se acionada o clculo executado.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Estando o estado interno 200 for acionado, atravs de uma instruo MONOA OU MONOD, ser
executado o clculo da raiz quadrada do valor contido no endereo 3000 e o resultado ser colocado no
contedo do endereo 3004.
ANTES
Contedo
Registro
em BCD
3000
3004
99000000
XXXX
DEPOIS
Contedo
Registro
em BCD
3000
3004
99000000
9949
O valor obtido 9949 a parte inteira do resultado da raiz quadrada do nmero 99.000.000, e que tambm
pode significar o resultado da raiz quadrada do nmero 99 com 3 casas decimais, ou seja, 9,949. Desta
forma, podemos obter resultados de extrao de raiz quadrada de nmeros entre 01 e 99 com at 3 casas
decimais, ou de maneira geral:
- A extrao da raiz quadrada de nmeros entre 01 e 99, com seis zeros direita (01000000 a 99000000),
resultar em valores entre 1 e 9 seguido de trs dgitos direita que representam trs casas decimais do
resultado;
- A extrao da raiz quadrada de nmeros entre 0001 e 9999, com quatro zeros direita (00010000 a
99990000), resultar em valores entre 01 e 99 seguido de dois dgitos direita que representam duas
casas decimais do resultado;
- A extrao da raiz quadrada de nmeros entre 000001 e 999999 com dois zeros direita (00000100 a
99999900) resultar em valores entre 001 e 999 seguido de um dgito direita que representa uma casa
decimal do resultado.
TEMPO
DESABILITADO
ADSUB
AND
6,4
1,4
ANLD
INSTRUO
TEMPO
HABILITADO
1,3
BCDAS
BMOVX (um valor
BMOVX (cada valor))
CMP
CONV (BCD/BIN)
CONV (BIN/BCD)
4,4
4,9
+ 0,8
4,9
7,8
9,0
2,3
2,1
CALL
4,3
2,3
2,5
3,9
3,9
CNT
4,2
4,1
DIV (MX)
26,2
2,6
DIVB (MX)
16,5
2,7
1,0
LD
1,3
LDI
2,3
LDX
2,2
MONOA
MOV
MOVX
MULTB (MX)
1,8
3,5
5,8
7,5
11,0
404,0
3,4
5,9
8,8
1,5
7,0
8,8
1,8
3,3
47,5
1,0
2,7
FIM
DIVBL (MIN)
DIVBL (MX)
JMP
LDATA (BCD)
LDATA (ASCII)
LDN
LTIME (BCD)
LTIME (ASCII)
MONOD
MOVK
MULT (MX)
NOP
OR
1,4
ORN
1,5
OUTI
1,4
OUTN
1,5
OUTR
PRINT
4,9
7,0
SFR
SHIFN
SUB
SUM
TAB (um valor)
TAB (cada valor)
UPDB
UPDD
VTAB (um valor)
VTAB (cada valor)
WBIT
WLDX
WOR
2,5
3,9
2,6
2,3
6,8
1,5
4,8
+ 0,8
9,8
TEMPO
DESABILITADO
ADSUD
ANDN
ATAB (um valor)
ATAB (cada valor)
BITW
SDATA
5,3
INSTRUO
ORLD
1,3
OUT
1,4
OUTIN
OUTX
RET
2,2
4,3
5,3
2,0
2,5
2,4
3,4
3,4
3,4
3,4
2,6
2,6
2,3
SETR (SETADO)
SETR (RESETADO)
SETR (ch. abertas)
4,4
4,4
3,9
6,6
3,7
2,7
2,6
3,1
SHIFB
STIME
SUBB
SUMB
4,7
4,4
5,4
4,8
3,7
2,1
2,7
2,6
TMR
4,2
4,1
5,0
5,1
2,1
UPDBC
UPDDC
8,2
8,4
5,3
5,3
WAND
3,9
2,5
2,5
3,9
2,6
WBITX
WNOT
WXOR
12,2
3,6
3,9
3,9
2,5
2,5
4,4
2,1
8,8
4,9
5,5
5,1
3,4
+ 0,6
6,0
6,1
4,6
+ 0,8
9,8
5,8
3,7
GAV
Gaveta ou arquivo de receitas.
A utilizao desta pseudo-instruo indicada para aplicaes onde existe a necessidade de se carregar
um conjunto de parmetros diferentes vrias vezes em uma mesma mquina ou processo.
Esta pseudo-instruo realiza o armazenamento ou a recuperao de at oito blocos de dados chamados
de segmentos. Cada conjunto de oito segmentos formar o que chamamos de "gaveta".
O contedo do registro OP00 indicar qual gaveta, dentre as gavetas possveis e dependendo da
quantidade de memria disponvel, ser armazenada ou recuperada.
O registro OP01 indica o incio do 1o segmento e o registro OP02 indica o final do 1o segmento, da
mesma forma para os outros segmentos.
Depois da definio dos segmentos, ser calculado o nmero mximo de gavetas que o usurio poder
ter e esse nmero ser mostrado na frente de No GAVETAS.
A pseudo-instruo gaveta possui duas entradas:
HABILITA - quando acionada executa a pseudo-instruo.
RECUPERA/ARMAZENA - possibilita a recuperao ou o armazenamento de uma determinada gaveta.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Se o estado interno 200 for acionado, atravs de uma instruo MONOA ou MONOD, e estando a entrada
101 desacionada os oito segmentos escolhidos sero armazenados na gaveta cujo nmero ser definido
pelo contedo do registro 800.
Para recuperar a mesma gaveta deve-se anteriormente carregar o nmero desta gaveta no registro 800,
acionar a entrada 101 e atravs de uma instruo MONOA ou MONOD acionar o estado interno 200.
Conjunto de Instrues DWARE / Manual rev. 1.80 / Fevereiro- 2005 - Pgina 95
TMRX
Temporizador de 1 ms.
Esta pseudo-instruo foi criada para que se possa monitorar on-line o funcionamento dos temporizadores
(1 e 2) de 1ms, sendo possvel observar o valor do preset, o valor do efetivo e o
acionamento/desacionamento do estado interno habilita e da sada associada. Alm disso nas listagens
de programas usurio que utilizarem esses temporizadores, aparecer um bloco semelhante ao bloco das
instrues convencionais, facilitando a anlise e a compreenso da lgica desenvolvida.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
Onde:
X - indicar qual temporizador (1 ou 2) ser utilizado.
YYY - indicar o registro referente ao preset.
ZZZ - indicar o registro referente ao efetivo.
Observao: O endereamento YYY, ZZZ, E.I. Hab. e sada, ser automaticamente colocado assim que a
pseudo-instruo for editada.
Assim que o estado interno 020h for acionado a sada 186 ficar ativa e o temporizador executar a
contagem de tempo at atingir o valor definido no registro 540h e ento desacionar a sada 186.
CAV
Contador de alta velocidade (CPU).
Esta pseudo-instruo foi criada para que se possa monitorar on-line o funcionamento do contador de alta
velocidade (CPU), podendo-se observar o valor do set-point, o valor do efetivo, o valor inicial e o
acionamento/desacionamento sadas associadas. Alm disso nas listagens de programas usurio que
utilizarem esse contador, aparecer um bloco semelhante ao bloco das instrues convencionais, deste
modo facilitando a anlise e a compreenso da lgica desenvolvida.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
SYNC
Sincronismo.
Esta pseudo-instruo indicada para sincronizar estados internos, acionados por dispositivos que
utilizam o canal de comunicao serial ou acionados a partir de sinais gerados por interrupes de teclado
ou timers. O nmero mximo de instrues SYNC que podem existir no mesmo programa usurio de
oito instrues. Depois de escolhido o estado interno OP1, cada nova instruo includa no mesmo
programa usurio j ter os estados internos automaticamente escolhidos a partir de OP1+1.
SMBOLO EM DIAGRAMA DE RELS
EXEMPLO DE PROGRAMAO
O estado interno definido por OP1 ser o estado interno de origem, portanto no sincronizado com a
varredura e OP1+1 ser um estado interno consecutivo a OP1 e representa o estado interno que ser
acionado apenas durante uma varredura.
Os estados internos OP1 e OP1+1 sero desacionados pelo Firmware simultaneamente ao final de uma
varredura.
Observao: em um programa usurio pode-se utilizar at oito pseudo-instrues SYNC, e depois que
OP1 for definido os estados sincronizados sero automaticamente definidos na seqncia a partir de OP1,
por exemplo: OP1+1, OP1+2, OP1+3,...
Esquema da relao entre OP1, OP1+1 e os ciclos de varredura: