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

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

Limitações das Máquinas de Estado & Grafcet

Apresentações semelhantes


Apresentação em tema: "Limitações das Máquinas de Estado & Grafcet"— Transcrição da apresentação:

1 Limitações das Máquinas de Estado & Grafcet
Armando Jorge Sousa – José António Faria – Professores Auxiliares da F.E.U.P. 27 de abril de 2017

2 Limitações dos diagramas de estado
As Máquinas de Estado e correspondentes Diagramas de Transição de Estado são um método de modelação do comportamento de sistemas a eventos discretos muito simples. No entanto, apresentam algumas limitações importantes quando se trata de modelar sistemas complexos.

3 Limitações dos diagramas de estado (originais)
Principais limitações: Não definem uma notação rigorosa e não ambígua Baseiam-se num relógio implícito (não Tempo Real) Não permitem representar comportamentos complexos envolvendo concorrência e sincronismo entre subsistemas. Não permitem representar o comportamento de sistemas hierárquicos.

4 Notação pouco rigorosa | Exemplo
Como representar nos diagramas de estado: as acções pontuais como o disparo de temporizadores ou o incremento de contadores? as acções condicionais (por exemplo, quando a porta está em movimento, a luz acende na condição de não haver luz natural)?

5 Sistemas complexos | Exemplo
Os exemplos tratados até aqui nas aulas, embora simples, já colocaram algumas questões típicas dos sistemas complexos, nomeadamente as questões de concorrência e sincronismo. No caso da porta automática, por exemplo, devem ser considerados dois subsistemas: um dos quais controla a iluminação o outro controla o movimento da porta Como representar nos diagramas de estado as interacções entre estes dois subsistemas (acender a luz quando a porta está em movimento)?

6 Exemplo | Mesa de trabalho
Assim, no projecto de sistemas complexos torna-se necessário recorrer a métodos de modelação mais potentes, isto é, com capacidade de representar comportamentos complexos mantendo os modelos simples de elaborar e, sobretudo, de interpretar. O GRAFCET é um desses métodos, desenvolvido especialmente para a representação de sistemas de controlo automáticos.

7 Exemplo | Mesa de trabalho
Antes de passar ao estudo do GRAFCET, vamos analisar um sistema onde as limitações dos diagramas de estado são bem patentes. Trata-se de uma mesa contendo 3 postos de trabalho automáticos: um posto para a entrada das peças um posto de furação um posto de controlo e de saída vídeo demonstração

8 Exemplo | Mesa de trabalho
O funcionamento do sistema é o seguinte: após ser executada um 1/3 de rotação da mesa, são iniciadas, em simultâneo, as operações nos 3 postos; cada posto executa a sua própria sequência de operações, cuja evolução não depende do que se passa nos outros postos. depois de concluídas as operações nos 3 postos, é executada uma nova rotação da mesa. após o que se executam novas sequências de operações nos postos.

9 Limitações dos diagramas de estado
A representação do funcionamento deste sistema através de diagramas de estado (ver aula) leva a uma “explosão” do número de estados porque: nos diagramas de estado, em cada momento, apenas pode estar activo um único estado, portanto, é preciso considerar um estado para uma das combinações possíveis dos estados dos subsistemas (isto é, dos postos de trabalho).

10 Limitações dos diagramas de estado
Esta situação é característica dos sistemas concorrentes que contém subsistemas que executam operações em paralelo (isto é, em concorrência). Tipicamente, nestes casos, existe: um ponto de sincronização entre os diferentes subsistemas, no início das sequências de operação, outro ponto de sincronização no final das operações. Mas, uma vez iniciadas, as sequências de operação em cada posto decorrem independentemente das operações nos outros postos.

11 GRAFCET Devido ao facto de nos diagramas de estado apenas estar activo um estado de cada vez, este tipo de situação conduz a uma “explosão” no número de estados do diagrama. O GRAFCET é um método de modelação de sistemas a eventos discretos especialmente vocacionado para a análsie de sistemas de controlo automáticos e que permite ultrapassar esta, e outras, limitações dos diagramas de estado.

12 Apresentação do GRAFCET

13 O que é o Grafcet? Trata-se de um método gráfico de apoio à concepção de sistemas de controlo automáticos que permite representar, através de modelos do tipo diagrama de estado, o comportamento de sistemas sequenciais. Trata-se de uma ferramenta estruturante Será utilizado para modelização e para programação

