A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

2º Dia - continuação João Mealhas CS-PLC1 Curso Básico

Apresentações semelhantes


Apresentação em tema: "2º Dia - continuação João Mealhas CS-PLC1 Curso Básico"— Transcrição da apresentação:

1 2º Dia - continuação João Mealhas CS-PLC1 Curso Básico
Autómatos Programáveis 2º Dia - continuação APRESENTAÇÃO O formador: João Mealhas

2 Temporizadores e contadores
CX-PROGRAMMER - EDITOR DE SÍMBOLOS Até agora, propositadamente, não nos preocupamos com o modo como introduzimos os endereços necessários aos programas que fomos desenvolvendo. Estes foram introduzidos com a seguinte sequência: Introdução do endereço pretendido (ex: ) Comentário associado (ex: ON) ENDEREÇO Desta forma a nossa variável fica orientada ao comentário, e perco algumas funcionalidades, como seja a chamada do endereço pelo seu nome. COMENTÁRIO

3 Temporizadores e contadores
CX-PROGRAMMER - EDITOR DE SÍMBOLOS No entanto a definição das variáveis pode ser feita das seguintes formas: Individualmente à medida das necessidades Introdução directa do endereço Introdução directa do nome Utilizando o Editor de Símbolos Directamente Recorrendo a outros softwares Assignação automática Como se tem vindo a fazer

4 Temporizadores e contadores
INTRODUÇÃO DIRECTA DO ENDEREÇO

5 Temporizadores e contadores
INTRODUÇÃO DIRECTA DO NOME

6 Temporizadores e contadores
UTILIZANDO O EDITOR DE SÍMBOLOS Sempre que possível esta deve ser a forma utilizada. Num fase prévia ao desenvolvimento do programa propriamente dito, elaborar uma lista com as variáveis que nos parecem necessárias ao programa, e fazer a respectiva atribuição de endereços, nomes e comentários. DIRECTAMENTE ATRAVÉS DO CX-PROGRAMMER AUXILIADO POR OUTROS SOFTWARES

7 Temporizadores e contadores
ASSIGNAÇÃO AUTOMÁTICA O CX-Programmer pode assignar automaticamente endereços aos contactos/nomes Depois de ter habilitado a opção “Automatic Allocation” para o PLC em causa, cada contacto que for criado deixando o seu endereço em branco, (é necessário colocar o nome do contacto), terá assignado um endereço que será marcado como “Auto” para indicar que esse endereço não foi atribuído pelo programador.

8 Iniciação à programação de autómatos
EXERCÍCIO 9  Descrição do pretendido: Utilizando o editor de símbolos do Cx-Programmer, trabalhar o último programa feito, de modo a atribuir nomes aos respectivos endereços. NOTA: Trabalhar a partir do último programa feito.

9 Temporizadores e contadores
CX-PROGRAMMER – SECÇÕES DO PROGRAMA Os programas a partir de um determinado tamanho/complexidade, tornam-se difíceis de interpretar, dada a grande quantidade de informação junta. Uma melhor interpretação pode ser feita se o programa estiver estruturado em blocos, devidamente identificados. Desta forma é possível analisar apenas a parte do programa em questão, em vez da sua totalidade, o que simplifica bastante as coisas.

10 Iniciação à programação de autómatos
EXERCÍCIO 10  Manual de Exercícios pág. 12 Descrição do pretendido: Utilizando o programa na sua última fase, criar 3 secções designadas por: TAPETE – Colocar apenas a função referente ao movimento do tapete TEMPO_INSP – Colocar apenas o temporizador FIM – Alterar apenas o nome NOTA: Trabalhar a partir do último programa feito.

11 Temporizadores e contadores
CONTADORES – CNT A instrução CNT permite a programação de um contador decrescente Este é identificado com um número, tal como acontece nos temporizadores É especificado também o valor de PRESET que pode ser uma constante ou o valor contido numa word. Um pormenor importante de se referir, é que ao contrário dos temporizadores, os contadores retêm o seu conteúdo, mesmo após a falha de alimentação do autómato.

