基于UG的产品信息集成管理研究

上传人:无*** 文档编号:132223678 上传时间:2022-08-08 格式:DOC 页数:13 大小:110KB
收藏 版权申诉 举报 下载
基于UG的产品信息集成管理研究_第1页
第1页 / 共13页
基于UG的产品信息集成管理研究_第2页
第2页 / 共13页
基于UG的产品信息集成管理研究_第3页
第3页 / 共13页
资源描述:

《基于UG的产品信息集成管理研究》由会员分享,可在线阅读,更多相关《基于UG的产品信息集成管理研究(13页珍藏版)》请在装配图网上搜索。

1、基于UG的产品信息集成管理研究提出在三维CAD(UG)环境下,采用面向对象编程语言C+,综合应用UG/Open API和Oracle网络数据库技术,实现产品设计信息的提取、数据统一集成管理。分析了产品数据构造,提出零件信息ER模型,以DLL方式与UG交互,深度搜索遍历产品装配构造并提取零部件设计信息,开发了基于C/S构造的产品数据集成管理系统。1前言 计算机集成制造(CIM)的实质是产品设计、工艺规划、生产制造等应用阶段信息流的传递作用过程。信息是与设计、制造等过程有着本质联系的基本元素,其集成管理是整个过程都予以关注的核心任务。产品设计信息的获取是CIMS系统的首要环节,是目前遏制制造业信息

2、化进程的“瓶颈”之一。特性造型技术将产品的几何信息和非几何信息汇集到产品定义中,不仅能体现产品的几何形状,并且同步体现了产品的制造规定,在较高层次上体现了设计者的意图1。但是在CAD环境下图形数据为非构造化数据,无法被后续系统直接使用。国内外学者对零件信息模型的定义和信息集成进行了大量的研究。基于中性文献STEP、IGES、PDES原则的信息集成措施27,在异构三维CAD系统的信息流通上,以其较好的通用性占有一定的优势。但中性文献在信息传播过程中必须进行语法分析和语义检查,数据段的提取和预解决方式较为麻烦。根据PDES原则从设计领域进行特性定义,其设计特性库的定义存在一定局限性,且系统开发难度

3、大。本文提出在UG CAD环境下,综合应用UG/Open API函数和Oracle网络数据库技术,实现产品设计信息的提取、数据统一集成管理。 2系统总体构造 随着网络制造技术的发展,公司不仅要考虑自身内部信息共享,还要考虑与外部环境集成,公司与公司之间实现信息交流与共享,从而实现制造资源的重组,获得更大效益。支持分布式网络制造和网络公司联盟的产品信息管理系统将成为重要的发展趋势。公司内部的产品设计、工艺设计、加工制造、生产管理等多种环节、多种部门规定协同工作,共享信息。应用网络技术构建一种分布式操作和数据库管理为一体的公司内部网,有助于公司各部门之间实现数据和资源共享。 Oracle是公司级的

4、关系型数据库系统8,具有很强的联机事务解决能力,涉及分布式查询、多点更新、远程调用等,非常适合联盟公司生产信息数据库的分布式解决,支持顾客自定义数据类型的存储,具有较好的数据安全管理能力。Oracle支持客户机/服务器工作方式,客户端负责解决顾客界面和公司应用逻辑;服务器端负责解决数据存储、检索和管理数据库等。本系统的客户端将UG设计环境中的产品信息通过API函数提取,经数据库开发接口和网络传播,存储到服务器统一数据库中。系统总体构造如图1。 3核心技术实现 3.1零件信息的E-R模型与数据存储 计算机抽象体现客观事物一方面必须进行数据模型化解决,映射在模型中的信息是对真实零件信息的一种收集和

5、抽象,以便于计算机解决的形式存储。从客观世界到计算机形式语言的过渡需要建立概念模型。对零件进行概念设计得到零件信息模型的典型措施是实体属性联系措施(Entity-Attribute-Relationship)(或E-R模型)8。E-R模型涉及实体、属性和联系三大要素,是研究零件构成要素及其关系的有效措施。零件由许多形面要素构成,一种零件与多种特性形成1:n的构成关系,特性与特性之间形成不拟定的位置和基准关系。划分实体和属性,拟定实体间的关系是建立E-R模型的核心问题。根据E-R措施,将零件图号,零件名称、零件类型、毛坯类型、零件材料、最大径向尺寸和最大轴向尺寸,生产批量等作为实体零件的总体属性

6、。而特性实体要素的属性重要有尺寸及公差,表面粗糙度,形状公差、位置公差等,如图2。 E-R模型属于概念构造,为了在关系数据库管理系统中进行零件信息存储和管理,还必须将概念构造转变为关系数据模型的逻辑构造。关系数据模型的基本思想是在二维表中表达实体、实体属性以及实体与实体之间的关系。对于实体,转化为一种关系模式,即一种二维表,实体属性转化为二维表中的列字段。 3.2动态链接库的加载 UG/ Open API所开发的应用程序可以在两种不同的环境下运营:Internal和External9。对于在Internal环境下的程序只能在UG Session下运营,其入口函数是ufusr或ufsta。因此只

