0 引言
PDM是用来管理产品相关数据和动态过程的技术。在PDM系统实施过程中,需要对物料、图纸、工艺文件、各种单据报表进行编码,以便于管理。因此,事物编码是企业信息化的前提条件,也是系统集成的关键。陈兵奎等应用成组技术原理,提出了融合相似结构-工艺的齿轮分类编码方法,并开发了计算机辅助齿轮分类编码系统。Pan分析了影响建筑企业物料智能识别和信息交互的瓶颈问题,提出了一种建筑产品公共编码框架,并应用于建筑物料管理。孙亮分析了印染企业物料特点,提出了“弱耦合编码”的物料编码规则,给出了可灵活定制的原料、在制品和成品编码方案。陈济等针对电力调度系统数据交互的可重用性低、编码不统一等问题,提出了一种由数据层、模型驱动层和编码层构成的基于公共信息模型的自适应统一编码体系。
然而企业之间的编码规则差异很大,有时在同一企业内部也存在编码规则不断变化的情况。因此,即便是实施经验丰富的PDM供应商也需要花费大量时间和精力来针对客户的个性化编码需求开发编码系统,导致编码系统重用度低,维护成本高,拉长了PDM系统实施周期。为此,很多学者进行了大量研究。刘韶涛等研究了编码系统软件复用的结果模型、设计方法及若干关键技术。张金等提出了一种集通用性、开放性、灵活性于一体的程序组件化柔性编码工具开发方法,并应用于开目PDM系统中。林毅等提出了面向信息管理和高效检索的“四段式”编码模型,该模型具有一定的柔性。谢贤仕等建立了编码系统的信息含量模型,提出了码位合并与调整的定量准则,为优化编码结构提供了依据。谢庆生等提出了多品种小批量产品及零部件编码模型,并开发了相应的编码系统。张旭辉等研究了基于流水码段、符号码段、分类码段与属性码段的柔性编码规则定义工具系统,可以较好地解决链式关系码段的编码规则定义、难以定义树式码段关系的问题。皮德常等针对直接依赖、组合依赖和扩展组合依赖码位关系,提出了码位模式分解和基于元关系的解决办法。赵韩等研究了可定制柔性编码系统的结构模型和功能模型,并对编码复制、编码解析和编码识别等关键技术进行了研究。Zhang等基于XML格式描述编码规则,提高了规则定义的灵活性。
以上研究一定程度上提高了编码系统的适应能力,但当不同的编码规则共用相同的码段时,要求共用码段在所有编码规则中具有统一性。采用针对各编码规则分别定义码段的方法,容易造成共用码段不一致。同时,共用码段的维护需要对各编码规则依次重复维护,费时费力,这一点对于树式关系的共用码段表现得更为突出。为此,本文提出了一种元码段概念,并对基于元码段可重构的编码工具系统设计方法进行了研究。
1 元码段
1.1 元码段的概念
编码是用特定的符号序列对事物主要特征进行数字化表征,使人或计算机能够快速进行识别和处理,便于信息交流与共享的一种技术手段。事物编码一般由具有一定信息特征的若干码段组成。码段对信息的刻画具有从粗糙到精确、模糊到具体的特点。描述码段信息的基本单元称为元码段,元码段可在不同的编码规则中共享和重用,并具有唯一性。元码段由粗到精逐步细化的过程可用元码段细分模型描述,如图1所示。
图1 元码段细分模型
元码段细分模型是一种层次化的码段逐步精确描述方法,由元码段对象、元码段域值及细分关系构成。元码段对象包含名称、类型、前缀及后缀等属性。元码段域值是元码段的取值范围,包含代号、检索码、描述及说明等属性。细分关系表达下级元码段是对上级元码段某域值的进一步细化。
元码段细分模型具有灵活的层次结构,对订单评审表、技术更改单等编码时,为表示所属年份及顺序,往往包含年份元码段和流水元码段,这些元码段一般只有一级。而对物料、图纸等编码时,往往具有多层细分关系,以便逐步将其编码信息描述清楚。
1.2 元码段的类型
不管编码规则多么复杂,构成编码规则的元码段一般由以下四种类型组成:
(1)静态型。元码段域值由特定的静态字符串构成,通过选择方式获取元码段值。元码段域值直接存储在数据库中,维护比较方便。
(2)流水码型。按先后顺序,以一定规则依次递增元码段域值。需要定义其起始值、终止值及步长等。
(3)时间相关型。根据系统当前时间,得到与时间相关的特定格式的元码段域值。
(4)插件型。通过调用DLL组件,提供输入参数,根据特定的逻辑关系处理后,返回相应的元码段域值。
2 基于元码段可重构的编码方法
2.1 编码规则定义方法
基于元码段的编码规则定义本质上是元码段的重构,即根据元码段细分模型建立元码段组合序列形成各码段,再通过定义码段连接关系构造编码规则。编码规则定义方法如图2所示。
图2 基于元码段可重构的编码规则定义方法
元码段可重构的编码规则定义方法具有以下特征:
(1)各码段内由细分后具有层次关系的元码段构成,且一个码段中仅包含一组细分后的元码段。可选择部分或全部元码段构建码段规则。
(2)若元码段只有一级细分,则码段与元码段具有相同的含义。
(3)码段之间为链式关系,码段内的元码段为树式关系,这种模式可支持复杂的编码规则定义。
(4)具有良好的柔性,通过元码段重构即可实现灵活多变的编码规则定义。
2.2 编码系统的功能
针对特定需求开发的编码系统,一旦编码规则发生变化,需要修改甚至重写程序代码才能使用,这无疑增加了编码系统维护的复杂度和成本。而许多企业并不具备修改程序的能力,导致编码系统很难长期有效运行。基于元码段可重构的编码系统支持企业按自身特点定义元码段结构,通过元码段重构可形成个性化的编码规则。
编码系统的功能树如图3所示,由编码定义、编码生成及码值维护等模块组成。
图3 编码系统的功能树
(1)编码定义模块可定义元码段及元码段细分模型,包括元码段域值代码、名称、描述、连接符及其细分层次等。可从元码段库中选择元码段构成各码段,并定义码段连接符形成各种样式的编码规则。可设置编码系统用户组及其所属用户,并设定用户使用编码规则的权限。
(2)编码生成模块可选定编码规则,支持根据码段定义从元码段库中选取码段值或生成码段值,结合码段连接符形成编码值,并存人数据库中。
(3)码值维护模块可查询码值状态,解释码值含义,对不再使用的码值可废除等。
3 关键技术研究
3.1 元码段实现方法
为了对元码段进行有序管理,便于编码规则定义和码值生成,建立了由分类对象和元码段对象构成的元码段库结构。分类对象用于对元码段分类,可用于构建编码规则,但其本身不产生元码段值。元码段对象具有全局唯一性,各元码段均具有唯一的ID。元码段可进行细分,便于表达树式关系的码段结构。四种类型的元码段域值实现方法如下:
(1)静态型。直接在数据库元码段对象中保存值域,处理相对简单。
(2)流水码型和时间相关型。使用约定格式定义元码段域值表达式,系统解译后生成元码段值。如#03d.a1#表示三位流水码,按步长1递增,如001、002等。又如#4y#2m#2d#表示按四位年两位月两位日生成元码段值,如20120801、20120901等。
(3)插件型。通过调用相应的DLL组件,由组件按特定逻辑关系处理后,返回相应元码段值。具体处理方法如下:①根据功能需求开发DLL插件,插件应能实现输入、逻辑处理、生成元码段值功能,并能将元码段值返回编码主程序;②采用PDM插件管理机制,注册插件,并确保客户端始终保持最新版本;③将插件型元码段载入元码段库中;④使用插件型元码段构造编码规则;⑤编码生成时,由编码器调用插件,接收插件返回的值,并将其作为元码段值填写在编码的相应元码段上。
3.2 数据库设计
数据库设计是编码系统开发的关键技术之一,影响编码系统运行效率、稳定性和开放性。通过对元码段可重构编码系统数据的分析和抽象,建立了图4所示的数据实体关系(ER)模型。
图4 编码系统数据ER关系图
图4所示的ER关系图清楚地表达了各数据对象之间的关系,支持元码段及细分数据、编码规则定义数据、码值数据及用户权限设置数据的存储。
3.3 编码系统与EPDM集成模型
SolidWorks EntERPrise PDM(简称EPDM)是SolidWorks公司推出的一款企业级产品数据管理平台,与Windows资源管理器紧密集成,支持分布式团队异地协同设计,具有完善的配置、定制和开发工具,支持快速实施。
编码系统与EPDM系统集成主要体现在功能集成和数据集成两个方面。
3.3.1 功能集成
功能集成是指在EPDM系统中可调用编码系统的功能,同时在编码系统中也可以调用EPDM系统的功能。可采取以下两种方案:
(1)基于EPDM提供的Dispatch自动化脚本,在EPDM中加载编码系统相应功能。这种方法相对简单,不需要编写源程序,只需利用自动化脚本从服务器上获取编码系统程序到本地客户端,并外壳执行。缺点是由EPDM传递到编码系统的参数有限,且不能从编码系统控制EPDM系统的运行。
(2)采用EPDM提供的API接口进行二次开发的方法来调用编码系统。这种方法需要较强的程序开发基础,并熟悉接口函数。优点是能捕获丰富的EPDM事件和参数,并能控制EPDM系统的运行。
3.3.2 数据集成
数据集成是指编码系统生成的编码值可传递给EPDM系统,同时编码系统也可访问EPDM系统数据。数据集成模型如图5所示。以EPDM数据卡变量为核心,通过二次开发将生成的编码值写入数据卡的编码变量中,再通过EPDM变量映射可实现EPDM与各应用系统自定义属性的双向数据集成。各应用系统可按各自方式使用集成后的编码属性。
图5 编码工具系统与EPDM数据集成模型
4 实例与应用
在前述研究基础上,基于EPDM平台进行了编码系统开发。图6所示为该系统的编码规则管理界面,由元码段库管理、编码规则库管理及编码规则定义等构成。
图6 编码规则管理界面
通过分析企业各种事物的编码规则,提炼出元码段,并建立其元码段细分模型,如各种序列号元码段、年份元码段、月份元码段、日期元码段、零件种类元码段、零件外形元码段、材料元码段、热处理元码段及精度等级元码段等。将元码段拖拽到规则表达式中即可构成编码规则的各码段,码段之间可输入任意连接符。在用户和组2个选项卡中,可设定有权限使用该规则的用户。
图7所示为编码生成器界面,点击规则表达式中的元码段名称,将以蓝色背景表示当前码段,并显示当前码段的名称和类型。对于静态型元码段,将在元码段库中定位当前元码段,选择后按元码段细分层次关系生成元码段值。如选择轮盘类下的法兰盘,则零件外形的元码段值为02,其中0表示轮盘类,2表示轮盘类中的细分类法兰盘。对于流水码型和时间相关型,系统可按定义的元码段格式自动生成其值。对于插件型,当其处于当前选中状态时,将调用相应插件,由插件生成元码段值之后回填到编码值中。保存时将根据规则ID查询编码是否重复,以确保编码的唯一性。
图7 编码生成器界面
编码系统与EPDM具有良好的集成深度,可从EPDM系统中直接调用编码系统。同时生成的编码可传递到EPDM对象(如三维零部件模型对象、工程图纸对象、技术文档等)数据卡的编码属性中。通过EPDM变量映射方法可实现EPDM对象数据卡编码属性与图文档内部自定义属性中编码属性的双向动态集成。
5 结论
编码系统可分为三个层次:第一层次为刚性编码系统,即编码系统只能用于特定编码规则,一旦编码规则变化,需要重新修改程序,系统适应能力很弱。第二层次为程序组件化的编码工具系统,即通过开发的编码组件可快速搭建个性化的编码系统。这种系统有一定的适应能力,但编码组件开发周期长,成本高。第三层次为数据驱动的柔性编码工具系统,即通过编码规则定义可满足个性化的编码规则,而不需要修改程序。基于元码段可重构的编码系统属于第三层次,相比其他同类系统具有以下优势:
(1)码段资源可重用,能确保码段数据统一。当相同元码段应用于较多编码规则时,只需维护元码段信息即可保证使用该元码段的所有编码规则同步更新,避免了各编码规则中相同码段的重复维护。
(2)元码段细分支持定义树式码段关系,元码段重构支持链式码段关系,因此元码段重构的编码方法可以支持混合式码段关系的编码规则定义。
(3)元码段在数据库中只保存一次,可有效减少数据空间占用,并确保码段数据源唯一。
基于元码段可重构的编码系统已在多家企业PDM实施中进行了应用。实践表明,该编码系统能统一和重用元码段信息资源,通过元码段重构形成适用于各行业特点的编码规则,并能基于编码规则方便快捷地实现事物编码,从而节省了大量的编码系统开发维护时间和成本,缩短了PDM系统实施周期。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:基于元码段可重构的事物编码系统研究