12 Temporizadores e contadores
CONTADORES – CNTR(12) A instrução CNTR(12) permite programar um contador reversível Tal como na instrução CNT, este é identificado com um número É especificado também o valor de PRESET que pode ser uma constante ou o valor especificado por um canal

13 Iniciação à programação de autómatos
EXERCÍCIO 11 Descrição do pretendido: Ao processo que temos vindo a utilizar, foi retirada a fase referente à inspecção. Pretende-se agora, e após a ordem de arranque do sistema (On), transportar 5 peças (ex: unidades por palete), após as quais o sistema devera permanecer em repouso até nova ordem (On). À ordem de paragem (Off) o sistema deverá parar. Ao reiniciar deverá contar novamente mais 5 peças, independentemente do número em que se encontrava quando foi dada a ordem de paragem.

14 Temporizadores e contadores
CX-PROGRAMMER – APAGAR ENDEREÇOS NÃO NECESSÁRIOS Durante o desenvolvimento do programa, é frequente encontra-se endereços que por razões várias não estão a ser utilizados. Por exemplo por se ter apagado ou alterado parte do programa. Como é óbvio é muito complicado fazer esta verificação manualmente, principalmente se o programa for extenso. O Cx-Programmer permite apagar de uma forma automática os endereços definidos mas não utilizados. Esta verificação pode ser feita a uma determinada área de memória ou à sua totalidade.

15 Iniciação à programação de autómatos
EXERCÍCIO 12 Descrição do pretendido: Apagar todos os endereços do programa anterior que não estejam a ser utilizados, recorrendo à função do Cx-Programmer que permite esta operação. Antes Depois

16 Temporizadores e contadores
VARIÁVEIS GLOBAIS E LOCAIS Dentro do editor de variáveis globais declaram-se as variáveis que serão comuns a qualquer das tarefas que se definam para o projecto. As variáveis criadas nos editores de variáveis locais só serão visíveis na tarefa (programa) onde tenham sido criadas e não nas restantes.

17 Iniciação à programação de autómatos
EXERCÍCIO 13 Descrição do pretendido: Ao programa feito no exercício anterior, alterar as variáveis definidas como Globais para variáveis Locais. Recorrendo ao editor de símbolos, alterar os seguintes endereços: Sensor de saída: De para Contador: De C0001 para C0000

18 SISTEMAS NUMÉRICOS Sistemas numéricos
O sistema mais comum de representação é sem duvida o sistema decimal que utiliza os símbolos de "0" a "9". Em certas aplicações (máquinas, comunicações, etc.), recorre-se frequentemente a outros sistemas de numeração, por forma a optimizar a sua exploração tais como sistemas: Binário BCD ( binário codificado decimal ) Hexadecimal Gray Ascii

19 SISTEMA BINÁRIO Sistemas numéricos
Num circuito eléctrico, facilmente podemos definir dois estados: ligado/desligado ou com tensão/sem tensão. Podem-se então usar estes dois estados como base de um sistema numérico; um sistema binário. Para simplificar a representação dos estados ligado e desligado usam-se os símbolos 1 e 0 respectivamente. Podemos codificar valores numéricos numa base binária, usando a mecânica que já foi anteriormente explicada para o sistema decimal. À frente da representação binária, colocou-se o valor decimal correspondente.

20 SISTEMA BINÁRIO Sistemas numéricos
Fórmula geral de conversão de um número binário para decimal Procedimento para a conversão do numero 12 em decimal, para o seu equivalente em binário. Procedimento para a conversão do numero 1100 em binário, para o seu equivalente em decimal.

21 SISTEMA BCD Sistemas numéricos
Para que a conversão de um valor binário em decimal seja mais fácil, existe um sistema de codificação que usa quatro bits para codificar valores de 0 a 9, desaproveitando as restantes 6 combinações possíveis. Esta forma de codificar valores numéricos em binário chama-se BCD. Procedimento para a representação do numero 12 em BCD Para codificar o valor decimal 947, temos a seguinte codificação BCD:

