MES在汽车制造中的应用之架构篇(三)
MES作为车间现场的执行系统,对稳定性、可靠性提出了很高的要求。这部分将介绍汽车制造MES的典型架构,并通过康明斯、福特、沃尔沃的案例予以分析说明。此外,还介绍了业内广泛使用的Kepware OPC系列产品。另外,还基于作者实践,介绍了IT PLC的应用及松耦合的设计。
1. 什么是OPC
OPC即OLE for Process Control,用于过程控制的OLE。
而OLE即Object Linking and Embedding,对象链接与嵌入。
比如WORD中插入一个EXCEL表格,就利用了OLE技术。
图3.5-1 OPC的作用
如图3.5-1所示,OPC的作用是将PLC数据块(Data Block)转换成MES(通过OPC客户端)能够直接读写的内存变量(Tag)。
一般来说,如果PLC要和上位系统通信,通常会把数据存储在专用的接口数据块中,并且为每个数据块规划好专有结构,如:
但是这些数据块的地址是无法被MES直接访问的。
而经过OPC映射后,这些PLC变量和一般的IT服务器内存变量在形式上已经没有了区别,OPC服务器能够直接对这些PLC变量进行读写操作。
而我们可以在MES上部署OPC客户端,对这些变量进行访问和读写。
目前OPC协议主要有两种:OPC DA和OPC UA。
OPC DA即OPC Data Access,这个协议基于微软的DCOM技术实现,已经用了很多年,非常成熟,但是只能部署在WINDOWS平台。由于DCOM的限制,OPC DA的安全性不高,配置也较繁琐。
OPC UA即OPC Unified Architecture,是跨平台的,可以部署在LINUX+JAVA环境下,但是目前应用还不是很广泛。
2. DataLogger
DataLogger是Kepware的一个插件,能够将OPC变量的值自动记录到数据库中。
对于一般的PLC数据采集需求来说,这个插件已经足以满足了,它只需要一些简单的配置,不需要任何的代码开发。
数据存到数据库里以后,可以通过编写数据库存储过程或者应用层逻辑,来对数据进行业务处理。
比如我们要对一个旧工厂的冲压车间实施PMC,采集设备状态信息,那么我们可以利用OPC DA + DataLogger来采集数据,然后在数据库里编写触发器和存储过程来对数据进一步处理。
3. ODBC Driver
DataLogger只能对数据库进行写操作,不能进行读操作,因此数据只能从PLC向MES上行传输。
但某些时候,我们需要读数据库。
比如我们要对焊装车间增加订单下发和时间同步功能,那么我们可以利用ODBC Driver插件来实现。
ODBC Driver把数据库作为一个设备进行管理,调用ODBC引擎实现数据库连接和读写操作。
我们可以建立两个接口表,一个用于存储当天工单,一个用于存储时间同步信号。
OPC服务器通过这两个表来读取信息,然后将数据通过OPC DA写到PLC中。
4. Advanced Tags
Advanced Tags是一组插件,这里介绍应用较多的Link Tag。
Link Tag能够将一个变量的值自动写入另一个Tag。
这里介绍两个应用案例。
案例1:PLC通信。如区域A进行装配,区域B执行检查。当区域B检查出现问题时,通过ANDON系统通知到区域A PLC。由于区域A和区域B之间距离较远,且工艺上没有数据交互。因此,我们可以在不增加硬件设备(如耦合器)的情况下,通过OPC DA + LINK TAG来实现2个区域PLC之间的通信。
案例2:PLC数据上传到MES。DataLogger尽管能够写数据库,但是它有一个很大的限制:只能增加行记录(INSERT)。而ODBC DRIVER能够更新接口表(UPDATE)。因此我们可以通过OPC DA来监控PLC变量,再通过LINK TAG将PLC TAG映射到ODBC DRIVER对应的接口表。详细实现,可参考我的文章《通过KEPWARE ODBC DRIVER和ADVANCED TAG 实现数据库和PLC的双向通信》。
5. IoT Gateway
IoT Gateway即Internet of Things Gateway物联网网关。
Kepware以插件的形式提供了4种网关:
- MQTT客户端
- REST客户端
- REST服务器
- ThingWorx网关
前3种都可以很方便地配置使用。
MQTT即Message Queuing Telemetry Transport,是一种专门用于远程窄带网络的消息队列服务协议。比如在一些机加车间,网络信号不稳定,那么我们可以在不改造网络的情况下,利用此客户端来采集PLC数据。
REST即Representational State Transfer可重新表达的状态迁移,是一种应用较广泛的实时可靠的IT信息传递方式,目前在很多场合取代了Web Service进行部署。
REST客户端能够侦测PLC变量,一旦发生变化,则自动调用MES REST服务器,将数据上传给MES。比如AVI系统的车辆过站记录,能够通过REST客户端实时上传。
REST服务器提供了一个监听器,将PLC变量暴露出来,MES可通过REST客户端来执行特定的指令。如MES要冻结某个工单,则可通过REST调用将信息实时写入PLC。
IT PLC的应用
前面在介绍福特NGAVS系统和沃尔沃ANDON系统的时候,都提到了IT PLC的架设。此外,象捷豹路虎中国工厂MES在总装车间也搭建了IT PLC,作为AVI和防错的主控PLC。
本章主要介绍IT PLC的作用和架构优点。
ANDON系统搭建专用PLC非常容易理解:方便硬件连接。
以涂装车间为例,拉绳、喇叭、大屏的分布非常分散,要接入线体PLC的话,涉及的PLC非常多。
而有了ANDON PLC,再配合远程I/O和光纤环网,我们就可以把所有的外设接入同一网络,不管是安装还是调试都较为独立,实施风险小。
下面我们以福特NGAVS为例,来看看IT PLC在软件实施方面起的作用。
图3.6-1显示了没有IT PLC的架构关系:
图3.6-1 无IT PLC
图3.6-2显示了有IT PLC的架构关系:
图3.6-2 有IT PLC
经过对比,我们可以看到IT PLC(NGAVS PLC)起到的作用:
首先,从线体实施商的角度来看,由于剥离了NGAVS DB/FC,线体PLC的业务逻辑更加单纯。PN/PN Coupler将NGAVS交换数据映射成I/Q数据,在形式上和一般的外设没有区别,集成非常容易,风险小。项目工程文件中只有业务DB/FC,更加稳定安全,调试时耦合度低。
其次,从NGAVS实施商的角度来看,由于NGAVS DB/FC部署在NGAVS PLC上,不需要考虑OEM PLC的CPU差异,所有工位可以应用同一个版本的软件,也不必考虑DB/FC/计时器/计数器的冲突,开发和调试都非常方便。
此外,IT PLC可以提供一些额外的功能,如数据缓存。考虑到现场控制网络比IT网络更加稳定,我们可以在订单下载后将订单缓存在IT PLC上,也可以将现场的过站记录缓存在IT PLC上,这样现场控制系统和上层执行系统形成松耦合的关系,对生产的影响小。
松耦合与紧耦合
MES作为一个执行系统,和车间现场的设备、控制系统有密切的集成关系,这是和一般的IT系统有较大区别的地方。
比如ERP下工单是以天为单位的,库存也以天为单位进行结算。
但是MES在需要和PLC等现场设备集成的地方,通常要求系统以秒级单位进行响应。
因此,车间对MES的可用性就提出了很高的要求。
但是另一方面,与PLC相比,MES系统的设备在成本、稳定性、防护等级等方面又有较大差距,因此,业务方对MES的可用性往往抱着怀疑的态度。一些情况下,业务方要求MES高可用,另一方面又要项目组做出“MES当机怎么办”的预案。
在这种情况下,就形成了所谓松耦合的设计。
所谓松耦合,是比较紧耦合而言的。
紧耦合,有点类似同步通信,当一方系统出现异常时,另一方也无法正常工作。象康明斯NGMES、福特NGAVS、沃尔沃ANDON等系统都采用了紧耦合的设计。
而松耦合,类似于异步通信,当一方系统出现短暂异常时,不会影响另一方的正常工作。
下面我们举几个松耦合的例子。
案例一:通过条码缓存数据。
挑战:某整车厂总装车间,混线生产轿车、SUV、MPV,并且生产节拍达到61JPH(61台车/小时),要怎么保障生产线上设备的防错?
方案:在装车单上打印各设备的防错条码。
当车辆出PBS时,MES系统打印装车单,并为各设备生成防错条码。防错条码由事先定义的字符串组成,包含车型、工艺参数等数据,并且合成一个长字符串。此过程由MES根据工艺配置自动完成,不需要和PLC交互。
当车辆进入防错工位时,工人扫描装车单上的防错条码,设备PLC经由扫描枪识别条码对应的字符串,再对字符串进行拆分、反向解析,得到所需的防错指令。此过程由PLC根据配置自动完成,不需要和MES交互。
案例二:通过RFID缓存数据。
挑战:某发动机装配车间,变型机较多,且工艺经常调整,因此需要MES能够灵活地处理工艺变更,并且对现场生产的影响要尽可能小。
方案:在大容量RFID TAG上存储工艺数据。
首先,在MES系统设计一个工艺管理模块,可以通过界面灵活地定义各机型在各工位的工艺。
其次,当发动机上线时,MES查询机型的工艺配置数据,得到此发动机在各工位的工艺参数,并且通过PLC写到64KB RFID TAG上。
第三,当发动机到达装配工位,PLC读取RFID TAG上本工位对应的工艺参数,指导设备进行对应的装配、拧紧、检测等作业。作业完成后,PLC把追溯需要的数据追加到RFID TAG上。
最后,当发动机到达下线工位,PLC把RFID TAG上追加的数据上传给MES。
我们可以看到,仅仅在上线、下线工位,PLC需要和MES实时交互;而在大部分的装配工位,作业仅仅通过PLC进行。
此外,由于工艺配置维护在MES系统里,配置数据存储在MES中,可以通过MES客户端界面,非常方便地进行工艺变更的配置。
图3.7-1显示了相关流程:
图3.7-1 通过RFID缓存数据
案例三:通过IT PLC缓存数据。
挑战:某整车厂调度系统,能够自动将订单下发给线体PLC,也能够自动从线体PLC同步车辆过站记录。现要求系统提供2个小时的缓存,当系统或网络出现短暂异常时,不会影响现场作业。
方案:通过IT PLC缓存数据。
IT PLC作为现场管理的关键设备,能够和线体PLC实时通信、交换数据。同时,IT PLC提供一定容量的数据存储功能,可以缓存2小时的订单数据和离线过站记录。
每天的生产作业开始之前,计划员在MES中提前“锁定”订单,系统自动将订单数据下发给IT PLC,并缓存在IT PLC内部数据块中。
当生产开始时,线体PLC向IT PLC请求订单,IT PLC检索本地缓存的数据,并转发给线体PLC;当IT PLC本地缓存小于安全值时,则自动向MES请求下发新的订单。当MES系统异常时,由于IT PLC和线体PLC的通信正常,且IT PLC向线体PLC下发的是本地缓存的数据,现场作业短时期内不会受到影响。
在过站记录工位,线体PLC采集RFID TAG信息,并上传给IT PLC。IT PLC判断MES是否在线,如在线则将数据上传给MES;如不在线则将数据缓存在IT PLC本地数据块中;当MES恢复在线后,IT PLC将本地缓存的离线过站记录上传给MES。
本文为作者授权转载文章,任何人未经原作者同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。
- 上一篇文章:销售物流管理平台助力新冶钢提效降本
- 下一篇文章:PMI稳中向好,制造业呈回暖之势
相关资料推荐