Escolar Documentos
Profissional Documentos
Cultura Documentos
Num bloco de função deve-se estar atento à simbologia que se emprega para cada
sinal de entrada quanto ao tipo de sensibilidade. Conforme o caso pode ser sensível a nível
(alto ou baixo) ou por borda (de subida ou de descida). Veja a ilustração a seguir, onde o
bloco OR é sensível: ao nível lógico alto da variável SINAL_1, ao nível lógico baixo da
variável SINAL_2, à borda de subida da variável SINAL_3, e à borda de descida da
variável SINAL_4.
Devido à sua complexidade, algumas funções exigem um bloco para poderem ser
representadas, é o caso de temporizadores, contadores e outras, conforme será apresentado
nas seções seguintes.
BLOCOS BIESTÁVEIS
TEMPORIZADORES
Após o início do pulso, a saída fica em nível baixo durante o tempo especificado na
entrada PT; depois irá para nível alto enquanto a entrada IN não volte ao nível baixo. A
saída ET apresenta o valor do tempo decorrido desde o início da temporização. Caso a
entrada IN seja colocada em nível alto por um período de tempo inferior ao tempo
programado, a saída Q não atua. O diagrama temporal a seguir demonstra o comportamento
desta função.
Figura 8 - Diagrama temporal do temporizador TON
Neste caso a saída vai para nível alto durante todo o tempo em que a entrada IN fica
ligada, permanecendo ainda ligado por um tempo após o desligamento da entrada IN. O
tempo de retardo para desligar é definido pelo valor especificado na entrada PT. A saída ET
apresenta o valor do tempo decorrido desde o início da temporização. Caso a entrada IN
seja recolocada em nível alto antes de ter decorrido a temporização, a saída Q não chega a
desligar. O diagrama temporal a seguir demonstra o comportamento desta função.
Figura 10 - Diagrama temporal para o temporizador TOF
Figura 11 - Temporizador TP
Neste caso, quando a entrada IN vai para nível alto, a saída Q vai para nível alto e
permanece neste nível durante o tempo especificado na entrada PT, independente do estado
da entrada IN. A saída ET será incrementada enquanto Q estiver em nível alto. Ao final do
pulso, o tempo decorrido será mantido até o início do próximo pulso.
Figura 12 - Diagrama temporal para o temporizador TP
CONTADORES
a) Contador crescente
1, seCV ≥ PV
Q=
0, seCV < PV
CV ← (CV + 1)∀ ↑ CU
R = 1 ⇒ CV = 0
Para o exemplo anterior deve-se observar que o valor de contagem é zerado todas as
vezes que a entrada R do contador é colocada em nível alto. Por outro lado a saída Q do
cantador vai a nível alto toda vez que o valor de contagem for maior ou igual a cinco, cujo
valor foi programado na entrada PT.
b) Contador decrescente
1, seCV ≤ 0
Q=
0, seCV > 0
CV ← (CV − 1)∀ ↑ CD
LD = 1 ⇒ CV = PV
O diagrama temporal a seguir exemplifica o comportamento do contador
decrescente.
c) Contador bidirecional
1, seCV ≥ PV
QU =
0, seCV < PV
1, seCV ≤ 0
QD =
0, seCV > 0
CV ← (CV + 1)∀ ↑ CU
CV ← (CV − 1)∀ ↑ CD
R = 1 ⇒ CV = 0
LD = 1 ⇒ CV = PV
DETECTORES DE BORDA
REGISTRADORES
Os registros são conjuntos de bits agrupados de forma a configurar uma das cadeias
descritas no Quadro 5 do capítulo 1. Independente do tipo de dado que representam, estas
cadeias podem ser operadas por funções de grande utilidade na programação de máquinas.
Entre estas funções destacam-se as rotações e deslocamentos de registros.
Uma rotação de registro consiste em deslocar à direita ou à esquerda todos os bits do
registro de forma como se fosse um anel fechado, onde o primeiro bit recebe o conteúdo do
último bit. No exemplo a seguir é mostrado a rotação à direita (e logo após) à esquerda de
uma cadeia de 8 bits.
Cadeia Inicial 1 0 0 0 1 1 0 1
Rotação à esquerda 0 0 0 1 1 0 1 1
Rotação à direita 1 1 0 0 0 1 1 0
Cadeia Inicial 1 0 0 0 1 1 0 1
Deslocamento à esquerda 0 0 0 1 1 0 1 0
Deslocamento à direita 0 1 0 0 0 1 1 0
Uma característica peculiar das operações de deslocamento refere-se ao fato que, caso a
cadeia represente um número inteiro sem sinal, deslocar à esquerda equivale a uma
multiplicação por 2 e, deslocar à direita equivale a uma divisão por dois. Para o caso do
exemplo anterior a cadeia inicial representa o número 114, então facilmente se verifica que
a nova cadeia deslocada à esquerda representa o número 228, enquanto à nova cadeia
deslocada à direita representa o número 57. As representações para todos os blocos de
deslocamento e de rotação estão apresentadas nas quatro ilustrações a seguir.
a) Rotação à esquerda
b) Rotação à direita
Figura 22 - Bloco de função para rotacionar à direita
c) Deslocamento à esquerda
d) Deslocamento à direita
COMPARADORES