14 Grafcet versus Diagramas de estado
O GRAFCET permite representar: a sincronização de operações entre subsistemas que decorram em simultâneo ou em alternativa; o funcionamento dos sistemas segundo vários níveis de detalhe; as interacções entre subsistemas organizados hierarquicamente; algo que não é possível fazer, pelo menos de forma simples, através de diagramas de estado.

15 Onde reside o interesse do Grafcet?
Durante a fase de concepção, o Grafcet permite: descrever o funcionamento de sistema complexos através de modelos mais compactos que os diagramas de estado; simular o funcionamento dos sistemas com base nesses modelos, e, assim, detectar e eliminar eventuais erros de concepção antes de se passar à fase de implementação; projectar o sistema de controlo directamente a partir do modelo (em software ou hardware) através de um procedimento sistemático.

16 Onde reside o interesse do Grafcet?
Assim, tal como acontece com os gráficos de estado, a construção do modelo GRAFCET é uma etapa intermédia entre a especificação do sistema e o projecto (programa) final do controlador.

17 Onde reside o interesse do Grafcet?
Como se verá, o programa do controlador pode ser gerado automaticamente a partir do GRAFCET. Sendo assim, o projecto de um sistema de controlo automático “termina” na construção do modelo GRAFCET do sistema.

18 Noções fundamentais do GRAFCET

19 Noções fundamentais Um modelo GRAFCET é constituído por 4 elementos principais: Etapa: estado do sistema, ou de um dos seus subsistemas. Transição: evolução entre dois estados. Receptividade: condição que autoriza o disparo de uma transição. Acção: ordem executada quando uma dada etapa estiver activa.

20 Noções fundamentais Etapa Transição Receptividade Acção Etapa Acções

21 Comentários | Receptividades
As receptividades são condições lógicas que dependem: dos sinais de entrada provenientes dos detectores e de variáveis internas (saídas de temporizadores, variáveis auxiliares, contadores) Fundamentalmente, cada receptividade corresponde a um evento que pode provocar uma evolução do estado do sistema.

22 Comentários | Acções As acções correspondem tipicamente às ordens enviadas aos actuadores através das saída do sistema de controlo, embora também haja acções internas, como por exemplo: incrementar contador disparar temporizador

23 Comentários | Etapa Cada etapa representa o estado de um subsistema.
Num dado instante, o estado global do sistema é equivalente ao conjunto de etapas activas (isto é, o estado global do sistema é equivalente ao conjunto dos estados dos seus subsistemas). Aqui reside uma diferença fundamental relativamente aos diagramas de estado, onde, como apenas um estado pode estar activo num dado instante, não há a possibilidade de representar os estados parciais dos subsistemas.

24 Comentários | Transição
As transições representam as evoluções possíveis do estado do sistema. As etapas e as transições definem a estrutura lógica do programa do sistema de controlo (if…then…else).

25 Alternância etapa - transição
Num GRAFCET deve existir sempre uma alternância entre etapas e transições, isto é: duas etapas nunca podem ser ligadas directamente, mas devem estar separadas por uma transição; duas transições nunca podem ser ligadas directamente, mas devem estar separadas por uma etapa. Como tal, os dois modelos ao lado são inválidos.

26 Convenções As etapas activas são assinaladas através do símbolo (*).
A ordem de numeração das etapas é qualquer. Por defeito, as ligações entre etapas e transições são da esquerda para a direita, e de cima para baixo. Ligações de baixo para cima e da direita para a esquerda devem ser assinaladas com seta.

27 Exemplo elementar: Prensa de compressão
Na figura está representada uma prensa automatizada, na qual são fabricadas peças por compressão de um material em pó.

28 Funcionamento A prensa é constituída por um punção inferior fixo, um punção superior móvel e uma matriz também móvel e o seu ciclo de funcionamento é o seguinte: com a matriz e o punção superior nas suas posições alta, é colocada a matéria prima na matriz; depois do operador premir o botão de início de ciclo, o punção desce comprimindo a matéria prima, após o que regressa à posição inicial; de seguida, a matriz desce para permitir a evacuação da peça, após o que regressa à sua posição alta.

29 Especificação tecnológica
O material é colocado manualmente pelo operador; o punção superior e a matriz são accionados por cilindros hidráulicos de duplo efeito; as posições altas e baixas destes dispositivos são detectadas pelos interruptores fim-de-curso a1, a0, b1 e b0; a evacuação da peças é efectuada por jacto de ar comprimido comandado por uma electroválvula.

30 Modelo

