首页 > 方案案例 > 正文

基于Web的MES与ERP的集成研究

2009-10-29 09:51:24  来源:万方数据

摘要:本文简要介绍ERP和MES系统的概念和功能,论述二者集成的必要性和集成内容,并探讨集成模式及应用技术,给出用ASP技术实现了ERP和MES信息集成的实例。
关键词: 制造执行系统 企业资

  企业资源计划(Enterpirse Resource Planning,简称ERP)和制造执行系统(Manufacturing Execution System,简称MES)分别是企业层和执行层的应用系统,二者之间的信息不能及时传递,严重影响企业的信息化进程。随着Web技术的广泛应用和推广,基于Web的MES和ERP系统的集成成为企业实现信息网络化管理的重要组成部分。

  一、ERP

  ERP是20世纪90年代初由美国著名的咨询公司Gartner提出、并在MRP-Ⅱ基础上发展起来的一个全新概念,它不仅包含了MRP-II原有生产和库存控制方面的内容,又将全面质量信息管理与控制、供应链管理、流程管理和电子数据交换(EDI)等内容纳入其中。ERP对企业中的物流、资金流、信息流进行全面一体化管理。

  ERP系统通常由以下模块组成,如工程模块、销售模块、生产和物料控制模块、采购模块、货仓模块、会计模块、人力资源模块等。

  二、制造执行系统

  随着生产方式由面向库存生产转为面向订单生产,ERP系统需要实时的生产信息辅助进行经营决策和订单管理。但是来自生产现场的状态信息和生产数据并不能直接反映经营者所关心的产品进度和质量变化等信息,这样在企业生产管理和工作地或制造设备控制之间形成了信息断层。

  MES在ERP和设备控制系统之间架起了桥梁,一方面可以对来自ERP系统的生产管理信息细化、分解,将操作指令传递给底层控制;另一方面可以实时监控底层设备的运行状态,采集设备、仪表的状态数据,经过分析、计算与处理,为ERP系统及时、准确地提供关于生产活动决策支持过程的重要信息。

  MES的主要功能有作业计划与调度、资源分配、分派生产单元、数据采集、文件控制、产品跟踪、业绩分析、劳动力管理、维护管理、质量管理、过程管理等。

  三、MES与ERP的集成

  1. 集成的必要性

  随着用户对产品的需求趋向个性化,企业的产品正朝着多品种、小批量的方向发展,ERP和MES系统之间的信息交换更加频繁,将二者集成在一起能够使企业实时地以现有的资源响应客户的需求,提高企业的敏捷性。

  2. 集成内容

  MES和ERP的集成主要是信息流的集成,二者之间的信息流如图1所示。

