Você está na página 1de 30

Técnicas de programação

utilizando GRAFCET
Parte 2
3. Aba FDB_C:

- Função controle seqüencial de saídas:

Esta função é utilizada para setar para ON um máximo de 4 saídas digitais (OUTPUT 1......OUTPUT4). Este
número é igual ao número máximo de entradas digitais (de 2 a 4) em estado ON.
Observe as seguintes condições de uso:
- Se apenas uma entrada estiver ativa: as saídas são seqüenciais. A cada pulso ON na entrada a saída
seguinte aquela que estiver em ON atualmente irá para ON, enquanto que atual irá para OFF.
- Se duas entradas estiverem ativas: haverá sempre duas saídas ativas
- Se três entradas estiverem ativas: haverá sempre três saídas ativas
- Se quatro entradas estiverem ativas: haverá sempre quatro saídas ativas.

Para compreender o funcionamento correto em cada situação simule na janela de edição do software esta
função com 4 entradas e 4 saídas.

Parametrização: O único item a ser parametrizado é o número de saídas ativas.


Exemplo de utilização: observe a ação produzida em cada bomba para cada situação.

----------------------------------------------------------------------------------------------------------------------------------

- Função contador em alta velocidade:

Esta função é utilizada para contar os pulsos que chegam às entradas I1 e I2 nos CLPs com alimentação em
CC a uma taxa de até um pulso a cada 10 ms. Há dois modos principais de operação disponíveis:

Modo de contagem (Count mode)

Modo de tacômetro (Tachometer mode)

MODO DE CONTAGEM (COUNT MODE):

Este modo é selecionado clicando na opção Count na janela de parametrização.

• Esta aplicação aplicação possui duas entradas implícitas (I1 e I2) e 3 entradas explícitas
(ACTIVATION, RESET, PRESET).

Entradas implícitas:
As duas entradas da função denominadas I1 e I2 são usadas para diferentes tipos de contagens. Não é
necessário estabelece nenhuma conexão entre as unidades I1 e I2 e a entrada de HIGH SPEED COUNT
porque essa conexão é implícita.
A operação pode ser feita no sentido de ON para OFF ou no sentido de OFF para ON, dependendo da
escolha feita na janela de parametrização.
The controller’s inputs I1 and I2 are used for the different count types. It is not necessary to establish any
connections between units I1 and I2 and the HIGH SPEED COUNT application-specific function as these
links are implicit.

Entradas explícitas:

Comutando de ON para OFF na entrada ACTIVATION os valores contidos nas entradas I1 e I2 são
ignorados. Comutando de OFF para ON na entrada RESET força-se o contador a uma posição determinada
que depende da opção de contagem selecionada. A terceira entrada numérica tipo inteiro (-32768..+32767)
pode ser utilizada para entrar com um valor de PRESET externo, se este item tiver sido selecionado na caixa
de parametrização.
A esta função possui 5 saídas: OUTPUT, ERROR, PRESET VALUE, COUNT/SPEED, TIMEOUT.
Quando o contador alcança o primeiro número zero, a primeira saída OUTPUT comuta para ON. O retorno
de volta a OFF depende das opções selecionadas na janela de parametrização.
A tabela abaixo descreve os efeitos das entradas I1 e I2 em COUNT , dependendo do modo de contagem.
As principais características de cada modo são descritas a seguir:

• UP: o contador adiciona pulsos vindos através da entrada I1.


• DOWN: o contador conta para baixo os pulsos vindos através da entrada I1.
• IND: o contador conta para cima os pulsos vindos na entrada I1 e conta para baixo os pulsos vindas
em outras entradas.
• CUMUL: o contador conta ambos os pulsos vindos em I1 e I2.
• DIR: o contador conta para cima ou para baixo os pulsos vindos na entrada I1, dependendo do status
da entrada I2.
• PHASE: Esta função pode somente ser utilizada sob as seguintes condições:
Sinais para I1 e I2 são emitidos em intervalos regulares e em intervalos idênticos exatamente igual ao
dobro do ciclo básico selecionado durante a execução do programa. Os dois sinais estão for a de fase
por + ou – π /2. O contador conta para cima quando a diferença de fase entre I1 e I2 é + π /2 (ou - π
/2) e conta para baixo quando a diferença de fase entre I1 e I2 é - π /2 (ou + π /2).

Modo de Diagrama de tempo


Contagem na borda de subida
contagem
UP ① Entrada I1

Entrada ACTIVATION

③ saída COUNT
DOWN ① Entrada I1

Entrada ACTIVATION

③ saída COUNT
IND ① Entrada I1: conta na direção do ciclo

Entrada I2: conta na direção contrário ao


ciclo

③ saída COUNT, opção de contagem


para cima até o valor pressetado.

④ saída COUNT, opção de contagem


para baixo partindo o valor pressetado.
CUMUL ① Entrada I1: conta na direção do ciclo

Entrada I2: conta na direção do ciclo

③ saída COUNT, opção de contagem


para cima até o valor pressetado.

④ saída COUNT, opção de contagem


para baixo partindo o valor pressetado.
DIR ① Entrada I1: conta na direção do ciclo

Entrada I2: Inverte a direção de


contagem

③ saída COUNT, opção de contagem


para cima até o valor pressetado.

④ saída COUNT, opção de contagem


para baixo partindo o valor pressetado.
PHASE ① Entrada I1: conta na borda (sinais 90°
fora de fase)

Entrada I2: inverte a direção de


contagem se I2 está a frente de I1

③ saída COUNT, opção de contagem


para cima até o valor pressetado.

④ saída COUNT, opção de contagem


para baixo partindo o valor pressetado.
A saída ERROR comuta para ON nas seguintes situações:
• Se a capacidade do contador for excedida (overflow). O sinal de erra é disparado quando o limite de
contagem atinge (-32768 ou 32767).
• Se o número de eventos por ciclo estiver acima de 72.
O sinal de ERROR permanece enquanto o RESSET TO ZERO não for ativado. Quando o ERROR é
disparado, o resultado do contador entra em estado de erro, que significa que o status de OUTPUT na é
significante.
O contador tem ainda três saídas do tipo inteiro:

• PRESET VALUE: valor externo carregado em RESET ou um parâmetro interno.


• COUNT: valor corrente do contador.
• TIMEOUT: tempo corrente para encerrar o ciclo em caso de ciclo repetitivo.
A caixa de parametrização oferece as seguintes opções para seleção:

Modo de contagem (Count mode) selecionado

• Opções de contagem: UP, DOWN, IND, CUMUL, DIR e PH (PHASE)


• Ciclo simples ou repetição de ciclo.
• Contagem para cima até o valor pressetado ou contagem para baixo partindo do valor pressetado.
• Valor pressetado: este valor está entre -32768 e 32767. Ele pode ser o valor pressetado na entrada
PRESSET (externo) ou feito na janela de parametrização (interno).
• Tipo de saída: pode ser uma valor fixado na saída, que comuta de OFF para ON quando o contador
chega ao zero, permanecendo em ON, ou pode ser uma saída pulsada comutando de OFF para ON
quando o número de contagem ou o zero é alcançado e comutando de volta para OFF quando o
tempo programado for atingido. (x100 ms).

A janela de parametrização contém a opção de retornar a contagem depois de ter havido uma queda de
energia.

