MODULO ENCODER ROTATIVO KY-040


Encoder incremental con pulsador, 20 pulsos por revolución.

50.000

¿Qué es un encoder rotativo?

En estos dispositivos la lectura se realiza sobre un disco, en cuya cara se encuentra la codificación que permite discernir la posición angular con gran precisión.

Los usos más comunes se dan en los controles de máquinas industriales tales como los husillos de tornos y fresadoras CNC, brazos robóticos, controles de instrumentos electrónicos (diales) y hasta es posible verlos todavía en los viejos ratones de computadoras o en algunos trackballs.

¿Qué es el sensor KY-040?

El Módulo KY-040 es un encoder rotativo es un elemento que indica mediante posiciones codificadas su posición. Es un encoder rotativo con 12 posiciones (cada 30º) e infinito, es decir, que podemos dar vueltas hacia ambos lados sin límite. Cuando pasamos por cada paso se nota un pequeño resalte que indica que se ha llegado a la nueva posición.

¿Cómo funciona el KY-040 encoder rotativo?

Estos codificadores constan de dos pines para el pulsador (funciona como un pulsador normal) y tres pines para el codificador. Los tres pines del codificador van conectados uno a masa y los otros dos a las respectivas entradas que designemos en la placa Arduino. Estas dos señales que salen del encoder nos dan un total de 4 combinaciones. 00, 01, 10, y 11. Esto se conoce como 2 bits de código Grey.

Si tratamos a los pines en código binario, las leemos como 00, 01, 10, o 11. La secuencia de las salidas del codificador mientras giramos en sentido de las agujas del reloj es 00, 01, 11, 10. Así que si se tiene una lectura de 01, la siguiente lectura puede ser 00 o 11 dependiendo de la dirección en que se gira. Así que, mediante la adición del valor codificado anteriormente se obtiene 1 de 8 posibles números (0001, 0010, 0100, 0111, 1000, 1011, 1110 y 1101). Estas cuatro combinaciones 1101, 0100, 0010 y 1011 indican un movimiento horario y 1110, 0111, 0001 y 1000 un movimiento anti horario.


ESPECIFICACIONES Y CARACTERÍSTICAS

  • Modelo: KY-040
  • Voltaje de alimentación: 5v
  • Corriente: 10 mA
  • Posiciones: 12 posiciones (cada 30º)
  • Pulsos por revolución: 20
  • Dimensiones: 20 x 30 x 30 mm
  • Peso: 10g

TUTORIALES


DOCUMENTACIÓN.

Código Prueba

Este código de prueba servirá para probar el funcionamiento del KY-040 y lo que hará será que nos dirá cuando dé un paso el encoder y lo registre y así podremos ir verificando cuantos pasos da, también lo podremos observar en sentido inverso.
 
 #define salidaA 2
 #define salidaB 3
 #define boton 4
  
 int contador = 0; 
 int estadoA;
 int estadoPrevioA;
 
 void setup() { 
     pinMode (salidaA,INPUT); // pin 2 
     pinMode (salidaB,INPUT); // pin 3
     pinMode (boton, INPUT_PULLUP); // el pulsador debe ser polarizado a valor ALTO
     
     Serial.begin (9600);
     estadoPrevioA = digitalRead(salidaA); // Lee el estado inicial de la salida A
 } 
 
 void loop() 
 {
   estadoA = digitalRead(salidaA);// Lee el estado de la salida A
   
   if (estadoA != estadoPrevioA){  // Si el estado previo de la salida A era otro
                                   // significa que se ha producido un pulso   
         if (digitalRead(salidaB) != estadoA) { // Si el estado de salida B es diferente del estado
                                                // de salida A el codificador esta girando a la derecha
              contador ++;
          } 
         else {
              contador --;
        }
     Serial.print("Posición: ");
     Serial.println(contador);
   } 
   estadoPrevioA = estadoA; // actualiza el estado guardado
 }

SKU: ELEC000224 Categoría: Etiquetas: , , , ,

ENCODER DECODER ROTACIONAL KY-040