MES 与 PLC 的几种交互方式

mes,plc · 浏览次数 : 125

小编点评

在MES开发领域,从PLC获取数据是确保系统高效运行的关键。为了实现这一目标,工程师需要深入理解PLC与MES之间的编程逻辑差异,并在设计交互逻辑时保持平衡。以下是四种主要的交互方式及其特点: 一、周期读取 周期读取是一种按固定时间间隔从PLC获取数据的方法,常用于读取设备状态、工作状态等信息。这种方式适用于只需要显示状态而无需进行复杂逻辑处理的场景。 二、单向触发 单向触发是在PLC中定义一个触发点,当满足特定条件时置位为1。MES在收到触发信号时执行预定义的处理。这种方式的交互不涉及相互动作的锁定,但需注意触发时长和触发间隔,以防数据丢失。 以托盘进站交互为例,当托盘进入工位后,工位PLC读取RFID信息并置位托盘进站请求。随后,MES以1秒为周期读取托盘进站点位,并根据点位变化执行相应动作。 三、一次交互(自复位) 一次交互允许在单个操作中完成数据获取,无需依赖时间序列。这种方式提高了交互过程的可靠性,适用于对时效性要求较高的场景。 在托盘进站交互中,设置PLC和MES的交互点位,使双方能够了解对方状态并执行相应动作。 四、二次交互(手动复位) 二次交互在一次交互基础上增加了手动复位功能,提供了更完善且可控的交互过程。通过组合方式,可以实现各种复杂的交互逻辑。 总结: 本文介绍了四种主要的PLC与MES交互方式,包括周期读取、单向触发、一次交互(自复位)和二次交互(手动复位)。这些方法从简单到复杂,旨在降低交互复杂度,同时满足MES系统开发的需求。希望这些经验能为新人提供方向,也为资深工程师提供新的思考角度。

正文

    在 MES 开发领域,想要从 PLC 获取数据就必须要和 PLC 有信号交互。高效准确的获取 PLC 数据一直是优秀 MES 系统开发的目标之一。初涉相关系统开发的工程师往往不能很好的理解 PLC 和 MES 之间编程逻辑的本质差别,在设计交互逻辑是难免顾此失彼。因此本文结合本人这些年来和 PLC 交互的经验总结出一下几种交互方式和各自特点。

一、周期读取

     周期读取就是按固定时间间隔来读取 PLC 数据。这种方式多用于读取设备心跳数据,设备工作状态,设备一般运行信息等,MES 只需要显示状态不需要进行逻辑的数据。

二、单向触发

    单向触发是在 PLC 中定义一个触发点,在特定条件满足时把点位置为1,MES 读取到出发点跳变为1时,执行预定义的处理。 这种方式 PLC 和 MES 之间没有形成交互,无法实现相互动作的锁定。需要处理好触发时长和触发间隔,不然有丢失数据的风险。

    以托盘进站交互作为例子,托盘进入工位后,工位 PLC 读取 RFID 内的托盘信息。之后置位托盘进站请求。此时 MES 以 1s 为周期的来读取托盘进站点位,当该点位由0变为1时读取工位信息并保存。如此循环。

    交互时序图:

   

    具体交互过程:

  1. PLC 准备工位信息
  2. PLC 置位托盘进站点位并保持 3s
  3. MES 读取到托盘进站点位上升沿
  4. MES 执行预定义的动作

三、一次交互(自复位)

    单次交互虽然解决了从 PLC 获取数据的问题,但是非常依赖时间序列来实现交互关系。这样一个可靠的交互过程往往需要花费数秒的时间。一个工位通常又需要数次交互才能完成一个操作循环。这在分秒必争的工位节拍里是完全不可接受的。

    以托盘进站交互为例子,设置了 PLC 和 MES 双方的交互点位,让双方可以知道对方状态并执行相应的动作。

    交互时序图:

   

    具体交互过程:

  1. PLC 准备工位信息
  2. PLC 置位托盘进站点位
  3. MES 反馈信息
  4. MES 反馈动作结果PLC 收到 MES 反馈结果后复位托盘进站点位和工位信息
  5. MES 收到 PLC 复位进站点位后复位反馈信息和进站结果

四、二次交互(手动复位)

     二次交互在一次交互的基础上增加了手动复位功能。拥有了更加完善且完全可控的交互过程。可以通过组合的方式,实现各种复杂的交互逻辑。

    交互时序图:

  

    具体交互过程:

  1. PLC 准备工位信息
  2. PLC 置位托盘进站点位
  3. MES 反馈信息
  4. MES 反馈动作结果 PLC 收到 MES 反馈结果后复位托盘进站点位
  5. PLC 置位复位托盘进站点位,MES 收到 PLC 复位进站点位后复位反馈信息和进站结果
  6. PLC 收到 MES 进站结果复位后,复位复位托盘进站点位