\

  图1 ERP和MES系统之间的信息流

  MES与ERP的集成就是使MES能够自动接受来自ERP生产任务信息,当ERP中的数据信息随着市场和客户订单变化而发生变化时,MES中的数据也随着实时更新;同样,当MES中的数据信息发生变化时,ERP也能实时获得变化的信息,在ERP中能够对MES的上传信息进行查询。

  3. 集成模式的选择

  ERP和MES均采用基于Web的三层分布式体系结构,各个组件均封装在Web服务器中。采用关系型数据库系统,在Web服务器端提供统一的数据库接口模块,通过标准的SQL语句对后台的数据库进行操作,把ERP系统的数据存放在MES系统的数据库中;同时把MES系统的数据存放在ERP系统的数据库中,实现MES和ERP系统的集成,如图2所示。当用户在浏览器中输入命令,调用系统的各个组件进行决策或浏览结果时,Web服务器接受请求,依据内容到数据库中搜索符合条件的记录,最后回传给浏览器。最后传入ERP系统中。

  图2 基于Web的三层分布式体系结构

  4. 数据库集成及异构数据库的转换

  Web与数据库的集成可以采用多种方式,其中常用的有CGI、API、ASP、JDBC等。其中ASP(Active Server Pages,服务器端动态网页)是目前比较流行的一种Web开发技术。由于ASP具有与浏览器无关、不需编译连接成执行文件、与HTML紧密集成、效率高而且撰写容易等诸多优点,是实现基于Web的MES与ERP集成的理想开发工具。采用开放数据库互连(Open Database Connection,简称ODBC)技术和SQL语句,通过ODBC与不同数据库进行连接,再通过嵌入的SQL语句对异构数据库进行转换。这种方式可以实现实时数据转换。

  四、集成开发实例

  本文主要研究在ERP和MES的作业计划和调度模块之间实现了信息共享,已初步实现了MES和ERP系统之间信息的集成。

  1. 集成内容

  查询ERP系统工作单档案;根据查询结果将ERP系统工作单中零件的加工信息转换为单元加工信息;将转换后的单元加工信息传入MES的作业计划与调度模块当中;把MES系统的上传信息通过查询、转换,最后传入ERP系统中。

  2. 集成模式和方法

  MES和ERP的集成采用编制接口程序来实现数据库集成的模式,技术上,用ASP编制两个接口程序分别封装在ERP和MES系统中,采用ODBC来驱动数据库。当用户在浏览器中输入命令时,ERP或MES系统通过调用封装在本系统内的接口程序来完成对数据库的操作,从而将数据写入MES和ERP系统的数据库当中,如图3所示。

  图3 MES/ERP集成的体系结构

  3. 异构数据库的转换

  ERP系统采用SQL Server数据库管理系统,而MES采用Access数据库管理系统,要实现二者集成,还必须对异构数据库进行转换。ASP使用ADO实现异构数据库转换的步骤如下:

  1)建立两个ADO对象,分别指向源数据库和目标数据库,打开数据源。

  2)查询源库表与目标库表中符合条件的记录,将结果存入RecordSet对象变量中。

  3)读取源库表的字段内容存入临时变量中,如果源库表与目标库表中的字段的数据类型不一致,可以先将源库表中的字段内容读出并存入一个临时变量中,利用数据转换函数进行数据类型的转换后,再存入另一个临时变量中。

  4)把存放于临时变量中的字段内容插入目标库表中。

  5)关闭数据库。

  4. 部分程序代码

  以下程序代码是将ERP中工作单数据表中的信息传给MES系统的加工任务表中。

  ‘建立ADO Connection,然后开启SQL Server数据库

  set conn=Server.CerateObject(“ADODB.Connection”)

  conn.Open“Driver={SQL Server};Server=(Local);UID=SA;database=OMICS;”

  ‘建立ADO Connection,然后开启Access数据库

  set conn_ACCESS=Server.CreateObject(“ADODB.Connection”)

  param=“driver={Microsoft Access Driver(*.mdb)};DBQ=”&_Server.MapPath(“mes.mdb”)

  conn_ACCESS.Open param

  ‘执行SQL语句,查询源数据表和目标数据表中符合条件的记录SQLstr=“select * from WORDETM where字段=内容”

  SQLstr_ACCESS=”select * from rwb where字段=内容”

  set sal_ACCESS=conn_ACCESS.Execute(SQLstr_ACCESS)

  set sal=conn.Execute(SQLstr)

  ‘取得源数据表中的字段内容放入临时变量中

  templ=sal(“fieldl”)

  tempn=sal(“fieldn”)

  ‘执行SQL语句,将临时变量中的内容添加到目标数据表中

  SQLstr_ACCESS=“insert into rwb(fieldl,…,fieldn)values(‘“&_tempt&”’,…,‘“&tempn&”’)”

  set sal ACCESS=conn_ACCESS.Execute(SQLstr_ACCESS)

  ‘关闭数据库

  sal.close

  conn.close

  sal_ACCESS.close

  coon_ACCESS.close

  五、结 论

  MES和ERP的集成能够极大地提高企业的信息交换率,加快企业的信息化进程,对推动企业CIMS和并行工程的实施以及实现现代企业管理系统一体化具有重要的意义。


第三十八届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。