1 引言
随着新产品设计制造技术的不断发展,零件的设计趋势朝着标准化、系列化的方向发展。伴随着制造企业分工的不断细化,企业所需的零部件将由零件供应商提供。零件库可使企业通过互联网查看和下载所需的零部件,提高企业的设计、制造、生产的效率;同时,零件供应商也可通过零件库宣传和推销自己的产品。中小企业实力有限,很难承担建零件库的软硬件费用。云制造模式为中小企业信息化建设提供了新的出路。本文采用云制造模式,在制造云的基础上开发了面向多用户的零件库系统。中小企业通过租用系统空间管理和宣传零部件,这样可以节省很多费用。零件库对于中小企业宣传、销售其产品有很大帮组,可以显著提高企业信息化水平。
2 云制造模式下的零件库系统
云制造是一种通过实现制造资源和制造能力的流通,达到大规模收益、分散资源共享与协同的制造新模式。制造云[2]是云制造系统架构的核心,是大量的云服务按照一定的规则聚合在一起所形成的动态云服务中心,能透明地为用户提供可靠的、廉价的、按需使用的产品全生命周期应用服务。
1.1 云制造模式下的零件库系统运营模式
在云制造模式下,零件库不再由大公司建立,而是由运营商建立,主要服务对象是中小企业。运营商建立零件库,但不提供零部件资源;中小企业租用运营商提供的零件库,是零部件资源的提供者,即:供应商,当然也可以是使用者;采购商通过系统查看零部件并订购。在此模式下,中小企业可以有效降低建立零件库的门槛及风险,有效解决中小企业无力建立零件库的困难。
图1 云制造模式
零件库业务流程如图2 所示,主要包括工程师、采购商、供应商、营运商四种角色。工程师通过搜索引擎在零件库中需要合适的零部件模型,然后下载该零部件模型并加入到自己的设计中,以减少设计时间,在生产阶段会向采购商提出订购请求;供应商自身信息就构成了“供应商信息”库,提供的零部件资源就组成了“零件库”,与采购商之间的订单就是了“订单”库;采购商根据工程师的请求进行采购;运营商对整个零件库进行管理和维护。
图2 零件库业务流程
1.2 云制造模式下的零件库系统功能
零件库系统是在制造云基础上建立的。本文所论及的制造云包括非常丰富的功能,不能一一叙述,只将与零件库系统相关的部分进行阐述,可分为两个部分,分别为:1)制造云框架的搭建,2)在此制造云之上的零件库系统。
与传统零件库相比较,建立云制造模式下的零件库会遇到新的问题。云制造模式下的零件库系统是为数量众多的中小企业服务的,会出现如下问题:1)各中小企业提供的零部件命名规则、分类标准不一致;2)零部件建模工具不一致,导致零部件格式种类繁多;3)随着用户数量的不断增多而带来的访问压力增大问题,平台需要具有扩展性;4)多家企业共享同一平台及数据库,数据安全非常重要。针对上述问题,本文提供了标签及本体来统一零部件的命名及分类,通过数据格式转化实现数据格式的统一,采用服务器集群和数据库垂直切分技术实现平台扩展,采用两种数据隔离方式保证数据安全。
2 系统架构
2.1 多层架构
本文是在制造云基础上实现零件库系统的,该零件库系统采用多层架构实现,如图3 所示。最底层是资源层,该层的资源主要是由供应商提供;最顶层是界面层,主要是为采购商提供信息输入输出界面;中间部分是制造云,该层由运营商负责管理和维护。制造云又分为三层,分别是逻辑层、服务层、数据层。中间层还包含一个比较独立的部分,即:运营服务,主要用来对整个制造云及零件库系统进行管理和监控的。制造云提供的功能丰富,无法一一阐述,该架构图只将本文零件库系统所涉及的部分表示出来,其余部分省略。
2.2 系统数据库
本文采用Force 数据模型[5],如图4 所示。由于平台资源种类繁多,而且允许用户定制服务,所需数据必须具有动态性、扩展性。平台使用一系列元数据、数据表和轴表,在需要时才动态地生成用户数据。
在图1 中,对象元数据表用来存储用户定制对象信息,包括对象标识ObjID、对象名称ObjName 等。字段元数据用来存储定制字段(关系数据表中的列或属性),包括唯一标识FieldID、所属对象标识ObjID等。数据表存储结构化和非结构化数据,用户可以直接访问,这些数据通过Objects 和Fields 映射到所有的定制对象的字段上。特殊轴表中的Indexes 包括强类型的索引列,用来定位相应数据类型字段的数据;
UniqueFields 轴表允许指定对象的某列是否具有唯一性;Relationships 允许在应用对象之间声明参照完整性约束关系;NameDenorm 表用于存储每个对象实例的ObjID 和Name 值,可以通过一个简单的查询就能获取每个被引用的对象实例的Name 值。
图3 零件库系统架构
图4 数据库设计
3 零件库系统
3.1 零件命名规则及数据表关联
零件文件名共包含15 位数字,其中前7 位数字对应零件的级别,以此标明零件种类;8-12 标明该零件供应商,最后三位是零件发布企业的自编号。用户在零件库中搜索合适的零件,然后通过PartList 表中的PartsName 字段来索引零件模型,同时通过PartList 表中的PartsFatherID 索引零件供应商。零件命名规则、PartList 表和ProviderList 表的关系如图5 所示。
图5 零件命名规则及数据表关联
3.2 零件三维模型在线显示
3.2.1 数据格式转换
用户使用三维建模软件建立零部件模型,一般三维软件只输出VRML 文件,但是VRML 文件大,不便于网络传输,需要将VRML 文件转化成X3D 文件才能实现在互联网快速的动态交互。本文采用NIST(National Institute of Standards and Technology)的开发包VRML97ToX3DNist.jar[4]作为核心模块,来处理用户三维建模软件输出的.wrl 文件。
VRML97ToX3D 是一个独立软件包,在使用该软件包时只需要按照要求编写一个批处理文件,来调用里面的Vrml97ToX3DNist.jar 包。具体的源码如下:
@convert.bat /批处理文件
@echo/开始转化
call v2x3d.bat model/gear.wrl model/gear.x3d /调用v2x3dtest.bat
echo /转化已经完成
v2x3d.bat /批处理文件
set CLASSPATH=Vrml97ToX3dNist.jar /设置路径java iicm.vrml.vrml2x3d.vrml2x3d%1%2 /开发转化3.2.2 零部件三维模型显示及动态交互为更好的展示零件,系统采用可扩展标记语言——X3D(eXtensible 3D,可扩展3D)实现零件三维模型展示及动态交互,用户可通过浏览器对零件进行旋转和缩放。X3D 是Web3D 联盟推出的新一代网络3D 语言标准[6],它以国际标准VRML97 为基础,结合了XML,Java 和流技术,具有方便的扩展功能。
X3D 文件中的基本节点(Node)是由域(Field)和事件(Event)组成的,域保存数据,事件实现与外界的交互。X3D 有多种交互方式,有仅限于X3D 各节点间的内部交互方式,还有EAI(External AuthoringInterface,外部编程接口)和SAI(Script AuthoringInterface,脚本编程接口)两种外部交互方式,本文采用EAI 方式实现动态交互。
EAI 是X3D 提供的外部编程接口[7],是与X3D 浏览器插件相联系的Java 包,EAI 包含于外部HTML 页面中的JavaApplet 通信的接口,利用一系列Java 类来实现对X3D 交互。
将X3D 和Java Applet 置于同一个网页中,JavaApplet 将用户的交互信息传递给X3D 场景,X3D 作出相应反馈动作。应用EAI 方式实现动态交互过程如图6 所示,基本方法如下:
通过GetBrowser()方法获得Browser 信息,即:用户的动态交互信息,对Browser 对象使用GetNode()方法获得节点信息;在节点确定后,即可通过GetEventIn()向节点的EventIn 域发出指令,使用GetEventOut()从节点的EventOut 域获取反馈信息,即实现动态交互。
图6 EAI 交互过程
3.3 零件组织与管理
本文采用零部件分类、标签、本体相结合方式来进行零部件的组织与管理,使零部件资源有序化。零件分类结构共有为5 个级别。这5 个级别是在开发零件库时确定的,但是某级别下的子级别个数会随着新零件的不断出现而随之增加。零件供应商在添加零件时,需要选择零件所属种类。这种分类方法比较死板,不能随着零件的不断增多和用户兴趣点的转移而改变。
标签又称大众分类法,指采用任意自由词对信息资源进行标注而形成的分类词表[8]。供应商在添加零件时可以输入一个或多个表征该零件特征的标签,如:45#钢、镀锌、34 元。采购商可以通过一个或多个标签检索需要的零件。为保证标签的有序性和有效性,系统记录每次搜索的输入项、输出项,将这些搜索情况进行统计、排序,将使用次数多的标签推荐给供应商和采购商。在供应商添加标签时,推荐其使用排名靠前的标签;对于采购商,建议采用使用次数多的标签进行检索。在搜索次数达到一定数量级后,标签的排序就逐渐稳定下来。
图7 零件库运行界面
采用与管理标签类似的方法管理本体库。对于同一个零件,不同供应商可能给出不同的名称;同时,同一个名称可能对应不同的零部件。采用上述“搜索—排序”方式来管理本体库,将使用次数多的作为该零件的本体,将其余的名称或零件作为该本体的具体实例,继承该本体的所有属性。
4 实例
本文在制造云的基础上开发了名为CMoPL(Cloud Manufacturing oriented Parts Library,面向云制造的零件库)的零件库系统。系统运行界面如图7 所示,左侧为零件分类结构树,右上部分为标签列表,右下方为零件列表。用户通过浏览器即可在线查看零件三维模型。
5 结论
鉴于中小企业难以承担建立零件库的费用,本文提出采用云制造模式建立零件库系统。本文对基于云制造模式的零件库运营模式进行了阐述;针对多用户的零件库系统,提出多层架构、Force 数据模型、数据隔离等方式建立系统框架;采用X3D 进行零部件在线显示及动态交互,通过分类、标签、本体来进行零部件的组织与管理。中小企业通过租用来使用本系统,该零件库可以有效帮助中小企业宣传产品,对于提高企业信息化水平有很大帮助。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:基于云制造模式的零件库系统