e
sv

Arduino ile Start Stop Motor Çalıştırma

858 Okunma — 26 Şubat 2024 09:52
Arduino-Start-Stop
avatar

Admin

  • e 0

    Mutlu

  • e 0

    Eğlenmiş

  • e 0

    Şaşırmış

  • e 0

    Kızgın

  • e 0

    Üzgün

Arduino ile Start Stop Motor Çalıştırma

Tek buton ile start stop

Tek bir düğme (buton) kullanarak Arduino ile start-stop işlemi yapmak için aşağıda basit bir örnek kod bulunmaktadır. Bu örnek, basıldığında bir işlemi başlatan ve tekrar basıldığında işlemi durduran bir düğme kontrolü sağlar:

const int buttonPin = 2;  // Düğme pinini tanımla
int buttonState = 0;     // Düğme durumunu sakla
bool motorRunning = false; // Motorun çalışıp çalışmadığını kontrol et

void setup() {
  pinMode(buttonPin, INPUT);
}

void loop() {
  buttonState = digitalRead(buttonPin);

  if (buttonState == HIGH) {
    // Düğmeye basıldığında işlemleri gerçekleştir
    delay(50);  // Debouncing için küçük bir gecikme

    if (!motorRunning) {
      // Motor şu anda çalışmıyorsa başlat
      startMotor();
    } else {
      // Motor çalışıyorsa durdur
      stopMotor();
    }
  }
}

void startMotor() {
  // Motoru başlat
  Serial.println("Motor Başlatıldı");
  motorRunning = true;
}

void stopMotor() {
  // Motoru durdur
  Serial.println("Motor Durduruldu");
  motorRunning = false;
}
const int buttonPin = 2;  // Düğme pinini tanımla
int buttonState = 0;     // Düğme durumunu sakla
bool motorRunning = false; // Motorun çalışıp çalışmadığını kontrol et

void setup() {
  pinMode(buttonPin, INPUT);
}

void loop() {
  buttonState = digitalRead(buttonPin);

  if (buttonState == HIGH) {
    // Düğmeye basıldığında işlemleri gerçekleştir
    delay(50);  // Debouncing için küçük bir gecikme

    if (!motorRunning) {
      // Motor şu anda çalışmıyorsa başlat
      startMotor();
    } else {
      // Motor çalışıyorsa durdur
      stopMotor();
    }
  }
}

void startMotor() {
  // Motoru başlat
  Serial.println("Motor Başlatıldı");
  motorRunning = true;
}

void stopMotor() {
  // Motoru durdur
  Serial.println("Motor Durduruldu");
  motorRunning = false;
}

Bu kod, basıldığında “Motor Başlatıldı” mesajını seri monitöre gönderir ve tekrar basıldığında “Motor Durduruldu” mesajını gönderir. Bu basit örnekte, düğme durumu değiştikçe motor durumu (motorRunning) güncellenir ve ilgili mesajlar seri monitöre yazdırılır. Bu örnek, bir başka basit durum makinesi uygulamasıdır.

Arduino ile Start Stop
Arduino ile Start Stop Motor Çalıştırma 4

Tek Butonla Start ,Stop ve Devir verme

L298N motor sürücüsü kullanarak tek bir düğme (buton) ile DC motor kontrolü yapmak için bir mikrodenetleyici (Arduino gibi) kullanabilirsiniz. Aşağıda, Arduino ile basit bir kod örneği bulunmaktadır. Bu örnek, bir düğme kullanarak DC motoru kontrol etmek için basit bir durum makinesi tasarımını içerir.

const int buttonPin = 2;  // Düğme pinini tanımla
int buttonState = 0;     // Düğme durumunu sakla
int motorSpeed = 100;    // Başlangıçta ayarlanan motor hızı
bool motorRunning = false; // Motorun çalışıp çalışmadığını kontrol et

void setup() {
  pinMode(buttonPin, INPUT);
}

void loop() {
  buttonState = digitalRead(buttonPin);

  if (buttonState == HIGH) {
    // Düğmeye basıldığında işlemleri gerçekleştir
    delay(50);  // Debouncing için küçük bir gecikme

    if (!motorRunning) {
      // Motor şu anda çalışmıyorsa başlat
      startMotor();
    } else {
      // Motor çalışıyorsa hızlandır veya durdur
      if (motorSpeed < 255) {
        // Eğer motor hızı 255'e kadar değilse hızlandır
        motorSpeed += 50;
        analogWrite(motorSpeed);
      } else {
        // Motor hızı 255'e ulaştıysa durdur
        stopMotor();
      }
    }
  }
}

void startMotor() {
  // Motoru başlat ve başlangıç hızını ayarla
  analogWrite(motorSpeed);
  motorRunning = true;
}

void stopMotor() {
  // Motoru durdur
  analogWrite(0);
  motorSpeed = 100;  // Başlangıç hızını sıfırla
  motorRunning = false;
}

Arduino ile Yıldız Üçgen Yol verme

Yıldız-üçgen (star-delta) motor kontrolü, motorun başlangıçta düşük hızda başlatılması ve daha sonra yüksek hıza geçiş yapması amacıyla kullanılan bir yöntemdir. Bu yöntem, motorun başlangıçta daha düşük akımla çalışmasını sağlayarak aşırı akımı önler ve motorun mekanik yük altında daha yumuşak bir şekilde başlamasına yardımcı olur. Yıldız-üçgen kontrolü genellikle üç fazlı motorlar için kullanılır.

