求教86步进电机反转抖动的原因

2020-01-17 19:12发布

各位大能晚上好,最近用51配合步进电机驱动器控制了个4线的86步进电机;
单片机控制的程序很简单就是
PUL = 1;
DELAY();
PUL = 0;
DELAY();
然后依靠for循环要几个脉冲就循环几次。
一开始是正反转都抖动严重而且失步的。
后来我加了74LS573的锁存器之后,正转就很稳定了,没有出现失步的情况。
然后问题来了,反转时步进电机就剧烈抖动,且失步严重,没有规律可循。
求大神指点迷津
22条回答
柯铭凯
1楼 · 2020-01-20 00:58.采纳回答
shawn_bu 发表于 2016-4-7 08:04
怎么解决的说明一下啊,让后面看帖的人有个头绪

哥们,程序还没看过吧,我犯了个低级错误,按位取反 ~ 写成了 ! 就挂了。
改程序以后没问题了
不过我还是不理解,为什么我之前直接用5v电源去触发会抖动。
柯铭凯
2楼-- · 2020-01-17 22:33
 精彩回答 2  元偷偷看……1人看过
lryxr2507
3楼-- · 2020-01-17 22:40
采用定时器中断取反...
buck
4楼-- · 2020-01-18 03:37
楼主没做加减速控制吧,放慢速度试试先
柯铭凯
5楼-- · 2020-01-18 09:02
buck 发表于 2016-4-3 19:33
楼主没做加减速控制吧,放慢速度试试先

放慢过速度了,100ms一个脉冲,这么慢了,应该于速度无关
柯铭凯
6楼-- · 2020-01-18 10:36
lryxr2507 发表于 2016-4-3 19:16
采用定时器中断取反...

直接取反不行??毕竟正转是正常工作的啊
lryxr2507
7楼-- · 2020-01-18 11:54
 精彩回答 2  元偷偷看……
myqiang1990
8楼-- · 2020-01-18 13:40
本帖最后由 myqiang1990 于 2016-4-3 20:17 编辑

看来楼主的驱动是脉冲+方向的,楼主应该切换了方向了吧?检查一下方向切换对了没有~如果对了,脉冲也发了,那我估计楼主的驱动器是不是有毛病~一般剧烈抖动,无规律可循,都是驱动的脉冲发送不正常引起的,就是相位不对,一个是线的相位接得不对,一个是驱动的时候顺序没搞对~
lswood
9楼-- · 2020-01-18 15:38
驱动器和电机之间线路接触不好或者缺项,抖动转向飘忽不定
dengxm2009
10楼-- · 2020-01-18 21:24
a b相是不是接反了呀
Q男
11楼-- · 2020-01-19 01:30
1,检查dir接线,确定是不是线的问题。
2,切换任意相的线序,确定是不是机械问题。

只要是可以重复性的问题,都不是问题,保持一颗清醒的头脑,理清楚思路。