总结
    以上四种方式从简单到复杂,也是笔者这十多年做交互逻辑时边实践边思考的总结。这一套交互逻辑的目标就是,最大程度的减少交互过程的复杂度的同时,又能够方便 PLC 工程师和 MES 工程师理解并实现,还能满足复杂功能的需要。典型的既要又要。希望这里的一点经验能,给新人提供一个方向,也给高手提供一个新的角度来共同探讨。

与MES 与 PLC 的几种交互方式相似的内容:

MES 与 PLC 的几种交互方式

在 MES 开发领域,想要从 PLC 获取数据就必须要和 PLC 有信号交互。高效准确的获取 PLC 数据一直是优秀 MES 系统开发的目标之一。初涉相关系统开发的工程师往往不能很好的理解 PLC 和 MES 之间编程逻辑的本质差别,在设计交互逻辑是难免顾此失彼。因此本文结合本人这些年来和 PLC

MES/MOM国内市场现状趋势与新生态模式参考

华为云数字工厂顺应最新发展趋势,发展与联合生态伙伴,尝试走出“平台生成生态应用”的新服务模式道路,与生态伙伴“分工明确、协同作战”一起改善国内工业软件的市场环境,加速使能中小制造企业实现数字化升级。

下一代MES系统架构分析与选型参考

通用模型框架层由实力大厂主导、行业/工艺层由具有行业Know-How的应用开发商ISV来承担、企业用户层由系统集成商SI/企业IT人员来实施,发挥各自优势。

山歌寥哉!生产制造系统需要新治理框架

基于统一的数据与应用平台底座构建一体化的业务应用同时在框架层面进行分层扩展,可真正解决MES/MOM类生产系统不同业务模块间可高效紧密协同,以及系统可快速定制、低成本可持续升级运维的问题。

记一次 .NET某新能源MES系统 非托管泄露

一:背景 1. 讲故事 前些天有位朋友找到我,说他们的程序有内存泄露,跟着我的错题集也没找出是什么原因,刚好手头上有一个 7G+ 的 dump,让我帮忙看下是怎么回事,既然找到我了那就给他看看吧,不过他的微信头像有点像 二道贩子,不管到我这里是不是 三道,该分析的还得要分析呀。😄😄😄 二:Wi

记一次 .NET 某工控MES程序 崩溃分析

一:背景 1.讲故事 前几天有位朋友找到我,说他的程序出现了偶发性崩溃,已经抓到了dump文件,Windows事件日志显示的崩溃点在 clr.dll 中,让我帮忙看下是怎么回事,那到底怎么回事呢? 上 WinDbg 说话。 二:WinDbg 分析 1. 崩溃点在哪里 如果是托管代码引发的崩溃,在线程

记一次 .NET 某车零件MES系统 登录异常分析

一:背景 1. 讲故事 这个案例有点特殊,以前dump分析都是和软件工程师打交道,这次和非业内人士交流,隔行如隔山,从指导dump怎么抓到问题解决,需要一个强大的耐心。 前几天有位朋友在微信上找到我,说他们公司采购的MES系统登录的时候出现了异常,让我帮忙看一下,我在想解铃还须系铃人,怎么的也不应该

记一次 某智能制造MES系统CPU 爆高分析

一:背景 1. 讲故事 前段时间有位朋友找到我,说他 docker 中的web服务深夜cpu被打满,让我帮忙看一下,很多朋友问docker中怎么抓dump,我一般都推荐使用 procdump 这款自动化工具,谁用谁知道,有了 dump 之后,接下来就是分析了。 二:WinDbg 分析 1. cpu

中小企业建设数字化工厂,选择集成老路还是整体重构?

基于统一的数字化平台,重构PLM、ERP、MES、WMS系统,构建柔性化的数字化系统,实现端到端的数据源统一,可以提高协同效率和降低生产成本。

高可用系列文章之一 - 概述

一 概述 可用性是系统运行质量的重要指标. 随着数字化和智能化的进程, 系统的可用性愈发重要。例如,制造业流水线需要高可用性的 MES 系统来保证流水线的正常运转。 本文为高可用相关的技术文档, 从以下几个方面对高可用在制造业的应用和实施进行详细描述。 1.1 可用性(Availability)定义