Breakout de codificador rotativo PWM de 360 ​​grados

      Breakout de codificador rotativo PWM de 360 ​​grados

      USD
      Model #
      Quantity
      qty limit cart limit
      In Stock

      Add 

      Warranty Plus

      Warranty Plus:
      Your product will be replaced (including free shipping) with a new one within 12 months of purchase, even if it is damaged due to improper wiring, incorrect usage, a problem in the electrical installation or any other circumstance.

      Standard Warranty:
      12 month warranty comes with every purchase. Covers malfunctions when it is used within the described conditions/limits.

       +8% 

      Estimador de costos de envío

      Note: You must have items in your cart already before you can see the estimated costs to ship your cart. This shipping tool will estimate the total shipping cost for your entire basket.

      Descripción

      Este tipo de interruptor es un codificador rotativo incremental. De hecho, es el más utilizado de todos los codificadores rotativos debido a su bajo costo y capacidad para proporcionar señales que pueden interpretarse fácilmente para proporcionar información relacionada con el movimiento, como la velocidad.

      Al girar, el codificador rotativo puede contar la frecuencia del pulso de salida en dirección positiva e inversa durante la rotación, a diferencia de un contador de potenciómetro rotativo sin la limitación de contabilidad. Con el botón en el codificador giratorio, se puede restablecer a su estado inicial a partir de cero.

      Código de prueba

      int redpin = 2;
      int amarillo = 3;
      int greenpin = 4;
      int apin = 6;
      int bpin = 7;
      int Buttonpin = 5;
      int state = 0;
      int longperiod = 5000; // tiempo en verde o rojo
      int shortperiod = 700; // Período de tiempo al cambiar
      int TargetCount = ShortPeriod;
      int count = 0;
      Configuración vacía ()
      {
        PinMode (apin, entrada);
        PinMode (bpin, entrada);
        PinMode (Buttonpin, Entrada);
        PinMode (Redpin, salida);
        PinMode (Pin de amarillo, salida);
        PinMode (GreenPin, salida);
      }
      bucle vacío ()
      {
        contar ++;
        if (digitalRead (Buttonpin))
        {
        Setlights (alto, alto, alto);
        }
        demás
        {
        int cambio = getencoderturn ();
        int NewPeriod = LongPeriod + (cambio * 1000);  
        if (newperiod> = 1000 && newPeriod <= 10000)
          {
        longperiod = newperiod;
          }
        if (Count> TargetCount)
          {
        setState ();
        recuento = 0;
          }
        }
        retraso (1);
      }
      int getencoderturn ()
      {

       // return -1, 0 o +1
        static int OldA = bajo;
        static int OldB = Low;
        int resultado = 0;
        int newa = digitalread (apin);
        int newb = DigitalRead (BPIN);
        if (newa! = OldA || Newb! = Oldb)
        {
        // algo ha cambiado
        if (OldA == Low && Newa == High)
          {
        resultado = - (Oldb * 2 - 1);
          }
        }
        OldA = Newa;
        Oldb = newb;
        resultado de retorno;
      }
      int setstate ()
        {
        if (estado == 0)
          {
        setlights (alto, bajo, bajo);
        TargetCount = LongPeriod;
        estado = 1;
          }
        más si (estado == 1)
          {
        Setlights (alto, alto, bajo);
        TargetCount = ShortPeriod;
        estado = 2;
          }
        más si (estado == 2)
          {
        setlights (bajo, bajo, alto);
        TargetCount = LongPeriod;
        estado = 3;
          }
        más si (estado == 3)
          {
        setlights (bajo, alto, bajo);
        TargetCount = ShortPeriod;
        estado = 0;
          }
        }
      Void Setlights (int rojo, int amarillo, int verde)
      {
        DigitalWrite (Redpin, Red);
        DigitalWrite (amarillo, amarillo);
        DigitalWrite (GreenPin, Green);

      Frequently Bought Together

      Total Price: