Bu projede
bir step motorun arduino ile kontrolünü sağlayacağız.
Proje Devresi:
Proje Devresi:
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:
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.
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);
}
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ıtlaSilBir 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ıtlaSilArduino 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:
YanıtlaSil### 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.