Arduino ile sürmek mümkün mü

Kullanıcı avatarı
Atacomp
Mesajlar: 8
Kayıt: 01 May 2018, 20:33
İletişim:
Durum: Çevrimdışı

Arduino ile sürmek mümkün mü

Mesaj gönderen Atacomp »

Arduino mega ile delta motor sürücü üzerinden servo motor sürebilirmiyim acaba.
Frekans problemi yada başka bir problem olurmu
Kullanıcı avatarı
cengun
Mesajlar: 4
Kayıt: 01 May 2018, 21:14
İletişim:
Durum: Çevrimdışı

Re: Arduino ile sürmek mümkün mü

Mesaj gönderen cengun »

Çok önemli bir konu. Artık çok hızlı mikro controllerlar var.
Var mı deneyen?
Kullanıcı avatarı
Uğur
Mesaj Panosu Yöneticisi
Mesajlar: 8874
Kayıt: 06 Mar 2018, 10:37
Konum: İstanbul
İletişim:
Durum: Çevrimdışı

Re: Arduino ile sürmek mümkün mü

Mesaj gönderen Uğur »

Arduino ile bir pin den pulse diğer pinden dir olacak şekilde istediğiniz frekansta istediğiniz adette pulse ürettikten sonra tabiki mümkün. Servo 5V pulse ile de sürülebilmektedir. Frekans bant genişliği 200 KHz e kadar ayarlanabilmektedir. Yani siz max 10 KHz üretebiliyorsanızda mümkün 1 KHz üretebiliyorsanız da mümkündür. İlgili digital pini istediğiniz pulse adeti kadar istediğiniz frekansta high-low yaparak gerçekleştirebilirsiniz. Aşağıda örnek bir yöntemi mevcut.

Kod: Tümünü seç

// testing a stepper motor with a Pololu A4988 driver board or equivalent
// on an Uno the onboard led will flash with each step
// this version uses delay() to manage timing

byte directionPin = 9;
byte stepPin = 8;
int numberOfSteps = 100;
byte ledPin = 13;
int pulseWidthMicros = 20;  // microseconds
int millisbetweenSteps = 250; // milliseconds - or try 1000 for slower steps


void setup() { 

  Serial.begin(9600);
  Serial.println("Starting StepperTest");
  digitalWrite(ledPin, LOW);
  
  delay(2000);

  pinMode(directionPin, OUTPUT);
  pinMode(stepPin, OUTPUT);
  pinMode(ledPin, OUTPUT);
  
 
  digitalWrite(directionPin, HIGH);
  for(int n = 0; n < numberOfSteps; n++) {
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(pulseWidthMicros); // this line is probably unnecessary
    digitalWrite(stepPin, LOW);
    
    delay(millisbetweenSteps);
    
    digitalWrite(ledPin, !digitalRead(ledPin));
  }
  
  delay(3000);
  

  digitalWrite(directionPin, LOW);
  for(int n = 0; n < numberOfSteps; n++) {
    digitalWrite(stepPin, HIGH);
    // delayMicroseconds(pulseWidthMicros); // probably not needed
    digitalWrite(stepPin, LOW);
    
    delay(millisbetweenSteps);
    
    digitalWrite(ledPin, !digitalRead(ledPin));
  }
}

void loop() { 
}
Uğur Birdal - Technical Support Team Manager - DELTA Electronics Turkiye

Bildirimler İçin Whatsapp Kanalımıza Katılın
Whatsapp Kanal

https://www.linkedin.com/in/ugurbirdal
Kullanıcı avatarı
cengun
Mesajlar: 4
Kayıt: 01 May 2018, 21:14
İletişim:
Durum: Çevrimdışı

Re: Arduino ile sürmek mümkün mü

Mesaj gönderen cengun »

0 ila1Khz üreterek motor sürücüyü 0 ile 3000 rpm arasında motoru sürecek şekilde nasıl kullanabilir.
Birde arduinoya position control olarak direk baglamak için gereken baglanti şemasını ve sürücüde hangi parametreleri girmemiz gerektigi konusunda bilgi verebilir misiniz?
Asd-b2-1521-b
Ecma-E213156s
Kullanıcı avatarı
Uğur
Mesaj Panosu Yöneticisi
Mesajlar: 8874
Kayıt: 06 Mar 2018, 10:37
Konum: İstanbul
İletişim:
Durum: Çevrimdışı

Re: Arduino ile sürmek mümkün mü