Modo Contador para cima até o valor pressetado (Count-up to preset value mode)

Ciclo fixo:

Ciclo repetitivo
Ciclo fixo

Ciclo repetitivo

Recomendações para utilizar a função COUNT:

Sinal de entrada:
• O tempo de subida tr e o tempo de descida tf devem ser de 1µs.
• A taxa de repetição entre os limites de tempos alto e baixo tem que ser 1 para sinais > 625 Hz.
Abaixo deste valor de limite de tempo alto e baixo precisa ser > 800µs.
• No modo DIR o sinal de entrada I2 usado para considerar a direção da contagem precisa ser, ao
menos, de 400µs antes e depois da borda de contagem da entrada I1.
• No modo PHASE é imperativo que os sinais presentes na entrada sejam emitidos por um encoder.
Eles precisam estar fora de fase +90° ou –90°, com tolerância de 10°.

MODO TACÔMETRO:

Este modo é selecionado checando a opção Tachometer na janela de parâmetros.

• Neste modo a função utiliza:


• 1 entrada implícita (I1) e 3 entradas explícitas (ACTIVATION, RESET, PRESET)
• Entrada implícita:

A entrada I1 é utilizada para o modo tacômetro. Não é necessário estabelecer qualquer conexão entre I1 e a
entrada de contagem rápida (HIGH SPEED COUNT). Esta conexão é implícita.

Nesta seção é descrito como considerar as bordas indo de OFF para ON no princípio de medição do modo
tacômetro.
• Entrada explícita:
• Chaveamento de ON para OFF na entrada ACTIVATION (disponível na saída COUNT) e o valor
corrente e os pulsos na entrada I1 são ignorados.
• Chaveamento de OFF para ON na entrada RESET força a velocidade a 0 (disponível na saída
COUNT).
• O terceiro tipo inteiro (-32768..+32767) pode ser utilizado para entrar um valor externo de PRESET
na caixa de checagem de parâmetros na janela de parametrização. Este valor de preset corresponde
ao número máximo de pulsos (borda de subida) usados na medição de fase para calcular a velocidade
(Disponível na saída OUTPUT).

Esta função possui 5 saídas (OUTPUT, ERROR, PRESET VALUE, COUNT/SPEED, TIMEOUT).

• Quando o número de pulsos contados na medição de fase atinge o valor de PRESET, a primeira saída
OUTPUT chaveia para ON. O retorno para OFF depende das opções selecionadas na parametrização.
• A saída COUNT/SPEED contem a velocidade de cálculo em termos de número de bordas de subida
por segundo multiplicada pelo fator de escala e divididos pelo número de bordas de subida por
revolução (veja a seção Calculando a velocidade).
• A saída ERROR chaveia para ON nas seguintes situações:
• Se o número de eventos por ciclo é maior do 72.
• Se a capacidade de cálculo do tacômetro é excedida (parâmetros não apropriados)
• A saída ERROR permanece em ON até que a entrada RESET seja ativada.Quando o ERROR está em
ON os resultados dos cálculos podem estar errados.
• PRESET VALUE: É um valor que pode ser carregado externamente ou internamente na
parametrização.
• TIMEOUT: Tempo para encerrar o ciclo.

Princípio de medição no modo tacômetro:

T0: Tempo de inicialização na medição do modo tacômetro.


TR-T0: Tempo de refresh no modo de medição tacômetro. Tempo mínimo no qual a medição pode ser
considerada completada.
TL-T0: Limite de tempo de medição no modo tacômetro. Tempo máximo em que a medição deveria ter sido
feita (Se este tempo for alcançado sem que nenhum pulso tenha chegado através de I1 a velocidade é
considerada zero).
O tacômetro opera em dois estágios:

TRIGGERING THE MEASUREMENT SCREENING PHASE

A função analisa a chegada de uma nova borda, tão logo ela aparece na entrada I1, durante o limite de tempo
de medição (entre T0 e TL).
Se não ocorrer nenhuma borda de subida durante este tempo, a medição não é feita.
Por outro lado, a função aguarda a medição de fase se esta tiver sido iniciada.

TRIGGERING THE MEASUREMENT PHASE

Baseado na borda de subida anterior a função transporta para a saída um valor obtido dentro do limite de
tempo de medição (entre T0 e TL).
Se não mais do uma borda de subida aparecer na entrada I1 durante este período, a velocidade de cálculo é
zero e a função retorna retorna uma medição de fase tão rápida quando relevante quando o período encerrou.
Se durante o tempo de refresh (entre T0 e TR) mais do uma borda de subida aparecer em I1, mas nenhuma
aparecer durante o período subseqüente (período entre TR e TL), a velocidade de cálculo é zero e a função
retorna na tela de medição a fase medida assim que o segundo período de medição tenha se encerrado.

Se o número de bordas de subida que aparecem em I1 não for zero durante o período de refresh (entre T0 e
TR), assim que a primeira borda de subida aparecer (F1) no período subseqüente (entre TR e TL) a
velocidade é calculada do modo descrito abaixo e a função retorna uma tela de medição de fase quando a
próxima borda de subida (F2) aparecer em I1.

Calculando a velocidade:

Este cálculo é levado para for a em dois estágios começando com o cálculo do número de pulsos por
segundo e depois a velocidade. Todos os valores são inteiros entre 0 e 32767. Isto significa que o número de
pulsos contados no tacômetro durante a medição dentro de um esmo período não deve exceder a 32767.

N : número de pulsos gravados durante a medição de fase.


NPPS : número de pulsos por segundo
PPr : pulsos por revolução, valor do parâmetro "Targets per revolution".
rP : ondulação por: resultado de revoluções por Segundo.
Coeff : Coeficiente de multiplicação (valor do parâmetro "Scale factor" ).
Velocidade como número de revoluções por segundo = (NPPS * Coeff)/PPr
Como o valor calculado para a velocidade precisa ser menor do que ou igual a 32767, o número de pulsos por
segundo pode ser, no máximo, igual ao máximo NPPS = (32767 * PPr)/Coeff with "Max. NPPS", e menor do
que ou igual a 32767.

A janela de parametrização oferece as seguintes opções de seleção:


Modo tacômetro:
• Meta por ciclo [1...500] (PPr): número de pulsos (bordas de subida) correspondentes a cada ciclo do
tacômetro.
• Duração do refresh (nova leitura) DR = TR-T0 [1..8s]
• Limite de tempo de medição DL = TL-T0 [2....9s]. Este tempo tem que ser sempre maior do que o
tempo de refresh.
• Fator de escala [0,1….99.9] Coeff

Se um dos dois valores, DR ou DL, forem emendados e DL<=DR, então DL=DR+1. Se DL está emenda e
DR>=DL, então DR=DL=1.
Os valores dos parâmetros são automaticamente atualizados para o valor mais próximo do permitido cada
que a seleção de parâmetros for selecionada pressionando-se OK>
A janela de parametrização contém as opções para reinicializar a contagem em caso de queda de energia.

Notas importantes:

• A comunicação entre o PC e o CLP pode distorcer as medições.


