本帖最后由 DianGongN 于 2018-10-14 19:40 编辑
先简单说一下步进电机控制原理,然后回答LZ的问题。
常用的步进电机有A相和B相两个绕组,所以有4个引线。
改变A、B绕组电流的方向,可以前进或者后退1个步距角,比如1.8°。对1.8°进行32细分,可以得到0.05625°的理论精度。细分通过改变A、B绕组电流的比值来实现。通常采用成品步进电机驱动器来控制步进电机,一般都有细分功能。细分数值一般通过微型拨动开关设定,也可以软件设定。一般可设为16、32、64、.....256。过大的细分数值没什么意义,实际精度达不到。
控制器的控制信号有2个: 1、方向信号,比如高电平=正向,低电平=反向; 2、脉冲信号,每个脉冲走0.05625°。(假定步距角=1.8°,32细分)
回答LZ问题1: Q:“问题:电机是不是可以通过限位开关来控制,我无限连续给脉冲型号,只要限位开关被触发了就停止脉冲。也就不存在失步的现象了,直到触碰限位开关才停止。” A:直接通过限位开关来控制原理上可行,实际很少见,一般用程序控制。限位开关作为输入信号进入cpu。控制算法:上限位到达时,如果方向信号也是向上,则禁止脉冲信号。上限位到达时,如果方向信号是向下,则允许脉冲信号。下限位算法类似。 可见直接通过限位开关来控制,必须增加逻辑电路才能实现。LZ所说“停止脉冲”,将使运动完全停止,无法脱离限位。
回答LZ问题2: Q: ‘还是说电机只能按程序给多少个脉冲就走多少个脉冲,不接受第三方指令。” A:一般的控制器,就是接受方向信号和脉冲信号,只要能够提供这2个信号即可,无论用程序还是其他方式都可以。比如可以简单的用1个乒乓开关产生高电平和低电平来控制方向,用1个按钮来产生脉冲信号控制走多少个0.05625°,每按1次按钮产生1个脉冲。 如果没有控制器,只要有电源,也能直接控制步进电机的运动,这需要一定的电路知识。
|