Algumas considerações elementares sobre encoders e quadrature encoders.
Os encoder’s são codificadores incrementais que permitem determinar movimentos pela contagem de pulsos.
Existem dois tipos fundamentais de encoders, independentemente da tecnologia de leitura usada.
- Os encoders simples, com um canal de saída, permitem conhecer a velocidade de rotação de um eixo, mas nada dizem sobre o sentido da rotação
- Os quadrature encoders, com 2 canais de saída fora de fase, e que permitem uma maior resolução assim como a determinação do sentido.
Quadrature encoders
Os quadrature encoders são codificadores incrementais com 2 canais de saída fora de fase.
Cada canal fornece um número específico de pulsos igualmente espaçados por rotação (PPR) e o sentido do movimento é detectada pela relação de fase de um canal à frente ou atrás do outro canal.

Os canais A e B são codificados com um desvio de noventa graus na fase que permite com a leitura dos dois canais, identificar o sentido. Conforme ilustrado na figura cima, quando está a rodar no sentido horário, o sinal exibe a sequência AB, e na transição de B o canal A estará HIGH, mas no sentido anti-horário a seguencia será BA, e na transição de B o canal A estará HIGH.
Resolução dos quadrature encoders
Os quadrature encoders permitem a operação com três níveis de resolução: x1, x2 e x4 (necessita de dois interrupts).

Tal é possível a partir da contagem das arestas à esquerda e à direita num dos canais (x2) ou pelas bordas anteriores e posteriores de ambos os canais(x4).