360도 PWM 로터리 인코더 브레이크 아웃

      360도 PWM 로터리 인코더 브레이크 아웃

      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% 

      Shipping Cost Estimator

      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.

      설명

      이 유형의 스위치는 증분 로터리 인코더입니다. 사실, 저렴한 비용과 속도와 같은 모션 관련 정보를 제공하기 위해 쉽게 해석 할 수있는 신호를 제공 할 수있는 능력으로 인해 모든 로터리 인코더에서 가장 널리 사용됩니다.

      회전함으로써, 로터리 인코더는 회전 중에는 제한 제한이없는 로터리 전위차계 카운터와 달리 회전 중에 출력 펄스 주파수를 양의 반대 방향으로 계산할 수 있습니다. 로터리 인코더의 버튼을 사용하면 0에서 시작하여 초기 상태로 재설정 할 수 있습니다.

      테스트 코드

      int redpin = 2;
      int 옐로 핀 = 3;
      int greenpin = 4;
      int apin = 6;
      int bpin = 7;
      int buttonpin = 5;
      int state = 0;
      int longperiod = 5000; // 녹색 또는 빨간색 시간
      int shorperiod = 700; // 변경시기
      int targetCount = shorperiod;
      int count = 0;
      void setup ()
      {
        PINMODE (apin, 입력);
        PINMODE (BPIN, 입력);
        PINMODE (ButtonPin, 입력);
        PINMODE (Redpin, 출력);
        PINMODE (옐로 핀, 출력);
        PINMODE (Greenpin, 출력);
      }
      void loop ()
      {
        카운트 ++;
        if (digitalread (buttonpin))
        {
        세트 라이트 (높음, 높음, 높음);
        }
        또 다른
        {
        int change = getencoderturn ();
        int newperiod = longperiod + (Change * 1000);  
        if (newperiod> = 1000 && newperiod <= 10000)
          {
        longperiod = newperiod;
          }
        if (count> targetCount)
          {
        setstate ();
        count = 0;
          }
        }
        지연 (1);
      }
      int getencoderturn ()
      {

       // return -1, 0 또는 +1
        정적 int olda = 낮음;
        정적 int oldb = 낮음;
        int result = 0;
        int newa = digitalread (apin);
        int newb = digitalread (bpin);
        if (newa! = olda || newb! = oldb)
        {
        // 무언가가 변경되었습니다
        if (olda == low && newa == High)
          {
        결과 = - (Oldb * 2-1);
          }
        }
        Olda = Newa;
        Oldb = Newb;
        반환 결과;
      }
      int setstate ()
        {
        if (state == 0)
          {
        세트 라이트 (높음, 낮음, 낮음);
        TargetCount = longperiod;
        상태 = 1;
          }
        else if (state == 1)
          {
        세트 라이트 (높음, 높음, 낮음);
        TargetCount = shorperiod;
        상태 = 2;
          }
        else if (state == 2)
          {
        세트 라이트 (낮음, 낮음, 높음);
        TargetCount = longperiod;
        상태 = 3;
          }
        else if (state == 3)
          {
        세트 라이트 (낮음, 높음, 낮음);
        TargetCount = shorperiod;
        상태 = 0;
          }
        }
      void setlights (int red, int yellow, int green)
      {
        DigitalWrite (Redpin, Red);
        DigitalWrite (Yellowpin, Yellow);
        DigitalWrite (Greenpin, Green);

      Frequently Bought Together

      Total Price: