hero245 发表于 2016-4-30 10:21:25

请教关于步进电机驱动的问题。

本帖最后由 hero245 于 2016-4-30 10:24 编辑

最近帮产线上搞个生产的夹具,要用到步进电机。
于是为了方便就买了个步进电机的驱动器。给个单脉冲就能动的那种,只要控制方向与使能就行了。

夹具的功能只要实现,12种速度、加上步数控制即可。
通过简单的曲线拟合,在最高速度也没有丢步。

但发现个问题,我现在驱动细分是800个脉冲一圈。
如果步数的400的倍数,如果400,800,1600。。。等,最高速度12,怎么按都不会失步。

但一旦将步数设置为不是400的倍数是,就会有丢步的情况,而且比较严重。如果440、830、900步时,就会失步。

控制的过程基本上都 是加速---匀速---减速   每个速度的的加速过程是不一样的。

同一速度,不同步数加速过程是一样的。步数主要在匀速阶段增减。


为什么会出现是这个情况呢,是驱动器的问题吗?





dancruiser 发表于 2016-4-30 10:50:06

本帖最后由 dancruiser 于 2016-4-30 10:54 编辑

电机是1.8度/步的?
楼主的意思是设定行走距离,不是400的整数就会丢步?
发生丢步时,可以发现电机运行的不正常吗?(例如堵转)

xiaowu191 发表于 2016-4-30 10:50:21

2相电机,4细分;

先不怀疑驱动;先逻辑分析仪测一下脉冲对不对;

“同一速度,不同步数加速过程是一样的。步数主要在匀速阶段增减。”会有最大步数大于加速减速段需要步数的情况?

hero245 发表于 2016-4-30 10:57:28

dancruiser 发表于 2016-4-30 10:50
电机是1.8度/步的?
楼主的意思是设定行走距离,不是400的整数就会丢步?
发生丢步时,可以发现电机运行的 ...

失步时明显感觉启动时震动变大了。

Vmao 发表于 2016-4-30 11:01:36

换驱动试试,上雷赛的试试

hero245 发表于 2016-4-30 11:08:42

xiaowu191 发表于 2016-4-30 10:50
2相电机,4细分;

先不怀疑驱动;先逻辑分析仪测一下脉冲对不对;


我的设置是这样的,

加速与减速的步数是固定的,大概20步,不同的速度不一样。
假如,目标步数是800,那匀速运行的步数是800-20=780,实际上总步数还是800.

dancruiser 发表于 2016-4-30 11:09:10

hero245 发表于 2016-4-30 10:57
失步时明显感觉启动时震动变大了。

你在整步、半步驱动时,貌似都没有问题。感觉你的这个现象跟驱动器有关。
1.试着加大驱动电流(稍微设定大一档,试试看)
2.驱动器的供电功率是否足够
3.细分驱动时,其实每一步驱动器输出的电流是不一样的,不知道这个驱动器是否做到这点。

sbusr 发表于 2016-4-30 11:38:22

先估算实例需要的负载扭矩,看电机本身是否满足。以及驱动器输出电流的能力能否达到电机需要的电流,一般驱动器设置的电流要比电机的额定电流小些。
测一下输出的脉冲数量,与你想要输出的数量是否一直。
还要注意全过程的最大速度,一般启动转速我用的小于1转每秒,虽然有的驱动器能达到5转每秒的启动速度。要有适当的加减速过程,简单粗暴的是匀加速,就是速度斜线,加速度定值。好一点的给加速度做个变化过程,比如加速度用斜线,或正弦。
用少点的步数测测出来的脉冲数量对不对。

szmachine 发表于 2016-4-30 13:11:35

这个和驱动器+电机都有关系的。{:smile:}

codefish 发表于 2016-4-30 14:54:33

本帖最后由 codefish 于 2016-4-30 14:55 编辑

发脉冲有加速和减速过程太简单了吧。
加速过程不合理,肯定会丢步的。

woaidamimi 发表于 2016-4-30 15:00:46

审题3分钟失败

xuehu5808 发表于 2016-4-30 17:03:27

把细分设大一点吧,比如1600,或者3200,加减速时间不要设定的太短,一般要超过30MS。另外你可以先去掉加减速,直接把速度射到一转/分钟,这样匀速跑,看看是否丢步,如果这样还丢步,那可能是驱动的问题,或者电源电压,电源功率之类的问题。一步步排除很快就能找到问题

mmiker 发表于 2016-4-30 20:22:21

楼主手头有arduino板子吗?下个 AccelStepper 库 和例子吧,先跑起来看是硬件问题还是你软件问题。
页: [1]
查看完整版本: 请教关于步进电机驱动的问题。