Vous êtes sur la page 1sur 56

CURSO BÁSICO DE SLC-500 - ALLEN BRADLEY

CURSO BÁSICO DE SLC-500 - ALLEN BRADLEY Período:2012.1 Marcos Ferreira de Lima E-mail: marcoslima@unp.edu.br

Período:2012.1

Marcos Ferreira de Lima E-mail: marcoslima@unp.edu.br

Curso básico do SLC 500 da Rockwell

2

Sumário

1

Instruções de Bit

4

1.0

Generalidades

4

1.1

Instruções Examinar

4

1.1.1

Examinar se Energizado (XIC)

4

1.1.2

Examinar se Desenergizado (XIO)

5

1.2

Instruções Energizar/Desenergizar Saída

5

1.2.1

Energizar Saída (OTE)

5

1.2.2

Energizar/Desenergizar Saída com Retenção (OTL / OTU)

6

2

Instruções de Temporizador e Contador

7

2.0

Generalidades

7

2.1

Descrição

7

2.2

Instruções de Temporizador

8

2.2.1

Temporizador na Energização (TON)

9

2.2.2

Temporizador na Desenergização (TOF)

10

2.2.3

Temporizador Retentivo (RTO)

11

2.3

Instruções de Contador Crescente e Decrescente (CTU e CTD)

13

2.4

Instrução de Rearme de Temporizador/Contador (RES)

15

3

Instruções de Comparação

15

3.0

Generalidades

15

3.1

Igual a (EQU)

16

3.2

Difernte (NEQ)

16

3.3

Menor que (LES)

16

3.4

Menor ou igual a (LEQ)

17

3.5

Maior Que (GTR)

17

3.6

Maior ou Igual a (GEQ)

18

3.7

Igual Mascarada (MEQ)

18

3.8

Teste Limite (LIM)

19

4

Instruções Matemáticas

20

4.0

Generalidades

20

4.1

Adição (ADD)

21

4.2

Subtração (SUB)

22

4.3

Multiplicação (MUL)

22

4.4

Divisão (DIV)

23

4.5

Zeramento (CLR)

24

4.6

Conversão para BCD (TOD)

24

4.7

Conversão de BCD (FRD)

25

4.8

Decodificação (DCD)

26

4.9

Raiz Quadrada (SQR)

27

4.10

Escala (SCL)

28

5

Instruções Lógicas e de Movimentação

30

5.0

Generalidades

30

Curso básico do SLC 500 da Rockwell

3

5.2

Movimento com Máscara (MVM)

31

5.3

E (AND)

33

5.4

Ou (OR)

34

5.5

Ou Exclusivo (XOR)

34

5.6

Complementação (NOT)

35

6

Instruções de Cópia

36

6.0

Generalidades

36

6.1

Cópia de Arquivo (COP)

36

7

Instruções de Seqüenciador

37

7.0

Generalidades

37

7.1

Instruções de Saída e comparação de Seqüenciador (SQO e SQC)

38

7.1.1

Parâmetros das Instruções SQO e SQC

38

7.1.2

Operação da Instrução SQO

40

7.1.3

Operação da Instrução SQC

41

7.2

Instrução de Carga de Seqüenciador (SQL)

43

7.2.1

Parâmetros da Instrução SQL

43

7.2.2

Operação da Instrução SQL

44

8

Instruções de Controle

45

8.0

Generalidades

45

8.1

Salto para Label (JPM)

45

8.2

Label (LBL)

46

8.3

Salto para Subrotina (JSR)

47

8.4

Subrotina (SBR)

48

8.5

Retorno de Subrotina (RET)

48

9

Conceitos básicos de eletrônica digital

49

9.0

Portas Lógicas

49

9.1

Álgebra de Boole

51

9.2

Mapa de Karnaugh

53

9.3

Exercícios

54

Curso básico do SLC 500 da Rockwell

4

Instruções de Bit

1

1.0 Generalidades

As instruções de Bit são as seguintes:

Examinar se Energizado (XIC)

Examinar se Desenergizado (XIO)

Energizar Saída (OTE)

Energizar Saída com Retenção (OTL)

Desenergizar Saída com Retenção (OTU)

Essas instruções são utilizadas em um único bit de dado, o qual pode ser endereçado sempre que necessário. Durante a operação, o controlador pode energizar ou desenergizar o bit, baseado na continuidade lógica das linhas do programa de aplicação.

Os seguintes arquivos de dados utilizam as instruções de bit:

Arquivos de entrada e saída. As instruções representam entradas e saídas externas;

Arquivo de status;

Arquivo de bit. As instruções são utilizadas para a lógica de relé interna do programa;

Arquivos de temporizador, contador e controle. As instruções utilizam os vários bits de controle;

Arquivo de inteiro. As instruções são utilizadas (a nível de bit) à medida que são necessárias ao programa de aplicação.

1.1 Instruções Examinar

Examinar se Energizado (XIC);

Examinar se Desenergizado (XIO).

controlador verifique o estado

energizado/desenergizado de um endereço específico de bit na memória. “um” ou “zero”,

armazenado no endereço do bit, pode representar o estado real energizado ou desenergizado de um único dispositivo de E/S.

Essas

instruções

permitem

que

o

1.1.1 Examinar se Energizado (XIC) (EXAMINE IF CLOSE)

o 1.1.1 Examinar se Energizado (XIC) ( EXAMINE IF CLOSE) Figura 1.1 Formato da Instrução XIC

Figura 1.1 Formato da Instrução XIC

Quando um dispositivo de entrada fecha seu circuito, o terminal de entrada conectado ao mesmo indica um estado energizado, que é refletido no bit correspondente do arquivo de entrada. Quando o controlador localiza uma instrução com o mesmo endereço, ele determina que o dispositivo de entrada está energizado (1), ou fechado, e ajusta a lógica da instrução para verdadeira.

Curso básico do SLC 500 da Rockwell

5

Quando o dispositivo de entrada não mais fecha seu circuito, o controlador verifica que o bit está desenergizado (0) e ajusta a lógica dessa instrução para falsa (tabela 1.A).

Estado do Bit

Instrução XIC

0

Falsa

1

Verdadeira

Tabela 1. A Lógica da Instrução XIC

1.1.2 Examinar se Desenergizado (XIO) (EXAMINE IF OPEN)

1.1.2 Examinar se Desenergizado (XIO) ( EXAMINE IF OPEN) Figura 1.2 Formato da Instrução XIO Quando

Figura 1.2 Formato da Instrução XIO

Quando um dispositivo de entrada não é acionado o terminal de entrada a ele indica um estado desenergizado, que é refletido no bit correspondente do arquivo de entrada. Ao localizar uma instrução XIO com o mesmo endereço, o controlador determina que a entrada está desenergizada (0) e ajusta a lógica da instrução para verdadeira. Quando o dispositivo é acionado, o controlador ajusta a lógica dessa instrução para falsa (tabela

1.B).

Estado do Bit

Instrução XIO

0

Verdadeira

1

Falsa

Tabela 1.B Lógica da instrução XIO

1.2 Instruções Energizar/Desenergizar saída

Energizar Saída (OTE);

Energizar Saída com Retenção (OTL);

Desenergizar Saída com Retenção (OTU).

As instruções Energizar/Desenergizar Saída são empregadas para energizar ou desenergizar um bit específico.

1.2.1 Energizar Saída (OTE) (OUTPUT ENERGIZE)

específico. 1.2.1 Energizar Saída (OTE) (OUTPUT ENERGIZE) Figura 1.3 Formato da instrução OTE O estado de

Figura 1.3 Formato da instrução OTE

O estado de um terminal de saída é indicado através de um bit específico do arquivo de saída. Ao ser estabelecida uma lógica verdadeira na linha de programa que contém a instrução OTE, o controlador energiza o respectivo bit (1), fazendo com que o terminal de saída seja energizado e o dispositivo de saída conectado a este terminal seja

Curso básico do SLC 500 da Rockwell

6

acionado. Caso essa lógica verdadeira não seja estabelecida, o controlador desenergiza o bit (0), a instrução OTE é desabilitada e o dispositivo de saída associado é desenergizado.

A instrução OTE é não-retentiva e a mesma é desabilitada quando:

O controlador for alterado para o modo Operação ou Teste, ou quando a alimentação é restaurada;

Ocorrer um erro grave;

A instrução OTE for programada dentro de uma zona MCR falsa.

Deve-se observar que uma instrução OTE habilitada em uma área de subrotina permanecerá habilitada até que haja uma nova varredura na área de subrotina.

1.2.2 Energizar Saída com Retenção (OTL) e Desenergizar Saída com Retenção (OTU)

-( L )-

-( U )-

Figura 1.4 Formato das Instruções OTL e OTU

Essas instruções são instruções de saída retentiva e, geralmente, são utilizadas aos pares para qualquer bit da tabela de dados controlado pelas mesmas. Também podem ser empregadas para inicializar valores de dados a nível de bit.

Quando se determina um endereço para a instrução OTL que corresponde ao endereço de um terminal do módulo de saída, o dispositivo de saída conectado a este terminal será energizado assim que o bit na memória for energizado. O estado habilitado deste bit é determinado pela lógica da linha anterior às instruções OTL e OTU. Caso a lógica verdadeira seja estabelecida com instruções de entrada, a instrução OTL é habilitada. Se a mesma não for estabelecida e o bit correspondente na memória não tiver sido energizado previamente, a instrução OTL não será habilitada. Entretanto, se

a lógica verdadeira foi estabelecida previamente, o bit na memória será retido energizado

