Documente Academic
Documente Profesional
Documente Cultură
Introdução à linguagem de
programação STEP 5
- BÁSICO -
Siemens
1. Introdução...............................................................................................................................................5
1.1. Comandos programados por fiação e por memória..................................................................................5
1.6.1. Comando programado por fiação (convencional):......................................................................................................5
1.6.2. Comando programado pôr memória:...........................................................................................................................5
1.7. Configuração de um controlador programável..........................................................................................6
1.8. Sinal binário; nível lógico de sinal...............................................................................................................7
1.9. Programação de contatos NA (Fechadores) e NF (Abridores)..................................................................7
1.10. Endereçamento de entradas e saídas; bit, byte........................................................................................8
1.11. Linguagem de Programação STEP 5; formas de representação............................................................9
1.11.1. Representação .........................................................................................................................................................10
1.12. Programa de comando; a instrução de comando...................................................................................10
1.12.1. O QUE deve ser feito?.............................................................................................................................................11
1.12.2. COM O QUE isto deve ser feito?............................................................................................................................11
1.13. Imagem do Processo: PII; PIO................................................................................................................12
1.14. Instruções de comando STEP 5 para S5 95U.........................................................................................13
1.15. Instruções de Comando STEP-5 para o CP............................................................................................13
1.16. Blocos para programa de usuário...........................................................................................................14
1.16.1. PB’s - Blocos de Programa......................................................................................................................................14
1.16.2. FB’s - Blocos de Funções........................................................................................................................................14
1.16.3. SB’s - Blocos de Passos...........................................................................................................................................15
1.16.4. OB’s - Blocos de Organização................................................................................................................................15
1.16.5. DB’s - Blocos de Dados..........................................................................................................................................15
1.17. Estrutura do programa de usuário.........................................................................................................15
2. O Equipamento de Treinamento..........................................................................................................16
2.1. Módulo Fonte de Alimentação:.................................................................................................................16
2.6. UCP - Unidade Central de Processamento:..............................................................................................17
2.6.1. Operação:...................................................................................................................................................................17
2.6.2. Reset Geral (Overall reset ).......................................................................................................................................17
2.6.3. Simulador...................................................................................................................................................................17
2.7. O Teclado SIEMENS.................................................................................................................................18
2.8. PRESETS....................................................................................................................................................18
2.8.1. SIGNIFICADO DOS TERMOS INDIVIDUAIS......................................................................................................19
2.9. Exercícios: Definir Presets.........................................................................................................................20
2.9.1. Exercício 2.2: CHAMADA DO MENU DE PRESETS............................................................................................20
2.10. Recomendação para o usuário.................................................................................................................21
2.10.1. Manuseio de disquete..............................................................................................................................................21
2.10.2. Proteção de gravação...............................................................................................................................................21
2.10.3. Exercício 2.3:Verificação do disquete.....................................................................................................................22
2.10.4. Exercício 2.4: Ligação do aparelho.........................................................................................................................22
2.11. Reset Geral................................................................................................................................................22
2.11.1. Diretamente da UCP:...............................................................................................................................................22
2.11.2. Através da função DELETE do terminal de programação:.....................................................................................23
2.11.3. Exercício 2.5: Reset Geral do CP............................................................................................................................23
3. INSTRUÇÕES STEP 5 - PARTE 1: Operações Básicas....................................................................24
3.1. Associações Lógicas....................................................................................................................................24
3.6.1. “E” / “OU”.................................................................................................................................................................24
3.6.2. Resultado da operação lógica (RLO) e seu limite de validade..................................................................................24
3.7. Exercício 3.1: Associação; Resultado da Operação Lógica.....................................................................25
3.7.1. Exercício 3.1:.............................................................................................................................................................26
3.7.2. Exercício 3.2:.............................................................................................................................................................26
3.7.3. Exercício 3.3:.............................................................................................................................................................26
3.8. Verificação de Saídas.................................................................................................................................27
3.8.1. Exercício 3.4:.............................................................................................................................................................27
3.9. Associação E antes de OU..........................................................................................................................27
3.9.1. Exercício 3.5..............................................................................................................................................................28
3.10. Associação OU antes de E........................................................................................................................29
3.10.1. Exercício 3.6:...........................................................................................................................................................29
3.11. Verificação do Nível Lógico “0”..............................................................................................................30
3.11.1. Exercício 3.7:...........................................................................................................................................................31
3.11.2. Exercício 3.8: Contatos Normalmente fechados e Normalmente abertos...............................................................32
4. INSTRUÇÕES STEP-5 - PARTE 2: Entrada e Saída de Dados........................................................33
4.1. Alteração de Bloco......................................................................................................................................33
4.6.1. INPUT (Entrada de Dados) ......................................................................................................................................33
4.6.2. OUTPUT (Saída de Dados).......................................................................................................................................33
4.6.3. CORRECTION (Correção).......................................................................................................................................33
4.7. Transferência de Blocos.............................................................................................................................34
4.7.1. Entradas:....................................................................................................................................................................34
4.7.2. Saídas:........................................................................................................................................................................34
4.7.3. Alteração:...................................................................................................................................................................34
4.7.4. Transferência:............................................................................................................................................................35
4.8. Exercícios ...................................................................................................................................................35
4.8.1. Exercício 4.1: Gravar Bloco em Disquete (CSF): PB2, Segmento 1........................................................................35
4.8.2. Exercício 4.2: Leitura do Bloco, procura de segmento.............................................................................................37
4.8.3. Exercícios 4.3: Alteração e Inserção de Bloco e de Segmento (CSF).......................................................................38
4.8.4. Exercício 4.4: Organização do Programa, Teste do Bloco........................................................................................41
4.8.5. Exercício 4.5: Alteração de Bloco, ON LINE...........................................................................................................43
4.8.6. Exercício 4.6: Introdução e leitura de blocos (LAD)................................................................................................44
4.9. Operações com parênteses.........................................................................................................................46
4.9.1. Exercício 4.7: Programação e Leitura de Blocos (STL)............................................................................................47
FUNÇÕES DE MEMORIZAÇÃO..........................................................................................................48
5.1. Saídas com auto-retenção..........................................................................................................................48
4.9.1. Exercício 5.1:.............................................................................................................................................................48
4.9.2. Exercício 5.2:.............................................................................................................................................................49
4.10. Função memória R-S ...............................................................................................................................49
4.10.1. Exercício 5.3:...........................................................................................................................................................50
4.10.2. Exercício 5.4 :..........................................................................................................................................................51
4.11. Avaliação de flanco...................................................................................................................................51
4.12. Conector #:................................................................................................................................................52
4.12.1. Exercício 5.5: Avaliação de flanco..........................................................................................................................53
4.12.2. Exercício 5.6: Memória R-S (CSF, LAD, STL)......................................................................................................53
4.13. Flag de reset inicial (RI)...........................................................................................................................54
4.13.1. Programa para flag de RI.........................................................................................................................................55
4.13.2. Flags para verificação de nível lógico “0” e nível lógico “1”.................................................................................55
4.13.3. Exercício 5.7: Aplicação do flag de RI....................................................................................................................55
5.5.4. Exercício 5.8: Chamar PB13 e testa-lo (STATUS).................................................................................................57
1. Introdução
Nesse capítulo iniciaremos alguns conceitos de fundamental importância na programação de PLCs
assim como os métodos básicos de funcionamento do Simatic S5 e do software STEP5.
A tensão proveniente dos emissores de sinal é ligada aos terminais dos MÓDULOS DE
ENTRADA (entradas do controlador programável). Na UCP é processado o programa existente na
memória, e é verificado se as entradas individuais do controlador estão sob tensão ou sem tensão.
Dependendo deste estado nas entradas e do programa existente na memória, a UCP instrui o MÓDULO
DE SAÍDA para que aplique tensão ou não aos terminais correspondentes. Dependendo da existência
ou não existência de tensão nos terminais dos módulos de saída do controlador programável, são
energizados ou desenergizados os ELEMENTOS OPERADORES ou LÂMPADAS.
Em ambos os casos trata-se de estados bem distintos entre si, para os quais a técnica de controles
eletrônicos utiliza as seguintes definições:
Estes dois níveis lógicos são os dois valores que podem ser assumidos por um SINAL BINÁRIO
(= sinal com dois valores possíveis). O conceito de sinal binário é utilizado não somente para a
descrição dos níveis lógicos das entradas e saídas, mas também para a descrição da posição dos
elementos que participam no processamento de sinais dentro do controlador programável.
Na literatura de língua inglesa é comum a utilização da palavra “bit” (binary digit) como menor
unidade da técnica de informações, termo esse também utilizado em português.
Nas páginas anteriores foi descrito que é feita uma verificação na entrada quanto ao nível lógico
de sinal - de acordo com o programa a existência ou inexistência de tensão. É irrelevante o fato de o
contato utilizado ser normalmente fechado ou normalmente aberto.
Entretanto, o mais tardar por ocasião da elaboração do programa e da execução da tarefa de acordo
com as particularidades tecnológicas, deve ser conhecido o tipo de contato e sua finalidade técnica.
Por outro lado, se o contato for normalmente fechado, a entrada terá, quando o mesmo for
acionado, o nível lógico “0”.
O controlador programável não tem qualquer possibilidade de verificar se na entrada esta ligado
um contato normalmente aberto ou um contato normalmente fechado; ele somente pode verificar ou
reconhecer um nível lógico “1” ou um nível lógico “0”.
Será verificada, portanto, uma entrada quanto a existência do nível lógico “1”, sendo, a princípio,
desinteressante o fato de este nível lógico ter sido gerado por um contato normalmente aberto acionado
ou um contato normalmente fechado não acionado.
Por outro lado, pode ser verificado se uma entrada tem o nível lógico “0”, sendo aqui também
irrelevante o fato de este nível lógico ter sido gerado por um contato normalmente aberto não acionado
ou um contato normalmente fechado acionado.
Depois de nos ocuparmos dos níveis lógicos e da programação de contatos normalmente fechados
e normalmente abertos, devemos efetuar a conexão dos emissores de sinal com as entradas, e das saídas
do controlador programável com os elementos operadores e lâmpadas.
Estas entradas e saídas não são designadas seqüencialmente, como se faz normalmente em
terminais, mas sim com os símbolos de operandos, por ex. “I” para uma entrada ou “Q” para uma saída
e o parâmetro 0.4, 1.2 ou 4.7, etc. O parâmetro é uma combinação de endereço do byte (0, 1 ou 4) com
o endereço do bit (.4, .2 ou .7). Isto será visto com mais detalhes na página seguinte.
O bit é a unidade para uma posição binária ou um símbolo binário. Ele somente pode assumir os
valores “0” e “1” (DIN 44300). Diversos símbolos binários reunidos em uma unidade maior constituem
um byte ou uma palavra. Neste caso o número de bits é idêntico ao número de posições binárias da
unidade em questão
Para uma unidade com 8 símbolos binários foi introduzido o conceito de byte (pronuncia-se bait).
Pode-se dizer também que um byte tem um comprimento de 8 bits. Em um controlador programável,
por exemplo, os níveis lógicos de 8 entradas ou de 8 saídas são reunidos em um “byte de entrada”, ou
“byte de saída” e freqüentemente processados em conjunto no controlador programável. Cada posição
binária individual de um byte pode assumir o valor “0” ou “1”.
A cada bit de um byte é dado um número, o endereço do bit. O bit da extrema direita tem o
endereço de bit “0” e o da extrema esquerda tem o endereço “7”.
Uma tarefa de comando apresentada através de um esquema elétrico pode ser convertido
facilmente, através da linguagem de programação STEP 5, em um programa na forma de Diagrama de
Contratos (LAD), Diagrama de Blocos Funcionais (CSF) ou Lista de Instruções (STL).
1.11.1. Representação
A figura mostra uma parte do esquema elétrico de um comando convencional, que deve ser
convertido em um programa correspondente. Antes da programação propriamente dita, deve-se fazer
corresponder aos contatos individuais dos emissores, como por exemplo, botões de operação e chaves
limite, as entradas do controlador utilizadas, e as bobinas dos contatores, as saídas do controlador ( nas
figuras, I 33.0 ... I 33.3 e Q 32.0 ...Q 32.2).
A Lista de Instruções - STL - com a qual podem ser programados todas as funções, representa a
tarefa de automação através de abreviações mnemônicas.
Uma Instrução de Controle é constituída de duas partes: Operação e Operando (DIN 19239)
Para que as alterações de sinal que ocorrem durante o ciclo do programa não causem perturbações
durante o processamento do programa, os sinais de entrada são armazenados na memória intermediária
de imagem do processo (PII). Antes do início de um ciclo de processamento, e após o início da
supervisão do tempo do ciclo é carregada a imagem das entradas na PII.
Através de instruções de carregamento e de transferência (veja também cap. 5), pode ser
contornada a armazenagem nas memórias intermediárias PII ou PIO, sendo feita a conexão diretamente
a periferia.
O tempo de ciclo é controlado através de um “supervisor de ciclo”. Caso o tempo de ciclo ajustado
seja ultrapassado, o controlador programável passa para o estado ‘PARA’ devido à ultrapassagem do
tempo do ciclo.
Uma instrução de comando, como já visto, é a menor unidade do programa e representa a instrução
de trabalho para a UCP
Podem ser realizadas as seguintes instruções de comando com nosso equipamento de treinamento:
Função de memorização S Q, F; R Q, F; = Q, F
Operações de temporização SP T, SE T, SI T, SR T, SS T, SF T, R T;
Operação de carregamento L IB, IW, QB, QW, FB, FW, DR, DL,
DW, T, C, PB, PW, KS, KT;
As operações complementares não serão analisadas por não serem objeto deste curso. Para outros
controladores programáveis a gama de operações correspondente pode ser obtida dos respectivos
catálogos.
Os SB’s (step blocks) são usados para a programação de comandos seqüenciais. Eles contém as
condições de liberação e comandos dos passos de comando seqüencial.
DB’s (data blocks) são áreas da memória de usuário, por ele reservadas na ocasião da elaboração
do programa, onde são armazenados dados fixos ou variáveis, como por exemplo um valor numérico.
Ao contrário dos demais tipos de blocos, os DB’s não contém instruções de comando.
Os blocos podem ser chamados não só no OB1, como também em outros PB’s, FB’s e SB’s, de
forma que o processamento se distancia assim, cada vez mais, do OB1, retornando porém a ele após o
processamento do último bloco.
Uma vez processada a instrução BE do OB1, está terminado um ciclo de processamento do programa de
usuário.
FB16 DB12
PB23
- Bateria de “backup”;
- Memória do usuário;
- 16 entradas e 16 saídas digitais;
- Interface RS232/RS485 para interligação ao Terminal de Programação;
- Fonte de alimentação 24Vcc.
- Um Simulador com
- Teclado;
- Monitor de vídeo;
- Driver 3 ½”
- Hard-disk;
- Interface para conexão com periféricos.
2.6.1. Operação:
O S5 95U tem os modos de operação RUN (ciclo) , STOP (pára) e COPY (cópia).
Nas seções a seguir aprenderemos as funções básicas das operações STEP 5 com base em
exemplos de programa, e poderemos verificá-las no simulador.
2.6.3. Simulador
Para a obtenção dos sinais de emissores utilizamos botões e chaves, com os quais podem ser
simuladas as funções “contato NA” e “contato NF”.
A posição da chave é indicada pelo led correspondente: led acesso: nível lógico 1.
PEDIMOS OBSERVAR:
Quando forem testados os exercícios, somente o bloco a ser testado deve ser chamado pelo OB1
para o processamento. Caso isto não seja observado, surgirão dificuldades, Visto que em todos os
exemplos de treinamento, devido a quantidade limitada de lâmpadas, botões e chaves, são utilizadas
sempre as mesmas entradas e saídas.
O teclado do terminal de programação original da SIEMENS, (TP 675) tem um lay-out bastante
diferente dos microcomputadores de hoje em dia, dificultando algumas operações mais complexas.
Vemos ao lado a correspondência das teclas que temos disponíveis no nosso teclado.
2.8. PRESETS
Antes de iniciar a programação, devem ser verificados, e se necessário alterados, os presets para a
operação do terminal de programação e do controlador programável.
COMMENTS: N* Y
TITLE FIELD: N* Y
LANGU. SUBSET: A* B
SYS. OPS.: N* Y
MODE: ON OFF
CHECKSUM: N* Y
A cada segmento pode corresponder um comentário, o qual p. ex. identifica a função tecnológica
(para este fim deve existir um PK, SK, etc.).
Quando da emissão de documentação através de uma impressora pode ser impresso um rodapé em
cada folha, correspondendo aos dados do título de um desenho técnico (situação, revisão, projeto,
preparado por, data, empresa, etc.).
Yes *: Quando da transmissão para o controlador programável, é feita a soma dos dígitos (por
palavra).
Depois de finalizada a seleção dos presets aparece o menu das teclas de funções na borda inferior
da tecla .
Preset “STL” na primeira linha “format” do menu e transfira os presets com a tecla INTERRUPT.
O CP ainda está desligado.
Caso durante a preparação ou processamento do programa seja necessária uma alteração dos
presets, devem ser acionados, em seqüência, as teclas de comando F6, F6. (Atenção! Antes disso, um
bloco deve ser terminado com BE ou deve ser finalizada uma alteração de blocos!)
Qual mensagem aparece na tecla e o que ela significa? (veja também o manual do aparelho).
Para que um programa possa ser armazenado em um disquete virgem, o mesmo deve ser
“formatado”. Entretanto, um disquete deve ser também formatado se o mesmo receber uma nova
denominação, nova descrição ou novo conteúdo. Em geral, na ocasião da formatação pode-se atribuir ao
disquete, para a identificação:
Aperte a tecla RETURN para que o TP assuma os comandos FD, A-1 e EXERCÍCIOS,
respectivamente. Em seguida aperte a tecla ENTER. Aparece então na tela a pergunta: Diskete
changed? (foi trocado o disquete?); dessa forma, procura-se evitar que no FD se encontre um disquete
cujo conteúdo importante seria apagado.
A fim de evitar perdas de dados, recomenda-se preparar, além do assim chamado disquete de
trabalho, um disquete de backup (segurança). Este último deve ser copiado uma vez por ano em um
disquete novo, recém-formatado.
Ao se utilizar disquetes, devem ser observadas obrigatoriamente todas as instruções e regras que se
encontram na figura.
Verificaremos se o nosso disquete de usuário A realmente não tem nenhum programa. Para esse
fim chamamos, através de F7 (INFO) e F2 (DIR), a informação DIR (Diretório) e completamos:
A fim de trabalhar no controlador programável com nosso próprios programas e sem qualquer
influência de outros programas, flags, temporizadores e contadores antigos, apagamos todas as
memórias. Este processo é denominado RESET GERAL (overall reset).
Efetue um reset geral de acordo com as duas possibilidades da pág. anterior e faça a verificação
após cada reset geral, através da função “INFO” (Informação do terminal de programação (teclas F7 e
F2)).
Para este fim chamamos, com as teclas F7, F1, a função “TRANSFER” do terminal de
programação.
Transferir o bloco
Depois de acionada a tecla ENTER, o bloco OB1 é transferido para a memória de usuário do CP.
Na realidade, o bloco é somente copiado, de maneira que mesmo após esta instrução de transferência o
Cada programa é constituído de uma série de associações que são dispostas seqüencialmente na
memória do programa. Uma associação é constituída de uma ou diversas instruções para a “verificação”
do nível lógico de entradas, saídas, temporizadores, contadores e de uma ou mais instruções para o
comando de saídas, flags, temporizadores e contadores. Quando do processamento das verificações
forma-se um resultado da operação lógica (RLO). Caso as verificações estejam satisfeitas, o RLO vale
“1”; caso elas não sejam satisfeitas, o RLO vale “0”.
Com o processamento da última instrução desta associação, o resultado anterior da associação fica
sem efeito, desta maneira, o RLO é limitado. O limite da validade de um RLO é a passagem de uma
operação de terminação de segmento para uma operação de verificação (primeira verificação), isto é, a
passagem, no processamento do programa, de um segmento para outro.
Com a primeira operação de verificação deste novo segmento, a UCP forma um novo RLO. O
resultado de uma primeira verificação é armazenado sem associação na UCP. A associação é feita
somente quando da segunda verificação. Por este motivo, a operação de associação “E” ou “OU” de
uma primeira verificação não tem significado, devendo, entretanto, ser sempre escrita também devido ao
formalismo da programação e das instruções.
Lembre-se:
Resultado da operação lógica RLO “1”: as condições das verificações estão satisfeitas, as
operações são executadas.
Resultado da operação lógica RLO “0”: as condições das verificações não estão satisfeitas, as
operações não são executados.
(Exceto a operação “=“, que com RLO “1” energiza a saída, o flag, etc., e no caso de RLO “0”
desenergiza os mesmo.)
Caso seja ultrapassado um limite entre duas associações forma-se um novo RLO.
Para que sejam acesas as lâmpadas ligadas as saídas Q 32.0 e Q 32.1 são válidas condições
diferentes, de maneira que em casos deste tipo, devem ser previstos circuitos ou símbolos de associação
individuais para cada saída. Visto que o controlador programável pode verificar não somente o nível
lógico de entradas, mas também de saídas, flags, etc... na associação E para a saída Q 32.1 é verificado o
nível lógico da saída Q 32.0. Esta verificação de Q 32.0 inclui também a associação I 33.0 e I 33.1.
Estas funções E antes de OU são programadas em STL sem parênteses; entretanto, os ramos
ligados em paralelo devem ser separados entre si introduzindo-se o símbolo “O” (OU sem operando).
- O “O” individual é sempre necessário se após uma função “E” se seguirem outras funções “E”,
que são associadas pela função “OU”.
Caso, ao fim de uma associação “E antes de OU”, se seguirem somente operandos “OU”
individuais, pode-se programar com O I....
A associação “OU antes de E” é uma ligação em série de diversos contatos ligados em paralelo.
Nesta associação, constituída de circuitos em paralelo e em série, a saída Q 32.0 somente terá o
nível lógico “1” (energizada) se em cada um dos dois ramos paralelo pelo menos um dos contatos e,
além disso, o único contato I 33.2, estiverem fechados ( apresentarem um nível lógico “1”).
Nestas associações “OU antes de E” , de acordo com as regras da álgebra booleana, as funções
OU, que podem também incluir uma função E antes de OU, devem ser indicadas entre parênteses. Desta
maneira determina-se que a função OU deve ser processada antes da função E.
Dentro de uma expressão entre parênteses A(.....) pode encontrar-se uma associação OU ou OU
antes de E” de qualquer tamanho.
Complementar a STL.
Quando se usam controladores programáveis, entretanto, é utilizada somente uma chave com um
único contato normalmente aberto ou normalmente fechado. Aqui existe a possibilidade de verificar no
operando tanto o nível lógico “1” como também o nível lógico “O”.
A ...
Verificação do nível lógico “0”: (a entrada não tem tensão se um contato normalmente aberto
estiver aberto, portanto, não atuado, ou se um contato normalmente fechado estiver aberto, portanto
atuado!).
Atenção!!!
De acordo com a norma DIN 57113 / VDE 0113, item 8.8, a parada de uma máquina sempre que
possível deve ser efetuada através do desligamento de uma tensão. Este tipo de parada é seguro porque
também funciona no caso de curto circuito a terra, ruptura de fio ou falta de tensão no circuito do
emissor. Os contatos normalmente fechados, usuais para esta finalidade em botões de desligamento e
chaves limite, por este motivo sob nenhuma hipótese devem ser substituídos por contatos normalmente
abertos com verificação do nível lógico “0”!
Seja válida, independentemente das diferentes funções das chaves (normalmente fechada,
normalmente aberta) para S1 e S2.
Neste capítulo iremos discutir as associações e assim aprenderemos, também, como operar o TP.
Para esse fim vamos:
Ao fim do capítulo será mostrada a alteração em ON-LINE, isto é, uma alteração com o
controlador programável em funcionamento cíclico, ou seja, sob tensão, e que, por esse motivo, é
imediatamente executada pelo CP após a transferência.
HELP
INPUT BLOCK
OUTPUT BLOCK
CORR
4.7.1. Entradas:
Independentemente da memória-objetivo (CP, EPROM, FD) e da forma de representação presetada
(STL, LAD, CSF), o bloco é escrito com suas instruções individuais na memória do TP e
simultaneamente é indicado na tela. Ao fim do processo de entrada de dados, após a instrução “BE” (fim
de bloco), uma cópia do bloco recém-programado é transferida automaticamente para a memória-
objetivo selecionada.
4.7.2. Saídas:
Quando da saída de um bloco, o bloco chamado é copiado da memória em questão (CP, EPROM,
FD) na memória do TP. Caso não tenha sido dada outra instrução para o TP no campo de comando, será
exibido na tela o primeiro segmento.
O TP possui uma memória auxiliar, em que se encontra uma cópia do segmento indicado em cada
instante, que está à disposição do comando de tela para exibição no monitor.
4.7.3. Alteração:
Blocos podem ser corrigidos diretamente e imediatamente, ainda durante o modo de entrada de
dados, simplesmente sobrescrevendo-se, ou no modo de saída de dados, através de saída, (exibição no
monitor) do bloco a ser alterado e atuação das teclas CORR, INSERT ou DELETE. O que ocorre
então durante a fase de alteração no modo de saída?
Atenção! Da memória e para a memória do TP, pode ser transferido somente um bloco.
4.8. Exercícios
Carregue o bloco PB2, representado na figura, em disquete. Caso o terminal de programação não
esteja em operação, proceda como descrito na página 2.07 e mude o preset para a forma de
representação CSF (página 2.09).
Para isso colocamos o disquete A ( do usuário) no FD, fechamos o mesmo e atuamos a tecla
F1 - INPUT (ENTRADA) E F1 - BLOCK (BLOCO).
Segmento 2
1ª Possibilidade:
Atuar em seqüência as teclas das funções E e OU, em seguida identificar os operandos (entradas e
saídas).
Esta possibilidade será sempre utilizada se desejar primeiramente montar toda a lógica sobre a tela.
2ª Possibilidade:
Atuar a tecla OU, identificar as entradas e então, depois que o cursor tenha saltado para a saída,
volta-lo para a cruz antes da saída, expandir o diagrama na horizontal, apertar a tecla E e continuar e
identificar.
Segmento 3
Importante:
Erros de digitação podem ser eliminados como segue:
Aperte uma vez a tecla INTERRUPT. Desta maneira a tela estará livre e neste segmento
a lógica pode ser montada novamente.
Alteração do símbolo: leve o cursor para a 1a. Entrada do símbolo a ser alterado e aperte
em seguida a tecla de função escolhida (E, OU, etc).
Chamamos o menu das teclas de funções através da tecla INTERRUPT e apertamos a tecla F2. Na
tela aparece:
- segmento 1 do bloco de programa PB2, com a associação E de quatro entradas ( das quais duas
são negadas) e uma saída.
Caso deseje ver não o primeiro segmento mas sim um outro, P.ex., imediatamente o segmento 3,
escreva em SEARCH (procura) um 3.
Tente fazê-lo!
Neste exercício “alteração do bloco”, o bloco PB2, apresentado acima e já alterado anteriormente,
será alterado também no disquete.
Aperte a tecla de correção CORR. A Tela nos indica no canto superior direito o modo
CORRECT correção.
Leve o cursor para a entrada I 32.6 a ser alterada e aperte a tecla de função OU;
identifique a segunda entrada (I 32.3); leve o cursor para a cruz antes da saída, expanda o
diagrama, aperte a tecla de função OU identifique então a entrada aberta (I 32.2).
Termine a correção apertando a tecla ENTER e verifique a correção. Na tela será indicado
o segmento 1 alterado.
Visto que queremos inserir um segmento após o segmento 1, devemos chamar o segmento 1. De
acordo com a seqüência do nosso exercício, o segmento 1 já se encontra na tela; caso contrário,
podemos chamar o segmento desejado através da tecla de paginação de tela.
O segmento a ser apagado deve ser trazido para a tela através da tecla de paginação; para
o nosso exercício isto significa o segmento 3 , anteriormente segmento 2: portanto o segmento
que antes da operação de inserção era o n. 2.
Acione uma segunda vez a tecla ENTER. O led no FD se acende novamente e o bloco é
transferido. Dessa maneira encontra-se agora somente o bloco PB2 alterado no disquete.
Lembre-se: Para que um bloco que se encontra na memória do CP seja processado ciclicamente, o
mesmo deve ser incluído na operação cíclica através do bloco de organização OB1:
Terminada a inserção confirme com a tecla ENTER a pergunta “OB1 ALREADY ON PC,
TRANSFER?”
Porque pode ser executada a função TESTE nas páginas 3.04 e 3.05 sem que tivéssemos
organizado um salto no OB1?
Com o auxílio da indicação de nível lógico dependente do programa (STATUS) desejamos testar o
bloco alterado PB2 com o preset CSF. Para este fim chamamos a função TEST e STATUS do TP
através de F8, F8.
Dependendo do nível lógico dos operandos individuais e do RLO, as entradas e saídas dos
símbolos de funções, bem como as conexões entre os símbolos de funções, são representadas através de
linhas duplas ou linhas pontilhadas:
Atenção!
Altere na memória do CP, na representação CSF, o bloco PB2, segmento 3 , conforme figura
acima.
8. O que nos mostra este exercício com as entradas preparadas I 32.1, I 32.5 e com o
controlador programável funcionando ciclicamente?
Atenção!
Altere os presets:
Chame os menus de presets ( aperte duas vezes F6 ), selecione a representação LAD no menu de
presets e, apertando a tecla INTERRUPT, execute a transferência.
Programe o bloco PB3 representado na figura acima, utilizando para tanto as instruções de
operação das páginas 43 e 44 do manual do TP 675.
Altere agora o menu de presets de LAD para CSF, leia o bloco PB3 no modo de
representação CSF e compare o PB3 com o PB2 da página 4-32 desta apostila.
Os controladores programáveis podem processar funções com até seis níveis de parênteses.
Na programação CSF ou LAD, o número máximo de níveis de parênteses nem sempre pode ser
utilizado devido à largura da tela ou do papel da impressora.
ATENÇÃO!
Para o desligamento do contator são possíveis duas variantes, dependendo de a prioridade ser de
ligação ou de desligamento. No caso de prioridade de desligamento (A), o botão “DESLIGA” e
eventuais chaves-limite de desligamento adicionais são instalados em série com o circuito paralelo do
botão “LIGA” e o contato de retenção. No caso de prioridade de ligação (B), os contatos normalmente
fechados utilizados para o desligamento são instalados em série com contato de retenção e em paralelo
com contatos “LIGA”.
Naturalmente a auto-retenção descrita vale não somente para saídas, mas também para os flags.
Verifique com a função STATUS a auto-retenção, depois alterar o 0B1 (: JU PB5), através
de STATUS. Dar antes um RESTART na UCP, levando a chave seletora do modo de operação
para “PARA” e novamente para “CICLO”; desta forma apagamos o conteúdo das memórias de
imagem do processo.
De acordo com a norma DIN 40.700 - parte 14, uma função memória R-S é representada na forma
de um retângulo com as entradas S - “Set” e R - “RESET”. A passagem de sinal de 0 para 1 na entrada S
“seta” a função de memória e a passagem de sinal de 0 para 1 na entrada R “reseta” a função de memória.
Um nível lógico “0” nas entradas S e R não altera o nível lógico da saída obtido anteriormente.
Lembre-se:
setar (ligar) e resetar (desligar) somente com RLO ”1”! Nada ocorre com RLO “0”, isto é, o nível
lógico é mantido.
Atenção
Se ambas as entradas (R,S) tiverem SIMULTANEAMENTE o nível lógico “1”, a prioridade
será para “resetar”(caso A: saída Q tem “0”) ou para “setar” (caso B: saída Q tem “1”) . Este fato
deve ser considerado durante a programação.
As instruções programadas por último também são processadas por último pelo controlador
programável ( processamento cíclico). No caso A será efetuada primeiramente a operação de “setar”- a
saída Q 33.0 será “setada”- e em seguida a operação de “resetar” - a saída Q 33.0 e novamente “resetada”.
Nesse caso, a operação de setar a saída é executada somente na imagem do processo, sem que seja
comutado o módulo periférico correspondente. O mesmo assumirá o nível lógico da imagem do processo
somente no fim do processamento cíclico.
Programe o PB6 em CSF no disquete A, transfira-o para o CP, organize o OB1 e teste ambos os
casos: A e caso B. (Não esqueça o “RESTART” da UCP!).
No programa é verificado, em cada ciclo de processamento, se o nível lógico (p.ex. da entrada I 0.1)
se alterou “0” para “1” em relação ao ciclo de processamento anterior. O nível lógico anterior da entrada,
por este motivo deve ser memorizado em um flag, o flag de flanco F0.2. Quando ocorre um flanco de
sinal, um segundo flag, o flag de impulso F0.1, fornece, durante todo o ciclo de processamento, um
impulso de nível lógico “1”.
Para que, após um reset de todos os flags, todas as “avaliações de flanco” existentes no programa do
usuário não forneçam um impulso, é setado o flag de flanco F0.2, com o nível lógico “0” da entrada I 0.1.
Se o sinal de entrada se alterar de “0” para “1” (flanco positivo), a associação I 0.1 & F0.2 é satisfeita; o
flag de impulso F0.1 tem o nível lógico “1” e reseta, através da entrada R, o “flag” de flanco F0.2. No
ciclo 2 (seguinte) o “flag” de flanco F0.2 tem nível lógico “0”; a associação E não é mais satisfeita, o
“flag” de impulso F0.1 volta ao estado “0”. O “flag” de impulso esteve, portanto, energizado exatamente
durante um ciclo de processamento. Assim sendo, ele pode ser verificado a qualquer momento durante o
processamento do programa.
No segmento 2, a saída Q32.2, programada como memória R-S, e setada através do flag de impulso
F0.1. Enquanto a entrada I0.1 possuir nível lógico 1, a saída Q32.0 pode ser resetada através da entrada
I0.3 e consequentemente ser desligada a lâmpada. No flanco crescente seguinte este fato será novamente
memorizado.
4.12. Conector #:
Chame o menu de presets no TP, preset CSF e escreva no disquete do usuário o bloco PB11
com as funções R-S representadas na figura.
Lembre-se: em uma função memória R-S a instrução programada por último é predominante. Nos
modos de representação CSF e LAD isto depende do acionamento da tecla F1 ( R) ou F2 (S) ao
programar:
Chame novamente o menu de presets, presete LAD e observe agora o seu bloco programado em
CSF.
Altere o preset para STL e pense quais instruções no segmento 1 ou 2 poderiam ser omitidas, sem
alterar a lógica.
Na representação LAD não podem ser programadas ou chamadas funções complexas seguidas de
uma função OU. O TP, neste caso, exibirá a STL com a mensagem de erro 183 (erro de conversão).
No nosso exemplo de programa utilizamos o flag F100.2. O programa consiste de duas seqüências
iguais de instruções, programadas respectivamente no OB21 e no OB22. No processamento desses OB’s
após um restart, são setados o flag de F100.2 e o flag auxiliar F100.3. No começo do OB1 precisa constar
a outra seqüência de instruções. Com ela o flag auxiliar F100.3 é resetado no inicio do primeiro ciclo de
processamento após o restart, o flag de RI F100.2 porém permanece setado. No inicio do segundo ciclo
ambos são resetados; o flag de RI, portanto, permaneceu setado somente durante o primeiro ciclo de
processamento.
4.13.2. Flags para verificação de nível lógico “0” e nível lógico “1”
Atenção
Tanto o flag de RI como os flags para a verificação dos níveis lógicos “0” e “1” podem ser
escolhidos livremente pelo usuário. Não devem porém ser usados endereços de byte a partir de FB200,
por serem estes flags usados como “flags de rascunho” nos FB’s (blocos de funções).
A figura mostra uma parte de um programa de comando. Os dois modos de operação CPPC
(comando passo-a-passo condicionado, F12.0) e AUT (funcionamento automático, F12.1) são
selecionados pelas chaves I32.7 e I32.6 .O modo de funcionamento selecionado (chave I32.7 ou I0.6) só é
liberado se estiver acesa a lâmpada correspondente (Q33.7 = CPPC; Q33.6= AUT) e for ligada a chave
I33.5 (LIB).
Testar funcionamento do PB12 com STATUS e verificar funcionamento dos dois modos de
operação no modelo da prensa: devera estar ligada somente uma lâmpada de modo de
funcionamento de cada vez se a chave respectiva e a chave I32.5 (LIB) estiverem ligadas.
Observação
O bloco PB12 ainda não contém o segmento 1 da figura (embaixo a direita). Após uma parada do
sistema provocada por uma parada do CP não pode mais ser liberado o modo de funcionamento
anteriormente selecionado (Q33.7 e Q33.6 apagados). Ele deve , por motivos de segurança, ser
selecionado novamente antes de um restart.
Verifique: esta importante observação não foi considerada no PB12. Para que o programa
esteja de acordo com as prescrições da filosofia de funcionamento e necessário completar o
PB12 com o segmento 1 da figura (F100.2 = flag de RI) e com a associação OU antes da
entrada R dos flags F12.0 e F12.1.
Fazer as alterações indicadas na figura. Verificar se após uma parada e restart ou após uma
queda de tensão as saídas Q33.7, Q33.6 e Q33.0 permanecem apagadas.
Descrição da função
As saídas Q33.1 e Q33.5 dos dois segmentos do PB13 comandam dois contadores. A ligação e o
desligamento são feitos através dos botões I32.1 e I32.5 (fechadores), e botões I32.2 e I32.6 (abridores),
respectivamente. Os contadores só podem ser ligados se existir sinal de liberação (I33.7). A condição
“ligado” das duas saídas é impedida se as chaves I32.3 e I32.7 não estiverem fechadas.
Nos segmentos 2 e 4 e verificado através da função OU-EXCLUSIVO se os níveis lógicos dos flags
F10.1 e F10.2 se diferenciam respectivamente dos sinais I0.0 e I0.4 de retroaviso dos contadores. Estas
situações irregulares são sinalizadas, com um tempo de retardo de 3 segundos (KT030.1) associado a uma
sinalização piscante (F10.0), através das lâmpadas ligadas as saídas Q32.2 e Q32.6, respectivamente. As
lâmpadas permanecem apagadas se os flags e os retroavisos tiverem nível lógico ”0”; elas têm luz
contínua se os flags e os retroavisos tiverem nível lógico “1”.
No segmento 5 é gerada a tensão piscante com o temporizador T1 e o flag F10.0. O flag de tensão
piscante F10.0 e acionando se após transcorrida a temporização e novamente acionando o flag F10.7.
Exercício
Chamar PB13 da memória do CP para a tela (OUTPUT PC; PB13) e inserir segmentos 2,4
e 5 (ver página 5.16).
Levar CP novamente para o modo de operação CICLO e testar função no simulador através
da função STATUS PB13.
Observação
A cada alteração do bloco devida a inserção de segmentos só e armazenada, após se acionar por
diversas vezes a tecla ENTER, se a pergunta “PB13 ALREADY ON PC, OVERWRITE?” for respondida
afirmativamente com o acionamento da tecla ENTER.