ใครเคยใช้ TB6560 ควบคุม stepping motor บ้างครับ รบกวนช่วยผมทีครับ

จากโค้ดข้างล่างนี้ คือผมหาโค้ดนี้มาจากอินเทอร์เน็ต ผมอยากรู้ว่าผมจะสามารถกำหนดอัตราเร็วการหมุน เช่น จะเอา 2 รอบใน 3 นาที หรืออะไรประมาณนี้อะครับ ผมต้องเขียนโค้ดยังไงครับ ผมตั้งค่าความละเอียดที่ 1/16

จากโค้ด เขาตั้งไว้ 1800 pluse   stepping motor ของผมมันจะหมุน 1800/2.3 pluse จะได้ 1 รอบโดยประมาณ ( ผมวัดจากการมองด้วยสายตา และประมาณ)

พอดีเพิ่งหัดลองเล่นน่ะครับ ช่วยแนะนำหน่อยนะครับว่าผมควรเขียนยังไง

#define stepaxisx  8
#define diraxisx  9
int a;

void setup()
{
  Serial.begin(9600);
  pinMode(stepaxisx, OUTPUT);
  pinMode(diraxisx, OUTPUT);
}


void loop()
{
  Forwardx(1800);
  Backx(1800);
}

void  Forwardx(int pluse)
{
     for(a=0;a<pluse;a++)
     {     
    digitalWrite(diraxisx, LOW);
    digitalWrite(stepaxisx, HIGH);   
    delay(1);               
    digitalWrite(stepaxisx, LOW);  
    delay(1);
     }      
}


void  Backx(int pluse)
{
       for(a=0;a<pluse;a++)
     {
    digitalWrite(diraxisx, HIGH);
    digitalWrite(stepaxisx, HIGH);   
    delay(1);               
    digitalWrite(stepaxisx, LOW);  
    delay(1);
     }   
}
แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่