7、要在顾客应用程序中加入任何一种入口函数就可以实现与UG进程交互。同步UG OPEN MenuScript提供修改UG菜单的脚本语言,例如添加、删除、定制菜单等,开发者可以使用该语言修改菜单响应行为,ACTIONS可以是宏(.macro)、C或C+程序(.so,.sl,.dll)、GRIP程序(.grx)和UTD(.utd)。通过加载不同的动态链接库来修改响应行为,即实现了不同顾客应用的加载。 创立编辑UG主菜单和下拉菜单以及工具条的措施有两种:一是通过编辑Menu文献添加和修改菜单项;二是开发C应用程序调用MenuScript API函数和子程序开发定制菜单选项。其不同之处在于:前者是通过语法

8、“ACTIONS”指定菜单响应行为,可为API程序、GRIP程序、UTD文献,使用简朴灵活;后者是通过API函数UF_MB_add_actions注册回调函数,适合相应模块应用功能扩展。 本文在Internal环境下将入口函数ufusr加入VC+工程,开发了信息提取应用程序,建立了动态链接库。并借助于文本编辑器,编辑菜单脚本文献,以(*.men)格式寄存于$UGII_USER_DIRapplication目录下,从而实现了动态链接库的加载过程。3.3设计信息获取界面的开发 一般状况下,UG/Open API使用界面开发工具UIStyler来开发应用程序界面9。UIStyler是一种可视化开发工

9、具,提供Label、Bitmap、String、Option Menu、Button等控件,可与Menuscript菜单脚本文献结合定制顾客菜单和界面。它直接通过actions的方式被UG调用,从而将顾客应用和UG应用完全融合。与流行的Windows应用程序开发工具相比,UIStyler提供的控件较少,功能有限,如树型控件、列表控件、视图类窗口等在UIStyler中无法实现。要创立复杂的应用程序界面,需在VC+环境下使用基本类库MFC来实现。 基本类库MFC是C+的编程接口,而UG/Open API所使用的是原则C,因此在UG/Open API应用中不能直接使用MFC类库。但是如果在基于MFC