Arduino ile yıldız-üçgen kontrolü sağlamak için, yıldız ve üçgen bağlantıları arasında geçiş yapabilmek için uygun bir motor sürücü devresine ihtiyacınız olacaktır. Ayrıca, motorun durumunu izlemek ve kontrol etmek için Arduino’dan çıkışlar kullanmanız gerekebilir.

Aşağıda, basit bir örnek yıldız-üçgen kontrolü için Arduino kodu verilmiştir. Bu örnek kod, yıldız ve üçgen bağlantıları arasında geçiş yaparak motoru kontrol eder:

int starPin1 = 2;
int starPin2 = 3;
int starPin3 = 4;

int deltaPin1 = 5;
int deltaPin2 = 6;
int deltaPin3 = 7;

void setup() {
  pinMode(starPin1, OUTPUT);
  pinMode(starPin2, OUTPUT);
  pinMode(starPin3, OUTPUT);

  pinMode(deltaPin1, OUTPUT);
  pinMode(deltaPin2, OUTPUT);
  pinMode(deltaPin3, OUTPUT);
}

void loop() {
  // Yıldız bağlantısını aktif et
  activateStarConnection();
  delay(5000);  // 5 saniye beklet

  // Üçgen bağlantısını aktif et
  activateDeltaConnection();
  delay(5000);  // 5 saniye beklet
}

void activateStarConnection() {
  digitalWrite(starPin1, HIGH);
  digitalWrite(starPin2, HIGH);
  digitalWrite(starPin3, HIGH);

  digitalWrite(deltaPin1, LOW);
  digitalWrite(deltaPin2, LOW);
  digitalWrite(deltaPin3, LOW);
}

void activateDeltaConnection() {
  digitalWrite(starPin1, LOW);
  digitalWrite(starPin2, LOW);
  digitalWrite(starPin3, LOW);

  digitalWrite(deltaPin1, HIGH);
  digitalWrite(deltaPin2, HIGH);
  digitalWrite(deltaPin3, HIGH);
}

Bu kod, yıldız bağlantısını aktif eder, 5 saniye bekler, ardından üçgen bağlantısını aktif eder ve tekrar 5 saniye bekler. Bu işlemi döngü içinde tekrarlar. Ancak, bu sadece bir örnek kod olup, kullanılacak motor sürücü devresine ve motor bağlantılarına bağlı olarak değişiklik gösterebilir.

Arduino ile Start Stop Süreli Motor Çalıştırma

Arduino ile ekran kullanımı
Arduino ile Start Stop Motor Çalıştırma 5

Arduino kullanarak belirli bir süre boyunca bir motoru başlatma ve daha sonra durdurma işlemi gerçekleştirmek için aşağıdaki örnek kodu kullanabilirsiniz. Bu örnek, bir düğme (buton) kullanarak motoru belirli bir süre boyunca çalıştırır ve ardından motoru durdurur.

const int buttonPin = 2;     // Düğme pinini tanımla
const int motorPin = 9;      // Motor pinini tanımla

int buttonState = 0;         // Düğme durumunu sakla
bool motorRunning = false;    // Motorun çalışıp çalışmadığını kontrol et

unsigned long motorStartTime;  // Motorun başlatıldığı zamanı sakla
const unsigned long motorRunTime = 5000;  // Motorun kaç milisaniye boyunca çalışacağını belirle (örneğin 5000 ms = 5 saniye)

void setup() {
  pinMode(buttonPin, INPUT);
  pinMode(motorPin, OUTPUT);
}

void loop() {
  buttonState = digitalRead(buttonPin);

  if (buttonState == HIGH && !motorRunning) {
    // Düğmeye basıldığında ve motor çalışmıyorsa
    startMotor();
  }

  if (motorRunning && millis() - motorStartTime >= motorRunTime) {
    // Motor çalışıyorsa ve belirlenen süre dolduysa
    stopMotor();
  }
}

void startMotor() {
  digitalWrite(motorPin, HIGH);
  motorRunning = true;
  motorStartTime = millis();  // Motorun başlatıldığı zamanı kaydet
}

void stopMotor() {
  digitalWrite(motorPin, LOW);
  motorRunning = false;
}

Bu örnek kod, belirli bir süre boyunca bir düğmeye basıldığında motoru başlatır ve belirlenen süre dolunca motoru durdurur. motorRunTime değişkeni, motorun ne kadar süreyle çalışacağını belirtir. Bu değeri ihtiyacınıza göre güncelleyebilirsiniz. Bu kodu kullanmadan önce, bağlantılarınızı ve pin numaralarınızı kontrol edin ve gerektiğinde değiştirin.

etiketlerETİKETLER
Üzgünüm, bu içerik için hiç etiket bulunmuyor.
okuyucu yorumlarıOKUYUCU YORUMLARI

Yorum yapabilmek için giriş yapmalısınız.

Sıradaki içerik:

Arduino ile Start Stop Motor Çalıştırma

Araç çubuğuna atla