double_z
无知最可怕
级别: 工控侠客
精华主题: 0
发帖数量: 88 个
工控威望: 2841 点
下载积分: 761 分
在线时间: 86(小时)
注册时间: 2011-11-16
最后登录: 2018-07-19
查看double_z的 主题 / 回贴
楼主  发表于: 2012-07-07 20:49
用DRVA来控制步进电机,开机直接MOV  K0  D8140    ,    驱动M1  DDRVA     K8000   K2000  Y0 Y4       ,Y0,Y4置ON   完成后RET M1    再驱动M2     DDRVA   K5000  K2000  Y0 Y4   则Y0置ON,这个非常正常
但是接下来我将D130 来代替位置   D132来代替频率  结果分别驱动M1 后在驱动M2    都只有Y0置0N,求高手分析原因。
wqiling
级别: 探索解密
精华主题: 0
发帖数量: 45 个
工控威望: 129 点
下载积分: 302 分
在线时间: 206(小时)
注册时间: 2009-12-03
最后登录: 2024-11-18
查看wqiling的 主题 / 回贴
1楼  发表于: 2012-07-08 14:18
这是绝对位置控制,而且你用的是32位控制,特殊寄存器D8140现在不是仅仅是脉冲监控了,而是实际的当前位置的脉冲量,程序里面给的位置数值跟D8140 D8141的关系是比较后自动决定方向的就是Y4的逻辑,大于是正Y4 OFF,小于是反方向Y4 ON,差的绝对值就是要移动的脉冲量,比如说要走的位置是5000, 可D8140是4000的话,步进电机就会往正方向移动1000 反之亦然,注意D8140清零的话乎相当当前位置是0点,零点一般要求是机械回原以后才设的,使用改指令注意原点的设定,就是D8140的清零,还有系统一般接线接成绝对位置正值就正方向就是正转,这样你复制和程序控制相对跟系统对应方便程序调试,望能帮到你!