22 SISTEMA HEXADECIMAL Sistemas numéricos
Este sistema utiliza como símbolos, os números de 0 a 9 e as letras de 'A' a ' F'. Procedimento para a conversão do numero 4382 em decimal para hexadecimal. Procedimento para a conversão do numero 111E em hexadecimal para decimal

23 TRATAMENTO DE DADOS OBJECTIVOS
Análise e aplicação de algumas intrusões dedicadas ao tratamento de dados Trabalhar com o editor de áreas de memória do cx-programmer

24 INSTRUÇÃO DE COMPARAÇÃO CMP(20)
Tratamento de dados INSTRUÇÃO DE COMPARAÇÃO CMP(20) Esta instrução permite comparar dois valores numéricos sendo o resultado dado pelo estado de três relés especiais A instrução CMP(20) é sempre antecedida por uma condição lógica que quando está a ON permite a execução da comparação Nas novas famílias de autómatos CS e CJ podem utilizar-se funções de comparação directas: Se A>B então o relé vai a ON. Se A=B então o relé vai a ON. Se A<B então o relé vai a ON.

25 Iniciação à programação de autómatos
EXERCÍCIO 14 Descrição do pretendido: Ao programa da fase anterior foi acrescentada uma torre luminosa para informação ao operador do estado da contagem. Durante a contagem das 5 peças a embalar a luz vermelha e a luz amarela devem dar a seguinte indicação: Amarela – Deve acender quando faltarem 2 peças para finalizar o ciclo Vermelha – Deve acender à 5 peça transportada. Adicionando o facto de que esta deverá piscar em intervalos de 1 segundo. À ordem de novo ciclo (On), ou à ordem de paragem (Off) os indicadores luminosos deverão apagar.

26 INSTRUÇÃO MOV(21) Tratamento de dados
A instrução MOV (MOVE) permite copiar o valor contido em A para o destino expresso em B, sempre que a condição lógica que antecede esta instrução esteja a ON. "A" pode ser um canal, um temporizador/contador ou uma constante "B" pode ser um canal ou temporizador/contador

27 INSTRUÇÃO MOVN(22) Tratamento de dados
A instrução MOVE NOT permite copiar o conteúdo negado de A para o destino expresso em B, sempre que a condição lógica que antecede esta instrução esteja a ON "A" pode ser um canal, um temporizador/contador ou uma constante "B" pode ser um canal ou temporizador/contador

28 Iniciação à programação de autómatos
EXERCÍCIO 15 Descrição do pretendido: Ao sistema anterior fizeram-se algumas alterações, no sentido de permitir que os lotes não fossem feitos sempre de 5 peças, mas de acordo com a posição de um selector fazer respectivamente lotes de 3, 5 e 10 peças. Foi retirada a torre luminosa O selector deverá permitir seleccionar uma das 3 ordens de fabrico possíveis: Ord. Fabrico 1 – Para fazer lotes de 3 peças Ord. Fabrico 2 – Para fazer lotes de 5 peças Ord. Fabrico 3 – Para fazer lotes de 10 peças

29 CX-PROGRAMMER – EDITOR DE ÁREAS DE MEMÓRIA
Tratamento de dados CX-PROGRAMMER – EDITOR DE ÁREAS DE MEMÓRIA Existem ferramentas que devem ser dominadas, quando se trabalha com dados. Quando se pretende controlar uma quantidade grande de dados (de distintas áreas de memória), pode-se utilizar a janela “Address Monitor” na área de memória do PLC.

30 EXEMPLO DE APLICAÇÃO – (Editor de Áreas de Memória )
Tratamento de dados EXEMPLO DE APLICAÇÃO – (Editor de Áreas de Memória ) Vamos como base utilizar o exemplo utilizado na instrução MVN(21), para melhor entender o editor de áreas de memória do Cx-Programmer, e aproveitar para monitorizar o efeito da função MVN(21).