e assim permanecerá, mesmo após as condições da linha terem se tornado falsas. Uma instrução OTU com o mesmo endereço da instrução OTL rearma (desabilita ou desenergiza) o bit na memória. Quando uma lógica verdadeira é estabelecida, a instrução OTU desenergiza seu bit correspondente na memória. Quando o controlador passa do modo Operação para Programação, ou na queda de alimentação (desde que haja uma bateria de back-up instalada ou um capacitor), a última instrução verdadeira de Energizar ou Desenergizar Saída com Retenção contínua a controlar o bit na memória. O dispositivo da saída energizada com retenção é energizado mesmo que a condição da linha, que controla a instrução de energizar saída com retenção, passe a falsa. Ao retornar ao modo Operação ou no caso da alimentação ser restaurada, o controlador inicialmente varre todas as linhas como se fossem falsas. As instruções retentivas mantém o seu estado. O programa de aplicação pode examinar um bit controlado pelas instruções OTL e OTU sempre que necessário.

Curso básico do SLC 500 da Rockwell

7

Instruções de Temporizador e Contador

2.0 Generalidades

2

As instruções de temporizador e contador e seus mnemônicos incluem:

Temporizador na Energização (TON): conta intervalos de base de tempo quando a instrução é verdadeira. A base de tempo é selecionada entre 0,01s ou 1,0s para os Controladores SLC-5/02, e fixada em 0,01s para os Controladores SLC-5/01;

Temporizador na Desenergização (TOF): conta intervalos de base de tempo quando a instrução é falsa. A base de tempo é selecionada entre 0,01s ou 1,0s para os Controladores SLC-5/02, e fixada em 0,01s para os Controladores SLC-5/01;

Temporizador Retentivo (RTO): este temporizador retém o seu valor acumulado quando a instrução se torna falsa;

Contador Crescente (CTU): a contagem é incrementada a cada transição de falso para verdadeiro;

Contador Decrescente (CTD): a contagem é decrementada a cada transição de falso para verdadeiro;

Rearme de Temporizador/Contador (RES): esta instrução zera o valor acumulado e os bits de estado de um contador ou temporizador, sendo que a mesma não pode ser utilizada com uma instrução TOF.

2.1

Descrição

As instruções de Temporizador e Contador requerem três palavras do arquivo de dados. A palavra 0 é a palavra de controle que contém os bits de estado da instrução. A palavra 1 é o valor pré-selecionado. A palavra 2 corresponde ao valor acumulado.

Para os temporizadores, o valor acumulado é o número atual de intervalos temporizados que transcorreram; para contadores, é o número de transições de falso para verdadeiro que ocorreram. O valor pré-selecionado é o valor inserido para controlar a temporização ou contagem da instrução.

Quando o valor acumulado for igual ou maior que o valor pré-selecionado, o bit de estado será energizado. Pode-se utilizar este bit para controlar um dispositivo de saída.

Os valores pré-selecionado e acumulado para temporizadores variam de 0 a +32.767 e os valores para contadores variam de -32.768 a +32.767.

Se o valor acumulado ou pré-selecionado do temporizador for um número negativo, ocorrerá um erro de run-time, causando falha no controlador.

Curso básico do SLC 500 da Rockwell

8

2.2 Instruções de Temporizador

As instruções de temporizador são as seguintes:

Temporizador na Energização (TON);

Temporizador na Desenergização (TOF);

Temporizador Retentivo (RTO).

Bits de Estado

Os dados da palavra de controle para as instruções de Temporizador incluem (figura 2.1):

Três bits de estado do temporizador

Oito bits utilizados internamente para precisão da instrução de Temporizador (não é possível acessar esses bits a partir do dispositivo de programação).

15

14

13

EN TT

DN

Uso interno

Valor Pré Selecionado

Valor Acumulado

Figura 2.1 Palavras Utilizadas na Instrução de Temporizador

EN = Bit de habilitação do temporizador TT = Bit de temporização DN = Bit de executado do temporizador

Base de Tempo

Para os Controladores SLC-5/02 ou posteriores, deve-se selecionar uma das bases de tempo disponíveis:

1,0 segundo;

0,01 segundo (10 milissegundos).

No caso do controlador SLC-5/01, a base de tempo é fixa em 0,01 segundo.

Precisão

A precisão da temporização está entre -0,01 a 0 segundos com uma varredura de

programa de até 2,5 segundos.

A precisão aqui descrita se refere apenas à duração de tempo entre o momento que

uma instrução de Temporizador é habilitada (bit de habilitação é energizado) e o momento

que o intervalo temporizado é completado (bit de executado é energizado). A imprecisão causada pela varredura do programa pode ser maior que a base de tempo do temporizador. Deve-se também considerar o tempo necessário para energizar o dispositivo de saída. Os resultados do temporizador podem ser imprecisos se as instruções JMP/LBL ou JSR/SBR fizerem com que o programa pule a linha que contém a instrução de temporizador, enquanto o temporizador está registrando o tempo. Se a linha ficar 2,5 segundos sem ser varrida, não haverá perda de tempo; porém, se o tempo exceder 2,5 segundos, um erro de temporização não detectável irá ocorrer.

Curso básico do SLC 500 da Rockwell

9

2.2.1 Temporizador na Energização (TON)

TON TIMER ON DELAY Timer T4:0 Timer Base 0.01 Preset 900 0 Accum
TON
TIMER ON DELAY
Timer
T4:0
Timer Base
0.01
Preset
900
0
Accum

[EN]

Timer T4:0 Timer Base 0.01 Preset 900 0 Accum [ EN ] [ DN ] Figura

[DN]

Figura 2.2 Formato da instrução TON

Condição

On

de entrada

off

Bit

On

EN

off

Bit

On

TT

off

Bit

On

DN

off

Tempo

acumulado

On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.3 Diagrama de tempo
On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.3 Diagrama de tempo
On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.3 Diagrama de tempo
On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.3 Diagrama de tempo
On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.3 Diagrama de tempo
On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.3 Diagrama de tempo
On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.3 Diagrama de tempo
9s 3s
9s
3s

Figura 2.3 Diagrama de tempo da instrução TON

A instrução de Temporizador na Energização (TON) inicia a contagem dos intervalos da base de tempo quando a condição da linha se torna verdadeira. À medida que a condição da linha permanece verdadeira, o temporizador incrementa seu valor acumulado (ACC) a cada varredura até atingir o valor pré-selecionado (PRE). O valor acumulado é zerado quando a condição da linha for falsa independente do temporizador ter ou não completado a temporização.

O bit de executado (DN) é energizado quando o valor acumulado é igual ao valor

pré-selecionado e é desenergizado quando a condição da linha se torna falsa.

O bit de temporizado (TT) do temporizador é energizado quando a condição da linha

é verdadeira e o valor acumulado é menor que o valor pré-selecionado. Quando o bit de

executado é energizado ou a condição da linha é falsa, esse bit é desenergizado.

O bit de habilitação (EN) do temporizador é energizado quando a condição da linha

é verdadeira. Caso contrário, esse bit é desenergizado.

Se o controlador for passado do modo Operação ou Teste para Programação, ou então, se a alimentação for perdida enquanto uma instrução TON está contando o tempo sem ainda ter atingido o valor pré-selecionado, ocorre o seguinte:

Os bits de habilitação e temporizado permanecem energizados;

O valor acumulado permanece o mesmo.

Curso básico do SLC 500 da Rockwell

10

Quando o controlador retorna ao modo Operação ou Teste, pode acontecer o seguinte:

Se a linha for verdadeira, o valor acumulado é zerado e os bits de habilitação e temporizado permanecem energizados.

Se a linha for falsa, o valor acumulado é zerado e os bits de controle são desenergizados.

2.2.2 Temporizador na Desenergização (TOF)

TOF TIMER OFF DELAY Timer T4:0 0.01 Timer Base 900 Preset 0 Accum
TOF
TIMER OFF DELAY
Timer
T4:0
0.01
Timer Base
900
Preset
0
Accum
[EN] [DN]
[EN]
[DN]

Figura 2.4 Formato da Instrução TOF

Condição

On

de entrada

off

Bit

On

EN

off

Bit

On

TT

off

Bit

On

DN

off

Tempo

acumulado

On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.5 Diagrama de tempo
On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.5 Diagrama de tempo
On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.5 Diagrama de tempo
On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.5 Diagrama de tempo
On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.5 Diagrama de tempo
On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.5 Diagrama de tempo
On TT off Bit On DN off Tempo acumulado 9s 3s Figura 2.5 Diagrama de tempo
9s 3s
9s
3s

Figura 2.5 Diagrama de tempo da instrução TOF

A instrução de Temporizador na Desenergização (TOF) inicia a contagem dos

intervalos da base de tempo quando a linha realiza uma transição de verdadeira para falsa. À medida que a condição da linha permanece falsa, o temporizador incrementa o seu valor acumulado (ACC) a cada varredura até atingir o valor pré-selecionado (PRE). O valor

acumulado é zerado quando a condição da linha for verdadeira, independente do temporizador ter realizado a temporização.

O bit de executado (DN) é desenergizado quando o valor acumulado é igual ao

valor pré-selecionado e o mesmo é energizado quando a condição da linha se torna verdadeira.

O bit de temporizado (TT) é energizado quando a condição da linha é falsa e o valor acumulado é inferior ao valor pré-selecionado. Esse bit é desenergizado quando a condição da linha for verdadeira ou quando o bit de executado for desenergizado.

Curso básico do SLC 500 da Rockwell

11

O bit de habilitação (EN) é energizado quando a condição da linha é verdadeira.

Caso contrário, esse bit é desenergizado.

Se o controlador for passado do modo Teste ou Operação para Programação, ou então, se a alimentação for perdida enquanto uma instrução TOF estiver contando o tempo, sem ter atingido o valor pré-selecionado, ocorre o seguinte:

O bit de habilitação permanece desenergizado;

Os bits de executado e temporizado permanecem energizados;

O valor acumulado permanece o mesmo.

Quando o controlador retorna ao modo Operação ou Teste, pode acontecer o seguinte:

se a linha for verdadeira, o valor acumulado é zerado,

