1 引言
产品全生命周期管理(Product Lifecycle Management,PLM)是指管理产晶从需求、规划、设计、生产、销售、运行、使用、维修保养、直到回收再用处置的全生命周期中的信息与过程。BOM(Bill of Material,物料清单)作为企业主要基础数据,在CAM/PDM/CAPP/MES等PLM关键应用分系统的集成中,发挥着至关重要作用。它不仅仅是PLM分系统自身数据的核心,同时也是各个分系统数据集成的纽带。
在产品生命周期的不同阶段,由于产品结构关系的不同,存在着各种不同的BOM,如设计BOM(Engineering BOM:EBOM)、工艺BOM(Plan BOM:PBOM)和制造BOM(Manufacturing BOM:MBOM)等。在飞机、汽车等制造与装配行业,由于BOM结构复杂、各种BOM的转化与调整较为频繁,所以实现不同BOM之间的数据转换以及数据集成管理是飞机、汽车等行业实施PLM的关键所在。文中以企业的产品数据管理系统和工艺管理系统的集成为例,探讨了PDM与CAPP两个异构系统之间的BOM数据交换的实现方式。
2 关键技术分析
随着企业信息化建设的深入,许多企业都逐步建立了各类应用信息系统,由于各个信息系统都是独立开发的,并且大多数是基于部门需求从单项业务系统开始的,所采用的开发方式和平台各不相同。设计部门采用的PDM系统大都是基于J2EE架构的Web平台,具有不同的系统架构和外部接口;由于工艺编制界面多样,工艺部门采用的CAPP系统采用微软的技术平台,也具有多样性与异构性的特点,因此必须采用基于平台无关的技术来实现通用的CAPP和PDM系统的集成。
2.1 SOA概述
为了解决企业中由于位置上分散的独立系统而逐渐形成的“信息孤岛”问题,以及更好地重用已有系统的功能模块、缩短软件的开发及实施周期,一种面向服务的体系结构SOA(Service Oriented Architecture)的软件设计方法被提了出来。相对于面向对象和基于构件的软件复用方法,SOA提供了构建松散耦合的分布式系统的方法,能够达到更高的复用度和更好的扩充性。
2.2 SOA体系结构
SOA是一种基于组件模型的面向服务的软件体系结构,它通过服务间定义的透明接口,将应用程序的不同功能单元的服务(Service)连接集成起来,同时,接口采用独立于具体实现服务的硬件平台、操作系统平台和编程语言的中立方式进行定义,使得构建在这样的系统中的服务可以使用统一和标准的方式进行通信。简单来讲,SOA能够以程序化的、可访问软件服务的形式公开业务功能,以使其他应用程序可以通过已发布和可发现的接口来使用这些服务。
SOA模型中共有3种不同角色的关系(服务代理者、服务提供者和服务消费者),如图1所示。
图1 SOA体系结构图
(1)服务提供者(Service Provider)。发布自己的服务,并且对使用自身服务的请求进行响应。
(2)服务代理(Service Broker)。注册已经发布的服务提供者,对其进行分类并提供搜索服务。
(3)服务请求者(Service Requester)。利用服务代理查找所需的服务,然后使用该服务。
SOA体系结构中的组件必须具有上述一种或多种角色。在这些角色之间通过使用3种基本操作进行相互作用:
(1)发布(Puhlish)。服务提供者向服务代理者发布服务,注册自己的功能及访问接口。
(2)查找(Find)。服务请求者通过服务代理查找特定种类的服务。
(3)绑定(Bind)。服务请求者能够真正使用服务提供者。
2.3 实施SOA的关键技术
直到XML语言的出现以及Web Service等技术的发展,SOA才从概念阶段慢慢走入企业的视野,从理论逐渐转向于实际应用。实施SOA的关键技术如Web服务栈结构如图2所示,其中涉及的主要技术包括以下几个:XML(Extensible Mafkup Language,一种扩展性标识语言)、SOAP(Simple Object Access Protocol,简单对象访问协议)、WSDL(Web Service Description Language)、和UDDI(Universal Description Discovery and Integration)等。
图2 Web服务栈结构图
3 具体实现方式
企业中需要工艺管理系统通过“结构快照”表示PBOM(包括工艺BOM和装配BOM),可以按照生产和装配的需要改变这些BOM的结构,但不会影响设计BOM的完整性,如在装配BOM的结构中可增加虚拟件、拆分零件等,所以要求实现产品设计平台与工艺设计平台的一体化工艺管理系统中的PBOM在导入的EBOM结构上派生。
3.1 系统集成框架
下面以PTC公司的Windchill PDM系统和开目公司的CAPP工艺管理系统为例,CAPP系统通过WebService接口读取Windchill PDM系统的EBOM结构设计数据,达到集成Windchill PDM系统的目的。系统集成的框架结构如图3所示。
图3 系统集成的框架结构图
在CAPP系统中基于.NET平台开发插件并将它作为PDM系统WebService的客户端,插件程序通过WebService平台发送XML格式的SOAP消息给PDM应用程序,PDM通过数据交换封装接口解析XML格式的消息为PDM内部数据格式,在PDM的产品信息数据库中查找产品的结构树信息,并且通过数据交换封装接口把查询结果由PDM的数据格式转换成XML格式,然后把XML数据封装成SOAP消息传回给CAPP系统的插件应用程序,CAPP系统通过数据交换封装接口把得到的XML格式的结果转换成CAPP系统内部的数据格式,这样就完成了BOM数据的交换,可以在CAPP系统中查看已传递的产品结构树信息。
3.2 BOM数据的交换格式
CAPP与PDM之间主要交换的数据是结构化的物料清单表,XML提供了一种结构化的数据表示方式,使得数据与结构分离,所以选择XML作为中间格式并通过SOAP协议传递来实现CAPP与PDM之间的数据交换。CAPP可以从PDM中得到设计结构树和设计节点属性,PDM则可以从CAPP中得到工艺BOM和装配BOM。下面给出用于传递产品结构树(EBOM)数据格式的例子:
3.3 系统集成界面
在开目工艺管理系统主框架上有主菜单【WINDCHILL】,选择该菜单下的【WINDCHILL数据导入】命令,如图4所示。在点击菜单后,程序将弹出登录PDM系统对话框。
图4 数据导入登录图
在对话框中输入用户名和密码,点击【确定】按钮后,程序调将用PDM的集成插件,PDM系统进行权限验证。验证成功后,读取PDM系统中的产品结构如图5所示。
输入查询条件查询PDM系统中的EBOM结构信息,选中需要下载至CAPP系统的结构节点,点击【确定】按钮。该零部件结构以及相关的零部件属性将自动传递到CAPP系统中,用户可在CAPP系统中的【对象管理】的【数据批量导入】中看到当前导入的结构及其属性。通过确认EBOM产品结构数据后,点击【提交】按钮,将导入的产品结构树提交为正式的工艺BOM数据。
图5 查询获取BOM信息图
4 结语
通过结合企业的应用实际,针对现有PDM与CAPP系统,分析并提出了BOM数据集成过程的关键点:采用基于SOA的松耦合的集成接口方式,搭建了以产品数据管理(PDM)系统为核心,与工艺规划管理(CAPP)系统之间的BOM数据集成框架,实现了从EBOM到PBOM的数据传递,同时为实现企业各系统之间的综合集成奠定了基础。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:基于SOA技术的BOM集成研究