• Esta função pode somente ser usada com CLP alimentados com VCC (12 ou 24 VCC)
• Esta função não pode ser simulada.
• Restrições ligadas a duração do ciclo:
• A característica interna M2 impõe restrições no número de eventos capturados em cada ciclo. Este
número está fixado em 72. Um evento pode produzir uma subida ou descida na entrada I1 e/ou na
entrada I2. O tipo do evento capturado depende do modo de operação selecionado. As freqüências
indicadas na tabela abaixo correspondem ao valor médio das freqüências que podem ser armazenadas
e processadas durante um ciclo de medição.
Duração do ciclo 10ms 20ms 30ms 40ms 50ms

Modo
1 (UP, DOWN, DIR e tacômetro) 4.0KHz 3.6KHz 2.4KHz 1.8KHz 1.44KHz
2 (CUMUL) *(1) 3.6KHz 1.8KHz 1.2KHz 900Hz 720Hz
2 (PH) *(2) 3.6KHz 1.8KHz 1.2KHz 900Hz 720Hz
4 (IND) *(1) 1.8KHz 900Hz 600Hz 450Hz 360Hz
*(1) : O valor indicado corresponde ao valor médio do ciclo presente em cada entrada.
*(2) : O valor indicado corresponde a frequência presente na entrada I1.
-------------------------------------------------------------------------------------------------------------------------------------------------------------

- Função Store (Armazenar):

Esta função calcula a media do escorregamento nos valores memorizados.


Quando a aplicação é iniciada está função é automaticamente colocada em modo ativo. Quando uma borda
de subida aparece na entrada VALIDATION, o byte que está na entrada VALUE é armazenado. Este valor
pode ser lido na saída MEMORY_1. Neste ponto, quando há somente um valor de memória, a média de
saída é somente o próprio valor de MEMORY_1. Na segunda borda de subida em VALIDADION, o byte
presente na entrada VALUE é armazenado na posição MEMORY_2. O valor médio colocado na saída
AVERAGE é agora o valor igual a (MEMORY_1 + MEMORY_2) / INDEX e assim por diante até na
posição MEMORY_8. A saída INDEX conta o número dos valores armazenados na memória.. Desde que 8
valores tenham sido armazenados, a próxima borda de subida em VALIDATION desloca todos os valores
da seguinte maneira: MEMORY_8 é carregado em MEMORY_7, e o novo valor é guardado em
MEMORY_8. As outras posições são todas deslocadas até MEMORY_1.O valor previamente armazenado
em MEMORY_1 é perdido. A média AVERAGE é recalculada com os novos 8 valores.
A media calculada é arredondada para o primeiro inteiro abaixo da média calculada. Um pulso na entrada
RESET resseta para zero todos os valores armazenados, inclusive AVERAGE e INDEX.

ENTRADAS:

• VALIDATION : DISC. Quando C_ON sobre o dado atual é armazenado na memória.


• RESET : DISC. Quando C_ON sobe , todas as saídas são levadas a zero.
• VALUE: S16. Valor a ser armazenado na memória.

SAÍDAS :

• MEMORY_1 : S16. Primeiro valor armazenado na memória.


• MEMORY_2: S16. Segundo valor armazenado na memória.
• MEMORY_3: S16. Terceiro valor armazenado na memória.
• MEMORY_4: S16. Quarto valor armazenado na memória.
• MEMORY_5: S16. Quinto valor armazenado na memória.
• MEMORY_6: S16. Sexto valor armazenado na memória.
• MEMORY_7: S16. Sétimo valor armazenado na memória.
• MEMORY_8: S16. Oitavo valor armazenado na memória.
• AVERAGE: S16. Média dos valores do oito dados armazenados
• INDEX : S16. Número de valores armazenados na memória.
----------------------------------------------------------------------------------------------------------------------------------
- Função demultiplexador: esta função demultiplexa inteiros. É usada para conduzir um valor de entrada
para uma das 4 OUTPUTS cada vez que uma borda de subida ocorrer na entrada VALIDATION.

Um valor levado a uma da saídas não volta mais a 0 quando é feita a comutação para outra saída, ou seja, os
valores na saída ficam memorizados.
O parâmetro BASE ADDRESS permite que vários blocos possam ser utilizados ao mesmo tempo para
múltiplas saídas.

BASE ADDRESS: Contém o endereço da saída ADDRESS 1.

SAVE ON POWER BREAK: Escolhe como deve ser feita a reinicialização em caso de falta de energia.

Exemplo: Quando o parâmetro BASE ADDRESS contém o valor 0, as saídas possuem os endereços 0, 1, 2 e
3 respectivamente. Se um segundo bloco for utilizado, 8 saídas podem ser demultiplexadas colocando-se um
valor 4 no parâmetro BASE ADDRESS do segundo bloco e conectando as entradas VALIDATION e
ADDRESS na mesma fonte.
- Função multiplexador: Esta função múltiplexa as entradas WORD. É utilizada para selecionar qual valor
de entrada deve ser enviado à saída. A ação ocorre sempre que uma borda positiva ocorrer na entrada
VALIDATION.

O parâmetro BASE ADDRESS permite que vários blocos possam ser utilizados ao mesmo tempo para
múltiplas entradas.
BASE ADDRESS: Contém o endereço da saída ADDRESS 1.
SAVE ON POWER BREAK: Escolhe como deve ser feita a reinicialização em caso de falta de energia.
Quando não conectadas, a entrada digital está em OFF e WORD contém 0.
Exemplo: Quando o parâmetro BASE ADDRESS contém o valor 0, as entradas possuem os endereços 0, 1,
2 e 3 respectivamente e, nesta situação, se a entrada ADDRESS for igual a 2 o valor da terceira entrada será
copiado na saída. Se um segundo bloco for utilizado, 8 entradas podem ser multiplexadas colocando-se um
valor 4 no parâmetro BASE ADDRESS do segundo bloco e conectando as entradas VALIDATION e
ADDRESS na mesma fonte.

----------------------------------------------------------------------------------------------------------------------------------
- Função boolen (6 entradas/2 saídas): esta função funciona de modo análogo a “função boolean” da aba
FBD. A única diferença é que esta possui 6 entradas e duas saídas, enquanto aquela possui 8 entradas e uma
saída.
----------------------------------------------------------------------------------------------------------------------------------
- Função PID analógica (Proporcional/Integral/Derivativo): esta função possibilita um controle PID
sobre uma variável. Esse tipo de controle é especialmente interessante quando se requer uma maior precisão
em torno de um valor.

ENTRADAS:

• VALIDATION : Entrada para validação da função. Esta entrada ativa todas as funções. A função
permanece desabilitada até que esta entrada seja colocada em ON. Se ela não for conectada, ela é
considera em ON.
• VALID_PRESET_VALUE : Quando ativa, esta entrada valida a entrada PRESET_VALUE. Se
estiver desativa o valor parametrizado é usado.
• PRESET_VALUE : Byte de entrada para utilização de valor externo de preset. Esta entrada é
levada em conta somente quando a entrada VALID_PRESET_VALUE estiver ativa.
• CURRENT_VALUE : Byte de entrada para o processamento do valor. Em qualquer modo é feita
uma leitura a cada ciclo definido na janela de parametrização.

SAIDAS :

• OUTPUT : Saída discreta variando de 0 a 255. No modo digital, esta saída é gatilho para a entrada
CURRENT_VALUE. No modo PID, ela é uma saída proporcional integral derivativa com
parâmetros modificáveis.
• ALARM : O alarme é opcional. O usuário pode optar entre um alarme absoluto, isto é,
independente de qualquer mudança do valor de preset, ou um alarme relativo, o qual depende do
valor de preset.