bit de temporizado é

desenergizado, o bit de habilitação é energizado e o bit de executado permanece energizado.

o

se a linha for falsa, o valor acumulado é ajustado conforme especificado no valor pré- selecionado e os bits de controle serão desenergizados.

Obs.: a instrução RES de contador/temporizador não deve ser empregada com a instrução TOF.

2.2.3 Temporizador Retentivo (RTO)

RETENTIVE TIMER ON Timer T4:0 Timer Base 0.01 Preset 900 0 Accum
RETENTIVE TIMER ON
Timer
T4:0
Timer Base
0.01
Preset
900
0
Accum

RTO

[EN]

T4:0 Timer Base 0.01 Preset 900 0 Accum RTO [ EN ] [ DN ] Figura

[DN]

Figura 2.6 Formato da instrução RTO

A instrução RTO inicia a contagem dos intervalos da base de tempo quando a

condição da linha se torna verdadeira. À medida que a condição da linha permanece verdadeira, o temporizador incrementa o seu valor acumulado (ACC) a cada varredura até

atingir o valor pré-selecionado (PRE). O valor acumulado é retido quando:

A condição da linha se torna falsa

O controlador é alterado de Operação ou Teste para Programação;

O controlador perde a alimentação (desde que seja mantida a bateria de back-up);

Ocorre uma falha.

Curso básico do SLC 500 da Rockwell

12

Condição

On

de entrada

off

Bit

On

EN

off

Bit

On

TT

off

Bit

On

DN

off

Instrução

On

de reset

off

Tempo

acumulado

Instrução On de reset off Tempo acumulado 9s 3s Figura 2.7 Diagrama de tempo da instrução
Instrução On de reset off Tempo acumulado 9s 3s Figura 2.7 Diagrama de tempo da instrução
Instrução On de reset off Tempo acumulado 9s 3s Figura 2.7 Diagrama de tempo da instrução
Instrução On de reset off Tempo acumulado 9s 3s Figura 2.7 Diagrama de tempo da instrução
Instrução On de reset off Tempo acumulado 9s 3s Figura 2.7 Diagrama de tempo da instrução
Instrução On de reset off Tempo acumulado 9s 3s Figura 2.7 Diagrama de tempo da instrução
Instrução On de reset off Tempo acumulado 9s 3s Figura 2.7 Diagrama de tempo da instrução
Instrução On de reset off Tempo acumulado 9s 3s Figura 2.7 Diagrama de tempo da instrução
9s 3s
9s
3s

Figura 2.7 Diagrama de tempo da instrução RTO

Quando o controlador retorna ao modo Operação ou Teste e/ou a condição da linha passa a verdadeira, a temporização continua a partir do valor acumulado retido. Ao reter o seu valor acumulado, o temporizador retentivo mede o período em que a condição da linha está verdadeira. Pode-se utilizar essa instrução para energizar ou desenergizar uma saída dependendo da lógica do programa.

Os bits de estado da instrução RTO operam como descrito a seguir:

O

bit de executado (DN) é energizado quando o valor acumulado é igual ao valor pré-

selecionado. No entanto, esse bit não é desenergizado quando a condição da linha se torna falsa; ele só é desenergizado quando a instrução RES é habilitada.

O bit de temporizado (TT) da instrução de Temporizador Retentivo é energizado quando

a condição da linha é verdadeira e o valor acumulado é menor que o valor pré-

selecionado. Quando a condição da linha passa a falsa ou quando o bit de executado é

energizado, o bit de temporizado é desenergizado.

O

bit de habilitação (EN) é energizado quando a condição da linha é verdadeira e é

desenergizado quando a condição se torna falsa.

O valor acumulado deve ser zerado pela instrução RES. Quando essa instrução com o mesmo endereço da instrução RTO for habilitada, o valor acumulado e os bits de controle são desenergizados.

Quando o controlador é passado do modo Operação ou Teste para o modo Programação ou Falha, ou então quando a alimentação é perdida enquanto o temporizador está registrando o tempo sem ainda ter atingido o valor pré-selecionado, o bit de habilitação e o de temporizado permanecem energizados e o valor acumulado permanece o mesmo.

Curso básico do SLC 500 da Rockwell

13

Quando se retorna ao modo Operação ou Teste ou a alimentação é restaurada, se

a

linha for verdadeira, o valor acumulado permanecerá o mesmo e continuará registrando

o

tempo a partir de onde parou, e o bit de temporizado e de habilitação permanecerão

energizados. Se a linha for falsa, o valor acumulado permanecerá o mesmo e os bits de temporizado e de habilitação serão desenergizados e o bit de executado permanecerá em seu último estado.

2.3 Instruções de Contador Crescente/Decrescente (CTU e CTD)

 
  CTU  

CTU

 
  CTU  
COUNT UP

COUNT UP

Counter

C5:0

 

Preset

10

Accum

0

  CTU   COUNT UP Counter C5:0   Preset 10 Accum 0
CTD COUNT DOWN Counter C5:1 Preset 0 Accum 10
CTD
COUNT DOWN
Counter
C5:1
Preset
0
Accum
10

Figura 2.8 Formato das Instruções CTU e CTD

As instruções de Contador Crescente (CTU) e Contador Decrescente (CTD) contam as transições de falsa para verdadeira, as quais podem ser causadas por eventos que ocorrem no programa, tais como peças que passam por um detector.

Cada contagem é retida quando as condições da linha se tornam falsas e, assim permanece até que uma instrução RES, com o mesmo endereço da instrução de contador, seja habilitada.

Cada instrução de contador possui um valor pré-selecionado e acumulado, e uma palavra de controle associada.

A palavra de controle para as instruções de contador incluem seis bits de estado, conforme ilustra a figura 2.9.

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

CU CD DN OV UN UA

Não utilizada

Valor Pré-selecionado

Valor Pré-selecionado

Valor acumulado

Valor acumulado

Figura 2.9 Palavra de Controle da Instrução de Contador

CU

= Bit de habilitação de contador crescente

CD

= Bit de habilitação de contador decrescente

DN

= Bit de executado: o valor acumulado, é maior ou igual ao valor pré-selecionado

OV

= Bit de overflow

UN

= Bit de underflow

UA

= Atualização de acumulador (apenas HSC)

Os valores acumulado e pré-selecionado são armazenados como números inteiros (os valores negativos são armazenados na forma de complemento de 2).

Curso básico do SLC 500 da Rockwell

14

Quando as condições da linha para uma instrução CTU passam de falsa para verdadeira,

o valor acumulado é incrementado de um, desde que haja uma varredura entre essas

transições. Quando isto ocorre sucessivamente até que o valor acumulado se torne igual ao valor pré-selecionado, o bit de executado é energizado, permanecendo nesse estado se

o

valor acumulado exceder o valor pré-selecionado.

O

bit 15 da palavra de controle da Instrução de Contador é o bit de habilitação de Contador

Crescente (CU). Esse bit é energizado quando a condição da linha é verdadeira e desenergizado quando a condição da linha se torna falsa ou uma instrução RES, com o mesmo endereço da instrução CTU, é habilitada.

A instrução CTU pode contar além de seu valor pré-selecionado. Quando a contagem

ultrapassa o valor pré-selecionado e atinge (32.767 + 1), ocorre uma condição de overflow. Isso é indicado quando o bit 12, bit de overflow (OV), é energizado.

Pode-se desenergizar o bit de overflow habilitando-se uma instrução RES com o mesmo endereço da instrução CTU. Também é possível desenergizá-lo, decrementando a contagem para um valor menor ou igual a 32.767 com uma instrução CTD.

Quando o bit de overflow (OV) é energizado, o valor acumulado atinge -32.768 e continua

a contagem crescente a partir daí.

As instruções CTD também contam as transições da linha de falsa para verdadeira. O valor acumulado do contador é decrementado a cada transição de falsa para verdadeira. Quando ocorrer um número suficiente de contagens e o valor acumulado se tornar menor que o valor pré-selecionado, o bit de executado (bit 13) do contador é desenergizado.

O bit 14 da palavra de controle da instrução de Contador é o bit de habilitação de Contador

Decrescente (CD). Esse bit é energizado quando a condição da linha é verdadeira e é

desenergizado quando a condição da linha se torna falsa (contador decrescente desabilitado) ou a instrução apropriada de desenergização é habilitada.

Quando a instrução CTD conta além do seu valor pré-selecionado e atinge (-32.768 - 1), o bit de underflow (bit 11) é energizado. Pode-se desenergizar esse bit, habilitando-se a instrução RES apropriada. Pode-se também desenergizá-lo, incrementando a contagem para um valor maior ou igual a -32.768 com uma instrução CTU com o mesmo endereço da instrução CTD.

Quando o bit de underflow (UN) é energizado, o valor acumulado atinge +32.767 e continua a contagem decrescente a partir daí.

As instruções CTU e CTD são retentivas. O valor acumulado é retido depois que a

instrução CTU ou CTD passa a falsa e quando a alimentação do controlador é removida e,

a seguir, restaurada.

Os estados energizado ou desenergizado dos bits de executado, overflow e underflow também são retentivos. Esses bits de controle e o valor acumulado são zerados quando a instrução RES é habilitada.

O bit 10 da palavra de controle da instrução de Contador é o bit de atualização de

acumulador (UA) utilizado para o Contador de Alta Velocidade (HSC) nos controladores com estrutura de E/S fixa. Quando este bit é energizado, o valor acumulado no registrador

Curso básico do SLC 500 da Rockwell

15

interno do controlador é lido e armazenado no valor acumulado da instrução. A seguir, o bit de atualização de acumulador (UA) é desenergizado.

2.4 Instrução de Rearme de Temporizador/Contador (RES)

( RES )

Figura 2.10 Formato da instrução RES

