Step Motor, adım adım dönen özel olarak tasarlanmış bir motordur. Step motorun hızı, kendisine uygulanan elektrik sinyalinin hızına bağlıdır. Farklı desenler, step motorun yönünü ve dönüş türünü kontrol edebilir. Esas olarak iki tip step motor mevcuttur, Unipolar ve Bipolar. Unipolar'ın çalıştırılması, kontrol edilmesi ve elde edilmesi daha kolaydır. İşte bu eğitimde Step Motor ile PIC Microcontroller PIC16F877A arasında arayüz oluşturuyoruz.
Ucuz ve kolay temin edilebilen bu proje için 28BYJ-48 step motor kullanıyoruz. Öyle 5V DC tek kutuplu step motor. Bu motorla birlikte ULN2003 Step Motor Sürücü IC içeren bir Modül de kullanıyoruz. ULN2003, PIC mikrodenetleyicisi sürmek için yeterli akımı sağlayamadığından, bu motoru çalıştırmak için yararlı olan bir Darlington çifti dizisidir. ULN2003A, 600mA tepe akımı ile 500mA yükü sürebilir.
Step Motor:
28BYJ-48 Step Motor'un teknik özelliklerini veri sayfasından görelim.
Step Motor nasıl döndürülür:
Veri sayfasını görürsek, pin-out'u göreceğiz.
Motorun içinde iki adet merkez dişli bobin mevcuttur. Kırmızı kablo, VCC veya 5V'ye bağlanacak her ikisi için ortaktır.
Diğer 4 tel pembe, kırmızı, sarı ve mavi elektrik sinyaline bağlı olarak dönüşü kontrol edecektir. Ayrıca harekete bağlı olarak bu motor 3 adımda kontrol edilebilir. Tam sürüş modu, Yarım Sürüş modu ve Dalga sürüş modu.
Step Motorun Üç Sürüş Modu:
Tam Sürücü: Bir seferde iki stator elektromıknatısa enerji verilirse, motor tam sürücü sıra modu olarak adlandırılan tam torkta çalışacaktır.
Adım |
Mavi |
Pembe |
Sarı |
Portakal |
1 |
1 |
1 |
0 |
0 |
2 |
0 |
1 |
1 |
0 |
3 |
0 |
0 |
1 |
1 |
4 |
1 |
0 |
0 |
1 |
Yarım Sürüş: Alternatif olarak bir ve iki faza enerji verildiğinde, motor yarım sürüş modunda çalışacaktır. Açısal çözünürlüğü artırmak için kullanılır. Dezavantajı, bu harekette üretilen daha az torktur.
Adım |
Mavi |
Pembe |
Sarı |
Portakal |
1 |
1 |
0 |
0 |
0 |
2 |
1 |
1 |
0 |
0 |
3 |
0 |
1 |
0 |
0 |
4 |
0 |
1 |
1 |
0 |
5 |
0 |
0 |
1 |
1 |
6 |
0 |
0 |
0 |
1 |
7 |
1 |
0 |
0 |
1 |
8 |
1 |
0 |
0 |
0 |
Wave Drive: Bu modda bir stator elektromıknatıs açılır. Tam sürüş modu ile aynı 4 adımda takip edilir. Düşük torkla düşük güç tüketir.
Adım |
Mavi |
Pembe |
Sarı |
Portakal |
1 |
1 |
0 |
0 |
0 |
2 |
0 |
1 |
0 |
0 |
3 |
0 |
0 |
1 |
0 |
4 |
0 |
0 |
0 |
1 |
Daha önce Step Motor'u diğer Mikrodenetleyicilerle arayüzledik:
Step motor, herhangi bir Mikroişlemci olmadan da kontrol edilebilir, bu Step Motor Sürücü Devresine bakın.
ULN2003 Step Motor Sürücüsü:
ULN2003 IC'den oluşan kartını anlayalım. Pin çıkışını anlamak önemlidir.
Sarı kısmı bağlamak için kullanılan motoru, Kızıl kısmı bir gösteriyor Jumper, O motor ters diyot korumasını sağlayacak şekilde Jumper yerleştirmek için önemlidir . Pembe giriş içindir mikrodenetleyici bağlantısı.
Motoru tam sürüş modunda saat yönünde döndüreceğiz ve tekrar dalga sürüş modunda saat yönünün tersine döndüreceğiz. Sonunda tanıtım videosunu kontrol edin.
Gerekli Bileşenler
- Pic16F877A
- Programlama kiti
- Breadboard
- 20Mhz Kristal
- 33pF disk kondansatör - 2 adet
- 4.7k direnç
- Berg telleri ve pimleri
- 28BYJ-48 Step motor ile birlikte ULN2003A koparma kartı.
- Bağlanmak için ek kablolar
- 500mA dereceli 5V güç kaynağı ünitesi veya duvar adaptörü
Devre Şeması ve Açıklama
Devre şemasında, sol tarafta PIC16F877A gösteriliyor ve sağ tarafta ULN2003A bağlantısı gösteriliyor. ULN2003 ve Step motor parçası koparma kartının içindedir.
Breakout kartından mikro denetleyici birimine olan bağlantı
A. IN1 => Pin33
B. IN2 => Pin34
C. IN3 => Pin35
D. IN4 => Pin36
Step motoru PIC mikrodenetleyici ile döndürmek için tüm bileşenleri ve donanımınızı bağladım hazır.
PIC Mikrodenetleyicide yeniyseniz, PIC Mikrodenetleyiciye Başlarken ile ilgili PIC Mikrodenetleyici Öğreticilerimizi takip edin.
Kod Açıklama
Bu PIC tabanlı Step Motor Sürücüsünün tam kodu, bu eğitimin sonunda bir Gösteri Videosu ile verilmiştir. Her zaman olduğu gibi, ilk olarak, pic mikro denetleyicide yapılandırma bitlerini ayarlamamız ve ardından void main işlevi ile başlamamız gerekir.
Bunlar, mikro denetleyici biriminin konfigürasyon bitleri ve kitaplık başlık dosyaları için makrolardır.
#define _XTAL_FREQ 200000000 // Gecikmede kullanılan Kristal Frekansı #define hız 1 // Hız Aralığı 10 ila 1 10 = en düşük, 1 = en yüksek # tanımlı adım 250 // ne kadar adım atacağını # saat yönünde tanımla 0 // saat yönünde macro #define anti_clockwise 1 // saat yönünün tersine makro
İlk satırda, gecikme rutini için gerekli olan kristal frekansını tanımladık. Diğer makrolar, kullanıcıyla ilgili seçenekleri tanımlamak için kullanılır.
Kodu görürseniz, motoru saat yönünde ve saat yönünün tersine üç modda sürmek için tanımlanmış üç işlev vardır. İşte üç işlev:
1. void full_drive (karakter yönü)
2. void half_drive (karakter yönü)
3. void wave_drive (karakter yönü)
Aşağıda verilen tam kodda bu işlevlerin tanımlarını kontrol edin:
Şimdi geçersiz ana fonksiyonda, adımlara bağlı olarak tam sürüş modunu kullanarak motoru saat yönünde sürüyoruz ve birkaç saniye gecikmeden sonra dalgalı sürüş modunu kullanarak motoru saat yönünün tersine döndürüyoruz.
void main (void) { system_init (); while (1) { / * Motoru saat yönünde tam sürüş modunda sür * / for (int i = 0; i
Step motoru PIC Microcontroller ile bu şekilde döndürebiliriz. Step Motorlar, CNC makinelerinde, robotikte ve diğer gömülü uygulamalarda çok kullanışlıdır.