28BYJ-48 Step Motor
Step motorlar, uygulanan elektriksel sinyaller ile adım adım (step step) hareket edebilen motorlardır. Step motorları geleneksel DC motorlardan ayıran en önemli özellik, sürekli döngüde çalışmak yerine adım adım çalışmalarıdır. Her bir sinyale karşılık küçük bir açı ile hareket ediyor olmaları aynı zamanda çok hassas kontrol avantajı sunar. Bu avantaj nedeniyle hassas kontrol gerektiren uygulamalar için ideal bir çözüm kaynağı olduklarını söyleyebiliriz.
Step motorların kullanıldığı bazı yaygın alanlar ve uygulamalar:
- 3D Yazıcılar
- CNC ve Lazer Kesim Makineleri
- Robotik Uygulamalar
- Hareketli Platformlar ve Dönüşlü Makineler
- Otomatik Kameralar ve Pan/Tilt Sistemleri
- Elektrikli Araçlar
- Havacılık ve Uzay Sistemleri
- Otomasyon ve Endüstiyel Üretim
- Optik Ekipmanlar
- Elektriksel Pozisyonlama Sistemleri
Step motoru en temel haliyle anlattığımız bu yazımızda 28BYJ-48 Step Motor‘u inceleyerek devam edeceğiz. 28BYJ-48 Step Motor, ULN2003 sürücü kartı ile birlikte gelir ve kullanımı oldukça basittir. Eğer step motor kullanımını öğrenme sürecindeyseniz sizin için en iyi tercih 28BYJ-48 Step Motor olacaktır.
Step Motorlar Nasıl Çalışır?
Step motorlar, içerisinde bulunan bobinler sayesinde, birer adım hareket ederler. Motorun yapısında genellikle stator (sabit kısım) ve rotor (dönen kısım) bulunur. Elektrik akımı, statorda bulunan bobinlere uygulandığında, rotor manyetik alana tepki verir ve bobin tarafından kendine doğru çekilir.
Step motorlar, adım başına küçük bir açısal mesafe katettikleri için, bu küçük adımlar birleştirilerek motorun toplam hareketi oluşturulur. Her adımın büyüklüğü, motorun tasarımına ve kullanılan bobinlere bağlı olarak değişebilir. Ayrıca 28BYJ-48 Step Motor gibi bazı Step motorlar‘ın iç yapısında dahili olarak redüktörler bulunmaktadır. Step motorlar, genellikle tam adım (full-step) ve yarım adım (half-step) gibi farklı çalışma modlarına sahiptir.
Tam Adım (Full-Step) Çalışma
Tam adım çalışma modunda her bir bobin sırayla tetiklenmektedir. 28BYJ-48 Step Motor iç yapısında 4 adet bobin bulunmaktadır. Ancak dahili redüktör mekanizması sayesinde bir tam turunu 2048 adımda tamamlamaktadır.
Yarım Adım (Half-Step) Çalışma
Yarım adım çalışma modunda, bir bobin tetiklendikten sonra bir sonraki adımda iki bobin birlikte tetklenmektedir. Bu sayede motor, bir tam turunu 4096 adımda tamamlamaktadır.
28BYJ-48 Step Motor için;
- Step motor ile birlikte gelen ULN2003 sürücü kartında IN1, IN2, IN3 ve IN4 girişleri yukarıda temsil edilen bobinleri tetiklemek için kullanılır.
- Bobinleri tetiklerken izlenen sıralama, motorun hareket yönünü belirler. ( IN1 'den IN4 'e doğru tetikleme: saat yönünde hareket, IN4 'ten IN1 'e doğru tetikleme: saat yönünün tersinde hareket.)
- Bir bobin tetiklendikten sonra diğer bobinin tetiklenmesine kadar geçen süreye (frekans) bağlı olarak hız kontrolü yapılabilir.
- Her bir tetikleme işlemi bir adımdır. Tam adım modunda 2048, yarım adım modunda ise 4096 adımda bir tur dönüş tamamlanır.
Temel Özellikler
28BYJ-48 Step Motor‘un adım açısı 5.625°/64’tür. Burada 5.625° değeri motorun özel iç yapısı sayesinde 360 dereceyi 32 tam (64 yarım) adımda katedebilmesi ile (360°/64=5.625°) hesaplanmaktadır.
5.625°/64 değerinde bulunan 64 değeri ise motor çıkışında bulunan dahili redüktörün dönüştürme oranıdır. Yani bir yarım adım için 5.625°/64=0.087890625° gibi çok hassas bir dönüş hareketi elde edilebilir.
28BYJ-48 Pin Şeması
- 1 D : Bobin 4
- 2 B : Bobin 2
- 3 VCC : Besleme Gerilimi
- 4 A : Bobin 1
- 5 C : Bobin 3
Teknik Özellikler
Özellik | Değer |
Model | 28BYJ-48 – 5V |
Çalışma Voltajı | 5VDC |
Çalışma Akımı | 240mA |
Faz Sayısı | 4 |
Adım Açısı | 5.625°/64 |
Dişli Dönüştürme Oranı | 1/64 |
Özellik | Değer |
Frekans | 100Hz |
DC Direnç | 50Ω±7%(25℃) |
Çekiş Torku | >34.3mN.m(120Hz) |
Sürtünme Torku | 600-1200 gf.cm |
Çekme Torku | 300 gf.cm |
Gürültü | <35dB(120Hz,No load,10cm) |
28BYJ-48 Step Motor‘un özellikleri ve ölçüleri hakkında daha ayrıntılı bilgi için datasheet dosyasını inceleyebilirsiniz.
ULN2003 Motor Sürücü Kartı
28BYJ-48 Step Motorlar genellikle motor sürücüler ile birlikte kullanılırlar. Bir mikrodenetleyici pini genel olarak 20-25mA değerinde akım çıkışı sunabilir. Ancak bu değer step motorun bobinlerini tetiklemek için yeterli olmayacaktır. Bu sebeple 28BYJ-48 Step Motor için ULN2003 motor sürücü kartı ve benzeri sürücü kartları kullanılmaktadır. Bunun sonucu olarak, 28BYJ-48 Step Motorlar genellikle ULN2003 motor sürücü kartı ile birlikte set olarak gönderilmektedir.
ULN2003 entegresi içerisinde 7 adet darlington transistör bulunmakta olup, her bir transistör 500mA değerinde akım kontrolü yapabilmektedir. ULN2003 entegresi ile oluşturulan step motor sürücü kartının DIP ve SMD olmak üzere iki versiyonu bulunmaktadır. Her iki sürücü kartında da aynı giriş-çıkışlar bulunmaktadır. Bunlar;
IN1~IN4 Step motor kontrol girişleri,
A~D Step motor kontrol çıkışları,
VCC Besleme voltajı bağlantı noktası,
GND Topraklama bağlantı noktasıdır.
Sürücü kartı 5-12VDC ile çalışmakta ve üzerinde step motorun hangi bobininin tetiklendiğini görmemiz için 4 adet LED bulunmaktadır. 28BYJ-48 Step Motor 5VDC ile çalıştığı için sürücü de 5VDC ile çalıştırılmalıdır. Ayrıca motorların kalkış anında çekmiş oldukları anlık yüksek akımlar nedeniyle harici bir kaynaktan beslenmesinde fayda vardır.
Diğer Uygulamalar
Merhaba arkadaşlar, bu yazımızda Trudyo Geliştirme Kartı‘nı kullanarak 28BYJ-48 Step Motor kontrol uygulaması yapacağız. İlk...
Merhaba arkadaşlar, bu yazımızda Trudyo Geliştirme Kartı ile 2×16 Karakter LCD ekranların kullanımından bahsedeceğiz. LCD...
3 thoughts on “28BYJ-48 Step Motor”
Merhaba. Ben trudyo ile bluetooth kontrollü dc motor kontrolü yapmak istiyorum.4 adet redüktörlü 6V dc motor kullanıyorum. Motor sürücü olarak da L298N motor sürücüsü, bluetooth modülü olarak da HC-05 kullanıyorum. Kod denemeleri yaptım ama stabil bir kontrol sağlayamadım. Yardımcı olursanız çok sevinirim.
Merhaba,
Program kodlarınızı paylaşmanız mümkün müdür?
// PIN tanımlamaları
sbit motorA1 at LATB5_bit; // L298N IN3 Girişi
sbit motorA2 at LATB6_bit; // L298N IN1 Girişi
sbit motorB1 at LATB7_bit; // L298N IN2 Girişi
sbit motorB2 at LATB4_bit; // L298N IN4 Girişi
sbit motorA1_Direction at TRISB5_bit;
sbit motorA2_Direction at TRISB6_bit;
sbit motorB1_Direction at TRISB7_bit;
sbit motorB2_Direction at TRISB4_bit;
// Değişkenler
unsigned char state; // Bluetooth'tan alınan veri
// Motor kontrol fonksiyonu
void setMotor(char motorA1State, char motorA2State, char motorB1State, char motorB2State) {
motorA1 = motorA1State;
motorA2 = motorA2State;
motorB1 = motorB1State;
motorB2 = motorB2State;
}
// Başlangıç ayarları
void setup() {
// Pin yönlerini çıkış olarak ayarla
motorA1_Direction = 0;
motorA2_Direction = 0;
motorB1_Direction = 0;
motorB2_Direction = 0;
// UART başlat
UART1_Init(9600); // 9600 baud hızında UART
Delay_ms(100); // UART kararlılığı için küçük bir gecikme
}
// Motor komutlarını işleyen fonksiyon
void processCommand() {
switch (state) {
case 'F': // İleri
setMotor(1, 0, 1, 0);
break;
case 'G': // İleri Sol
setMotor(1, 0, 0, 0);
break;
case 'I': // İleri Sağ
setMotor(0, 0, 1, 0);
break;
case 'B': // Geri
setMotor(0, 1, 0, 1);
break;
case 'H': // Geri Sol
setMotor(0, 1, 0, 0);
break;
case 'J': // Geri Sağ
setMotor(0, 0, 0, 1);
break;
case 'L': // Sol
setMotor(1, 0, 0, 1);
break;
case 'R': // Sağ
setMotor(0, 1, 1, 0);
break;
case 'S': // Dur
setMotor(0, 0, 0, 0);
break;
default: // Geçersiz komut
setMotor(0, 0, 0, 0);
break;
}
}
// Ana döngü
void loop() {
// Bluetooth üzerinden veri kontrolü
if (UART1_Data_Ready()) {
state = UART1_Read(); // Veriyi oku
processCommand(); // Gelen komuta göre motorları kontrol et
}
}
// Ana fonksiyon
void main() {
setup(); // Başlangıç ayarlarını yap
while (1) {
loop(); // Ana döngüyü çalıştır
}
}
Yorum yapmak için giriş yapmalısınız.