Anda di halaman 1dari 38

Grafcet

10 de agosto de 2010

Grafcet
Modelar lgicas de controle baseadas na seqncia temporal
de eventos de processo;
Como linguagem de estruturao das aes de um programa
segundo um modelo top-down. Este particionamento do
problema traz ganhos de performance porque apenas o
cdigo relativo aos passos ativos executado;
Para descrever o comportamento baixo nvel de um processo
seqencial;
Para representar as fases de um processo de batelada;
Para representar um processo de comunicao de dados, etc.

Componentes Bsicos
Estados;
Transies;

Links;
Jumps;

Estados
Cada Estado referenciado por um nmero, escrito dentro do
retngulo;
A descrio do estado feita em um retngulo ligado ao
smbolo do estado, sendo que a mesma no faz parte da
programao);

Estados
No modo run time, um alerta indica que o estado est sendo
executado.

Estados
Estado inicial:
Todo programa SFC possui um Estado Inicial, representado
por dupla borda;
O alerta de Estado ativo automaticamente ligado no
Estado Inicial quando o programa executado;

Estados
O bloco de aes de cada Estado pode ser definido em em
qualquer uma das outras linguagens da IEC 61131;
GSnnn.x : Varivel booleana que indica se o Estado nnn est
ativo. Comumente utilizado em seqncias simultneas ,
sincronizando diferentes passos;
GSnnn.t : Varivel timmer que indica a quanto tempo o Estado
nnn est ativo;

Estados
A lgica de cada estado do programa em SFC, quando descrita
em ST (texto estruturado), deve ser encapsulada entre o par
de declaraes ACTION (qualificador ) e END ACTION, onde
qualificador descreve o tipo da ao. Os qualificadores mais
freqentemente usados so:
N, que indica que a ao ser executada continuamente
enquanto o estado estiver ativo;
P, que indica uma ao pulsada (no ISaGRAF, executada
apenas uma vez quando o estado for ativado).

Estados
Qualificadores aceitos em outros PLCs:

Estados
Exemplo:
ACTION(N):
x:= x+1;
desligado := FALSE;
END_ACTION;

Observe que as palavras-chave ACTION e END ACTION no


podem ser usadas num programa declarado na linguagem ST.

Transies
So representadas por uma pequena barra horizontal que
cruza o link entre estados;
Assim como os estados, cada transio referenciada por um
nmero e pode ser descrita por um comentrio;

Transies em Texto Estruturado


Cada transio deve ter uma condio booleana associada e
ser finalizada com ; ;
Por exemplo, para descrever uma transio hipottica entre
dois estados, foi empregada a seguinte expresso:

A transio acima s ocorre se a varivel FUN for acionada E


se no tiver decorrido at o momento mais de 10 segundos
de execuo do estado 2.

Transies com Funo ou


Subprograma
Subprogramas ou funes podem ser usados para determinar
a condio de transio, desde que o resultado destes seja um
booleano;
Formato:

Exemplo:

Link Orientado
So as linhas usadas para interligar Estados e Transies;
Quando a orientao no explicita (sem setas indicativas) a
orientao de cima para baixo;

Jump
Usados em substituio ao link orientado;
Indicam a conexo sem o desenho da linha de interligao;
Os jumps devem referenciar ao nmero do Estado de destino;

Jump
Jumps no podem ser usados para representar o link de um
estado para uma transio.
Diagramas equivalentes:

Convergncias e Divergncias
Divergncias so multplas conexes de um smbolo SFC
(estado ou transio) para dois ou mais smbolos SFC;

Convergncias so conexes de dois ou mais smbolos SFC


para um nico smbolo SFC;

Convergncias/Divergncias Simples
Mesmo que vrias transies estejam ativas simultaneamente,
somente um caminho selecionado. O caminho selecionado
determinado pela precedncia da transio. O default a
avaliao da esquerda para a direita;

Convergncias/Divergncias Mltiplas
Faz uso da construo divergncia AND para iniciar aes que
sero realizadas em paralelo e convergncia AND que espera
at todas as tarefas estarem concludas.

Macro Estado
Um macro estado a representao de um grupo de estados
e transies;
O macro estado descrito em separado, tambm em
linguagem SFC;

Macro Estado
O nmero de referncia do macro estado a referncia do
primeiro estado de sua descrio.
A descrio deve iniciar e terminar com um estado;
Um macro estado pode possuir outro macro estado em sua
descrio;
Um macro estado no pode ser usado em mais de um
programa SFC.

Macro Estado

Aes
Booleanas;
Pulsadas;
Contnuas;