31 INSTRUÇÃO SFT(10) Tratamento de dados
A instrução SHIFT permite implementar um registo deslocamento começando na word A e acabando na word B A word A deverá ter um endereço menor ou igual à word B, e as duas devem pertencer à mesma área de memória

32 1º Passo – Desenvolver programa
Tratamento de dados EXEMPLO DE APLICAÇÃO 1º Passo – Desenvolver programa Em cx-programmer, elaborar o programa abaixo representado (trata-se do exemplo simples mas suficiente para compreender o funcionamento da instrução SFT(10)) Transferir o programa para o autómato, e seleccionar o modo de funcionamento MONITOR

33 2º Passo – Abrir a janela de visualização
Tratamento de dados 2º Passo – Abrir a janela de visualização Esta janela “Toggle Watch Window”, permite monitorizar o estado dos endereços especificados, bem como a alteração do seu estado

34 3º Passo – Especificar o/os endereço/s a trabalhar
Tratamento de dados 3º Passo – Especificar o/os endereço/s a trabalhar 4º e 5º Passo – Alteração dos valores EDIÇÃO EM BINÁRIO

35 6º Passo – Monitorização do funcionamento da função SFT(10)
Tratamento de dados 6º Passo – Monitorização do funcionamento da função SFT(10) FIM EXEMPLO

36 Iniciação à programação de autómatos
EXERCÍCIO 16 Descrição do pretendido: Na zona de embalagem do nosso projecto, é necessário fazer uma operação para selagem do produto final. O sistema é composto por 5 cilindros. A ordem de descida dos cilindros deverá ser do 1 para o 5, um de cada vez, e a cada ordem de descida dada pelo operador. Os cilindros devem manter-se actuados, até ordem de paragem (Off) ou ordem de nova descida já com todos os cilindros actuados. Para o recuo dos cilindros basta retirar o sinal de actuação correspondente.

37 Programação de processos sequenciais
GRAFCET Representação gráfica O GRAFCET representa graficamente o funcionamento de um automatismo recorrendo a um conjunto de: ETAPAS, ás quais estão associadas ACÇÕES TRANSIÇÕES, ás quais estão associadas RECEPTIVIDADES LIGAÇÕES, ligação das etapas ás transições e vice versa

38 Iniciação à programação de autómatos
EXERCÍCIO 21 Descrição do pretendido: Pretende-se a cada ordem (On) encher 2 depósitos consecutivos, Produto A e Produto B. O fim de descarga de cada produto é indicado pelo respectivo equipamento EV1 e EV2. Ao fim de encher o último deposito, o tapete deve avançar e parar logo que o depósito abandone a zona de enchimento (deixar de actuar no sensor). À ordem de paragem (Off) o sistema deve desligar todas as saídas, e ficar pronto para novo ciclo.

39 Iniciação à programação de autómatos

40 EXEMPLO – Utilizando a função SFT(10)
Tratamento de dados

41 EXEMPLO – Utilizando a função SFT(10)
Tratamento de dados

42 INSTRUÇÕES DE CÁLCULO ARITMÉTICO
OBJECTIVOS Utilização das funções elementares utilizadas no calculo aritmético. Tipo de variáveis do cx-programmer Como atribuir comentários ao programa, utilizando o cx-programmer

43 Instruções de cálculo aritmético
CX-PROGRAMMER - TIPOS DE VARIÁVEIS Até agora não se tinha dado grande importância à natureza do tipo de variável utilizada, pois não era factor essencial Nesta fase, tratamento de dados, e em concreto instruções aritméticas, é importante este assunto

44 Instruções de cálculo aritmético
OPERAÇÕES ARITMÉTICAS É hoje frequente nos autómatos instruções que permitem a execução de operações aritméticas, embora esta não seja uma máquina vocacionada para o cálculo numérico Dependendo do autómato, poderemos encontrar as operações básicas (soma, subtracção, multiplicação e divisão) ou outras mais sofisticadas, como sendo o cálculo em virgula flutuante, funções trigonométricas, raiz quadrada, etc.. A base numérica também pode ser diversa: binário, BCD, etc.. Vamos neste capítulo analisar o uso das operações aritméticas básicas em BCD e outras funções associadas

