Arduino - Step Motor Kontrolü - Elektrik Elektronik Projeleri

Post Top Ad

13 Nisan 2015 Pazartesi

Arduino - Step Motor Kontrolü

Bu projede bir step motorun arduino ile kontrolünü sağlayacağız.

Proje Devresi:
MITSUMI M35SP-5
Bu projede kullandığım step motor MITSUMI M35SP-5 dir. Bu motor 7,5 derece adım açısına sahiptir.

Motora ait bilgiler aşağıdadır:

Stepper.h Kütüphanesi:
Step motor kullanmamızı kolaylaştırmak için stepper.h kütüphanesini kullanmaktayız. Bu kütüphanenin önemli iki fonksiyonu vardır.

setSpeed(rpm) : bu fonksiyon ile motorun dönüş hızını belirlemekteyiz.

Step(step_sayisi) : bu fonksiyon motoru döndermek istediğimiz step sayısını belirlemektedir. Yani parametre olarak girdiğimiz değer kadar motor adım dönecektir.

Projenin Kaynak Kodu:
#include <Stepper.h>

int in1Pin = 9;
int in2Pin = 10;
int in3Pin = 11;
int in4Pin = 12;

Stepper stepMotor(48, in1Pin, in2Pin, in3Pin, in4Pin);
      //stepMotor nesnesi üretildi
      //ve Step motorun bir tam turu 48 parçaya(step) bölündü
      //dolayısıyla her bir stepte motor 360/48=7,5 derece dönecek
                                                        
void setup()
{
  pinMode(in1Pin, OUTPUT);
  pinMode(in2Pin, OUTPUT);
  pinMode(in3Pin, OUTPUT);
  pinMode(in4Pin, OUTPUT);
 
  stepMotor.setSpeed(50); //motorun rpm hızı = 50
}

void loop()
{
  stepMotor.step(24); // motor 24 step dönecek
                        // 24*7,5=180 derece dönecek
  delay(1000);
}

3 yorum:

  1. Bana step motoru 5 saniyede 180 derece döndürup sonra 5 sn bekleyip bunu sonsuza kadar devam ettirecek kodu ve Semayi yazabilirmusiniz ne olur çok acil

    YanıtlaSil
  2. Bir adım motor veya step motor, dıştan uygulanan elektrik sinyalleri ile belirli adımlarda hareket eden bir elektrik motorudur. Bu motorlar, özellikle hassas pozisyon kontrolü gerektiren uygulamalarda kullanılır. Adım motorların en büyük avantajlarından biri, bir kontrol sinyali olmadan konumlarını koruyabilmeleridir. Adım motorları genellikle CNC makineleri, 3D yazıcılar ve robotik uygulamalar gibi durumlar için tercih edilir.

    YanıtlaSil
  3. Arduino ile bir adım motorunun (step motor) çalıştırılması için genellikle bir motor sürücüsü (örneğin A4988, DRV8825 gibi) kullanılır. Aşağıda, bir Arduino ve A4988 motor sürücüsü ile bir adım motorunun nasıl çalıştırılacağına dair temel bir rehber sunulmuştur:

    ### Malzemeler:
    - Arduino Uno
    - A4988 motor sürücüsü
    - Bipolar adım motor (NEMA 17 gibi)
    - Güç kaynağı (12V önerilir)
    - Breadboard ve jumper kablolar

    ### Bağlantılar:
    1. A4988 sürücüsünün `VDD` ve `GND` pinleri Arduino'nun `5V` ve `GND` pinlerine bağlanır.
    2. Sürücünün `1A` ve `1B` pinleri adım motorunun bir fazına, `2A` ve `2B` pinleri diğer fazına bağlanır.
    3. A4988 sürücüsünün `VMOT` ve `GND` pinleri harici güç kaynağına bağlanır.
    4. Sürücünün `STEP` pinine Arduino'nun bir dijital pinine (örn. D3) ve `DIR` pinine başka bir dijital pine (örn. D4) bağlanır.
    5. A4988 sürücüsünde uygun bir mikro adım çözünürlüğü ayarlamak için jumper ayarları yapılır (isteğe bağlı).

    ### Kod:
    ```c
    const int stepPin = 3; // STEP pinine bağlı Arduino pin numarası
    const int dirPin = 4; // DIR pinine bağlı Arduino pin numarası

    void setup() {
    pinMode(stepPin, OUTPUT);
    pinMode(dirPin, OUTPUT);

    digitalWrite(dirPin, HIGH); // Motorun dönüş yönünü ayarla: HIGH veya LOW
    }

    void loop() {
    for(int i = 0; i < 200; i++) { // Örnek olarak 200 adım atıyoruz
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(1000); // Adım hızını ayarla
    digitalWrite(stepPin, LOW);
    delayMicroseconds(1000);
    }
    delay(1000); // Bir saniye bekle

    // Dönüş yönünü değiştir
    digitalWrite(dirPin, !digitalRead(dirPin));
    }
    ```

    Bu basit örnek, adım motorun belirli bir adım sayısı kadar dönmesini ve ardından yönünü değiştirerek tekrar dönmesini sağlar. Fakat gerçek uygulamalarda motor sürücüsü ayarları, mikro adım çözünürlüğü ve diğer faktörler göz önünde bulundurularak daha kompleks kodlar yazabilirsiniz.

    YanıtlaSil

Post Top Ad