10、的VC+顾客应用工程中加入UG/Open API所使用的库函数和头文献则能对的通过编译,生成动态链接库。例如,在顾客工程中加入UG的两个库文献libufun.lib libugopenint.lib(这两个文献位于UG安装目录的UG OPEN子目录中),并加入如下语句即可调用基于MFC的非模态顾客对话框(对话框的属性必须为Visible)。 AFX_MANAGE_STATE(AfxGetStaticModuleState(); CgetinforDlg * dlg = new CgetinforDlg(); dlg-Create(IDD_DIALOG1); 用这种措施显示的对话框可按顾客规定保

11、存在UG界面层,并且采用加锁和解锁机制可与UG进程交互。 3.4数据库开发技术 ADO(ActiveX Data Object)是基于OLE DB的数据库应用程序开发接口,可以访问Access、SQL Server、Oracle等数据库。使用ADO技术开发数据库应用程序有两种途径: ActiveX控件,ADO对象。使用ActiveX控件访问数据库,对程序控制相对较弱,效率比较低;直接使用ADO对象来访问,则可以灵活地控制应用程序。ADO保存了MFC/ODBC、DAO的特性,其类的定义是作为一种资源存储在ADO DLL中,使用ADO前必须引入ADO库文献,其引入措施是在MFC AppWizard

12、工程模版生成的原则文献stdafx.h头文献里加入如下语句(其中msado15.dll的具体位置根据系统途径拟定)。 #import c:program filescommon filessystemadomsado15.dll no_namespace rename(EOF,adoEOF) 由于ADO是一组COM动态库,因此程序在调用ADO前必须初始化OLE/COM库环境,在应用最后应当关闭连接,释放对象。ADO库涉及3个接口指针:_ConnectPtr,_RecordsetPtr和_CommandPtr。在需要使用多种记录集时,最佳使用已经创立数据连接的全局_ConnectPtr接口指针,

13、提高数据库连接创立的效率,然后使用_RecordsetPtr或_CommandPtr接口指针执行存储过程和SQL语句。使用该措施可以灵活实现对异构数据库的解决,程序中可以使用多种数据库,如ACCESS、Microsoft SQL、Oracle等任何支持ODBC的数据源。在oracle中,配备好ODBC数据源和驱动程序后,通过创立_ConnectPtr实例,可指向并打开该数据源。其连接语句为: m_pConnection-Open(DSN=ORADB;UID=system;PWD=manager;,adModeUnknown) 其中ORADB为在oracle中以顾客名system和密码manag

14、er创立的数据源名称。 在建立与Oracle的连接之后,创立记录集,运用SQL语句将产品信息存储到统一数据库。 3.5产品装配构造的遍历 树型构造是产品数据在界面上的体现形式,这种产品数据构造来源于产品构造的遍历。在UG的装配模型中以树型构造组织装配组件和零件,该模型相应的是造型设计信息。一种部件文献中只有一种装配树根,是遍历的起点。装配中,组件和子组件之间的关系是运用实例Instance标记的,且是唯一的,因此访问每个实例Instance就能得到相应的一次关联。在进行产品构造遍历前先进行产品构造分析。 产品构造根据产品开发不同而具有不拟定性,深度层次和同一层次的数量都是未知的。具有这样的层次

15、特点:与产品平行的节点是其她产品,产品的子节点可是零件或者部件,零件的子节点是特性,而部件的子节点还可以是零件或者部件,同一种零件或者部件可以同步出目前同一产品的不同部件下,不同产品也可以有完全相似的零部件(如图3)。可见产品构造是非线性构造,不能以简朴的数据链来表达,且具有递归特性。 搜索常用的措施有广度优先搜索和深度优先搜索。广度优先搜索从某一顶点(假设为M)出发,在访问顶点M后再访问M的各个未曾被访问过的领接顶点(假设为N1,N2,Nk),然后再依次访问N1,N2,Nk的所有的尚未曾被访问过的领接顶点。再从这些访问过的顶点出发,访问它们的所有尚未被访问过的领接顶点,如此循环,直到所有的顶

16、点都被访问完为止。广度优先搜索是一种分层搜索,不是一种递归的过程,其算法也不是递归的。深度优先搜索是从某一顶点(假设为M)出发,在访问顶点M后,再依次从M的任一还没有被访问过的领接顶点(假设为N)出发进行深度优先搜索,直到所有的顶点都被访问完为止。这是个递归定义,其算法可以用递归算法来实现。 如下运用API函数和递归调用的措施遍历装配中的组件和零件。 先用UF_ASSEM_ask_root_part_occ获得装配树根,然后用UF_ASSEM_ask_part_occ_children获得根的子部件。并对每个子组件递归调用UF_ASSEM_ask_part_occ_children,直到组件只

17、由一种零件构成。void CycleAllParts(tag_t child_tag)tag_t *child_part_occs;int partNum=UF_ASSEM_ask_part_occ_children(child_tag,&child_part_occs);/获得子组件数 for(int i=0;ipartNum;i+)char part_nameMAX_FSPEC_SIZE+1; char refset_nameMAX_ENTITY_NAME_SIZE+1 ; char instance_nameMAX_ENTITY_NAME_SIZE+1; double origin3;

18、double csys_matrix9; double transform44;UF_ASSEM_ask_component_data(child_part_occsi,part_name,refset_name,instance_name,origin,csys_matrix,transform);/获得组件属性Saveinfo();/保存组件属性CycleAllParts(child_part_occsi);UF_free(child_part_occs); 3.6产品信息管理系统开发 产品构造来源于CAD环境,可以用二维明细表来表达,也可以用树型构造表达。树型数据构造可以清晰的体现数据元

19、素之间的分支关系和层次关系,便于理解,逻辑性强。为合理组织和管理产品数据,本系统以产品构造树作为产品信息管理的起始界面,如图4。这种方式让产品构造的层次关系一目了然,顾客通过对产品构造树的简朴操作就可以按不同分支展开,直观的得到所需要的信息,而不需要考虑数据寄存的物理位置。 以产品的部件图号作为树的根节点,各构成零部件代号作为下级节点,树主干表达层次分支关系,树节点表达零部件实体,树的枝叶表达零部件有关的属性数据(涉及该零件的工艺数据和图形文献)。需要特性信息时,展开零件节点,下级特性信息就自动追加到该零件节点上。 信息管理系统主界面用VC+开发,采用基于视图和文档类型构造;用Csplitte

20、rWnd 类将窗口切提成两部分,定义多种视图类和视图指针,在响应函数里执行该视图生成函数,实现视图灵活变换;模态和非模态对话框交互;在要触发的菜单类中添加右键菜单响应函数,并在该类的消息解决循环message_map中添加宏:ON_COMMAND(菜单ID,响应函数),以实现系统功能菜单和各视图右键功能菜单相结合,以便顾客操作。 4结论 本文综合应用UG/Open API和oracle数据库技术,采用面向对象编程语言C+,以DLL方式将应用程序无缝嵌入UG 环境,实现顾客与UG交互,并用深度搜索递归调用法遍历产品零部件模型,获得产品构造信息和零部件设计信息,通过网络将获得的信息存储到服务器数据库,给公司其她部门和CIMS其她技术单元提供了统一的信息来源,保证了异地协同设计与数据集成管理,有助于公司信息化的实现。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!