Sin encoder, el motor no sabe dónde está. El encoder es el sensor que cierra el lazo: el PID compara su lectura con la posición deseada.
Incremental (cuadratura)
Dos canales, A y B, desfasados un cuarto de periodo.
Contando flancos sabes cuánto ha girado; mirando qué canal va primero sabes el sentido.
Con un solo canal no hay sentido de giro.
Modos x1 / x2 / x4: contar más flancos da más resolución con el mismo disco.
Absoluto
Cada posición tiene un código único, así que sabes dónde estás al encender. Se usa Gray code: entre dos posiciones vecinas cambia un solo bit, y así una lectura a medio camino nunca da un valor disparatado.
Resolución
Un encoder de 12 bits tiene 4096 posiciones por vuelta: un paso son 360/4096 ≈ 0,088°.
En la demo: arrastra el disco, cambia x1/x2/x4 y luego pasa a la pestaña del absoluto con Gray code.
Demo interactiva
Encoders rotativos
Un encoder convierte el ángulo del eje en números que un microcontrolador puede leer. Los encoders incrementales cuentan cambios. Los absolutos leen un código distinto en cada ángulo.
Count
0
Parado
El sentido sale del orden de A y B
Counts por vueltaGrados por countResoluciónArco a 100 mm de radioVelocidad, solo con A
Secuencia de estados (A B)
¿Por qué dos canales? Un canal da una frecuencia de pulsos (velocidad), pero los pulsos son iguales en los dos sentidos. B va desfasado un cuarto de ciclo (90 grados eléctricos), así que cuál de A o B cambia primero da el sentido.
Solo se cuentan los cambios, así que la cuenta se pierde al apagar. Z (index pulse) da un pulso por vuelta.
Decodificación
Girarlo
Palabra de código bajo el lector
Posición decodificadaÁngulo que indicaÁngulo real del ejeError de lectura
Código binarioGray codePosición del lector
Código impreso en el disco
¿Por qué Gray code? En binario simple, pasar de 7 (0111) a 8 (1000) cambia cuatro bits a la vez. Los sensores reales nunca conmutan en el mismo ángulo, así que el lector ve un instante una mezcla como 0000 y da una posición lejana. En Gray code cambia un bit por paso, así que el peor error es un paso. La desalineación es el desplazamiento de cada sensor, una fracción de paso.
Tras perder la alimentación: el ángulo está impreso en el disco, así que la posición se conoce al volver la corriente. Un encoder incremental pierde la cuenta y hay que hacerle homing.