2.500 TL ve Üzeri Tüm Siparişlerinizde ÜCRETSİZ KARGO! HepsiJET Güvencesiyle Işık Hızında ve Güvenli Teslimat! 2.500 TL Altı Siparişlerinizde Sabit Kargo Ücreti Sadece 139 TL! EcemBilgisayar Güvencesiyle Hassas Üretim ve Özenli Paketleme! 2.500 TL ve Üzeri Tüm Siparişlerinizde ÜCRETSİZ KARGO! HepsiJET Güvencesiyle Işık Hızında ve Güvenli Teslimat! 2.500 TL Altı Siparişlerinizde Sabit Kargo Ücreti Sadece 139 TL! EcemBilgisayar Güvencesiyle Hassas Üretim ve Özenli Paketleme! 2.500 TL ve Üzeri Tüm Siparişlerinizde ÜCRETSİZ KARGO! HepsiJET Güvencesiyle Işık Hızında ve Güvenli Teslimat! 2.500 TL Altı Siparişlerinizde Sabit Kargo Ücreti Sadece 139 TL! EcemBilgisayar Güvencesiyle Hassas Üretim ve Özenli Paketleme! 2.500 TL ve Üzeri Tüm Siparişlerinizde ÜCRETSİZ KARGO! HepsiJET Güvencesiyle Işık Hızında ve Güvenli Teslimat! 2.500 TL Altı Siparişlerinizde Sabit Kargo Ücreti Sadece 139 TL! EcemBilgisayar Güvencesiyle Hassas Üretim ve Özenli Paketleme!

Rotary Encoder Adım (PPR) & RPM Hesaplama

🔄 Döner Enkoder & Hız Hesaplama

Rotary Encoder Adım (PPR) & RPM Hesaplama

Optik, manyetik ve mekanik artımsal (incremental) döner enkoderlerin fiziksel darbe sayısı (PPR), quadrature çözünürlük katsayısı (1x, 2x, 4x), çıkış frekansı (Hz) ve motor dönme hızı (RPM) dönüşümlerini anında hesaplayın. Kesme (Interrupt) temelli hazır Arduino C++ kodunu kopyalayın.

🔌 Rotary Encoder Arduino Pinout (D2 / D3 Kesme Pinleri)
Kanal A (CLK / Phase A)
Arduino Pin D2 (Interrupt 0)
Kanal B (DT / Phase B)
Arduino Pin D3 (Interrupt 1)
Besleme (VCC 5V)
Arduino 5V
Toprak (GND)
Arduino GND
⚡ Popüler Enkoder Tipleri (Tek Tıkla Seç)
🎛️ KY-040 Butonlu Modül (20 PPR - 1x)⚙️ Standart Optik Enkoder (600 PPR - 4x)🎯 Yüksek Hassasiyet (1024 PPR - 4x)🏭 Endüstriyel Servo (2500 PPR - 4x)
HESAPLANAN MOTOR DEVRİ (RPM)
25.00 RPM
Etkin Çözünürlük (Sayım/Tur)
2400 CPR
Açısal Hassasiyet (Darbe Başına)
0.150° / darbe
Darbe Frekansı (Saniyede)
1000 Hz
💻 INTERRUPT TEMELLİ ARDUINO ENCODER C++ KODU:
// Arduino Quadrature Encoder Interrupt Code - EcemBilgisayar const int encoderPinA = 2; // Interrupt 0 const int encoderPinB = 3; // Interrupt 1 volatile long encoderPos = 0; void setup() { Serial.begin(9600); pinMode(encoderPinA, INPUT_PULLUP); pinMode(encoderPinB, INPUT_PULLUP); // 4x çözünürlük için her iki kanala kesme baglanir attachInterrupt(digitalPinToInterrupt(encoderPinA), doEncoderA, CHANGE); attachInterrupt(digitalPinToInterrupt(encoderPinB), doEncoderB, CHANGE); } void loop() { static long lastPos = 0; if (encoderPos != lastPos) { Serial.print("Pozisyon: "); Serial.println(encoderPos); lastPos = encoderPos; } } void doEncoderA() { if (digitalRead(encoderPinA) == digitalRead(encoderPinB)) encoderPos++; else encoderPos--; } void doEncoderB() { if (digitalRead(encoderPinA) != digitalRead(encoderPinB)) encoderPos++; else encoderPos--; }

Rotary Encoder Hakkında Sıkça Sorulan Sorular

PPR (Pulses Per Revolution) nedir?

PPR, döner enkoder şaftı tam 360° bir tur döndüğünde tek bir kanaldan çıkan fiziksel kare dalga darbe sayısıdır.

Quadrature (4x Çözünürlük) kodlaması nasıl çalışır?

Quadrature enkoderlerde A ve B kanalları aralarında 90° faz farkı olan sinyaller üretir. A ve B kanallarının hem yükselen hem düşen kenarları sayıldığında çözünürlük 4 katına (4x CPR) çıkar ve yön bilgisi elde edilir.

Enkoder okurken neden Interrupt (Kesme) kullanılmalıdır?

Yüksek hızlı motorlarda enkoder saniyede binlerce darbe üretir. loop() içindeki sıradan okumalar adım kaçırmaya (missed steps) neden olur. Kesme pinleri (D2 ve D3) hiçbir adımı kaçırmaz.

KY-040 modülü ile endüstriyel optik enkoder farkı nedir?

KY-040 mekanik kontaklıdır (tur başı 20 tık) ve düşük hızlarda menü gezinmek içindir. Optik/manyetik enkoderler ise (600-2500 PPR) temassızdır ve dakikada binlerce devir (RPM) yapan motorlarda kullanılır.

Yükleniyor...