项目上的伺服都是多圈绝对式带抱闸的S210伺服。程序调试都差不多了,但是机械设计上面没有伺服两个硬件限位开关。理由是伺服都是多圈绝对式伺服,设置原点后就不需要额外增加两个极限开关。
在一开始调试动作时,工作还算比较顺利,基本动作都按照工艺要求调试好了,设备可以空跑。在空跑几天后,就开始上一部分物料测试工位位置是否调试好,是不是再要修改原点位置,这样调试一番,也差不多可以满足要求,有些工位没有物料也不好确定尾椎,就是简单跑一下动作。有一天拿了一测试物料,把某个工位零件都装上去调试原点位置,设备的其他泵都开起来,噪声很大。一边是钳工和机械工程师在工位调试位置,我在另一边用电脑调试点动这个伺服,一开始机械说点动上升,我这边强制伺服点动上升,这样反复几次去点动调试原点位置,还是差一点。结果这个机械那边再次说要点动上升,我把速度调得很小,伺服速度很慢的上升,结果到了原点位置机械低头看着原点说听,我这边因为其他泵开起来没有听到停止命令,还是一直问要不要停止。
突然出问题了,机械说工件个顶坏了,要我马上停止,我马上拍下急停将伺服的STO功能激活了,一看这个工件变形严重。由于伺服速度慢,没有加外部硬件限位开关,减数比大,这个顶到东西一时半会没有发现,结果变形严重才知道伺服还在走。东西坏了,机械就说我从程序有问题,为什么伺服不能停止下来,为什么没有听到他说的停止命令,我当时也火了,我说我问你要不要停止,你怎么不回答我可以停止了,这样争论一番后,结论就是我程序有问题,伺服要用扭矩去停止。当到达一定扭矩就需要停止,其实不是伺服不停止,而是没有达到默认停止故障扭矩才会一直走,机械说公司其他都是通过限制一个扭矩来做伺服停止保护机械。我当时听到这个,还真不敢相信有这样来保护机械停止方式。我是想为什么你设置一个外部安装两个限位开关做限位,而且限位有一定的安全距离,这样才是最安全的限位。你这个限制扭矩方式来做停止很不靠谱,如果速度过快,位置设置大于安全位置时,这个已启动不会也是把机械个撞坏吗?这一连串的问题在我脑海里面来回游走。我是一万个不愿意用程序来限制力矩方式做机械保护,但是无奈这边机械工程权利太大,只能这样做。
机械是想通过 MC_TorqueLimiting 指令来做扭矩方式限位。在没有硬件限位开关的情况下,不知道大家有没更好的限位方式。