用户中心

资讯 > PLC与PAC

MES与PLC握手的几种方式

www.cechina.cn2018.04.21阅读 8646

  1
  定期抓取数据

  某些设备的关键工艺参数(如变速器轴齿热处理炉的温度)非常重要,需要定期抓取以生成实时曲线,及用于长期追溯分析。
  这些工艺参数通常都是模拟量,数值始终不停地变化。
  通常我们可以通过OPC软件读取这些数据,经过精度处理,然后定期写入实时数据库中。
  这些数据的特点是:读取频率高,数据变化小,因此存入数据库时会存在大量重复的记录控制工程网版权所有,而实时数据库提供数据压缩的功能,特别适合此类数据的存储。
  2
  基于条件触发

  有许多工艺参数(如螺栓的拧紧值)的收集,主要是用于事后的质量追溯分析的,通常我们会定义一个触发信号通知MES读取。
  比如发动机在某工位完成物理装配作业后,PLC会把关键的工艺参数写入数据交换区,然后给DATA_READY信号置位。
  而MES会每隔1秒扫描监听DATA_READY信号,当此信号处于高位时,则读取数据交换区的质量追溯数据
  可参考下图:


  具体握手过程为:
  1.发动机完成某个装配步骤,PLC写入参数1。
  2.发动机完成某个装配步骤,PLC写入参数2。
  3.发动机完成所有物理装配作业,PLC将DATA_READY置位。MES读取参数1、参数2。
  4.发动机准备离开当前工位,PLC将所有数据复位。
  3
  请求-响应机制,1次握手

  这种方式和IT系统的MQ/WEB SERVICE等消息处理机制非常类似。
  如发动机上线工位,MES给PLC下发工单,过程可参考下图:


  具体握手过程为:
  1.PLC在PLC_MSG写入请求数据,如工位,同时将REQUEST_SENT置位。
  2.MES扫描到REQUEST_SENT,读取PLC_MSG,然后生成工单数据,并写入MES_MSG,同时将RESPONSE_SENT置位。
  3.PLC扫描RESPONSE_SENT,读取MES_MSG并写入本地数据块,然后将REQUEST_SENT和PLC_MSG复位。
  4.MES将所有数据和控制位复位。
  我们可以看出CONTROL ENGINEERING China版权所有,整个数据交换的过程只发生了1个来回,即1-2步,而3-4步是将消息销毁的动作。
  这种方式还有一个特点,就是封装性好,同样一个接口,既可以下发工单,也可以上传过站数据,区别在于PLC_MSG/MES_MSG里存储的数据内容不一样。
  4
  请求-响应机制,2次握手

  同样是发动机上线的例子,过程可参考下图:


  具体握手过程为:
  1.PLC在PLC_MSG写入请求数据,如工位。
  2.PLC将REQUEST_SENT置位。
  3.MES扫描到REQUEST_SENT,读取PLC_MSG,然后发送REQUEST_RECEIVED。
  4.MES生成工单数据,并写入MES_MSG。
  5.MES将RESPONSE_SENT置位。
  6.PLC扫描RESPONSE_SENT,读取MES_MSG并写入本地数据块,然后将RESPONSE_RECEIVED置位。
  7.MES扫描RESPONSE_RECEIVED,将所有数据和控制位复位。
  8.PLC将本地数据和控制位复位。
  我们可以看出CONTROL ENGINEERING China版权所有,整个过程相当于进行了2次握手,其中1-3步是第1次握手,用于接收请求;4-8步是第2次握手,用于下发数据。
  我们可以看出CONTROL ENGINEERING China版权所有,方式4比方式3繁琐很多,但是这种方式在实际项目中用得还非常多。这是因为完整响应时间可能多达数秒,而PLC的扫描周期只有几十毫秒,中间多出的状态位可以作为状态指示缓解工人等待的焦虑,也可以作为断点方便通信调试。
  5
  基于工位生产周期

  在一些工位,会有多个关键的业务过程,比如发动机上线工位先上线,然后装配,最后发送过站记录。
  那么在一个完整的工位生产周期中,PLC需要和MES做2次数据交换,第1次下载工单,第2次上传过站记录,如下图所示:


  具体握手过程为:
  1.发动机到达,PLC给ENGINE_ARRIVAL置位。
  2.PLC检查托盘、设备、物料,条件具备后将STATION_READY置位。
  3.MES将STATION_READY_RECEIVED置位。
  4.MES将工单数据写入MES_DATA。
  5.MES将MES_DATA_SENT置位。
  6.PLC将MES_DATA写入本地数据块,并将MES_DATA_RECEIVED置位。
  7.MES复位IT侧所有数据和状态位。
  8.PLC开始本工位的装配作业,并将发动机序列号写入ENGINE_SN。
  9.PLC装配完成后,PLC将PLC_COMPLETE置位。
  10.MES将PLC_COMPLETE_RECEIVED置位。
  11.MES执行过站逻辑,完成后将MES_COMPLETE置位。
  12.PLC将MES_COMPLETE_RECEIVED置位。
  13.MES复位IT侧所有数据和状态位。
  14.发动机准备离开,PLC将ENGINE_LEAVE置位。
  15.PLC复位所有数据和状态位。
  我们可以看到,此方式非常繁琐,但是优点是:
  ●生产周期中的关键状态都有体现,可以很方便地通过HMI进行监控。
  ●PLC状态对应于实际的生产执行情况,发生问题时容易追踪。
  ●程序出错时,可以很直观地看到通信执行到哪一步。
  另外www.cechina.cn,我们还应理解www.cechina.cn,下载工单和上传过站记录都只是完整生产周期的一部分CONTROL ENGINEERING China版权所有,并且有内在的逻辑联系,比如:在装配的过程上发现缸体有问题,需要换一个缸体上线,此时由于MES还没有接收到过站记录,因此即使在第2次接收到STATION_READY信号时,MES下发的仍旧是同一个工单,这样就可以有效避免工单和发动机序列号的损失。

版权声明:版权归控制工程网所有,转载请注明出处!

频道推荐

关于我们

控制工程网 & CONTROL ENGINEERING China 全球工业控制、自动化和仪器仪表领域的先锋媒体

CE全球

联系我们

商务及广告合作
任小姐(北京)                 夏小姐(上海)
电话:010-82053688      电话:18616877918
rendongxue@cechina.cn      xiashuxian@cechina.cn
新闻投稿:王小姐

关注我们的微信

关于我们 | 网站地图 | 联系我们
© 2003-2020    经营许可编号:京ICP证120335号
公安机关备案号:110102002318  服务热线:010-82053688