45 Instruções de cálculo aritmético
SOMA EM BCD ADD(30) Esta função permite adicionar dois valores numéricos A e B e coloca o resultado da adição no canal especificado em C Os valores numéricos especificados em A e B podem ser constantes ou o conteúdo de um canal, contador ou temporizador Nas novas famílias de autómatos CS e CJ utilizar:

46 Instruções de cálculo aritmético
Pág. 158 EXEMPLO DE APLICAÇÃO – SOMA BCD

47 Instruções de cálculo aritmético
RELÉ DE CARRY O relé CY é utilizado em operações aritméticas, para detectar: Existência de OVERFLOW Existência de resultado negativo Analisemos o exemplo que se segue...

48 Instruções de cálculo aritmético
RELÉ DE CARRY EXEMPLO DE APLICAÇÃO - CY Nestes casos a presença do bit mais significativo (1) é sinalizado por um relé especial que passa a ON, e que se designa por RELÉ DE CARRY O relé de carry (abreviadamente CY) tem no autómato CPM1A o endereço O RELÉ DE CARRY uma vez a ON, só passa a OFF se for executada a função CLC(41).

49 Instruções de cálculo aritmético
RELÉ DE CARRY Quando se trabalha com números positivos, é boa norma fazer executar a função CLC(41) antes de executar uma função aritmética Desta forma limpa-se o relé de CARRY (é colocado a OFF) que poderia ter sido colocado a ON por outra operação aritmética existente no programa e que caso estivesse activo falsearia o resultado da operação a executar Neste contexto o programa do exemplo anterior poderia ser melhorado desta forma

50 Instruções de cálculo aritmético
SUBTRACÇÃO EM BCD - SUB(31) A função SUB(31) permite subtrair ao valor contido em A o valor contido em B e coloca o resultado no canal especificado em C Nas novas famílias de autómatos CS e CJ utilizar: No caso da operação de subtracção, o resultado nunca excede quatro dígitos Há no entanto a possibilidade de o resultado ser negativo ( quando A for menor que B ). Esta ocorrência é assinalada pelo mesmo relé de carry atrás mencionado.

51 Instruções de cálculo aritmético
EXEMPLO DE APLICAÇÃO – SUBTRACÇÃO EM BCD Como obter o valor absoluto da subtracção ?

52 Instruções de cálculo aritmético
MULTIPLICAÇÃO EM BCD - MUL(32) A função que permite efectuar o produto de dois valores numéricos BCD, é a função MUL(32) Nas novas famílias de autómatos CS e CJ utilizar: Sempre que a condição lógica que antecede a função está a ON, o valor em A é multiplicado pelo valor contido em B e o resultado da operação é colocado no canal especificado em C e no imediatamente seguinte C+1 Os quatro dígitos menos significativos do resultado são colocados no canal especificado em C e os quatro restantes dígitos mais significativos são colocados no canal C+1

53 Instruções de cálculo aritmético
EXEMPLO DE APLICAÇÃO – MULTIPLICAÇÃO EM BCD

54 Instruções de cálculo aritmético
DIVISÃO EM BCD - DIV(33) A função DIV(33) permite efectuar o quociente de dois valores numéricos BCD Nas novas famílias de autómatos CS e CJ utilizar: Sempre que a condição lógica que antecede a função está a ON, o valor em A é dividido pelo valor contido em B e o resultado da operação é colocado no canal especificado em C e no imediatamente seguinte O quociente é colocado no canal especificado em C e o resto é colocado no canal C+1

55 Instruções de cálculo aritmético
EXEMPLO DE APLICAÇÃO – DIVISÃO EM BCD

56 Instruções de cálculo aritmético
OPERAÇÕES ARITMÉTICAS EM BINÁRIO Nas operações aritméticas apresentadas anteriormente, apenas é possível trabalhar com operandos de 4 dígitos (uma word) em BCD Há no entanto situações que obrigam a trabalhar valores maiores que 9999 (BCD), e para o fazer temos de recorrer à codificação em Binário Em Binário é possível codificar numa word um valor que pode ir até 65535, contra 9999 em BCD Instruções aritméticas básicas para operar com valores binários: ADB(50) - soma binária SBB(51) - subtracção binária MLB(52) - multiplicação binária DVB(53) - divisão binária

