✓ 最佳回答
PLS2走一半停住且无报警,多与脉冲输出资源冲突、指令条件和参数有关:
1. 检查脉冲输出口是否被占用:CP1H只有特定输出点支持脉冲输出(如100.00/100.01、101.00/101.01等,按型号)。确认PLS2用的端口与接线一致,且同一端口没被PWM、SPED、PLS2重复使用。
2. 指令执行条件:PLS2是微分执行还是连续执行?若前面条件用常ON触发,可能被反复复位/重启,导致中途停。改为上升沿触发并保持,或用“脉冲输出开始”位控制。检查PLS2的“控制数据”里停止方式、完成标志地址设置。
3. 参数区冲突:PLS2要占用D区参数(如D100~D105等),确认这些DM没被其他程序或模拟量设置占用。参数被改写会导致脉冲数错乱。
4. 高速计数器/中断影响:若同时用高速计数器或中断任务,可能影响脉冲输出。CP1H脉冲输出与高速计数器共享资源,查手册确认端口分配,避免冲突。
5. 看完成标志和错误标志:脉冲输出完成标志(如A280.xx区域)和错误代码。若完成标志不亮,读对应输出状态位,确认是没发完还是被停止。用CX-P监视脉冲输出当前值和剩余脉冲。
6. 电气方面:伺服脉冲输入是差分还是集电极开路?CP1H输出是集电极开路,若伺服要求差分或电流不够,高速时丢脉冲。5000Hz不高,但线长、无屏蔽、限流电阻不对也会丢。加合适的限流电阻(按伺服手册,常1.5k~2k),缩短接线。