Alarme absoluto : O usuário configure o valor. Quando o valor medido excede este valor, a saída
ALARM muda para o estado lógico 1.
Alarme relativo : O usuário configure a diferença. Quando o valor medido estiver fora da faixa do
valor de preset menos a diferença e valor de preset mais a diferença a saída ALARM muda para o
valor lógico 1. Os valores limites que definem a faixa são recalculados cada vez que o valor de preset
é mudado.

• CURRENT_PRESET_VALUE : Saída analógica para o valor de preset usado atualmente. Esta


saída pode assumir o valor da entrada PRESET_VALUE quando VALID_PRESET_VALUE estiver
ativa ou assumir o valor de preset da janela de parametrização VALID_PRESET_VALUE estiver
inativa ou não conectada.

PARÂMETROS:
• Type of Regulation: Discreto ou PID. Default : Discrete.
• Action : No modo Hot, a saída OUTPUT precisa ter um importante valor para alcançar o nível
requerido, que é o valor de preset que tem que estar acima do valor de temperatura medido. Este é o
modo padrão de regulação para radiadores. No modo Cold, a lógica de OUTPUT é ao contrário da
anterior. Ao longo do tempo em que OUTPUT está ativada, a mais baixa temperatura recebida torna-
se o valor de realimentação. Este é o modo de controle para sistemas do tipo refrigeradores. Os
parâmetros precisam ser definidos de acordo com o tipo de sistema a ser controlado. Configurações
incorretas levam a valores divergentes de temperatura.
• Preset Value : Este parâmetro define o valor de preset quando a entrada VALID_PRESET_VALUE
está inativa ou não conectada.
• Alarm Function: É a caixa para ativar ou desativar a função alarme. Quando ativada, provê acesso
as configurações particulares de alarme, ou seja, seu tipo (Absolute, relative), o nível de temperatura
para um alarme absoluto ou a faixa de temperatura para um alarme relativo. A largura total da faixa é
o dobro da diferença, desde que a diferença seja aplicada acima e abaixo do valor de preset.
Formando uma faixa dentro da qual o alarme relativo não é disparado. Os valores de inibição
definem o retardo de tempo que deve ser considerado até disparar o alarme. Este contador começa a
contar quando uma borda de subida ocorre na VALIDADION INPUT. Quando o tempo de retardo
chega ao fim o alarme começa ser considerado.

BP : banda proporcional.
dt : período de amostragem
Ti : coeficiente de integração
Td : coeficiente de derivação
Existem dois modos possíveis de regulagem:
PID: com algoritmo de controle configurável. A saída OUTPUT é uma valor analógico variando
entre 0 e 255.
Digital: operação idêntica a de um gatilho que dispara quando o valor superior é igual ao valor de
setado + BP/2 % do valor setado e o valor inferior é igual ao valor setado - BP/2 % do valor setado.
Se 'CURRENT_VALUE' > 'limite superior' a saída de controle OUTPUT está permanentemente
setada em ON. Se 'CURRENT_VALUE' < 'limite inferior' a saída de controle está permanentemente
em OFF.
ATENÇÃO: Em ambos os modos, a ação proporcional é definida pela banda proporcional, isto
significa que para o valor baixo de PRESET_VALUE (próximo de zero), a precisão pode ser muito
ruim. É aconselhável utilizar o PRESET_VALUE para o valor superior e inferior entre -32768...0 e
0...32768.

- Função PID PWM: esta função permite um controle PID sobre uma variável com saída PWM.

ENTRADAS:

• VALIDATION : Entrada para validação da função. Esta entrada ativa todas as funções. A função
permanece desabilitada até que esta entrada seja colocada em ON. Se ela não for conectada, ela é
considera em ON.
• VALID_PRESET_VALUE : Quando ativa, esta entrada valida a entrada PRESET_VALUE. Se
estiver desativa o valor parametrizado é usado.
• PRESET_VALUE : Byte de entrada para utilização de valor externo de preset. Esta entrada é
levada em conta somente quando a entrada VALID_PRESET_VALUE estiver ativa.
• CURRENT_VALUE : Byte de entrada para o processamento do valor. Em qualquer modo é feita
uma leitura a cada ciclo definido na janela de parametrização.

SAIDAS :

• OUTPUT : Saída discreta variando de 0 a 255. No modo digital, esta saída é gatilho para a entrada
CURRENT_VALUE. No modo PID, ela é uma saída proporcional integral derivativa com
parâmetros modificáveis.
• ALARM : O alarme é opcional. O usuário pode optar entre um alarme absoluto, isto é,
independente de qualquer mudança do valor de preset, ou um alarme relativo, o qual depende do
valor de preset.

Alarme absoluto : O usuário configure o valor. Quando o valor medido excede este valor, a saída
ALARM muda para o estado lógico 1.
Alarme relativo : O usuário configure a diferença. Quando o valor medido estiver fora da faixa do
valor de preset menos a diferença e valor de preset mais a diferença a saída ALARM muda para o
valor lógico 1. Os valores limites que definem a faixa são recalculados cada vez que o valor de preset
é mudado.

• CURRENT_PRESET_VALUE : Saída analógica para o valor de preset usado atualmente. Esta


saída pode assumir o valor da entrada PRESET_VALUE quando VALID_PRESET_VALUE estiver
ativa ou assumir o valor de preset da janela de parametrização VALID_PRESET_VALUE estiver
inativa ou não conectada.

PARÂMETROS
• Type of Regulation: Discreto ou PID. Default : Discrete.
• Action : No modo Hot, a saída OUTPUT precisa ter um importante valor para alcançar o nível
requerido, que é o valor de preset que tem que estar acima do valor de temperatura medido. Este é o
modo padrão de regulação para radiadores. No modo Cold, a lógica de OUTPUT é ao contrário da
anterior. Ao longo do tempo em que OUTPUT está ativada, a mais baixa temperatura recebida torna-
se o valor de realimentação. Este é o modo de controle para sistemas do tipo refrigeradores. Os
parâmetros precisam ser definidos de acordo com o tipo de sistema a ser controlado. Configurações
incorretas levam a valores divergentes de temperatura.
• Preset Value : Este parâmetro define o valor de preset quando a entrada VALID_PRESET_VALUE
está inativa ou não conectada.
• Alarm Function: É a caixa para ativar ou desativar a função alarme. Quando ativada, provê acesso
as configurações particulares de alarme, ou seja, seu tipo (Absolute, relative), o nível de temperatura
para um alarme absoluto ou a faixa de temperatura para um alarme relativo. A largura total da faixa é
o dobro da diferença, desde que a diferença seja aplicada acima e abaixo do valor de preset.
Formando uma faixa dentro da qual o alarme relativo não é disparado. Os valores de inibição
definem o retardo de tempo que deve ser considerado até disparar o alarme. Este contador começa a
contar quando uma borda de subida ocorre na VALIDADION INPUT. Quando o tempo de retardo
chega ao fim o alarme começa ser considerado.

