MES中的松耦合设计一例
来源:互联网 发布:程序员有时间玩游戏吗 编辑:程序博客网 时间:2024/04/30 04:33
在不少领域,MES深入地参与现场作业,如将防错、配方等指令下发给工位和设备PLC,以指导现场作业。
通常这种MES与设备PLC的交互是实时通过OPC进行的,并且伴随不少的握手互锁逻辑。
但是在一些工厂,业务部门出于对IT系统的不信任,明确要求在MES服务器宕机的情况下不影响现场作业,从而实现所谓的松耦合设计。
以发动机拧紧防错为例,通常拧紧防错的方法是在MES里配置的,比如将机型在各工位的防错方法分配到拧紧枪号,并定义方向、次数、套筒号、扭矩等参数,但是拧紧的实现操作是由工位PLC配合拧紧枪控制器实现的。
因此对于工位PLC来说,有两种执行防错的方式:
方式一:每次当发动机到达拧紧工位时,工位PLC从MES下载拧紧防错参数,然后执行拧紧作业,此谓与MES的紧耦合设计,依赖与MES的实时通讯。
方式二:每次当发动机到达拧紧工位时,工位PLC从MES之外的某个介质获取拧紧防错参数,然后执行拧紧作业,此谓与MES的松耦合设计,不需要与MES进行实时通讯。
方式二的介质主要有两种:RFID与条码。
如下图所示,防错配置数据通过MES服务器>>OPC服务器>>IT PLC>>工位PLC>>RFID进行传递,在上线工位由工位PLC写到RFID上,并可在实际上线作业发生之前提前下载并缓存到IT PLC上,从而实现上线工位的松耦合。
当发动机到达装配工位时,工位PLC从RFID中提取防错配置数据,然后与拧紧枪控制器一起执行拧紧作业,因此拧紧作业发生时也不需要与MES进行实时交互。
利用条码进行防错也非常类似,在上线工位为每个拧紧工位打印一张拧紧参数条码,然后张贴到随车单上,当发动机到达拧紧工位时,操作工扫描对应工位的条码,即可将拧紧参数传递给工位PLC。
前面提到的IT PLC可以起到一个关键的数据缓存作用,即在上线作业实际发生之前,提前将上线所需的工单和防错配方等数据下载到IT PLC,这样在上线时,工位PLC直接从IT PLC获取数据,从而绕开了MES上层应用环境。
此外,IT PLC还可以起到数据上传的缓存作用,即设备PLC将业务数据(如过站记录和追溯数据)同步给IT PLC(工位PLC在普通作业工位将数据写到RFID,然后在同步工位将数据提取出来同步给IT PLC),然后由IT PLC在MES系统可用时同步到MES服务器,这样对于工位PLC而言,它无须与MES服务器进行通讯,更加专注于装配作业本身。
- MES中的松耦合设计一例
- 耦合、紧耦合、松耦合
- MES系统设计
- MES设计与实践
- 基于BREW的松耦合设计初探
- 【设计模式】外观模式降低系统耦合(一)
- [MES]制造执行系统(一)
- 设计模式 业务封装 & 紧耦合 vs. 松耦合 & 简单工厂模式
- 松耦合和紧耦合的架构设计及性能对比
- 松耦合和紧耦合的架构设计及性能对比
- MapReduce在MES中的应用
- 松耦合和紧耦合
- 松耦合和紧耦合:粗粒度与细粒度 - SOA 中的软件组件設計
- 软件工程中的耦合
- Java中的耦合性
- 软件工程中的耦合
- 软件工程中的高内聚低耦合
- 函数中的耦合问题
- xml
- RSA加密算法
- 会话建立(翻译tr069 3.7.1.1 )
- iOS UI调试工具Reveal lldb配置方法(Swift3.0工程)
- el表达式在jsp中无法使用解决办法
- MES中的松耦合设计一例
- 爬取整个百度贴吧
- SSH无需密码密钥登录
- 位移运算
- Android WebView H5页面 input type =“file”解决方法
- 关于activiti流程通过、驳回、会签、转办、中止、挂起等核心操作功能的封装
- macos 10.12 下php无法加载php_mysql.dll和php_mysqli.dll
- Oracle 12c中临时表空间丢失的处理和日志文件丢失的恢复方案
- osg中默认操作器TrackBall的一点修改--16.12.14