57 Instruções de cálculo aritmético
EXEMPLO DE APLICAÇÃO – OPERAÇÃO ARITMÉTICA EM BINÁRIO

58 Iniciação à programação de autómatos
EXERCÍCIO 17 Descrição do pretendido: Aproveitar o exercício 11 Ao sistema em causa foi adicionado um terminal de diálogo homem máquina, para permitir introduzir o número de paletes que se pretende fazer (D0000), bem como monitorizar o número de peças que falta transportar para finalizar o pedido em curso (D0002) Uma vez dada ordem de inicio (On) o sistema deverá transportar o numero de peças necessárias para preencher o numero de paletes solicitadas Cada palete leva 5 peças

59 Instruções de cálculo aritmético
INSTRUÇÃO INC(38) E DEC(39) A instrução INC(38) deriva de um caso particular da adição em BCD. Sempre que a condição de execução está activa, esta instrução faz incrementar uma unidade ao conteúdo do canal especificado em A, em cada scan. Tal como acontecia com a instrução INC(38), a instrução DEC(39) deriva de um caso particular da subtracção em BCD. Sempre que a condição de execução está activa, esta instrução faz decrementar uma unidade ao conteúdo do canal especificado em A, em cada scan.

60 Iniciação à programação de autómatos
EXERCÍCIO 18 Descrição do pretendido: Utilizar o programa na sua forma mais simples, ou seja apenas o controlo de tapete (Liga/Desliga) Foi colocada mais uma fotocélula sensivelmente no inicio do tapete. Pretende-se desta forma saber sempre quantas peças estão no decorrer do transporte, ou seja compreendidas entre os dois sensores.

61 Temporizadores e contadores
CX-PROGRAMMER – COMENTAR O PROGRAMA A assignação dos nomes e comentários ás varias malhas e blocos do projecto, é de extrema importância.

62 EXEMPLO 1º Passo – Comentar a secção
Tratamento de dados EXEMPLO 1º Passo – Comentar a secção

63 2º Passo – Comentar as várias malhas da secção
Tratamento de dados 2º Passo – Comentar as várias malhas da secção

64 3º Passo – Habilitar os comentários das secções
Tratamento de dados 3º Passo – Habilitar os comentários das secções

65 Iniciação à programação de autómatos
EXERCÍCIO 19 Descrição do pretendido: Embora os programas em causa tenham poucas secções, a título de exercício comentar as secções do programa anterior.

66 FUNÇÕES DE EXECUÇÃO DIFERENCIAL (@)
OBJECTIVOS Conhecer alternativas à aplicação das funções DIFU e DIFD

67 Funções de execução diferencial (@)
Há alternativa que permite dotar uma instrução da capacidade de ser executada, só quando houver uma transição de OFF para ON na condição de execução. Essa alternativa consiste em adicionar o à instrução. SOLUÇÕES EQUIVALENTES

68 Iniciação à programação de autómatos
EXERCÍCIO 20 Descrição do pretendido: Aplicar às instruções do exercício anterior este conceito.

69 OBJECTIVOS Análise de funções para a conversão de dados BIN/BCD

70 INSTRUÇÕES PARA CONVERSÃO DE DADOS
Existem instruções que permitem converter valores entre as duas bases numéricas, já enunciadas. É o caso das instruções: BIN(23) BCD(24)

71 TRATAMENTO DE BLOCOS DE DADOS
OBJECTIVOS Conhecimento de algumas funções aplicadas no tratamento de blocos de dados

72 Tratamento de blocos de dados
INSTRUÇÃO BSET(71) Esta instrução permite copiar o conteúdo de um canal, ou constante, para um grupo de canais especificados.