BP : banda proporcional.
dt : período de amostragem
Ti : coeficiente de integração
Td : coeficiente de derivação
Existem dois modos possíveis de regulagem:
PID: com algoritmo de controle configurável. A saída OUTPUT é uma valor analógico variando
entre 0 e 255.
Digital: operação idêntica a de um gatilho que dispara quando o valor superior é igual ao valor de
setado + BP/2 % do valor setado e o valor inferior é igual ao valor setado - BP/2 % do valor setado.
Se 'CURRENT_VALUE' > 'limite superior' a saída de controle OUTPUT está permanentemente
setada em ON. Se 'CURRENT_VALUE' < 'limite inferior' a saída de controle está permanentemente
em OFF.
ATENÇÃO: Em ambos os modos, a ação proporcional é definida pela banda proporcional, isto
significa que para o valor baixo de PRESET_VALUE (próximo de zero), a precisão pode ser muito
ruim. É aconselhável utilizar o PRESET_VALUE para o valor superior e inferior entre -32768...0 e
0...32768.

- Função especial de espera de um passo de Grafcet: Esta função é usada para ajustar uma fase ou uma
etapa de espera para um PLC ou um dispositivo.

Se houver uma validação ode etapa em STEP INPUT 1 ou STEP INPUT 2, este é imediatamente
armazenado na função e a saída STEP OUTPUT comuta para ON.

Este sinal permanece armazenado no STEP durante o tempo definido em WAIT TIME na janela de
parametrização. Neste momento é disparada a transição. A saída STEP OUTPUT é setada para OFF e o
sinal de passagem de passo é colocado em STEP TRANSITION OUTPUT. Se não houver nenhuma
sinalização nas entradas e o STEP ainda não contém a sinalização de espera, o STEP permanece vazio e a
saída permanece em OFF.

- Função movimentação de motores em Grafcet (MOVE SFC): esta função é usada para setar um motor
controlado pelo CLP para uma rotação especificada na entrada TARGET.

O motor é controlado pelas seguintes 3 saídas (simbolizadas em verde/azul/vermelho no ícone):


ON (0 ou 1): O motor parte quando o sinal ON está em 1. Em qualquer outra situação ele pára (com
frenagem opcional de acordo com a configuração).
DIRECTION (0 ou 1): Indica a direção da rotação do motor (1 = sentido horário, 0 = sentido anti-horário).
SPEED (0 to 30000): Indica a velocidade do motor em RPM.

Nota 1: Quando vários passos de movimento estão ligados, é possível combinar seus sinais de controle de
motor usando a função MOTOR MULTIPLEXER.

O movimento consiste de 5 passos:

Aceleração para HIGH SPEED (parâmetros ACCELERATION e HIGH SPEED)


Platô de velocidade constante quando o motor atinge a rotação correta (parâmetro APPROACH)
Desaceleração para LOW SPEED (parâmetros DECELERATION e LOW SPEED)
Reduz a velocidade quando o motor está próximo da rotação desejada (entrada TARGET)
Parada na rotação desejada. Transição para o próximo passo de Grafcet.

Parâmetros de movimento:

HIGH SPEED (0 até 30000): Indica a velocidade alta em RPM (ver nota 2)
LOW SPEED (0 to 30000): Indica a velocidade baixa em RPM (ver nota 2)

Nota 2: No sentido de trazer a velocidade de saída dentro da faixa PWM range [0..255], um bloco de GAIN
precisa ser inserido logo antes da saída analógica controlada pela velocidade do motor. Este bloco tem que
ser seta em 255/N onde N é a velocidade máxima do motor.

ACCELERATION (0 to 2767): Indica o incremento na velocidade a cada ciclo de CLP (ver nota 3)
DECELERATION (0 to 2767): Indica o decremento na velocidade em cada ciclo de CLP (ver nota 3).

Nota 3: O CLP padrão possui um ciclo de 10 ms. Setando a aceleração para 10, o motor será acelerado em
10 RPM a cada ciclo (10 ms), ou seja, de 0 a 1000 RPM em 1 s. Se o ciclo for de 20 ms, então o motor
acelera de 0 para 1000 RPM em 2 s.

APPROACH (0 to 32767): Indica a distância antes de atingir a rotação desejada na qual o motor desacelera
para então atingir esta posição. É como se fosse uma súbita desaceleração quando o alvo está próximo.
TARGET (-32768 to 32767): Indica o valor a ser alcançado na entrada POSITION para que o movimento
seja considerado completado.
Se estiver presente uma sinalização em STEP INPUT 1 ou em STEP INPUT 2 indicando que a etapa
anterior do Grafcet foi concluída, esta sinalização é imediatamente gravada na função, comutando a saída
para ON e controlando o motor para 1.
Esta sinalização permanece armazenada até que o movimento do motor seja completado. Quando isso
acontece a sinalização desaparece deste STEP. A saída ON é setada para 0 e a sinalização é então disponível
na saída STEP TRANSITION OUTPUT e pode ser armazenada no STEP ou nos STEPs conectados na
seqüência do software.
Dependendo da opção DIRECTION OF MOVEMENT, o movimento pode ser realizado das seguintes
maneiras:
ASCENDING DIRECTION: A saída DIRECTION está em 1, o movimento somente ocorre se o valor
TARGET é maior do que o valor POSITION, até que a rotação TARGET seja alcançada. Quando o valor
POSITION é maior do que o valor TARGET, o movimento é imediatamente considerado completado.
DESCENDING DIRECTION: A saída DIRECTION está em 0, o movimento somente ocorre se o valor
TARGET é menor do que o valor POSITION, até que a rotação TARGET seja alcançada. Quando o valor
POSITION é menor do que o valor TARGET, o movimento é considerado completado.
AUTOMATIC DIRECTION: A saída DIRECTION está em 1 ou em 0, dependendo se o valor TARGET é
maior ou menor do que o valor POSITION. O movimento é completado quando o valor POSITION retorna
o valor TARGET.
Note 3: Está função é baseada na convenção de que DIRECTION = 1 faz com que a rotação do motor
incremente o valor do valor POSITION e vice versa.
CUIDADO, se a convenção não for respeitada o motor poderá aumentar sua rotação infinitamente causando
grandes problemas ao sistema.
Não há nenhuma garantia de que esta função funcione corretamente quando a velocidade de saída do motor
é forçada a valores maiores de que 30000 RPM.

- Função multiplexação de motores (MOTOR MULTIPLEXER): esta função foi desenvolvida para
conectar os sinais de controles produzidos por dois blocos de movimentação de motores em Grafcet;

O motor é controlado pelos seguintes 3 sinais (simbolizados em verde/azul/vermelho no ícone).


ON (0 ou 1): O motor parte quando o sinal ON está em 1. Em qualquer outra situação ele pára (com
frenagem opcional de acordo com a configuração).
DIRECTION (0 ou 1): Indica a direção da rotação do motor (1 = sentido horário, 0 = sentido anti-horário).
SPEED (0 to 30000): Indica a velocidade do motor em RPM.

Nota 1: Quando mais do 2 passos MOVE SFC são ligados, é possível combiná-los através de cascateamento
de vários blocos MOTOR MULTIPLEXER. Os 3 sinais de controle do motor ma saída do multiplexador
combinam-se com os primeiros 2 passos são, por sua vez, combinados com os 3 sinais produzidos pelo
terceiro step.

Nota 2: No sentido de trazer a velocidade de saída dentro da faixa PWM range [0..255], um bloco de GAIN
precisa ser inserido logo antes da saída analógica controlada pela velocidade do motor. Este bloco tem que
ser seta em 255/N onde N é a velocidade máxima do motor.

