在汽车制造行业,MES 与设备层有深入的集成,而 PLC 集成是最主流的形式。

本文主要介绍MES 与PLC 集成时的几种握手方式及特点。

1 定期抓取数据

某些设备的关键工艺参数(如变速器轴齿热处理炉的温度)非常重要,需要定期抓取以生成实时曲线,及用于长期追溯分析。

这些工艺参数通常都是模拟量,数值始终不停地变化。

通常我们可以通过 OPC 软件读取这些数据,经过精度处理,然后定期写入实时数据库中。

这些数据的特点是:读取频率高,数据变化小,因此存入数据库时会存在大量重复的记录,而实时数据库提供数据压缩的功能,特别适合此类数据的存储。

2 基于条件触发

有许多工艺参数(如螺栓的拧紧值)的收集,主要是用于事后的质量追溯分析的,通常我们会定义一个触发信号通知 MES读取。

比如发动机在某工位完成物理装配作业后,PLC会把关键的工艺参数写入数据交换区,然后给 DATA_READY 信号置位。

而 MES 会每隔 1 秒扫描监听 DATA_READY 信号,当此信号处于高位时,则读取数据交换区的质量追溯数据。

可参考下图:

具体握手过程为:

发动机完成某个装配步骤,PLC 写入参数 1。

发动机完成某个装配步骤,PLC 写入参数 2。

发动机完成所有物理装配作业,PLC 将 DATA_READY 置位。MES 读取参数 1、参数 2。

发动机准备离开当前工位,PLC 将所有数据复位。

3 请求 - 响应机制,1 次握手

这种方式和 IT 系统的 MQ/WEB SERVICE 等消息处理机制非常类似。

如发动机上线工位,MES 给 PLC 下发工单,过程可参考下图:

具体握手过程为:

PLC 在 PLC_MSG 写入请求数据,如工位,同时将 REQUEST_SENT 置位。

MES 扫描到 REQUEST_SENT,读取 PLC_MSG,然后生成工单数据,并写入 MES_MSG,同时将 RESPONSE_SENT 置位。

PLC 扫描 RESPONSE_SENT,读取 MES_MSG 并写入本地数据块,然后将 REQUEST_SENT 和 PLC_MSG 复位。

MES 将所有数据和控制位复位。

我们可以看出,整个数据交换的过程只发生了 1 个来回,即 1-2 步,而 3-4 步是将消息销毁的动作。

这种方式还有一个特点,就是封装性好,同样一个接口,既可以下发工单,也可以上传过站数据,区别在于 PLC_MSG/MES_MSG 里存储的数据内容不一样。

4 请求 - 响应机制,2 次握手

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

具体握手过程为:

PLC 在 PLC_MSG 写入请求数据,如工位。

PLC 将 REQUEST_SENT 置位。

MES 扫描到 REQUEST_SENT,读取 PLC_MSG,然后发送 REQUEST_RECEIVED。

MES 生成工单数据,并写入 MES_MSG。

MES 将 RESPONSE_SENT 置位。

PLC 扫描 RESPONSE_SENT,读取 MES_MSG 并写入本地数据块,然后将 RESPONSE_RECEIVED 置位。

MES 扫描 RESPONSE_RECEIVED,将所有数据和控制位复位。

PLC 将本地数据和控制位复位。

我们可以看出,整个过程相当于进行了 2 次握手,其中 1-3 步是第 1 次握手,用于接收请求;4-8 步是第 2 次握手,用于下发数据。

我们可以看出,方式 4 比方式 3 繁琐很多,但是这种方式在实际项目中用得还非常多。这是因为完整响应时间可能多达数秒,而 PLC 的扫描周期只有几十毫秒,中间多出的状态位可以作为状态指示缓解工人等待的焦虑,也可以作为断点方便通信调试。

5 基于工位生产周期

在一些工位,会有多个关键的业务过程,比如发动机上线工位先上线,然后装配,最后发送过站记录。

那么在一个完整的工位生产周期中,PLC 需要和 MES 做 2 次数据交换,第 1 次下载工单,第 2 次上传过站记录,如下图所示:

具体握手过程为:

发动机到达,PLC 给 ENGINE_ARRIVAL 置位。

PLC 检查托盘、设备、物料,条件具备后将 STATION_READY 置位。

MES 将 STATION_READY_RECEIVED 置位。

MES 将工单数据写入 MES_DATA。

MES 将 MES_DATA_SENT 置位。

PLC 将 MES_DATA 写入本地数据块,并将 MES_DATA_RECEIVED 置位。

MES 复位 IT 侧所有数据和状态位。

PLC 开始本工位的装配作业,并将发动机序列号写入 ENGINE_SN。

PLC 装配完成后,PLC 将 PLC_COMPLETE 置位。