Utiliza-se uma instrução RES para zerar instruções de Contador e Temporizador. Quando a instrução RES é habilitada, ela zera a instrução de Temporizador, Contador Crescente ou Contador Decrescente com o mesmo endereço da instrução RES.

Em uma instrução de Temporizador, quando uma instrução RES é habilitada, são zerados o valor acumulado, o bit de executado, o bit de temporizado e o bit de habilitação.

Já em uma instrução de Contador Crescente ou Decrescente são zeradas o valor acumulado, os bits de overflow ou underflow, o bit de executado e o bit de habilitação.

Se a linha do contador for habilitada, o bit CU ou CD será desenergizado assim que a instrução RES for habilitada.

Caso o valor pré-selecionado seja negativo, a instrução RES coloca o valor acumulado em zero. Isto, então , leva o bit de executado a ser energizado pela instrução de Contador Crescente ou Decrescente.

ATENÇÃO: Já que a instrução RES zera o valor acumulado, o bit de executado e o bit de temporizado de uma instrução de Temporizador, não utilize-a para zerar uma instrução TOF .

Instruções de Comparação

3.0 Generalidades

3

As instruções de entrada que permitem comparar valores de dados são as seguintes:

Instruções utilizadas em Controladores com estrutura de E/S fixa, SLC-5/01 e SLC-5/02

Igual a (EQU);

Diferente (NEQ);

Menor que (LES);

Menor ou igual a (LEQ);

Maior que (GRT);

Maior ou igual a (GEQ);

Igual mascarada (MEQ).

Instrução utilizada somente com os controladores SLC-5/02 ou posterior

Teste limite (LIM).

Curso básico do SLC 500 da Rockwell

16

3.1 Igual a (EQU)

EQU EQUAL Source A N7:0 10 Source B 15
EQU
EQUAL
Source A
N7:0
10
Source B
15

Figura 3.1 Formato da Instrução EQU

Quando os valores dos parâmetros Source A (Fonte A) e Source B (Fonte B) forem iguais, esta instrução será logicamente verdadeira. Se estes valores não forem iguais, a instrução será falsa.

Parâmetros da Instrução EQU

Deve-se introduzir um endereço de palavra para Source A. Pode-se introduzir uma constante de programa ou um endereço de palavra Source B. Números inteiros com sinal são armazenados na forma de complemento de 2.

3.2 Diferente (NEQ) NEQ NOT EQUAL Source A N7:1 10 Source B 15
3.2 Diferente (NEQ)
NEQ
NOT EQUAL
Source A
N7:1
10
Source B
15

Figura 3.2 Formato da Instrução NEQ

Quando os valores dos Parâmetros Source A e Source B não forem iguais, esta instrução será logicamente verdadeira. Se esses dois valores forem iguais, esta instrução será falsa.

Parâmetros da Instrução NEQ

Deve-se introduzir um endereço de palavra para o parâmetro Source A. Pode-se introduzir uma constante de programa ou um endereço de palavra para Source B. Números inteiros com sinal são armazenados na forma de complemento de 2.

3.3 Menor que (LES) LES LESS THAN Source A N7:2 10 Source B 15
3.3 Menor que (LES)
LES
LESS THAN
Source A
N7:2
10
Source B
15

Figura 3.3 Formato da Instrução LES

Curso básico do SLC 500 da Rockwell

17

Quando o valor do parâmetro Source A for menor que o valor de Source B, esta instrução será logicamente verdadeira. Se o valor de Source A for menor ou igual ao valor de Source B, esta instrução será falsa.

Parâmetros da Instrução LES

Deve-se introduzir um endereço de palavra para o parâmetro Source A. Pode-se introduzir uma constante de programa ou um endereço de palavra para Source B. Números inteiros com sinal são armazenados na forma de complemento de 2.

3.4 Menor ou Igual a (LEQ) LEQ LESS THAN OR EQUAL Source A N7:1 10
3.4 Menor ou Igual a (LEQ)
LEQ
LESS THAN OR EQUAL
Source A
N7:1
10
Source B
15

Figura 3.4 Formato da Instrução LEQ

Quando o valor do parâmetro Source A for menor ou igual ao valor de Source B, esta instrução será logicamente verdadeira. Se o valor de Source A for maior que o valor de Source B, esta instrução será falsa.

Parâmetros da Instrução LES

Deve-se introduzir um endereço de palavra para o Parâmetro Source A. Pode-se introduzir uma constante de programa ou um endereço de palavra para Source B. Números inteiros com sinal são armazenados na forma de complemento de 2.

3.5 Maior que (GTR) GRT GREATER THAN Source A N7:1 10 Source B 15
3.5 Maior que (GTR)
GRT
GREATER THAN
Source A
N7:1
10
Source B
15

Figura 3.5 Formato da Instrução GRT Quando o valor do parâmetro Source A for maior que o valor de Source B, esta instrução será logicamente verdadeira. Se o valor de Source A for menor ou igual ao valor de Source B, esta instrução será falsa.

Parâmetros da Instrução LEQ

Deve-se introduzir um endereço de palavra para o parâmetro Source A. Pode-se introduzir uma constante de programa ou um endereço de palavra para Source B. Números inteiros com sinal são armazenados na forma de complemento de 2.

Curso básico do SLC 500 da Rockwell

18

3.6 Maior ou Igual a (GEQ) GEQ GREATER THAN OR EQUAL Source A N7:1 10
3.6 Maior ou Igual a (GEQ)
GEQ
GREATER THAN OR EQUAL
Source A
N7:1
10
Source B
15

Figura 3.6 Formato da Instrução GEQ

Quando o valor do parâmetro Source A for maior ou igual ao valor de Source B, esta instrução será logicamente verdadeira. Se o valor de Source A for menor que o valor de Source B, esta instrução será falsa.

Parâmetros da Instrução GEQ

Deve-se introduzir um endereço de palavra para o parâmetro Source A. Pode-se introduzir uma constante de programa ou um endereço de palavra para Source B. Números inteiros com sinal são armazenados na forma de complemento de 2.

3.7 Igual Mascarada (MEQ)

MEQ MASKED EQUAL Source B3:1 110010011001100 Mask B3:2 FF00 Compare B3:3 1100110011111111
MEQ
MASKED EQUAL
Source
B3:1
110010011001100
Mask
B3:2
FF00
Compare
B3:3
1100110011111111

Figura 3.7 Formato da Instrução MEQ

Esta instrução de entrada compara dados de um endereço fonte com dados de um endereço de referência, permitindo que parte desses dados sejam mascaradas através de uma palavra.

Parâmetros da Instrução MEQ:

Source - endereço fonte do valor que se deseja comparar;

Mask - endereço da máscara através da qual a instrução movimenta os dados ou um valor hexadecimal;

Compare - valor inteiro ou endereço de referência para a comparação.

Se os 16 bits de dados de um endereço fonte forem iguais aos 16 bits de dados do endereço de referência (exceto os bits mascarados), a instrução é verdadeira. A instrução se torna falsa assim que ela detecta uma diferença. Os bits da palavra de máscara iguais a 0 mascaram os dados, já os bits iguais a 1 permitem que seja realizada a comparação.

Curso básico do SLC 500 da Rockwell

19

3.8 Teste Limite (LIM)

LIM LIMIT TEST Low Limit N7:0 10 Test N7:1 45 High Limit N7:2 50
LIM
LIMIT TEST
Low Limit
N7:0
10
Test
N7:1
45
High Limit
N7:2
50

Figura 3.8 Formato da Instrução LIM

Esta instrução de entrada testa os valores dentro ou fora de uma faixa específica, dependendo de como foram ajustados os limites.

Parâmetros da Instrução LIM

Os valores dos parâmetros identificados por Low Limit, Test e High Limit podem ser programados com endereços de palavra ou constantes do programa, observando-se as seguintes restrições:

Se o parâmetro Test for uma constante do programa, tanto o Low Limit como o High Limite devem ter endereços de palavra.

Se o parâmetro Test for um endereço de palavra, o Low Limit e o High Limit podem ser constante de programa ou um endereço de palavra.

Estado Verdadeiro/Falso da Instrução

Se o Low (limite inferior) possui um valor menor que High Limit (limite superior), a instrução será verdadeira quando o valor testado estiver entre os limites ou for igual a um dos limites. Se o valor de Test estiver fora dos limites, a instrução será falsa (figura 3.9)

Falsa

Verdadeira

Falsa

será falsa (figura 3.9) Falsa Verdadeira Falsa Low Limit High Limit -32.768 +32.768 Figura 3.9 Instrução

Low Limit

falsa (figura 3.9) Falsa Verdadeira Falsa Low Limit High Limit -32.768 +32.768 Figura 3.9 Instrução LIM

High Limit

-32.768

+32.768

Figura 3.9 Instrução LIM falsa Se o Low Limit possui um valor maior que o High Limit, a instrução será falsa quando o valor do parâmetro Test estiver entre os limites. Se o valor de Test for igual a um dos limites ou estiver fora dos limites, a instrução será verdadeira (figura 3.10).

Verdadeira

Falsa

Verdadeira

(figura 3.10). Verdadeira Falsa Verdadeira High Limit Low Limit -32.768 +32.768 Figura 3.10 Instrução

High Limit

3.10). Verdadeira Falsa Verdadeira High Limit Low Limit -32.768 +32.768 Figura 3.10 Instrução LIM

Low Limit

-32.768

+32.768

Figura 3.10 Instrução LIM Verdadeira

Curso básico do SLC 500 da Rockwell

20

Instruções Matemáticas

4.0 Generalidades

4

As instruções de saída que permitem realizar operações matemáticas em palavras específicas são as seguintes:

Instruções utilizadas em Controladores com estrutura de E/S fixa, Controladores SLC-5/01 e SLC-5/02

Adição (ADD)

Subtração (SUB)

Multiplicação (MUL)

Divisão (DIV)

Zeramento (CLR)

Conversão para BCD (TOD)