Esta função combina as entradas ON1, DIRECTION1 and SPEED1 do primeiro motor com as entradas
ON2, DIRECTION2 and SPEED2 do segundo motor.
Na saída:

ON está em 1 se ao mesmo uma das entradas (ON1 ou ON 2) estiver em 1.


Se ON1 está em 1 e ON2 está em 0, DIRECTION e SPEED correspondem as entradas DIRECTION1 e
ON1.
Se ON2 está em 1 e ON1 está em 0, DIRECTION e SPEED correspondem as entradas DIRECTION2 e
ON2.
Se ON1 e ON2 possuem o mesmo valor, então DIRECTION = 0 e SPEED = 0
Nota 3: Em princípio, para o mesmo motor, só pode haver um passo MOVE SFC ativo ao mesmo tempo. Se
vários passos estiverem combinados em cascata de blocos MOTOR MULTIPLEXER vários desses blocos
estarão ativos simultaneamente, então a saída do último bloco terá os seguintes valores: ON=1,
DIRECTION=0 e SPEED=0, que previne movimentos em falso do motor.

- Função memória (MEM): esta função é utilizada para salvar valores entre -32768 e 32767.

O valor armazenado está permanentemente disponível na saída OUTPUT.


No momento da energização do CLP o valor armazenado depende da opção escolhida na janela de
parametrização.
Se “Save on power break” estiver em ON, então o último valor salvo antes de uma queda de energia será
deletado e o valor guardado será 0. Se “Save on power break” estiver em YES, então o último valor salvo
antes de uma queda de energia será mantido e será o valor da inicialização quando o sistema for novamente
energizado.
Quando a entrada ARCHIVE mudado 0 para 1, o valor salvo é deletado e em seu lugar é armazenado um
novo valor que é o que estiver presente na entrada INPUT.
Este valor permanece congelado, mesmo que haja alteração na entrada INPUT, até a próxima vez em que a
entrada ARCHIVE mudar de 0 para 1. Quando a entrada ARCHIVE volta para 0 o valor armazenado é
mantido.
Quando a entrada RESET TO ZERO muda de 0 para 1, o valor salvo é deletado e em seu lugar é colocado o
valor 0. Esta entrada tem prioridade sobre a entrada ARCHIEVE. Enquanto a entrada RESET TO ZERO
permanecer em 1, o valor armazenado permanecerá em 0, mesmo que haja alguma transição na entrada
ARCHIEVE.
Quando a entrada RESET TO ZERO retorna a 0, o valor salvo permanecerá em 0 até que ocorra uma
transição de 0 para 1 na entrada ARCHIVE.
- Função contador de alta velocidade (FAST COUNT): Esta função conta pulsos na entrada I1 a uma taxa
superior a 100 Hz.

O valor da entrada I2 determina a direção da contagem. Se I2 estiver em 1, quando ocorrer uma borda
positiva em I1 o contador é incrementado. Se I2 estiver em 0, o contador é decrementado na mesma
condição citada antes. Não é necessário fazer nenhuma conexão entre os pinos I1 e I2 e outras funções do
contador rápido já que isto é implícito.

Entradas:
- INHIBITION : Quando esta entrada estiver em 1 os pulsos na entrada I1 não são contados.
- RESET : A situação atual do contador é ressetada para zero que esta entrada for para 1.
Qualquer entrada não conectada possui, por default, o valor neutro zero.

Saídas:
- POSITION : Valor corrente de contagem.
- SPEED : Número de pulso sobre N vezes 100 ms, onde N é o parâmetro período.

Janela de configuração:
- PERIOD :Período utilizado para a contagem dos pulsos
- SAVE ON POWER BREAK: Escolhe se a função é ou não reinicializada após uma queda de energia.
Nota: A comunicação entre o PC e o CLP, as setagens, as funções do display, etc podem distorcer as
medições. Esta função está disponível somente em CLP alimentados em 12 VCC ou 24 VCC. Esta função
não pode ser simulada.
Limitações relacionadas a duração do ciclo de tempo do sinal:
As características internas do Millenium 3 impõem um limite ao número de eventos capturados a cada ciclo
de trabalho. Este limite é de 72 eventos e não pode ser alterado.
As freqüências mostradas nas tabelas abaixo correspondem a freqüência média do sinal que pode ser
capturado e armazenado em cada ciclo. Para valores menores e/ou ciclos de tempo mais longos, isto
possibilita grandes variações instantâneas nas condições em que a freqüência média dentro de 1 ciclo
permanece sistematicamente abaixo da mostrada na tabela.

Duração do ciclo de tempo:

Duração do ciclo de tempo 6ms 10ms 20ms 30ms 40ms 50ms


Máx. freq. de entrada 12.0KHz 7.2KHz 3.6KHz 2.4KHz 1.8KHz 1.44KHz

Considerando a velocidade como sendo uma saída de 16-bit com sinal, a tabela abaixo mostra a período
máximo que pode ser utilizado sem riscos de sobreposição.

Freq. nominal de entrada 12.0KHz 7.2KHz 3.6KHz 2.4KHz 1.8KHz 1.44KHz


Período máximo para o cálculo da 27 45 91 136 182 227
velocidade (x 100 ms)

Limitações relacionadas ao equipamento:

A eletrônica da contagem para aquisição de sinais apresenta um limite de freqüência máxima que pode ser
aplicada a cada entrada. Para um dado tipo de MACH3, esta freqüência dependerá da forma do sinal de
entrada. Na tabela abaixo 2 exemplos para os padrões XD26 24VDC são apresentados. VH é a voltagem que
gera o nível lógico 1 e VLogic o nível 0. É assumido que o gerador dirige os sinais nas entradas em perfeito
estado: saída com impedância zero, menor fiação possível (alguns centímetros), tempo de subida muito
pequeno......

Níveis Min. VL Max. VL Min. VH Max. VH


Max. F (Hz) Typ. F (Hz)
lógicos (Volts) (Volts) (Volts) (Volts)
Modulo
0 5 15 28.8 775 2000
padrão
Adaptado ao
0 1 17.5 24 2775 4550
contador

Max. F é a frequência máxima do sinal de entrada onde a operação é garantida.


Typ. F é a frequência de entrada tolerado pelos CLPs a uma temperatura ambiente de 25°C.
Os valores típicos dados acima são para orientação. Estatisticamente, a maioria dos CLPs porém não é
possível assegurar que não haja diferenças entre os CLPs.

Características do sinal de entrada em I1:

O tempo de subida tr e o tempo de descida tf são de 1µs. Suas extensões precisam ser consideradas para
determinar a máxima freqüência que pode ser aplicada ao CLP.
A relação cíclica entre o tempo no estado alto e o tempo no estado baixo tem que ser 1 para sinais com mais
de 775 Hz. Abaixo deste valor o tempo entre o estado alto e o estado baixo pode ser maior do que 650µs.

O sinal na entrada I2 usada para determinar a direção de contagem tem que estar presente por, pelo menos,
325 µs antes e depois da borda de contagem na entrada I1.
VISTA GERAL DA TELA DE PROGRAMAÇÃO
Linguagens usadas: Ladder (LD) ou Blocos funcionais (FBD)
A linguagem Ladder é uma linguagem gráfica. Ela é utilizada como diagramas de reles e é própria para
processos combinacionais.
Exemplo de linguagem Ladder:

A linguagem FBD permite programação gráfica com a utilização de blocos com funções pré-definidas.
Exemplo de linguagem FBD:

Há vários modos de operação do software:


Modo edição: Este modo é usado para fazer o software.
Modo simulação: Neste modo o programa é simulado na tela
Modo de monitoração: Neste modo o programa é executado no CLP e é possível acompanhar o
processamento na tela do computador.

CRIAÇÃO DE UM NOVO APLICATIVO:


No menu principal, escolha File, selecione o tipo de CLP a ser usado e depois selecione a linguagem a ser
usada. Neste momento você já está na tela de início de um novo software. Agora tudo depende da lógica que
você quer implementar.
Procedimento para criação de uma aplicação:
Passo Ação
1 Selecione o menu File ® New.
Resultado: Aparece a janela com os modelos de CLPs
2 Escolha o seu CLP de acordo com a sua aplicação.
Resultado: Aparece os vários tipos de CLPs disponíveis.
3 Selecione o CLP com um duplo click sobre o modelo escolhido.
Resultado: As seguintes opções estão disponíveis neste estágio:
Se o CLP não suporta expansão, ir direto ao passo 6.

Se o CLP suporta expansão, 2 duas novas zonas de escolha aparecem


Seleção corrente: Resumo do que foi escolhido nos passos 2 e 3.

Expansões possíveis: Lista das extensões que podem ser utilizadas com o CLP
escolhido.
4 Selecionar a expansão com um duplo click
Resultado: è seleciona da a expansão. A expansão pode ser removida selecionando-a e dando
um delete.
Nota: A expansão XE10 24VDC é expansível. Se esta for escolhida é possível depois
escolher mais uma.
5 Confirmar a configuração pressionando no botão Next
Resultado: O tipo de configuração aparece na janela de edição
6 Para escolher o tipo de programação clique em Next.

7 Escolha entre Ladder ou FBD.

Procedimento para alterar uma configuração escolhida:


Passo Ação
1 Clique no menu : Controller ® Choose the type of controller...
Resultado: Aparecem os vários modelos de CLP disponíveis
2 Faça as modificações de seu interesse
3 Confirme as alterações
Resultado: A página de edição é mostrada com a nova configuração.

COMO CONECTAR O CLP AO COMPUTADOR:

Esta conexão pode ser feita via porta serial, USB, Bluetooth ou modem. Após feita a conexão é necessário
configurar a porta. Proceder da seguinte maneira:

Passo Ação
1 Abra a janela de conexão no menu principal: Controller ® Configure ® Connection.
2 Escolha o tipo de conexão
Se for Modem:
Especificar:
O modem do PC a ser usado na conexão

O nome da estação remota


Porta de Comunicação:
Especificar o tipo de porta:
COM1

COM2

USB

Nota: Nos seguintes casos pode ser necessário escrever "COMx" (quando x> 2):
Usando um laptop com USB

Usando um conversor USB-SERIAL (O Win XP aloca a COM6 ou COM8 para este


periférico)
Usando Bluetooth (especificar qual porta está especificada para este dispositivo)

3 Confirme a seleção pressionando ENTER ou OK

Testando a conexão:
Para testar use o botão Test Button.
Neste caso o software tentará fazer a conexão com os parâmetros correntes. Se a conexão não estiver correta
aparece uma mensagem de erro, dizendo que não há resposta do CLP.

TRANSFERINDO UM APLICATIVO PARA O CLP:


Selecione no menu principal: Controller Æ Write to controller.
Este comando abre a janela de Compilation results. Se o resultado da compilação for Compilation
succesfull, então a aplicação é transferida para o CLP. Se não for essa mensagem de compilação a aplicação
não é transferida para o CLP e aparece uma mensagem de erro com um número de erro.
A transferência não será possível nas seguintes condições:
- Se houver senha e esta tiver sido informada errada.
- Se a transferência for interrompida.

A aplicação será gravada no CLP nas seguintes situações:


- O CLP não contém nenhum programa.
- O CLP contém um programa protegido por senha e esta for informada corretamente quando solicitada.

No final da transferência aparecerá uma tela perguntando se o usuário quer proteger a aplicação com senha.
ATENÇÃO: Se o software for protegido por senha, esta deverá ser informada corretamente em futuras
edições deste programa.

Para excluir toda a programação do CLP, selecione no menu principal: Controller Æ Clear the contents of
the controller
Para acertar o relógio interno do CLP, selecione no menu principal: Controller Æ Read/write date and time e
faça as correções necessárias.

Para gravar uma nova versão do software:

Passo Ação
1 Clique no Menu: Controller ® Update the controller software
2 Selecione o software a ser enviado no menu de seleção.
3 Valide a transferência pressionando Write.
Resultado: O novo software já está no CLP
INICIALIZANDO UM APLICATIVO NO CLP:

A forma como o aplicativo é inicializado vai sempre depender da lógica adotada na programação. Esta
lógica pode prever a inicialização direta na energização (semáforos, por exemplo), ou inicialização ao se
pressionar um botão, ou inicialização pressionando uma tecla do CLP. A consideração mais importante com
relação a forma de inicialização de um aplicativo está na segurança que o sistema deve apresentar aos
usuários.

4. GRAFCET

Grafcet é uma técnica de representação de sistemas baseada em diagramas gráficos, derivada das Redes de
Petri. Além de representar o processo o Grafcet é também uma linguagem de programação de CLPs, o que o
torna muito prático. Na verdade o Grafcet é a modelagem do sistema e também a programação de CLP,
motivo pelo qual vê se popularizando e já é um padrão entre os fabricantes de CLPs europeus.

Características do Grafcet:

· Facilidade de interpretação
· Modelagem do seqüenciamento
· Modelagem de funções lógicas
· Modelagem da concorrência
· Origem na França nos meados dos anos 70
· Norma IEC 1131-3
· Fabricantes de CLP adotam o Grafcet como linguagem de programação
· Também denominado SFC (Sequencial Functional Charts)

Elementos de um Grafcet: etapas, transições, arcos, receptividade, ações e regras de evolução.

AÇÃO
TRANSIÇÃO
RECEPTIVIDADE

ETAPA

No CLP Millenium os comandos do Grafcet são encontrados na aba SFC e possuem algumas adaptações em
relação ao Grafcet convencional.

Funções Grafcet do Millenium 3:


Estrutura dos softwares Grafcet

Os softwares escritos em Grafcet sempre iniciam com a etapa inicial e depois, em uma seqüência lógica,
passam de etapa em etapa até chegar ao final. A seguir um exemplo simples de como seria um software
escrito em Grafcet.
Existem também as etapas de divergência e de convergência que servem para abrir ou fechar diferentes
caminhos.

- Divergência em OR (OU): este bloco produz dois caminhos de saída a partir de um caminho de entrada.
Cada um dos dois caminhos é ativado por uma entrada própria. Quando uma das entradas de um dos
caminhos for ativada, o acminho correspondente a essa entrada é ativado e o outro não pode mais ser ativado
porque a entrada da divergência não está mais ativa. Se as duas entradas de ativação forem ligadas juntas,
então os dois caminhos são ativados ao mesmo tempo e tem-se duas etapas ativas, uma em cada caminho.