MES 将 PLC_COMPLETE_RECEIVED 置位。

MES 执行过站逻辑,完成后将 MES_COMPLETE 置位。

PLC 将 MES_COMPLETE_RECEIVED 置位。

MES 复位 IT 侧所有数据和状态位。

发动机准备离开,PLC 将 ENGINE_LEAVE 置位。

PLC 复位所有数据和状态位。

我们可以看到,此方式非常繁琐,但是优点是:

生产周期中的关键状态都有体现,可以很方便地通过 HMI 进行监控。

PLC 状态对应于实际的生产执行情况,发生问题时容易追踪。

程序出错时,可以很直观地看到通信执行到哪一步。

另外,我们还应理解,下载工单和上传过站记录都只是完整生产周期的一部分,并且有内在的逻辑联系,比如:在装配的过程上发现缸体有问题,需要换一个缸体上线,此时由于 MES 还没有接收到过站记录,因此即使在第 2 次接收到 STATION_READY 信号时,MES 下发的仍旧是同一个工单,这样就可以有效避免工单和发动机序列号的损失。

了解什么是 MES 系统

概述

制造执行系统 (manufacturing execution system,简称 MES)是美国 AMR 公司(Advanced Manufacturing Research,Inc.)在 90 年代初提出的,旨在加强 MRP 计划的执行功能,把 MRP 计划同车间作业现场控制,通过执行系统联系起来。这里的现场控制包括 PLC 程控器、数据采集器、条形码、各种计量及检测仪器、机械手等。MES 系统设置了必要的接口,与提供生产现场控制设施的厂商建立合作关系。

MES 的定义

制造执行系统协会(Manufacturing Execution System Association,MESA)对 MES 所下的定义:“MES 能通过信息传递对从订单下达到产品完成的整个生产过程进行优化管理。当工厂发生实时事件时,MES 能对此及时做出反应、报告,并用当前的准确数据对它们进行指导和处理。这种对状态变化的迅速响应使 MES 能够减少企业内部没有附加值的活动,有效地指导工厂的生产运作过程,从而使其既能提高工厂及时交货能力,改善物料的流通性能,又能提高生产回报率。MES 还通过双向的直接通讯在企业内部和整个产品供应链中提供有关产品行为的关键任务信息。”

MESA 在 MES 定义中强调了以下三点:

MES 是对整个车间制造过程的优化,而不是单一的解决某个生产瓶颈;

MES 必须提供实时收集生产过程中数据的功能,并作出相应的分析和处理。

MES 需要与计划层和控制层进行信息交互,通过企业的连续信息流来实现企业信息全集成。

MES 能解决的问题:

出现用户产品投诉的时候,能否根据产品文字号码追溯这批产品的所有生产过程信息?

能否立即查明它的:原料供应商、操作机台、操作人员、经过的工序、生产时间日期和关键的工艺参数?

同一条生产线需要混合组装多种型号产品的时候,能否自动校验和操作提示以防止工人部件装配错误、产品生产流程错误、产品混装和货品交接错误?

过去 12 小时之内生产线上出现最多的 5 种产品缺陷是什么?

次品数量各是多少?

目前仓库以及前工序、中工序、后工序线上的每种产品数量各是多少?

要分别供应给哪些供应商?

何时能够及时交货?

生产线和加工设备有多少时间在生产,多少时间在停转和空转?

影响设备生产潜能的最主要原因是:设备故障?调度失误?材料供应不及时?工人培训不够?还是工艺指标不合理?

能否对产品的质量检测数据自动进行统计和分析,精确区分产品质量的随机波动与异常波动,将质量隐患消灭于萌芽之中?

能否废除人工报表,自动统计每个过程的生产数量、合格率和缺陷代码?

MES 的定位,是处于计划层和现场自动化系统之间的执行层,主要负责车间生产管理和调度执行。一个设计良好的 MES 系统可以在统一平台上集成诸如生产调度、产品跟踪、质量控制、设备故障分析、网络报表等管理功能,使用统一的数据库和通过网络联接可以同时为生产部门、质检部门、工艺部门、物流部门等提供车间管理信息服务。系统通过强调制造过程的整体优化来帮助企业实施完整的闭环生产,协助企业建立一体化和实时化的信息体系。

MES 目标:

1)不下车间掌控生产现场状况工艺参数监测、实录、受控

2)制程品质管理,问题追溯分析

3)物料损耗、配给跟踪管理

4)生产排程管理,合理安排工单

5)客户订单跟踪管理,如期出货

6)生产异常,及时报警提示

7)设备维护管理,自动提示保养

8)OEE 指标分析,提升设备效率

9)自动数据采集,实时准确客观

10)报表自动及时生成,无纸化

11)员工生产跟踪,考核依据客观

