View
124
Download
4
Category
Preview:
Citation preview
CS-PLC1
Curso BásicoAutómatos Programáveis
APRESENTAÇÃO
O formador:
João Mealhas
2º Dia - continuação
Temporizadores e contadores
CX-PROGRAMMER - EDITOR DE SÍMBOLOSAté 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:
1. Introdução do endereço pretendido (ex: 000.00)
2. Comentário associado (ex: ON)
ENDEREÇO
COMENTÁRIODesta forma a nossa variável fica orientada ao comentário, e perco algumas funcionalidades, como seja a chamada do endereço pelo seu nome.
Temporizadores e contadores
CX-PROGRAMMER - EDITOR DE SÍMBOLOSNo 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
Temporizadores e contadores
INTRODUÇÃO DIRECTA DO ENDEREÇO
Temporizadores e contadores
INTRODUÇÃO DIRECTA DO NOME
Temporizadores e contadores
UTILIZANDO O EDITOR DE SÍMBOLOS
Sempre que possível esta deve ser a forma utilizada.Sempre que possível esta deve ser a forma utilizada.
Num fase prévia ao desenvolvimento do programa propriamente dito, elaborar uma lista com 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 as variáveis que nos parecem necessárias ao programa, e fazer a respectiva atribuição de endereços, nomes e comentários. endereços, nomes e comentários.
DIRECTAMENTE ATRAVÉS DIRECTAMENTE ATRAVÉS DO CX-PROGRAMMERDO CX-PROGRAMMER
AUXILIADO POR OUTROS AUXILIADO POR OUTROS SOFTWARES SOFTWARES
Temporizadores e contadores
ASSIGNAÇÃO AUTOMÁTICA
O CX-Programmer pode assignar automaticamente endereços aos contactos/nomesO CX-Programmer pode assignar automaticamente endereços aos contactos/nomes
Depois de ter habilitado a Depois de ter habilitado a opção “opção “Automatic AllocationAutomatic Allocation” ” para o PLC em causa, cada para o PLC em causa, cada contacto que for criado contacto que for criado deixando o seu endereço em deixando o seu endereço em branco, (é necessário colocar branco, (é necessário colocar o nome do contacto), terá o nome do contacto), terá assignado um endereço que assignado um endereço que será marcado como “Auto” será marcado como “Auto” para indicar que esse para indicar que esse endereço não foi atribuído endereço não foi atribuído pelo programador.pelo programador.
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 99 EXERCÍCIOEXERCÍCIO 99
Descrição do pretendido: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.
Descrição do pretendido: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.
MT
Sensor
PEÇAS REJEITADAS
PEÇAS OK
On
Off
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_INSP BOOL 0.02 SENSOR DA ZONA DE INSPECÇÃOM_TAP BOOL 1.00 MOTOR TAPETETIM_INSP BOOL T0000 TEMPO MÁX PARA A INSPECÇÃO
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.
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 1010 EXERCÍCIOEXERCÍCIO 1010
Descrição do pretendido: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.
Descrição do pretendido: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.
Manual deManual deExercíciosExercícios
pág. 12pág. 12
Manual deManual deExercíciosExercícios
pág. 12pág. 12
MT
Sensor
PEÇAS REJEITADAS
PEÇAS OK
On
Off
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 Um pormenor importante de se referir, é que ao contrário se referir, é que ao contrário dos temporizadores, os dos temporizadores, os contadores retêm o seu contadores retêm o seu conteúdo, mesmo após a falha conteúdo, mesmo após a falha de alimentação do autómato.de alimentação do autómato.
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
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 1111EXERCÍCIOEXERCÍCIO 1111
Descrição do pretendido: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.
Descrição do pretendido: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.
MT
Sensor On
Off
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_CONT BOOL 0.04 SENSOR DA SAÍDA - CONTA NUMERO DE PEÇASM_TAP BOOL 1.00 MOTOR TAPETECNT_PEÇAS BOOL C0001 CONTA PEÇAS À SAÍDA
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.
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 1212EXERCÍCIOEXERCÍCIO 1212
Descrição do pretendido: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.
Descrição do pretendido: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.
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_INSP BOOL 0.02 SENSOR DA ZONA DE INSPECÇÃOS_CIL_FR BOOL 0.03 CILINDRO À FRENTES_CONT BOOL 0.04 SENSOR DA SAÍDA - CONTA NUMERO DE PEÇASM_TAP BOOL 1.00 MOTOR TAPETECIL_REJ BOOL 1.01 CILINDRO REJEIÇÃO DE PEÇASCNT_PEÇAS BOOL C0001 CONTA PEÇAS À SAÍDATIM_INSP BOOL T0000 TEMPO MÁX PARA A INSPECÇÃODU_SINSP BOOL W0.00 DIFU DO SENSOR DA ZONA DE INSPECÇÃODD_SINSP BOOL W0.01 DIFD DO SENSOR DA ZONA DE INSPECÇÃO
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_CONT BOOL 0.04 SENSOR DA SAÍDA - CONTA NUMERO DE PEÇASM_TAP BOOL 1.00 MOTOR TAPETECNT_PEÇAS BOOL C0001 CONTA PEÇAS À SAÍDA
AntesAntesAntesAntes
DepoisDepoisDepoisDepois
Temporizadores e contadores
VARIÁVEIS GLOBAIS E LOCAIS
Dentro do editor de Dentro do editor de variáveis globaisvariáveis globais declaram-se as variáveis que declaram-se as variáveis que serão comuns a qualquer das tarefas que se definam para o projecto.serão comuns a qualquer das tarefas que se definam para o projecto.
As variáveis criadas nos editores de As variáveis criadas nos editores de variáveis locaisvariáveis locais só serão visíveis só serão visíveis na tarefa (programa) onde tenham sido criadas e não nas restantes. na tarefa (programa) onde tenham sido criadas e não nas restantes.
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 1313EXERCÍCIOEXERCÍCIO 1313
Descrição do pretendido: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 000.04 para 000.02Contador: De C0001 para C0000
Descrição do pretendido: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 000.04 para 000.02Contador: De C0001 para C0000
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_CONT BOOL 0.02 SENSOR DA SAÍDA - CONTA NUMERO DE PEÇASM_TAP BOOL 1.00 MOTOR TAPETECNT_PEÇAS BOOL C0000 CONTA PEÇAS À SAÍDA
Sistemas numéricos
SISTEMAS NUMÉRICOS
O sistema mais comum de representação é sem duvida o O sistema mais comum de representação é sem duvida o sistema sistema decimaldecimal que utiliza os símbolos de que utiliza os símbolos de "0" a "9""0" a "9". .
Em certas aplicações (máquinas, comunicações, etc.), recorre-se Em certas aplicações (máquinas, comunicações, etc.), recorre-se frequentemente a outros sistemas de numeração, por forma a optimizar frequentemente a outros sistemas de numeração, por forma a optimizar a sua exploração tais como sistemas:a sua exploração tais como sistemas:
•BinárioBinário•BCD ( binário codificado decimal )BCD ( binário codificado decimal )•HexadecimalHexadecimal•GrayGray•Ascii Ascii
Sistemas numéricos
SISTEMA BINÁRIO
Num circuito eléctrico, facilmente podemos definir dois estados: ligado/desligado ou com 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 tensão/sem tensão. Podem-se então usar estes dois estados como base de um sistema numérico; um numérico; um sistema bináriosistema binário.. Para simplificar a representação dos Para simplificar a representação dos estados ligado e desligadoestados ligado e desligado usam-se os símbolos usam-se os símbolos 11 e e 00 respectivamente.respectivamente. Podemos codificar valores numéricos numa base binária, usando a mecânica que já foi Podemos codificar valores numéricos numa base binária, usando a mecânica que já foi anteriormente explicada para o sistema decimal. anteriormente explicada para o sistema decimal.
À frente da À frente da representação representação binária, colocou-se binária, colocou-se o valor decimal o valor decimal correspondente. correspondente.
Sistemas numéricos
SISTEMA BINÁRIO
Fórmula geral de conversão de um número binário para decimalFórmula geral de conversão de um número binário para decimal
0
01
11N
1NN
N 2Z2Z....2Z2ZDECIMALºN
1220202121 0123
1 1 0 0 (Binário) = ???? (Décimal)
12 0
2
6 2 0
3
1 1 0 0
2
1 1
Procedimento para a conversão do numero 1100 em binário, para o seu equivalente em decimal.
Procedimento para a conversão do numero 12 em decimal, para o seu equivalente em binário.
Sistemas numéricos
SISTEMA BCD
Para que a conversão de um valor binário em decimal seja mais fácil, existe um sistema de 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 codificação que usa quatro bits para codificar valores de 0 a 9, desaproveitando as restantes 6 combinações possíveis.6 combinações possíveis.
Esta forma de codificar valores numéricos em binário chama-se BCD. Esta forma de codificar valores numéricos em binário chama-se BCD.
1 2 (Décimal) = ???? (BCD)
0001 0010 (BCD)
Procedimento para a representação do numero 12 em BCD
Para codificar o valor decimal 947, temos a seguinte codificação BCD:
Sistemas numéricos
SISTEMA HEXADECIMAL
Este sistema utiliza como símbolos, os números de Este sistema utiliza como símbolos, os números de 00 a a 99 e as letras de e as letras de ''AA' a ' ' a ' FF'. '.
4 3 8 2 1 61 1 8 2 7 ´ 3 1 6 0 6 2 1 1 3 1 7 1 6 1 4 1 1 1
1 1 1 E R E P R E S E N T A Ç Ã O E M H E X A D E C I M A L
Procedimento para a conversão do numero 4382 em decimal para hexadecimal.
Procedimento para a conversão do numero 111E em hexadecimal para decimal
0123 16141611611614382
TRATAMENTO DE DADOS
OBJECTIVOSAnálise e aplicação de algumas intrusões dedicadas ao tratamento de dadosTrabalhar com o editor de áreas de memória do cx-programmer
OBJECTIVOSAnálise e aplicação de algumas intrusões dedicadas ao tratamento de dadosTrabalhar com o editor de áreas de memória do cx-programmer
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
Se ASe A>>B então o relé 255.05 vai a ON.B então o relé 255.05 vai a ON.Se ASe A==B então o relé 255.06 vai a ON.B então o relé 255.06 vai a ON.Se ASe A<<B então o relé 255.07 vai a ON. B então o relé 255.07 vai a ON.
Nas novas famílias de autómatos Nas novas famílias de autómatos CS e CJ podem utilizar-se funções CS e CJ podem utilizar-se funções de comparação directas:de comparação directas:
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 1414EXERCÍCIOEXERCÍCIO 1414
Descrição do pretendido: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.
Descrição do pretendido: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.
MT
Sensor On
Off
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_CONT BOOL 0.02 SENSOR DA SAÍDA - CONTA NUMERO DE PEÇASM_TAP BOOL 1.00 MOTOR TAPETEL_AMARELA BOOL 1.01 LUZ AMARELA DA TORREL_VERMELHA BOOL 1.02 LUZ VERMELHA DA TORRECNT_PEÇAS BOOL C0000 CONTA PEÇAS À SAÍDA
Tratamento de dados
INSTRUÇÃO MOV(21) 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
Tratamento de dados
INSTRUÇÃO MOVN(22) 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
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 1515EXERCÍCIOEXERCÍCIO 1515
Descrição do pretendido: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
Descrição do pretendido: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
MT
Sensor On
Off
FAB 1
FAB 2 FAB
3
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_CONT BOOL 0.02 SENSOR DA SAÍDA - CONTA NUMERO DE PEÇASORD_FAB1 BOOL 0.03 ORDEM DE FABRICO 1 - 3 PEÇASORD_FAB2 BOOL 0.04 ORDEM DE FABRICO 2 - 5 PEÇASORD_FAB3 BOOL 0.05 ORDEM DE FABRICO 3 - 10 PEÇASM_TAP BOOL 1.00 MOTOR TAPETECNT_PEÇAS BOOL C0000 CONTA PEÇAS À SAÍDANUM_PEÇAS CHANNEL D0 NÚMERO DE PEÇAS A FAZER
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.
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).
Tratamento de dados
INSTRUÇÃO SFT(10)
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 A word A deverá ter um endereço menor ou igual à word B, e as duas devem pertencer à mesma área de memóriadevem pertencer à mesma área de memória
Tratamento de dados
EXEMPLO DE APLICAÇÃO1º 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
Tratamento de dados
2º Passo – Abrir a janela de visualizaçãoEsta janela “Toggle Watch Window”, permite monitorizar o estado dos endereços especificados, bem como a alteração do seu estado
Tratamento de dados
3º Passo – Especificar o/os endereço/s a trabalhar
4º e 5º Passo – Alteração dos valores
EDIÇÃO EMEDIÇÃO EM BINÁRIOBINÁRIO
Tratamento de dados
6º Passo – Monitorização do funcionamento da função SFT(10)
FIMFIMEXEMPLOEXEMPLO
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 1616EXERCÍCIOEXERCÍCIO 1616
Descrição do pretendido: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.
Descrição do pretendido: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.
Descer
Off
1 2 3 4 5
NOME ENDEREÇO DESCRIÇÃOORD_FUNC 0.00 ORDEM DE FUNCIONAMENTOOFF 0.01 DESLIGAR SISTEMACIL_1 2.00 CILINDRO PRENSA 1CIL_2 2.01 CILINDRO PRENSA 2CIL_3 2.02 CILINDRO PRENSA 3CIL_4 2.03 CILINDRO PRENSA 4CIL_5 2.04 CILINDRO PRENSA 5AUX_SAÍDAS 200 CANAL UTILIZADO COMO AUXILIAR NA FUNÇÃO SHIFTAUX_OUT1 200.01 AUXILIAR DA SAÍDA 1AUX_OUT2 200.02 AUXILIAR DA SAÍDA 2AUX_OUT3 200.03 AUXILIAR DA SAÍDA 3AUX_OUT4 200.04 AUXILIAR DA SAÍDA 4AUX_OUT5 200.05 AUXILIAR DA SAÍDA 5FIM_CILIN 200.06 FIM DO CICLO DE ACTUAÇÃO DOS CILINDROS
Programação de processos sequenciais
GRAFCET Representação gráfica
O GRAFCET representa graficamente o funcionamento de um O GRAFCET representa graficamente o funcionamento de um automatismo recorrendo a um conjunto de:automatismo recorrendo a um conjunto de:
ETAPASETAPAS, ás quais estão , ás quais estão associadas ACÇÕESassociadas ACÇÕES
TRANSIÇÕESTRANSIÇÕES, ás quais , ás quais estão associadas estão associadas RECEPTIVIDADESRECEPTIVIDADES
LIGAÇÕESLIGAÇÕES, ligação das , ligação das etapas ás transições e etapas ás transições e vice versavice versa
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 2121EXERCÍCIOEXERCÍCIO 2121
Descrição do pretendido: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.
Descrição do pretendido: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.
On
Off
MT
EV1 EV2
ProdA
ProdB
Sensor
AFG 1 AFG 2
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_ENCHE BOOL 0.02 SENSOR DE DEPOSITO NA ZONA DE ENCHIMENTOFIM_DESC1 BOOL 0.03 FEITA A DESCARGA DO PRODUTO 1FIM_DESC2 BOOL 0.04 FEITA A DESCARGA DO PRODUTO 2M_TAP BOOL 1.00 MOTOR TAPETEEV1 BOOL 1.01 ELÉCTROVÁLVULA 1EV2 BOOL 1.02 ELÉCTROVÁLVULA 2PRIM_DESC BOOL W200.00 (AUTO) INDICA QUE ESTÀ NA FASE DA PRIMEIRA DESCARGA
Iniciação à programação de autómatos
Tratamento de dadosEXEMPLO – Utilizando a função SFT(10)
Tratamento de dadosEXEMPLO – Utilizando a função SFT(10)
INSTRUÇÕES DE CÁLCULO ARITMÉTICO
OBJECTIVOSUtilização das funções elementares utilizadas no calculo aritmético.Tipo de variáveis do cx-programmerComo atribuir comentários ao programa, utilizando o cx-programmer
OBJECTIVOSUtilização das funções elementares utilizadas no calculo aritmético.Tipo de variáveis do cx-programmerComo atribuir comentários ao programa, utilizando o cx-programmer
Instruções de cálculo aritmético
CX-PROGRAMMER - TIPOS DE VARIÁVEISAté agora não se tinha dado grande importância à natureza do tipo de variável utilizada, pois não era factor essencialNesta fase, tratamento de dados, e em concreto instruções aritméticas, é importante este assunto
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 Vamos neste capítulo analisar o uso das operações aritméticas básicas em BCD e outras funções associadasem BCD e outras funções associadas
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 Nas novas famílias de autómatos CS e CJ utilizar:CS e CJ utilizar:
Instruções de cálculo aritmético
EXEMPLO DE APLICAÇÃO – SOMA BCDPág. 158Pág. 158
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 Analisemos o exemplo que se exemplo que se segue... segue...
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 255.04
O RELÉ DE CARRY uma vez a ON, só passa a OFF se for executada a função CLC(41).
Instruções de cálculo aritmético
RELÉ DE CARRY
Quando se trabalha com números positivos, Quando se trabalha com números positivos, é boa norma fazer executar a função é boa norma fazer executar a função CLC(41)CLC(41) antes de executar uma função aritmética antes de executar uma função aritmética
Desta forma limpa-se o relé de CARRY (é colocado a OFF) que poderia ter sido 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 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 estivesse activo falsearia o resultado da operação a executar
Neste contexto o programa Neste contexto o programa do exemplo anterior poderia do exemplo anterior poderia ser melhorado desta formaser melhorado desta forma
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
No caso da operação de subtracção, o resultado nunca excede quatro dígitosNo 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 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 que B ). Esta ocorrência é assinalada pelo mesmo relé de carry atrás mencionado. mencionado.
Nas novas famílias de Nas novas famílias de autómatos CS e CJ autómatos CS e CJ utilizar:utilizar:
Instruções de cálculo aritmético
EXEMPLO DE APLICAÇÃO – SUBTRACÇÃO EM BCD
Como obter o valor absoluto da subtracção ?
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)
Sempre que a condição lógica que antecede a função está a ON, o valor em A é 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 multiplicado pelo valor contido em B e o resultado da operação é colocado no canal especificado em canal especificado em C e no imediatamente seguinte C+1C e no imediatamente seguinte C+1
Os quatro dígitos menos significativos do resultado são colocados no canal 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 especificado em C e os quatro restantes dígitos mais significativos são colocados no canal C+1colocados no canal C+1
Nas novas famílias de Nas novas famílias de autómatos CS e CJ autómatos CS e CJ utilizar:utilizar:
Instruções de cálculo aritmético
EXEMPLO DE APLICAÇÃO – MULTIPLICAÇÃO EM BCD
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
Sempre que a condição lógica que antecede a função está a ON, o valor em A é 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 dividido pelo valor contido em B e o resultado da operação é colocado no canal especificado em C e no imediatamente seguinteespecificado em C e no imediatamente seguinte
O quociente é colocado no canal especificado em C e o resto é colocado no canal O quociente é colocado no canal especificado em C e o resto é colocado no canal C+1C+1
Nas novas famílias de Nas novas famílias de autómatos CS e CJ autómatos CS e CJ utilizar:utilizar:
Instruções de cálculo aritmético
EXEMPLO DE APLICAÇÃO – DIVISÃO EM BCD
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 Nas operações aritméticas apresentadas anteriormente, apenas é possível trabalhar com operandos de 4 dígitos (uma word) em BCD 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 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áriofazer temos de recorrer à codificação em Binário
Em Em BinárioBinário é possível codificar numa word um valor que pode ir até é possível codificar numa word um valor que pode ir até 65535, contra 9999 em 65535, contra 9999 em BCDBCD
Instruções aritméticas básicas para operar com valores binários:Instruções aritméticas básicas para operar com valores binários:ADB(ADB(5050)) - - somasoma binária bináriaSBB(SBB(5151)) - - subtracçãosubtracção binária bináriaMLB(MLB(5252)) - - multiplicaçãomultiplicação binária bináriaDVB(DVB(5353)) - - divisãodivisão binária binária
Instruções de cálculo aritmético
EXEMPLO DE APLICAÇÃO – OPERAÇÃO ARITMÉTICA EM BINÁRIO
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 1717EXERCÍCIOEXERCÍCIO 1717
Descrição do pretendido: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
Descrição do pretendido: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
MT
Sensor
On
Off
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_CONT BOOL 0.02 SENSOR DA SAÍDA - CONTA NUMERO DE PEÇASM_TAP BOOL 1.00 MOTOR TAPETECNT_PEÇAS BOOL C0000 CONTA PEÇAS À SAÍDAN_PALET CHANNEL D0 NUMERO DE PALETES A FAZERN_CAIXAS CHANNEL D1 NUMERO DE CAIXAS A TRANSPORTARCAIXAS_FEITAS CHANNEL D2 NUMERO DE CAIXAS JÁ FEITAS
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.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 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. 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 Tal como acontecia com a instrução INC(38), a instrução DEC(39) deriva de um caso particular da subtracção em BCD.caso particular da subtracção em BCD.
Sempre que a condição de execução está activa, esta instrução faz decrementar 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. uma unidade ao conteúdo do canal especificado em A, em cada scan.
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 1818EXERCÍCIOEXERCÍCIO 1818
Descrição do pretendido: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.
Descrição do pretendido: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.
MT
Sensor OUT
On
Off
Sensor IN
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_CNT_OUT BOOL 0.02 SENSOR DE DETECÇÃO DE SAÍDAS_CNT_IN BOOL 0.03 SENSOR DE DETECÇÃO DE ENTRADAM_TAP BOOL 1.00 MOTOR TAPETEN_PEÇAS CHANNEL D0 NUMERO DE PEÇAS NO TAPETE
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.
Tratamento de dados
EXEMPLO 1º Passo – Comentar a secção
Tratamento de dados
2º Passo – Comentar as várias malhas da secção
Tratamento de dados
3º Passo – Habilitar os comentários das secções
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 1919EXERCÍCIOEXERCÍCIO 1919
Descrição do pretendido: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.
Descrição do pretendido: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.
FUNÇÕES DE EXECUÇÃO DIFERENCIAL (@)
OBJECTIVOSConhecer alternativas à aplicação das funções DIFU e DIFD
OBJECTIVOSConhecer alternativas à aplicação das funções DIFU e DIFD
Funções de execução diferencial (@)
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 símbolo @ à instrução.
SOLUÇÕESSOLUÇÕESEQUIVALENTESEQUIVALENTES
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 2020EXERCÍCIOEXERCÍCIO 2020
Descrição do pretendido:Descrição do pretendido:
•Aplicar às instruções do exercício anterior este conceito.
Descrição do pretendido:Descrição do pretendido:
•Aplicar às instruções do exercício anterior este conceito.
MT
Sensor OUT
On
Off
Sensor IN
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_CNT_OUT BOOL 0.02 SENSOR DE DETECÇÃO DE SAÍDAS_CNT_IN BOOL 0.03 SENSOR DE DETECÇÃO DE ENTRADAM_TAP BOOL 1.00 MOTOR TAPETEN_PEÇAS CHANNEL D0 NUMERO DE PEÇAS NO TAPETE
CONVERSÃO DE DADOS
OBJECTIVOSAnálise de funções para a conversão de dados BIN/BCD
OBJECTIVOSAnálise de funções para a conversão de dados BIN/BCD
Conversão de dados
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)
TRATAMENTO DE BLOCOS DE DADOS
OBJECTIVOSConhecimento de algumas funções aplicadas no tratamento de blocos de dados
OBJECTIVOSConhecimento de algumas funções aplicadas no tratamento de blocos de dados
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.
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.
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.
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 2121EXERCÍCIOEXERCÍCIO 2121
Descrição do pretendido: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.
Descrição do pretendido: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.
On
Off
MT
EV1 EV2
ProdA
ProdB
Sensor
AFG 1 AFG 2
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_ENCHE BOOL 0.02 SENSOR DE DEPOSITO NA ZONA DE ENCHIMENTOFIM_DESC1 BOOL 0.03 FEITA A DESCARGA DO PRODUTO 1FIM_DESC2 BOOL 0.04 FEITA A DESCARGA DO PRODUTO 2M_TAP BOOL 1.00 MOTOR TAPETEEV1 BOOL 1.01 ELÉCTROVÁLVULA 1EV2 BOOL 1.02 ELÉCTROVÁLVULA 2PRIM_DESC BOOL W200.00 (AUTO) INDICA QUE ESTÀ NA FASE DA PRIMEIRA DESCARGA
PROGRAMAÇÃO DE PROCESSOS SEQUENCIAIS
OBJECTIVOSObter conhecimentos básicos sobre o método de representação gráfica – GRAFCETMétodos de aplicação de processos estruturados em grafcet, na programação de autómatos
OBJECTIVOSObter conhecimentos básicos sobre o método de representação gráfica – GRAFCETMétodos de aplicação de processos estruturados em grafcet, na programação de autómatos
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 Estamos perante sistemas de carácter sequencialde 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
Programação de processos sequenciais
INSTRUMENTOS DE REPRESENTAÇÃODesde 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 A linguagem correntelinguagem corrente, revela-se assim , revela-se assim bastante mal adaptadabastante mal adaptada à à descrição de sistemas sequênciasdescrição de sistemas sequências..
Deste modo facilmente compreendemos a Deste modo facilmente compreendemos a necessidadenecessidade de dispor de dispor de um de um método de representaçãométodo de representação desprovido de ambiguidades, fácil desprovido de ambiguidades, fácil de compreender e utilizar.de compreender e utilizar.
ENTRE AS VÁRIAS FERRAMENTAS EXISTENTES PARA O ENTRE AS VÁRIAS FERRAMENTAS EXISTENTES PARA O EFEITO, VAMOS APROFUNDAR NESTE CAPITULO O EFEITO, VAMOS APROFUNDAR NESTE CAPITULO O GRAFCETGRAFCET
Programação de processos sequenciais
GRAFCET Representação gráfica
O GRAFCET representa graficamente o funcionamento de um O GRAFCET representa graficamente o funcionamento de um automatismo recorrendo a um conjunto de:automatismo recorrendo a um conjunto de:
ETAPASETAPAS, ás quais estão , ás quais estão associadas ACÇÕESassociadas ACÇÕES
TRANSIÇÕESTRANSIÇÕES, ás quais , ás quais estão associadas estão associadas RECEPTIVIDADESRECEPTIVIDADES
LIGAÇÕESLIGAÇÕES, ligação das , ligação das etapas ás transições e etapas ás transições e vice versavice versa
Programação de processos sequenciais
GRAFCET Especificações
ETAPAS/ACÇÕES
ACÇÕES
ETAPAS
12
MT1
MT3
ETAPAS ACTIVAS
12
MT1
MT1
ETAPA INICIAL0
TRANSIÇÕES 3
54
TRANSIÇÕES
RECEPTIVIDADES ASSOCIADAS ÁS ACÇÕES
LIGAÇÕESORIENTADAS
3
54
LIGAÇÕES ORIENTADAS
Programação de processos sequenciais
TIPOS DE PROCESSAMENTOPode-se ter num sistema basicamente três tipos de processamentos, numa representação em GRAFCET
Processamento Processamento linearlinear
Processamento Processamento paraleloparalelo
Processamento Processamento alternativoalternativo
Programação de processos sequenciais
PROCESSAMENTO LINEAROs 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.
ExemploExemplo 1 1 ExemploExemplo 2 2 ExemploExemplo 3 3
SequênciaSequêncianãonão
transpostatransposta
SequênciaSequêncianãonão
transpostatransposta
SequênciaSequênciatranspostatransposta
Programação de processos sequenciais
PROCESSAMENTO PARALELOEm determinado momento do processo, a sequência pode tomar dois ou mais caminhos que se vão executar em paralelo
SequênciaSequêncianãonão
transpostatransposta
SequênciaSequêncianãonão
transpostatransposta
SequênciaSequênciatranspostatransposta
ExemploExemplo 1 1 ExemploExemplo 2 2 ExemploExemplo 3 3
Programação de processos sequenciais
PROCESSAMENTO ALTERNATIVO
Surgem muito frequentemente situações de selecção exclusiva, de uma só sequência
Receptividades exclusivas Receptividades exclusivas Receptividades prioritárias Receptividades prioritárias
Programação de processos sequenciais
SALTOS ENTRE ETAPAS
Podem ser feitos saltos entre etapas não consecutivas
13
12
14
15
AVANÇO
RETROCESSO
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 2222EXERCÍCIOEXERCÍCIO 2222
Descrição do pretendido:Descrição do pretendido:
•Resolver o exercício anterior recorrendo à sua representação em GRAFCET.
Descrição do pretendido:Descrição do pretendido:
•Resolver o exercício anterior recorrendo à sua representação em GRAFCET.
On
Off
MT
EV1 EV2
ProdA
ProdB
Sensor
AFG 1 AFG 2
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_ENCHE BOOL 0.02 SENSOR DE DEPOSITO NA ZONA DE ENCHIMENTOFIM_DESC1 BOOL 0.03 FEITA A DESCARGA DO PRODUTO 1FIM_DESC2 BOOL 0.04 FEITA A DESCARGA DO PRODUTO 2M_TAP BOOL 1.00 MOTOR TAPETEEV1 BOOL 1.01 ELÉCTROVÁLVULA 1EV2 BOOL 1.02 ELÉCTROVÁLVULA 2PRIM_DESC BOOL W200.00 (AUTO) INDICA QUE ESTÀ NA FASE DA PRIMEIRA DESCARGA
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 Com funções de encravamento:encravamento: KEEP( KEEP(1111) ) e e SET RESETSET RESET
Com a função:Com a função: SFT(SFT(1010))
Com as funções especiais:Com as funções especiais:
STEP(STEP(0808)) e e SNXT(SNXT(0909))
Tratamento de dados
EXEMPLO – Utilizando as funções SET e RESET
Tratamento de dados
EXEMPLO – Utilizando a função KEEP(11)
Tratamento de dados
EXEMPLO – Utilizando a função SFT(10)
POR ÚLTIMO
Tratamento de dados
EXEMPLO – Utilizando as funções STEP(08) e SNXT(09)
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 2323EXERCÍCIOEXERCÍCIO 2323
Descrição do pretendido: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
Descrição do pretendido: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
On
Off
MT
EV1 EV2
ProdA
ProdB
Sensor
AFG 1 AFG 2
NOME TIPO ENDEREÇOS COMENTÁRIOSON BOOL 0.00 LIGAR SISTEMAOFF BOOL 0.01 DESLIGAR SISTEMAS_ENCHE BOOL 0.02 SENSOR DE DEPOSITO NA ZONA DE ENCHIMENTOFIM_DESC1 BOOL 0.03 FEITA A DESCARGA DO PRODUTO 1FIM_DESC2 BOOL 0.04 FEITA A DESCARGA DO PRODUTO 2M_TAP BOOL 1.00 MOTOR TAPETEEV1 BOOL 1.01 ELÉCTROVÁLVULA 1EV2 BOOL 1.02 ELÉCTROVÁLVULA 2PRIM_DESC BOOL W200.00 (AUTO) INDICA QUE ESTÀ NA FASE DA PRIMEIRA DESCARGA
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 2424EXERCÍCIOEXERCÍCIO 2424
Descrição do pretendido: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.
Descrição do pretendido: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.
AFG 1
Sensor
On
Off
Aquecimento
NOME ENDEREÇO DESCRIÇÃOON 0.00 LIGAR SISTEMAOFF 0.01 DESLIGAR SISTEMAAQUEC 1.00 EQUIPAMENTO DE AQUECIMENTOTEMPO C0000 CONTA OS 10 SEG DE AQUECIMENTOAPONTADOR D0 APONTADOR PARA A ÁREA DE MEM A ESCREVERINI_REG D20 AREA DE INICIO DOS REGISTOS DE TEMPERATURAFIM_REG D29 AREA DE FIM DOS REGISTOS DE TEMPERATURATEMP D100 REGISTO QUE CONTEM A TEMPERATURA ACTUALAUX_1SEG W200.00 (Auto) AUXILIAR DO BIT ESPECIAL DE 1 SEGUNDO
ENDEREÇAMENTO INDIRECTO
OBJECTIVOSCompreensão do endereçamento indirecto e sua aplicação prática
OBJECTIVOSCompreensão do endereçamento indirecto e sua aplicação prática
Endereçamento indirecto
APLICAÇÃOEsta 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 1Exemplo 1 - Se a DM100 - Se a DM100 contém o valor 350, então o contém o valor 350, então o CH10 tomará esse valor CH10 tomará esse valor
Exemplo 2Exemplo 2 - O - O conteúdo da DM100, conteúdo da DM100, contém o endereço contém o endereço de um outro DM, de um outro DM, encontrando-se encontrando-se neste último o valor neste último o valor a ser considerado a ser considerado pela instrução. pela instrução.
Iniciação à programação de autómatos
EXERCÍCIOEXERCÍCIO 2525EXERCÍCIOEXERCÍCIO 2525
Descrição do pretendido: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.
Descrição do pretendido: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.
AFG 1
Sensor
On
Off
Aquecimento
NOME ENDEREÇO DESCRIÇÃOON 0.00 LIGAR SISTEMAOFF 0.01 DESLIGAR SISTEMAAQUEC 1.00 EQUIPAMENTO DE AQUECIMENTOTEMPO C0000 CONTA OS 10 SEG DE AQUECIMENTOAPONTADOR D0 APONTADOR PARA A ÁREA DE MEM A ESCREVERINI_REG D20 AREA DE INICIO DOS REGISTOS DE TEMPERATURAFIM_REG D29 AREA DE FIM DOS REGISTOS DE TEMPERATURATEMP D100 REGISTO QUE CONTEM A TEMPERATURA ACTUALAUX_1SEG W200.00 (Auto) AUXILIAR DO BIT ESPECIAL DE 1 SEGUNDO
www.omron.ptwww.omron.pt
Muito obrigado...Fim
Info.pt@eu.omron.com
Recommended