信息化已成为企业生存的关键,各种不同的PDM/PLM系统得到广泛应用,目前国外的PDM/PLM系统大都价格昂贵,很多功能并不实用,不适合在一些中小企业中推广,针对这种状况,本文提出一种基于本体的产品结构管理系统的框架模型,并在系统层面上加以实现,该系统已在盐城某机床厂试用。系统的开发对提高盐城地区中小企业产品结构管理的效率,节约企业的生产成本具有重要意义。
产品数据管理(PDM)是以产品为核心,用于管理所有与产品相关的信息和过程的一种使用技术。它提供一个企业数据管理的集成框架,是企业信息化的基础。作为PDM系统的重要组成部分,产品结构管理以BOM(bill of material)信息为其组织核心,把定义最终产品的所有工程数据与产品结构关联起来,实现对产品数据的有效组织、管理和控制。
1 本体论
1.1 本体的概念
本体是通过对于概念、术语及其相互关系的规范化描述,勾画出某一领域的基本知识体系和描述语言。它属于人工智能领域中的内容理论,研究特定领域知识的对象分类、对象属性和对象间的关系,为领域知识的描述提供术语。
1.2 OWL
OWL(Web Ontology Language)作为一种本体建模语言,是W3C推荐的语义互联网中本体描述语言的标准。针对不同的需求OWL有3个子语言:OWL-Lite、OWL-DL和OWL-Full,主要的分类依据是它们的表达能力。
OWL的基本元素:类、个体和属性。
OWL规定,任何东西都是类owl:Thing的一个成员(实例)。因此,任何用户定义的类都是owl:Thing类的子类。
1.3 Jena简介
Jena是惠普公司的一个项目,Jena为应用程序开发人员提供了一套java接口对本体进行操作。Jena主要由API、SPI组成。用户编程只需使用API。Jena库由包来管理,Jena API以接口方式定义。可以调用Jena API,构建应用程序,实现RDF,OWL本体进行创建,修改,查询以及推理操作。其功能包括:读写RDF数据,本体子系统、推理子系统,本体的持久化存储、查询模型等。
1.4 Protégé简介
Protégé是由美国Stanford大学开发研制。它使用Java和开放资源作为操作平台,可自己设置输入格式,也可插入插件扩展特殊的功能。它提供一个图形和交互式的知识本体设计和基于知识的开发环境。Protégé支持以文件或数据库形式存储知识本体。
2 系统体系结构
参照PDM的国际标准,基于本体的产品结构管理系统为B/S结构,其系统结构如图1。 (图片)
图1 体系结构图 系统结构分为4层:数据层,应用层、表示层和客户端层。数据层保存产品数据和用户信息;应用层主要实现系统的功能逻辑,在接受调用请求后进行逻辑处理,可将处理结果保存到数据层,同样也可从数据层取出数据,经过处理后,发送给表示层;表示层用来接收客户端请求,然后调用应用层的功能模块进行处理,并把处理结果返回到客户端;客户端层则用来提供应用的Web操作界面。
系统模块主要包括2部分:用户功能模块和领域功能模块。领域功能模块的实现以Jena作为本体开发接ISI,主要有Item、Master_Form、Dataset、BOMLine、BOMView等类,每个类都有一些简单属性。本体模型主要类及类之间的关系说明如下:
Item(产品条目):表示真实世界中的一个产品、部件或零件对象等。
Master_Form:Form(表格)将各种属性信息数据直接存入关系型数据库中。Form与Item直接关联。Form的属性包括图纸编号、中文名称、材料,设计者等。
Dataset:用来管理(存放)应用软件生成的数据(文件)的一种对象。
BOMView:一种具体定义Item(装配件)信息的数据对象,它存放了该Item(装配件)的装配结构。BOMView必须依附于Item。
BOMLine:当添加一个零组件到一个装配件时,就是创建一个从零组件到上级装配件的装配关系,这个装配关系的显示为一个BOMLine。
3 系统实现中的关键技术
3.1 确定本体模型层次结构
系统所采用的层次结构为自顶向下法:由某一领域中最大的概念开始,而后再通过添加子类将这些概念细化。Product Structure Management包括以下几个主要部分:BOMView、Master_Form、BOMLine、Dataset、Item等,每个类有各自的子类。
在Protégé图形界面环境下创建本体模型,系统的类图如图2。(图片)
图2 本体模型类层次图 3.2 定义类及属性之间的父系
类定义后,要描述类的属性之间的内在结构,其中子类继承其父类的属性,还要描述类中的个体成员与其它类之间的关系。为了更形象的描述类及其属性之间的关系,Protégé中通过OntoViz图形工具显示本体关系。
其中Item的几个属性Item_Name、Relation_Item_BOMView、Relation_Item_Dataset、Relation_Item_Maste_Form、Relation_Item_Part_Class,后4个属性分别定义Item类与BOMView、Dataset、Maste_Form、Part_Class等类之间的关系。
3.3 用XML导出本体模型
本体模型完成后,可以用XML导出模型。以XML文档中数据集为例,XML部分代码如下:(图片) 首先定义一个元素的ID:Dataset,Dataset是PDM的一个子类,然后定义Dataset的属性:Dataset_Reference、Dataset_Tool、Dataset_Type和Dataset_Volume等。
3.4 功能模块的类和结构
系统实现所需功能模块包括登陆、注册、本体实例操作模块等。(图片) JenaAction.java和JenaActionForm.java实现信息的浏览和删除。AddAction.java和MFActionForm.java实现信息的添加和修改。ClassJena.java用于读写本体模型。
本体模型读写功能的实现。
4 系统实现
基于以上的系统设计和关键技术分析,本系统采用Proégé构建产品结构管理本体的类、属性和实例,并将其导出为XML文档,然后通过Jean本体开发接口工具包在NetBeans集成开发环境中采用JSP、Struts枝术实现对产品结构的浏览、删除、添加和修改等管理功能。系统采用4层S/B体系结构将复杂的业务逻辑封装到应用层,并从数据层和表示层分离出来,使系统具有良好的扩展性、开放性和可维护性。
系统开发环境:操作系统:Windows XP;数据库:MySQL;JSP服务器:Tomcat 6.0;浏览器:IE 6.0;开发工具:本体开发工具Proégé;本体开发接口工具包Jean;NetBeans 6.5集成开发环境;
5 结束语
通过参照PDM的国际标准确定系统中产品结构管理模块的框架结构,在Protégé中构建该领域本体的类、属性和实例来确立领域本体模型,采用JSP开发本系统。要实现企业有效的产品结构管理,还有许多探索性的工作要做,如何更简便的构建产品管理系统中领域本体,如何更好地实现系统领域概念的共享,这些都是未来的研究方向。
2/17/2012
|