31 Execução simultânea de operações em paralelo
Considere-se mesa com 3 postos de trabalho já estudado antes. O respectivo modelo Grafcet está representado na figura seguinte.

32 Modelo Grafcet Execução simultânea de operações em
paralelo (nós do tipo AND)

33 Execução simultânea de operações em paralelo
Neste sistema, existem dois pontos de sincronização dos 3 postos, no início e no fim das respectivas sequências de operações. Uma vez iniciadas, as operações em cada posto decorrem independentemente do avanço das operações nos outros postos. No Grafcet, este tipo de sincronização, correspondente a nós do tipo AND, é representada através de um traço duplo, conforme representado nos modelos anteriores. De notar que cada etapa representa o estado de um subsistema. O estado global do sistema num dado instante é representado pelo conjunto de etapas activas nesse instante.

34 Execução simultânea de operações em paralelo

35 Sequências de operações alternativas
Considere-se o sistema de transporte do tipo pórtico representado na figura e cujo funcionamento é o seguinte: o operador selecciona o posto para onde se deve deslocar o carro; conforme a sua posição inicial, o carro desloca-se para a esquerda ou para direita; após atingir o posto seleccionado, ...

36 Sequências de operações alternativas
Neste sistema, a partir do estado de repouso, o sistema pode executar uma de várias sequências de operações alternativas. Depois de concluída essa sequência de operações, o sistema regressa ao seu estado de repouso. De notar que cada transição representa uma evolução possível do estado do sistema. Quando as sequências alternativas são exclusivas (como acontece neste caso), é necessário garantir que as transições de entrada dessas sequências são incompatíveis, isto é, que nunca podem ser simultaneamente verdadeiras, mesmo em caso de avaria ou de erro do operador.

37 Modelo Grafcet: sequências alternativas

38 Sequências de operações alternativas

39 Regras de evolução do Grafcet
As regras de evolução do Grafcet determinam a evolução da situação* do Grafcet, isto é, a activação e a desactivação das etapas. São cinco as regras de evolução: Inicialização Validação Disparo Disparos simultâneos Activação/desactivação simultânea * por situação do Grafcet designa-se o conjunto de etapas activas num determinado instante.

40 1. Inicialização As etapas inicialmente activas são assinaladas através de um duplo traço. Por exemplo, quando o sistema de controlo representado pelo Grafcet ao lado entra em funcionamento, as etapas 1 e 3 são imediatamente activadas e, consequentemente, as saídas O1, O3 e O5.

41 2. Validação Uma transição está validada no caso de todas as suas etapas de entrada estarem activas. Exemplo: as transições t1, t2, t4 e t5 estão validadas as transições t3 e t6 não estão validadas

42 3. Disparo Uma transição é disparada se estiver validada e a receptividade que lhe está associada tomar o valor lógico “1”. O disparo de uma transição provoca a desactivação das etapas de entrada e a activação das etapas de saída dessa transição.

43 4. Disparos simultâneos Várias transições “disparáveis” simultaneamente, são disparadas em simultâneo.

44 5. Activação e desactivação simultâneas
Se, simultaneamente, uma etapa é activada e desactivada pelo disparo simultâneo de duas transições, então essa etapa permanecerá activa.

45 4.2. Noções complementares do Grafcet

46 Noções complementares
O Grafcet define um conjunto de noções complementares garças às quais é possível criar modelos mais compactos, logo mais fáceis de compreender, de sistemas complexos: variáveis internas; acções condicionais, pontuais; temporizações; macro-acções macro-etapas* * não serão abordadas nesta edição da disciplina

47 Variáveis internas A variável Xi representa uma variável booleana tal que: se a etapa i activa então Xi = verdadeiro se a etapa i não activa então Xi = falso

48 Acções condicionais Uma acção condicionada associada a uma etapa, apenas é executada quando, além dessa etapa estar activa, se verifica uma outra condição lógica adicional. Por exemplo, a saída O4 é activada se a entrada I6 tomar o valor lógico “1” quando a etapa 4 estiver activa.

49 Acções memorizadas As acções memorizadas continuam a ser executadas depois da etapa a que estão associadas ter sido desactivada, e até que seja dada uma ordem em contrário. Estas acções são assinaladas com *, como no exemplo ao lado.

50 Temporizações A notação t / i / T designa uma variável que toma o valor lógico “1” depois de ter decorrido o período T após a activação da etapa i. Por exemplo, 20 segundos após a activação da etapa 13, a variável t/13/20 seg toma o valor lógico “1”.