73 Tratamento de blocos de dados
INSTRUÇÃO XFER(70) Transfere dados de um dado grupo de canais consecutivos, para outro grupo de canais igualmente consecutivos.

74 Tratamento de blocos de dados
INSTRUÇÃO XCHG(73) Sempre que a condição que antecede a instrução é verdadeira, XCHG(73) troca o conteúdo dos dois canais operandos desta instrução.

75 Iniciação à programação de autómatos
EXERCÍCIO 21 Descrição do pretendido: Pretende-se agora a cada ordem de produção (On) encher 2 depósitos consecutivos, o primeiro com o Produto A e o segundo com o Produto B. O fim de descarga de cada produto é indicado por um impulso fornecido ao PLC pelo respectivo equipamento EV1 e EV2 Ao fim de encher o 2 e último deposito, o tapete deve avançar e parar logo que o depósito abandone a zona de enchimento (deixar de actuar no sensor). À ordem de paragem (Off) o sistema deve desligar todas as saídas, e ficar pronto para novo ciclo.

76 PROGRAMAÇÃO DE PROCESSOS SEQUENCIAIS
OBJECTIVOS Obter conhecimentos básicos sobre o método de representação gráfica – GRAFCET Métodos de aplicação de processos estruturados em grafcet, na programação de autómatos

77 Programação de processos sequenciais
INTRODUÇÃO São inúmeras as situações de comando onde as tarefas a executar se repetem sempre na mesma sequência ou em sequências pré-determinadas. Estamos perante sistemas de carácter sequencial A experiência ensinou-nos que o objectivo de qualquer projectista é colocar em prática a sua ideia através de um modelo físico, que tecnicamente seja perfeito, economicamente acessível e rentável Assim, ele terá de conhecer vários MÉTODOS ou vias que lhe permitam atingir os seus objectivos

78 Programação de processos sequenciais
INSTRUMENTOS DE REPRESENTAÇÃO Desde a concepção, o sistema a desenvolver deve ser suportado por uma ferramenta que permita o diálogo indispensável entre o projectista/técnico e o futuro utilizador A linguagem corrente, revela-se assim bastante mal adaptada à descrição de sistemas sequências. Deste modo facilmente compreendemos a necessidade de dispor de um método de representação desprovido de ambiguidades, fácil de compreender e utilizar. ENTRE AS VÁRIAS FERRAMENTAS EXISTENTES PARA O EFEITO, VAMOS APROFUNDAR NESTE CAPITULO O GRAFCET

79 Programação de processos sequenciais
GRAFCET Representação gráfica O GRAFCET representa graficamente o funcionamento de um automatismo recorrendo a um conjunto de: ETAPAS, ás quais estão associadas ACÇÕES TRANSIÇÕES, ás quais estão associadas RECEPTIVIDADES LIGAÇÕES, ligação das etapas ás transições e vice versa

80 Programação de processos sequenciais
GRAFCET Especificações ETAPAS/ACÇÕES ACÇÕES ETAPAS 12 MT1 MT3 ETAPA INICIAL ETAPAS ACTIVAS 12 MT1 LIGAÇÕES ORIENTADAS 3 5 4 LIGAÇÕES ORIENTADAS TRANSIÇÕES 3 5 4 RECEPTIVIDADES ASSOCIADAS ÁS ACÇÕES

81 Programação de processos sequenciais
TIPOS DE PROCESSAMENTO Pode-se ter num sistema basicamente três tipos de processamentos, numa representação em GRAFCET Processamento linear Processamento paralelo Processamento alternativo

82 Programação de processos sequenciais
PROCESSAMENTO LINEAR Os estados do processo estão dispostos em linha. Independentemente das condições do processo, este consta de uma sucessão de passos que se executam sempre, e na mesma sequência. Exemplo 1 Exemplo 2 Exemplo 3 Sequência não transposta Sequência não transposta Sequência transposta

83 Programação de processos sequenciais
PROCESSAMENTO PARALELO Em determinado momento do processo, a sequência pode tomar dois ou mais caminhos que se vão executar em paralelo Exemplo 1 Exemplo 2 Exemplo 3 Sequência não transposta Sequência não transposta Sequência transposta

