用PTO怎么才能让步进电机走完一段距离后自动反转回来?外部没有开关
答:1、主程序先正转,等到正转完了就中断,中断中接通个辅助触点(M0.X),当M.0X闭合,住程序中的反转开始运做.这样子就OK了。
2、用PTO指令让Q0.0 OR Q0.1高速脉冲,另一个点如Q0.2做方向信号,就可以控制正反转了,速度快慢就要控制输出脉冲周期了,周期越短速度越快,如果你速度很快的话请考虑缓慢加速,不然它是启动不了的,如果方向也变的快的话就要还做一个缓慢减速,不然它振动会蛮厉害,而且也会失步。
3、程NETWORK1//用于单段脉冲串操作的主程序(PTO)
//首次扫描时,将映像寄存器位设为低
//并调用子程序0
LD SM0.1
R Q0.0 1
CALL SBR_0
答:1、主程序先正转,等到正转完了就中断,中断中接通个辅助触点(M0.X),当M.0X闭合,住程序中的反转开始运做.这样子就OK了。
2、用PTO指令让Q0.0 OR Q0.1高速脉冲,另一个点如Q0.2做方向信号,就可以控制正反转了,速度快慢就要控制输出脉冲周期了,周期越短速度越快,如果你速度很快的话请考虑缓慢加速,不然它是启动不了的,如果方向也变的快的话就要还做一个缓慢减速,不然它振动会蛮厉害,而且也会失步。
3、程NETWORK1//用于单段脉冲串操作的主程序(PTO)
//首次扫描时,将映像寄存器位设为低
//并调用子程序0
LD SM0.1
R Q0.0 1
CALL SBR_0
NETWORK 1 // 子程序0开始
LD p;SM0.0
MOVB 16#8D SMB67 // 设置控制字节:
LD p;SM0.0
MOVB 16#8D SMB67 // 设置控制字节:
// - 选择PTO操作
//-选择单段操作
//-选择毫秒增加
//-设置脉冲计数和周期数值
//-启用PTO功能
MOVW+500 SMW68//将周期设为500毫秒。
//-选择单段操作
//-选择毫秒增加
//-设置脉冲计数和周期数值
//-启用PTO功能
MOVW+500 SMW68//将周期设为500毫秒。
MOVD+4 SMD72 // 将脉冲计数设为4次脉冲。
ATCH INT_0 19 // 将中断例行程序0定义为
//处理PTO完成中断的中断。
ENI // 全局中断启用
PLS 0 // 激活PTO操作,PLS0 = Q0.0
MOVB 16#89 SMB67 // 预载控制字节,用于随后的
PLS 0 // 激活PTO操作,PLS0 = Q0.0
MOVB 16#89 SMB67 // 预载控制字节,用于随后的
//周期改动。
NETWORK 1// 中断0开始
//如果当前周期为500毫秒:
//将周期设为1000毫秒,并生成4次脉冲
LDW=SMW68+500
//如果当前周期为500毫秒:
//将周期设为1000毫秒,并生成4次脉冲
LDW=SMW68+500
MOVW+1000 SMW68
PLS 0
CRETI
CRETI
NETWORK
2//如果当前周期为1000毫秒:
//将周期设为500毫秒,并生成4次脉冲
LDW=SMW68+1000
MOVW+500 SMW68
PLS 0序注释
2//如果当前周期为1000毫秒:
//将周期设为500毫秒,并生成4次脉冲
LDW=SMW68+1000
MOVW+500 SMW68
PLS 0序注释