51 Temporizações As variáveis temporizadas podem ser associadas a acções ou a transições, como nos exemplos seguintes

52 Temporizações | Nota Como se verá*, o software de programação que será utilizado nas aulas práticas, para suportar a programação de temporizações, associa a cada etapa i uma variável Xi.T que contém o tempo decorrido desde a activação dessa etapa. Para resolver os exercícios que lhes serão propostos, os alunos podem optar por utilizar a notação definida pela norma do Grafcet (t/Xi/T) ou as variáveis Xi.T. * Anexo: Programação em Grafcet com o software PL7

53 Macro-acções

54 Macro-acções: Conceito
As macro-acções permitem representar as interacções em sistemas de controlo hieráquicos, onde: um Grafcet de nível superior controla um conjunto de Grafcets de nível inferior, cada um dos quais comandando uma máquina ou subsistema. Como exemplo deste tipo de situação, considere-se o vídeo relativo ao Centro de CIM da FEUP disponível na página da disciplina, onde: um Grafcet comanda o funcionamento global da célula um conjunto de Grafcets comandam, cada um, um dos subsistemas (robots, sistemas de transporte, máquinas, …)

55 Macro-acções: Conceito
As macro-acções também são muito utilizadas para tratar as situações de inicialização e de avaria. Através delas, o sistema supervisor pode: bloquear (congelar) a situação dos Grafcets subordinados; reinicializar a situação desses Grafcets; impôr, de forma permanente, uma determinada situação a esses Grafcets.

56 Macro-acções: Conceito
Ne acordo com a norma Grafcet, estas interacções são representadas através de um tipo de acção especial, designado por macro-acção e a que corresponde a notação F / G : S Um acção deste tipo “força” (isto é, impõe) a situação S no grafcet G. Exemplo: a macro- acção F / Robot1: (10, 20) impõe a situação (10, 20) no Grafcet Robot1; o que é equivalente a activar as etapas 10 e 20 desse Grafcet e a desactivar todas as outras.

57 Macro-acções: Conceito
Como qualquer outra acção, as macro-acções podem ser pontuais ou permanentes: por defeito, as macro-acções são contínuas, o que significa que enquanto se mantiver a macro-acção o estado do Grafcet subordinado não pode evoluir; se a macro-acção for pontual, o Grafcet subordinado pode evoluir a partir da situação que lhe foi imposta pela macro-acção.

58 Macro-acções: Conceito
Um caso particular da macro-acção consiste em congelar a situação actual do Grafcet subordinado. Este tipo de macro-acção é representado pela notação F / G: (*) e tem por consequência bloquear a evolução do Grafcet G na situação em que se encontrava quando foi executada a macro-acção.

59 Macro-acções: Exemplo de aplicação
No misturador industrial considerado nas aulas práticas, existe um botão de paragem de emergência PE tal que: se for premido durante o período de carga dos balanças e do misturador, a actuação de PE suspende as acções em curso, as quais serão retomadas depois de PE ser desactivado e de ser dada nova ordem de arranque; se for premido durante o período de mistura, a actuação de PE provoca a inutilização do produto em curso de fabrico. Neste caso, após PE ser desactivado, é executado o procedimento de inicialização.

60 Macro-acções: Exemplo de aplicação

61 Macro-acções: Exemplo de aplicação
Não recorrendo a macro-acções, a implementação das especificações relativas à paragem de emergência requer que: 1. Seja acrescentada uma etapa adicional para cada uma das etapas em que a actuação de PE suspende o processo de fabrico.

62 Macro-acções: Exemplo de aplicação
2. Seja acrescentada uma transição adicional para cada uma das etapas em que a actuação de PE implica a reinicialização do processo de fabrico. Nota: Na etapa 50 o sistema sistema fica bloqueado a aguardar a desactivação de PE para então se reinicializar o processo

63 Macro-acções: Exemplo de aplicação
O modelo completo do sistema é muito simplificado se se recorrer a macro-acções a partir de um Grafcet de nível hierárquico superior. Mistura já iniciada, produto inutilizado e processo reinicializado Mistura não iniciada, processo suspenso

64 Anexo: Programação em Grafcet com o software PL7

65 Programação Grafcet com PL7
Este anexo propociona uma breve introdução à programação em Grafcet utilizando o software PL7 da Schneider, que será utilizado nas aulas práticas da disciplina. Esta introdução é complementada pelo guião do trabalho prático sobre “Programação em PL7”.