Mesaj gönderen Uğur »

3000/60 = 50 tur/sn

1KHz =1000 --> 1000/50 = 20 yapar. Bu değer bir servonun çalışması için tur çözünürlüğü olarak çok yetersiz olacaktır. Önerim tur çözünürlüğü olarak 200 rakamının altına düşmemenizdir. Bu durumda ya 10 KHz üreteç frekansına ihtiyacınız olacak yada 1 KHz ile 300d/dk değerine kadar çıkmalısınız.
Uğur Birdal - Technical Support Team Manager - DELTA Electronics Turkiye

Bildirimler İçin Whatsapp Kanalımıza Katılın
Whatsapp Kanal

https://www.linkedin.com/in/ugurbirdal
Kullanıcı avatarı
Uğur
Mesaj Panosu Yöneticisi
Mesajlar: 8874
Kayıt: 06 Mar 2018, 10:37
Konum: İstanbul
İletişim:
Durum: Çevrimdışı

Re: Arduino ile sürmek mümkün mü

Mesaj gönderen Uğur »

ASDA-B2 için varsayılan tur çözünürlüğü 160000 olup

P1-44= 160000
P1-45= 200

Yukarıdaki şekilde servo tur çözünürlüğünü 200 ayarlamış olursunuz.
Uğur Birdal - Technical Support Team Manager - DELTA Electronics Turkiye

Bildirimler İçin Whatsapp Kanalımıza Katılın
Whatsapp Kanal

https://www.linkedin.com/in/ugurbirdal
Kullanıcı avatarı
cengun
Mesajlar: 4
Kayıt: 01 May 2018, 21:14
İletişim:
Durum: Çevrimdışı

Re: Arduino ile sürmek mümkün mü

Mesaj gönderen cengun »

Çok tesekkürler Ugur bey. Son olarak; 1 sorum 10khz frekans 3000 rpm olarak ayarlandıgında, 5 khz verirsem 1500devir alırmıyım. 2 sorum direk 10khz verirsem motor kalkış yapabilirmi? Yoksa frekansı baslangıçta yavaşcamı arttırmalıyım.
Kullanıcı avatarı
Uğur
Mesaj Panosu Yöneticisi
Mesajlar: 8874
Kayıt: 06 Mar 2018, 10:37
Konum: İstanbul
İletişim:
Durum: Çevrimdışı

Re: Arduino ile sürmek mümkün mü

Mesaj gönderen Uğur »

Frekans devir arasında lineer bir ilişki vardır. 10 KHz 3000 devir aldığınız bir sistemde her 1 KHz lik değişim 300 d/dk ya karşılık gelir. 10Khz verdiğiniz zaman rampasız olarak motor ani kalkacak ver sert bir hareket yapacaktır. Motor ataleti yük ataletini karşıladığı sürece motorun kalkışında bir sorun olmayacaktır sertlik dışında. Ya frekansı rampalı vererek kaldırmalısınız yada P1-08 parametresinden filtre uygulayarak gelen sabit frekanstaki pulse karşılık kalkışta bir yumuşatma uygulatabilirsiniz. Parametreye "10" gibi değer girmeniz bile yumuşatmaya yetecektir.
Uğur Birdal - Technical Support Team Manager - DELTA Electronics Turkiye

Bildirimler İçin Whatsapp Kanalımıza Katılın
Whatsapp Kanal

https://www.linkedin.com/in/ugurbirdal
Kullanıcı avatarı
cengun
Mesajlar: 4
Kayıt: 01 May 2018, 21:14
İletişim:
Durum: Çevrimdışı

Re: Arduino ile sürmek mümkün mü

Mesaj gönderen cengun »

Ugur bey p1 08 e 10 vermek motor dururkende işe yarar mı?
Kullanıcı avatarı
Uğur
Mesaj Panosu Yöneticisi
Mesajlar: 8874
Kayıt: 06 Mar 2018, 10:37
Konum: İstanbul
İletişim:
Durum: Çevrimdışı

Re: Arduino ile sürmek mümkün mü

Mesaj gönderen Uğur »

Bir rampa kadar olmasada yumuşatmaya etkisi olacaktır.
Uğur Birdal - Technical Support Team Manager - DELTA Electronics Turkiye

Bildirimler İçin Whatsapp Kanalımıza Katılın
Whatsapp Kanal

https://www.linkedin.com/in/ugurbirdal
Cevapla

“Servo Forum” sayfasına dön