要做一个流水线,大致如上图,一个6个工位,6个PLC,还有一个工控机做追溯系统,也就是记录工件在每个加工工位时的各个参数信息。要求①工控机与6个PLC通信读取参数数据。②6个PLC之间也做上通信,③而且6个工位可以单独把除了第一工位外拿出来而不影响系统使用。PLC用欧姆龙CP1系列:
上料工位PLC:未选
热熔1PLC:CP1E-N40S1DR-A
热熔2PLC:CP1E-N40S1DR-A
锁螺丝PLC:CP1H-X40DT-D+CP1W-CIF11
激光焊PLC:CP1H-X40DT-D+CP1W-CIF11
电测PLC:CP1E-N60S1DR-A
(一)请问这个系统怎么做通信呢?最开始我想的是几个PLC之间做PC LINK,然后主站再与上位机通信,这样所有设备之间就都可以通信了,但是后来发现,如果把中间某个工位拿走的话,那么剩下的5个PLC的PL LINK可能地址就变了,PC LINK用的CIO数据区也变了,这样的话就影响到剩余工位的正常工作了。
(二)在第一个上料工位中还有视觉检测功能,如果当前工件检测不合格的话,在后续工位就不加工直接通过,走到剔除位置后直接推出设备。这样的程序要怎么写呢,因为是连续上料的,不是那种等这个工件所有都加工完才放下一个的,下边是传送带,在每个工位前边和加工位置都有阻挡器,在每个工位前都有工件堆积,比如第N个工件检测不合格,但是当前热熔1区的加工工件为N-5,锁螺丝当前加工工件为N-8,激光焊当前加工工件为N-13。后续工位怎么可以知道当前的工件是合格的还是不合格的呢,因为CP1E系列的PLC没有堆栈指令,所以要用其他方法了,麻烦说的详细一些,这个一点头绪都没有。
主要问题就是以上的两个,请大神们帮帮忙,多谢!!