Conversão de BCD (FRD)

Decodificação (DCD)

Instruções utilizadas somente nos Controladores SLC-5/02 ou posterior:

Raiz Quadrada (SQR)

Escalonamento (SCL)

Parâmetros das Instruções:

Source - endereço(s) do(s) valor(es) em que a operação matemática será executada; pode ser endereço(s) de palavra ou constante(s) de programa. Se a instrução tiver dois operandos Source, não é possível introduzir constantes de programa nos dois operandos.

Dest - endereço destino referente ao resultado da operação.

Números inteiros com sinal são armazenados na forma de complemento de dois.

Bits de Estado Aritméticos

Depois que cada instrução é executada, os bits de estado aritméticos são atualizados conforme tabela 4A.

Tabela 4A Bits de Estado Aritméticos

Bit

Descrição

S:0/0

Carry (vai 1) (c) - energizado se for gerado um carry; caso contrário, desenergizado.

S:0/1

Overflow (V) - indica que o resultado de uma instrução matemática é muito grande para o destino

S:0/2

Zero (Z) - indica um valor 0 depois de uma instrução matemática, movimentação ou lógica.

S:0/3

Sinal (S) - indica um valor negativo (menor que 0) após uma instrução matemática, movimentação ou lógica.

Curso básico do SLC 500 da Rockwell

21

Tabela 4B Descreve o bit de Erro de Overflow (S:5/0)

Bit

S:5/0

Descrição

É um bit de falha de advertência, energizado na detecção de um overflow ou divisão por 0. Se este bit estiver energizado na execução da declaração de fim de programa (END), de uma instrução TND ou REF, uma falha grave é indicada.

A tabela 4C apresenta as palavras do registrador matemático (S:13 e S:14).

Tabela 4C Palavras do Registrador Matemático

Palavra

Descrição

S:13

Contém a palavra menos significativa das instruções MUL com valores de 32 bits. Para a instrução DIV , contém o resto e para as instruções FRD e TOD, contém os quatro primeiros dígitos BCD.

S:14

Contém a palavra mais significativa das instruções MUL com valores de 32 bits. Para a instrução DIV, contém o quociente não arredondado e para as instruções FRD e TOD, contém os quatro primeiros dígitos BCD.

4.1 Adição (ADD)

ADD ADD Source A N7:0 5 Source B N7:1 45 Dest N7:2 50
ADD
ADD
Source A
N7:0
5
Source B
N7:1
45
Dest
N7:2
50

Figura 4.1Formato da Instrução ADD

Dest = Source A + Source B

O valor de Source A é somado ao valor de Source B e, então, armazenado no destino.

Bits de Estado Aritméticos

C - energizado se for gerado um carry (vai 1); caso contrário, desenergizado.

V - energizado se for detectado overflow no destino; caso contrário, desenergizado. Em overflow, o bit de erro de overflow também é energizado. O valor -32.768 ou 32.767 é introduzido no destino. Exceção: no caso da utilização do Controlador SLC-5/02 série C ou posterior e com o bit de Seleção de Overflow matemático (S:2/14) energizado, o resultado da operação, desconsiderando-se o bit de sinal, permanece no destino.

Z

- energizado se o resultado for zero; caso contrário, desenergizado.

S

- energizado se o resultado for um valor negativo; caso contrário, desenergizado.

Curso básico do SLC 500 da Rockwell

22

4.2 Subtração (SUB)

SUB SUBTRACT Source A N7:0 30 Source B N7:1 10 Dest N7:2 20 Figura 4.2
SUB
SUBTRACT
Source A
N7:0
30
Source B
N7:1
10
Dest
N7:2
20
Figura 4.2 Formato da Instrução SUB

Dest = Source A - Source

O valor no parâmetro Source B é subtraído do valor de Source A e, então, armazenado no

destino.

Bits de Estado Aritméticos

C

- energizado se for gerado um borrow (vem 1); caso contrário, desenergizado.

V

- energizado se for detectado underflow; caso contrário, desenergizado. Em underflow o bit de erro de overflow também é energizado, e o valor -32.768 ou 32.767 é colocado no destino. Exceção: no caso da utilização do Controlador SLC-5/02 série C ou posterior e com o bit de Seleção de Overflow Matemático (S:2/14) energizado, o resultado da operação, desconsiderando-se o bit de sinal, permanece no destino.

Z

- energizado se o resultado for zero; caso contrário, desenergizado.

S

- energizado se o resultado for negativo; caso contrário, desenergizado.

4.3 Multiplicação (MUL)

MUL MULTIPLY Source A N7:5 30 Source B N7:6 10 Dest N7:7 300
MUL
MULTIPLY
Source A
N7:5
30
Source B
N7:6
10
Dest
N7:7
300

Figura 4.3 Formato da Instrução MUL

Dest = Source A x Source B

O valor do parâmetro Source A é multiplicado pelo valor de Source B e, então, armazenado no destino.

Bits de Estado Aritiméticos

C - sempre desenergizado.

Curso básico do SLC 500 da Rockwell

23

V - energizado se um Overflow for detectado no destino; caso contrário, desenergizado. Em Overflow, o bit de erro de Overflow também é energizado. O valor 32.767 ou -32.768 é introduzido no destino. Exceção: Ao utilizar um controlador SLC-5/02 série C ou posterior e com o bit S:2/14 energizado, o resultado da operação, desconsiderando-se o bit de sinal, permanece no destino.

Z - energizado se o resultado for zero; caso contrário, desenergizado.

S - energizado se o resultado for um valor negativo; caso contrário, desenergizado.

4.4 Divisão (DIV)

DIV DIVIDE Source A N7:5 300 Source B N7:6 10 Dest N7:7 30
DIV
DIVIDE
Source A
N7:5
300
Source B
N7:6
10
Dest
N7:7
30

Figura 4.4 Formato da Instrução DIV

Dest = Source A / Source B

O valor do parâmetro Source A é dividido pelo valor de Source B com o quociente

arredondado sendo armazenado no destino. Se o resto for 0,5 ou maior, o arredondamento para cima ocorre no destino. O quociente não arredondado é armazenado na palavra mais

significativa do registrador matemático. O resto é colocado na palavra menos significativa

do registrador matemático.

Bits de Estado Aritméticos

C

- sempre desenergizado.

V

- energizado no caso de divisão por zero ou overflow; caso contrário, desenergizado. Em overflow, o bit de erro de overflow é energizado. O valor 32.767 é colocado no destino. Exceção: se estiver sendo utilizado um Controlador SLC-5/02 série C ou posterior e o bit S:2/14 estiver sendo energizado, então o resultado da operação, desconsiderando- se o bit de sinal, permanece no destino.

Z

- energizado se o resultado for zero; caso contrário, desenergizado; indefinido se o bit de overflow estiver energizado.

S

- energizado se o resultado for um valor negativo; caso contrário, desenergizado; indefinido se o bit de overflow estiver energizado.

Registrador Matemático

O

quociente não arredondado é colocado na palavra mais significativa e o resto é colocado

na

palavra menos significativa.

Curso básico do SLC 500 da Rockwell

24

4.5 Zeramento (CLR)

CLR CLEAR Dest C5:1
CLR
CLEAR
Dest
C5:1

Figura 4.5 Formato da Instrução CLR

O valor destino é zerado.

Bits de Estado Aritméticos

C, V, S, - sempre desenergizados.

Z - sempre energizado.

Registrador Matemático

O conteúdo não é alterado.

4.6 Conversão para BCD (TOD)

Figura 4.6 Formato da Instrução TOD

TOD TO BCD Source Dest
TOD
TO BCD
Source
Dest

Controladores SLC 5/02

TOD TO BCD Source Dest S:13 00000
TOD
TO BCD
Source
Dest
S:13
00000

SLC 5/01 e com E/S fixa

Esta instrução de conversão é utilizada quando se deseja exibir ou transferir valores BCD externos para o controlador.

Com os Controladores SLC-5/02, o parâmetro destino pode ser um endereço de palavra em qualquer arquivo de dados ou o registrador matemático, S:13 e S:14. Com os Controladores SLC-5/01, o destino é o registrador matemático.

Se o valor inteiro introduzido é um valor negativo, o sinal é ignorado e a conversão ocorre como se o número fosse positivo, isto é, o valor absoluto do número é utilizado para conversão.

Curso básico do SLC 500 da Rockwell

25

Exemplo 1 (somente Controladores SLC-5/02): O valor inteiro 9760 armazenado em N7:3 é convertido para BCD e o número em BCD equivalente é armazenado em N10:0. O valor máximo em BCD possível é 9999 (figura 4.7).

TOD TO BCD
TOD
TO BCD

Source

Dest

