设备动作简单的一般都是复位从头开始,当设备动作复杂,是那种多工站,搬运加工的情况就不需要处理了,当一个工站故障后,怎么处理,可能是暂停后手动取走,排除故障,继续自动,就涉及到 手动/自动切换,暂停和继续的问题了
其实就是你愿不愿意花时间,要是你把所有的可能出现的情况都加到你的程序中,任何情况都能自动判断和处理,也就可以完美的解决,但这个所有情况,不是那么好弄的,还有好多你想不到,考虑不到的地方,其实这个就是程序的BUG,就是你程序写的好不好的一个标准
楼主的思路是一个解决方法,但确实是有安全隐患,机台操作你要给一个原则,比如:故障报警后,必须复位,成为无异常状态后,按启动,或运行,机台才会动,不能切换个模式,就有动作的
以前尝试过,每个输出动作都单独做条件,像气缸就是伸出条件,缩回条件,自动运行时每次动作前都判断条件是否满足,当不满足时,有两种处理,1:跳转返回到上一步或上几步,2:直接报警停止,在每个工站的开头都做自动复位动作,就是把这个工站的几个部件,按顺序复位的起始状态,这样,当自动时暂停,被手动后,再继续自动时,完全可以直接判断,跳转到开头,进行自动复位,
当然多工站的处理时还有很多要考虑的地方,如这个工站这样复位后,是不是对这个工件加工了2次,会不会成为不良;取走产品后是否还能动作,对后面的工站是否有影响等
做工程赶时间时,简单处理,但又时间是最好还是细细考虑,做的面面俱到,赋予你的程序灵魂