2. Esquentando as Turbinas 1
Desenvolver um programa em Ladder para o
PLC executar as seguintes tarefas:
Uma botoeira liga-desliga um semáforo duplo
O semáforo deverá ser feito com RTO, TOF e
instrução de comparação.
A noite o cruzamento ficará em alerta piscando de
1 em 1 segundo.
15 segundos, 3 segundos e 12 segundos são os
intervalos de tempo das lâmpadas Vermelhas,
Laranjas e Verdes respectivamente.
3. Esquentando as Turbinas 2
1. Desenvolver um programa em Ladder para
o CLP diagnosticar um processo regido
por um modelo matemático de segunda
ordem(Equação do Segundo
Grau).Quando as raízes deste modelo são
reais e diferentes o processo está
controlado e por isto uma lâmpada
piscando deve aparecer no painel do
operador. Quando as raízes são reais e
iguais o processo está instável, mas
4. Esquentando as Turbinas2
1. suportável e por isto uma lâmpada
acenderá continuamente. Quando as
raízes não existirem o processo estará não
controlável e por isto um alarme
sonoro/visual será acionado para alertar
todas as pessoas da fábrica a evacuar.
Uma Push-button NF ativará e desativará
as Operações feitas pelo CLP. Para
realização da temporização,
5. Esquentando as Turbinas2
1. deverão ser utilizados temporizadores
RTO ou TOFF. Representar na tela do
SCADA as animações representando as
condições de processo, o valor das
raízes(quando exista) e as variáveis de
temporização. Os parâmetros A, B e C
referente ao modelo do processo deverão
chegar ao CLP através de Objetos de
SetPoint e acionados por Push-Button.
6. Endereçamento
Os endereços - Identificam áreas da memória
RAM e são compostos de caracteres
alfanuméricos separados por delimitadores.alfanuméricos separados por delimitadores.
Os delimitadores: dois pontos, o ponto e
a barra.
7. Endereçamento
Os arquivos de Saída e Entrada:
possuem elementos de 1 palavra, onde cada
elemento é especificado pelo número de slot
e palavra.e palavra.
Os Temporizadores e Contadores:
possuem elementos de três palavras:
Os arquivos de Status, Bit e Inteiro:
possuem elementos de 1 palavra.
8. Constante
Serve para fornecer parâmetro de Instruções.
Constante hexadecimal: digite o valor hexadecimal
seguido pela letra H (Hexadecimal).
Constante Binaria: Valor Acrescido da Letra B
(Binário).
Por exemplo: digite 1010111101B, o mostrador
exibe o equivalente hexadecimal (02BDh).
Constante decimal: digite o valor decimal.
9. Endereçamento
Exemplos:
N7:15 – Endereço de Números Interiro
T4:7.ACC - Endereço de uma palavra doT4:7.ACC - Endereço de uma palavra do
temporizador 7
B3:64/15 - Endereço de bit, onde a barra
separa o bit do elemento.
10. Modo de Operação
PROG modo programação PERMITE QUE O CLP SEJA
PROGRAMADO
Desabilita todas as Saídas
Não executa o programa
REM modo remoto Desabilita todas as Saídas (REM PROG)
Permite que o CLP seja programado
Executa o programa (REM RUN)
RUN modo execução Executa o programa
Não permite que o programa seja alterado
Habilita as Saídas
PROG
REM
RUN
11. ENDEREÇAMENTO DIRETO
Quando a condição de entrada se torna
Veja que está especificado
MOV
Source
Dest
MOVE
N7:10
12
C5:0.ACC
12
Quando a condição de entrada se torna
verdadeira,
o valor contido em N7:10 é copiado
para o acumulado do contador C5:0
Veja que está especificado
qual é o elemento (10)
dentro do
arquivo N7.
13. ENDEREÇAMENTO INDIRETO
Neste exemplo o contador da linha 0 incrementa o acumulado
de 0 a 5 e será utilizado como um apontador indireto.
Na linha 1 a instrução MOV movimenta o valor 1735 para o
endereço indiretoN7:[C5:0.ACC],onde [ ] é o valor do
acumulado atual. Assim, se o acumulado for 1, então o valor
1735 será movimentado para o arquivo destino N7:1.
19. Endereçamento Indexado
Neste exemplo, a linha 0 estará incrementando o acumulado do
contador C5:0.
A linha 1 move o acumulado [Source C5:0.ACC] para a palavra de
índice S:24,
do arquivo de status.
Observe que a palavra de índice S:24 assumirá os valores 0, 1 , 2... aObserve que a palavra de índice S:24 assumirá os valores 0, 1 , 2... a
medida que o acumulado
é incrementado.
A linha 2 move o valor 531 para o destino N7: (1 + índice).
Exemplo:
Seja o C5:0.ACC = [3], então S:24 = [3].
Logo:
531 será movido para o arquivo N7 : 4.
25. EXERCÍCIO
Ligar 8 motores em sequência de 1 em 1 segundo.
Após oito horas de trabalho os motores serão desligados
automáticamente.
Os endereços deverão ser:
Botão “Start”: I:0/6
Botão “Stop”: I:0/7
Motores:
M1= O:0/0, M2= O:0/1,.............,M8= O:0/7M1= O:0/0, M2= O:0/1,.............,M8= O:0/7
OBS: Desenvolver o ladder com temporizadores, utilizando-se
do endereçamento indireto ou indexado para instrução Move.
Fazer uma tela no ELIPSE para ligar e desligar(em sequência)
os motores e mostrar os motores na condição ligado e
desligado.
26. SOLUÇÃO
Time Base 1.0
TON
TIMER ON
Timer T4:0
Preset 7
Accum 0
MOV
MOVE
Source B3:[T4:0.ACC]
Esta é a solução por endereçamento indireto !
Source B3:[T4:0.ACC]
Dest O:003
30. Exercício
Crie um programa contendo o Programa Principal (Lad2) para
Chamar duas subrotinas, o Lad3, o Lad4. A primeira gera a
sequencia de dois cilindros A e B executado da seguinte forma:
Lad3 – A+B+B-A-, de forma cíclica.
Para desenvolver o projeto apenas utilizar Push Button.
Utilizar instrução Move para gerar a sequencia.Utilizar instrução Move para gerar a sequencia.
Quando a rotina de trabalho está sendo executada uma lâmpada
verde fica piscando.
O LAD4 serve para levar os cilindros para posição inicial é
acionado por um segundo botão(o botão de emergência). Quando
a rotina de emergência é executada uma lâmpada vermelha fica
piscando, esperando o reconhecimento desta condição pelo
operador.
32. DADOS
O 0 SAÍDAS
I 1 ENTRADAS
S 2 STATUS
B 3 BINÁRIO
T 4 TEMPORIZADOR
C 5 CONTADOR
R 6 CONTROLE
N 7 INTEIRO
F 8 P. FLUTUANTE
|
0 SYSTEM
ORGANIZAÇÃO DA MEMÓRIA
PROGRAMA
|
|
|
X 255 INDEFINIDO
1 RESERVADO
2 LADDER
3 LADDER
|
|
|
|
255 LADDER
T4:0
N7:0
33. ARQUIVO DE DADOS
T4:0
EN TT DN
PRESET
ACUMULADO
Isto é uma palavra !
Isto é uma palavra !
Isto é uma palavra !
N7:0 32767
ELEMENTO
34. DEFINIÇÃO DE ARQUIVO PARA OS CONTROLADORES SLC 500
O controlador SLC-500 permite criar em sua memória,
até 253 arquivos de dados de no máximo 256 elementos cada
, sendo que o endereço inicial de cada arquivo é a palavra 0., sendo que o endereço inicial de cada arquivo é a palavra 0.
ex: N7:0, T4:0, N9:0.
Talvez seja difícil utilizar todos os 256 elementos
disponíveis para os arquivos, mas é provável que se utilize
um número bem grande de arquivos.
35. O 0 SAÍDAS
I 1 ENTRADAS
S 2 STATUS
B 3 BINÁRIO
T 4 TEMPORIZADOR
C 5 CONTADOR
R 6 CONTROLE
Arquivos definidos
automaticamente pelo
Processador
O controlador manipula
dados dentro de arquivos e entre
R 6 CONTROLE
N 7 INTEIRO
F 8 P. FLUTUANTE
|
|
|
X 255 INDEFINIDO
arquivos, acessando esses dados
através das instruções do
programa de aplicação, de acordo
com endereços nele especificado. O
controlador armazena os tipos de
arquivos em ordem numérica
Mapa da Memória do CLP
36. Área da
memória de
arquivo do
tipo de
inteiro ( até
256 )
elementos
N7:
Os dados de um arquivo podem ser
divididas em blocos. Estes blocos são
identificados de acordo com o endereço
onde se inicia o bloco de dados.
Cada elemento de um arquivo também é
indentificado pelo seu único endereço
Ex: Se o bloco se
COMPRIMENTO
ESPECIFICADO
N7:57
# N7: 57
Simbolo de arquivo
Arquivo tipo Inteiro
Número do tipo de arquivo
Número do primeiro elemento
inicia no N7:57 e o
comprimento
especificado é de 30
elementos, então
este bloco de dados
começa em N7:57 e
termina no N7:86
37. Área da
memória de
arquivo do
tipo de
inteiro ( até
256 )
elementos
N7:
N7:57
Arquivo tipo Inteiro
Número do tipo de arquivo
Número do elemento
N7: 57
38. Cuidado !
Observe o endereço em que se inicia cada bloco, caso contrário poderá haver
superposição de dados.
N7:15 N7:15
Bloco 1:
Bloco 1: N7:15
Dados não Superpostos
N7:45
N7:78
N7:48
N7:45
N7:78
N7:39
Bloco 1:
N7:15 ~ N7:45
Bloco 2:
N7:48 ~ N7:78
N7:45
N7:39
N7:78 Bloco 2
}
Dados Superpostos
39. INSTRUÇÕES AVANÇADAS
São as instruções que manipularão arquivos (vários elementos de uma só vez).
Determina-se o endereço do elemento de controle e insere-se informações,
incluindo o endereço de um ou mais arquivos. São elas:
FLL* - Preenchimento de ArquivoFLL* - Preenchimento de Arquivo
COP* - Cópia de Arquivos
FFL e FFU - Carga e Descarga FIFO de Arquivos
LFL e LFU - Carga e Descarga LIFO de Arquivos
BSR e BSL - Deslocamento Direita/Esquerda de Bit
SQO - Sequenciador de Saídas
SQC - Sequenciador de Comparação
SQL - Sequenciador de Carga
41. COP
Source
Dest
COPY FILE
Length
] [
Está é uma instrução de saída de alta velocidade que opera de modoEstá é uma instrução de saída de alta velocidade que opera de modo
semelhante a uma instrução movimento arquivo - para - arquivo . Ela copia dados de
um local para outro e não utiliza bit’s 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 parametros da instrução são :
SOURCE: ( fonte ) é o endereço do arquivo que se deseja copiar
DEST : ( destino ) é o endereço do arquivo em que a instrução armazena a
cópia
LENGTH : ( comprimento ) é o número de elementos do arquivo que se
deseja cópiar.
44. FLL
Source
Dest
FILL FILE
Length
] [
Esta é também uma instrução de saída de alta velocidade que opera de modoEsta é também uma instrução de saída de alta velocidade que opera de modo
semelhante a uma instrução de movimento elemento - para - arquivo. Ela carrega
elementos de um arquivo com uma imagem, tal como de uma constante do programa
ou endereço direto.
Os parâmetros da instrução que se insere são :
SOURCE: ( fonte ) é uma constante do programa ou endereço do elemento.
DEST: ( destino ) é o endereço do arquivo que se deseja preencher.
LENGTH : ( comprimento ) é o número de elementos no arquivo a ser
preenchido.
48. EXERCÍCIO
Fazer um programa em lógica ladder para o PLC executar
a seguinte tarefa:
1 - Uma chave servirá para ligar localmente o PLC.
2 – Usando as instruções de temporização, criar um gerador de
funções dente de serra período. A forma de onda será mostrada em umfunções dente de serra período. A forma de onda será mostrada em um
Trend Graph no Elipse.
3 - O acumulado do temporizador deverá preencher os 100
elementos do arquivo de números inteiros #N9:0. usando a instrução
FLL.
O Elipse mandará valores inteiros de um SetPoint para
serem colocados de forma seqüencial no arquivo N7. quando
alcançado 10 valores deverá acontecer a transferência para outro
bloco e recomeçar novo preenchimento.
50. Instrução Com Máscara
MVM
Essa instrução de movimentação de dados movimenta
valores após acontecer uma filtragem de bits feita por uma
máscara.
51. Instrução Com Máscara
Exemplo:
Se os valores dos bits na origem são
1111000011110000
e as configurações de bit na máscara sãoe as configurações de bit na máscara são
0000000011111111
O destino terá: 000000011110000
52. Mascarada por Igual
MEQ
Essa instrução condicional compara dados de 16 bits de um
endereço de origem com dados de 16 bits no endereço
Comparar, após a verificação das zonas de equivalências
apontadas pela máscara (cada presença do bit um na
máscara representará uma zona de equivalência entre o
endereço Origem e Comparar).
53. Instrução Com Máscara
MEQ
Exemplo:
Se os valores dos bits na origem são 1111000011110000
e as configurações de bit na máscara são 0000000011111111
e os valores dos bits a comparar são 0001111011110000
Presença do bit 1 na máscara obriga que os valores dos bits que ocupam a
mesma posição na origem e comparar serem iguais
Portanto, a saída será
verdadeira
54. Exercício
Elaborar um programa para o CLP comandar uma sequência
programável de cilindros de dupla ação. Os sensores de
proximidade detectarão as posições de avanço e retorno dos
cilindros. As sequências são as seguinte:
A + B+ C+ A- B-C-
A+ B+ B- C+ C- A-
A+ B+ C +C- A-B-
A+(Temporiza 10s) B+(Temporiza 10s) C+(Temporiza 10s) Retorna
todos ao mesmo Tempo.
As sequências de ações da máquina são repetidas continuamente.
Um botão de emergência deverá desativar a sequência programada eUm botão de emergência deverá desativar a sequência programada e
alarmar um buzina intermitente.
Uma tela no Elipse deverá monitora os movimentos dos cilindros,
Status dos sensores, condição de alarme, etc.
Utilize instruções com máscara para programar as sequências.
A máquina poderá ser inicializada remotamente.
Um contador deverá contar a quantidade de ciclos realizada pela
máquina.
Uma lâmpada piscando deverá indicar que a máquina está em
operação.
Toda vez que a máquina for desligada os cilindro deverão retornar a
posição de repouso.
Após um condição de alarme, um botão de reset deverá levar os
cilindros para posição inicial.
55. Control
É o endereço do elemento de três palavras que controla a operação da
instrução. O elemento armazena o byte de estado da instrução, o
comprimento do arquivo e a posição do elemento operado num dado
momento.
R 6 CONTROLE
N 7 INTEIRO
F 8 P. FLUTUANTE
|
|
|
X 255 INDEFINIDO
ER
R6:0
EN
LENGHT
POSITION
Isto é uma palavra !
Isto é uma palavra !
Isto é uma palavra !
DN Estado
56. ELEMENTO DE CONTROLE
Semelhante a um elemento do contador, o elemento de controle descrito controla a
instrução de arquivo por meio de seu comprimento, posição e estado ( bits de
estado e de controle ).
Palavra Conteúdo Endereçado por
0 Estado da operação Somente bits
1 Comprimento do arquivo . LEN
( número de elementos )
2 Posição no arquivo .POS
OBS: deve-se determinar um único endereço de elemento de controle para
identificar cada instrução de arquivo R6:0, R6:1, R6:2 etc.
57. LENGHT :
Palavra 1 do elemento de controle. É o comprimento dos arquivos da
instrução.
ER
R6:0
EN
LENGHT
POSITION
Isto é uma palavra !
Isto é uma palavra !
Isto é uma palavra !
DN Estado
58. POSITION : ( Palavra 2 do elemento de controle )- Armazena
o número
da posição do elemento no arquivo que está sendo operado num dado
momento. A operação é completada quando a posição atinge o fim do
arquivo. Neste campo pode-se inserir um valor diferente de zero ,
caso se deseje que, na inicialização, a operação seja iniciada a partir
de um determinado valor. No término da operação então o valor da
posição é zerado. É possível controlar este valor através da lógica deposição é zerado. É possível controlar este valor através da lógica de
programa.
ER
R6:0
EN
LENGHT
POSITION
Isto é uma palavra !
Isto é uma palavra !
Isto é uma palavra !
DN Estado
62. VOCÊ PERCEBEU
SURGIU UM NOVO BIT
R6:10/UL
ESTE É O BIT DE DESCARGA. ARMAZENA O
ESTADO DO BIT RETIRADO DA SÉRIE CADA VEZ
QUE A INSTRUÇÃO É HABILITADA
84. Exercício
Desenvolver um aplicativo para simular um registrador
de deslocamento que apresente a seguinte
sequência:
Acende as doze lâmpada de forma alternada, Deslocando
para direita, 5 vezes.
Acende as doze lâmpada simultaneamente, gerando trêsAcende as doze lâmpada simultaneamente, gerando três
piscada.
Acende as doze lâmpada de forma alternada, Deslocando
para Esquerda, 5 vezes.
O Circuito permanecerá funcionando de Forma Cíclica
Use BSL, BSR, Move, etc para solucionar a sua aplicação.
Desenvolva um aplicativo no ELIPSE para ligar/desligar a
aplicação e mostrar a animação das lâmpadas
86. Exercício
Desenvolver um programa para adquirir um
sinal de temperatura proveniente de um
Transdutor para termopar tipo R e um sinal de
pressão proveniente de um transdutor para
strain gaige. Para tanto, o transdutor gera um
sinal de 2 a 5 Volts cc para a faixa de 800oC à
1200oC. O Strain Gaige trabalha em uma faixa1200 C. O Strain Gaige trabalha em uma faixa
de 1 à 50 Kgf, gerando um sinal de 3 à 7 V. Os
transdutores corrigem as não linearidades do
termopar e do strain gaige desenvolver o
programa que consiga transformar este
valores em unidade de engenharia, armazene
os resultados em arquivos N7 e acione dois
pisca-pisca o de 0,5s para temperatura e o de
1s para pressão, quando os valores estiverem
dentro da faixa.
87. Continuação
O sinal de temperatura representará o sinal
proveniente da caldeira(C001) que será comparado
pelo set-point armazenado no endereço N9:0 do
controlador proporcional TIC001 de ganho 2. A saída
do controlador está no endereço O:2.1 e a entrada
no endereço I:1.0, utilize um multímetro para verificar
os sinais de entrada e saída dos cartões.os sinais de entrada e saída dos cartões.
Displays mostrarão os sinais de entrada, os
resultados da conversão, o sinal de erro e a saída do
controlador TIC001.
Duas animações mostrarão os piscas funcionando.
Um Command Button liga e desliga remotamente o
sistema.
92. Controlador Proporcional Integral e Derivativo
PID
Bloco de Controle - um arquivo que
armazena os dados necessários paraarmazena os dados necessários para
operar a instrução. O comprimento do
arquivo é fixo em 23 palavras e deve ser
fornecido como um endereço de arquivo
inteiro(SLC500).
93. Controlador Proporcional Integral e Derivativo
PID
Apenas o set point os seguintes sinalizadores de instrução
PID podem ser ativados ou zerados por seu programa de
contatos:
SP (Set Point): Palavra 2 do Bloco de ControleSP (Set Point): Palavra 2 do Bloco de Controle
TM (bit de modo temporizado): Palavra 0 do Bloco de
Controle, bit 0
AM (bit auto/manual): Palavra 0 do Bloco de Controle,
bit 1
CM (bit modo de controle): Palavra 0 do Bloco de
Controle, bit 2
OL (bit ativar limitação de saída): Palavra 0 do Bloco de
Controle, bit 3
95. Exercício
Programa para realizar o controle PID da
temperatura de uma caldeira. A medição de
temperatura é realizada através de um transmissor
cuja saída é no padrão 4 a 20 mA (zero vivo). Este
transmissor é calibrado para a faixa de 0 a 100oCtransmissor é calibrado para a faixa de 0 a 100oC
(0 a 100%). O operador pode selecionar o modo
de operação do controle entre automático ou
manual através de uma chave on-off. O
transmissor e o elemento final de controle são
simulados com o módulo de entrada e saída
analógica. Este módulo fornece tensões de 0 a 10
V(entrada analógica) e mede tensões de 0 a 10 V
sobre um resistor de 250 ΩΩΩΩ (saída analógica).