加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入

手持脱机步进电机控制器

2019/08/14
150
服务支持:
技术交流群

完成交易后在“购买成功”页面扫码入群,即可与技术大咖们分享疑惑和经验、收获成长和认同、领取优惠和红包等。

虚拟商品不可退

当前内容为数字版权作品,购买后不支持退换且无法转移使用。

加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论
放大
方块图(2)
  • 方案介绍
  • 相关文件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

手持脱机步进电机控制器


简介:
不知道各位小伙伴们常不常用步进电机,因其精确的控制性很容易实现步进电机的角度和速度控制,然而也因为此特性导致在前期对步进电机调试时比较繁琐;所以结合arduino nano和A4988,我们开源一款方便测试步进电机,同时又可烧写不同程序实现移植复用的手持脱机步进电机控制器。

材料:

品名 单价 数量 合计
arduino nano 12 1 12
A4988步进电机驱动 2.9 1 2.9
3.5mmDC插座 0.8 1 0.8
排插7pin 0.09 4 0.36
排插8pin 0.12 2 0.24
排插4pin 0.08 1 0.08
XH2.54,4pin弯针 0.04 1 0.04
导线 0.1 18 1.8
洞洞板,3x7cm 2.5 1 2.5

接线图

烧录代码:

int Msteppin=7;

int Mdirpin=6;

int Menpin=8;

int i=200;

int BUTTON1 = A2;

int BUTTON2 = A3;

char key;

void setup()

{

pinMode(Msteppin,OUTPUT);//驱动

pinMode(Mdirpin,OUTPUT);//方向

pinMode(Menpin,OUTPUT);//使能

digitalWrite(Menpin,LOW);

pinMode(A2,INPUT_PULLUP);//A2上拉

pinMode(A3,INPUT_PULLUP);//A3上拉

Serial.begin(9600);

}

void a()

{digitalWrite(Mdirpin,HIGH);

int i=0;

while(i<200)

{digitalWrite(Msteppin,HIGH);

delayMicroseconds(800);

digitalWrite(Msteppin,LOW);

delayMicroseconds(800);

i++;}

}

void b()

{

digitalWrite(Mdirpin,LOW);

int i=0;

while(i<200)

{digitalWrite(Msteppin,HIGH);

delayMicroseconds(800);

digitalWrite(Msteppin,LOW);

delayMicroseconds(800);

i++;}

}

void loop()

{

while (digitalRead(BUTTON2) == LOW)

{ a();Serial.println('0'); }

while (digitalRead(BUTTON1) == LOW)

{ b();Serial.println('c'); }

int key=Serial.read();

switch(key)

{ case'0':a();delay(10);break;

case'c':b();delay(10);break;

case't':a();delay(1000);b();delay(1000);break;

default:break;

}

}

视频展示:

  • Gerber_pcb_20190814130154.zip
    描述:手持脱机步进电机控制器pcb

相关推荐

电子产业图谱