在MES开发领域,与PLC的信号交互对于高效准确地获取数据至关重要。在此,我们结合多年与PLC交互的经验,总结了几种交互方式及各自的特点。
一、周期读取
周期读取是按固定时间间隔来获取PLC数据的方法。这种方式主要用于获取设备心跳数据、设备工作状态以及一般运行信息等,对MES来说只需显示状态而不需要进行逻辑处理。
二、单向触发
单向触发是在PLC中定义一个触发点,在特定条件满足时将该点位设置为1。MES在读取到触发点跳变为1时,执行预定义的处理。这种方式下,PLC和MES之间并未形成真正的交互,无法实现相互动作的锁定。同时,需要处理好触发时长和触发间隔,以避免数据丢失的风险。
以托盘进站交互为例,当托盘进入工位后,工位PLC读取RFID内的托盘信息,并置位托盘进站请求。此时MES以1秒为周期来读取托盘进站点位状态,一旦该点位由0变为1,MES将读取工位信息并进行保存,如此循环。
具体的交互过程可参考下图:
交互过程如下:
- PLC准备工位信息
- PLC置位托盘进站点位并保持3秒
- MES读取到托盘进站点位上升沿
- MES执行预定义的动作
三、一次交互(自复位)
单次交互解决了从PLC获取数据的问题,但是往往需要花费数秒的时间来实现可靠的交互过程,而且一个工位通常需要多次交互才能完成一个操作循环,这在工位节拍严苛的情况下是不可接受的。
以托盘进站交互为例,设置PLC和MES双方的交互点位,让双方可以知晓彼此状态并执行相应的动作。
交互时序图如下:
交互过程如下:
- PLC准备工位信息
- PLC置位托盘进站点位
- MES反馈信息
- MES反馈动作结果,PLC收到MES反馈结果后复位托盘进站点位和工位信息
- MES收到PLC复位进站点位后复位反馈信息和进站结果
四、二次交互(手动复位)
在一次交互的基础上增加手动复位功能,形成更完善且可控的交互过程,通过组合方式实现各种复杂的交互逻辑。
交互时序图如下:
交互过程如下:
- PLC准备工位信息
- PLC置位托盘进站点位
- MES反馈信息
- MES反馈动作结果,PLC收到MES反馈结果后复位托盘进站点位
- PLC置位复位托盘进站点位,MES收到PLC复位进站点位后复位反馈信息和进站结果
- PLC收到MES进站结果复位后,复位复位托盘进站点位