摘 要: 基于PDM 构架的产品配置设计对产品配置设计提出了新的需求,它是企业信息化支持平台中必不可少的核心功能,对于开发大型复杂机械产品的企业来说尤为重要。针对用户对产品信息需求多样性的特点,在建立产品配置网状模型和配置算法的基础上,完成了产品配置设计功能模块的开发及产品配置管理软件与SmarTeam的接口程序。实现了在PDM环境下产品配置管理系统的开发与集成。该系统有益于提高企业已有产品资源的利用率,增强新产品开发能力,快速满足多样化需求的客户。
关键词: PDM; 产品配置; 配置设计; SmarTeam
中图分类号: TN911?34; TH166 文献标识码: A 文章编号: 1004?373X(2014)14?0043?05
Design and realization of product configuration management system based on SmarTeam
LI Wei?xin
( Baoji University of Arts and Sciences, Baoji 721016, China)
Abstract: PCD (product configuration design) based on PDM architecture has proposed some new requirements for product structure definition and PCD, which is one absolutely necessary core function of enterprise e?manufacturing supporting platform, especially for the enterprises which develop and produce large and complex products. According to the characteristics that the users need multifarious product information, the function module development for PCD and the interface program between product configuration management software and SmarTeam was fulfilled on the basis of establishment of product configuration mesh model and configuration algorithm. In this paper, technology of PCD based on PDM is studied. The development and integration of product configuration management system under the PDM environment was realized. The system can improve utilization ratio of existing products, enhance development capability of new products and satisfy the demands of diverse customers.
Keywords: PDM; product configuration; configuration design; SmarTeam
0 引 言
在现如今快速发展的现代化信息技术时代,企业决策者面临的一个亟待解决的问题就是其产品要在国内外市场上取得有力的竞争。产品配置设计(Product Configuration Design,PCD)是企业实现最优化的快速有效的产品设计方法,是现代企业管理产品数据的一种新技术,PCD技术依托IT技术,充分合理地解决企业的信息资源和人力资源之间存在的多种产品数据信息管理问题,以软件为基础,以产品为管理对象,实现企业产品数据信息管理和设计过程一体化集成 [1?3]。
为促进企业有序和高效地进行设计,以便快速制造和发送能满足市场需求的产品,企业需要高效便捷的产品配置设计生成方法,形成产品配置为核心,将数据管理、工作流程管理与变更控制集于一体,形成强大的产品配置管理系统[4?6]。对于复杂的机械产品而言,产品配置管理是企业快速满足客户需求的重要环节。
本文主要是针对配置设计中涉及的一些关键技术进行软件编程的系统实现。首先提出了系统的整体框架,然后详细讲述了本系统的各个模块实现的基本功能。最后采用秦川机床集团有限公司的摆线减速机产品作为实例,证明了配置的理论及其方法,使用配置结果实现产品配置管理,并实现了基于VB的产品配置管理系统与SmarTeam系统的集成。
1 产品配置管理系统的框架实现
1.1 系统框架
本系统采用面向对象的技术进行数据分析和系统设计。在Windows XP环境下,PDM平台系统选用SmarTeam系统,后台数据库系统采用的是SQL Server 2000,前端编程工具采用的则是Borland软件公司的面向对象的可视化编程工具Delphi 2007,从而实现了友好的具有人机交互功能的图形操作界面的设计。
系统实现的框架如图1所示。
图1 系统实现框架
图1中,系统实现的具体机制是:SQL Server 2000中数据库PDMDB里面保存了产品数据、规则等数据,通过ODBC数据绑定,系统调用这些数据。根据这些数据,系统自动生成产品结构树和零部件树,作为左视图显示,右视图显示左视图中产品结构树和零部件树中被选中节点的相关信息。
1.2 软件系统平台的选择
SmarTeam为企业提供了从工作组级到企业级乃至于供应链级的多种解决方案,是面向对象的信息管理和控制系统,采用的是开放的,支持多个CAD平台,也可运行与多种平台上。
SmarTeam采用CLIENT/SERVER的方式将同种机、异种机(PC、工作站)间的数据完全集成在一个逻辑上共同的数据库中。实现了真正的全局数据集成。
图2 产品配置设计系统主界面
在PDM?SmarTeam环境下,本系统的主界面如图2所示,主要分为产品树和零件树型结构显示和它们的属性窗口显示。树型窗口是对产品结构的可视化显示,并对不同类型的节点对象采用不同的图标显示。在树型窗口可以实现对产品树中节点对象的添加、删除以及属性修改等,以及它们之间相互关系的管理。
2 配置软件系统主要的模块
本文在前期工作的基础上(产品配置设计中知识库的研究[7]、产品配置设计规则的建立及需求转换算法[8]和产品配置管理系统中数据库关键技术的研究[9]),通过建立的产品模型和配置模型,采用相应的程序设计语言实现产品配置设计过程和主要的管理功能。本系统主要实现的功能模块如下:系统数据模块、用户和权限管理模块、产品配置设计模块、配置结果模块。
2.1 系统数据模块
本系统的开发主要利用了Delphi 2007对ADO(Microsoft ActiveX Data Objects)技术的支持。它由一系列COM对象组成,通过OLEDB数据提供者访问数据库中的数据。ADO提供了基于对象且便于使用的接口,它只占用系统很少的资源,但是运行效率却比较高。本系统中将选用的ADOConnection组件命名为pdmDBcon,然后属性连接SQL server 2000中的数据库pdmDB。PdmDBcon的连接设置为:
pdmDBcon:TADOConnection
Connected = True
ConnectionString =
‘Provider=SQLOLEDB.1;Integrated+
‘Security = SSPI;Persist Security In
+‘fo=False;Initial Catalog=pdmDB+
‘Data Source=JXXY009
KeepConnection = False
LoginPrompt = False
Provider =‘SQLOLEDB.1
本系统中的数据模块窗体的设计实例如图3所示。
图3 数据模块窗体的设计实例
基于面向对象技术的关系数据库,在PDM?SmarTeam平台下,设计出满足用户需求的摆线减速机产品配置设计系统数据库,并达到机械产品配置设计对数据结构的要求。通过SmarTeam应用向导SmartDataModelDesigner建立的模板框架,根据配置设计产品数据添加实例对象如图4所示。
图4 摆线减速机产品数据信息界面
2.2 产品配置设计模块
在本模块中提供了两种配置设计方案,实现框架如图5所示。
图5 配置模块实现框架
第一种方案:直接配置用户界面如图6所示。
图6 直接配置设计部分界面
第二种方案:根据知识规则进行自动配置。在配置中涉及到变量、条件和配置知识规则。变量是某一产品、部件或零件的相关属性数据的体现,进行产品配置设计时可定义产品库中零部件所代表部件或零件的相关数据。条件是建立在变量基础上的,是对变量的应用。通过对定义各BOM行的有关的变量的组合和赋值,形成配置时选择该BOM行的一种决定条件。而配置知识规则是针对整个产品树所设置的知识规则,该规则在其相应的作用范围内检查相应BOM行条件设置,提取满足配置知识规则的BOM行,根据配置知识规则判断变量条件,最终形成具体的配置的结果。配置知识规则的定义可以采取各种if语句及与“与”、“或”、“非”的组合形成。根据配置知识规则进行产品配置的示意如图7所示。
图7 产品自动配置方案
具体实现是由产品配置模块根据产品配置数据模型所定义的自动配置向导来引导用户进行自动产品配置。在配置过程中,产品配置模块调用存储于配置知识规则库中全企业统一的产品配置知识规则,根据用户输入的变量值判断变量条件和约束条件是否满足,以根据用户需求选取可选件和附加需求说明而实现产品配置。
对于可选件的选配:显示每个可选件虚拟节点上满足约束条件的所有可选件及变量值输入窗口。具有多变量条件组合查询功能,用户可根据变量值查询满足约束条件和变量条件的可选件,并选取满足条件的可选件。系统自动以所选件替换BOM树上的可选件虚拟节点。
2.3 配置结果模块
配置结果保存:将配置结果中零件保存至动态的BOM表中,需求说明作为系统的产品配置对象的扩展配置设计,以rtf格式的文档形式保存,从而实现用户需求配置。
配置结果显示:根据可选件的选配结果,在配置结果实例窗口显示。窗口左边区域显示产品的型号和根据配置的自动生成的产品结构树,右边区域则显示零件BOM表(如编号、描述等)。
配置结果有两种:自动配置结果如图8所示,如果用户对结果不满意,可退出结果窗口,否则出现信息对话框询问是否进入配置向导窗口进行重新配置产品;若满意配置结果则提交配置方案并询问是否要添加需求说明,单击确定按钮后会进入文本编辑。
直接配置结果如图9所示,若不满意结果则推出可进入CAD设计系统进行变型设计。
图8 产品自动配置结果界面
图9 产品直接配置窗口
3 产品配置设计系统与Smarteam系统的集成
3.1 系统集成的API函数
SmarTeam采用COM API编程技术给用户提供了完全用户化工具与强大二次开发接口。在安装SmarTeam后,会自动在windows系统中注册SmarTeam所有的API函数[10?11],并将SmarTeam底层对象暴露给Windows,然后选用开发工具(本系统选用VB)对其进行二次开发。
产品配置设计系统通过不同的编程级别的API函数访问到不同的SmarTeam资源。如图10所示。
图10 SmarTeam系统中API函数级别分类
3.2 基于VB的集成接口实现
SmarTeam API是一个架构在SmarTeam基础上的程序开发工具包,为了实现SmarTeam系统、产品配置设计系统与数据库管理系统这三各系统无缝集成,需要编写API的软件应用程序,从而共享产品数据信息资源。
产品配置设计系统与SmarTeam系统都可以访问SmarTeam的数据库中的数据信息,其目的是为了在PDM环境下进行产品配置设计时保证数据的“一致性”,同时满足不同用户的个性化信息需求,它们的操作对象都是SmarTeam系统管理的产品数据信息,具体表现为数据库中的表和数据记录。集成框架见图11。
图11 产品配置设计系统与SmarTeam系统集成框架
在编写SmarTeam API的应用程序时,采用SmarTeam本身自带的脚本语言编辑器SmartScript Editor,对标准API操作(Add,Update,Delete等),可以开发出适合本本系统的接口应用程序。基于VB开发的SmarTeam系统的接口程序的操作界面如图12所示。
图12 SmarTeam系统的接口操作界面
为了在SmarTeam系统中直接打开产品配置设计系统,新增加了一个菜单条“ProductConfiguration”,这样为用户提供方便快捷的应用,选择该菜单项,进入产品配置设计系统,可以执行产品配置设计系统提供的各种功能。同样的方法,通过Delphi 7.0编程语言编写了SmarTeam系统嵌入配置设计系统的接口程序,那么可以在运行的产品配置设计系统中直接激活SmarTeam系统进行一些预定义产品数据的操作(增加、修改或删除等)。如图13所示。
图13 配置设计系统的接口操作界面
4 结 论
本文采用在关系数据库系统中实现面向对象的技术,用UML语言建立了模型中对象关系,构造了产品信息数据库表的结构。开发出PDM环境下机械产品的配置设计原型软件,实现了产品的配置设计、动态BOM的生成、配置规则管理和配置结果输出等主要功能,满足了客户快速实现产品配置的要求。最后根据SmarTeam软件平台的API函数接口原理,用VB编写了外部操作程序接口。
参考文献
[1] FERLFERNIG Alexander, FRIEDRICH Gerhard. Conceptual modeling for configuration of mass?customizable products [J]. Artificial Intelligence in Engineering, 2001(15): 165?176.
[2] MYUNG Sehyun, HAN Soonhung. Knowledge?based parametric design of mechanical products base on configuration design method [J]. Expert System with Application, 2001(21): 99?107.
[3] ELKINTON M R, MCGOWAN J G, MANWELL J F. Wind power systems for zero net energy housing in the United States [J]. Renewable Energy, 2009 (34): 1270?1278.
[4] 郑雁翎.产品配置管理系统中数据库关键技术的研究[J].机械设计与制造,2012(5):264?266.
[5] 程乃士.减速器和变速器设计与选用手册[M].北京:机械工业出版社,2007.
[6] 李维新.大规模定制生产中产品配置实现方法的研究[J].宝鸡文理学院学报:自然科学版,2011,31(1):62?66.
[7] 王春英,郑雁翎,冯元.产品配置设计中知识库的研究[J].宝鸡文理学院学报:自然科学版,2009,29(3):73?76.
[8] 郑雁翎.基于PDM的个性化信息检索系统的开发与实现[J].机械设计与制造,2011(2):235?237.
[9] 郑雁翎,王亚云.产品配置设计规则的建立及需求转换算法[J].宝鸡文理学院学报:自然科学版,2010,30(9):61?65.
[10] SmarTeam Corporation Ltd. Client hooks for client?based applications [M]. Israel: SmarTeam Corporation Ltd, 2002: 24?32.
[11] SmarTeam Corporation Ltd. SMARTEAM database connection manager V5R11 [M]. Israel: SmarTeam Corporation Ltd, 2003: 17?51.
配置结果有两种:自动配置结果如图8所示,如果用户对结果不满意,可退出结果窗口,否则出现信息对话框询问是否进入配置向导窗口进行重新配置产品;若满意配置结果则提交配置方案并询问是否要添加需求说明,单击确定按钮后会进入文本编辑。
直接配置结果如图9所示,若不满意结果则推出可进入CAD设计系统进行变型设计。
图8 产品自动配置结果界面
图9 产品直接配置窗口
3 产品配置设计系统与Smarteam系统的集成
3.1 系统集成的API函数
SmarTeam采用COM API编程技术给用户提供了完全用户化工具与强大二次开发接口。在安装SmarTeam后,会自动在windows系统中注册SmarTeam所有的API函数[10?11],并将SmarTeam底层对象暴露给Windows,然后选用开发工具(本系统选用VB)对其进行二次开发。
产品配置设计系统通过不同的编程级别的API函数访问到不同的SmarTeam资源。如图10所示。
图10 SmarTeam系统中API函数级别分类
3.2 基于VB的集成接口实现
SmarTeam API是一个架构在SmarTeam基础上的程序开发工具包,为了实现SmarTeam系统、产品配置设计系统与数据库管理系统这三各系统无缝集成,需要编写API的软件应用程序,从而共享产品数据信息资源。
产品配置设计系统与SmarTeam系统都可以访问SmarTeam的数据库中的数据信息,其目的是为了在PDM环境下进行产品配置设计时保证数据的“一致性”,同时满足不同用户的个性化信息需求,它们的操作对象都是SmarTeam系统管理的产品数据信息,具体表现为数据库中的表和数据记录。集成框架见图11。
图11 产品配置设计系统与SmarTeam系统集成框架
在编写SmarTeam API的应用程序时,采用SmarTeam本身自带的脚本语言编辑器SmartScript Editor,对标准API操作(Add,Update,Delete等),可以开发出适合本本系统的接口应用程序。基于VB开发的SmarTeam系统的接口程序的操作界面如图12所示。
图12 SmarTeam系统的接口操作界面
为了在SmarTeam系统中直接打开产品配置设计系统,新增加了一个菜单条“ProductConfiguration”,这样为用户提供方便快捷的应用,选择该菜单项,进入产品配置设计系统,可以执行产品配置设计系统提供的各种功能。同样的方法,通过Delphi 7.0编程语言编写了SmarTeam系统嵌入配置设计系统的接口程序,那么可以在运行的产品配置设计系统中直接激活SmarTeam系统进行一些预定义产品数据的操作(增加、修改或删除等)。如图13所示。
图13 配置设计系统的接口操作界面
4 结 论
本文采用在关系数据库系统中实现面向对象的技术,用UML语言建立了模型中对象关系,构造了产品信息数据库表的结构。开发出PDM环境下机械产品的配置设计原型软件,实现了产品的配置设计、动态BOM的生成、配置规则管理和配置结果输出等主要功能,满足了客户快速实现产品配置的要求。最后根据SmarTeam软件平台的API函数接口原理,用VB编写了外部操作程序接口。
参考文献
[1] FERLFERNIG Alexander, FRIEDRICH Gerhard. Conceptual modeling for configuration of mass?customizable products [J]. Artificial Intelligence in Engineering, 2001(15): 165?176.
[2] MYUNG Sehyun, HAN Soonhung. Knowledge?based parametric design of mechanical products base on configuration design method [J]. Expert System with Application, 2001(21): 99?107.
[3] ELKINTON M R, MCGOWAN J G, MANWELL J F. Wind power systems for zero net energy housing in the United States [J]. Renewable Energy, 2009 (34): 1270?1278.
[4] 郑雁翎.产品配置管理系统中数据库关键技术的研究[J].机械设计与制造,2012(5):264?266.
[5] 程乃士.减速器和变速器设计与选用手册[M].北京:机械工业出版社,2007.
[6] 李维新.大规模定制生产中产品配置实现方法的研究[J].宝鸡文理学院学报:自然科学版,2011,31(1):62?66.
[7] 王春英,郑雁翎,冯元.产品配置设计中知识库的研究[J].宝鸡文理学院学报:自然科学版,2009,29(3):73?76.
[8] 郑雁翎.基于PDM的个性化信息检索系统的开发与实现[J].机械设计与制造,2011(2):235?237.
[9] 郑雁翎,王亚云.产品配置设计规则的建立及需求转换算法[J].宝鸡文理学院学报:自然科学版,2010,30(9):61?65.
[10] SmarTeam Corporation Ltd. Client hooks for client?based applications [M]. Israel: SmarTeam Corporation Ltd, 2002: 24?32.
[11] SmarTeam Corporation Ltd. SMARTEAM database connection manager V5R11 [M]. Israel: SmarTeam Corporation Ltd, 2003: 17?51.
配置结果有两种:自动配置结果如图8所示,如果用户对结果不满意,可退出结果窗口,否则出现信息对话框询问是否进入配置向导窗口进行重新配置产品;若满意配置结果则提交配置方案并询问是否要添加需求说明,单击确定按钮后会进入文本编辑。
直接配置结果如图9所示,若不满意结果则推出可进入CAD设计系统进行变型设计。
图8 产品自动配置结果界面
图9 产品直接配置窗口
3 产品配置设计系统与Smarteam系统的集成
3.1 系统集成的API函数
SmarTeam采用COM API编程技术给用户提供了完全用户化工具与强大二次开发接口。在安装SmarTeam后,会自动在windows系统中注册SmarTeam所有的API函数[10?11],并将SmarTeam底层对象暴露给Windows,然后选用开发工具(本系统选用VB)对其进行二次开发。
产品配置设计系统通过不同的编程级别的API函数访问到不同的SmarTeam资源。如图10所示。
图10 SmarTeam系统中API函数级别分类
3.2 基于VB的集成接口实现
SmarTeam API是一个架构在SmarTeam基础上的程序开发工具包,为了实现SmarTeam系统、产品配置设计系统与数据库管理系统这三各系统无缝集成,需要编写API的软件应用程序,从而共享产品数据信息资源。
产品配置设计系统与SmarTeam系统都可以访问SmarTeam的数据库中的数据信息,其目的是为了在PDM环境下进行产品配置设计时保证数据的“一致性”,同时满足不同用户的个性化信息需求,它们的操作对象都是SmarTeam系统管理的产品数据信息,具体表现为数据库中的表和数据记录。集成框架见图11。
图11 产品配置设计系统与SmarTeam系统集成框架
在编写SmarTeam API的应用程序时,采用SmarTeam本身自带的脚本语言编辑器SmartScript Editor,对标准API操作(Add,Update,Delete等),可以开发出适合本本系统的接口应用程序。基于VB开发的SmarTeam系统的接口程序的操作界面如图12所示。
图12 SmarTeam系统的接口操作界面
为了在SmarTeam系统中直接打开产品配置设计系统,新增加了一个菜单条“ProductConfiguration”,这样为用户提供方便快捷的应用,选择该菜单项,进入产品配置设计系统,可以执行产品配置设计系统提供的各种功能。同样的方法,通过Delphi 7.0编程语言编写了SmarTeam系统嵌入配置设计系统的接口程序,那么可以在运行的产品配置设计系统中直接激活SmarTeam系统进行一些预定义产品数据的操作(增加、修改或删除等)。如图13所示。
图13 配置设计系统的接口操作界面
4 结 论
本文采用在关系数据库系统中实现面向对象的技术,用UML语言建立了模型中对象关系,构造了产品信息数据库表的结构。开发出PDM环境下机械产品的配置设计原型软件,实现了产品的配置设计、动态BOM的生成、配置规则管理和配置结果输出等主要功能,满足了客户快速实现产品配置的要求。最后根据SmarTeam软件平台的API函数接口原理,用VB编写了外部操作程序接口。
参考文献
[1] FERLFERNIG Alexander, FRIEDRICH Gerhard. Conceptual modeling for configuration of mass?customizable products [J]. Artificial Intelligence in Engineering, 2001(15): 165?176.
[2] MYUNG Sehyun, HAN Soonhung. Knowledge?based parametric design of mechanical products base on configuration design method [J]. Expert System with Application, 2001(21): 99?107.
[3] ELKINTON M R, MCGOWAN J G, MANWELL J F. Wind power systems for zero net energy housing in the United States [J]. Renewable Energy, 2009 (34): 1270?1278.
[4] 郑雁翎.产品配置管理系统中数据库关键技术的研究[J].机械设计与制造,2012(5):264?266.
[5] 程乃士.减速器和变速器设计与选用手册[M].北京:机械工业出版社,2007.
[6] 李维新.大规模定制生产中产品配置实现方法的研究[J].宝鸡文理学院学报:自然科学版,2011,31(1):62?66.
[7] 王春英,郑雁翎,冯元.产品配置设计中知识库的研究[J].宝鸡文理学院学报:自然科学版,2009,29(3):73?76.
[8] 郑雁翎.基于PDM的个性化信息检索系统的开发与实现[J].机械设计与制造,2011(2):235?237.
[9] 郑雁翎,王亚云.产品配置设计规则的建立及需求转换算法[J].宝鸡文理学院学报:自然科学版,2010,30(9):61?65.
[10] SmarTeam Corporation Ltd. Client hooks for client?based applications [M]. Israel: SmarTeam Corporation Ltd, 2002: 24?32.
[11] SmarTeam Corporation Ltd. SMARTEAM database connection manager V5R11 [M]. Israel: SmarTeam Corporation Ltd, 2003: 17?51.