84 Programação de processos sequenciais
PROCESSAMENTO ALTERNATIVO Surgem muito frequentemente situações de selecção exclusiva, de uma só sequência Receptividades prioritárias Receptividades exclusivas

85 Programação de processos sequenciais
SALTOS ENTRE ETAPAS Podem ser feitos saltos entre etapas não consecutivas

86 Iniciação à programação de autómatos
EXERCÍCIO 22 Descrição do pretendido: Resolver o exercício anterior recorrendo à sua representação em GRAFCET.

87 Programação de processos sequenciais
CONVERSÃO GRAFCET LINGUAGEM DE CONTACTOS Vão ser aqui abordados 3 métodos para levar a cabo a programação de processos sequenciais, a partir do GRAFCET Com funções de encravamento: KEEP(11) e SET RESET Com a função: SFT(10) Com as funções especiais: STEP(08) e SNXT(09)

88 Tratamento de dados EXEMPLO – Utilizando as funções SET e RESET

89 Tratamento de dados EXEMPLO – Utilizando a função KEEP(11)

90 EXEMPLO – Utilizando a função SFT(10)
Tratamento de dados EXEMPLO – Utilizando a função SFT(10) POR ÚLTIMO

91 Tratamento de dados EXEMPLO – Utilizando as funções STEP(08) e SNXT(09)

92 Iniciação à programação de autómatos
EXERCÍCIO 23 Descrição do pretendido: A partir da representação anterior em GRAFCET, fazer a sua passagem para linguagem de contactos. Passar o programa para o PLC Testar o programa

93 Iniciação à programação de autómatos
EXERCÍCIO 24 Descrição do pretendido: Numa dada fase do processo é necessário fazer um teste térmico ao produto. Elaborar um programa de acordo com o seguinte funcionamento: À ordem de inicio do teste (On), o sistema deve iniciar o aquecimento e registar a evolução da temperatura do produto de 1 em 1 segundo. Ao fim de 10 registos (10 seg), o sistema deve parar. Se durante o evoluir do processo for dada ordem de paragem (Off), o sistema deve parar. O sensor de temperatura regista a temperatura actual no endereço (D0100). O historial dos valores da temperatura devem ser armazenados nos endereços (D0020 a D0029). Sempre que é dada ordem para um novo teste, todos os valores registados referentes ao teste anterior, devem ser apagados.

94 ENDEREÇAMENTO INDIRECTO
OBJECTIVOS Compreensão do endereçamento indirecto e sua aplicação prática

95 Endereçamento indirecto
APLICAÇÃO Esta facilidade pode ser encontrada em alguns autómatos O uso do endereçamento indirecto permite dotar os programas de uma grande flexibilidade e reduzir a extensão dos mesmos. Exemplo 2 - O conteúdo da DM100, contém o endereço de um outro DM, encontrando-se neste último o valor a ser considerado pela instrução. Exemplo 1 - Se a DM100 contém o valor 350, então o CH10 tomará esse valor

96 Iniciação à programação de autómatos
EXERCÍCIO 25 Descrição do pretendido: Numa dada fase do processo é necessário fazer um teste térmico ao produto. Elaborar um programa de acordo com o seguinte funcionamento: À ordem de inicio do teste (On), o sistema deve iniciar o aquecimento e registar a evolução da temperatura do produto de 1 em 1 segundo. Ao fim de 10 registos (10 seg), o sistema deve parar. Se durante o evoluir do processo for dada ordem de paragem (Off), o sistema deve parar. O sensor de temperatura regista a temperatura actual no endereço (D0100). O historial dos valores da temperatura devem ser armazenados nos endereços (D0020 a D0029). Sempre que é dada ordem para um novo teste, todos os valores registados referentes ao teste anterior, devem ser apagados.

97 Fim Muito obrigado...


Carregar ppt "2º Dia - continuação João Mealhas CS-PLC1 Curso Básico"

Apresentações semelhantes


Anúncios Google