N7:3 9760 N10:0 9760
N7:3
9760
N10:0
9760
O APS exibe o valor destino em BCD (no monitor de dadosn N10:0 é exibido
O APS exibe o valor destino em BCD (no monitor de
dadosn N10:0 é exibido como –26784, decimal).

Figura 4.7 Exemplo 1 da Instrução TOD

9

7 6 0 N7:3 decimal 0010 0110 0010 0000

9

7 6 0 N10:0 BCD de 4 dígitos 1001 0111 0110 0000

4.7 Conversão de BCD (FRD)

Figura 4.8 Formato da Instrução FRD

FDR FROM BCD Source Dest
FDR
FROM BCD
Source
Dest

Controladores SLC 5/02

 
  FDR S:13

FDR

S:13

  FDR S:13
FROM BCD

FROM BCD

Source

00000

 

Dest

  FDR S:13 FROM BCD Source 00000   Dest

SLC 5/01 e com E/S fixa

Esta instrução é utilizada quando se deseja converter valores em BCD para valores decimais ou inteiros.

Com os controladores SLC-5-02, o parâmetro Source pode ser um endereço de palavra em qualquer arquivo de dado ou pode ser o registrador matemático S:13 Com os Controladores SLC-5/01, o parâmetro Source pode ser somente o registrador matemático.

Exemplo 1 (somente Controladores SLC-5/02): O valor BCD 9760 na parâmetro N7:3 é convertido e armazenado em N10:0. O valor máximo do parâmetro Source é 9999 em BCD (figura 4.9).

Curso básico do SLC 500 da Rockwell

26

FRD FROM BCD N7:3 Source 9760 Dest N10:0 O APS exibe o valor da fonte
FRD
FROM BCD
N7:3
Source
9760
Dest
N10:0
O APS exibe o valor da fonte em BCD
9760

Figura 4.9 Exemplo 1 da Instrução FRD

9

7 6 0 N7:3 BCD de 4 dígitos 1001 0111 0110 0000

9

7 6 0 N10:0 decimal 0010 0110 0010 0000

4.8 Decodificação (DCD)

DCD DECODE 4 TO 1 OF 16 Source Dest
DCD
DECODE 4 TO 1 OF 16
Source
Dest

Figura 4.10 Formato da Instrução DCD

Quando a condição da linha é verdadeira, esta instrução de saída energiza um bit da palavra destino. O bit específico que é energizado depende do valor dos primeiros quatro bits da palavra fonte (tabela 4.D). Esta instrução pode ser utilizada para multiplexar dados. Poderia ser utilizada para aplicações, tais como chaves rotativas, teclados etc.

Tabela 4.D

Decodificação

 

Fonte

Destino

 

Bit

15-04 03

02

01

15

14

13

12

11

10

09

08

07

06

05

04

03 02

01

00

00

 
 

x

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

0

 

x

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

0

0

1

0

0

0

0

0

0

0

0

0

0

0

0

1

0

0

0

 

x

0

0

1

0

0

0

0

0

0

0

0

0

0

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

0

0

0

0

0

 

x

0

0

1

0

0

0

0

0

0

0

0

0

1

0

0

0

0

0

0

1

0

0

0

0

0

0

0

0

1

0

0

0

0

0

0

0

 

x

0

1

0

0

0

0

0

0

0

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

0

0

0

0

0

0

0

0

0

 

x

0

1

0

0

0

0

0

0

1

0

0

0

0

0

0

0

0

0

0

1

0

0

0

0

1

0

0

0

0

0

0

0

0

0

0

0

 

x

0

1

1

0

0

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

 

x

0

1

1

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

Curso básico do SLC 500 da Rockwell

27

 

x

1

0

0

0

 

x

1

0

0

1

 

x

1

0

1

0

 

x

1

0

1

1

 

x

1

1

0

0

 

x

1

1

0

1

 

x

1

1

1

0

 

x

1

1

1

1

Parâmetros da Instrução DCD:

Source - endereço que contém a informação de decodificação do bit. Apenas os primeiros quatro bits (0-3) são utilizados pela instrução DCD. Os bits restantes podem ser utilizados para outras necessidades específicas da aplicação. Altere o valor dos primeiros quatro bits desta palavra para selecionar um bit da palavra destino.

Dest - endereço da palavra a ser decodificada. Apenas um bit desta palavra é energizado a qualquer momento, dependendo do valor da palavra fonte.

Bits de Estado Aritméticos não são afetados.

4.9 Raiz Quadrada (SQR)

Esta instrução só pode ser programada nos arquivos do Controlador SLC-5/02 ou posterior.

SQR SQUARE ROOT Source Dest
SQR
SQUARE ROOT
Source
Dest

Figura 4.11 Formato da instrução SQR

Dest =

Source
Source

Quando esta instrução é verdadeira, a raiz quadrada do valor absoluto da fonte é calculada e o resultado arredondado é colocado no destino.

A instrução irá calcular a raiz quadrada de um número negativo sem apresentar overflow ou falhas. Nas aplicações onde o valor do endereço fonte pode ser negativo, deve-se utilizar uma instrução de comparação para avaliar esse valor a fim de determinar se o destino pode ser um número não-válido.

Bits de Estado Aritméticos

Curso básico do SLC 500 da Rockwell

28

C

- reservado.

V

- sempre desenergizado.

Z

- energizado quando o valor destino é zero; caso contrário, desenergizado.

S

- sempre desenergizado.

Registrador Matemático

O conteúdo não é alterado.

4.10 Escalonamento (SLC)

Esta instrução pode ser programada somente nos arquivos do Controlador SLC-5/02 ou posterior.

SCL SCALE
SCL
SCALE

Source

Rate [/10000]

Offset

Dest

posterior. SCL SCALE Source Rate [/10000] Offset Dest Figura 4.12 Formato da instrução SCL Rate 10000

Figura 4.12 Formato da instrução SCL

Rate

10000

Dest

Source *

Offset

Quando esta instrução é verdadeira, o valor no endereço fonte é multiplicado pelo valor do parâmetro Rate. O resultado arredondado é somado ao valor do parâmetro Offset e colocado no destino.

Parâmetros da Instrução SCL:

A faixa de valores para os parâmetros da instrução SCL é de -32.768 a 32.767.

Source - pode ser uma constante de programa ou um endereço de palavra.

Rate - valor positivo ou negativo introduzido pelo usuário e dividido por 10.000. Pode ser uma constante de programa ou um endereço de palavra.

Offset - pode ser uma constante de programa ou um endereço de palavra.

Bits de Estado Aritméticos

C - reservado.

Curso básico do SLC 500 da Rockwell

29

V

- a presença de um overflow no destino é verificada antes e depois do valor de offset aplicado. Este bit é energizado se um overflow é detectado. Em overflow, o bit de falha de advertência S:5/0 também é energizado e o valor -32.768 ou 32.767 é colocado no destino.

Z

- energizado quando o valor destino é zero; caso contrário, desenergizado.

S

- energizado quando o valor destino é negativo; caso contrário, desenergizado.

Registrador Matemático:

conteúdo não é alterado.

Aplicação Típica da Instrução SLC - Conversão de Graus Celsius para Fahrenheit

A

equação de conversão é:

F

= (9/5) C + 32, ou

F

= (1.8) C + 32

Exemplo: 25 ºC = 77 ºF

F = (1.8) 25 + 32 = 77

o F 77 32
o F
77
32

25

o C

ºF = 1.8 x ºC + 32

Figura 4.13 Gráfico do Exemplo de Instrução SCL

Para implementar a equação da conversão F = (1.8) 25 + 32 = 77 na instrução SCL, deve- se proceder como descrito a seguir (figura 4.14):

Introduza o valor em graus Celsius (25 neste caso) no parâmetro Source.

multiplicador é 1.8; portanto, introduza um valor de constante de programa de 18000 no parâmetro Rate.

Some 32. Introduza esta constante de programa no parâmetro Offset.

Curso básico do SLC 500 da Rockwell

30

Quando a instrução SCL se torna verdadeira, o resultado é exibido no endereço de palavra introduzido no parâmetro destino.

SCL SCALE Source N7:0 25 Rate [/10000] 18000 Offset 32 Dest N7:1 77
SCL
SCALE
Source
N7:0
25
Rate [/10000]
18000
Offset
32
Dest
N7:1
77

N 7 :1 N7 : 0*

18000

32

10000

Figura 4.14 Implementação da Equação de Conversão em SCL

Instruções

Lógicas

e

de

Movimentação

5

5.0 Generalidades

As instruções de saída utilizadas com os Controladores com estrutura de E/S fixa, Controladores SLC-5/01 e SLC-5/02 permitem realizar as operações lógicas e de movimentação. Essas instruções são as seguintes:

Movimentação (MOV)

Movimentação com Máscara (MVM)

E (AND)

Ou (OR)

Ou Exclusivo (XOR)

Complementação (NOT)

Parâmetros das Instruções:

Source - Este é o endereço fonte referente ao valor onde a operação lógica ou de movimentação é executada. Pode ser um endereço de palavra ou uma constante de programa. Se a instrução tiver dois operandos fonte, não é possível introduzir constantes de programa nos dois operandos.

Dest - Este é o endereço destino referente ao resultado da operação lógica ou de movimentação. Deve ser um endereço de palavra.

Endereçamento Indexado

Com os Controladores SLC-5/02 pode-se utilizar o endereçamento indexado para os parâmetros da instrução.

Bits de Estado Aritméticos

Depois que Uma instrução for executada, os bits de estado aritméticos (C, V, Z e S) do arquivo de estado são atualizados:

Curso básico do SLC 500 da Rockwell

31

Carry (C), S:0/0 desenergizado.

-

Energizado se for gerado um

carry (vai 1); saso contrário,

Overflow (V), S:0/1 - Indica que o resultado de uma instrução matemática é muito grande para o destino.

Zero (Z), S:0/2 - Indica um valor 0 depois de uma instrução matemática, movimentação ou lógica.

Sinal (S), S:0/3 -Indica um valor negativo (menor que 0) após uma instrução matemática, movimentação ou lógica.

Bit de Erro de Overflow (S:5/0)

Bit de falha de advertência energizado na detecção de um overflow ou divisão por 0. Se este bit estiver energizado na execução da declaração de fim de programa (END) ou uma instrução TND, uma falha grave será indicada.

Registrador Matemático (S:13 e S:14)

As instruções lógicas e de movimentação não afetam o registrador matemático.

5.1 Movimentação (MOV)

MOV MOVE Source N7:0 300 Dest N10:0 300
MOV
MOVE
Source
N7:0
300
Dest
N10:0
300

Figura 5.1 Formato da Instrução MOV

O controlador move o valor da fonte (Source) para o destino (Dest).

Parâmetros da Instrução MOV:

Source - endereço fonte do dado que se deseja mover.

Dest - endereço destino para onde a instrução move o dado.

Bits de Estado Aritméticos:

C

- sempre desenergizado.

V

- sempre desenergizado.

Z

-energizado se o resultado for zero.

S

- energizado se o resultado for um valor negativo (bit mais significativo é energizado). Caso contrário, é desenergizado.

Curso básico do SLC 500 da Rockwell

32

5.2 Movimento com Máscara (MVM)

MVM MASKED MOVE Source Mask Dest
MVM
MASKED MOVE
Source
Mask
Dest

Figura 5.2 Formato da Instrução MVM

Parâmetros da Instrução MVM:

Source endereço fonte dos dados que se deseja movimentar

Mask - endereço da máscara através do qual a instrução movimenta os dados (pode ser um valor em hexa).

Dest - endereço destino para onde a instrução move os dados.

Bits de Estado Aritméticos

C

- sempre desenergizado.

V

- sempre desenergizado.

Z

- energizado se o resultado for zero.

S

- energizado se o resultado for um valor negativo. Caso contrário, desenergizado.

Operação da Instrução MVM:

A instrução de movimento com máscara é uma instrução de palavra que move os dados de uma localização fonte para um destino e permite que partes desses dados sejam mascarados por uma palavra.

Quando a condição da linha que contém esta instrução for verdadeira, os dados no endereço fonte passam através da máscara para o endereço destino (figura 5.3). Enquanto a linha permanecer verdadeira, a instrução movimenta os mesmos dados a cada varredura.

Curso básico do SLC 500 da Rockwell

33

MVM MASKED MOVE Source Mask Dest
MVM
MASKED MOVE
Source
Mask
Dest

B3:2 antes da movimentação

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1 1

 

Source B3:0

 

0

1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

 

Mask F0F0

 

1

1 1 1 0 0 0 0 1 1 1 1 0 0 0 0

B3:2 depois da movimentação

0 1 0 1 1 1 1 1 0 1 0 1 1 1 1
0 1
0
1
1
1
1
1
0
1
0
1
1
1
1 1

Figura 5.3 Exemplo da Instrução de Movimento com Máscara

Os dados são mascarados quando os bits da palavra de máscara estão desenergizados e são transferidos quando os bits da palavra de máscara estão energizados. Os bits da palavra de máscara podem ser fixados utilizando-se um valor constante ou podem ser alterados atribuindo à máscara um endereço direto. Os bits da palavra de destino, correspondente aos zeros da palavra de máscara, não são alterados.

5.3 E (AND)

AND BITWISE AND Source A N7:5 1010 Source B N7:6 1100 Dest N7:7 1000
AND
BITWISE AND
Source A
N7:5
1010
Source B
N7:6
1100
Dest
N7:7
1000

Figura 5.4 Formato da Instrução AND

É executado um AND, bit a bit,entre o valor do parâmetro Source A e o valor de Source B e, então, armazenado no destino.

Curso básico do SLC 500 da Rockwell

34

Tabela 5.A

A

B

R

0

0

0

1

0

0

0

1

0

1

1

1

Onde: R = A AND B

Bits de Estado Aritméticos:

C

- sempre desenergizado.

 

V

- sempre desenergizado.

Z

- energizado se o resultado for zero.Caso contrário, desenergizado.

 

S

-

energizado

se

o

BIT

mais

significativo

estiver

energizado.

Caso

contrário,

desenergizado.

5.4 Ou (OR)

OR BITWISE INCLUS OR Source A N7:5 1010 Source B N7:6 1100 N7:7 Dest 1110
OR
BITWISE INCLUS OR
Source A
N7:5
1010
Source B
N7:6
1100
N7:7
Dest
1110

Figura 5.5 Formato da Instrução OR

É executado um OR, bit a bit, entre o valor do parâmetro Source A e o valor de Source B e,

então, armazenado no destino. A tabela verdade da operação lógica OU é apresentada na

tabela 5.B.

Tabela 5.B Operação lógica “OU”

A

B

R

0

0

0

1

0

1

0

1

1

1

1

1

Onde: R = A OR B

Curso básico do SLC 500 da Rockwell

35

5.5 Ou Exclusivo (XOR)

XOR BITWISE EXCLUS OR Source A N7:5 1010 Source B N7:6 1100 N7:7 Dest 0110
XOR
BITWISE EXCLUS OR
Source A
N7:5
1010
Source B
N7:6
1100
N7:7
Dest
0110

Figura 5.6 Formato da Instrução XOR

É executado um XOR, bit a bit, entre o valor do parâmetro Source A e o valor de Source B

e, então, armazenado no destino. A tabela verdade da operação lógica OU exclusivo é

apresentada na tabela 5.C.

Tabela 5.C Operação Lógica “Ou Exclusivo”

A

B

R

0

0

0

1

0

1

0

1

1

1

1

0

Onde: R = A XOR B

Bits de Estado Aritméticos:

C

- sempre desenergizado.

V

- sempre desenergizado.

Z

- energizado se o resultado for zero. Caso contrário, desenergizado.

S

- energizado se o resultado for um valor negativo (bit mais significativo é energizado). Caso contrário, desenergizado.

5.6 Complementação (NOT)

NOT NOT Source N7:0 1100 Dest N10:0 0011
NOT
NOT
Source
N7:0
1100
Dest
N10:0
0011

Figura 5.7 Formato da Instrução NOT

O valor na fonte é complementado bit a bit e armazenado no destino.

Curso básico do SLC 500 da Rockwell

36

Tabela 5.D Operação Lógica Complementação

A

0

1

B

1

0

Onde: R = NOT A

Onde: R = NOT A

Instruções de Cópia e Preenchimento de Arquivo

6.0 Generalidades

6

O tipo de arquivo do parâmetro destino (Dest) determina o número de palavras que a

instrução transfere. Por exemplo, se o arquivo destino (Dest) é do tipo contador e o arquivo fonte (Source) inteiro, três palavras inteiras são transferidas para cada elemento no arquivo

do tipo contador.

Registro de Índice nos Controladores SLC-5/02

Depois que uma instrução COP ou FLL for executada, o registro de índice S:24 é zerado.

COP COPY FILE Source Dest Length
COP
COPY FILE
Source
Dest
Length

Figura 6.1 Formato das Instruções COP

6.1 Cópia de Arquivo (COP)

Esta instrução copia dados de um local para outro e não utiliza bits de estado. Caso seja necessário um bit de habilitação, pode-se programar uma saída paralela utilizando-se um endereço de armazenamento.

Os parâmetros a serem introduzidos na instrução COP são os seguintes:

Source - é o endereço fonte referente ao arquivo que se deseja copiar. Deve-se utilizar o símbolo indicador de arquivo # no endereço.

Dest - é o endereço destino referente ao arquivo em que a instrução armazena a cópia. Deve-se introduzir o símbolo indicador de arquivo # no endereço.

Length - é o número de elementos do arquivo que se deseja copiar. Se o tipo de arquivo destino é de três palavras por elemento, pode-se especificar um comprimento máximo de 42 elementos. Se o tipo de arquivo destino é uma palavra por elemento, pode-se especificar um comprimento máximo de 128.

Os elementos são copiados do arquivo fonte para o arquivo destino a cada varredura em que a linha é verdadeira e são copiados em ordem crescente sem transformação dos

Curso básico do SLC 500 da Rockwell

37

dados. Os elementos são copiados até totalizarem o valor especificado no campo Length

ou até que o último elemento do arquivo destino seja atingido.

Se o destino for um temporizador, contador ou arquivo de controle, certifique-se que as palavras do arquivo fonte correspondentes às palavras de estado do arquivo destino contenham zeros.

Certifique-se que o endereço da primeira palavra do arquivo e o comprimento do bloco que

se está copiando sejam devidamente especificados. A instrução não irá escrever fora do

limite do arquivo (como, por exemplo, entre os arquivos N16 e N17) no destino.

Nota: Caso haja uma tentativa de escrever fora do limite do arquivo, ocorrerá um erro.

O deslocamento de arquivo pode ser realizado especificando-se, dentro do arquivo, o

endereço do elemento fonte, maior que o endereço do elemento destino. Deste modo, os

dados são deslocados para o endereço menor.

Instruções de Seqüenciador

7.0 Generalidades

7

As instruções de seqüenciador incluem Saída de Seqüenciador, Comparação de seqüenciador e Carga de Seqüenciador. Essas instruções são geralmente utilizadas em controle de máquinas.

Instruções Utilizadas com os Controladores com Estrutura de E/S Fixa, Controladores SLC-5/01 e SLC-5/02

Saída de Seqüenciador (SQO). Transfere dados de 16 bits para endereços de palavra a fim de controlar operações seqüênciais de máquina.

Comparação de Seqüenciador (SQC). Compara dados de 16 bits com dados armazenados para monitorar as condições de operação da máquina ou para fins de diagnóstico.

Instruções utilizadas somente com Controladores SLC-5/02

Carga de Seqüenciador (SQL). Carrega dados de 16 bits em um arquivo a cada etapa da operação de seqüenciador.

Aplicações que requerem mais de 16 bits

Quando a aplicação necessitar de mais de 16 bits de E/S, utiliza-se múltiplas instruções de seqüenciador em paralelo.

Registro de Índice nos Controladores SLC-5/02

As instruções de seqüenciador alteram o conteúdo do registro de índice S:24.

Curso básico do SLC 500 da Rockwell

38

7.1 Instruções de Saída e Comparação de Seqüenciador (SQO e SQC)

O formato

Seqüenciador (SQC) está ilustrado na figura 7.1.

das

instruções

de

Saída

de

Seqüenciador

(SQO)

e

Comparação

de

SQO SEQUENCER OUTPUT (EN) File Mask (DN) Dest Control Length Position
SQO
SEQUENCER OUTPUT
(EN)
File
Mask
(DN)
Dest
Control
Length
Position

Figura 7.1 Formato das Instruções SQO eSQC

SQC SEQUENCER COMPARE
SQC SEQUENCER COMPARE

SQC SEQUENCER COMPARE

SQC SEQUENCER COMPARE

File

Mask

Source

Control

Length

Position

SQC SEQUENCER COMPARE File Mask Source Control Length Position
(EN) (DN)
(EN)
(DN)

(FD)

7.1.1 Parâmetros das Instruções SQO e SQC

Os

parâmetros das instruções são os seguintes:

File - Endereço do arquivo de seqüenciador. Deve-se utilizar o símbolo indicador de arquivo # para este endereço.

Os

dados do arquivo de seqüenciador são utilizados, conforme descrito na tabela 7.A.

Tabela 7.A Arquivo de Seqüenciador

Instrução

O arquivo de seqüenciador armazena:

SQO

Dados para controlar as saídas.

SQC

Dados de referência para monitorar as entradas.

Mask - Código hexa ou endereço da palavra de máscara ou arquivo através do qual a instrução movimenta os dados. Os bits da máscara são energizados para transferir os dados e desenergizados para mascarar os dados. Utilize uma palavra de máscara ou arquivo se desejar alterar a máscara de acordo com as necessidades da aplicação.

Se

a máscara for um arquivo, o seu comprimento será igual ao comprimento do arquivo de

seqüenciador e ambos terão a mesma posição passo a passo.

Source (SQC) - Endereço da palavra de entrada ou arquivo do qual a instrução obtém dados para a comparação com o arquivo de seqüenciador.

Dest (SQO) - Endereço da palavra de saída ou arquivo para o qual a instrução movimenta dados do arquivo de seqüenciador.

ATENÇÃO: Pode-se endereçar a máscara, fonte ou destino de uma instrução de seqüenciador através de uma palavra ou arquivo. Se endereçada como um arquivo

Curso básico do SLC 500 da Rockwell

39

(usando o símbolo indicador de arquivo #), a instrução, automaticamente, caminha através do arquivo fonte, máscara ou destino à medida que caminha, passo a passo, através de seu arquivo de seqüenciador.

Control - Endereço da instrução e elemento de controle que armazena o byte de estado da instrução, o comprimento do arquivo de seqüenciador e a posição instantânea no arquivo (figura 7.2).

15

13

11

08

00

EN

DN

ER

FD

Tamanho do arquivo de seqüenciador

Posição

Figura 7.2 Elemento de controle das Instruções SQO e SQC

Nota: Não utilize o endereço de controle da instrução SQO e SQC para nenhuma outra instrução.

Os bits de estado do elemento de controle são os seguintes:

EN (bit 15) - O bit de habilitação é energizado em uma transição de falsa para verdadeira

da linha e indica que a instrução SQO e SQC está habilitada. Segue a condição da linha.

DN (bit 13) - O bit de executado é energizado pela instrução SQO ou SQC depois de ter operado sobre a última palavra no arquivo de seqüenciador. Esse bit é desenergizado na próxima transição de falsa para verdadeira da linha assim que a linha passa para falsa.

ER (bit 11) - O bit de erro é energizado quando o controlador detecta um valor de posição negativo ou um valor de comprimento negativo ou zero. Se o bit de erro ER não tiver sido zerado antes da instrução END ou TND ser executada, ocorre uma falha grave.

FD (bit 08) - Apenas SQC. O bit de encontrado indica que uma correspondência foi encontrada na comparação de uma palavra ou arquivo de dados de entrada, através de uma máscara, com uma palavra ou arquivo de dados de referência. Quando o estado de todos os bits não mascarados em uma palavra de entrada são iguais aos bits da palavra de referência correspondente, o bit de encontrado é energizado. O bit de encontrado é energizado quando ocorre uma igualdade; caso contrário, esse bit é desenergizado. Esse bit é acessado cada vez que ocorre uma varredura na instrução SQC enquanto a linha estiver verdadeira.

Length - Este é o número de passos do arquivo de seqüenciador iniciando na posição 1. A posição 0 é a posição de partida. A cada ciclo completo a instrução rearma para a posição 1.

O

endereço atribuido a um arquivo de seqüenciador é o passo zero. As instruções de

seqüenciador utilizam o comprimento + 1 palavra da tabela de dados para cada arquivo referenciado na instrução. O mesmo se aplica para fonte, máscara e/ou destino, quando endereçados como arquivos.

Um valor de comprimento que ultrapassa o fim do arquivo programado faz com que ocorra uma falha grave de run-time. Se o valor do comprimento for alterado pelo programa de aplicação, certifique-se que o valor alterado seja válido.

Curso básico do SLC 500 da Rockwell

40

Position - Esta é a localização da palavra ou etapa no arquivo de seqüenciador de/para

o qual a instrução movimenta os dados.

Um valor de posição que ultrapassa o fim do arquivo programado faz com que ocorra uma falha grave de run-time. Se o valor da posição for alterado pelo programa de aplicação, certifique-se que o valor alterado seja válido.

7.1.2 Operação da Instrução SQO

A instrução de saída de seqüenciador (SQO) caminha, através do arquivo de

seqüenciador, para as palavras de saída, cujos bits são energizados para controlar vários dispositivos de saída.

Quando a linha passa de falsa para verdadeira, a instrução incrementa para o próximo

passo (palavra) no arquivo de seqüenciador. Os dados armazenados nesse arquivo são transferidos, através de uma máscara, para o endereço destino especificado na instrução.

Os dados atuais são inscritos na palavra destino correspondente, a cada varredura que a

linha permanecer verdadeira.

O bit de executado é energizado quando a última palavra do arquivo de seqüenciador é transferida. Na próxima transição de falsa para verdadeira da linha, a instrução faz com que a posição volte para o passo 1.

Na

inicialização, se a posição estiver em 0 (posição = 0) quando o controlador for passado

do

modo Programação para Operação, a operação da instrução dependerá da linha ser

verdadeira ou falsa na primeira varredura:

Se verdadeira, a instrução transfere o valor no passo 0.

Se falsa, a instrução aguarda pela primeira transição de falsa para verdadeira da linha

e

transfere o valor no passo 1.

Os

dados podem ser mascarados, desenergizando-se os bits da palavra de máscara.

Quando desenergizados, os bits mascaram os dados e quando energizados, passam os dados. A menos que os bits de máscara sejam energizados, a instrução não irá alterar o valor da palavra destino. A máscara pode ser fixa, introduzindo-se um código em hexadecimal. A máscara pode ser variável a cada passo, introduzindo-se um endereço de elemento ou um endereço de arquivo.

Curso básico do SLC 500 da Rockwell

41

Figura 7.3 Exemplo de Operação SQO

SQO SEQUENCER OUTPUT (EN) File #B10:1 Mask 0F0F (DN) Dest O:14 Control R6:20 Length 4
SQO
SEQUENCER OUTPUT
(EN)
File
#B10:1
Mask
0F0F
(DN)
Dest
O:14
Control
R6:20
Length
4
Position
2
 

0

0 0 0

0

1 0 1

0

0 0 0

1

0 1 0

Destino O:14

0

0 0 0

1

1 1

1

0

0 0 0

1

1

1 1

Máscara 0F0F

Palavra

Etapa

B10:1

0

0 0 0

0

0 0 0

0

0 0 0

0

0 0 0

0

B10:2

1

0 1 0

0

0 1 0

1

1

1 1

0

1 0 1

1

         
Etapa atual
Etapa atual

B10:3

1

1

1 1

0

1 0 1

0

1 0 0

1

0 1 0

2

       

B10:4

0

1 0 1

0

1 0 1

0

1 0 1

0

1 0 1

3

B10:5

0

0 0 0

1

1 1

1

0

0 0 0

1

1

1 1

4

Registro de Índice nos Controladores SLC-5/02

Saídas externas Associadas a O:14

energizado

energizado

energizado

energizado

O valor existente no registro de índice S:24 é sobreposto quando a instrução de

seqüenciador é verdadeira. O valor do registro de índice irá se igualar ao valor da posição

da instrução.

7.1.3 Operação da Instrução SQC

A instrução SQC compara uma palavra ou arquivo dos dados de entrada através de uma máscara para uma palavra ou arquivo de referência de dados para igualdade. Quando o

estado de todos os bits não-mascarados em uma palavra de entrada combinam com os bits da palavra de referência correspondente, a instrução se torna verdadeira e energiza o

bit de encontrado (FD) na respectiva palavra de controle. Caso contrário, a instrução é

falsa, o que desenergiza o bit de encontrado (FD).

Os dados podem ser mascarados desenergizando-se os bits na palavra de máscara. Quando desenergizados, os bits mascaram os dados; quando energizados, passam os

Curso básico do SLC 500 da Rockwell

42

dados. A menos que os bits de máscara sejam energizados, a instrução não irá comparar os bits no arquivo de referência com valor de entrada. A máscara pode ser fixada introduzindo-se um código em hexadecimal. A máscara pode ser uma variável introduzindo-se um endereço de elemento ou um endereço de arquivo para alterar a máscara em cada passo.

Quando a linha passa de falsa para verdadeira, a instrução incrementa para o próximo passo (palavra) no arquivo de seqüenciador. Os dados armazenados nesse arquivo são transferidos através de uma máscara e comparados com os dados da fonte. Se iguais aos dados da referência, o bit de FD é energizado no contador de controle da instrução SQC. Os dados atuais são comparados com o fonte a cada varredura que a linha é verdadeira.

As aplicações da instrução SQC incluem o diagnóstico de máquina.

A figura 7.4 apresenta a operação da instrução SQC.

Figura 7.4 Exemplo de Operação SQC

SEQUENCER COMPARE (EN) File #B10:1 Mask 0F0F (DN) Source O:14 Control R6:20 (FD) Length 4
SEQUENCER COMPARE
(EN)
File
#B10:1
Mask
0F0F
(DN)
Source
O:14
Control
R6:20
(FD)
Length
4
Position
2

Palavra de entrada I:3

 

0

0 1 0

0