Step motor: Arduino ile entegrasyon

Step motor

Arduino'lu yapımcıların projelerinde en popüler olanı, mobilite sağladıkları için, elektrik motorları giderek daha fazla talep görüyor, aralarında belki de doğru akımla çalışanlar öne çıkıyor. Bunların arasında vurgulayın step motorlar Özellikle robotik için, aktüatörler vb. gibi çoklu uygulamalar için kullanılan

Elektrikli arabalar, küçük otonom robotlar, otomasyon için endüstriyel uygulamalar, tekrarlayan hareket cihazları vb. Servo motorların ve step motorların bu uygulamalar için bu kadar iyi olmasının nedeni, yavaş veya hızlı hareketler yapın, ancak her şeyden önce kontrollü. Ek olarak, sürücüler, çok sayıda durdurma ve başlatmanın büyük bir hassasiyetle gerekli olduğu uygulamalar için süreklidir.

Elektrik motoru çeşitleri

Içinde elektrik motorları aşağıdaki türler vurgulanabilir:

  • DC veya DC motor: DC motorlar, adından da anlaşılacağı gibi bu tür bir akımla çalışır. Endüstriyel uygulamalar, araçlar, asansörler, konveyör bantları, fanlar vb. İçin kullanılan en güçlü ve en büyük olanlarda birkaç mW güçten birkaç MW'a kadar değişebilir. Dönüş hızı (RPM) ve uygulanan tork, ilerlemeye göre düzenlenebilir.
  • AC veya AC motor (asenkron ve sarımlı rotor): Bu tip akımın, elektromıknatısın manyetik itmesi yoluyla dönüşü oluşturmaya katkıda bulunduğu fazlar sayesinde çalışan çok özel bir rotor ile alternatif akımla çalışırlar, DC'dekine benzer şekilde. Çok ucuzlar ve birkaç kW'a kadar çıkıyorlar. Dönme hızında düzenlenebilirler, ancak düzenleme elemanları DC olanlardan daha pahalıdır. Bunlar genellikle ev aletleri için kullanılır.
  • Step motor- Stepper olarak da bilinir, birçok yönden DC'ye benzerler, ancak düşük dönüş hızları ve güçleri vardır. Burada öne çıkan şey, eksenin konumlandırılması, yani onları belirli bir konuma yerleştirme hassasiyetidir. Dönüş açıları ve hızları çok fazla kontrol edilebilir, bu yüzden eskiden disket sürücüler, sabit sürücüler (HDD), robotlar, proses otomasyonu vb.
  • Servomotor: Küçük güçler ve bazı durumlarda 7000 RPM'ye kadar çıkan hızlarla çalışan step motorun bir evrimi olduğu söylenebilir. Bu motor, bir dişli redüksiyon kutusu ve bir kontrol devresi içerir. Adımlayıcılarla aynı konumlandırma hassasiyetine sahiptirler ve uygulanan tork açısından çok kararlıdırlar, bu da onları bazı robotlar ve endüstriyel uygulamalar için ideal kılar.

Step motorlar ve servo motorlar

rotor ve stator

Bu iki tür elektronik motorun ne olduğunu zaten biliyorsunuz, ancak bir şey söylemek istiyorum stepler hakkında daha fazla bilgi. Yaptıkları dönüş sürekli olarak değil, küçük adımlarla, dolayısıyla isimleri yapılır. Rotor (dönen kısım) dişli bir çark şeklindeyken, stator (dönmeyen kısım) aralıklı polarize elektromıknatıslardan oluşur. Bu şekilde, bir kişi "etkinleştirildiğinde", yan tarafları etkinleştirilmez, bu da rotor dişini kendisine doğru çeker ve karakterize edildikleri kesin ilerlemeyi sağlar.

drv8825
İlgili makale:
DRV8825: step motorlar için sürücü

Bağlı olarak rotor dişleri, sırayla aşağı yukarı ilerlemek mümkün olacaktır. Daha fazla dişiniz varsa, bir dönüşü tamamlamak için daha fazla adım gerekir, ancak adımlar daha kısa olacaktır, bu nedenle daha doğru bir motor olacaktır. Çok az dişiniz varsa, adımlar çok hassas olmadan daha ani atlamalar olacaktır. Bu nedenle, bir kademeli motorun bir dönüşü tamamlamak için atması gereken adımlar, açısal adımlara bağlı olacaktır.

Bu adımlar açısal standartlaştırılmıştırBununla birlikte, standart dışı eğime sahip bazı motorlar bulabilirsiniz. Açılar genellikle şu şekildedir: 1.8º, 5.625º, 7.5º, 11.25º, 18º, 45 are ve 90º. Bir step motorun tam dönüşü veya dönüşü (360º) tamamlaması için kaç adım gerektiğini hesaplamak için, sadece bölmeniz gerekir. Örneğin, 45º'lik bir step motorunuz varsa, 8 adımınız olur (360/45 = 8).

önyargılı spin (faz)

Bu motorların içinde 5 veya 6 kablolu tek kutuplu (en popüler) veya 4 kablolu çift kutuplu vardır. Buna göre biri ya da diğeri gerçekleştirilecek polarizasyon dizileri bobinlerinden geçen akım:

  • İçin polarizasyon iki kutuplu:
Paso Terminal A Terminal B C terminali D terminali
1 +V -V +V -V
2 +V -V -V +V
3 -V +V -V +V
4 -V +V +V -V
  • Için tek kutuplu:
Paso Bobin A Bobin B Bobin C Bobin D
1 +V +V 0 0
2 0 +V +V 0
3 0 0 +V +V
4 +V 0 0 +V

Her iki durumda da işlem aynıdır, rotoru eksenin konumlandırılmasını istediğiniz yere çekmek için bobinleri polarize eder. İstersen tek pozisyonda tutun, polarizasyonu korumalısınız bu pozisyon ve voila için. Ve ilerlemesini istiyorsanız, bir sonraki mıknatısı kutuplaştırırsınız ve bir adım daha atar, vb ...

Bir servo motor, bunun temelde bir step motor olduğunu zaten biliyorsunuz, bu nedenle söylenen her şey onlar için de çalışıyor. Bu redüksiyon dişlilerini içeren tek şey, dönüş başına çok daha fazla adım elde etmek ve dolayısıyla çok daha yüksek bir hassasiyete sahip olmaktır. Örneğin, dönüş başına 8 adımlı bir motor bulabilirsin, eğer 1:64 dişli kutusuna sahipse, çünkü bu sekizin her bir adımı 64 küçük adıma bölünür ve bu da tur başına maksimum 512 adım verir. Yani, her adım yaklaşık 0.7º olacaktır.

l298n
İlgili makale:
L298N: Arduino için motorları kontrol eden modül

Ayrıca biraz kullanmanız gerektiğini de ekleyin kontrolör örneğin H-Bridge ile polarizasyonu, hızı vb. kontrol etmek için. Bazı modeller L293, ULN2003, ULQ2003 vb.

Nereden Alınır

Sen çeşitli çevrimiçi sitelerde satın alın veya özel elektronik mağazalarında. Ayrıca, yeni başlayan biriyseniz, ihtiyacınız olan her şeyi ve hatta tabağı içeren kitleri kullanabilirsiniz. Arduino UNO ve projelerinizi denemeye ve oluşturmaya başlamak için kılavuz. Bu kitler, motorun kendisinden kontrol cihazlarına, panolara, devre tahtasına vb. İhtiyaç duyduğunuz her şeyi içerir.

Arduino ile step motor örneği

Step motor ve denetleyicili Arduino

Son olarak, bir göster Arduino ile pratik örnek, ULN2003 denetleyici ve 28BYJ-48 step motor kullanarak. Çok basit, ancak nasıl çalıştığını öğrenmeye başlamanız yeterli olacaktır, böylece bazı testler yapmaya başlayabilir ve nasıl davrandığını görebilirsiniz ...

Görüldüğü gibi bağlantı şemasıA (IN1), B (IN2), C (IN3) ve D (IN4) motor bobinleri Arduino kartındaki sırasıyla 8, 9, 10 ve 11 bağlantılarına atanmıştır. Öte yandan, sürücü veya kontrol panosu, bu sürücüye sahip beyaz plastik konektöre bağlı motoru beslemesi için uygun voltajla 5-12V pinlerinden (GND ve 5V Arduino'ya) beslenmelidir. denetleyici.

bu 28BYJ-48 motoru Dört bobinli tek kutuplu tip step motordur. Bu nedenle nasıl çalıştığına dair size bir fikir vermesi için HIGH (1) veya LOW (0) değerlerini Arduino kartından coillere aşağıdaki adımlar için aşağıdaki gibi gönderebilirsiniz:

Paso Bobin A Bobin B Bobin C Bobin D
1 YÜKSEK YÜKSEK DÜŞÜK DÜŞÜK
2 DÜŞÜK YÜKSEK YÜKSEK DÜŞÜK
3 DÜŞÜK DÜŞÜK YÜKSEK YÜKSEK
4 YÜKSEK DÜŞÜK DÜŞÜK YÜKSEK

Gelince hareketinizi programlamak için gereken taslak veya kodaşağıdaki kullanımda olacağı gibi Arduino IDE (değiştirin ve hareketin nasıl değiştirildiğini test etmek için deneyin):

// Definir pines conectados a las bobinas del driver
#define IN1  8
#define IN2  9
#define IN3  10
#define IN4  11

// Secuencia de pasos a par máximo del motor. Realmente es una matriz que representa la tabla del unipolar que he mostrado antes
int paso [4][4] =
{
  {1, 1, 0, 0},
  {0, 1, 1, 0},
  {0, 0, 1, 1},
  {1, 0, 0, 1}
};

void setup()
{
  // Todos los pines se configuran como salida, ya que el motor no enviará señal a Arduino
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
  pinMode(IN3, OUTPUT);
  pinMode(IN4, OUTPUT);
}

// Bucle para hacerlo girar
void loop()
{ 
    for (int i = 0; i < 4; i++)
    {
      digitalWrite(IN1, paso[i][0]);
      digitalWrite(IN2, paso[i][1]);
      digitalWrite(IN3, paso[i][2]);
      digitalWrite(IN4, paso[i][3]);
      delay(10);
    }
}


İlk yorumu siz

Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.