healthtall 发表于 2017-1-5 09:21:02

同一个程序VS两种步进电机-----为啥结果不一样呢?

用的是两种步进电机
第一种是15BY型号的,如图片,第二种是普通的28BY的,程序如下

void setup()
{
int a;
for(a=5;a<9;a++)
{
      pinMode(a,OUTPUT);//定义引脚
}
}


void loop()
{
   zhengzhuan();       //正转(就是按一个方向转)
}


void zhengzhuan()      //正转调用程序
{
    int i;
    for(i=5;i<9;i++)
    {
      digitalWrite(i,HIGH);
      delay(10);
      digitalWrite(i,LOW);
      }
}


15BY用的是L298N控制,28BY用的是ULN2003控制,现在用同一个程序发现只有28BY正常转动,15BY就是一直抖动,请各位大神指点一下,这个程序对于15BY来讲需要变动哪里,是不是程序和参数不匹配啊

Super169 发表于 2017-1-5 11:36:03

你既程式....感覺上完全唔 work 才合理.

一般會用 4 steps 或者 7 steps 控制,Instructables.com 有篇文講得幾詳細既, 你可以去慢慢研究下.
http://www.instructables.com/id/BYJ48-Stepper-Motor/


而你既程式係全部直接轉 H / L (中間 dleay 10ms), 唔知點解了, 而且放 delay 既位置都好有問題, 每次只用 1 pin 控制?
既然你用 28BYJ 可以正常转动, 或者有你背後既原因.我反而想知是你跟據什麼去寫的.

PINKWALKMAN 发表于 2017-1-5 16:45:30

一个是两相四线,一个是四相五线的程序肯定不通用。前面的那个步进电机控制最简单,一根线COM端接地,其他的ABCD一次接好,按顺序给高低电平就完事儿啦,后面这个两相四线的要啰嗦一些。具体看http://wenku.baidu.com/link?url=ssj_4eCZMTyNW1AeSNfC6MCd6NEU4wbTpZr1PSKIFs-_b1KL21Kx-4IBSWwIu6ArznMp2IvmLPDnR3P6dntc8tDvG4mr2bNhHRBxrK-VKaW
,还有不懂的再聊哈。

yusanfengyi 发表于 2017-1-5 19:06:12


拉倒吧,你还是用点专业的步进电机吧,比如雷赛步进电机和雷赛驱动器,你看看我的帖子

wwwusr 发表于 2017-1-7 06:50:24

PINKWALKMAN 说的对,上面的那个是4相5线,用2008之类的直驱,下面的的2相4线,要用A4988之类的驱动,控制方式完全不一样
建议:再弄个A4988吧。

healthtall 发表于 2020-1-16 09:35:11

Super169 发表于 2017-1-5 11:36
你既程式....感覺上完全唔 work 才合理.

一般會用 4 steps 或者 7 steps 控制,Instructables.com 有篇文 ...

哥们,你的普通发俺有点理解不了啊~~~:L
页: [1]
查看完整版本: 同一个程序VS两种步进电机-----为啥结果不一样呢?