基于智慧工厂实验平台的制造执行系统(MES)软件系统设计
近年来,随着智能制造在国内外的迅速发展,智能设备的设计与研发越来越受到企业和学术 界的追崇。为了更加灵活、准确和及时的提高对生产线的合理配置,提升设备的运转效率和质量,因此,设计了针对智慧工厂实验平台的MES软件系统,来改善生产管理水平,提高质量控制能力和现场监控能力。
随着工业4.0和智能制造在国内的研究和应用越来 越广泛,国内中小型制造企业越来越重视信息化工作。 先进的管理思想和管理系统相继被中小型企业引入,包括以MRP、MRPII和ERP为代表的计划管理系统和以 DNC、PLC和SCADA为代表的工业控制系统,这些系 统对企业具有良好作用。然而,计划管理系统不能够拓 展到底层控制系统,而底层控制也不能向上扩展到计划层,在计划层和控制层出现了“信息孤岛”现象,导致 企业制定的计划得不到准确的执行。从中可以看出计划 管理系统在制定计划的时候不能够实时地获取现场的数据,导致在制定计划的时候缺少对现场状况的分析。当 企业的内外环境变化时,生产现场也无法得到及时的指 令来进行调整。针对这个问题,可以发现计划层和控制 层缺乏有效的沟通和集成是导致计划和生产脱节的真正 原因。这种脱节不利于提高企业的市场竞争力。信息化 的发展使企业发现制造执行系统(MES)可以解决两者 之间的脱节现象,实现上下层的双向沟通与通讯,从而实现企业的连续信息流。
MES系统作为计划层和控制层之间的执行层,负责 管理车间生产和执行计划调度。制造执行系统在一个统 一的集成平台上提供了车间管理和控制功能,有效提升企业的车间管理能力。制造执行系统通过控制物料、设 备、人员、流程指令和设施在内的所有车间资源来提高制造竞争力,在统一的平台上集成了物料管理、质量管 理、文档管理和生产调度等相关功能。制造执行系统的 功能充分的解决了计划层和控制层之间的矛盾,充分利用上下层之间的数据来提高计划的实时性和灵活性,同 时又能改善生产线的运行效率。
1、智慧工厂实验平台
智慧工厂实验平台包含诸多的实验设备,其三维 模型如图1所示,其中配备有一台测量仪、两台数控铣 床、机器人手臂、AGV、立体仓库和辅助分拣等设备。智慧工厂实验平台主要是模拟刀刻印章的生产流程进行 全智能无人参与的生产制造。
图1 智慧工厂实验平台三维模型
2、MES总体框架设计
该MES系统可整合上层的ERP系统和底层的FMS系统,并且可以实现对底层设备的实时监控,其总体框架 如图2所示。
图2 MES总体框架图
1)计划层主要是进行生产计划,其包含ERP/ MRPII等上层管理系统,提供各种生产信息,如物料、 产品和人力资源等信息。
2)执行层由MES系统实现,MES系统的主要功能 是对订单进行管理、物料管理、设备管理、质量管理、 途程管理、资料管理和备份管理等。
3)控制层主要通过生产调度实现对设备状态的反 馈和对生产产生的数据进行采集和存储。
4)从图2可以看出,针对智慧工厂实验平台的MES 系统整合了计划层的订单管理,MES更加方便快捷的了 解订单的具体详情,实现对订单执行的实时监控。MES系统还通过和FMS系统之间的交互作用,实现对底层设备的监管和对生产过程的控制。充分发挥MES系统作为执行层的作用。
3、MES功能模块设计
3.1 MES功能模块组成
智慧工厂实验平台的特点是全工作流程无人参与, 实时的反馈生产状态和设备状态,只需要下发具体的生 产指令,智慧工厂实验平台就可以进行生产制造。根据其特点,确定MES系统设计目标是分析客户订单、分配 物料设备等资源和设计工艺流程,因此,将MES系统功 能设计成八个模块,如图3所示。
图3 MES系统功能模块
1)基础资料模块。主要是人员管理、角色管理、 权限管理和密码管理四个子模块。人员管理子模块实现 对人员的信息进行管理,包括添加、删除和修改人员信息;角色管理子模块实现对角色信息的管理,也提供对
角色的添加、删除和修改功能;权限管理子模块实现对 权限信息的管理,也提供对权限的添加、删除和修改功 能;密码管理子模块实现对人员密码的修改功能等。
2)订单管理模块。订单管理的订单来源于客户订 单,主要将订单信息附带的产品信息进行分析,查找产 品所需要的物料和设备信息。
3)设备管理模块。主要是设备编码管理、机床管 理和AGV管理三个子模块。设备编码管理子模块主要是 实现与底层FMS调度软件进行设备编码统一,方便设备 的调度和管理,以及对具体的设备信息反馈;机床管理 子模块主要是实现对数控铣床信息的状态监控;AGV管理子模块目的是实现RFID(射频识别技术)信息的反 馈来追踪产品生产过程等。
4)物料管理模块。主要是物料信息、仓位信息、 产品信息和BOM表四个子模块组成。物料信息子模块 存放物料的详细信息,包括物料编号、物料名称、物料数量和供应商等信息;仓位信息子模块是对立体仓库产 品的位置和辅助拣选的物料位置信息的确定;产品信息 子模块是对产品具体信息的描述;BOM表是产品物料 清单的生成等。
5)途程管理模块。主要是工艺流程、工艺卡和 SOP三个子模块组成。三个子模块主要实现对产品生成 流程的设计和将流程信息的细化,以便下发给调度软件 FMS能够有条不紊的进行生产。途程管理是智慧工厂实 验平台最核心的功能模块。
6)质量管理模块。主要是包括生产过程中的质量 监控模块和生产结束后的报表分析,实现对生产中的故 障监控和分析。
7)资料管理和备份管理模块。主要实现对生产中 使用的资料进行统一管理,并且可以实现对一些重要数 据的备份功能。
3.2 MES功能设计特点 上述智慧工厂实验平台MES系统具有如下特点:
1)系统采用人机料法环的特点将MES设计成基础资料、设备管理、物料管理、途程管理和其他管理,充 分体现对整个流程的全面质量管理。
2)订单的细化处理,通过对订单的细化可以更加 快速高效的获取订单中产品的详细信息,方便后期的物 料设备选取和管理。
3)MES系统处于上层计划层和底层控制系统之 间,其囊括了上层的部分功能和底层的部分功能,更加 灵活的实现与上下层之间的衔接。
4)MES系统与底层FMS调度系统进行衔接,充分 的利用FMS系统的实时监控和调度特点解决了MES在B/ S架构下的效率问题。
4、MES设计的关键技术
4.1 软件框架技术
智慧工厂实验平台的MES系统采用B/S架构模式, 可实现多用户异地访问和控制。
MES系统软件框架采用SSH框架(Spring框架+Structs框架+Hibernate框架)技术,该框架将用户界 面、业务逻辑和数据的处理三个部分分离,降低各个层 次间冗余度和耦合度,并且能够提高MES系统的扩展 性。该MES系统根据SSH框架特点将其分为Web层、业务逻辑层和数据层三个层次。
Web层是用户界面层,提供供用户操作的可视化界 面。Web层采用Structs框架管理各个页面之间的逻辑, 并提供控制类(Action类)来处理页面之间的数据传递 和页面与业务之间的数据传递。Web层的页面采用JSP 语言编写的jsp页面,页面自身内部逻辑采用JavaScript(Jqurey类和Ajax技术等)脚本语言和HTML语言等来 实现。
业务逻辑层是后台对页面数据处理层,其包括服务 类(Service)、数据访问对象(DAO)和简单Java对象(POJO)。服务类为Structs框架的控制类(Action类) 提供业务逻辑的操作方法,是Web层传递数据到数据库 的接口。数据访问对象(DAO)为Service类提供数据的 增、删、改和查等操作方法。简单Java对象(POJO)是 DAO和Service类操作的对象,它将数据库中表一一映射成一个个POJO对象,这样DAO和Service类对数据库的 操作就转换成对POJO对象的操作。
数据层是使用Hibernate框架,该框架实现与数据库 服务器进行连接,并封装对数据库操作的方法,这些方 法可以供DAO进行调用。
Spring框架是全方位的整合框架,主要是将以上三 个层次进行整体配置和融合,可实现各个子框架的组 合,也可实现子框架之间相互独立。使MES系统软件的 三个层次更好的协同工作。
4.2 MES和FMS集成
MES软件和FMS软件的集成的业务流程如图4.2所 示。基本流程是MES系统通过下发订单,将工艺详情和 订单绑定在一起交给FMS软件,然后FMS根据工艺详情 与底层设备进行交互,实现对底层设备的监管与控制, 并将生产状态反馈给MES进行分析处理。
MES系统和FMS系统的集成主要是通过数据库服务 器作为中间桥梁,将两者之间的数据信息进行处理和交 互。MES系统和FMS系统之间传递的数据主要包括订单 管理数据、材料管理数据、工艺管理数据和过程实时数据四部分的数据。
订单管理数据是在客户订单生成时产生的数据,主要包含客户数据和产品数据,客户登录系统后填写客户 信息并保存到数据库端,客户填写其订单信息也会保存 到数据库,方便下发订单时对订单信息的查询和对订单状态的追踪。
材料管理数据是MES系统独立的物料管理模块,其 包含原材料信息、成品信息、仓位信息和BOM信息, 这些信息都将存储在数据库端。在进行工艺流程设计时 查询材料管理数据获得物料的仓位等信息,从而可以让设备去具体的位置取或者放具体的材料。
工艺管理数据是在下发订单时,将客户订单信息和 工艺流程信息绑定在一起后生成的工单信息,主要包含 工艺类数据和排产类信息,这些数据会被存入数据库端供FMS系统进行调用。
过程实时数据是FMS系统对底层设备监控产生的数 据,主要包括任务处理数据、设备管理数据和传感器数据等。FMS系统不仅对底层部分设备进行实时监控,还 会将底层状态信息存入数据库端,经过数据库触发器来 反馈给MES系统进行设备监控和管理。
4.3 数据库设计
根据智慧工厂实验平台的特点,MES系统的数据库 设计主要包括MES系统特有的信息数据库表和FMS系统 共用的设备控制数据库表。MES系统的自身特有的数据 库表主要包括用户信息相关数据库表、订单信息相关的 数据库表以及物料信息相关的数据表;MES系统与FMS 系统共用的数据库表主要包括各个设备的控制表,MES系统可以通过设备控制表获取设备的状态信息,从而实 现对设备的监控和管理。
由于MES系统和FMS系统之间部分数据库表的共享 和交互可能存在并发问题,在进行数据库设计时对必要 的数据表进行了触发器设计,通过触发器设计可以实现设备控制表的状态信息发生改变时对应MES系统监控状 态表可以直接获取改变后状态,从而实现对设备的实时 监控功能。如下代码是物料表内实现库存改变时对应的可分配物料数据发生改变得触发器代码。
ALTERtrigger
[dbo].[TRMaterTableUpdate] on [dbo].[MaterTable]
afterupdateasifupdate(mtprecent) begin
updateMaterTablesetmtsum=(mtsum-1)wheremtid
=(selectmtidfrominserted)
update MaterTable setmtsurpsum = (mtsum
-mtprecent)wheremtid=(selectmtidfrominserted) end
GO…
5、MES实现
智慧工厂实验平台MES系统实现物料管理、订单管 理和工艺流程的下发等相关功能模块,以及通过与FMS 的集成实现对状态的监控和对产品的追踪的功能。
如图5所示为MES的订单管理模块,实现对客户订单进行工艺绑定等功能。 如图6所示为MES的途程管理模块,实现对工艺流程的设计等功能。 如图7所示为FMS通过RFID反馈进行生产进程的监控模块,以便对产品在生产中具体位置进行追踪。 如图8所示为FMS系统对机床状态的实时显示模块,可以实现对机床加工状态的监控。
图4 MES和FMS集成的业务流程
图5 MES订单管理模块
图6 MES工艺流程模块
图7 RFID监控模块
图8 FMS机床监控模块
6、 结论
制造执行管理系统(MES)是企业信息集成的纽 带,作为计划层和控制层桥梁,充分的发挥其执行层的 特点,将上层和底层信息进行转换和交互。本系统充分利用其特点将其实施在智慧工厂实验平台上,将上层的 管理和产品信息进行分析并转换成底层控制信息,从而 使智慧工厂实验平台能够有效运行,使制造过程变得更 加可控和高效。