Aes SFC;

Aes Booleanas
Altera o valor de uma varivel (interna ou sada) nos
momentos de ativao e desativao do Estado;
<variavel_booleana>(N): varivel torna-se TRUE durante o estado
ativo;
< variavel_booleana >: mesmo efeito de (N);
/< variavel_booleana>: variavel torna-se FALSE durante o estado ativo;
< variavel_booleana>(S): variavel torna-se TRUE na entrada do estado
e permanece assim at ser resetado;
< variavel_booleana>(R): variavel torna-se FALSE na entrada do estado
e permanece assim at ser setado;

Aes Booleanas

Aes Pulsadas
Aes executadas somente uma vez durante o estado ativo;

Sintaxe:
ACTION (P):
(Cdigo em texto estruturado);
END_ACTION;

Aes Pulsadas
Exemplo:

Aes Contnuas
Aes executadas em todos os ciclos de scan, enquanto o
estado estiver ativo;

Sintaxe:
ACTION (N):
(Cdigo em texto estruturado);
END_ACTION;

Aes Contnuas
Exemplo:

Aes SFC
Trata-se de partir/interromper subprogramas do tipo SFC;
Sintaxe:
<programa_filho> (N): parte (interrompe) o subprograma quando o
estado ativado (desativado);
<programa_filho> : mesmo efeito de (N);
<programa_filho> (S): Parte o subprograma quando o estado
ativado. No possibilita a interrupo do subprograma;
<programa_filho> (R): Interrompe o subprograma quando o estado
ativado. No possibilita partir novamente o subprograma;

Aes SFC
Exemplo: Programa pai com os subprogramas SeqMix e
SeqPump;

Chamada de Funes
Trata-se de partir/interromper subprogramas e funes no
escritos em SFC;
Sintaxe:
ACTION (P):
resultado:=sub_program ();
END_ACTION;
ACTION (N):
resultado:=sub_program ();
END_ACTION;

Chamada de Blocos de Funes


Trata-se de partir/interromper blocos de funes;
Sintaxe:
ACTION (P):
FBinst(in1, in2);
result1:=Fbinst.out1;
result2:=Fbinst.out2;
END_ACTION;
ACTION (N):
FBinst(in1, in2);
result1:=Fbinst.out1;
result2:=Fbinst.out2;
END_ACTION;

Regras de avaliao de um SFC


1. Estado inicial estar ativo logo aps a inicializao do
sistema. Quaisquer aes associadas com o passo inicial sero
executadas.
2. No inico de cada avaliao, o conjunto de estados ativos
determinado. Todas as transies associadas com os estados
ativos sero avaliadas.

3. Aes que terminaram sua execuo na ltima avaliao,


so executadas mais uma vez.

Regras de avaliao de um SFC


4. Todas as aes ativas so executadas.
5. Todos os estados ativos que precedem transies avaliadas
como verdadeiras so desativados e os seus estados
sucessivos so ativados.

6. Todas as aes tendo uma condio de habilitao que


acabam de ser desativadas, so marcadas como inativas, por
exemplo, uma ao com o qualificador de limite de tempo L,
quando o perodo de tempo esgotado.

Regras de evoluo de um SFC


1. Dois estados no podem ser diretamente ligados. Eles
devem ser separados por uma transio.
2. Duas transies nunca podem estar diretamente ligadas,
elas devem ser sempre separadas por um estado.
3. Se uma transio a partir de um estado leva a dois ou mais
estados, ento estes estados iniciam seqncias simultneas.
Seqncias simultneas continuam independentemente.
4. Quando projetando um SFC o tempo para realizar uma
transio, desativar estados anteriores e ativar estados
posteriores, deve ser considerado nulo.

Regras de evoluo de um SFC


5. Quando mais do que uma condio de transio
verdadeira ao mesmo tempo, o tempo de ativao e
desativao dos estados associados deve ser considerado
nulo. O projetista no deve considerar as diferenas de tempo
de transies simultneas (condio de corrida).
6. A condio de transio de um estado no avaliada at
que todo o comportamento resultante do estado ativo tenha
se propagado atravs da POU. Por exemplo, se um estado foi
ativado com a sua condio de sada sempre TRUE, todas as
aes sero executadas uma vez, antes do estado ser
desativado.

Datas Importantes
14 de setembro Data limite para envio da Prtica 6
28 de setembro Apresentao da Prtica 7
19 de outubro Data limite de envio da Prtica 8

16 de novembro Apresentao da Prtica Final

Anda mungkin juga menyukai