网站颜色:

新品Arduino cnc shield v3 雕刻机扩展板 3D打印机 A4988驱动板


 

一、 产品介绍

该扩展板可用作雕刻机,3D打印机等的驱动扩展板,一共有4路步进电机驱动模块的插槽,(注意本板子不包含A(咨询特价)步进电机驱动模块,需要可在本店另购),可驱动4路不进电机,而每一路步进电机都只需要2IO口,也就是说,6IO口就可以很好的管理3个步进电机,使用起来非常的方便,告别传统步进电机操作繁琐。

二、Arduino UNO 与模块IO口对应关系介绍

 

步进电机的基本控制需要的引脚,其他引脚是在雕刻机,或3D打印机的时候才用到的,这里我们不作详解,IO对应如上图。

  Arduino UNO----------------------扩展板

    8 ------------------------  EN (步进电机驱动使能端,低电平有效)

-----------------------  Z.DIR(Z轴的方向控制)

-----------------------  Y.DIR(Y轴的方向控制)

-----------------------  X.DIR(X轴的方向控制)

4 ----------------------  Z.STEP(Z轴的步进控制)

3 ----------------------  Y.STEP(Y轴的步进控制)

2 ----------------------  X.STEP(X轴的步进控制)

//下面是简单的步进电机控制程序,

#define EN        8       //步进电机使能端,低电平有效

#define X_DIR     5       //X轴 步进电机方向控制

#define Y_DIR     6       //y轴 步进电机方向控制

#define Z_DIR     7       //z轴 步进电机方向控制

#define X_STP     2       //x轴 步进控制

#define Y_STP     3       //y轴 步进控制

#define Z_STP     4       //z轴 步进控制

/*

//函数:step    功能:控制步进电机方向,步数。

//参数:dir 方向控制, dirPin对应步进电机的DIR引脚,stepperPin 对应步进电机的step引脚, steps 步进的步数

//无返回值

*/

void step(boolean dir, byte dirPin, byte stepperPin, int steps)

{

  digitalWrite(dirPin, dir);

  delay(50);

  for (int i = 0; i < steps; i++) {

    digitalWrite(stepperPin, HIGH);

    delayMicroseconds(800);  

    digitalWrite(stepperPin, LOW);

    delayMicroseconds(800);  

  }

}

void setup(){//将步进电机用到的IO管脚设置成输出

  pinMode(X_DIR, OUTPUT); pinMode(X_STP, OUTPUT);

  pinMode(Y_DIR, OUTPUT); pinMode(Y_STP, OUTPUT);

  pinMode(Z_DIR, OUTPUT); pinMode(Z_STP, OUTPUT);

  pinMode(EN, OUTPUT);

  digitalWrite(EN, LOW);

}

void loop(){

  step(false, X_DIR, X_STP, 200); //X轴电机 反转1圈,200步为一圈

  step(false, Y_DIR, Y_STP, 200); //y轴电机 反转1圈,200步为一圈

  step(false, Z_DIR, Z_STP, 200); //z轴电机 反转1圈,200步为一圈

  delay(1000);

  step(true, X_DIR, X_STP, 200); //X轴电机 正转1圈,200步为一圈

  step(true, Y_DIR, Y_STP, 200); //y轴电机 正转1圈,200步为一圈

  step(true, Z_DIR, Z_STP, 200); //z轴电机 正转1圈,200步为一圈

  delay(1000);

}

实验现象:步进电机反转一圈,停顿1秒,再正传一圈,如此循环。

值得注意的是:在接插A4988模块的时候注意不要插反,步进电机接线方式是:

2A ,2B 为一组(红,绿), 1A,1B为一组(蓝,黄)想改变方向,改变其中一组的位置即可,比如2A,与2B交换。

热门设计服务