Exemplo 4

Recurso Partilhado

Nota: As animações poderão apenas funcionar se o "Zoom" do browser estiver a 100%. Caso seja necessário ajustar, aceda às definições/opções do browser.

Problema:

Vamos considerar dois carros de transporte que servem dois postos de descarga:

Inicialmente os carros encontram-se na situação de repouso. Ao pressionar o botão p1 o carro 1 efetua o percurso ACA. Se o botão p2 for pressionado o carro 2 efetua o percurso BCB. Quando os carros retomam à posição inicial (A e B) permanecem em repouso aguardando nova ordem. Os pedidos são ignorados quando os carros não se encontram na posição de repouso. O motor M1 desloca o carro 1 para a direita, o mesmo acontece com o motor M3 para o carro 2. O motor M2 desloca o carro 1 para a esquerda, o motor M4 tem o mesmo comportamento no carro 2. A direção da agulha é controlada pela electroválvula V. Quando V=0 a agulha orienta-se para o percurso BCB; quando V=1 o percurso é ACA. Um carro ao chegar à zona de agulhagem, di, só poderá seguir em direção a C caso o percurso di-C esteja livre (com i =1,2). Utilizando Grafcets vão ser implementados os controladores lógicos que correspondem às seguintes situações:

Exemplo 4.1:

- Ações contínuas associadas aos motores.

- Ação na ativação define o valor da variável de controlo da electroválvula V.

- Noção de semáforo: utilizando uma etapa para simbolizar o recurso livre e duas convergências E é possível controlar o acesso dos carros à zona partilhada.

- De notar que a recetividade que vai dar a ordem para o carro 1 avançar é 1 e a do carro 2 é /X2. Ou seja, é utilizada a condição de recetividade sempre verdadeira (1) de modo a estabelecer prioridade ao carro 1.

- Flanco descendente associado à variável das transições 5 e 11 sinalizam que zona de agulhagem está livre.

O botão extra "p1 e p2" permite simular a pressão simultânea dos respetivos botões p1 e p2.

Nota: Existem vários botões, por baixo do botão/interruptor m, que permitem controlar o decorrer da animação. Assim, para uma melhor compreensão da evolução do grafcet é possível pausar a animação e acompanhar a sua evolução passo a passo . A qualquer momento pode ser retomada a execução normal . O botão permite inicializar toda a animação.

Ao premir o botão p1 ou o botão p2 o respetivo carro inicia o movimento em direção ao ponto C. Um carro ao chegar à zona de agulhagem verifica se o percurso partilhado está livre, se sim avança, caso contrário espera até que este fique livre. Na situação dos carros chegarem à zona de agulhagem (d1 e d2) ao mesmo tempo, é dada a prioridade de avançar ao carro 1.

Exemplo 4.2:

- É implementada a mesma solução do exemplo 4.1 pelo uso de grafcets parciais.

- Desta forma é possível visualizar o controlo das partes ativas (carros e agulha) de forma independente.

- Condição da transição 13 refere-se às etapas onde os carros iniciam a entrada na zona de agulhagem e a condição da transição 15 é onde os carros libertam essa área.

- Condição de recetividade da transição 3 (exemplo anterior) é substituída pela condição X3 (indicação de recurso livre).

- Condição de recetividade da transição 9 (exemplo anterior) é adaptada de /X2 para /d1.X3, ou seja, o carro 2 avança quando o carro 1 não se encontra no início da zona de agulhagem (d1=0) e o recurso partilhado está livre (X3=1)

O botão extra "p1 e p2" permite simular a pressão simultânea dos respetivos botões p1 e p2.

Nota: Existem vários botões, por baixo do botão/interruptor m, que permitem controlar o decorrer da animação. Assim, para uma melhor compreensão da evolução do grafcet é possível pausar a animação e acompanhar a sua evolução passo a passo . A qualquer momento pode ser retomada a execução normal . O botão permite inicializar toda a animação.

Neste exemplo o controlo dos carros é implementado pelo uso de Grafcets parciais.

Exemplo 4.3:

- Perceber como implementar regras de acesso ao recurso partilhado.

- Neste exemplo é aplicada uma regra no controlo dos carros que permite a utilização do recurso partilhado de forma alternada.

- Para o efeito é necessário um segundo semáforo (etapa 13).

- O semáforo ativo inicialmente é a etapa 3 (prioridade de acesso ao carro 1).

- Um semáforo nunca está ativo duas vezes consecutivas, isso garante o acesso alternado dos carros ao recurso partilhado.

O botão extra "p1 e p2" permite simular a pressão simultânea dos respetivos botões p1 e p2.

Nota: Existem vários botões, por baixo do botão/interruptor m, que permitem controlar o decorrer da animação. Assim, para uma melhor compreensão da evolução do grafcet é possível pausar a animação e acompanhar a sua evolução passo a passo . A qualquer momento pode ser retomada a execução normal . O botão permite inicializar toda a animação.

Aqui os carros vão ter acesso ao percurso di-C alternadamente (com i =1,2). Inicialmente apenas o carro 1 poderá efetuar o percurso em direção a C. O próximo carro a poder fazer esse percurso é o carro 2. Se o carro 1 tentar efetuar novamente o percurso ACA, antes do carro 2, vai ter de esperar na zona de agulhagem até que o carro 2 utilize o percurso d2-C. E assim sucessivamente... Um carro nunca poderá utilizar o percurso partilhado duas vezes consecutivas.

Nota: Os textos das animações estão conforme o acordo ortográfico antigo.