Complementar CLP’s
Rockwell
Transferência em bloco______________________________________________________________________ 79
Block Transfer Write (BTW) ________________________________________________________________ 79
Block Transfer Read (BTR)__________________________________________________________________ 80
Os parâmetros da Instrução BTR e BTW ______________________________________________________ 80
Tipos de Programação ____________________________________________________________________ 85
O arquivo de interrupção temporizada programável (STI) na família SLC 500 _________________________ 114
Compartilhamento de Dados de Tag com Outros Controladores (Tags Produzidos e Consumidos) _______ 151
Introdução
É destinado ao pessoal de manutenção que necessita de conhecimentos
sobre os controladores das famílias PLC5, SLC500 e ControlLogix da Allen-Bradley.
Capacita os tecnicos a sugerir e/ou modificar, elaborar e a fazer manutenção dos
programas das máquinas de produção.
Neste curso veremos a complementação de organização de memória, as
instruções que manipulam blocos de palavras.
Observação:
Recomenda-se utilizar os arquivos em ordem seqüencial. As falhas na ordem
seqüencial são permitidas, porém cada arquivo não utilizado diminui o tamanho da
memória em 2 palavras por número de arquivo saltado.
Observação:
Os termos Arquivo de Dados e Bloco de dados são equivalentes, pois um
bloco de dados nada mais é do que um pequeno arquivo de dados, visando uma
melhor coomprensão será utilizado no decorrer do curso o termo bloco de dados.
O arquivo de controle
Uma instrução que manipula os dados de um bloco de dados (arquivo)
necessita de um elemento de controle para definir o tamanho do arquivo, qual das
palavras no arquivo será manipulada na varredura atual, quando termina a execução
da instrução, etc. O arquivo de controle é usado para controlar as instruções que
manipulam arquivos. O arquivo de controle pode ter até 1000 elementos para os
processadores PLC5 ou 258 para os SLC500. Cada elemento utiliza 3 palavras,
conseqüentemente um arquivo de controle pode ter até 3000 palavras para os PLC5
e 774 palavras para os SLC.
Bits de estado
EN EU DN EM ER UL IN FD Não utilizado
R6:0 Comprimento do arquivo (LEN)
Posição do arquivo (POS)
Cada elemento de controle tem uma palavra para os bits de estado, uma para
definir o comprimento do arquivo e uma para indicar qual palavra no arquivo está
sendo operada na varredura corrente.
Índice
Matriz Tridimensional
Na pasta Edit Tags, digite o nome da tag na coluna "Tag Name", depois
defina o tipo desta tag na coluna "Type", neste momento a janela abaixo será
exibida.
Onde cada elemento é identificado com o nome do tag, no caso o nome dado
ao tag é ‘array’,juntamente com um índice entre colchetes [x].
DINT
DINT
CONTROL
BOOL
Isso ocorre por que as instruções que manipulam bloco de dados manipulam o
duplo-inteiro (.POS), que pode também ser manipulado pelo programador caso seja
necessário.
É uma instrução não utiliza bits de estado. Se um bit de validação for necessário, é
possível programar uma saída paralela utilizando um endereço de memória.
Dest (destino)
É o endereço do bloco de dados para onde se deseja transferir os dados copiados.
Length (comprimento)
Define o comprimento de elementos do bloco de dados para onde se deseja copiar.
DUPLO_INTEIRO[0]
32bits
INTEIRO[1] INTEIRO[0]
16bits 16bits
INTEIRO[0]
INTEIRO[1]
DUPLO_INTEIRO[0] INTEIRO[2]
INTEIRO[3]
DUPLO_INTEIRO[1]
INTEIRO[4]
DUPLO_INTEIRO[2]
INTEIRO[5]
DUPLO_INTEIRO[3]
INTEIRO[6]
DUPLO_INTEIRO[4] INTEIRO[7]
INTEIRO[8]
INTEIRO[9]
É uma instrução não utiliza bits de estado. Se um bit de validação for necessário, é
possível programar uma saída paralela utilizando um endereço de memória.
Dest (destino)
É o endereço do bloco de dados onde se deseja encher com o dado copiado.
Length (comprimento)
Define o comprimento de elementos do bloco de dados que se deseja encher.
32767 INTEIRO[1]
32767 INTEIRO[2]
32767 INTEIRO[3]
32767 INTEIRO[4]
32767 INTEIRO[5]
INTEIRO[0] 32767 INTEIRO[6]
32767
32767 INTEIRO[7]
32767 INTEIRO[8]
32767 INTEIRO[9]
32767 INTEIRO[10]
Length (comprimento)
É o comprimento dos bloco de dados da instrução sobre os quais se
processam a operação, Pode ser um número de 1 a 1000.
Position (posição)
Memoriza o nº da posição dos bloco de dados sobre os quais se processam a
operação em um dado momento. A operação termina quando o valor da posição
aponta para o fim do bloco de dados.
Mode (modo)
A instrução FAL pode executar operações lógicas e aritiméticas através de
três modos disitntos de execução, são eles: modo Incremental, modo Completo e
modo Distribuido. O modo de operação que a instrução irá executar é definido na
opção Mode que você seleciona quando programa a instrução FAL. A seleção de
modo instrui o processador como distribuir a operação no bloco de dados, se em
uma ou mais varreduras de programa. A seguir veremos em detalhe cada um
desses modos de operação.
Bit ( DN )
Bit de fim de operação (DN). É colocado a "1" quando a operação da
instrução está terminada. Volta a "0" junto com o bit EN, ou na varredura seguinte ao
fim da operação caso a linha já esteja desenergizada.
Bit ( ER )
Bit de indicação de erro (ER). É colocado a "1" quando é detectado um erro
na operação, interrompendo-a e permanecendo a "1" até que seja recolocado a "0".
Execução da Operação
Bit ( DN )
Bit de fim de operação (DN). É colocado a "1" quando a operação da
instrução está terminada. Volta a "0" junto com o bit EN, ou na varredura seguinte ao
fim da operação caso a linha já esteja desenergizada.
Bit ( ER )
Bit de indicação de erro (ER). É colocado a "1" quando é detectado um erro
na operação, interrompendo-a e permanecendo a "1" até que seja recolocado a "0".
Segunda Varredura
Execução da Operação
Próxima Varredura
Bit ( DN )
Bit de fim de operação (DN). É colocado a "1" quando a operação da
instrução está terminada. Volta a "0" junto com o bit EN, ou na varredura seguinte ao
fim da operação caso a linha já esteja desenergizada.
Bit ( ER )
Bit de indicação de erro (ER). É colocado a "1" quando é detectado um erro
na operação, interrompendo-a e permanecendo a "1" até que seja recolocado a "0".
Ultima.Instrução Habilitada
Caso especial
A diferença entre o modo distribuído com seleção do número de palavras por
varreduras = 1 e o modo incremental é:
• Em modo distribuído com qualquer taxa por varredura, apenas uma transição
de falsa para verdadeira é necessária para a instrução executar o bloco de
dados inteiro.
• Em modo incremental há a necessidade de uma transição de falsa para
verdadeira para cada palavra do bloco de dados.
É onde você define a operação que deseja efetuar através de uma expressão.
Você a define com os operadores (=, +, -, *,...) e endereços de bloco de dados,
elementos da memória de dados ou constantes de programa.
A forma do endereço determina se o Destino ou a Expressão da operação,
é uma matriz ou um elemento. Por exemplo, BlocoA[CONTROLE.POS], representa
uma matriz . BlocoA[5],representa um elemento.
Length (Comprimento)
É o comprimento dos bloco de dados da instrução sobre os quais se
processam a operação, seu valor varia conforme o tipo de dado que esta definido no
desetino.
Position (Posição)
Indica o número do elemento da matriz de dados em que se processa a
operação em um dado momento. É utilizado com índice em uma matriz de dados .A
operação termina quando o valor da posição aponta para o fim do da matriz de
dados.
Mode (modo)
A instrução FSC pode executar as comparações através de três modos
disitntos de execução, são eles: modo Incremental, modo Completo e modo
Distribuido. O modo de operação que a instrução irá executar é definido nesta
opção, que você seleciona quando programa a instrução FSC. A seleção de modo
instrui o processador como distribuir a operação no bloco de dados, se em uma ou
mais varreduras de programa. A seguir veremos em detalhe cada um desses modos
de operação.
Bit ( DN )
Bit de fim de operação. É colocado a "1" quando a operação da instrução está
terminada. Volta a "0" junto com o bit EN, ou na varredura seguinte ao fim da
operação caso a linha já esteja desenergizada.
Bit ( ER )
Bit de indicação de erro. É colocado a "1" quando é detectado um erro na
operação, interrompendo-a e permanecendo a "1" até que seja recolocado a "0".
Bit ( IN )
Bit de indicação de invalidação. É colocado a "1" cada vez que o processador
detecta uma comparação verdadeira. O programa deve resetar este bit para
continuar a pesquisa após tomar as providências necessárias pelo exame do bit FD.
A cada vez que é encontrada uma comparação verdadeira é necessário uma
transição na linha de falsa para verdadeira, após o reset do bit IN, caso a linha
esteja falsa. Caso esteja verdadeira, não há necessidade de transição da linha.
Bit ( FD )
Bit de indicação de dado achado. É colocado a "1" quando o processador
detecta uma comparação verdadeira. O processador pára a pesquisa e também
coloca o bit IN a "1". O bit FD é a saída da instrução.
Observação: No caso da linha estar verdadeira após o reset do bit IN, quando
é encontrada a primeira comparação verdadeira, o processador vai procurando as
outras comparações verdadeiras e resetando o bit IN devido à velocidade da
varredura. Se quiser evitar isto, coloque uma instrução ONS antes da instrução OTU
com o endereço do bit IN para garantir que o reset seja dado somente naquela
varredura.
Entrada
Bit .EN
Bit .IN
Bit .FD
9
5 5
Posição
0 0
Bit DN
Modo distribuído
Você especifica quantas palavras do bloco de dados deseja pesquisar a cada
varredura até encontrar uma comparação verdadeira. Quando isso ocorre, o bit IN é
colocado a "1" e então é necessário resetá-lo. Após o reset do bit IN, o processador
procura a próxima comparação verdadeira sem se importar com o estado da linha da
instrução.
Observação: Após o reset do bit IN, quando é encontrada a primeira
comparação verdadeira, o processador vai procurando as outras comparações
verdadeiras e resetando o bit IN devido à velocidade da varredura. Se quiser evitar
isto, coloque uma instrução ONS antes da instrução OTU com o endereço do bit IN
para garantir que o reset seja dado somente naquela varredura.
Bit ( DN )
Bit de fim de operação. É colocado a "1" quando a operação da instrução está
terminada. Volta a "0" junto com o bit EN, ou na varredura seguinte ao fim da
operação caso a linha já esteja desenergizada.
Bit ( ER )
Bit de indicação de erro. É colocado a "1" quando é detectado um erro na
operação, interrompendo-a e permanecendo a "1" até que seja recolocado a "0".
Bit ( IN )
Bit de indicação de invalidação. É colocado a "1" cada vez que o processador
detecta uma comparação verdadeira. O programa deve resetar este bit para
continuar a pesquisa após tomar as providências necessárias pelo exame do bit FD.
Quando o bit IN é resetado, o processador continua a pesquisa sem precisar de
transição da linha de falsa para verdadeira.
Bit ( FD )
Bit de indicação de dado achado. É colocado a "1" quando o processador
detecta uma comparação verdadeira. O processador pára a pesquisa e também
coloca o bit IN a "1". O bit FD é a saída da instrução.
Entrada
Bit .EN
Bit .IN
Bit .FD
9
5 5
Posição
0 0
Bit DN
Modo incremental
Cada palavra do bloco de dados apontada pela palavra posição do elemento
de controle é comparada a cada transição da linha de falsa para verdadeira.
A comparação começa com uma transição da linha de falsa para verdadeira a
compara a posição zero do bloco de dados. Na próxima transição, o processador
incrementa para a posição 1 e compara esta nova posição, na terceira transição,
incrementa para a posição 2 e compara esta nova posição, e assim por diante, até
atingir o final do bloco de dados. Para executar toda a comparação deverá ocorrer
um número de transição igual ao comprimento do bloco de dados.
Bit ( DN )
Bit de fim de operação. É colocado a "1" quando a operação da instrução está
terminada. Volta a "0" junto com o bit EN, ou na varredura seguinte ao fim da
operação caso a linha já esteja desenergizada.
Bit ( ER )
Bit de indicação de erro. É colocado a "1" quando é detectado um erro na
operação, interrompendo-a e permanecendo a "1" até que seja recolocado a "0".
Bit ( IN )
Bit de indicação de invalidação. É colocado a "1" cada vez que o processador
detecta uma comparação verdadeira. O programa deve resetar este bit para
continuar a pesquisa após tomar as providências necessárias pelo exame do bit FD.
Bit ( FD )
Bit de indicação de dado achado. É colocado a "1" quando o processador
detecta uma comparação verdadeira. O processador pára a pesquisa e também
coloca o bit IN a "1". O bit FD é a saída da instrução.
Entrada
Bit .EN
Bit .IN
Bit .FD
9
5
2 8
1
Posição
0 0
Bit DN
Arquivo FIFO
#N40:1
123
47
Parâmetro Fonte 53 Parâmetro Destino
N40:0 22 N40:11
123 16 123
INTEIRO[0] INTEIRO[1]
Família PLC 5
Família ControlLogix
MatrizA[0]
Source (fonte)
É o endereço onde o processador vai procurar o dado para armazenar no
bloco de dados FIFO.
FIFO
É o endereço do grupo de palavras onde serão armazenados os dados e
depois retirados na mesma ordem que entraram, ou seja, o primeiro a entrar é o
primeiro a sair.
Dest (destino)
É o endereço para onde o processador transfere o dado retirado do bloco de
dados FIFO.
Bit ( EU )
Bit de validação de descarregamento de FIFO. É colocado a "1" quando a
linha da instrução FFU passa de falsa para verdadeira indicando que a instrução
está habilitada. Acompanha o estado da linha.
Bit ( DN )
Bit de indicação de bloco de dados FIFO cheio. É colocado a "1" pelo
processador para indicar que o bloco de dados FIFO está cheio. Um novo
carregamento é invalidado pelo processador até que haja vaga no bloco de dados. A
Bit ( EM )
Bit de indicação de bloco de dados FIFO vazio. É colocado a "1" pelo
processador para indicar que o bloco de dados FIFO está vazio. A palavra posição
(POS) do elemento de controle está igual a zero.
Length (comprimento)
É o número máximo de elementos contidos no bloco de dados FIFO.
Position (posição)
Indica o número de posições ocupadas no bloco de dados FIFO.
Quando a linha que contém a instrução FFL passa de falsa para verdadeira, o
processador coloca o bit EN a "1" e copia o conteúdo do elemento especificado no
parâmetro fonte (N40:0) para o próximo elemento disponível no bloco de dados FIFO
apontado pela palavra posição do elemento de controle. O processador carrega um
elemento a cada vez que a linha passa de falsa para verdadeira até encher o bloco
de dados denominado FIFO. Quando o bloco de dados FIFO está cheio, o
processador coloca o bit DN a "1" e invalida os carregamentos suplementares. O
programa à relés deve detectar quando o bloco de dados FIFO está cheio e tomar as
medidas necessárias.
Quando a linha que contém a instrução FFU passa de falsa para verdadeira, o
processador coloca o bit EU a "1" e descarrega o dado do primeiro elemento
armazenado no bloco de dados FIFO para a palavra de destino (N40:10). Ao mesmo
tempo o processador desloca todos os dados no bloco de dados uma posição em
direção à primeira palavra. O processador descarrega um elemento de cada vez
quando a linha passa de falsa para verdadeira até esvaziar o bloco de dados FIFO.
Quando o bloco de dados FIFO está vazio, o processador coloca o bit EM a "1".
Após o bloco de dados estar vazio o processador transfere o valor zero para o
elemento destino à cada transição da linha de falsa para verdadeira até a instrução
FFL carregar novos valores. O programa à relés deve detectar quando o bloco de
dados FIFO está vazio e impedir que outras instruções usem o valor zero
armazenado no parâmetro destino.
Bit ( DN )
Bit de fim de operação. É colocado a "1" quando todos os bits do bloco de
dados deslocou-se uma posição.
Bit ( ER )
Bit de indicação de erro. É colocado a "1" quando o processador detecta um
erro, tal como a entrada de um número negativo no comprimento de bloco de dados.
Bit ( UL )
Bit de indicação de último estado. É a instrução e saída. O bit UL armazena o
estado do bit removido do bloco de dados a cada vez que a instrução é habilitada.
Evite usar o bit UL quando o bit de erro for colocado a "1".
Length (comprimento)
É o número de bits do bloco de dados.
Quando a linha que contém a instrução BSL passa de falsa para verdadeira, o
processador coloca o bit EN a "1". Então o processador desloca todos os bits no
bloco de dados em uma posição para a esquerda. O último bit do bloco de dados é
deslocado para o endereço do bit UL do elemento de controle. O bit fonte
especificado é deslocado para a primeira posição do bloco de dados.
DINT[0]
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
DINT[1]
63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Bit .UL
SENSOR
MatrizA[0]
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
MatrizA[1]
63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32
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 0 0 0 0 0
CONTROLE.ul 1 MatrizA[1].20
Quando a linha que contém a instrução BSR passa de falsa para verdadeira,
o processador coloca o bit EN a "1". Então o processador desloca todos os bits no
bloco de dados em uma posição para a direita. O primeiro bit do bloco de dados é
deslocado para o endereço do bit UL do elemento de controle. O bit fonte
especificado é deslocado para a última posição do bloco de dados.
Bit .UL
DINT[0]
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
DINT[1]
63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Source Bit
As instruções de diagnósticos
As instruções de diagnósticos são utilizadas para o diagnóstico de operações
da máquina ou do processo comparando um bloco de dados de entrada a um de
referência para detectar diferenças de bits. As instruções de comparação são:
Comparação de bloco de dadoss de bits (FBC)
Detecção de transição em bloco de dadoss de bits (DDT)
Família PLC 5
Família ControlLogix
Bit 31 Source - MatrizA
Bit 4
31 28 27 24 8 5 4 0
MatrizA[0]
MatrizA[1]
MatrizA[2] Bit 32
Bit 93
Source - MatrizB
31 28 27 24 8 5 4 0
MatrizB[0]
MatrizB[1]
MatrizB[2]
Result - MatrizR
Reference (referência)
É o endereço do bloco de dados que contém os dados em relação aos quais o
bloco de dados de entrada é comparado.
Result (resultado)
É o endereço do bloco de dados no qual é memorizado o número da posição do bit
de cada diferença descoberta pela instrução.
Length (comprimento)
É o número em decimal dos bits comparados dos bloco de dados fonte e referência.
Não esqueça que os bits dos bloco de dados de E/S são numerados em octal (0 a
17), mas todos os outros bloco de dados são numerados em decimal (0 a 15).
Position (posição)
É a posição atual do bit para onde a instrução aponta.
Bit ( DN )
Bit de bloco de dados resultado cheio. É colocado a "1" quando o bloco de dados
resultado está cheio. A instrução interrompe a operação e necessita de outra
transição na linha de falsa para verdadeira para recolocar o bit DN a zero e
prosseguir. Se a instrução descobrir outras diferenças, armazena os números dos
bits nas primeira posições do bloco de dados resultado, sobrepondo os números
anteriores.
Bit ( ER )
Bit de indicação de erro. É colocado a "1" quando o processador detecta um erro e
interrompe a operação da instrução. O programa deve resetar o bit ER caso seja
detectado um erro na operação da instrução.
Bit ( IN )
Bit ( FD )
Bit de dado achado. É colocado a "1" cada vez que o processador armazena o
número do bit diferente no bloco de dados resultado (caso o bit IN esteja a "1") ou
após ter armazenado todas as diferenças (caso o bit IN esteja a "0").
Os Modos de Operação
Operação ao qual a instrução inicia com uma transição na linha de falsa para
verdadeira. A instrução pesquisa por todas as diferenças entre os bloco de dados de
entrada e referência em uma varredura. Após encontrar as diferenças, a instrução
coloca o número da posição da diferença no bloco de dados resultado na ordem em
que foram achadas. Após alcançar o fim dos bloco de dados de entrada e referência,
a instrução coloca o bit FD a "1" se pelo menos uma diferença foi detectada. Depois
a instrução coloca o bit DN a "1". Se for selecionado um comprimento do bloco de
dados resultado insuficiente para armazenar todas as diferenças, instrução pára e
necessita outra transição na linha para seguir a operação. A instrução coloca os
novos números da posição dos bits no início do bloco de dados resultado,
sobrepondo os anteriores.
Após completar a pesquisa e quando a linha torna-se para falsa, a instrução reseta:
Bit EN
Bit FD (se estiver a "1")
Bit DN de comparação
Bit DN de resultado (se estiver a "1")
As palavras posição dos dois elementos de controle
Para habilitar este modo de operação, coloque o bit de invalidação a "0" (IN = 0) pelo
programa ou diretamente no bloco de dados de dados (bloco de dados R).
Identificação do Arquivo
de Dados N7:0
Número da Palavra
Número do Bit
Identificação do Arquivo
de Dados N7:0/3
Número da Palavra
Identificação do Arquivo
de Dados N7:[N10:0]
Endereço apontador entre
colchetes
Devemos sempre movimentar um valor para palavra S:24 para idicar qual
palavra iremos apontar dentro do arquivo de dados como mostra no exemplo abaixo
:
O valor de S:24 = 5
O valor de S:24 = 5
Observação:
No exemplo da figura, um valor da palavra fonte I:010 é deslocado para as palavras
de destino diferentes definidas por um endereçamento indexado #N10:0. A
indexação é realizada pelo deslocamento de um valor acumulado do contador na
palavra de índice S:24 do arquivo de "status".
Os módulos Analógicos
Os módulos analógicos são utilizados quando desejamos trabalhar com sinais
analógicos, sinais que têm valores que variam de modo contínuo numa determinada
escala.
Geralmente associamos os sinais analógicos a grandezas físicas tais como:
comprimento, temperatura, pressão, vazão, velocidade, níveis, pH, entre outros.
Quando falamos em Automação Industrial os dispositivos que manipulam os
sinais analógicos representam esse valor através de sinais elétricos, que podem ser
tensão ou corrente. Exemplificando, temos um sensor de temperatura de 0o a 100 oC
que pode representar esta temperatura através de um sinal de tensão de 0 a 10v.
De um modo geral os módulos analógicos possuem no seu hardware
conversores “Analógico ►Digital” nas entradas e conversores “Digital ►Analógico”
nas saídas. No caso das entradas, esses conversores têm a função de converter os
sinais analógicos para um código binário, visualizado na forma decimal, que é
armazenado em uma palavra da base de dados do CLP. No caso das saídas,
teremos palavra da base de dados (código binário visualizado na forma decimal)
convertida em um sinal analógico.
As grandezas físicas medidas ou controladas pelos módulos analógicos
possuem uma relação direta com os sinais elétricos fornecidos pelos mesmos.
Conseqüentemente possuem também uma relação direta com as correspondentes
palavras da base de dados do controlador.
50 oC 5v 16384 500
0 oC 0v 0 0
1000
Corresponde ao
valor de temperatura 500
0oC a 100 oC
0
0 16384 32760
Corresponde ao
valor de tensão
0v a 10v
Transferência em bloco
Podemos transferir até 64 palavras de 16 bits de dados de/ou para a
tabela de dados do controlador em uma única varredura do módulo de E/S utilizando
as instruções BTR e BTW.
A transferência em bloco pode ser executada como uma operação de leitura,
escrita ou bidirecional.
Veremos a seguir as instruções suas configurações e formas de
programação.
Group
É o número do grupo de E/S que especifica a posição do módulo de E/S
destinatário no chassi de E/S (faixa de 0 a 7).
Module
É a posição da ranhura no grupo de E/S. Colocar 0 para a ranhura da
esquerda e 1 para a da direita no grupo. No caso de endereçamento de uma
ranhura, colocar este parâmetro a 0. No caso de utilizar-se módulos de dupla
ranhura, colocar este parâmetro também a 0.
Control block
É um arquivo de números inteiros com 5 palavras que controla a operação da
instrução. Entrar o endereço do arquivo de números inteiros no qual selecionará
automaticamente 5 elementos para controlar a operação da instrução.
Data file
É o endereço do arquivo de dados de transferência em bloco a partir do qual
(escrita) ou no qual (leitura) o processador transfere os dados.
Length
É o número de palavras que o módulo transfere.
Continuous
Determina o modo de execução da instrução (verificar o bit CO mais adiante).
EW (bit 10)
O bit de validação de espera ativa-se quando o pedido entra na fila de
espera. Se a fila estiver cheia no momento do pedido, o bit permanecerá a zero até
que haja lugar na fila de espera. Desativa-se na transição de falso para verdadeiro
seguinte após o bit de erro ou de executado ter sido colocado a “1”.
NR (bit 09)
O bit de ausência de resposta ativa-se se o módulo de transferência em
bloco não responde ao primeiro pedido. Permanece a “1” até que a linha “sofra” uma
nova transição de falsa para verdadeira.
TO (bit 08)
O bit de tempo excedido, se for colocado a zero, deixa o processador fazer
diversas tentativas, durante quatro segundos, de transferência em bloco para o
módulo que não responde antes de colocar a “1” o bit de erro. O bit de tempo
excedido pode ser colocado a “1” pelo programa a qualquer momento. Quando é
colocado a “1”, o processador invalida o temporizador cujo objetivo é controlar o
tempo excedido de quatro segundos e pede uma transferência uma vez mais antes
de colocar o bit de erro a “1”.
Importante:
À exceção do bit TO (bit 08), não modificar nenhum dos bits de estado ou de
comando de uma instrução de transferência em bloco no momento em que a
instrução é validada. Uma operação errada poder ocorrer.
Tipos de Programação
Podemos Programar o processador para efetuar transferência em bloco de
forma Bidirecional, Independente ou continua.
Programação Bidirecional
Programação Independente
Programação Contínua
• I:1.0 – Canal 1
• I:1.1 – Canal 2
• I:1.2 – Canal 3
• I:1.3 – Canal 4
1000
500
0
0 16384
Input (Entrada)
Digite um valor para ser escalado. Pode ser um endereço de palavra ou um
endereço de elementos de dados de ponto flutuante.
Output. (Saída)
Digite um endereço para o valor escalado que é retornado após a instrução
ser executada. Esse valor pode ser um endereço de palavra, um endereço longo
(palavra dupla) ou um endereço de elementos de dados de ponto flutuante. Se
qualquer tipo de arquivo de ponto flutuante ou constantes de ponto flutuante forem
encontradas nos parâmetros acima, então toda a instrução é tratada como em ponto
flutuante, e todas os valores de dados inteiro imediatos são convertidos para valores
de dados imediatos de ponto flutuante.
Após ser definida e finalizada toda a configuração do novo módulo analógico são
criados na pasta ‘Controller Tags’ os tags referentes ao novo módulo analógico.
Instalação do Módulo
Clique em OK. Entre com as configurações pare este módulo como mostrado
na figura a seguir.
Defina um nome para o cartão com até 40 caracteres, não sendo permitido a
utilização de caracteres especais e o início com números.
Especifique em qual slot o cartão estará instalado. Se necessário preencha o
campo descrição com informações sobre a utilização do mesmo.
Em COMM FORMAT, encontraremos oito opções de configuração:
• CST Timestamped Float Data: Ao selecionarmos esta opção, tornamos a
CPL onde o módulo de I/0 esta sendo configurado, mestre do cartão, para a
escrita dos dados de saída f das configurações do módulo. O cartão de saída
será atualizado a partir de uma base de tempo determinada pela CPU mestre
do cartão. Os dados deverão ser do tipo REAL. O termo CST significa
Coordinate System Time, ou seja, Coordenador do tempo do sistema para a
troca de dados.
• CST Timestamped Integer Data: Idem ao anterior, porém os dados deverão
ser do tipo C INT.
Obs: Como a configuração anterior, o cartão ignorará o valor do RPI e
responderá de acordo com o tempo configurado pela CPU.
• Float Data: Os dados serão enviados ao módulo de I/0 de acordo com o RPI
estipulado na configuração do mesmo. Os dados deverão ser do tipo REAL.
• Integer Data: Idem ao anterior, porém os dados deverão ser do tipo DINT.
• Listen Only - CST Timestamped Float Data: Esta configuração deverá ser
Defina os valores para o RPI, para manter o cartão desabilitado e/ou gerar uma
falha grave no controlador quando o módulo for removido.
Clique em próximo para a exibição da próxima tela de configuração.
A tela mostrada na figura a seguir só é ativa quando conectado on-line com o
processador.
• -10V à 10V
• 0V à 5V
• 0V à 10V
• 0mA à 20mA
1
2
3
4
5
6
7
8
Controlador Backplane
Isso quer dizer que não podemos garantir o estado de uma entrada em
diversas linhas ao logo de toda a execução do programa na família de
controladores ControlLogix como é garantido nos controladores das famílias
PLC 5 e SLC 500. Para garantir o estado da entrada em todo o programa é
preciso adicionar a lógica na primeira rotina do programa uma cópia dos
endereços dos módulos de entrada para tags internos, utilizando os tags
internos em toda lógica do programa e no caso das saídas utilizar tags internos
para representar os acionamentos na lógica do programa e adicionar uma
cópia destes tags internos aos endereços dos módulos de saída na ultima
rotina do programa.
Recomendação de Programação
Recomenda-se programar um contador no sub-programa de resolução de
defeitos a fim de contar o número de vezes que o sub-programa de resolução
de defeitos foi validado. Após um número pré-selecionado, a lógica deverá
abandonar a colocação à zero da palavra 11 e deixar o processador entrar em
erro (passagem do modo execução para o modo programação).
Use a instrução SSV para escrever nos atributos como mostra a figura abaixo:
No controlador é definido:
Data Table Addres: O endereço do bloco de dados ou palavra.
No caso da mensagem tipo Read/Litura: O bloco de dados ou palavra
que armazenará as informações lidas do outro controlador;
No caso da mensagem tipo Write/Escrita: O bloco de dados que
armazena as informações que serão enviadas ao outro controlador;
Size in elements: Defini o comprimento do bloco de dados que é utilizado na
troca de dados entre os controladores.
Quando se deseja escrever ou ler somente uma palavra o Size in element
deve ter valor=1; O valor do Size in element deve ser diferente de 0;
Channel: O número da porta de comunicação do controlador.
ControlLogix
Código de
erro (CIP) Descrição
(hex):
0001 Falha de Conexão (Consulte os códigos de erro estendidos)
0002 Recurso insuficiente
0003 Valor Inválido
0004 Erro de sintaxe IOI (Consulte os códigos de erro estendidos)
Destino desconhecido, classe não suportado, instância indefinida
0005
(Consulte os códigos de erro estendidos)
0006 Espaço insuficiente no pacote
0007 Perda de conexão
0008 Serviço não suportado
0009 Erro no segmento de dados ou valor de atributo inválido
000A Erro na lista de atributo
000B Estado já existente
000C Conflito no modelo do objeto
000D Objeto já existente
000E Atributo não configurável
000F Permissão Negada
0010 Conflito com o estado do dispositivo
0011 A resposta não será adequada
0012 Fragmento Primitivo
0013 Dados de comando insuficiente
0014 Atributo não suportado
0015 Excesso de dados
001A Pedido de ponte muito grande
001B Resposta de ponte muito grande
001C Falta de lista de atributos
001D Lista de atributos inválidos
001E Erro no serviço incorporado
Falha relacionada a conexão (Consulte os códigos de erro
001F
estendidos)
0022 Resposta recebida inválida
0025 Erro de segmento principal
0026 Erro de IOI inválido
0027 Atributo inesperado na lista
0028 Erro na DeviceNet – Identificação de Membro inválido
0029 Erro na DeviceNet – membro não configurável
Código de erro
estendido (001F) Período de espera da conexão
0203
Código de erro
estendido (0004 e 0005) Status estendido fora da memória
0000
Código de erro
estendido (0004 e 0005) Status estendido fora dos exemplos
0001
Código de
erro (PLC e
SLC) Descrição
estendido de
00F0 (hex):
0001 Controlador converteu incorretamente o enredereço
0002 Endereço incompleto
0003 Endereço incorreto
0004 Formato ilegal do endereço – símbolo não encontrado
Formato ilegal do endereço – símbolo tem o valor 0 ou maior do
0005
que o número máximo de caracteres suportado pelo dispositivo
0006 Arquivo de endereço não existe no controlado alvo
Arquivo de destino é muito pequeno para o número de palavras
0007
solicitado
Não consegue completar o pedido, situação alterada durante a
0008
operação com vários pacotes
0009 Dados ou arquivo muito grande memória não disponível
Controlador alvo não consegue colocar as informações requisitadas
000A
em pacote
000B Erro de privilégio; Acesso negado
000C Função requisitada não está disponível
000D Pedido redundante
000E Comando não pode ser executado
000F Overflow do histograma
0010 Sem acesso
0011 Tipo de dados requisitados não corresponde aos dados disponíveis
0012 Parâmetros de comando incorretos
0013 Referência de endereço existe para uma área apagada
Falha na execução do comando por motivo desconhecido overflow
0014
no CLP-3
0015 Erro na conversão de dados
Scanner não está disponível para comunicação com um adaptador
0016
gaveta 1771
0018 Reposta do módulo 1771 não foi válida
0019 Etiqueta duplicada
Controlador que armazena a configuração do programa ativo - o
001A
arquivo está sendo usado
Controlador que armazena a configuração do programa ativo –
001B
alguém está descarregando dados ou fazendo edição online
Arquivo do disco está protegido contra gravação ou não pode ser
001C
acessado ( somente offline)
O Arquivo do disco está sendo usado por outro aplicativo
001D
Atualização não realizada (somente offline)
Crie um novo tag tipo consumidor selecione o controlador que está o tag
produtor e o nome do tag produtor.
Quantidade Configuração
Quantidade de palavras da memória E/S
de de
utilizada por cada dispositivo
Dispositivos Rack Lógico
4 Rack Full 8 palavras de entrada / 8 palavras de saída
8 ½ Rack 4 palavras de entrada / 4 palavras de saída
16 ¼ Rack 2 palavras de entrada / 2 palavras de saída
* É possível ligar Racks remotos com diferentes configurações de Rack lógicos desde que não
ultrapasse o limite máximo de 32 palavras de E/S.
A seguir é mostrado como fica a tabela imagem E/S do controlador SLC para
uma determinada configuração da rede REM I/O.
Hardware
1. Led de Status
2. Adesivo frontal
3. Conector rede REM I/O
4. Abertura para abraçadeira de cabo
5. Trava de segurança
6. Adesivo lateral
7. Minisseletora configuração velocidade de rede
A minisseletora SW1
A instalação elétrica
Clique em edit G data e abrirá a tela de configuração dos dispositivos escravos,a seguir
é mostrada a configuração do módulo para uma determinada configuração da rede
REM I/O.
1747 – DCM
O modulo de conexão direta 1747-DCM permite conectar um controlador da
família SLC a um mestre da rede REM I/O através da criação de uma tabela de
dados que é vista como palavras de entrada e saída para o controlador SLC e
ao mesmo tempo como um rack remoto para um mestre da rede REM I/O.
Controlador
SLC
1747-DCM Módulos E/S
Controlador PLC
Com porta REM I/O
Para entender como funciona o módulo 1747-DCM é preciso ter dois pontos de
vista:
• Como o controlador SLC enxerga a tabela de dados gerada pelo módulo
1747-DCM;
• Como o mestre da rede REM I/O enxerga a tabela de dados gerada pelo
módulo DCM;
A tabela de dados gerada pelo módulo DCM é vista como um rack remoto pelo
mestre da rede REM I/O, ou seja, o módulo DCM gera através da tabela de
dados um rack remoto virtual. O módulo 1747 – DCM é visto como rack remoto
e deve ser configurado como tal, e essa configuração é feita nas minisseletoras
encontradas em seu hardware.
Todo rack remoto troca dados com o mestre pela tabela de E/S do mestre, e o
módulo 1747 – DCM não foge a este padrão. Veja o exemplo a seguir:
Controlador 1 Controlador 2
Controlador 1 ► Controlador 2
O estado dos bits da palavra de saída O:010 do módulo OB16 do
controlador 1 são lidos pelos bits da palavra de entrada I:030 do módulo
IB16 do controlador 2.
Controlador 1 ◄ Controlador 2
O estado dos bits da palavra de saída O:010 do módulo OB16 do
controlador 2 são lidos pelos bits da palavra de entrada I:030 do módulo
IB16 do controlador 1.
Rack Full
Rack 1
Grupo Inicial 0
Hardware
As minisseletoras
Configure as minisseletoras de acordo com a necessidade da aplicação.
Grupo Inicial
Ultimo Rack
Sim
Não
Zerar em Falha
Sim
Não
Velocidade de comunicação
Cabo
3048m
1524m
762m
A instalação Elétrica