66 Programação Grafcet com PL7
A notação utilizada neste software é diferente da notação standard definida pela norma Grafcet (e que tem sido até aqui nestes slides). Os conceitos de base são, no entanto, os mesmos pelo que é relativamente fácil passar de um modo de representação ao outro. Nota: Nas provas escritas de avaliação, os alunos podem optar por uma outra notação

67 Edição de modelos Grafcet
A criação de um modelo Grafcet no software PL7 envolve duas fases principais: 1. Edição da estrutura do gráfico, isto é, das etapas e das transições 2. Edição do código das receptividades e das acções.

68 1. Estrutura do gráfico Os elementos gráficos do modelo (etapas e transições) são criadas recorrendo a teclas de função.

69 2. Receptividades e Acções
Considere-se como exemplo, o seguinte modelo Grafcet:

70 Receptividades Transição t4 %I1.1 AND %I1.2 Transição t5
%X11.T >= 600

71 Acções A cada etapa podem ser associadas 3 tipos de acções:

72 Acções RE X10 X10 FE X10

73 Acções Uma diferença fundamental entre a norma do Grafcet e a programação no módulo PL7 reside no facto de todas as acções serem memorizadas. Assim: se uma acção está activa durante a etapa Xi, então deve ser feito o reset dessa acção na desactivação de Xi, ou na activação da etapa seguinte Xi+1. se uma acção está activa durante as etapas Xi, Xi+1, Xi+n, então o set dessa variável deve ter lugar na activação de Xi e o reset na desactivação de Xi+n.

74 Acções

75 Temporizações No software PL7, a cada etapa i é associada uma variável Xi.T que contém o tempo (em centenas de milisegundo) decorrido desde o instante de activação da etapa. Essas variáveis podem ser utilizadas no código associado às acções e às receptividades para programar acções condicionais e transições temporizadas, conforme o exemplo seguinte ilustra.

76 Temporizações: Exemplo
FALSE

77 Macro-etapas e de macro-acções
O software PL7 suporta a programação de macro-etapas e de macro-acções. No entanto, os autómatos que serão utilizados nas aulas práticas apenas suportam a programação de macro-acções, pelo que aqui não será abordada a programação de macro-etapas.

78 Macro-acções Para suportar a programação de macro-acções, o software PL7: permite ler e escrever os bits Xi associados às etapas, por exemplo: SET %X7; RESET %X0; dispõe de um conjunto de “bits sistema” para implementação de macro-acções.

79 Macro-acções Os “bits sistema*” para a implementação de macro-acções são os seguintes: %S9: Todas as saídas em estado de repouso (desligadas) %S21: activação das etapas iniciais e desactivação de todas as outras %S22: desactivação de todas as etapas %S23: bloqueio de todas as transições * Estes bit são todos activos em “1” * Fazer SET e RESET a estes bits

80 Macro-acções Os bits de etapa (Xi) e os bits sistema associados às macro- acções (S9, S21, S22 e S23): podem ser manipulados em texto estruturado como os outros bits de memória mas apenas na secção de pré-processamento.

81 Secções das aplicações Grafcet
Uma aplicação Grafcet é constituída por 3 secções: pré-processamento (Prl) processamento sequencial (Chart) pós-processamento (Post) Apenas a secção Chart, que contém o modelo Grafect propriamente dito, é programada graficamente. As secções Prl e Post são programadas utilizando uma das linguagens IL, LD ou ST.

82 Secções das aplicações Grafcet
O acesso às secções do Grafcet para programação é efectuado através do Application Browser: Station/Program/Mast Task/Sections

83 Secções das aplicações Grafcet
A secção pré-processamento contém, normalmente, as macro-acções, A secção Chart contém o modelo gráfico correspondente ao funcionamento normal do sistema A secção de pós-processamento contém as instruções relativas a requisitos de segurança cuja execução tem prioridade sobre o modo de funcionamento normal do sistema.

84 Grafcet - Notas Finais Os conceitos apresentados na cadeira são próximos da norma que define: Sequencial Function Blocks - SFCs (uma evolução do Grafcet) A linguagem Structured Text - ST A ferramenta PL7 do AP Schneider implementa versões proprietárias do Grafcet e do ST O Grafcet é uma ferramenta estruturante Serve para modelização de sistemas a eventos discretos Serve para programação As acções e receptividades são escritas noutras linguagens – exemplo linguagem ST É possível converter um diagrama Grafcet em código ST ou noutra linguagem de programação qualquer


Carregar ppt "Limitações das Máquinas de Estado & Grafcet"

Apresentações semelhantes


Anúncios Google