


















Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Os melhores documentos à venda: Trabalhos de alunos formados
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Comunidade
Peça ajuda à comunidade e tire suas dúvidas relacionadas ao estudo
Descubra as melhores universidades em seu país de acordo com os usuários da Docsity
Guias grátis
Baixe gratuitamente nossos guias de estudo, métodos para diminuir a ansiedade, dicas de TCC preparadas pelos professores da Docsity
descritivo de Montagem de FB siemens step7
Tipologia: Resumos
1 / 26
Esta página não é visível na pré-visualização
Não perca as partes importantes!
Página
Geral Até agora, as entradas e saídas utilizadas no sistema transportador foram endereçadas com seus parâmetros atuais. Não foram associados parâmetros para
SITRAIN Training for Programação Básica em STEP 7
endereçadas com seus parâmetros atuais. Não foram associados parâmetros para os blocos. Esse procedimento pode ser escolhido, por exemplo, na criação de um programa que será usado apenas em uma máquina especial. Para funções utilizadas freqüentemente em sistemas maiores podem ser criados blocos parametrizáveis de uso universal (FC, FB). Eles possuem parâmetros formais de entrada e saída, aos quais são atribuídos parâmetros atuais quando a chamada é feita. A associação da funcionalidade do bloco ao hardware é feita na parametrização, quando da chamada do bloco; a lógica do bloco não é alterada.
Variáveis Locais Até agora foram utilizadas variáveis globais (bit memories e blocos de dados) para armazenar os dados de produção, por exemplo. Nesse capítulo serão dadas mais informações sobre o o armazenamento de dados em variáveis locais.
Variáveis Temp Variáveis temporárias são variáveis armazenadas apenas durante a execução do bloco. Elas podem ser utilizadas em todos os blocos (OB, FC, FB).
Variáveis Estáticas Se os dados tiverem de continuar armazenados mesmo após a execução do bloco deverão ser usadas as variáveis estáticas. As variáveis estáticas só podem ser utilizadas em blocos de função.
Ocupação Total no É possível exibir o número de bytes que o programa todo necessita na pilha L-Stack local de dados com a ferramenta "Reference Data". Essa ferramenta será melhor
SITRAIN Training for Programação Básica em STEP 7
L-Stack local de dados com a ferramenta "Reference Data". Essa ferramenta será melhor explorada no capítulo “Procura de Defeitos". A ocupação total da pilha de dados local e o número de bytes necessário por chamada é exibido na tela.
Ativando o No SIMATIC Manager selecione a pasta Blocks e as opções de menu Reference Data Options -> Reference Data -> Display.
Nota Se o máximo número de dados locais for excedido durante a execução do programa, a CPU vai para o modo Stop. A mensagem “STOP causado por erro na alocação de dados locais” ("STOP caused by error when allocating local data“) é reportada como a causa do erro no buffer de diagnóstico.
Local Data Stack A pilha de dados locais (local data stack ou L stack) é uma área de memória que contém as variáveis temporárias (em substituição às memórias de rascunho da
SITRAIN Training for Programação Básica em STEP 7
contém as variáveis temporárias (em substituição às memórias de rascunho da linha SIMATIC S5) dos blocos.
Tamanho do L Stack Quando o sistema operacional chama um OB, uma área de L stack de 256 bytes é aberta enquanto o OB e os blocos chamados estão em execução. Para cada classe de prioridade são reservados 256 bytes. O L stack das CPUs 313..316 tem um total de 1536 bytes (1.5kByte).
Classes de Prioridade Há um total de oito classes de prioridade no S7-300. Contudo, não mais do que 6 classes de prioridade podem estar ativas ao mesmo tempo. Se, por exemplo, o OB 100 estiver ativo (com classe de prioridade 27), então o OB 1 (classe de prioridade 1) nunca pode estar ativo. Além disso, os OBs de 80 a 87 para erros assíncronos podem apenas ter classe de prioridade 28, se a falha ocorrer no programa de startup. Em outras palavras, para que interrompam o OB 100. Maiores informações serão vistas no capítulo "Blocos de Organização".
S7-400 Com as CPUs do S7-400 é possível escolher o tamanho da pilha de dados locais para as classes de prioridade individuais (Ferramenta: HW Config.). É possível desativar as classes de prioridade que não são necessárias. Dessa forma, pode-se disponibilizar maior área de dados para as outras classes de prioridade.
Situação Atual: • As peças transportadas no modo AUTO são contadas (por adição na no FC 18 variável "DB_Parts".ACTUAL_Number_of_Parts), assim que elas atingirem a
SITRAIN Training for Programação Básica em STEP 7
no FC 18 variável "DB_Parts".ACTUAL_Number_of_Parts), assim que elas atingirem a posição de Controle Final ou atravessarem a barreira luminosa.
Objetivo: A funcionalidade programada no FC 18 deve permanecer inalterada. Contudo, use a variável local, temporária Setpoint para o armazenamento intermediário do SETPOINT número de peças convertido de BCD para INT.
O Que Fazer : • No FC 18, declare a variável temporária Setpoint como do tipo INT.
Descrição Problemas (falhas) que ocorrem devem ser exibidas por um LED no púlpito do operador. Quando o problema (I 1.3) ocorre, o LED (Q 8.3 ou Q 4.3) deve piscar
SITRAIN Training for Programação Básica em STEP 7
operador. Quando o problema (I 1.3) ocorre, o LED (Q 8.3 ou Q 4.3) deve piscar com 2Hz. O problema é reconhecido na entrada I 1.2. Se o problema for corrigido, o LED pára de piscar. Se o problema continuar, o LED muda para o estado aceso permanente até que o problema esteja corrigido.
Programa Para que mesmo os problemas existentes por curtos períodos de tempo não sejam perdidos é utilizado um flip flop com set dominante (M40.0). Uma detecção de flanco do RLO do sinal da mensagem é utilizado, para que a memória possa sofrer reset quando a falha é reconhecida. Se a memória for setada (a falha ainda não foi reconhecida), a lógica AND superior faz com que o LED pisque. Com isso, o bit memory M10.3, definido como clock memory durante a parametrização da CPU, é avaliado. A operação lógica AND inferior é utilizada para provocar o estado aceso permanente caso a falha seja reconhecida e o problema persistir.
Endereços Formais Antes de criar o programa para o bloco parametrizável é necessário definir os parâmetros formais na tabela de declarações.
SITRAIN Training for Programação Básica em STEP 7
parâmetros formais na tabela de declarações.
Tipo de Parâmetro Na tabela da figura podem ser observados três possíveis tipos de parâmetros e suas utilizações. É importante ter certeza de que os endereços formais que possuem acesso de leitura (utilizados em operações A, O, L) e acesso de escrita (associados com operações S, R, T) sejam declarados como parâmetros in/out. Exemplo FC20 Na parte inferior da figura pode ser observada a tabela de declarações do bloco FC 20 para a exibição da mensagem de falha (consulte a página anterior). Como os parâmetros formais #Memoria e #Mem_Flanco são acessados tanto para leitura como para escrita com a operação FP, deve-se declará-los como parâmetros in/out. Notas Existe apenas uma linha para cada tipo de parâmetro na tabela de declarações. Após completada a declaração do parâmetro formal, pressionando-se Enter uma linha adicional automaticamente aparece, para esse tipo de parâmetro. Também é possível inserir uma linha adicional de declaração utilizando as opções de menu Insert -> Declaration Row -> Before Selection /After Selection.
Atenção! Os parâmetros formais declarados de um bloco são sua interface externa, isto é, eles são “visíveis” ou relevantes nos outros blocos que o chamam. Se a interface de um bloco for modificada posteriormente adicionando-se ou retirando-se parâmetros formais, isso resultará que as chamadas tenham de ser atualizadas ou corrigidas em todos os outros blocos nos quais a chamada deste bloco já foi programada.
Notas Não importa se os nomes dos parâmetros formais são escritos com letras maiúsculas ou minúsculas. O caractere “#” na frente do nome é automaticamente
SITRAIN Training for Programação Básica em STEP 7
maiúsculas ou minúsculas. O caractere “#” na frente do nome é automaticamente inserido pelo PG. Ele serve para indicar que trata-se de uma variável local, definida na tabela de declarações do bloco. É possível, ao editar o programa em LAD / FBD, que o nome não seja completamente exibido em uma linha. Isso depende da configuração do Editor de Programa ( Options -> Customize -> " LAD / FBD " tab -> Width of address field).
Símbolos 1. Se for utilizado um nome simbólico ao editar um bloco, o Editor busca na tabela de declarações. Se ele existir, o símbolo com o caractere # em frente é aceito no programa como uma variável local.
Função da Problemas (falhas) que ocorrem (chave do simulador) são exibidas através de Avaliação de um LED no simulador com uma freqüência de 2 Hz. As falhas podem ser
SITRAIN Training for Programação Básica em STEP 7
Avaliação de um LED no simulador com uma freqüência de 2 Hz. As falhas podem ser Falha reconhecidas utilizando uma chave não retentiva (pushbutton) no simulador. Ao reconhecer uma falha ainda existente (a chave no simulador ainda estiver ligada), o LED muda para o estado aceso permanente. O estado aceso permanente desaparece assim que a falha não existe mais. Ao reconhecer uma falha que não existe mais (a chave no simulador está desligada), o LED apaga imediatamente.
Objetivo Escreva o programa para a análise de falha no bloco parametrizável FC 20. Na figura pode-se observar a tabela de declarações do FC 20, com os parâmetros formais e o início do programa no qual os parâmetros formais são utilizados.
O Que Fazer • Insira o bloco FC 20.
Objetivo Duas falhas de processo (duas chaves no simulador) devem ser avaliadas e exibidas através dos LEDs no simulador. Sendo assim, programe duas chamadas
SITRAIN Training for Programação Básica em STEP 7
exibidas através dos LEDs no simulador. Sendo assim, programe duas chamadas do FC 20 e associe parâmetros a ele utilizando os parâmetros atuais exibidos na figura.
O Que Fazer • Programe o FC 20 – chame-o em dois novos networks no bloco Avaliação de Falha FC 17;
Nota O memory byte MB 10 foi parametrizado como clock memory nas propriedades da CPU através da ferramenta HW-Config. Se tiver sido feito um reset de memória por algum motivo o system data gerado pelo HW Config deve ser carregado novamente na CPU para que o bit memory M10.3 pulse.
Exibição de No exercício prévio foi criado o bloco parametrizável FC 20 para a exibição de Messagem uma mensagem (indicação de um problema).
SITRAIN Training for Programação Básica em STEP 7
Messagem uma mensagem (indicação de um problema). Ao invés de bit memories, utilizados no FC20 para salvar o sinal e sua detecção de flanco do RLO, pode-se utilizar as variáveis estáticas em um FB. Elas são armazenadas no DB instance referenciado ao FB.
Estrutura do DB Quando um DB é criado e referenciado a um FB, o STEP7 cria a estrutura de Instance dados do bloco de dados utilizando a estrutura especificada na tabela de declaração local do bloco de função. Após salvar o DB, o bloco de dados é criado e pode então ser utilizado como um DB instance.
Gerando um DB Existem duas maneiras de se gerar um novo DB instance: Instance • Especificando na chamada do FB com qual DB instance ele irá trabalhar.
SITRAIN Training for Programação Básica em STEP 7
Instance • Especificando na chamada do FB com qual DB instance ele irá trabalhar. Aparece a seguinte mensagem: "The instance data block DB x does not exist. Do you want to generate it?“ (“O bloco de dados instance DB x não existe. Você deseja criá-lo?”).
Notes Um DB instance pode apenas referenciar um FB. Contudo, um FB pode ser referenciado por diferentes DB instance cada vez que for chamado. Se o FB for modificado (adicionando parâmetros ou variáveis estáticas), o DB instance deve ser gerado novamente.
Área de Utilização A função Check block consistency -> Compile elimina uma grande parte de todos os conflitos e inconsistências de blocos.
SITRAIN Training for Programação Básica em STEP 7
os conflitos e inconsistências de blocos. Os conflitos de interface ocorrem quando a interface do bloco parametrizável é modificada, após feitas as chamadas do bloco nos outros blocos. As inconsistências de bloco também ocorrem, por exemplo, quando endereços são acessados simbolicamente, e a associação Símbolo <-> Endereço absoluto é modificada posteriormente na tabela global de símbolos ou nos blocos de dados. Os blocos cujas inconsistências não puderem ser eliminadas automaticamente (por ex. por conflitos de interface), são indicados com símbolos (consulte o help online) e podem ser abertos e corrigidos pelo usuário utilizando o Editor usando o botão direito do mouse (por favor observe a página seguinte).
Tree View... A visualização em formato de árvore (“tree view”) exibe a lógica / dependências de interface ou referências dos blocos da pasta de bloco selecionada. A árvore pode ser exibida tanto como uma Árvore de Dependência (“Dependency Tree”) ou como uma Árvore de Referência (“ReferenceTree”) utilizando View -> Reference Tree / Dependency Tree.
...as Reference Tree A árvore de referência exibe em níveis, da esquerda para a direita, todas as dependências de seus blocos ou seu aninhamento. Assim como com o comando Reference data / Program structure, o caminho das chamadas é exibido da esquerda para a direita, iniciando do nível de aninhamento 1. Além disso, a árvore de referência fornece uma visão geral da profundidade do aninhamento nos níveis individuais de execução do programa.
...as Dependency A árvore de dependência exibe em níveis da esquerda para a direita as Tree dependências de todos os blocos ou seu aninhamento. Neste caso os caminhos exibidos não iniciam-se do nível de aninhamento 1, mas sim dos blocos individuais. Assim, todos os blocos da pasta de blocos são listados no maior nível à esquerda. Os níveis seguintes (à direita) exibem as dependências ou os blocos a partir dos quais eles são chamados. Assim como com o comando Reference data / Cross reference list, a árvore de dependência fornece informação sobre quais outros blocos chamam cada bloco.
Atualizando uma As chamadas inconsistentes do bloco (na figura o FC 20) são marcadas em Chamada vermelho no bloco aberto que faz a chamada (na figura o FC 17).
SITRAIN Training for Programação Básica em STEP 7
Chamada vermelho no bloco aberto que faz a chamada (na figura o FC 17). Clicando com o botão direito do mouse sobre a chamada inconsistente pode-se escolher a função Update Block Call na lista de opções. Uma janela é exibida na qual a chamada do bloco antiga (inconsistente) e a nova (na figura com o parâmetro adicional "Check_Lights") aparecem. Após confirmar com OK, é possível completar o parâmetro formal "Check_Lights" com o parâmetro atual restante. O DB Instance é gerado novamente para blocos de função.