12)细化成本管理,预算执行分析

plc通讯的握手信号_MES与PLC握手的几种方式-控制器/处理器-与非网相关推荐

  1. plc通讯的握手信号_MES与PLC握手的几种方式

    原标题:MES与PLC握手的几种方式 来源:MES交流 在汽车制造行业,MES与设备层有深入的集成,而PLC集成是最主流的形式. 本文主要介绍MES与PLC集成时的几种握手方式及特点. 1定期抓取数据 ...

  2. plc通讯的握手信号_MES与PLC握手的5种方式!

    方式1定期抓取数据 某些设备的关键工艺参数(如变速器轴齿热处理炉的温度)非常重要,需要定期抓取以生成实时曲线,及用于长期追溯分析. 这些工艺参数通常都是模拟量,数值始终不停地变化. 通常我们可以通过O ...

  3. lin通讯从节点同步间隔场_LIN总线节点的设计-控制器/处理器-与非网

    摘要:介绍了汽车网络系统A类串行总线通信标准LIN协议2.0版本(最新版本),设计了总线节点的硬件和通信程序,规划了电动汽车车身网络总线结构. 关键词:LIN总线 通信 节点 随着汽车电子业的飞速发展 ...

  4. C#上位机与PLC通讯源码 C#与三菱PLC串口通讯MC协议FX3U及FX系列

    C#上位机与PLC通讯源码 C#与三菱PLC串口通讯MC协议FX3U及FX系列 给做项目急需的人 有时间不想花钱的自己去研究. 编号:7320649082796762用户_52853082

  5. C#上位机与PLC通讯源码 C#与三菱PLC通讯MC协议

    C#上位机与PLC通讯源码 C#与三菱PLC通讯MC协议 ID:696642996063203

  6. python和台达plc通讯_项目实战:Qt西门子PLC通讯调试和模拟工具(包含PLC上位机通讯,PLC服务器)...

    若该文为原创文章,转载请注明原文出处 本文章博客地址:https://blog.csdn.net/qq21497936/article/details/110071837 各位读者,知识无穷而人力有穷 ...

  7. c语言单片机与plc通讯,用c51实现单片机和plc之间通讯实例

    本文以modbus通讯协议为例,详细讨论了一个人机系统中,如何 用c51实现单片机和plc之间通讯的实例. modbus通讯协议 modbus协议是应用于电子控制器上的一种通用语言.通过此协议,控制器 ...

  8. python与施耐德plc通讯_自动化工程师:施耐德 PLC常见两种编程通讯控制实例,收好不谢...

    1.第一种是采用 UNTLW1协议进行联机编程: 参数设置与通讯配置检查:用 Premium的专用编程电缆"TSXPCX3030-C(USB接口,有专门的驱动)"通过调试机与CPU ...

  9. 变频器与PLC通讯的精简设计

     1.引言 在工业自动化控制系统中,最为常见的是PLC和变频器的组合应用,并且产生了多种多样的PLC控制变频器的方法,其中采用RS-485通讯方式实施控制的方案得到广泛的应用:因为它抗干扰能力强.传输 ...

最新文章

  1. Android重要组件之一 Service 服务讲解学习(一)
  2. centos7安装Filebeat采集日志文件存到Elasticsearch
  3. apache 伪静态 .htaccess
  4. load average多少是正常_从阿里大促中,我理出的CPU与Load异常排查思路
  5. 支付宝ios SDK官方下载页面
  6. vue 自学笔记(七) 组件细节问题
  7. 和为S的两个数字(python)
  8. Google 产品速查手册大全
  9. Java 序列化与反序列化详解
  10. Linux rpm 命令使用详解
  11. 苹果笔记本计算机内存不足怎么办,macbook内存不够用怎么加_苹果电脑增加内存的具体方法...
  12. 快速复制移动文件_如何使用F2快速移动或复制Word中的内容
  13. 如何在idea中高效地使用和查找TODO标签
  14. winxp 关闭445端口
  15. Binwalk的安装和使用
  16. for循环实现-水仙花
  17. windows异常处理
  18. 实验室管理系统 可行性分析
  19. 使用Bmob遇到的坑与解决办法
  20. label的自动换行

热门文章

  1. 你可能不需要一个 JavaScript 框架(二)
  2. zabbix专题:第十二章 zabbix proxy分布式监控配置
  3. 11个Visual Studio代码性能分析工具
  4. 看懂SqlServer查询计划
  5. 使用OpenSSL实现证书操作
  6. 238. Product of Array Except Self
  7. 无线渗透--wifiphisher之wifi钓鱼获取wifi密码
  8. python学习日记-2
  9. [异常解决] How make ubuntu use Google Search
  10. ThinkPHP框架学习之使用数组进行查询