西门子V90伺服,位置控制模式,当第一个位移命令还没有执行完成时,直接发第二个位置命令,此时伺服执行什么动作?是先把第一个位移命令执行完继续执行第二个位移还是第二个位移命令无效?如果刚好在第一个命令执行完无缝隙地发第二个位移命令,会不会定位完成信号就不会变为1,也就是连续执行两个位移命令,会不会只会出现一个定位完成信号的上升沿?在实际应用中,莫名执行两个位移,没有找到原因,期盼高手指点,谢谢!
问题补充:
误动作倒不是经常出现,只是无规律的偶尔出现,但是每次出现都会产生破坏性的后果。而且很奇怪,尝试给发位置的命令计数,发现计数竟然比实际的位移结果多了一个,位移结果肉眼可见,命令脉冲计数竟然多了一个,也就是说命令发了N+1,实际只动作了N次,照这么看来,有可能就是其中有一个命令是在前一个动作未执行完的时候发出的,所以虽然命令发了N+1,实际只动作了N次动作,不知道是不是这样?
最佳答案
1,执行第一个命令
2,只执行第一个,执行完第一个之后,不执行第二个,第二个无效
3,会变成一,不执行第二个命令,第二个命令done信号点亮
像需要连续执行几个连续动作的运动,建议做到命令表中,这样伺服能一次执行完,不容易出错。
如果经常发生运动动作异常,那么要查找命令的触发条件,做好命令之间的防错互锁
信号,
,
补充:你把V90返回的INP(定位完成信号),把这个信号接进I点中。在V90移动过程中,INP信号为FALSE,停止的时候为TRUE。接收到INP信号的时候,再发送运动指令。最好能查到是哪一次命令有问题,在那条命令加个时间间隔。
提问者对于答案的评价:
可是我明明看见伺服动作了两次,可是定位完成信号INP只计了一次数,不知道什么原因
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc131705.html