- Divergência em AND (E): este bloco produz dois caminhos de saída a partir de dois caminhos de entrada.
A ativação dos dois caminhos de saída é simultânea e só ocorre quando os dois caminhos de entrada
estiverem ativos ao mesmo tempo.

- Convergência OR (OU): este bloco junta dois caminhos de entrada em um único caminho de saída. A
ativação da saída ocorre quando qualquer um dos dois caminhos de entrada, ou os dois juntos, estiverem
ativos.

- Convergência AND (E): este bloco possibilita a transição de duas etapas simultaneamente através uma
etapa.
Se INPUT 1 ou INPUT 2 está ativo, então STEP OUTPUT 1 OF CONVERGENCE TO AND é ativado e
permanece ativo mesmo depois que as entradas tiverem sido desabilitadas.
Se INPUT 3 ou INPUT 4 está ativo então STEP OUTPUT 2 OF CONVERGENCE TO AND é ativado e
permanece ativo mesmo depois que as entradas tiverem sido desabilitadas.
Se STEP OUTPUT 1 OF CONVERGENCE TO AND e STEP OUTPUT 2 OF CONVERGENCE TO AND
estão ativas e o pulso de entrada de ativação também estiver, então:
STEP OUTPUT 1 e STEP OUTPUT 2 OF CONVERGENCE TO AND são desativados,
e TRANSITION OUTPUT é ativada.
Se nenhuma dessas entradas estiverem ativas, então STEP OUTPUT 1 e STEP OUTPUT 2 OF
CONVERGENCE TO AND ficam inativos.
Se a entrada TRANSITION está ativa mas STEP OUTPUT 1 ou STEP OUTPUT 2 OF CONVERGENCE
TO AND estiverem inativas, STEP OUTPUT 1 ou STEP OUTPUT 2 OF CONVERGENCE TO AND não
muda de estado a TRANSITION OUTPUT permanece inativa.

Exemplo 1: Um sistema seqüencial de bombas é composto de 3 bombas acionadas pelos motores elétricos
M1, M2 e M3, através de três botoeiras, uma para cada motor. A ordem de acionamento dos motores deve
ser sempre seqüencial M1, M2 e M3, isto para balancear a utilização de cada bomba. Assim, depois de M1
ter sido utilizada, entra M2 e depois entra M3 e aí volta para M1. Sempre seguindo essa lógica circular.
Duas bombas nunca podem estar ligadas ao mesmo tempo.
Possível solução:

Observe que o sistema inicia pela etapa inicial B06 e segue até a última etapa B16 (A numeração não precisa
seguir uma sequencia natural). CG é uma chave liga desliga, ou seja, após ligada ela deve permanecer ligada
até que seja dado outro click sobre ela. As botoeiras são do tipo push Button, ou seja, deve-se dar dois clicks
sobre elas para simular o liga-desliga das chaves push Button. Quando o sistema é desligado, o ciclo de
trabalho é completado e então as bombas não ligam mais, a não ser que a chave geral seja novamente
liberada.

Este sistema não é muito seguro porque ao ser acionada a chave geral todas as bombas. deveriam parar de
imediato, mas serve para ilustrar uma primeira aplicação do Grafcet.

Observe que a etapa seguinte só é liberada após enviado o sinal à etapa anterior informando que esta foi
concluída. Em cada etapa podemos ter associado um conjunto de comandos lógicos que podem incluir
funções booleanas, temporizadores, etc.

Receptividade
É a função lógica combinacional associada a cada transição. Quando em estado lógico verdadeiro, irá
habilitar a ocorrência de uma transição válida.
Uma receptividade é associada a:
· Variáveis lógicas oriundas de sinais de entrada do sistema
· Variáveis internas de controle
· Resultado da comparação de contadores e temporizadores
· Informação do estado de uma outra etapa
· Condicionada a uma determinada situação do Grafcet

Exemplo 2: Projetar um Grafcet para comanda 2 motores em sequencia. O sistema deve partir através de
uma botoeira do tipo liga-desliga (2 posições). O motor M1 deve funcionar durante 5 s e aí ele para e o
motor M2 inicia o seu ciclo, também de 5 s. Completados os 5 s do motor M2 inicia o motor M1 e assim por
diante. O sistema para quando a botoeira de partida é desliga, porém, antes de parar o ciclo é completado.

Possível solução:
O bloco TIMER é encontrado na aba FBD do software do Millenium. Clicando 2 vezes sobre eles pode-se
setar o tempo que se deseja que permaneça atuando até passar o comando ao outro motor. Note que a
unidade utilizada é x100ms, ou seja 0,1s. Assim se quiser 5 s é necessário digitar 50 dentro da caixa de
digitação. Observe que após dada a partida o sistema continua infinitamente comutando entre o motor M1 e
o motor M2 até que a botoeira liga-desliga seja desligada. Observe também que é impossível ligar M2 sem
que M1 tenha completado o seu ciclo. Esse é princípio fundamental do Grafcet: as etapas são organizadas no
tempo.

Exemplo 3: Uma máquina é utilizada para estampar peças. A matéria prima é retirada de um rolo de fita
metálica. Esta fita é empurrada por um motor até que o sensor S1 detecta que a fita está na posição correta.
Neste instante o cilindro C1 desce e estampa a peça durante 2 segundos. Em seguida o cilindro C1 volta à
posição inicial. Quando o cilindro chega a posição inicial um sopro de ar vindo do bico de ar comprimido
B1 expulsa a peça. A duração deste sopro é de 1 s. Depois de encerrado o jato de ar comprimido o processo
se repete enquanto a máquina estiver ligada (chave L1) ou enquanto houver material (sensor S2). Faça um
software em grafcet para o Millenium deste processo.

CILINDRO
C1
BICO DE
MATÉRIA AR B1
PRIMA

MOTOR
M1

S2 S1

Solução:
Todos os exemplos mostrados até agora são de estrutura única, ou seja, seguem apenas um caminho.
Existem também a possibilidade de criar-se estruturas paralelas com seleção OR ou AND. O exemplo a
seguir apresenta uma seleção OR, onde o usuário deve escolher entre dois caminhos. O caminho não
escolhido não é executado.

Exemplo 4: Uma máquina automática serve chá ou refrigerante. Os clientes precisam pressionar uma tecla
indicando o que desejam e com base na escolha a máquina aciona a bomba de um dos dois produtos.
Desenvolver um Grafcet para este sistema.

Solução:

Note que neste exemplo temos uma chave geral que, se acionada, trava a máquina. Essa chave foi utilizada
junto com o bloco inicial com resset. Em seguida uma divergência em OR seleciona entre chá ou
refrigerante. O timer determina qual o tempo em que a bomba de cada um dos produtos fica ligada.
Finalmente uma convergência em OR retorna o sinal para um novo ciclo.
CONCLUSÃO: A técnica Grafcet é realmente uma poderosa ferramenta para a modelagem de sistemas
seqüenciais em CLPs. Esta apostila apresentou o Grafcet aplicado ao CLP Millenium 3 de um modo simples
e sem se ater a profundos detalhes. Esse aprofundamento é adquirido pelo programador ao longo do tempo e
vem sempre com a experiência adquirida nos vários trabalhos realizados.
A equipe CCA está sempre a disposição para esclarecer dúvidas e auxiliar os usuários sempre que possível.