当前位置:首页 >> 机械/仪表 >>

基于UG注塑模标准模架库的研究与应用


分 类 号: 学校代号: 10538

密 学

级: 号: s007052

硕士学位论文

基于 UG 注塑模标准模架库 的研究与应用

学位申请人姓名: 导师姓名、职称: 培 学 研 养 科 究 学 专 方 院: 业: 向:

刘 琨 胡泽豪教授 机电工程

学院 机械制造及其自动化 材料成型理论与技术 2011 年 11 月 5 日

论 文 提 交 日 期:

Research & Application of Standard Mould Base Library of Injection Mould for Plastics Based on UG Software

by LIU Kun

A thesis submitted in partial satisfaction of the Requirements for the degree of Master of Engineering in Mechanical Manufacture and Automation in Central South University of Forestry and Technology 498 Shaoshan South Road,Tianxin District Changsha Hunan 410004,P.R.CHINA

Supervisor Professor HU Zehao November, 2010

中南林业科技大学
学位论文原创性声明
本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研 究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文 不包含任何其他个人或集体已经发表或撰写的成果作品,也不包含为 获得中南林业科技大学或其他教育机构的学位或证书所使用过的材 料。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方 式表明。本人完全意识到本声明的法律后果由本人承担。 作者签名: 年 月 日

中南林业科技大学
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、 使用学位论文的 规定, 同意学校保留并向国家有关部门或机构送交论文的复印 件或电子版,允许论文被查阅或借阅。本人授权中南林业科技 大学可以将本学位论文的全部或部分内容编入有关数据库进 行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本 学位论文。 本学位论文属于: 1、 保密□,在年解密后适用本授权书。 2、 不保密□。 (请您在以上相应方框打“√” ) 作者签名:
年 月 日

导师签名:
年 月 日

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

摘要
随着经济的飞速发展,人们对注塑模产品的要求越来越高,这就要求我们不 得不在注塑模模具结构的开发设计上花费大量的时间和集中主要的精力。注塑模 标准模架作为模具系统的一个主要组成部分,他的研究周期的长短和质量的好坏 直接影响了模具研究周期和产品的质量,为了使开发设计人员有更多的时间和精 力去研究、开发更加精准、更加先进的模具结构,研究和讨论如何缩短模架的研 究开发周期和提高模架设计水平,其重要意义是不言而喻的。本文基于 UG 注塑模 标准模架库的研究与应用在模架二次开发方面作了系统的研究和开发。 首先,探讨了模具工业,CAD 技术发展历程和模具 CAD 的发展,着重论述了 本课题研究的背景、本课题研究的意义和本课题研究的主要工作。其次,介绍本 课题所需要的 UG 软件和二次开发工具,并重点论述了 UG 二次开发相关技术,对 各个开发模块进行全面的分析和论述,以便为后续对各个模块的使用进行整体的 掌控和把握。接着介绍了模架库系统开发关键技术及应用,其中包括参数化设计 技术和数据库管理技术。并论述了这些技术在系统开发中的作用及应用方式。为 系统开发提供了有力的理论基础和方向指导。然后论述了模架库参数化 CAD 系统 的开发,设计了系统的总体方案,提出了系统应用程序的设计,通过环境变量的 设置、对话框的制作、菜单的定制以及模型应用程序的编写等介绍注塑模标准模 架库的建立方法和过程,其中涉及数据库接口程序设计,最后,论述了模架自动 装配系统,讨论了装配的配合条件,探讨了自动装配程序设计和实现过程,并建 立了装配爆炸图。 本论文提出的设计思想和设计方法,不仅适合于注塑模标准模架库的二次开 发,还为其他产品的标准件建库提供了一种借鉴和思路,对促进其它产品的标准 件建库能起到一定的启发和推动作用。

关键词:注塑模标准模架;二次开发;参数化;数据库;自动装配

I

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

Abstract
With the rapid economic development, the people are getting higher and higher to Injection mold products’ request. This requires us to focus on the development of injection mold structure design that we have to spend a lot of time and energy. Standard mould base of injection mold takes as a key component of mold system. Its research cycle length or short and good or bad quality directly impact on the mould research cycle and the quality of the products, in order to make the development designers have more time and energy to research and develop more accurate and more advanced mold structure, study and discuss how to shorten mould base research and development cycle and improve the level of mould base design, the significance is self-evident. The research and application of standard mould base library of injection mould for plastics based on UG software in the secondary development of mould base is researched and developed. Firstly, mould industry, CAD technology development process and the development of the mould CAD are discussed,The research background , research significance and main research content of the thesis are emphatically described. secondly, The UG software that the thesis requires and secondary development tools is introduced, related technology of UG secondary development is emphasized. For each development module is comprehensively analysed and discussed, for follow-up the use of each module is overall controlled and grasped. Then the key technology and application of mould base library system development are introduced, including parametric design technology and database management technology among them, the functions and application modes that these technology is in system development are discussed, the powerful theoretical basis and direction guide are provided for system development. Then the development of parametric CAD system of mould base library are elaborated, the overall scheme of the system is designed, the design of the system application program is proposed, the establishment method and process of standard mould base library of injection mould for plastics is introduced by the setting of environment variables, dialogs building, menus customizing and model application program compiled, it involves the database interface program designed. Lastly,the automatic assembly system of mould base is introduced, he cooperation condition of
II

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

the assembly is discussed, the design of automatic assembly program and process implemented are discussed, the assembly explosion is established. In the thesis the design thought and design method are presented, not only applies for the secondary development of standard mould base library of injection mould for plastics, but also the reference and ideas standard parts library built for other products are presented, it promotes standard parts library built for other products to have certain inspiration and the promotion effect.

Key Words: Standard mould base of injection mould; secondary development;

parametric; database; automatic assembly

III

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用





摘要 …………………………………………………………….……..…............................Ⅰ Abstract ……………………………………………………………………………….…….II

1 绪论
1.1 模具工业……………………………………………………………….…..…1 1.2 CAD 技术发展历程……………………………………………………..…….2 1.3 模具 CAD 的发展…………………………………………………..………..5 1.4 本课题研究的背景……………………………………………….………….6 1.5 本课题研究的意义…………………………………………………….…….7 1.6 本课题研究的主要工作……………………………………………….…….9

2 UG 二次开发技术
2.1 UG 软件.......................................................................................................10 2.1.1 UG 的概述………………………………………………….……..….10 2.1.2 UG 的简介…………………………………………………………....10 2.1.2.1 UG 系统介绍………………………………………...........10 2.1.2.2 UG 的主要功能…………………………………………...12 2.1.2.3 UG 的特点…………………………………………………13 2.2 二次开发工具…………………………………………………………….…16 2.2.1 UG/Open Grip……………………………………………………….16 2.2.1.1 UG/Open Grip 概述……………………………………...16 2.2.1.2 UG/Open Grip 开发环境……………………………......17 2.2.2 UIStyler 对话框设计……………………………………………...18 2.2.2.1 UIStyler 的功能………………………………………...18 2.2.2.2 UIStyler 的操作界面…………………………………...19 2.2.2.3 UIStyler 控件介绍……………………………………...20 2.2.2.4 UIStyler 对话框的编辑…………………………………21 2.2.3 UG/Open MenuScript……………………………………………….23 2.2.3.1 用户菜单脚本 UG/Open MenuScript……………………23 2.2.3.2 菜单脚本文件的语法…………………………………….23 2.2.4 UG/Open API………………………………………………………...27 2.2.4.1 UG/Open API 功能概述………………………………….27
IV

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

2.2.4.2 UG/Open API 运行环境…………………………….........28 2.2.4.3 UG/Open API 应用程序的初始化和终止方式………….30 2.2.4.4 UG/Open API 的数据类型………………………………..30 2.2.4.5 函数名称及参数规范…………………………………….31 2.2.5 User Tools…………………………………………………………..32 2.2.6 二次开发工具之间的关系…………………………………………..32 2.3 本章小结……………………………………………………………………...32

3 模架库系统开发关键技术及应用
3.1 参数化设计技术……………………………………………………………..33 3.1.1 参数化设计原理……………………………………………………..33 3.1.2 参数化模型…………………………………………………………..34 3.1.3 参数化设计在本课题中的应用……………………………………..35 3.2 数据库管理技术及应用……………………………………………………..37 3.2.1 数据库管理技术……………………………………………………..37 3.2.2 数据库管理技术应用………………………………………………..39 3.2.3 数据库管理技术的连接……………………………………………...40 3.3 本章小结………………………………………………………………………41

4 模架参数化 CAD 系统的开发
4.1 系统总体设计方案.....................................................................................42 4.1.1 系统总体设计思路…………………………………………………..42 4.1.2 系统开发基本步骤…………………………………………………..43 4.1.3 系统开发工具选择…………………………………………………..44 4.1.4 系统开发流程………………………………………………………..45 4.2 模架库零部件程序创建……………………………………………………..46 4.2.1 系统环境变量的设置………………………………………………..46 4.2.2 工程目录结构………………………………………………………..47 4.2.3 系统应用程序的设计………………………………………………..48 4.2.3.1 用户界面设计……………………………………………..49 4.2.3.2 创建应用程序……………………………………………..53 4.2.3.3 数据库接口程序设计……………………………………..60 4.2.3.4 程序编译和连接…………………………………………..65 4.3 模架库系统应用实例………………………………………………………..65
V

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

4.3.1 板类零件定模座板…………………………………………………..65 4.3.2 轴类零件导套………………………………………………………..68 4.4 本章小结……………………………………………………………………..70

5 模架自动装配系统
5.1 概述……………………………………………………………………………71 5.2 装配配合条件………………………………………………………………...72 5.3 自动装配程序设计和实现…………………………………………………...73 5.4 装配爆炸图……………………………………………………………………81 5.5 本章小结………………………………………………………………………82

6 结论和展望
6.1 结论……………………………………………………………………………83 6.2 本文的创新点…………………………………………………………………84 6.3 展望……………………………………………………………………………84

参考文献 …………………………………………………………………………86 附录 A ………………………………………………………………………………………92 附录 B(攻读学位期间的主要学术成果) ………………………..............113 致谢
……………………………………………………………………………………......114

VI

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

1 绪论
1.1 模具工业
随着中国经济的高速发展,近 10 年来,中国模具工业一直以每年 15%左右的 增长速度快速发展 [1]。模具业素有“开启工业现代化金钥匙”的美称,我国对模 具的需求与日俱增,模具进口与出口逆差不断拉大。经过多年努力,我国已从模 具进口大国悄悄向模具出口大国方向转变。加入世贸组织后,我国模具工业设计 和制造水平不断提升 [2] 。中央提出一揽子刺激内需的计划,特别是国务院通过的 《装备制造业调整和振兴规划》中把提升模具及其制造装备的技术水平作为其重 点内容,对模具工业提出了越来越高的要求,也为其发展提供了巨大的动力。在 国家 16 个重大科技专项基础装备功能部件项目中有模具项目专项, 也体现了模具 工业在制造业中所占的重要地位 [3]。随着改革开放,全球制造业重心向中国转移, 为中国模具行业发展提供了强大动力,也对国内模具制造商提出了越来越高的要 求 [3] 。近年来,我国塑料模具发展迅速,塑料模具在整个模具行业中所占比重约 为 30%,在模具进出口中的比重高达 50~70%[5]。随着中国机械、汽车、家电、电 子信息和建筑建材等国民经济支柱产业的快速发展,何况还有通讯、IT、航天、 航空、仪表、机电、化工等行业对模具的大量需求。据预测,模具市场的总体趋 热是平稳向上的,在未来的模具市场中,塑料模具的发展速度将高于其它模具, 在模具行业中的比例将逐步提高 [5] 。目前,塑料模具发展一片生机,塑料制品的 应用日渐广泛,为塑料模具提供了一个广阔巨大的市场,同时对模具也提出了更 高的要求 [6] 。总的来说,进入新世纪以来,我们取得重大进步。但离现代制造业 的发展需求,仍有很大差距。随着中国经济逐步地融入世界经济体系,中国模具 的设计和制造水平有了很大提高。但是,我国模具产品水平总体上与发达国家相 差有 10~15 年的差距。特别落后于欧美,日本等模具强国。模具生产技术水平的 高低,已成为衡量一个国家产品制造水平高低的重要标志之一,因为模具在很大 程度上决定着产品的质量、效益和新产品的开发能力 [6] 。因此,如何把提高生产 效率,减少模具设计开发周期,已经成为目前模具加工和模具优化中的热点研究 问题。二次开发技术成功应用,已经在部分模具制造企业产生了明显效果,节约 开发时间,缩短开发周期,为大规模定制生产提供了可能。传统设计方法既浪费 了精力和资源,也无法保证在每一个环节都能拥有高级专业化水准。随着现代市

1

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

场全球化竞争程度的不断加剧,企业之间的竞争开始转向基于时间的竞争和基于 客户需求的竞争 [8] ,特别是在大规模定制的生产模式下,企业之间的竞争开始转 向更加基于时间的竞争和基于客户需求的竞争。为顾客提供定制化的产品,缩短 产品的开发时间,提高顾客的满意度,己经成为现代企业追求新的竞争优势的一 种必然趋势 [9]。

1.2 CAD 技术发展历程
CAD 是 Computer Aided Design 的缩写,即计算机辅助设计。计算机辅助设 计就是一种用计算机硬软件系统辅助人们对产品或工程进行设计的方法与技术, 包括设计、绘图、工程分析和文档制作等设计活动,它是一种新的设计方法,也 是一门多学科综合应用的新技术 [10]。CAD 应用计算机、图形软件、信息技术来辅 助工程师和设计师进行产品或工程的设计,从构思到形成文档来帮助或提高产品 设计。 自从 1946 年第一台计算机开始, 人们就不断地尝试将计算机技术引入到传统 的机械设计领域。CAD 技术的发展和形成至今已有 50 余年的历史,自 20 世纪 50 年代交互式图形处理技术的出现,CAD 技术经历了由单纯的二、三维绘图到覆盖 几何造型、工程分析、模拟仿真、设计文档生成等大量产品设计活动的发展过程。 目前,CAD 技术正经历着由传统 CAD 技术到现代 CAD 技术的转变。 二维 CAD 技术的发展 CAD 技术起步于 50 年代后期。进入 60 年代,随着在计 算机屏幕上绘图变为现实可行,CAD 技术开始逐渐迅速发展。人们希望通过借助 此项技术来摆脱复杂繁琐、费工费时、绘制精度低,效率低下的传统手工绘图, 况且运用手工绘制的图纸,不易查看与保存,造成数据库存资源的庞大和浪费, 不利于企业的创新和发展。 麻省理工学院的研究生 I.E.Sutherland 发表了<<人机 对话图形通信系统>>的论文,这篇论文首次提出了计算机图形学、 交互式技术及图 形符号的存储采用分层的思想,为 CAD 技术提供了理论基础,随后相继出现了商 品化的 CAD 设备和软件系统, 例如美国的 IBM 公司开发的大型机为基础的 CAD/CAM 系统、通用公司研制的 DAC-1 系统和洛克希飞机公司的 CAD/CAM 系统 [11]。计算机 辅助设计通常与一个交互式计算机图形系统的应用联系在一起,称作计算机辅助 设计系统。设计(Design),就是制定和采纳规则,然后在这些规则下进行工作并 达到计划的和实用的目标的过程 [12]。此时 CAD 技术是用传统的三视方法来表达零 件为出发点,以图纸为媒介进行技术输出和交流,功能单一,不能复合集成,此 技术就是二维计算机绘图技术。此时 CAD 的含义仅仅定格于作为图板的替代品,
2

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

当时的 CAD 即所谓的是计算机辅助画图,即(Computer Aided Drawing)的缩写。 以二维绘图为主要目标的算法一直持续到 70 年代末期。随着科学技术的发展,特 别是计算机软硬件技术的发展,CAD 技术系统介入产品设计过程的程度越来越深 入,系统功能越来越强大,系统作用越来越多元化,逐步发展成为真正的计算机 辅助设计即(Computer Aided Design)的缩写。60 年代还出现了简单的三维 CAD 系统,此系统由极为简单的线框式系统组成。此种初期的线框造型系统只能表达 出基本的几何信息,不能有效表达出几何数据间的拓扑结构关系。由于缺乏形体 的表面要素信息,CAE 及 CAM 均都无法应用实现。 进入 70 年代,飞机和汽车工业进入了蓬勃发展快速时期,这给三维 CAD 带来 了空前良好的发展机遇。飞机及汽车制造中存在有大量的自由曲面问题,当时只 能通过多截面视图、特征纬线的方式来近似表达。由于三视图方法表达的不完整 性,差异性。经常发生设计完成后,制作出来的样品与设计者所想象的实物有很 大差异甚至完全不同,影响了其产品的设计质量以及生产成品的质量。为了解决 产品设计中遇到的大量自由曲面问题,法国人提出了贝赛尔算法,使人们通过计 算机来处理解决曲线及曲面问题,同时也使法国的达索飞机制造公司的开发者们 得到了启发,通过在二维绘图系统 CADAM 的基础上的应用与研究,他们提出以表 面模型为特点的自由曲面建模方法,推出了 当时较为先进的三维曲面造型软件 CATIA。CATIA 实现了运用计算机完整地描述产品零件的主要信息,从而把计算机 辅助设计技术从单纯模仿工程图纸的三视图模式中解放出来,同时也为 CAM 技术 的开发与运用打下了坚实的基础。曲面造型系统带来了第一次 CAD 技术革命,它 彻底改变了以往只能借助油泥模型来近似表达曲面的传统工作方式。曲面造型系 统带来的技术革新,使产品设计开发手段有了质的飞跃,新产品开发速度也大幅 度提高,大量产品的开发周期成倍的缩短。企业对 CAD 系统的大量采用,反过来 也大大促进了 CAD 技术的发展。 80 年代初出现的实体造型技术与三维 CAD 系统,CAD 系统价格依然令一般企 业望而却步,这使得 CAD 技术无法拥有更广阔的市场。为使自己的产品更具特色, 在有限的市场中获得更大的份额,以 CV、SDRC 和 UG 为代表的系统开始朝各自的 发展方向前进。70 年代末到 80 年代初,CAE 和 CAM 技术也有了较大发展。表面模 型使 CAM 问题基本得到解决。但由于表面模型技术只能表达形体的表面信息,难 以准确表达零件的其它特性,如质量、重心和惯性矩等,在这样问题的背景下, 许多公司开发了专用分析模块。比较典型的是 SDRC 公司于 1979 年发布了世界上 第一个完全基于实体造型技术的大型 CAD/CAE 软件──I-DEAS。实体造型技术能
3

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

够精确地表达零件的全部属性,有助于统一 CAD/CAE/CAM 的模型表达,给设计带 来了方便,代表着未来 CAD 技术的发展方向。但实体造型技术不仅带来了数据计 算量的极度膨胀,由于当时的计算机硬件条件不够理想,实体造型的计算及显示 速度很慢,离实际应用还有较大的差距。另外,面对算法和系统效率之间的矛盾, 许多公司为了自身的利益并没有下大力气进行开发,而是转向攻克相对容易实现 的表面模型技术。进入 80 年代中期,CV 公司提出了一种比无约束自由造型更加 新颖的算法——“参数化实体造型方法” 。这种方法的特点是,基于特征、全尺寸 约束、全数据相关和尺寸驱动设计修改。由于在参数化技术发展初期,新技术疑 难点大量存在,有待于攻克,又因为参数化技术的核心算法与以往的系统有本质 差别,相互不兼容,采用参数化技术,必须将全部软件重新开发,重新改写。因 而需要大量的开发工作量和 前期 投资。 所以美国 PTC(Parametric Technology Corporation) 参 数 技 术 公 司 就 在 这 样 的 环 境 下 应 运 而 生 。 PTC 推 出 的 Pro/Engineer(简称 Pro/E)是世界上第一个采用参数化技术的 CAD 软件,它第一 次实现了尺寸驱动的零件设计。随着计算机技术的迅速发展,硬件成本大幅度下 降,很多中小型企业也开始有能力使用 CAD 技术。处于中低档的 Pro/E 软件获得 了发展机遇,它符合众多中小型企业 CAD 的需求,从而获得了巨大的成功。 进入 90 年代后,参数化技术的成功应用,提高了产品的设计质量和效率,在 其以后的发展应用过程中,参数化技术逐渐的得到完善和加强,参数化技术逐渐 变得越来越成熟,在许多通用件、零部件设计时的简便易行等方面,该软件充分 体现出极强的优势。所以,当时变量化技术与参数化技术几乎成为 CAD 业界的标 准,许多软件厂商纷纷起步追赶,加快自己的软件更新换代,来满足 CAD 软件市 场的要求。由于 CATIA、CV、UG、EUCLID 等都已经在原来的非参数化模型基础上 开发或集成了很多其它应用,并开发了许多应用模块,所以,重新开发一套完全 参数化的造型系统,就意味着必须将软件全部重新改写,工程量和投资均甚为浩 大,公司往往不能承受,因此这些公司基本上都是在原有模型技术的基础上进行 局部的、小规模的改进和修补。这样,CV、CATIA 和 UG 推出了自己的参数化技术, 但这些软件还不是全面的参数化,并非完全基于实体,只是采用了复合建模技术, 把线框模型、曲面模型及实体模型叠加在一起。由于参数化技术和非参数化技术 内核本质不同,参数化技术造型后,要进行内部转换进入非参数化系统,才能被 系统识别和应用。而大量的转换极易导致数据丢失或产生其它的不利情况。90 年 代初,SDRC 公司的开发人员以参数化技术为蓝本,提出了“变量化技术”。1990 至 1993 年,SDRC 对 CAD 软件进行革命性改进,将软件全部重新改写,推出了全
4

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

新体系结构的 I-DEAS Master Series。CAD 技术基础理论的每一次重大进展,无 一不带动了 CAD/CAM/CAE 整体技术的提高以及制造手段的更新。可是 CAD 软件技 术发展也给我们带来启示: 决定软件先进性及生命力的主要因素是软件基础技术, 而并非特定的应用技术。

1.3 模具 CAD 的发展
随着工业技术和科学技术的发展,产品对模具的要求越来越高,传统的模具 设计制造已不能适应工业产品快速更新换代和提高质量的要求。本世纪的模具设 计制造行业的基本特征是高度集成化、智能化、柔性化、虚拟化和网络化,追求 的目标是提高产品质量及生产效率、缩短设计制造周期,降低生产成本、最大限 度的提高模具制造业的应变能力,满足用户需求 [13]。因此,发达国家从 20 世纪 50 年代末就开始了模具 CAD/CAM 技术的研究; 20 世纪 60 年代末, 到 模具 CAD/CAM 技术已日趋成熟,并取得显著的应用效果;20 世纪 80 年代,模具 CAD/CAM 技术 已广泛用于冷冲模具、锻造模具、挤压模具、注塑模具、压铸模具的设计与制造
[14]

。20 世纪 60 年代中期,英国、美国、加拿大等国学者完成注射过程一维流动

与冷却分析;70 年代完成二维分析程序;80 年代开始对三维流动与冷却分析进行 研究;进入 90 年代,对流动、保压、冷却、应力分析注射成型全过程进行集成化 研究 [15]。传统的模具制造技术主要是根据设计图样,用仿形加工、成形磨削以及 电火花加工方法来制造模具,利用模具 CAD 技术可以有效地对整个模具设计制造 过程进行预测评估,迅速获得样品,有利于争取订单、赢得客户、同时节省大量 的模具试制时间和费用,进而减少模具返修率、降低模具成本 [16]。由于硬件资源 的影响,我国模具 CAD/CAM 的研究工作起步较晚,1978 年上海交通大学与上海星 火研究所开始了简单的 CAD/CAM 工作 [17]。 1983 年初成立上海交大模具技术研究所, 建立了 CAD/CAM 研究中心,开展冲裁模、注塑模的 CAD/CAM 研究工作 [18]。近来来 我国自主开发的 CAD/CAM 软件有了很大的发展。如华中科技大学模具技术国家重 点实验室开发的注塑模、汽车覆盖件模具和级进模 CAD/CAM 软件,上海交通大学 模具 CAD 国家工程研究中心开发的冷冲模和精冲模 CAD/CAM 软件,北京机电研究 所开发的锻模 CAD/CAM 软件,北航华正软件研究所开发的 CAXA 软件 [19]。目前,国 内模具企业已有相当多的厂家采用了模具 CAD 技术。以美国 AutoDesk 公司的 AutoCAD 为代表的一批绘图软件正在模具行业中普及,计算机绘图正在逐步取代 手工绘图,但其模具 CAD 工作的相当部分也只是用计算机画图和进行二维设计, 少数企业引进了高档三维设计软件,如 Pro/E、UG、I-DEAS、Euclid-IS 等,在模
5

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

具设计过程中采用了三维 CAD 软件进行设计。只有极少数的企业的模具设计和制 造能力接近国际先进水平 [20]。UG 自 1990 年进入中国市场以来,迅速发展,己成 为中国航天航空、汽车、机械、计算机及外设、家用电器等流域的首选软件。 建模技术是 CAD 的核心技术,建模技术的研究、发展和应用,代表了 CAD 技 术的研究、发展和应用水平,特别是把它应用于模具的开发与制造,给模具行业 注入了新的血液。随着 CAD 技术得到普及,模具 CAD 技术应用越来越广,模具 CAD 技术得到了长足的发展,模具 CAD 技术应用于模具工业,使模具的设计制造技术 发生了重大变革 [21]。 信息化特别是信息化管理,不但已被许多模具企业广泛采用, 而且付诸努力实施。在实施过程中,国内外有关软件同台竞技,二次开发富有成 果,数据库日渐丰富。通过信息化数据管理,模具生产周期大为缩短,生产效率 提高,企业效益增加。

1.4 本课题研究的背景
在模具设计制造中,选择标准模架能够简化设计,提高质量稳定性,缩短制 造周期,降低成本,为企业带来明显的效益。模架为所有模具零部件提供了装配 基础,承载模具的各个功能系统,模架设计是整个模具设计的重要组成部分。模 架是由模板、导柱、导套和复位杆等零件组成但未加工型腔的一个组合体。标准 模架是由结构、形式和尺寸都已经标准化并具有一定互换性的零件成套组合而成 的一类模架。模架的设计在模具生产中占有一定比重,现代模具的要求就是要高 质量、短周期,如果能将模架设计时间缩短,必将有利于缩短整个模具开发周期。 CAD技术是现代模具技术的重要基础之一, 是模具生产走向全盘自动化的重要措施 之一,伴随计算机技术的发展,现代模具CAD技术也有长足的发展,特别是参数化 造型技术、二次开发技术的应用,更使CAD技术发生了质的飞跃。模架设计是一个 集知识、经验、计算、绘图于一体的复杂设计。随着CAD技术的发展,出现了基于 软件模块的二次开发,使新颖的模架设计技术得以实现变为了可能。现在的CAD 系统通过二次开发,利用软件自身的开发工具将专门领域的设计知识嵌入到软件 本身,这确实对设计起到一定的决策辅助意义,但这些知识以专业的程序语言来 描述,通过编译链接在软件内部,通过UG界面输出和实现 [22-24]。 长期以来,我国传统的模具设计与制造过程中,模具设计仅依靠经验和简单 的理论计算来初定方案,再根据反复的试模和修模逐步完成设计。他存在着效率 低、成本高、周期长的缺陷。况且传统的模具设计依然主要通过手工依据产品图 并考虑成型性能与模具加工条件来进行设计,模具设计的成败完全取决于设计人
6

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

员的经验。特别是对于那些标准件、结构相似、拓扑结构相同,但只是尺寸不同 的零件,设计工作中存在很多重复性工作和反复开展的工程计算,不但增加了设 计的工作量,还增加了重复设计、计算过程的出错的机率。随着科学技术的飞速 发展,快速变化的市场需求导致产品更新换代的速度不断加快,产品生产正向着 复杂化、精密化、多品种化、高质量化和交货期短的方向发展,这就要求模具的 设计制造应具有更短的生产周期、更低的成本和更高的质量。模架设计作为模具 生产中的一个重要环节,高效的模架设计必将缩短整个模具生产周期。基于CAD 软件基础上的二次开发技术作为提高模具生产效率和质量的重要手段之一,在此 形式下,传统的模架设计与制造过程显然已经不能满足时代的需求,不能适应工 业产品及时更新和高质量生产的要求。同时随着模具行业的发展以及模具在各行 业生产中的广泛应用,模架设计的标准化程度不断提高,标准化的模架结构在行 业中所占比例不断扩大。 通过以模架为研究对象的基于CAD系统平台的二次开发研 究与应用工作,使模具的设计和生产过程向自动化的方向发展,形成了高效,快 捷的二次开发技术 。尽管基于CAD技术的二次开发技术有了长足的发展,但设计人 员未完全摆脱繁复枯燥的绘图工作的困境。其重要原因之一就在模具标准化的今 天,各个国家、各个行业协会、各个企业都没有制定统一的标准,都是根据自己 的要求定制自己的标准, 造成当前的CAD软件系统无法覆盖模具所有常用零件及模 架。然而使用大量的标准零件、标准模架,在每一副模具的设计中是都占有相当 的比重。现在,即使少数CAD软件系统提供类似的一些图形库,但不能完全的互相 兼用。在模架的选择过程中,目前都是采用人工计算,根据设计人员的个人和企 业自身经验进行参数确定,这在开发过程中会出现相当大的主观错误。如何减少 设计过程中的主观因素,实现模架选择的自动化,一直是软件开发商研究的课题。 一副模具从设计到制造完成周期很长,因此如何减少繁重的设计和制造工作量, 来缩短生产准备时间和降低造价便具有重大的经济意义。实现模具的标准化是模 具制造业的必由之路,我国标准化工作处于初级阶段,标准化程度不高,标准不 够完善,所以在很多情况下已有的标准也不能完全满足企业的需要。所以,要加 快我国模具的标准化速度,制定相关的国家标准,以此为据完善行业协会标准, 企业的标准,逐步稳妥的推进模具的标准化进程 [25-26]。

1.5 本课题研究的意义
随着我国电子、电器、仪表、交通、轻工等行业的迅速发展,产品性能和质 量要求越来越高,更新换代的速度越来越快,对模具设计和制造技术的要求越来
7

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

越高,为了使企业在竞争中立于不败之地,必须加快产品开发速度,客观上要求 改变传统的模具设计与制造方式,加快模具技术的进步,因此,将 CAD 技术运用 到模具行业中已是必然趋势。而且,传统的注射模标准模架设计基本凭借设计人 员个人的知识和经验,设计模具标准模架、加工完毕后,需要花费大量的时间进 行调试、修改,甚至可能由于无法挽回的一点失误使得整个设计报废,模具标准 模架设计、加工的成本高,效率低。在模具标准模架设计中,应用三维 CAD 技术 有着二维设计所不可比拟的优势。CAD 技术从根本上改变了过去手工绘图、发图、 凭图纸组织生产的管理模式,为建立一种新型的设计和生产管理体制。 当今科技发展日新月异,市场竞争日趋激烈,尤其是制造业,缩短研发周期 势在必行,计算机辅助设计软件在这方面贡献突出。UG 作为 CAD/CAE/CAM/PDM 一 体化软件系统,不仅具有强大的实体造型、曲面造型、参数化造型、装配和工程 图创建等功能,还提供了强大的二次开发工具 UG/OPEN,用户或第三方可以使用 该开发工具,开发出基于 UG 系统的应用程序,实现与 UG 系统的无缝集成,从而 满足用户的特殊要求。UG 在为企业提供服务的过程中发现,企业在使用该软件一 段时间后,都会提出二次开发的要求,希望通过建立基于 UG 的专用 CAD 系统进一 步提高设计效率。借助于二次开发,用户可以在某些应用软件中增加自己的某些 特定功能,从而大大节省设计时间,提高了工作效率。在机械 CAD 领域,依托大 型通用 CAD 软件进行二次开发,是 CAD 行业发展的一大趋势。既可以避免从底层 进行开发的工作量大、重复开发的弊端,又可以多快好省的推广、拓展 CAD 的应 用。特别是在具体的专业领域,依托通用软件进行二次开发,更具针对性,从而 更具有现实意义。由于传统的设计方法依赖于设计者的经验和知识,难以得到合 理结果,而且设计周期长、成本高,不能满足多品种、小批量、高质量的市场需 求,更不能满足 CAD/CAPP/CAM/CAE 集成的需要。在计算机日益普及的今天,利用 计算机进行注塑模的二次开发设计具有迅速、准确、逻辑性强等特点。由于模具 开发设计、生产加工系列过程中,存在着大量的标准件、通用件,甚至有大量尺 寸规格不同,但拓扑结构相同或相似的非标准件。工程技术人员常常因不同尺寸 对相似零件进行重复设计,不仅耗费时间精力,而且增加了产品的生产成本。因 此,在通用的 CAD 软件平台软件基础上进行旨在缩短产品开发周期的二次开发具 有重要意义。在企业内部,在设计过程中,在同一个系列产品中如果每个产品的 工程图都需要设计人员去重复做的话,那就需要花费大量的时间,并且造成重复 劳动,效率不高,针对这种情况,二次开发的应用,提高了工作效率,缩短了整 个设计制造周期。
8

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

近年来,尽管 CAD 技术在国内取得了很大的进步,但除了一些工艺分析和仿 真技术外。模具 CAD 的成果并不十分显著,其中最突出的问题就是结构设计的效 率不是很理想。改善模具结构设计效率的出路之一就是借助于通用 CAD 软件进行 二次开发来提高通用模具结构 CAD 的自动化程度。模具结构的标准化程度越高, 二次开发适用面就越宽,通用性也就越好,故完全依靠二次开发来实现自动化设 计变的越来越重要。日益激烈的市场竞争,迫切要求企业具备快速响应市场的能 力,在设计参数化的基础上,建立模具的二次开发系统,通过适当的人机交互方 式,不仅能够降低模具 CAD 系统的开发难度,而且可以极大地提高模具设计效率。

1.6 本课题研究的主要工作
如何改进二次开发的方法,提高二次开发速度,缩短开发时间,提高开发效 率,达到理想的实用效果,为制品和模架二次开发创造条件是我们面临的一个课 题。将软件工程学、优化设计理论、计算机语言、Visual C++6.0、Unigraphics(简 称 UG)软件、数据库技术、参数化、制品和模具设计方法有机融于模具的二次开 发中,来优化和控制设计过程和制品质量,并建立合理的设计、开发工艺窗口, 使之实用化、功能化、简便化。是当今二次开发技术发展的一个主流方向。在研 究相关技术的基础上,结合本课题研究的内容,确定了本课题所要做的主要工作: (1) 研究 UG 提供的二次开发工具和方法, 并对 UG 的常用模块进行比较研究, 择优选择其模块在开发中的应用。 (2)论述标准模架三维 CAD 系统应用开发的几个模块及其相互联系,选择构 建注塑模标准模架库系统所用模块组成。 (3) 利用数据库的储存和管理功能, 建立注塑模标准模架设计专用的数据库。 探讨注塑标准模架设计中所用设计理念,设计准则、设计方法等。 (4)解决好人机接口问题,建立友好界面,实现人机交互式设计和人机界面 的可视化设计,为在 UG 环境下进行人机界面设计的人员提供有效的技术支持。 (5)对人机界面设计进行细化研究,从分析人机界面设计领域研究内容和研 究方向出发,针对人机界面设计过程,结合设计人员设计思维和习惯,提出恰当 的人机界面设计方法,解决好软件的设计开发和兼容性问题。 (6)用参数化技术,数据库技术联合建立注塑模标准库。 (7)创建三维装配模型自动装配设计系统,实现模架零件的自动化装配。 (8)实现模具零部件二维零件图可视化。

9

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

2 UG 二次开发技术
2.1 UG 软件
2.1.1 UG 的概述
按 CAD 技术的功能特点将 CAD 技术的发展分为以下阶段 [27]:曲面造型阶段、 实体造型阶段、参数化造型阶段、变量化(GX)造型阶段。Unigraphics(简称 UG) 是当前世界上一款最先进、紧密集成的、面向制造行业的机械 CAD/CAE/CAM 一体 化三维参数化高端软件,它是目前国际、国内应用最为广泛的大型集成化软件之 一, 它基于了设计优化技术与知识工程组合,使用户能够参数化地创建和获取数字 化的三维产品定义,它为制造行业产品开发的全过程提供解决方案,优化产品结 构,功能强大、内容丰富,涵盖了从设计、建模、分析、加工、管理等各个领域, 不仅包括实体建模模块、特征建模模块、曲线曲面建模模块、工程制图模块、装 配模块、分析模块、加工模块、知识工程模块和二次开发模块这些通用模块之外。 还提供了各种专用模块,如计算机辅助工业设计模块、钣金设计加工模块、模具 设计加工模块、管路设计布局模块等。可以实现产品从设计建模到产品加工的一 体化流程,还可以进行对建立的产品模型进行运动学、动力学仿真及有限元等操 作。最重要的是,此软件为用户或第三方提供了功能强大的开发工具 UG/OPEN,此 工 具 可以 根据 用 户的要 求 ,在 Unigraphics 软 件平 台的 基 础上, 开 发出 基 于 Unigraphics 系统的应用程序,实现与 Unigraphics 系统的无缝集成,实现用户 专业化、智能化、高效化的定制。作为通用 CAD/CAE/CAM 软件,Unigraphics 功 能非常强大,已经广泛应用于航空、航天、机械、汽车、船舶、模具和家电电器 等领域。

2.1.2 UG 的简介
2.1.2.1 UG 系统介绍 Unigraphics(简称 UG)软件起源于美国麦道公司。该软件作为美国 UGS 公 司的五大主要产品(UG、Parasolid、iMAN、SolidEdge、ProductVision)之一,该 软件汇集了美国汽车工业及航空工业的专业经验。目前己成为世界一流的集成化 机械 CAD/CAM/CAE 软件,他提供了参数化、特征化的概念设计,采用区别于多面

10

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

体的曲面实体造型,使线框造型、曲面造型和实体造型融为一体,提供可以独立 运行的面向对象的集成管理数据库系统,是 CAD/CAM/CAE 各部分的数据能够进行 自由切换, 具有良好的二次开发接口和工具 [28], 况且也能促进产品开发的创新 [29]。 UG/Mold Wizard 工具 [30],软件新增的功能和分析结果,能对市场的反馈迅速做出 反应,缩短产品上市时间,提高制品和模具设计的质量,确保项目能按时完成 [31]。 UG 软件越来越受到国内外许多企业的青睐,它已经成为世界上许多大公司如波音 飞机、通用汽车、松下等首选的软件。 UG 软件自 1990 年进入中国市场,经过二十几年的发展,目前 UGS 公司在上 海、北京、广州、成都、深圳、香港设有分公司或办事处,在全国设有 13 个授权 培训点。国内用户已经占了很大的市场,各个行业都已经比较普及,相对于模具 行业,UG 用户更加的普遍。国内许多大型企业、公司均采用 UG 作为其产品设计 生产的支撑软件。上海一汽、东风汽车公司、广州汽车研究开发中心、沈阳飞机 工业公司、成都航空发动机公司、上海航天技术研究院都在使用 UG 做为他们的设 计开发软件,并且在实际应用 UG 软件的过程中,取得了骄人的成绩。不光是这些 大的航空工业及汽车公司在使用,还有许多知名的家用、通用机械的公司也在使 用 UG 软件,如珠海格力电器股份有限公司、佳能、飞利浦、海尔、上海日立家用 电器公司、长虹、康佳、广西玉柴机器股份有限公司等,利用 UG 开发优化自身的 系列化产品,创新自己新产品,开拓了广阔的市场前景,获得了显著的经济效益 和社会效益。 通过对国内外有关 UG 的应用研究,进一步表明,UG 软件应用可分为两种类 型,一是直接利用 UG 软件进行产品的设计、建模、分析、制造、加工,二是在 UG 平台基础上进行二次开发。随着模具工业飞速发展,针对目前模具开发设计、 生产加工系列过程中,存在着大量的标准件、通用件,甚至有大量尺寸规格不同, 但拓扑结构相同或相似的非标准件,这些零件大多具有相同或相似的外形特征, 不同的只是尺寸规格。工程技术人员常常因不同尺寸对相似零件进行重复设计建 模工作,不仅耗费时间精力,设计过程中造成产品数据库过大,冗余数据过多, 不易管理,而且增加了产品的生产成本,况且在大量重复性的工作当中,不可避 免的带来不可预见性的设计细节错误,最终影响产品的生产质量,因此提出了基 于 UG 软件的二次开发具有很大的现实意义, 应用二次开发技术建立起符合国家标 准、行业标准以及企业标准的标准件库,并且在建立相应的数据管理系统的基础 上,开发通用标准件库以及行业标准件库,以提高模具质量、提高产品设计效率、 缩短模具设计制造周期、降低模具生产成本,所以基于 UG 的二次开发成为各个公
11

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

司角逐的对象。 另外,它所提供的二次开发语言 UG/Open GRIP,UG/Open API,便于用户开 发专用的客户化 CAD 系统。UG 为各种规模的企业带来了非常巨大的价值:更快地 提交产品到市场,抢占市场的制高点;使复杂产品的设计简化和高效;减少企业 产品成本和增加企业的竞争实力。随着 UG 版本的不断更新和升级,新功能的不断 扩充,UG 更是扩展了软件的应用范围,朝着专业化和智能化的方向发展。UG 是一 个交互式的计算机辅助设计(CAD)和计算机辅助制造(CAM)系统。CAD 功能是如今 制造业的工程设计和绘图能力自动化。CAM 功能为现代母机应用 Unigraphics NX 设计模型提供的 NX 编程规划以描述完成的零件。UG 是一个三维的双精度系统, 用户可以对几乎所有的几何形状进行精确描述。通过将这些形状进行结合,用户 可以设计、分析和创建产品图纸。设计完成以后,可以应用制造程序选择几何形 状对零件进行加工。输入制造信息,比如刀具半径和刀具自动定位源文件(CLSF), 利用该文件可驱动大部分 NC 机器。UG 具有强大的建模、分析和加工功能。其建 模技术结合了传统建模和参数化建模的优点,采用尺寸驱动技术,具有全相关参 数化功能,是一种“复合建模”工具。应用 UG 建模功能,可以快速进行概念设计 和详细设计,交互建立和编辑各种复杂的零部件模型。根据已建立的三维零件模 型,UG 的各种应用功能既可对模型进行装配操作、创建二维工程图,也可对模型 进行机构运动学、动力分析和有限元分析,进行设计评估和优化;同时,还可根 据模型设计工装夹具,进行加工处理和改进,直接生成数控程序,用于产品的加 工 [32-33]。 2.1.2.2 UG 的主要功能 UG 的功能模块众多,下面从产品设计、产品制造、产品分析和饭金设计的角 度介绍 UG 的功能模块。 UG 软件主要包括以下应用模块 [34-35](如图 1.1 所示) : ( 1 ) UG 计 算 机 辅 助 设 计 (CAD) 模 块 包 括 几 个 应 用 模 块 : UG 基 础 环 境 (Gateway)、UG 建模(Modeling)、UG 工业设计(studio for Design)、UG 制图 (Drafting) 、 UG 装 配 建 模 (Assembly Modeling) 、 UG 高 级 装 配 (Advanced Assemblies)。 (2)UG 计算机辅助制造(CAM)模块包括加工、机床建造器。 (3) 计算机辅助工程分析(CAE)模块包括, UG 结构分析、 注塑流动分析、 Mascot Form、运动分析等。

12

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

(4)UG 饭金(Sheet Metal)模块。 (5)注塑模具设计模块(Mold Wizard),级进模具设计模块。 (6)UG 管道(Routing Mechanical)与电气配线(Routing Electrical)。 (7) “知识融合”应用模块。 (8)程序设计模块主要是用户或者开发商应用此模块进行 UG 的二次开发。 它由 GRIP 编程语言(Graphics Interactive Programming)和 UG/Open API 编程语 言组成。 (9)电子数据表不但可以作为数据库来用,而且可以在此基础上建立零件族 以及其它的一些数据库功能。

图 1.1 UG 各模块示意图 Figure 1.1 Schematic diagram of each module of UG

2.1.2.3 UG 的特点 通过 UG 软件的功能模块,我们能方便的使用这些模块去开发设计产品。既能

13

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

提高产品设计制造效率,还能避免开发其它应用功能所带来的风险。在运用 UG 软 件进行产品开发设计时,主要有如下的特点 [36]: (1)产品开发的集成性。UG 产品开发环境的无缝集成性。UG 是一款集 CAD、 CAE、CAM 于一体的专业化、智能化、集成化计算机辅助设计制造系统,可以完成 从产品概念设计、外观设计、详细设计、图纸生产、运动与受力受热分析、零件 数控加工程序的自动生成、设计与使用文档的建立等全过程,甚至还可以对生产 过程进行管理。可以实现从产品概念方案提出到产品制造的整个产品开发过程, 只有考虑了这一方面才能提高产品设计效率。 (2)产品设计的相关性。在 UG 的使用中,会产生大量的数据,这些数据统 一用数据库进行管理,为了解决产品设计过程中产品的数据过多、数据库比较繁 杂,数据量大造成的查询困难,采用了单一数据库的形式。它将所有的相关信息 存储在同一个数据库中,可以实现零件的装配、三维模型转化为二维工程图、直 接进行加工制造等。在整个设计过程中,任何一处的参数改变,则相关环节全部 发生变化。针对设计制造装配的全局,通过装配建模和部件间的链接技术,可以 利用各零件之间的相互参照,实现不同模型文件之间的相关性,通过应用主模型 方法,可以使集成环境中各应用模块之间保持完全的相关性。 (3)设计的并行处理。为了提高产品设计效率,缩短产品的开发创新周期, UG 采用并行处理的方式。其主要包括 PDM(产 F5I 数据管理)、Product vision(产 品可视化)以及 Internet 技术, 实现了开发成员之间数据共享,设计过程的总体监 控,各产品间的参数化和相关性处理,网上远程处理,互联操作。特别是在设计 过程中,在 Internet 技术的支持下,可以实现异地多人互动协同工作,每个人负 责自己的设计任务。在各自的设计任务与访问权限下,同一产品的不同设计阶段 甚至加工阶段可以同时进行,系统完成产品的自动更新。不同的设计人员和工程 师都可以在同一时间对产品范围、不同组件和不同子装配进行工作,大大缩短了 产品的开发修改时间。 (4)产品数据的可移植性。在进行产品设计过程中,CAD 软件使用的多元化, 造成了在使用 UG 的过程中,很可能会用到其它的 CAD 软件,或要求把 UG 转化成 其它 CAD 格式,这就要求 UG 能够识别读取其他软件的数据,也可以输出自身的数 据被其它软件所识别读取,这就要求数据具有可移植性。 (5) 基于装配的产品设计技术。 从整体的产品概念出发开始产品的设计过程。 从装配出发,通过应用主模型方法、自顶向下的设计方法和上下方向的全局设计, 可以从产品总体设计入手,逐步详细设计每一个零件。小到生活用品,大到复杂
14

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

的机械,UG 都可以为用户提供产品级的解决方案。 (6)基于知识的专家设计模块。为了进一步提高产品设计质量与设计效率, 增加产品的设计附加值,UG 在汇集设计专家智慧的基础上,采用了知识驱动的方 法,针对不同产品中具有的通用性,设计了智能化和专业化的模块,并且还在逐 步增加这些模块。 (7)满足客户需要的开放式接口。UG 提供了方便而先进的用户或第三方开 发工具。利用 UG/Open UIStyler 可以根据用户自己的需要定制自己的对话框;利 用 UG/Open GRIP 脚本设计语言,通俗易懂,简单易学,用户可以很方便的进行二 次开发;利用 UG/Open API 工具,用户可以通过 C、C++、Fortran 和 Java 高级语 言进行二次开发,而且支持面向对象程序设计的全部技术。

2.2 二次开发工具
UG 向用户提供了功能强大但又十分开放的二次开发环境和最先进的编程工具 集。UG 软件为用户或第三方开发人员提供良好的二次开发环境,用户和第三方开 发人员可以通过多种途径对 UG 软件进行开发、扩充和修改,使之更简捷方便、更 专业高效地服务于用户。 UG 二次开发编程工具集 以满足用户二次开发的需要,这组工具集称之为 UG/Open,是一系列 UG 开发工具的总称,是 UG 软件为用户或第三方开发人员提供 的比较完整的应用开发工具集。利用该工具集可对 UG 系统进行用户化裁剪和开 发, 可以使 UG 本地化、 定制化和用户化, 以满足实际的应用要求。 它主要由 UG/Open API(也称为 User Function)、UG/Open GRIP、UG/Open MemuScript 和 UG/Open UIStyler 四个部分组成。它们随 UG 一起发布,以开放性架构面向不同的软件平 台,提供灵活的开发支持。它们之间可以相互调用来实现 UG 的全部功能。使用户 开发的软件系统能完全和 UG 结合到一起,同时,也使开发人员节约了大量的时间 和精力。 除了 UG/Open 外,UG 软件还为用户提供了一个调用二次开发结果的交互式接 口:User Tools,它的功能是生成弹出式对话框或工具条,其界面风格与 UG 界面 风格一致。通过执行对话框或工具条,操作相应的控件就可以运行菜单文件、宏 文件、UG/open Grip 程序、UG/Open API 程序和其他二次开发文件。它们之间的 相互关系如图 2.1 所示。利用 UG 所提供的应用程序和开发工具,用户可以在其提 供的开发平台基础上,结合自己具体的应用需求,开发出适合自己需要的 CAD 产 品 [37-40]。
15

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

UG/Open API UG 二 次 开 发 工 具 User Tools
图 2.1 UG 的二次开发工具集

应用程序接口 菜单脚本语言 对话框设计工具 图形交互程序

UG/Open MenuScript UG/Open UG/Open UIStyler UG/Open GRIP

Figure 2.1 Secondary development tools of UG

2.2.1 UG/Open GRIP
2.2.1.1 UG/Open GRIP 概述 [41] GRIP 是 Graphics Interactive Programming 的缩写,GRIP 是 UG 内嵌的专用 图形交互编程语言 [42]。用户可以通过 GRIP 图形交互语言,在基于 UG 平台的基础 上进行二次开发,编译生成程序。UG 拥有强大的二次开发接口,其中 Grip 就是 UG 的二次开发语言,UG 所有的命令几乎都可以用 Grip 编程实现。GRIP 语言有一 套完整的语法体系,具备完整的语法规则、程序结构、内部函数,能与其它通用 语言程序相互调用 [43]。GRIP 与一般通用语言一样, GRIP 程序必须经过编译、链 接、生成可供 UG 调用的可执行程序之后才能运行。GRIP 程序一般在 UG 环境下编 制,由一系列 GRIP 语句组成。GRIP 主要内容包括:变量的定义和使用、内部函 数、数组的定义和使用、字符串的运算和处理、几何体的生成方法、逻辑语句和 转移语句、程序的循环结构、文件管理功能、人-机交互语句、输入输出语句、数 据的存取和分析、以及制图和装配功能 [44]。 GRIP 与 UG 系统集成, 利用 GRIP 程序能够实现与 UG 的各种交互操作, UG/Open GRIP 常应用于开发一些程序,开发的程序可以集成在 UG 环境内交互运行。它的 应用范围:几何体的创建、计算和分析、绘图、文件的管理、系统参数的控制、 数据访问、UG 数据库的存取等。目的是旨在向用户或第三方开发人员提供一种在 Unigraphics 环境下二次开发的方法 [45]。与其他二次开发语言相比,GRIP 语言结 构简单,编译方便,类似 FORTRAN。只要具有初步的编程知识,就能学会 GRIP 语 言,比较容易的进行二次开发。
16

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

2.2.1.2 UG/Open GRIP 开发环境 使用 GRIP, 就是应用 GRIP 语言, 进入 UG/Open Grip 开发环境, 建立生成 GRIP 程序,解决完成用户在 UG 环境下的参数化设计要求和其它操作。使用 GRIP 编程 的一般步骤如下 [46-50]: (1)选择[开始]→[所有程序]→[UGS NX 6.0]→[NX Tools]→[NX Open Grip] 命令,进入 UG/Open Grip 开发环境,如图 2.2 所示。

图 2.2 UG/Open Grip 开发环境 Figure 2.2 Development environment of UG/Open Grip

(2)编写 GRIP 源程序。在运用 GRIP 高级开发环境(GRADE-Grip Advanced Development Environment)中或在 Windows 的记事本(Notepad)中,利用文本编辑 器编(用<1>Edit 功能) ,用 GRIP 语言编写或修改 GRIP 源程序,并以扩展名*.grx 存盘。然后与主程序链接。 (3)编译 GRIP 源程序。利用 GRIP 编译器对源程序*.grx 文件进行编译,即 用 GRADE 的<2>Compile 进行编译。生成扩展名为*.gri 的编译文件。如果 GRIP 源 程序中含有子程序,则两者要分别进行编译,链接时 GRIP 源程序自动对子程序进 行链接;如果在编译过程中出现错误,GRIP 就会自动在屏幕窗口中显示错误信息 或将错误信息输出到指定的文件中,以供用户进行查询修改。在编译输出信息中, GRIP 会向用户提示错误发生的位置和错误的类型,提请用户修改源程序,然后继

17

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

续调试源程序。如果编译没有错误,GRIP 即会生成一个新文件*.gri,然后进行 下一步链接。 (4)链接程序。把编译成功的*.gri 文件进行链接,生成可执行的 GRIP 文 件,自动生成扩展名为*.grx。如果链接出现错误,在屏幕或输出文件中,GRIP 会显示错误信息,提示用户进行检查和修改。 (5)运行程序。运行 GRIP 程序必须首先进入 UG 环境,在 UG 的环境下链接 生成的*.grx 文件,可以通过 UG 的菜单项[File]→[Execute]→[Grip]直接选择 要运行*.grx 文件,就会出现运行结果。也可以通过用户化的菜单或对话框调用 *.grx 文件。 在 UG/Open GRIP 开发环境下,用户可以利用较为简单的 GRIP 语言程序实现 各种较复杂的参数化建模功能。用户编制的数据文件,可以通过用户编制的 GRIP 主程序进行读取,从而使一个主程序可以得到一系列不同规格标准件的参数化建 模实体。GRIP 语言是面向用户和工程师的语言,具有简单、易学、易用的特点。 但是用 GRIP 编写的程序比较冗长、繁琐、复杂,要考虑程序的各个细节问题,不 适合编辑量比较大的程序开发。其功能远不如 UG/Open API 强大。需要注意的是: 虽然 GRIP 程序通过了编译和链接,排除了语法上的错误,也完成了链接,生成可 执行程序,但是程序还可能包含其它错误,这种错误可能是算法错误、逻辑错误、 不符合 UG 的规定等等。因此,在开发 GRIP 程序时,还要通过程序的调试运行, 在程序调试中,内在的错误才会暴露出来。

2.2.2 UIStyler 对话框设计
2.2.2.1 UIStyler 的功能 UG/Open UIStyler 开发工具是一个可视化对话框编辑器 [51],不仅可以所见即 所得的方式生成对话框,使其与 UG 集成,系统还可以自动为对话框生成相对应的 C 或 C++语言模板文件,用户可以方便、高效地用于创建独立于硬件平台的交互界 面,生成 UG 风格的对话框功能。其功能如下 [52]: (l)为用户提供了强大的制作UG风格对话框的可视化环境,可以选择生成保 存UG/Open UIsytler文件和代码的语言格式,根据需要去有选择的去生成UG/Open UIsytler文件和代码,从而使用户在使用UG/Open UIsytler产生的对话框时,不 必考虑图形界面(Graphical User Interface缩写为GUI)的实现。 (2)UIStyler 所支持的控件种类丰富,在可视化环境下,利用这些控件快 速生成 UG 风格对话框,易于添加、删除和修改对话框控件,大大减少开发时间。
18

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

(3)UIStyler 编写的对话框可以包括用其它语言写的文字,具有执行宏文 件等功能。 (4)在 UG 界面下,可以直接选取和放置控件,进行组合和布局,以创建出 满足不同功能的对话框,从而能实现所见即可所得,直观明了的面对开发窗口。 (5)用户可以根据自己的需要,在对话框中插入或自定义位图,从而形象的 描述了零件的外观和结构。 (6)提供了属性编辑器,从而允许开发人员设置和修改控件属性。就可以制 作 UG 风格对话框,实现不同的用户功能。 (7)UIStyler 能与 MenuScript 兼容,编辑产生的对话框可以被 MenuScript 生成的菜单调用,因此可以实现在 UG 菜单项上调用 UISytler 产生的对话框,从 而将用户应用程序和 UG 完全无缝链接。 2.2.2.2 UIStyler 的操作界面 在 UG Gateway 状 态 下 , 开 发 人 员 进 入 UG , 点 击 [Application] → [User Interface Styler]就可以进入 UIStyler 可视化界面,如图 2.3 所示。
菜单 控件编辑工具 “项目”工具栏

编辑对话框 对象浏览器

资 源 编 辑 器

图 2.3 UIStyler 可视化环境 Figure 2.3 UIStyler visual environment

19

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

UIStyler 可视化界面由菜单、编辑对话框、对象浏览器、资源编辑器、控件 编辑工具和“项目”工具栏 6 个部分组成。菜单提供了对话框及控件常用的操作, 包括文件、编辑、插入和对话框等;编辑对话框是把对话框制作环境中的各种操 作结果显示于 UG 界面,满足了用户可视化的人机交互;对象浏览器显示了在对话 框中用户选择和设置的控件信息;资源编辑器用于编辑对象浏览器中所用控件的 属性; “项目”工具栏列出多种对话框使用的控件。供开发者向对话框插入控件; 控件编辑工具列出了编辑控件的常用工具,在设计对话框上添加删除控件,进行 对话框界面的设计,此工具中的所有功能都包含于菜单中,只是把常用的工具通 过工具条显示于 UG 界面,方便用户快速的调用和操作。 2.2.2.3 UIStyler 控件介绍 控 件 名 称 第 一 行 从 左 到 右 依 次 为 静 态 文 本 (Label) 、 整 型 数 值 输 入 框 (Integer)、 浮点型输入框(Real)、 字符串输入框(string)、 宽字符串输入框(Wide String) 、 多 行 文 本 框 (Multi-Line Text Box) 、 按 钮 (Push Button) 、 复 选 框 (Toggle)、分隔线(Separator)、位图(Bitmap)、布局按钮(Button Layout)、下 拉列表框(Option Menu)、选项切换框(Option Toggle) 、单选按钮(Radio Box)、 工 具 组(Tool Palette)、整型数滑动条 (Integer Scale)、实型数滑动条 (Real Scale),第二行从左到右依次为单选列表框(Single Selection List)、多选列表 框(Multi Select List)、单选框(Selection Box)、滚动窗口(Scrolled Window)、 组群(Group)、可折叠组(Begin Collapsible Group)、行列组合(Row Column)、 选项卡控件(Tab Control)、属性页(Property Pages)、色彩工具(Color Tool) 等。UG/Open UIstyler 是由工具栏(Toolbar)、项目浏览器(Object Browser)、 资源编辑器(Resource Editor)、对话框编辑器(Design Dialog)四部分组成的, 通过这四部分,开发者可以很容易的构建符合用户要求的对话框。UIStyler 控件 控件工具如图 2.4 所示。

图 2.4 UIStyler 控件工具 Figure 2.4 UIStyler control tools

20

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

2.2.2.4 UIStyler 对话框的编辑 在设计编辑对话框的过程中,资源编辑器有“属性” “选择” “回调”三个 、 、 选项卡组成,如图 2.3 所示。三个选项的功能为“属性”选项是用于编辑对话框 的基本属性,其中包括对话框标题、提示信息、对话框前缀名称、调用对话框的 形式以及导航按钮等; “选择”是当对话框显示时,定义用户在 UG 图形窗口中的 选择; “回调”是对对话框中包含的回调函数进行选择和设置,使用资源编辑器的 功能来设置对话框的属性。 进入 UIStyler 编辑环境,从“项目”工具栏中选择所需的控件,根据自己的 要求,设置定义这些控件的属性信息,这些属性也可以通过编程来控制;用户还 可以利用所选控件工具的资源编辑器中的附着选项调整控件工具的尺寸大小和控 件工具间的位置关系,对各个控件进行合理布局。任何的对话框都可以利用资源 编辑器对控件的回调函数进行定义,当用户触发对话框控件时,系统就会响应该 消息并执行对应的回调函数。

如图 2.5 对话框的回调函数 Figure 2.5 Callback function of dialog

对话框回调函数分为基本回调函数与控件回调函数两种。对话框与用户程序 之间是通过对话框的基本回调函数相联系的, 风格对话框有 6 种基本回调函数, UG 如图 2.5 所示 :OK 回调函数、Apply 回调函数、Back 回调函数和 Cancel 回调函

21

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

数是一些基本的回调函数, 设计编辑一个对话框使用那些常用基本函数可以在 “回 调”选项中选定,与 VisualC++6.0 中相应的按钮功能相同,在该按钮被按下时执 行相应的回调函数。Constructor 回调函数用于执行对话框的初始化,在 UG 构造 对话框完成后、用户应用执行之前调用。由于此时对话框上的所有控件都可以被 使用,因此,此回调函数是初始对话框的最佳位置。Destructor 回调函数在 UG 破坏对话框之前被调用,用于完成对话框结束前用户所定义的需要处理的工作, 此时,对话框中的控件仍然可以被访问到。主要用于释放内存等析构操作。所有 的回调函数可以通过对话框资源编辑器来定义。控件回调函数是选择控件时,用 户运用 UG 调用的函数,是为了实现与程序的交互操作和数据的传递,把对话框中 一些控件(如输入框、单选列表框、下拉列表框和按钮等)定义的回调函数。 当由 UIStyler 设计用户自定义对话框的各种按钮、控件后,保存 UIStyler 编写的对话框时,用户选择自己需要保存的语言格式,一般情况下系统自动生成 3 个文件:*.dlg、*_template.c 和*.h 文件。这些文件是对所用资源的响应,是 通过*_template.c 和*.h 中的回调函数来响应,在回调函数中必须有对话框资源 文件名*.dlg,将这些控件身份识别号等参数传入,以便回调函数识别。*.dlg 是 保存 UIStyler 对话框图形界面的文件,非 ASCII 格式,不做为开发编辑,如果图 形界面有所改动,则必须重新生成,使用时需要把此文件放置于程序文件夹中的 开发目录 application 中,才可以被 UG 程序调用;*_template.c 是 UIStyler 对 话框 C 语言的模板文件,包括对话框中的各种定义和命令,可以对其进行编辑和 修改;*.h 文件是 UIStyler 对话框 C 语言的头文件,也是建立编程框架的主要组 成部分,包括对话框及其控件的标识符和函数原型的声明。生成的此对话框文件, 使用时先将*_template.c 模板文件的扩展名更改为.cpp,并复制移动到目标文件 目录下,添加到 VisualC++6.0 Workspace 环境中,再通过添加用户代码,编写相 应的函数,然后和添加到 VisualC++6.0 环境中的*.h 头文件一起编译链接生成 *.dll 动态链接库文件。 UIStyler 对话框的调用有三种方法: UserExit、 CallBack 和 Menu。User Exit 是指被用户接口调用;CallBack 是指该对话框被其它对话框 调用;Menu 是指被 MenuScript 编写的菜单调用。UIStyler 对话框可以调用 GRIP 或 API 编写的程序,而且其本身也可以为 MenuScript 菜单项所调用执行,这样可 以实现在 UG 菜单项上调用 UIStyler 产生的对话框, 使得用户的应用程序和 UG 完 全融合,实现了与 UG 系统无缝连接,方便用户与 UG 进行交互操作。这样就完成 了 UG 风格对话框的设计。 使用这个工具最大的优点是可以避免复杂的图形用户接 口编程,其设计对话框的方式与 VisualC++6.0 很相似,即利用对话框中基本控件
22

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

的组合生成不同的对话框,对话框中所有的控件设计都是可见即可得的。 但是 UG/Open UIStyler 开发的对话框只能基于 UG 平台使用,不能实现比较复杂的应 用程序交互界面的设计。

2.2.3 UG/Open MenuScript
2.2.3.1 用户菜单脚本 UG/Open MenuScript 二次开发者在进行本地开发时,菜单是人机交互最重要的方式之一,UG/Open MenuScript 不仅是创建用户化菜单和工具图标的工具,还是一种定义 UG 菜单的 脚本语言。在 UG 的开发环境下,它既支持 UG 主菜单和快速弹出式菜单的设计和 修改,通过它可以改变 UG 菜单的布局实现菜单用户化,还可以扩展 UG 功能菜单, 添加新的菜单项以执行用户二次开发程序、 User Tools 文件和操作系统命令等 [53]。 UG/Open MenuScript 提供有定制菜单的专用模块,利用它可以创建新的菜单,并 可以根据用户自己的要求,替换 UG 的原有菜单,也可以实现对 UG 某个菜单的编 辑并生成用户自己的菜单。通过 ACTIONS 命令来指定菜单对应的响应行为,例如 利用 UG/Open GRIP 或者 UG/Open API 编写程序,UG/Open UIStyler 编辑对话框, 从而实现与 UG 的无缝连接。并且它也可对工具条进行编辑和创建,生成菜单脚本 文件(*.men),并需要把此文件放置于文件中的 startup 文件夹中,以供 UG 启动 调用。此脚本文件不用 C 语言开发,简单方便,易学易用,非常适合设计开发人 员使用 [54]。开发者可以通过文本编辑器,可以用 Windows 记事本来制作,最后将 扩展名由*.txt 改为*.men 即可。 菜单文件的内容包括菜单形式的描述和菜单行为 的描述。应用 UG/open MenuScript 编程,有两种方法可以实现菜单的用户化: 添加菜单文件:开发人员添加菜单文件到相应的菜单目录下,这些菜单文件 是经过用户编辑的, 符合自己要求的菜单文件,是一种比较好的方法。 该方法简单、 易学,使用方便。 编辑标准菜单文件:开发人员编辑存在的标准菜单文件,使之符合自己的要 求,并且覆盖原来的菜单文件。这种方法就会改变 UG 原来的界面,不能恢复,须 谨慎使用 [55]。 2.2.3.2 菜单脚本文件的语法 结合本课题研究内容,制定本课题的个性化的菜单,下面是一个用 UG/Open MenuScript 开发的本课题三级菜单实例。 VERSION 120 菜单脚本文件的版本信息,兼容 Ugv120

23

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

EDIT UG_GATEWAY_MAIN_MENUBAR BEFORE UG_HELP CASCADE_BUTTON

编辑 UG 系统菜单 第一级菜单位于 Help 菜单之前

MOLD_SECONDARY_DEVELOPMENT_MENU

定义第一级菜单的 ID, 它是下拉菜单

LABEL 模架二次开发 END_OF_BEFORE MENU

CASCADE 按钮的标题“模架二次开发” 结束第一级菜单的编辑,与 BEFORE UG_HELP 相对应 编辑第二级菜单,是 MOLD_SECONDARY_DEVELOPMENT_MENU 的下拉菜单,其名称与之前的 CASCADE 按钮的名称相对应

MOLD_SECONDARY_DEVELOPMENT_MENU

CASCADE_BUTTON

PARTS_LIBRARY

定义第二级菜单的 ID,它是下拉菜单, 其名称为“PARTS_LIBRARY”

LABEL

零件库

CASCADE 按钮的标题为“零件库” 定义菜单中的分隔线 定义第二级菜单的 ID,它是按钮 BUTTON 定义 BUTTON 的标题为装配库 结束第二级菜单 MOLD_SECONDARY_DEVELOPMENT_MENU 的编辑 开始 PARTS_LIBRARY 子菜单的定义, 即编辑第三级菜单,其名称为 CASCADE_BUTTON、与 PARTS_LIBRARY 相对应

SEPARATOR BUTTON ASSEMBLY_LIBRARY LABEL 装配库

END_OF_MENU MENU

PARTS_LIBRARY

BUTTON SOLID_PLATE LABEL 定模座板

定义名为 SOLID_PLATE 的 BUTTON 定义 BUTTON 的标题为定模座板 定义 BUTTON 的相应行为,运行 UIStyler,打开 执行名为 SOLID_PLATE_ACTION 的对话框

ACTIONS SOLID_PLATE_ACTION

BUTTON FIXED_CLAMP_PLATE LABEL 定模板

定义名为 FIXED_CLAMP_PLATE 的 BUTTON 定义 BUTTON 的标题为定模板 定义 BUTTON 的相应行为,运行 UIStyler,

ACTIONS FIXED_CLAMP_PLATE_ACTION

打开执行名为 FIXED_CLAMP_PLATE_ACTION 的 对话框 BUTTON MOLD_SCREW LABEL 内六角圆柱头螺钉 定义名为 MOLD_SCREW 定义 BUTTON 的标题为内六角圆柱头螺钉
24

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

ACTIONS MOLD_SCREW_ACTION

定义 BUTTON 的相应行为,运行 UIStyler,打开 执行名为 MOLD_SCREW_ACTION 的对话框

BUTTON LABEL

DIE_SLEEVE 导套

定义名为 DIE_SLEEVE 定义 BUTTON 的标题为导套 定义 BUTTON 的相应行为,运行 UIStyler,打 开执行名为 DIE_SLEEVE_ACTION 的对话框

ACTIONS DIE_SLEEVE_ACTION

BUTTON LABEL

PUSHING_PARTS_PLATE 推件板

定义名为 PUSHING_PARTS_PLATE 定义 BUTTON 的标题为推件板 定义 BUTTON 的相应行为,运行 UIStyler,打开执行名为 PUSHING_PARTS_PLATE_ACTION 的 对话框

ACTIONS PUSHING_PARTS_PLATE_ACTION

BUTTON LABEL

MOVABLE_MOULD_PLATE 动模板

定义名为 MOVABLE_MOULD_PLATE 定义 BUTTON 的标题为动模板 定义 BUTTON 的相应行为,运行 UIStyler,打开执行名为 MOVABLE_MOULD_PLATE_ACTION 的 对话框

ACTIONS MOVABLE_MOULD_PLATE_ACTION

BUTTON LABEL

SUPPORT_PLATE 支撑板

定义名为 SUPPORT_PLATE 定义 BUTTON 的标题为支撑板 定义 BUTTON 的相应行为,运行 UIStyler,打 开执行名为 SUPPORT_PLATE_ACTION 的对话框

ACTIONS SUPPORT_PLATE_ACTION

BUTTON LABEL

SPACER_PARALLEL 垫块

定义名为 SPACER_PARALLEL 定义 BUTTON 的标题为垫块 定义 BUTTON 的相应行为,运行 UIStyler, 打开执行名为 SPACER_PARALLEL_ACTION 的对话框

ACTIONS SPACER_PARALLEL_ACTION

BUTTON LABEL

MOVING_CLAMP_PLATE 动模板座

定义名为 MOVING_CLAMP_PLATE 定义 BUTTON 的标题为动模板座 定义 BUTTON 的相应行为, 运行 UIStyler, 打开执行名为 MOVING_CLAMP_PLATE_ACTION 的对话框
25

ACTIONS MOVING_CLAMP_PLATE_ACTION

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

BUTTON LABEL

PUSHING_PLATE 推板

定义名为 PUSHING_PLATE 定义 BUTTON 的标题为推板 定义 BUTTON 的相应行为, 运行 UIStyler, 打开执行名为 PUSHING_PLATE_ACTION 的 对话框

ACTIONS PUSHING_PLATE_ACTION

BUTTON LABEL

PUNCHER_PLATE 推杆固定板

定义名为 PUNCHER_PLATE 定义 BUTTON 的标题为推杆固定板 定义 BUTTON 的相应行为, 运行 UIStyler, 打开执行名为 PUNCHER_PLATE_ACTION 的 对话框

ACTIONS PUNCHER_PLATE_ACTION

BUTTON RETURN_PIN LABEL 复位杆

定义名为 RETURN_PIN 定义 BUTTON 的标题为复位杆 定义 BUTTON 的相应行为, 运行 UIStyler, 打开执行名为 RETURN_PIN_ACTION 的对 话框

ACTIONS RETURN_PIN_ACTION

BUTTON GUIDE_PILLAR LABEL 带头导柱

定义名为 GUIDE_PILLAR 定义 BUTTON 的标题为带头导柱 定义 BUTTON 的相应行为, 运行 UIStyler, 打开执行名为 GUIDE_PILLAR_ACTION 的 对话框

ACTIONS GUIDE_PILLAR_ACTION

BUTTON STRAIGHT_GUIDE LABEL 直导套

定义名为 STRAIGHT_GUIDE 定义 BUTTON 的标题为直导套 定义 BUTTON 的相应行为, 运行 UIStyler, 打开执行名为 STRAIGHT_GUIDE_ACTION 的对话框

ACTIONS STRAIGHT_GUIDE_ACTION

BUTTON GUIDE_BUSHES LABEL 带头导套

定义名为 GUIDE_BUSHES 定义 BUTTON 的标题为带头导套 定义 BUTTON 的相应行为, 运行 UIStyler, 打开执行名为 GUIDE_BUSHES_ACTION 的 对话框

ACTIONS GUIDE_BUSHES_ACTION

END_OF_MENU

结束第三级菜单 PARTS_LIBRARY 的的编辑

保存以上添加的脚本文件,先通过在“我的电脑”上单击鼠标我的右键→选
26

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

择[属性]→切换到“高级”选项卡→单击[环境变量],注册环境变量,将用户工 程路径注册到变量名 UGII_USER_DIR 下的变量值中,然后启动 UG,在主菜单中将 出现如图 2.6 所示的菜单项。

图 2.6 菜单文件运行结果 Figure 2.6 Run result of menu file

2.2.4 UG/Open API
2.2.4.1 UG/Open API 功能概述 UG/Open API(Application Programming Interface,应用编程接口)又称 作 User Function,是 UG 与外部应用程序之间的软件接口 [56],它是 UG 提供的一 系列函数和过程的集合。UG/Open API 是 UG 中的一个重要模块,是 UG 用户最常 用的二次开发工具之一 [57],UG/Open API 开发工具不仅提供了编译和连接程序的 工具, 况且它还支持 C、 C++、 Fortran 和 Java 等主要高级语言, 头文件支持 ANSIC, 用户可以通过高级语言编程来调用这些函数和过程,来实现 UG 中的功能。主要可 以实现以下功能 [58-61]: (l)可以调用函数和过程,通过这些函数和过程可以访问文件管理器、UG 图形界面的终端和 UG 本身的数据库,对 UG 文件及相应模型进行操作,包括 UG 模 型的构建、编辑、装配体的建立、查询 UG 模型、遍历 UG 装配体和工程图等。 (2) 提供了 UG 内部的交互接口, 实现了在 UG 主界面中创建交互式程序界面。 (3)用于用户化定制 CAD 环境、开发在 UG 软件平台上的专用软件、开发 UG
27

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

软件与其它 CAD 软件的接口。 (4) 通过用以连接和运行用户应用程序的命令, 创建并管理用户定义对象等。 UG/Open API是一个允许程序访问并改变UG对象模型的程序集,其编程实质是 利用UG软件自带的API函数进行编程,实现UG软件和外界的交互式操作。UG/Open API封装了近2000个UG操作函数,用户可以通过它可以对U G 的图形终端、文件管 理系统和数据库进行操作,几乎所有能在UG系统的所有功能都可以通过UG/Open API的编程实现,从而它的运行效率和功能都比UG/Open GRIP要强大得多。 UG/Open API 不但支持标准 C 数据类型和 UG 编程所需的数据类型和结构, UG/Open API 还支持 ANSIC 的头文件,而且当用到 UG/Open API 函数时都要在程 序 的 开 头 添 加 UG 特 有 的 头 文 件 。 这 些 函 数 和 过 程 分 别 定 义 在 $[UGII_USER_DIR]/UGOPEN 目录下的头文件中定义。 下面给出常用的部分 UG/OPEN API 头文件名及简单描述见表 2.1。
表 2.1 常用头文件名称及其描述 Table 2.1 Common header file name and description

头文件名称
uf.h uf.mb.h uf_assem.h uf_attr.h uf_defs.h uf_modl.h uf_obj.h uf_part.h uf_exit.h uf_disp.h uf_styler.h uf_ui.h uf_view.h uf_object.h

头文件描述 UG/Open API的公共类型和函数定义 与MenuScript中对象的属性相关的函数和数据结构定义 与装配相关的函数和数据结构定义 与部件及对象属性相关的函数和数据结构定义 UG/Open API接口函数所需要的类型定义及结构定义 与模型创建、查询相关的函数和数据结构定义 与UG对象及属性相关的函数和数据机构定义 与部件操作相关的函数和数据结构定义 与用户出口相关的函数和数据结构定义 与显示相关的函数及结构定义 UIStyler相关的函数和数据结构定义 与用户界面功能相关的函数和数据结构定义 与视图操作、查询相关的函数和数据结构定义 UG对象的类型定义

2.2.4.2 UG/Open API 的运行环境 UG/Open API 程序有两种不同的运行环境(依赖于程序的连接方式 ):外部
28

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

(External)环境和内部(Internal)环境。由于运行环境的不同,把 UG/Open API 程序分为外部程序(External UG/Open API 程序)和内部程序(Internal UG/Open API 程序)[62]。用户可以根据自己的开发需求,选择不同的开发环境,编译实现自 己的程序。 (1) 外部(External)环境 外部环境是指程序的执行是在操作系统中进行而不进入 UG 环境中,这一执行 过程是不能进行交互式操作的。使用外部模式的应用程序编译生成的是一个独立 的 可 执 行 程 序 ( EXE 文 件 ) 外 部 开 发 模 式 的 程 序 能 在 操 作 系 统 (Windows 。 NT/2000/XP 及 UNIX)下单独运行,只作为操作系统中子进程存在,不在 UG 环境中 作为 UG 的子进程运行,UG 前台界面不能交互显示输出的信息。该模式多用于数 据的管理而不是几何的操作。外部模式通常用于那些不需要图形界面的后台运行 应用程序,如打印机、绘图仪输出、数据库管理和创建 CGM 文件等。在不需要对 模型进行显示的情况下,用户可以使用外部模式应用程序构造和编辑模型。外部 程序的主函数形式为 [58]: #include<uf.h> /*Additional include files as required*/ int main(int argc,char **argv) {/*variable declarations*/ UF_initialize(); /*TODO:Add your application code here*/ UF_terminate();} (2) 内部(Internal)环境 内部环境运行的程序是指程序只能在 UG 环境下运行, 根据所编制的程序进行 交互式操作。使用内部环境编写的应用程序是一个动态链接库(DLL 文件) ,只能 加载到在 UG 的环境下运行。与外部程序相比较,内部程序的执行更快,占用内存 更少。绝大多数的 UG/Open API 函数即适合外部程序也适合内部程序,只有少数 的 API 函数仅仅适合于内部程序。运行在 UG 内部的 API 程序通过动态链接成为 UG 的一部分,并可以与用户进行交互操作,实现与 UG 的无缝集成。针对于不同 运行环境的 UG/Open API 程序,其程序的入口是不同的 [63]。该模式的特点是: (l)编译程序代码小,连接快。 (2)通过 UG 界面的图形窗口,可以查看运用 UG 的交互界面创建模型,编辑 表达式,编译程序的运行结果。
29

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

(3)Internal 的程序被加载到 UG 系统分配内存后,即可作为常驻内存进驻 UG 进程的子进程,重复使用无需重新加载,只能通过 UG/Open API 的卸载功能才 能从 UG 的运行环境中卸载它。 (4)内部模式应用程序标准的入口函数是 ufusr()或 ufsta()。 内部程序的主函数形式为: extern"C"DllExport void ufsta(char *param,int *returnCode,int rlen) {/*Initialize the API environment*/ int errorCode=UF_initialize(); if(0==errorCode) {/*TODO:Add your application code here*/ /*Terminate the API environment*/ errorCode=UF_terminate();} /*Print out any error messages*/ PrintErrorMessage(errorCode);} 2.2.4.3 UG/Open API 应用程序的初始化和终止方式 无论是内部模式还是外部模式,所有 UG/Open API 程序必须正确地初始化和 终止,以取保获取和释放 UG/Open API 的执行许可权限(License) 。用户在使用 UG/Open API 应用程序时,必须调用函数 UF_initialize()和 UF_terminate()来 实 现 这 项 功 能 。 声 明 变 量 之 后 第 一 个 UG/Open API 调 用 函 数 必 须 是 UF_initialize(), 以便获得应用程序的执行许可权限。 在程序执行完程序运作后, 必须选用函数 UF_terminate()终止释放执行许可权限。 2.2.4.4 UG/Open API 的数据类型 任何一种编程接口或者编程语言都有适合自己的数据类型,UG/Open API 编 程接口是由 C 语言的语法格式构成,也支持 C 语言的标准数据类型。UG/Open API 除 了 使 用 了 C 言 语 的 基 本 数 据 类 型 , 还 大 量 的 应 用 了 C++ 类 型 定 义 , 例 如 structures 结构体) enums 枚举) unions 共用体) pointers 指针) constants ( 、 ( 、 ( 、 ( 、 (常量)、string(串)等。 UG/Open API 数据结构的命名与函数的命名方法相似,通过命名后缀规范来 实现,定义数据结构的类型规范如下: _t _p_t 数据类型(Data type) 数据类型的指针(Pointer to the type)
30

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

_s _u_t _u_p_t _f_t

结构标识(Structure tag) 共用体类型(Union type) 共用体类型的指针(Pointer to a union type) 函数指针(Pointer to a function)

tag_t 类型是 UG/Open API 使用最多的数据类型之一,该数据类型实际上是 无符号整型数据。 参变量列表中都有一个 tag_t 指针或 tag_t 类。 它在 UG/Open API 头文件 uf_def.h 中定义为: Typedef unsigned int tag_t,*tag_t; 在 UG 环境中,tag_t 是 UG 对象的句柄,即 UG 对象模型的唯一标识,能把 UG/OpneAPI 和对象模型联系起来。通过 tag_t 来对 UG 模型部件、曲线、属性、 草图和表达式等对象内容进行操作。 2.2.4.5 UG/Open API 函数名称及参数规范 UG 的二次开发的本质就是通过对 UG/Open API 函数的集成与组合来实现相 应的功能。 (l)UG/Open API 函数命名规范 UG/Open API 采用两类名称约定方式:遗留函数命名规范和标准函数命名规 范。遗留的名称约定是 UG 旧版本所采用的约定方式,其一般格式是 uc<数字>和 uf<数字>。其中 uc 和 uf 代表 UG/Open API 的 C 函数,<数字>通常是 4 位数或者 3 位数加一个字母组成, 表示不同的函数功能。 标准的函数名称的一般格式为 UF_< 模块或应用字母的缩写>_<动作:名词+动词>。其中,UF_表示 UG/Open API 函数; <动作: 名词+动词>部分常用的动词有 ask(查询)、 copy(复制)、 edit(编辑)、 set(设 置)、delete(删除)、create(创建)等。 (2)UG/Open API 函数的参数 UG/Open API 函数的参数都是由 C 语言编写,都遵守 ANSI/ISO C 的标准,其 函数定义的一般格式为: <返回数据类型><函数名>(参数列表) 返回数据类型通常是 UG/Open API 自定义数据类型或 C 数据类型。参数的输 入输出方式有 3 种:Input、Output 和 Output Free。Input 表示输入参数,参数 在使用前必须赋值; Output 表示输出参数,使用前无须赋值;Output Free 表示 输出参数,使用完毕参数后必须要释放所占内存。

2.2.5 User Tools
31

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

用户工具(User Tools)是一种生成用户对话框的工具,为用户提供一个调 用二次开发结果的交互式接口。它有两种功能:其一是生成弹出式对话框或工具 条;其二是在 UG 主菜单的 User Tools 下拉菜单中添加用户项。用户工具生成的 界面风格和 UG 界面一致,通过它可运行宏文件、对话框文件、UG/Open GRIP 及 UG/Open API 程序。用户工具生成的文件扩展名有菜单定义文件*.utm 和对话框定 义文件*.utd,这两个文件都可用微软中的写字板制作,最后只需要修改扩展名即 可 [64-65] 。用户使用此工具对话框或工具条中的一个按钮来调用由多个 UG/Open GRIP 或 UG/Open API 组成的程序集,使用起来就比较方便。

2.2.6 二次开发工具之间的关系
二次开发工具之间的关系如图 2.7 所示 UG/Open MenuScript UG/Open User Tools

UG/Open UIStyler

UG/Open GRIP

UG/Open API

图 2.7 二次开发工具之间的关系 Figure 2.7 The relationship between the secondary development tools

2.3 本章小结
本章首先简要的介绍 UG 软件系统,并在对 UG 软件功能,特点做了详细的阐述 的基础上, 着重论述了 UG 二次开发工具的功能、 使用方法和技巧, 分别对 UG/Open GRIP、 UG/Open UIStyler、UG/Open MenuScript、 UG/Open API 和 UG/Open User Tools 等开发工具和他们之间的接口逐个详细分析和说明。利用这些工具去设计本系统 应用程序,实现与 UG 软件的集成。

32

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

3 模架库系统开发关键技术及应用
3.1 参数化设计技术
3.1.1 参数化设计原理
参数化(Parametric)设计 [66]是指通过修改尺寸变量而实现对参数化模型的修 改的设计方法,提供给设计开发着建模造型使用。在参数化设计过程中,用户无 需进行干预,由 CAD 系统对整个图形的约束集进行分析和求解。参数的求解较简 单,参数与设计对象的控制尺寸有显式对应关系,设计结果的修改受尺寸驱动, 所以也称为尺寸驱动(Dimension-Driven)。C.M.Hoffmann,K.J.Kim[67]提出参数化 技术是 CAD 软件的一项重要技术,使参数化 CAD 逐步应用于现代的设计制造中, 不仅 CAD 系统具有交互式绘图功能,还具有自动绘图的功能。参数化设计是新一 代智能化、集成化 CAD 系统的核心内容,也是当前新一代继承化三维 CAD 系统应 用研究的热点理论 [68-69]。 九十年代中期以来随着基于知识的参数化理论逐渐完善, 参数化方法在实践生产中得到广泛应用,不但提高了图形设计智能化水平,而且 大大提高设计效率,还减轻设计人员的工作强度,尤其保证了产品设计的质量。 参数化设计是在设计中产品结构形式确定的情况下,根据某些具体的条件和参数 信息来获取和得到产品的结构参数,从而设计出不同规格的产品。其本质是通过 修改驱动尺寸变量来生成新产品,利用计算机来进行参数化 CAD 设计和优化,只 需输入图形零件的几个关键参数变量,就会自动准确地生成工程图样。 Buchanan S Alasdair,Alan de Peddington [70]等人提出了结构约束、尺寸约 束、自定义约束、为参数化提供了好的约束方法,确定设计草图的若干尺寸和拓 扑关系,系统就可以自动生成相应的设计图样,我们将这一求解过程称为几何约 束求解,随后 B D McGinnis,D G Ullman[71]把几何约束表示为 C=(T,Q1,Q2,V), 其中:C 表示约束;T 表示约束类型;Q1,Q2 表示约束对象;V 表示约束值。参数 化设计的实质就是根据各个图形中元素之间的约束类型,找出各个图形中元素之 间的约束对象,确定各个图形中元素之间的约束值。在实际应用过程中,提取图 形中各元素对象的几何和拓扑结构信息,分析出各元素对象之间的约束关系,在 保持原图形的拓扑结构关系不变的基础上,通过改变图形的几何尺寸参数,实现 图形随尺寸的修改而变化,从而完成产品的系列化设计。与传统的 CAD 技术方法
33

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

相比,参数化设计方法存储了设计的整个过程,不仅能设计出单一的产品模型, 而且能够设计出系列化的产品模型。采用参数化设计,可以通过控制模型程序的 参数变量来编辑和修改几何尺寸变量,自动实现产品的精确造型设计。 参数化设计技术以其强有力的草图设计、尺寸驱动修改图形的功能、成为初 始设计、产品建模及修改、系列化设计、多种方案比较和动态设计的有效手段 [72]。 参数化设计在 CAD 系统中是通过参数驱动机制实现的,参数驱动机制是基于对图 形数据的操作,通过尺寸驱动进行控制,能够将产品的设计要求、设计目标、设 计原则、设计方法和设计结果用可以改变的参数和明确统一的模型来表示,并通 过参数驱动机制对图形的几何数据进行参数化修改,以便在人机交互过程中实现 图形模型的参数变量的转换。但是,在修改参数变量的同时,还要满足图形的约 束条件,参数与产品模型的控制尺寸相关联,需要约束关联性的尺寸手段来约束 联动,通过修改产品模型的参数尺寸就可以得到结构相同尺寸不同的产品,实现 产品模型的自动化生成与修改, 因此参数化技术适合于全相关设计和系列化设计, 可以提高产品设计的效率和智能化水平。

3.1.2 参数化模型
模型用来表示实际的或抽象的物体和现象。模型开发首先起源于实体建模, 逐步走上参数化建模。参数化模型是把参数化模型的尺寸用对应的关系表示,而 不需用确定的数值,只需变化其中一个参数值,则与其相关的尺寸也随之更新变 化 [73]。参数化模型有多种形式,如几何参数模型、数学参数建模、物理参数建模 和力学参数模型等等。建模技术是 CAD 的核心技术,参数化技术是建模技术的核 心技术之一。参数化设计首先要根据需要建立正确合适的模型,方便对被选择对 象的结构进行计算、分析、模拟、优化和研究,进而为参数化设计提供了基础。 实 体 几 何 模 型 理 论 的 发 展 可 以 追 溯 到 1970 年 , Nguyen C,Lafon J.C [74] 利 用 CSG(Constmetive Solid Geometry)方法将所建立的实体先大致描述出来,然后再 将这个实体转换为以 B-REP(Boundary-Representation)方法建立的造型表示出 来。随着计算机的发展普及,逐渐用计算机表示、控制、分析和输出几何实体, 已成为 CAD/CAE/CAM 系统中的关键技术 [75]。几何模型是 CAD/CAE/CAM 中最常用的 模型 [76],可以表达出产品的信息 [77],它是对诸如零件形状、结构特性和几何特性 等与零件描述相关的信息集的实体,是反映零件特点结构,能够为图形的显示和 输出提供信息。 在 CAD/CAE/CAM 的应用中,通常利用几何模型进行具体的对象操作,实现开

34

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

发设计的工程模型。在对实体的表达和描述过程中,几何模型恰能反映出实体的 拓扑信息和几何信息。所谓拓扑信息是指物体的拓扑元素(顶点 Vertex、边 Edge 和表面 Face)的个数、类型以及它们之间相互关系的信息,反映了物体几何元素 之间的邻接关系;几何信息是指一个物体在三维欧氏空间中的位置信息,反映了 物体的大小及位置 [78]。在 CAD 系统的开发设计中,不同型号类型的产品往往只是 结构相同而尺寸不同,映射到几何模型中,就是拓扑信息相同而几何信息不同 [79]。 参数化模型是根据捕捉模型中几何元素之间的约束关系建立的,将几何图形表示 为由几何元素及其约束关系组成的几何约束模型,通过一组参数约束模型的一组 尺寸序列。把图形文件赋予不同的参数序列,就可以驱动原有几何模型达到新的 目标几何图形,实现高效建模和模型修改,从而大大提高产品设计的效率,并能 够有效保证产品模型的安全可靠性。 参数化建模的关键在于确定和建立几何约束关系 [80], 通过几何约束可以确定 几何元素在空间的形状与位置等重要参数。 几何约束包括尺寸约束和结构约束 (也 称拓扑约束) [81-82]。结构约束是对产品结构的定性描述,表示几何元素拓扑和结 构上的关系,如平行、垂直、相切、对称等,这些关系在图形的尺寸驱动过程中 保持不变。尺寸约束是对产品结构的定量描述,通过尺寸标注控制结构中几何元 素之间的位置关系,如直径尺寸、距离尺寸、角度尺寸等,作为参数化驱动的目 标对象。因此,所建立的参数化模型必须满足以下两点: (1)确定产品结构中几何元素之间的约束关系,使其与几何拓扑关系保持一 致,以保证在图形参数变量变化的情况下,几何结构形状不能变化。 (2)建立几何信息和参数的对应机制,让图形的控制尺寸由一组参数约束, 保证模型结构,设计参数的修改受到尺寸的驱动,通过尺寸修改去更新模型结构, 实现参数化设计。

3.1.3 参数化设计在本课题中的应用
模架通常是指模具的通用成套基础件。是一种按一定规律和位置加以组合, 并能装配到模具生产设备上的装置,主要固定支撑模具各部分,目前已成为应用 广泛的一种装置,由于存在使用企业、行业、国家的标准差别而形成了一个个的 系列产品,造成了资源的浪费。随着模具标准化速度的加快,我国自从 1984 年以 来陆续制定实施了大量的标准,模架逐步实施了标准化和规格化,并由专门公司 大量制造。标准化的产品在结构和设计上,存在大量相似性,只是尺寸大小的不 同,如果各个反复地去设计,重复工作量庞大,极大地浪费了人力、物力资源,

35

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

延长了设计周期,大大降低了设计效率。 参数化设计技术的理念很好的帮助我们解决这种难题。特别是基于参数化技 术的 UG 二次开发为我们提供了清晰地思路, 参数化设计的基本手段有尺寸驱动和 程序驱动 [83]。利用 UG 提供的参数化功能模块实现模型的设计变量驱动,即在模型 构建过程中用变量来控制模型的几何尺寸并约束尺寸关系。还可以用程序实现模 型参数化设计,即利用 UG 提供的系统开发环境应用程序接口,通过编程生成执行 文件供 UG 调用以实现模型参数设计。前者主要是利用 UG 的全参数化功能,通过 设计参数变量控制模型的形状和大小,这种方法的好处是用户可以直接修改变量 表中的参数实现对模型的修改和编辑。但此方法对使用者的要求较高,需要使用 者熟练掌握 UG 的实体造型、装配以及对变量表的编辑等使用技巧。后者是根据需 求编辑相应的程序,去调用 UG 文件包中的函数,来实现各个功能。这是完全的程 序驱动,把一系列形状相似的模型通过编译生成程序,再把模型的各种参数存储 于数据库,从数据库界面中选择所需的零件型号生成相应的模型。该方法程序编 程量大,结构繁琐复杂,对设计开发人员的要求较高,前期投入比较大,但是对 使用者后期来说,程序扩充变换简单,编译和调用灵活,使用简便,可以大大缩 短产品设计开发周期,提高设计开发效率。所以该开发方法多用于标准系列化产 品参数化设计的设计和开发。 参数化建模的首要步骤是对零部件进行形体结构分析 [84]。所以在对注塑模标 准模架进行参数化建模之前,首先要分析模架组成零件的结构信息,比较各个零 件的结构形状,罗列出各个零件的约束关系,确定各个零件的几何尺寸。从中找 出设计参数变量和约束参数关系,进一步确定参数变量和建模策略,然后进行参 数化建模以及参数提取,最后进行模型的验证。如图 3.1 注塑模标准模架的结构 组成实例所示 [85]。经过对注塑模标准模架的彻底分析可得,注塑模模架一般由模 板、垫块、导柱、导套、复位杆、顶杆和用于固定的螺钉、销钉等组成,此模架 零件按结构形状可分为板类零件和轴类零件两大类。板类零件主要特征参数尺寸 包括模板的长度、宽度和厚度以及模板上的圆孔孔径及其定位尺寸。轴类零件主 要特征参数尺寸一般是直径、长度等。在完成零件结构分析的基础上,逐步细化 各个零件的结构信息,获取各个零件的结构尺寸参数和约束参数,进而选择一定 的信息平台,实现零件尺寸参数和非尺寸参数的表达,建立可变型的零件模型。 在完成所有注塑模标准模架的相关零部件模型参数库建立后,所有的模型提供一 定的结构参数化功能,然后通过参数设置,采用程序自动完成尺寸修改更新模型 的方法,设计各类不同规格的产品。
36

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

图 3.1 注塑模标准模架的结构组成实例 Figure 3.1 Structure composition examples of standard mould base of injection mould 1-定模座板;2,7-内六角螺钉;3-定模板;4-推件板;5-动模板;6-支撑板;8-垫块; 9-动模座板;10-内六角螺钉;11-推板;12-推杆固定板;13-复位杆;14-带头导柱; 15-直导套;16-带头导套

3.2 数据库管理技术及应用
3.2.1 数据库管理技术
在注塑模标准模架的设计过程中,客户使用不同的标准,经常需要用到不同 的标准模架,模架零件参数的获得和修改,通常的方法是人工查阅机械手册,这 样浪费了大量的时间。所以模具设计系统强烈需要一个数据库的支持,以储存大 量的数据,方便对数据的管理和更新,还能不断补充新的设计,以使软件不断地 进行更新,保持长久的生命力和竞争力 [86],在注塑模标准模架零件库系统中利用 数据库技术,将该每个标准模架零件的标准参数尺寸保存在数据库中,需要时直

37

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

接选择调用所需的标准数据,实现了即调即输的快捷操作,从而方便零件的设计, 提高了设计效率。 数据库 (Database) 按照数据结构来组织、存储和管理数据的仓库,即将现实 世界中的信息以计算机所能识别的数据模型存储于计算机中,为用户提供数据服 务的数据集合。数据库管理系统(Database Management System)是位于数据库与 用户之间用于建立、使用、操纵、管理和维护数据库数据的管理软件,简称 DBMS。 数据库管理系统用于管理存储在计算机数据库内的数据,为进一步二次开发提供 了良好的数据库保障 [87]。面向不同对象的处理建立不同数据库管理系统 [88],采用 不同的面向对象数据库管理系统设计方法。它对数据库进行统一的控制和管理, 可以有效地对数据库中的数据进行定义与访问。 用户不但能通过 DBMS 访问数据库 中的数据,而且数据库管理员也可以通过 DBMS 进行数据库的维护工作。它提供多 种功能,不仅可使多个应用程序和用户用不同的方法在同时或不同时刻去建立, 修改和询问数据库。还能使用户能方便地定义和操纵数据,维护数据的安全性和 完整性,而且能进行多用户下的并发控制和恢复数据库。 SQL(Structured Query Language)是在 20 世纪 70 年代创建的一种为关系 数据库管理系统(Relational Database Management System,RDBMS)模型开发的 一种查询语言。SQL 语言允许用户在高层数据结构上工作,主要功能包括查询、 操作、定义和控制,是一个综合的、通用的关系数据库语言,同时又是一种高级 非过程化编程语言。它既不要求用户指定对数据的存放方法,也不需要用户了解 具体的数据存放方式,具有完全不同底层结构的不同数据库系统,可以使用相同 的 SQL 语言作为数据输入和管理的接口。SQL 能够集成实现了整个数据库生命周 期中的全部操作功能,提供了与关系数据库进行交互链接的方法,它可以支持标 准的编程语言。SQL 语言结构简洁,功能强大,简单易学,SQL 语言得到了广泛的 应用。比如 Oracle、FoxPro、Sybase、Microsoft SQL Server、Access、DB2、 Informix 等都采用了 SQL 语言标准。SQL 是一门 ANSI 的标准计算机语言,用来访 问和操作数据库系统。SQL 不仅能取回和更新数据库中的数据,还可与数据库程 序进行协同工作。UG/Open API 具有很强的编辑功能,通过编译可以调用 UG 文件 中的内部函数,去实现所有的 UG 的指令,但是对数据库的管理以及可视化交互却 不方便。所以本系统利用 Microsoft Visual C++ 6.0 强大的编程链接接口,对 SQL 关系数据库系统兼容性,创建链接模架结构数据库,主要完成以下几个功能: UG 和 SQL 数据库的联结,数据的录入和功能模块的调用,还有数据库链接程序的 编制 [89]。
38

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

本论文的开发目标是能完成从模架总体设计到装配实体造型的建立和开发, 主要是把数据库运用于零件模型程序中,实现数据库技术和参数化模型程序的结 合,能在数据库的基础上实现图形自动生成绘制,并从中根据用户的需求选择数 据库中合适的标准型号。首先设计人员输入原始参数数据,不仅用来驱动本次设 计过程,同时也能为同类相似结构产品设计提供参考,还可以改变输入的参数变 量,这些输入的原始数据要利用数据库保存;在需要使用的过程中,需要从数据 库读出零部件几何、拓扑信息,材料信息,领域知识信息,设计数值计算所需的 各种标准数据信息,为了更加有效地存储和管理数据库各类数据,使系统各个模 块既能共享公共数据资源,又可保持数据的独立性和完整性,避免不必要的数据 冗余,本论文采用了数据库管理技术。

3.2.2 数据库管理技术应用
注塑模标准模架的零件参数化设计中所有需要的参数都是根据国家标准选取 制定的,而作为参数化系统中生成三维模型的输入数据原始依据。然后,将 ODBC (Open DataBase Connectivity)技术用于开发的应用程序中,可以实现 UG 与外 部数据的连接,实现参数化设计,使数据库操作简单方便,大大缩短开发时间。 为了便于应用和管理,在 Microsoft SQL Server 关系数据库中建立相应的表格, 采用 ODBC 做程序设计接口,可方便有效地访问外部数据库。 ODBC 是为用户应用程序访问关系数据库提供统一的接口, 对于不同的数据库, 它规定了统一规范,并提供了统一的对数据库访问的标准 API。数据库使用标准 的 SQL 作为其数据库访问语言,只有使用此语言才能去操作、处理和访问。使应 用程序可以应用所提供的标准 API 来访问任何提供了 ODBC 驱动程序的数据库。 一 个基于 ODBC 的应用程序对数据库的操作不依赖于任何的 DBMS,所有操作由对应 的 DBMS 的 ODBC 驱动程序完成。 即无论是 FoxPro、 Sybase、 Microsoft SQL Server、 Access 还是 Oracle 数据库,均可用 ODBC API 进行访问。因此,ODBC 的最大优点 是能以统一的方式处理所有的数据库 [90]。 在产品的设计开发过程中,针对众多的几何和非几何设计参数,我们可以选 择数据库去储存,但我们如何让其快速交互和维护,是我们急需解决参数化设计 系统开发中所面临的技术瓶颈和难点。设计参数管理系统的性能是检验我们设计 的参数化设计系统实用性和可靠性的试金石。我们在通常的产品设计中,产品设 计参数之间的传递功能是从上到下的,总体设计阶段确定的参数将传递到下面的 部件设计或零件设计中被直接使用和调用,避免部件或零件参数数据繁琐的输入

39

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

和修改。所以,在设计参数管理系统之前必须要建立设计参数的数据库,以便充 分保证设计的正确性,奠定继续设计开发的基础;其次是对设计参数数据库进行 输入、修改、存储、调用、追加等功能操作,实现各个功能的统一管理,即可实 现把参数变量输入并存储于数据库,再从参数数据库中读取数据,修改数据库中 的数据,进而根据用户需要可在原始数据中追加若干参数的记录,还可在数据库 中增加多个数据文件等功能。 由于注塑模标准模架标准尺寸的多样化,在注塑模标准模架设计过程中一般 需要查询相当多的数据资料,数据库可以支持 UG 软件的的应用:开放式的数据库 连接接口 ODBC 是 Microsoft Windows 开放服务体系(WOSA)的一个组件,它提供了 一整套的应用程序接口(API)函数,使开发人员可以方便地同许多数据库格式相 连。本文将利用 ODBC 技术与 Microsoft Visual C++ 6.0 的支持,实现 UG 软件与 数据库的连接,使得设计所需要的数据可以随时得到,并在不断的使用过程中使 设计经验数据库得以扩充,从而达到方便设计的目的。数据库采用了微软的 SQL Server 2000。 数据库技术在本系统中的应用主要表现在两个方面:一是建立注塑模标准模 架零部件的设计参数数据库,输入并储存标准件的参数变量,通过接口函数调用 数据库中的参数,实现三维自动造型。二是通过 ODBC 数据库接口技术,用户可以 方便的执行对设计参数数据库进行查询、调用、修改、添加等访问和操作,实现 了设计开发的灵活性。 其中,该技术用于 UG 二次开发的参数化零件设计总体思路是:用交互方式创 建 三 维 原 始 模 型 , 并 利 用 UG 的 参 数 功 能 建 立 设 计 参 数 和 尺 寸 关 系 , 然 后 在 Microsoft SQL Server 关系数据库中建立相应的表格。通过 Visual C++映射一个 CRecordset 类对象,用于交互,最后由 UG/Open API 应用程序检索出模型的设计 参数,根据数据源对象输入参数并再生模型,从而将功能强大的 UG 与先进的数据 库管理系统有机结合起来。

3.2.3 数据库管理技术的连接[ 91]
本系统中的数据库管理采用客户机/服务器结构(Client/Server)结构, C/S 即 结构。在 C/S 结构中,它是由客户机和数据库服务器构成的分布式计算机处理网 络系统,服务器是网络的核心,而客户机是网络的基础,客户机依靠服务器获得 所需要的网络资源,而服务器为客户机提供网络必须的资源。C/S 结构的关系图 3.2 所示。

40

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

数据库服务器 SQL 请求

客户机

客户机

客户机
图 3.2. 客户机服务器结构 Figure 3.2 Client-Server structure

C/S 体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器 程序。二者可分别称为前台程序和后台程序。运行数据库服务器程序的机器,称 为应用服务器。 一旦服务器程序被启动,就随时等待响应客户程序发来的请求; 客户程序安装在用户自己的电脑上,对应于数据库服务器,可称为客户机。当需 要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向 其发出请求,服务器程序根据预定的规则作出应答,送回结果。服务器负责系统 资源的管理和优化,客户端负责与用户的交互,应用程序或应用逻辑根据需要划 分到服务器或客户端,为满足用户查询或数据管理的要求,客户端上的客户应用 程序和服务器上的服务器管理程序协同工作。 本论文交互数据量比较少,所以采用本电脑即作为服务器,也作为客户机来 完成数据的存储和交互,就可以满足本论文的需要,在运用的过程中,只需添加 自己的计算机名称,启动 C/S 结构连接。

3.3 本章小结
本章研究系统开发中所用到的关键技术:参数化设计技术、数据库管理技术 以及数据库管理技术的连接, 并论述了这些技术在系统开发中的作用及应用方式。

41

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

4 模架库参数化 CAD 系统的开发
4.1 系统总体设计方案
标准模架和标准零部件是模具标准化工作的主要部分,在模具设计制造中, 充分利用标准模架,不但能简化设计,提高质量稳定性,缩短制造周期,降低成 本,提高企业在市场上的竞争力,而且能使模具设计者有更多的自由度、时间和 灵活性致力于真正产品的工艺及模具设计方案中去。目前标准模架已被模具行业 普遍采用。在设计标准模架时,系统的总体设计是依据模架实际设计过程,以模 架生产成本核算为依据,以具备的生产条件和产品的供应要求为约束条件制定算 法,以产品成型工艺、模架设计制造现场工作状况来综合考虑,并以此作为判别 准则,开发模架参数化 CAD 系统的标准零件库和含标准模架的模具零件标准件数 据库,从而实现了模架型号的优化选择、模架标准零件选取、参数自动化读取和 参数化绘制 [92]。本系统是在模架各零部件按照国家标准、行业标准、企业标准要 求完成优化设计的基础上,得到相关的标准参数后进行研究与开发的。

4.1.1 系统总体设计思路
根据本系统的体系结构图,系统的组成从功能性框架考虑由三大模块组成: 通过 Visual C++6.0 开发的用户界面模块,通过 Visual C++6.0 编译调用 UG/Open API 函数创建模型程序,融入到应用程序模块中,实现参数化的 UG/Open API 应 用程序模块和设计知识数据库模块。其中各大模块下又划分若干个子模块。各模 块相互关联,相互调用。系统模块结构如图 4.1 所示: 数据库模块 应用程序模块
图 4.1 系统模块结构图 Figure 4.1 System module structure diagram

用户界面模块

各模块的基本功能如下: (1)应用程序模块:该模块功能是利用 UG/Open API 函数,运用 VC++进行 编译生成模型的程序文件,生成可执行的应用程序,通过 UG 调用,以实现实体模 型的创建。与以往的设计方法相比,用户省去了实体模型样板的创建,简化了设 计步骤,提高了产品的设计效率。在编辑程序的过程中,函数调用和运用要合理,
42

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

函数参数变量定义和使用要正确,输入参数和输出参数也要正确。该模块把 UG 系 统、用户界面模块和模型参数数据库在后台有机地结合起来,支持着系统的正常、 稳定运行。 (2)设计知识数据库:数据库主要储存的是模架零部件的各种标准参数值, 使用时不需要逐个输入,只需选择调用。包括控制实体大小与位置尺寸等几何设 计参数,还可以控制零件号、零件材料和重量等非几何参数。 (3) 用户界面模块: 包括用户菜单和用户对话框的设计。 通过点击用户菜单, 弹出对应的对话框。它作为开发用户与参数化设计系统进行交互的窗口工具,由 若干 UG/Open MenuScript 创建的菜单和 UG/Open UIStyler 创建的对话框组成。 本系统以基于对象与对对象属性的参数化设计为基础,总体开发思路如下: 采用全程序控制的方式,首先在 Visual C++6.0 中使用 UG/Open API 函数进行程 序编辑,编辑的程序能完成模型的建模,实现所有的 UG 功能;然后在 Microsoft SQL Server 数据库中建立相应的数据表,同时通过 Visual C++6.0 映射一个 CRecordset 类对象,用于数据交互;最后用 Visual C++6.0 和 UG/Open API 开发 工具编写系统接口程序, 并利用 ODBC 数据库接口技术使该模型样板与其设计参数 数据库相关联,同时利用 Visual C++6.0 设计友好的用户交互界面。参数化程序 通过对模型的设计编程,来实现设计参数的检索、修改以及三维模型的再生,其 系统框图如图 4.2 所示。 UG/Open API 应用程序

UG 中定制的用户界面

设计参数 数据库

参数化驱动生成 零件三维实体
图 4.2 系统关系框图 Figure 4.2 System relation diagram

4.1.2 系统开发基本步骤
(1)创建模型程序。

43

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

在 Visual C++6.0 环境下,编辑调用 UG/Open API 函数,创建模架各部件的 实体模型程序,程序中设置所需的原始设计参数,进行程序调试,生成可执行的 程序文件。把此文件放在相应的路径下,以便在 UG 界面下调用实现。 (2)设计参数数据库的建立。 在 Microsoft SQL Server 中建立各类模型程序对应的设计参数数据库,每一 个数据库由数据表组成,以存放不同标准型号的设计参数数据。设计参数分为几 何参数和非几何参数两种。几何参数包括实体大小与位置尺寸等数值型参数,非 几何参数只是用以表明结构特征以及一些数据控制和标记作用的代码,如零件材 料、零件号、模架型号等非数值型参数。 (3)用户交互界面的开发。 利用 Visual C++6.0 中的 MFC 资源和编写 UG/Open UIStyler 对话框资源文件 相结合的方式,设计系统的用户交互界面。 (4)UG/Open API 接口程序的设计。 在 Visual C++6.0 集成开发环境下设计系统应用程序,经编译生成 DLL 可执 行文件后,在 UG 中注册并运行,实现 VC 程序与 UG 的数据通讯,从而完成系统的 开发。

4.1.3 系统开发工具选择
利用 UG 提供的丰富的二次开发工具, 并结合以上所讲述的标准件总体设计方 案, 根据本课题的实际情况, 本系统是在 Microsoft Windows XP Professional 2002 的微机操作平台上,利用 UG 提供的 UG/Open MenuScript 开发用户菜单,利用 UG/Open UIStyler 设计与 UG 风格一致的用户对话框,实现用户和 UG 界面之间的 交换, 并与 UG 无缝集成, 操作简单快捷, 能够避免复杂而繁琐的编程。 UG/Open API 提供了所有能生成 UG 对象模型的函数集,并且支持 C/C++语言。而 C/C++语言的 集成开发环境 Visual C++是 Windows 环境下最主要的应用开发系统之一, WIN32 与 紧密相连,具有功能强大、使用简单、可靠性强和生成代码效率高等优点,利用 Visual C++开发系统可以完成各种各样的应用程序的开发 [93]。在 Visual C++6.0 集成开发环境中,利用 UG/Open API 对 UG 进行二次开发,编写应用程序和设计程 序接口,在用户菜单和用户对话框之间以及对话框上的控件与相应的回调函数之 间建立联系,并且可以实现 UG 环境中的各种应用操作 [94]。再结合 Microsoft SQL Server 数据库管理技术, 对系统所用数据进行储存和管理, 并通过 Visual C++6.0 平台对数据库链接文件进行编译,并与应用程序共同生成动态链接库文件,UG 启

44

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

动时自动加载动态链接库文件供用户菜单调用,从而实现了应用开发程序、数据 库与 UG 系统的无缝集成。因此选择 Visual C++6.0 作为编程开发环境进行 UG 应 用程序开发,并利用 UG/OpenAPI 编写应用程序,建立一个与 UG 系统集成的标准 模架三维参数化 CAD 系统。

4.1.4 系统开发流程
通过对系统总体设计思路、 系统开发的基本步骤和系统开发工具的综合分析, 可以充分利用 UG 二次开发工具,结合所提出的全程序化建库方法,制定详细的系 统开发流程图,使整个系统框架结构更加简单明了,进一步细化了各个系统的细 节,用户可以利用此流程图,可以方便准确的进行每一步的开发。如图 4.3 所示 为标准模架系统开发流程。 开始

用户菜单

菜单文件 *.men

UG/Open MenuScript

用户对话框 对话框 文件库 选择数据库中标 准件型号和参数 *.dlg 应用程 序 读取数据库中标 准件的数据信息 *.dll 参数数 据库文 生成三维实 体标准件模 型 程 序 结 束
图 4.3 标准模架系统开发流程

UG/Open UIStyler

UG/Open API Visual C++6.0 Microsoft SQL Server





Figure 4.3 Development Process of standard mould base of injection mould

45

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

基于 UG 的三维参数化标准标准模架库的总体结构主要由菜单文件、 对话框文 件库、参数数据库文件和应用程序库等组成,综合运用了 UG/Open MenuScript、 UG/Open UIStyler、UG/Open API 和 Visual C++6.0 等 UG 二次开发关键技术以及 数据库技术。利用 UG/Open MenuScript 编写用户菜单,直接挂在 UG 系统的主菜 单上,调出用户对话框;运用 UG/Open UIStyler 制作 UG 风格的用户对话框,满 足各种各样的功能需求,实现用户与标准件库的交互操作;通过 UG/Open API 和 Visual C++6.0 编写 UG 应用开发程序和编译模型程序,从而实现全编程程序建模 技术创建参数化模型,并生成动态链接库文件,在 UG 启动时自动加载,保证与 UG 的无缝集成。

4.2 模架库零部件程序创建
4.2.1 系统环境变量设置
在利用 UG/Open API 进行开发之前,应对系统作一些相应的设置,只有这样, 才能进行二次开发的工作。 工程路径是指安装在目标硬盘的用户工程的路径。要使三维标准模架库的应 用程序得以正确运行,为了避免与 UG 本身的功能模块发生冲突,应在工程文件夹 下建立两个资源文件夹: Application 和 Startup,完成后把它们以及用户配置文 件夹存放于工程路径下,然后采用环境变量法注册工程路径。通过设置环境变量 来获取配置文件的路径,实现用户应用程序对配置文件的访问。 环境变量的设置有三种方法,使你开发的程序在 UG 启动后起作用。UG 环境 配置文件 ugii_env.dat 中存放着 3 个环境变量:UG_VENDOR_DIR(存放第三方开 发商开发的相关应用文件) 、UG_SITE_DIR(存放其它开发者开发的相关应用文件) 和 UG_USER_DIR(存放用户自己开发的相关应用文件) 。根据要实现的不同作用, 去选择使用不同的环境变量。具体的注册方法有三种: 第一种是:直接打开$UG_BASE_DIR\UGII\目录下的 ugii_env.dat 文件(该文 件包含 Unigraphics 系统的全部环境变量及系统路径定义),找出下面的两条语 句: #UGII_VENDOR_DIR=${UGALLIANCE_DIR}\vendor #UGII_SITE_DIR=${UGALLIANCE_DIR}\site #UGII_USER_DIR=${HOME} 这三条语句前都带有“#”“#”代表了注释,说明这三个环境变量不起作用, ,

46

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

为了使他们起作用,可以将它们前面的注释符号“#”删除。第三条语句是用来设 置用户自己二次开发内容的工程路径目录,用户使用时同样要将其前面的“#”号 删除, 并在其后使用用户自己的工程路径目录替换${HOME}, 完成工程路径的注册。 第二种是:直接打开$UG_BASE_DIR\UGII\menus 目录下的 custom_dirs.dat 文件。直接把用户自己二次开发内容的工程路径目录注册于该文件下,以便 UG 启 动时直接使用工程路径目录下的文件。取消注册直接在工程路径目录前加上“#” 或直接删除此工程路径目录。 第三种是:采用环境变量 UG_USER_DIR 来注册工程路径,其具体操作为:右 击“我的电脑” ,选择[属性],在系统属性对话框中选择[高级]选项卡,单击[环 境变量],在环境变量对话框的用户变量栏下单击[新建]。在新建用户变量对话框 中输入变量名 UGII_USER_DIR 和变量值 E:\MouldBase,则注册的工程路径是 E:\MouldBase。本文就采用此方法注册工程路径,如图 4.4 所示环境变量的设置。

图 4.4 环境变量的设置 Figure 4.4 The setting of environment variables

4.2.2 工程目录结构
在完成系统变量设置之后,相应的用户开发工程路径也被注册成功,UG 启动 时,系统会通过被注册的工程路径搜索该路径下的工程目录,工程目录包含很多 子目录,子目录用于存放要执行的文件,每个子目录必须要与执行文件相对应, 才会被 UG 系统识别读取。这样就保证在 UG 启动情况下,能够将用户二次开发的

47

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

部分文件调入操作系统为 UG 分配的进程内存中,才能实现二次开发。在该工程路 径下建立工程子目录结构如图 4.5 所示。Startup 和 Application 是 UG 规定的目 录,udo 是用户自定义目录。Startup 目录存放 Unigraphics 启动时需载入的动态 共享库(以 ufsta()为入口的*.dll)及菜单脚本文件(*.men); Application 目录存 放 UG 启动时需加载具体的功能扩展程序文件(如应用模块的扩展共享库(*.dll)、 UIStyler 对话框文件(*.dlg) 、UIStyler 对话框所使用放标准件的二维示意图 (*.bmp))。udo 目录存放与用户自定义对象相关的动态链接库文件代码。UG 启动 时会在这些目录中寻找并加载相应的程序和资源。 MouldBase

Startup

Application

udo

dll 文 件

men 文 件

dlg 文

bmp 文

dll 文 件

件 件 图 4.5 工程子目录结构

Figure 4.5 Engineering Sub-directory structure

4.2.3 系统应用程序的设计
所谓的 UG/Open API 应用程序(或简称应用程序)是指利用 UG 系统提供的 UG/Open API 工具包的支持,用 C/C++语言进行程序设计,使用 C/C++编译器和连 接器创建能够在 UG 环境运行的可执行程序 (文件名后缀为 EXE) 或动态连接库 (文 件名后缀为 DLL)形式的程序。对于我们选择的不同操作系统平台,在编译和连 接生成 UG/Open API 应用程序时,编译选项和所需的系统库文件是不同的。所以 要使 UG/Open API 能正常运行,必须要正确设置编译和连接选项 [60]。本系统采用 Windows 操作系统,Visual C++6.0 集成开发环境创建 UG/Open API 程序。UG/Open API 接口程序以 VC++6.0 为编译、调试工具,采用 C/C++语言编写而成。通常情况 下,创建应用程序方式:使用工程向导 ugopen.awx、使用 MFC 应用向导。前者创 建应用程序方便快捷,但不支持 MFC 类库,因而不能充分利用 VC 的资源。后者资 源比较丰富,能弥补其它开发工具的缺陷与不足,但使用繁琐,需要对本软件有 比较好得掌握。

48

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

利用 Visual C++开发基于 UG 的程序编制一般需要两个步骤:一是可视化设 计阶段;二是代码编写阶段。在可视化设计阶段,编程者使用 VC++工具箱来定制 所需的用户界面。在代码编写阶段,编程者通过调用消息和事件函数编译功能程 序,实现所需的功能。由于在 VC++中可以方便对 UIStyler 对话框文件(*.dlg)进 行编译,编程人员只需编写少量的代码就可以设计出界面友好、方便用户使用的 程序,因而可以大大提高系统开发的效率。

4.2.3.1 用户界面设计
利用 UG/Open MenuScript 编制用户菜单文件*.men,创建用户化菜单,创建 步骤和编译代码都在 2.2.3.2 节中已作了详细的介绍,编译后执行运行结果如图 2.6 所示。本节主要介绍用户对话框的设计。由于标准模架零件数目较多,所设 计的用户对话框也很多,不能一一详述。注塑模标准模架零件按结构形状可分为 板类零件和轴类零件两大类。板类零件主要特征尺寸包括模板的长度、宽度和厚 度以及模板上的圆孔孔径和其定位尺寸。轴类零件主要特征尺寸一般是直径、长 度等。下面以板类零件定模座板对话框和轴类零件带头导套对话框为例来说明用 户对话框的设计及其特点。

图 4.15 按钮的回调函数 Figure 4.9 Callback function of the button

图 4.19 按钮的回调函数 Figure 4.13 Callback function of the button

49

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

图 4.6 定模座板对话框 Figure 4.6 Dialog of the solid_plate

图 4.7 对话框控件属性 Figure 4.7 Dialog control properties
50

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

图 4.8 对话框基本回调函数 Figure 4.8 Dialog basic callback function

图 4.16 导套对话框 Figure 4.10 Dialog of the sleeve

51

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

图 4.17 对话框控件属性 Figure 4.11 Dialog control properties

图 4.18 对话框基本回调函数 Figure 4.12 Dialog basic callback function

利用 UG/Open UIStyler 设计如图 4.6 所示定模座板对话框和如图 4.10 所示 导套对话框。定模座板对话框共有 10 个控件:1 个位图、1 个按钮和 8 个浮点型 数值输入框。所赋予这些控件的属性如图 4.7 所示,对话框的基本回调函数如图 4.8 所示,按钮的回调函数如图 4.9 所示。导套对话框共有 11 个控件:1 个位图、 1 个按钮、1 个组群和 8 个浮点型数值输入框。所赋予这些控件的属性如图 4.11
52

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

所示,对话框的基本回调函数如图 4.12 所示,按钮的回调函数如图 4.13 所示。 所创建的定模座板对话框和导套对话框具有如下特点: (1)对话框中插入二维图形,可实现图形的前期预览,使用户比较直观了解 该零件的几何参数和结构。当用户选择该零件后,立即显示出二维图形和零件各 个尺寸参数,方便用户根据根据实际需要,对零件各个参数做出正确适当的输入 和修改。 (2)该对话框增加了一个参数库按钮,利用该参数库按钮的回调函数与数据 库相连接,实现标准模架数据自动选择调入,当用户选择点击参数库按钮时,会 弹出标准模架的参数库,该参数库列出了标准模架各个型号,同时也列出了对应 型号的模架零件各参数,用户只需去选择某型号标准型号后,系统自动对对话框 中参数进行数据更换。因此用户在选择不同型号标准模架时,完全不需要查看模 架的有关设计手册,也省去了手工输入模架零件的各个参数尺寸。同时,也避免 了手工输入的错误。

4.2.3.2 创建应用程序
创建了用户界面之后,需要在 Visual C++6.0 平台上进行应用程序开发设计, 编辑零件模型程序,使之与用户对话框建立联系,并对模型程序进行参数化驱动, 实现标准模架零件的生成。 Visual C++6.0 的集成开发环境是采用工程(Project)来管理所有的 C/C++源 程序、头文件、库文件和对话框等各种资源的,程序的设计、编译、连接和调试 均十分方便。由于 UG/OpenAPI 应用程序设计涉及到 UG 提供的头文件(*.h) 、库 文件(*.lib)以及 C/C++语言编程环境,所以在编写应用程序之前需要对 Visual C++6.0 的编辑环境进行设置,具体方法如下: (1)启动 Visual C++6.0 集成开发环境后,首先根据不同的开发需要,选择 利用不同的 Visual C++6.0 应用程序设计向导创建不同的 UG/Open API 应用程序 的基本框架。本论文采用 Unigraphics NX AppWizard V1 和 MFC AppWizard(dll) 应用程序设计向导分别建立动态链接库的工程, 但只以 Unigraphics NX AppWizard V1 应用程序设计向导为例进行说明。 (2)启动 Visual C++6.0,选择[Unigraphics NX AppWizard V1],根据应用 程序向导,新建工程项目,并输入工程名称和存储的位置。单击[OK]按钮,在弹 出的对话框中单击[Finish]按钮,就创建了一个空的 UG 应用模板程序。本系统中 工程名为 solid_plate,如图 4.14 所示。

53

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

图 4.14 在 VC 中新建系统工程 solid_plate Figure 4.14 Building new project name solid_plate in the VC

( 3 ) 工 程 设 置 。 选 择 [Project] → [Settings]命 令 , 在 “ Link” 选 项 卡 中 “Object/library modules”下添加 UG 库文件 libufun.lib、libugopenint.lib 和 libnxopencpp.lib,如图 4.15 所示。

图 4.15 solid_plate 的工程设置 Figure 4.15 The project setting of solid_plate
54

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

(4)配置路径选项。选择[Tools]→[Options]命令,在“Directaries”目录 下拉菜单的两个选项[Library files]和[Include files]中添加 UG 安装目录下的 \UG6\UGOPEN,如图 4.16 所示。

图 4.16 solid_plate 的配置路径 Figure 4.16 Configuration path of solid_plate

图 4.17 Visual C++6.0 程序框架 Figure 4.17 Program frame in the Visual C++6.0

55

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

对 Visual C++6.0 编辑环境设置完成之后,更改对话框生成的 C 语言源文件 模板文件*_template.c 和头文件模板文件*.h 为*_dialog.cpp 和*_dialog.h,然 后添加到新建的工程中去,然后编写文件代码,合理调用 C/C++以及 UG/OpenAPI 函数进行设计和编译,实现标准模架库零件模型程序的创建,执行用户的具体操 作。 根据用户的开发需求,通过 Visual C++6.0 建立应用程序框架,如图 4.17 所 示。该框架结构由起不同作用的模型程序代码组成,用户编写的模型程序代码一 般包括两个部分:程序接口和执行操作的应用程序代码。 (1)添加接口程序。 在标准模架件开发过程中,首先必须在用户对话框和用户菜单之间建立起相 应的联系。ufusr()和 ufsta()是常用的入口函数,是 UG 运行过程中规定的入口。 如在生成调用对话框时所用到的用户应用程序接口如下: 定模座板对话框用户应用程序接口: static UF_MB_cb_status_t SOLID_PLATE( UF_MB_widget_t, UF_MB_data_t,UF_MB_activated_button_p_t ); static UF_MB_action_t actionTable[]= { {"SOLID_PLATE_ACTION",SOLID_PLATE,NULL}, {NULL,NULL,NULL} }; extern "C" DllExport void ufsta( char *param, int *returnCode, int rlen ) { int errorCode = UF_initialize(); if ( 0 == errorCode ) { UF_MB_add_actions(actionTable); errorCode = UF_terminate(); } PrintErrorMessage( errorCode ); } 导套对话框用户应用程序接口: static UF_MB_cb_status_t Die_Sleeve( UF_MB_widget_t, UF_MB_data_t,UF_MB_activated_button_p_t ); static UF_MB_action_t actionTable[]= {{"DIE_SLEEVE_ACTION",Die_Sleeve,NULL},{NULL,NULL,NULL}}; extern "C" DllExport void ufsta( char *param, int *returnCode, int rlen ) { int errorCode = UF_initialize();
56

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

if ( 0 == errorCode ) { UF_MB_add_actions(actionTable); errorCode = UF_terminate(); } }

PrintErrorMessage( errorCode );

这两个应用程序的入口主要通过 ufsta()函数进行连接,用户可以通过调用 UF_MB_action_t actionTable[]函数来建立标准模架库的用户菜单和用户对话框 文件之间的联系。 (2)编写模型应用程序代码。 开发模型应用程序主要是建立用户界面、模型程序与数据库之间的联系, 能够根据用户的操作,生成用户所需要的标准模架,从而实现用户与标准模架库 之间的交互功能。因此如何利用从用户对话框中获得的所选标准件的尺寸参数信 息,从数据库中找出需要调用的尺寸参数,并按选定的尺寸对对话框进行参数更 改,按指定的条件生成用户需要的标准模架,是应用程序设计的关键。下面以板 类零件定模座板和轴类零件导套为例进行说明。创建板类零件定模座板实现的方 法如下: (1)创建板类零件定模座板的回调函数 在使用程序创建定模座板模型的过程中要注意特征的创建顺序,比较合适的 特征创建顺序为创建长方体特征、孔特征、镜像特征。其代码如下所示。 static UF_MB_cb_status_t SOLID_PLATE( UF_MB_widget_t widget,UF_MB_data_t client_data, UF_MB_activated_button_p_t { int resp,result; PartParameter tag_t m_part_para; call_button)

m_part_tag,m_block_tag,m_hole_tag,m_mirror_tag,

m_mirrors_tag,m_mirrort_tag; UF_initialize(); LaunchGetPartParameter(&resp,&m_part_para); if(resp!=UF_UI_OK) return UF_MB_CB_CONTINUE;

UF_PART_new ("e:\\part.prt",1,&m_part_tag); //创建长方体 result=SOLID_PLATE_Create_BLOCK(&m_part_para,&m_block_tag); if(result) return UF_MB_CB_CONTINUE;
57

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

//创建孔特征 result=SOLID_PLATE_Create_Hole(&m_part_para,m_block_tag, &m_hole_tag);if(result) //创建镜像特征 result=SOLID_PLATE_Create_Linear(&m_part_para,m_hole_tag, &m_mirror_tag); if(result) //创建镜像特征 result=SOLID_PLATE_Create_Linear_s(&m_part_para,m_mirror_tag, &m_mirrors_tag);if(result) //创建镜像特征 result=SOLID_PLATE_Create_Linear_t(&m_part_para,m_mirrors_tag, &m_mirrort_tag);if(result) return UF_MB_CB_CONTINUE ;} (2)创建长方体特征所用主要函数 UF_LAYER_set_status()函数设置图层; UF_MODL_ask_list_item()函数查询第 index 个节点处对象的标识; UF_MODL_delete_list()函数删除整个对象链表,释放内存; UF_MODL_create_block()函数创建长方体特征; (3)创建孔特征所用主要函数 UF_MODL_ask_feat_body()函数查询某一个特征所在的实体 body; UF_OBJ_ask_type_and_subtype()函数从实体遍历出特征; UF_MODL_ask_list_item()函数查询第 index 个节点处对象的标识; UF_MODL_ask_face_data()函数查询面的参数数据; UF_MODL_create_c_bore_hole()函数创建孔特征; (4)创建镜像特征所用主要函数 UF_MODL_create_fixed_dplane()函数创建固定面; UF_MODL_create_mirror_set()函数创建镜像特征; UF_OBJ_set_blank_status()函数隐藏组件; 创建轴类零件导套实现的方法如下: (1)创建轴类零件的回调函数 在使用程序创建轴类零件导套模型的过程中要注意特征的创建顺序,不同的 创建顺利,可影响到创建后的程序运行结果,经过综合分析,比较合适的特征创
58

return

UF_MB_CB_CONTINUE;

return

UF_MB_CB_CONTINUE;

return

UF_MB_CB_CONTINUE;

return

UF_MB_CB_CONTINUE;

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

建顺序为创建旋转体特征和倒角特征。其代码如下所示。 static UF_MB_cb_status_t Die_Sleeve( UF_MB_data_t UF_MB_widget_t widget,

client_data, call_button )

UF_MB_activated_button_p_t { int resp,result; m_part_para;

PartParameter tag_t

m_part_tag,m_revolve_tag,m_chamfer_tag;

UF_initialize(); LaunchGetPartParameter(&resp,&m_part_para); if(resp!=UF_UI_OK) return UF_MB_CB_CONTINUE;

UF_PART_new ("e:\\part.prt",1,&m_part_tag); //创建旋转体 result=Die_Sleeve_Create_Revolve(&m_part_para,&m_revolve_tag); if(result) //创建倒角 result=Die_Sleeve_Create_Chamfer(&m_part_para,m_revolve_tag, &m_chamfer_tag); if(result) return UF_MB_CB_CONTINUE; return UF_MB_CB_CONTINUE;

return UF_MB_CB_CONTINUE ;} (2)创建旋转体特征所用主要函数 UF_LAYER_set_status()函数设置图层; UF_MODL_create_list()函数创建一个链表,为链表分配内存; UF_CURVE_create_line()函数创建直线; UF_MODL_put_list_item()函数将对象标识添加到链表的尾部; UF_MODL_create_revolved()函数创建旋转体; UF_MODL_ask_list_item()函数查询第 index 个节点处对象的标识; UF_MODL_delete_list()函数删除整个对象链表,释放内存; (3)创建倒角特征所用主要函数 UF_MODL_ask_feat_faces()函数查询特征的面; UF_MODL_ask_list_count()函数查询对象链表的长度; UF_MODL_ask_list_item()函数查询第 index 个节点处对象的标识; UF_MODL_ask_face_edges()函数用于查询与特征相关联的信息;
59

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

UF_CURVE_ask_arc_data()函数查询曲线的数据信息; UF_MODL_create_list()函数创建一个链表,为链表分配内存; UF_MODL_put_list_item()函数将对象标识添加到链表的尾部; UF_MODL_ask_face_props()函数查询面的特征参数信息; UF_MODL_create_blend()创建圆角特征; UF_MODL_create_chamfer()创建倒角特征;

4.2.3.3 数据库接口程序设计
建立数据库,实现模块化设计,使程序和数据相对独立,将有利于数据的维 护和扩充,不同的应用程序可以借助数据库实现数据交换。本系统以 Microsoft SQL Server 2000 为后台,通过 ODBC(数据库开发互连)开放式的接口技术,利 用 Visual C++6.0 开发相应的数据库应用程序,并把应用程序通过 UG/Open API 开发工具和 DLL 技术集成到 UG 中,实现了 UG 用户对 SQL Server 数据库的访问和 操作,从而将功能强大的 UG 与先进的数据库管理系统有机结合起来。 以定模板为例,建立系统数据库接口程序设计过程如下: 在 VC++6.0 继承开发环境中,使用 MFC AppWizard(dll)向导创建程序的工 程文件 solid_plate_program.dsw,要实现对数据库中表的访问,首先要用类向 导新建一个基于 CDialog 的类(CDatabase_main) ,用于映射所要创建的数据库表 (solid_plate) ,具体操作步骤如下:

图 4.2.3.3 对话框设计 Figure 4.18 Dialog design

60

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

图 4.2.3.4 建立 CDialog 类 Figure 4.19 Building CDialog class

图 4.20 定义成员变量 Figure 4.20 Definition of the member variables

(1) 在全局对象类 theApp 的下面添加函数 solid_plate_database_func ) ( ,
61

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

并将要用到的 UG 二次开发工具中的函数头文件包含进来。 (2)在上述建立的动态链接库框架中按照需要加入资源,在 VC++中选择 [Insert]→[Resource],在弹出的“Insert Resource”对话框,新建“Dialog” 对 话 框 , 如 图 4.18 所 示 , 并 双 击 对 话 框 , 创 建 包 含 的 资 源 的 类 , 命 名 为 CDatabase_main,然后单击“OK”按钮。如图 4.19 所示。 (3)定义 CDatabase_main 类的成员变量,如图 4.20 所示。 (4)编写相应的接口函数,主要代码如下: 数据库用户应用程序接口: CString str[i]; extern "C" DllExport bool *_database_func(void *str_mid) { int errorCode = UF_initialize(); if ( 0 == errorCode ) { AFX_MANAGE_STATE(AfxGetStaticModuleState()); CDatabase_main Database_main_dialog; if(Database_main_dialog.DoModal()==IDOK) { int i; for(i=0;i<Database_main_dialog.nFieldCount;i++) { ((char **)str_mid)[i]=str[i].GetBuffer(0); errorCode = UF_terminate(); return true; } } }

errorCode = UF_terminate(); return false; }

extern "C" int ufusr_ask_unload( void ) { return( UF_UNLOAD_UG_TERMINATE ); }

基于 CDialog 的类 CDatabase_main 创建完成后,用户需要在生成的头文件 Database_main.h 中程序加入以下代码,以便获得可以应用的表格字段。 class CDatabase_main : public CDialog { public: CDatabase *m_pdatabase; CRecordset *m_pset; ?? BOOL ShowInformation(CString strSQL);
62

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

void ClearList(); void DataShow(CString table_name); int nFieldCount; ?? };

在程序中添加对话框资源和对应的类,初始化对话框,从数据库中加载数据 显示于列表框等,其实现代码 [59]如下: BOOL CDatabase_main::OnInitDialog() { CDialog::OnInitDialog(); try{ m_pdatabase=new CDatabase(); m_pset=new CRecordset(); m_pdatabase->Open(_T("数据源"),FALSE,FALSE, _T("ODBC;DSN=数据源"),FALSE); m_pset->m_pDatabase=m_pdatabase; }

catch(CDBException* e){e->ReportError();e->Delete(); delete m_pset;delete m_pdatabase;return TRUE;} DataShow("数据表"); return TRUE; } void CDatabase_main::ClearList() { m_list_control.DeleteAllItems(); while(m_list_control.DeleteColumn(0)); UpdateWindow(); } void CDatabase_main::DataShow(CString table_name) { ClearList();CString strSQL; strSQL="select * from "+table_name; ShowInformation(strSQL);} BOOL CDatabase_main::ShowInformation(CString strSQL) { if(!m_pdatabase->IsOpen()) return FALSE; if(!m_pset) return FALSE; try{ BeginWaitCursor(); if(m_pset->IsOpen()) m_pset->Close(); m_pset->Open(CRecordset::dynaset,strSQL); if(!m_pset->IsEOF()){ m_pset->MoveLast();m_pset->MoveFirst();} nFieldCount=m_pset->GetODBCFieldCount();CODBCFieldInfo fieldinfo; for(int n=0;n<nFieldCount;n++)
63

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

{

m_pset->GetODBCFieldInfo(n,fieldinfo); Int nWidth= m_list_control.GetStringWidth(fieldinfo.m_strName)+35; m_list_control.InsertColumn(n,fieldinfo.m_strName, LVCFMT_RIGHT,nWidth); }

CString strValue;m_pset->MoveFirst();int nCount=0; while(!m_pset->IsEOF()){ m_list_control.InsertItem(nCount,strValue); for(int j=0;j<nFieldCount;j++){ m_pset->GetFieldValue(j,strValue); m_list_control.SetItemText(nCount,j,strValue); }

m_pset->MoveNext();nCount++; } EndWaitCursor(); } catch(CDBException *e){ e->Delete();EndWaitCursor(); return FALSE; } return TRUE;} void CDatabase_main::OnDestroy() { CDialog::OnDestroy();delete m_pset; delete m_pdatabase; }

然后再编写相应的数据库对话框确定按钮程序,此程序是为了从数据库中读 取参数信息,去执行调用和更换对话框中的参数信息。关键代码如下: extern CString str[i]; void CDatabase_main::OnOK() { UINT uSelectedCount=m_list_control.GetSelectedCount(); if(uSelectedCount>1||uSelectedCount==0) { if(uSelectedCount==0) { MessageBox("要选择一条参数!","提示",MB_ICONWARNING+MB_OK); return;} if(uSelectedCount>1) { MessageBox("只能选择一条参数!","提示",MB_ICONWARNING+MB_OK); return; } } else { int nItemSel=0; nItemSel=m_list_control.GetNextItem(nItemSel-1,LVNI_SELECTED); for(int j=0;j<nFieldCount;j++) str[j]=m_list_control.GetItemText(nItemSel,j);}
64

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

CDialog::OnOK();

}

4.2.3.4 程序编译和连接
所有程序源文件编写完成后,首先要进行数据库程序的编译连接,首先选择 [Build]→[Set Active Configuration]命令,设置成*-Win32 Release 模式, 选择[Build]命令生成可在 UG 中注册并运行的可执行程序文件*.dll 和库文件 *.lib,把*.lib 文件复制添加到模型程序工程目录中,并在模型应用程序下, 选 择 [Project] → [Settings] 命 令 , 在 “ Link” 选 项 卡 中 “ Object/library modules”下添加*.lib,进行编译、连接。再把数据库程序文件和模型应用程序 所生成的*.dll 都复制到 startup 目录下,以便让 UG 调用实现。

4.3 模架库系统应用实例
本文开发的标准模架库系统界面友好,用户只要选择系统中的菜单项,进入 相应的零件模型设计模块,即可进行模型零部件的参数化设计。 模架由很多零件组成,下面就以模架的板类零件定模座板和轴类零件导套为 例,演示一下系统中标准件参数化设计及数据库调用过程。通过参数化技术和数 据库技术设计生成模架各个零部件,从而大大提高了模架的设计效率。

4.3.1 板类零件定模座板
为了生成满足设计要求的定模座板,用户需要向系统提供设计标准参数,这 些参数是国家、企业、或者是行业制定的标准,并存储于数据库中,通过系统提 供友好的人机交互界面,根据所要实现的要求,调用数据库中的标准参数,直接 输入到定模座板对话框的设计参数(几何尺寸、定位尺寸)中,实现设计参数的 输入,进而实现图形的输出。具体步骤如下: (1)启动 UG,在 UG 环境下自动加载注册文件,加载成功后便在 UG 环境下 出现了用户自定义菜单,即 UG 的主界面,如图 4.21 所示。 (2)用户可以从中选择要选用的零件种类,即由用户菜单选择模架的种类, 点取选定的零件种类,会弹出该零件参数化设计对话框。例如依次点击[模架二次 开发]→[零件库]→[定模座板],弹出“定模座板参数化设计”对话框,如图 4.22 所示。 (3)搜索和查找参数库中储存的标准参数,点击“参数库”按钮,弹出“参 数库” 对话框, 如图 4.23 所示。 用户根据实际需要直接选择合适的编号, “OK” 点击

65

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

按钮,直接把数据输入相应的对话框,对数据进行更新。 (4) 通过调用参数库中存储的参数, 或直接在对话框中输入相应的设计参数, 点击“确定”按钮,系统即可直接生成定模座板模型,如图 4.24 所示。

用户自定 义菜单

图 4.21 用户自定义菜单时 UG 主界面 Figure 4.21 The main interface of UG when the menu defined by users

图 4.22 定模座板参数化设计对话框 Figure 4.22 Parametric design dialog of the solid_plate
66

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

图 4.23 参数库对话框 Figure 4.23 Parametric database dialog

图 4.24 新生成的定模座板 Figure 4.24 The new generation of the solid_plate

通过这两个参数化对话框, 用户可以在 UG 定模座板参数化设计对话框下预览
67

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

模型的二维图形,可以看到模型的尺寸值和尺寸驱动关系;用户可以在参数库下 查看数据库中存储的所有标准尺寸参数,可以选择参数库中参数尺寸进行调用, 如果用户对当前的定模座板某个尺寸不满意, 可以在参数对话框直接修改参数值, 确定后,便可生成模型,直至用户满意。这样便实现了定模座板的参数化设计。

4.3.2 轴类零件导套
依次点击[模架二次开发]→[零件库]→[导套],弹出“导套参数化设计”对 话框,如图 4.25 所示。 点击“参数库”按钮,弹出“参数库”对话框,显示出了数据库储存的各种 型号尺寸,选择数据库中合适的标准尺寸种类。如图 4.26 所示。 通过调用参数库中存储的参数去更新导套参数化设计对话框中的参数,或直 接在导套参数化设计对话框中输入相应的设计参数,点击“确定”按钮,系统即 可直接生成导套模型,如图 4.27 所示。

图 4.25 导套参数化设计界面 Figure 4.25 Parametric design dialog of the sleeve

68

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

图 4.26 导套参数库 Figure 4.26 Parametric database of the sleeve

图 4.27 新生成的导套 Figure 4.27 The new generation of the sleeve

通过两个实例的研究和设计, 成功开发了与 UG 系统集成的模架参数化 CAD 系
69

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

统,这种设计方式通过全程序进行编译和控制,去生成零件模型,程序中还引入 了数据库技术,对参数数据进行储存和管理,用户省去了手工对参数的输入和修 改,节约了输入和修改时间,减少了手工带来的输入和修改错误,使得创建整个 标准模架库零件只需“选择”+“确定” 。用户不仅可以享受到个性化的界面,整 个模架的开发过程抛开了厚厚的手册,将建模由几小时缩短成了几秒钟,设计的 过程简化了,设计的效率也大大提高了。

4.4 本章小结
本章提出了基于 UG 标准模架库系统总体方案设计,包括系统总体设计思路、 系统开发基本步骤、系统开发工具选择和系统开发流程。并详细论述了模架零部 件程序创建的整个过程,的用户菜单设计、用户对话框设计和应用程序设计(包 括 UG 应用开发环境设置、其中包括系统环境变量设置、工程目录结构和系统应用 程序设计(用户界面设计、创建应用程序、数据库接口程序设计和程序编译和连 接)等核心问题,最后结合实例,通过运行板类零件定模座板和轴类零件导套实 例具体介绍了模架库系统开发应用过程,从而实现了模架库快速设计和造型,大 大提高了产品的设计效率。

70

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

5 模架自动装配系统
5.1 概述
装配(Assembly)是建立起部件之间的引用关系,将产品零件进行组织、定位 的一个过程。通过关联条件在部件间建立约束关系或设置其位姿矩阵来确定部件 在产品中的位置。通过装配可以形成产品的总体结构、绘制装配图、检查零件之 间是否发生干涉等。在计算机上进行装配,可以及一早发现零件配合之间存在的 问题,提供一个产品的整体模型 [95]。在 UG 中,有两种基本的装配方法:多零件装 配方法和虚拟装配方法 [96]。 (l)多零件装配方法。在装配时复制所有的零件至装配文件中,这种方法因 为不能与原零件链接而非智能装配,另外装配时要存贮所有加载的零件故需要更 多的内存。 (2)虚拟装配方法。在装配过程中,零部件的几何体是被装配引用,而不是 在装配中建立。通过引用零件形成装配,引用而不是复制零件的优点在于释放出 更大的内存空间,最低限度减少内存的占用,采用引用集而简化了装配模型的显 示方法,主模型改变时装配体自动完成更新;可以更加方便地定义装配零件之间 的位置关系;诸如工程图、加工等模块可以方便地利用主模型数据但不能改变其 数据。 装配模块是 UG 集成环境中的一个模块,也是 UG 的一个重要组成部分,用于 实现将零件(或部件)的模型装配成一个最终的产品模型。装配不但可以通过装配 模块完成,还可以使用 UG/Open API 完成。通过 UG/Open API 完成装配功能,其 操作主要包括:装配对象的访问、装配配合条件操作、组件阵列、组件和引用集 操作、部件族操作以及爆炸视图的操作。在 UG/Open API 使用中,坐标系矩阵和 变换矩阵决定了装配中组件的相对位置,在实际运用过程中,用户通过一些和装 配有关的函数去使用坐标矩阵和变换矩阵,让其作为输入参数和输出结果,在整 个开发过程中,这些矩阵起到了非常重要的作用。装配体是以树型结构来组织装 配体中的组件和零件,建立正确的装配树结构,确定装配中的部件、实例和事例 等相关元素,接着系统为其分配各自标识。利用相关的函数对部件对象进行相互 访问和遍历装配树中的所有组件和零件,完成装配的初步开发。

71

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

5.2 装配配合条件
将一个组件(零件)与另一个组件(零件)之间建立配合关系,也就是所谓的 装配约束关系,从而确定各组件(零件)之间的定位位置关系,这各个关系由一个 或多个配合约束组成,其中每个约束描述了组件特征之间的配合约束类型,用于 限制组件在装配中的自由度。这里,每个自由度定义了配合部件仍旧可以运动的 一个方式。只有通过约束条件建立了装配中装配组件与组件之间的约束关系,才 可以称得上是真正的装配模型。由于这种装配约束关系之间具有相关性,一旦装 配组件的模型发生变化,装配部件文件则可自动更新,并且保持装配约束不变。 有 UG 中用于建立配对约束类型(Mating Type)共有八种,分别称为贴合、对齐、 角度、平行、垂直、对中、距离和相切。针对每一种配对条件,用户可选择其中 的一个或多个约束构成一个配对条件。 在 UG 中还可以通过位姿矩阵调用函数 UF_ASSEM_reposition_instance()对 实例进行定位,对组件或零件进行装配。 UG/Open APT 所提供的关于装配配合的 函数可以实现以下功能: (1)用户可以应用配合条件到一个组件; (2)根据需要获取定义配合条件的相关数据; (3)在装配的过程中可以验证配合条件的有效性; (4)如果用户约束配合条件多余,可以自由的删除配合条件; (5)求解配合条件并获取其中的相关信息。 配合条件的创建过程为: (1)用户根据需求,定义装配配合条件,并调用函数 UF_ASSEM_init_mc() 对其进行初始化; (2)完成装配配合条件的定义后,找出并确认其装配 配合条件结构体 UF_ASSEM_mating_condition_t,并对其进行填充数据,在填充过程中,主要填充 装配配合约束结构体 UF_ASSEM_constraint_t; (3)在完成对结构体 UF_ASSEM_mating_condition_t 填充数据后,再调用函 数 UF_ASSEM_solve_mc()求解配合条件; (4)求解完装配配合条件,调用函数 UF_ASSEM_apply_mc_data()应用配合 条件到一组件,去接受装配配合的动作数据指令; (5)调用函数 UF_MODL_update()更新模型,建立起装配体,以在 UG 图形中 反映模型变化。

72

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

5.3 自动装配程序设计和实现
在以前的装配过程中,是通过手工装配的,这样造成了装配过程效率低下, 本系统开发设计了自动装配系统,能使装配过程自动生成,提高了装配的效率和 装配的准确性。具体的开发步骤: (1)启动 Visual C++6.0 集成开发环境后,首先选择 MFC AppWizard(dll) 应用程序设计向导,输入工程名和工程文件位置,建立动态链接库的工程。 (2)在上述建立的动态链接库框架中按照需要加入资源,在 VC++中选择 [Insert]→[Resource],在弹出的“Insert Resource”对话框,新建“Dialog” 对话框,如图 5.1 所示,并双击对话框,创建包含的资源的类,命名为 MyAsmDlg, 然后单击“OK”按钮, 如图 5.2 所示。在“Message Maps”的 Messages 下双击选 择确定所需要的功能,所选的功能在 Member functions 下显示,如图 5.3 所示, 接着去定义 MyAsmDlg 类的成员变量,如图 5.4 所示

图 5.1 对话框设计 Figure 5.1 Dialog design

73

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

图 5.2 建立 CDialog 类 Figure 5.2 Building CDialog class

图 5.3 定义功能变量 Figure 5.3 Definition of the function variables
74

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

图 5.4 定义成员变量 Figure 5.4 Definition of the member variables

编写相应的接口函数和程序函数,主要代码如下: 在标准模架件自动装配开发过程中,使用 ufusr()函数作为入口函数,通过 在 UG 环境下手动去加载执行应用程序文件。自动装配应用程序接口: ?? extern "C" DllExport void ufsta( char *param, int *returnCode, int rlen ) { int errorCode = UF_initialize(); AfxEnableControlContainer(); DisplayDialog (); if ( 0 == errorCode ) { errorCode = UF_terminate(); ?? 自动装配程序主要函数和结构体: UF_ASSEM_constraint_t 结构体定义配合约束。 UF_ASSEM_mating_condition_t 结构体定义配合条件。
75

}

}

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

UF_OBJ_cycle_by_name()函数获取对象标识。 UF_ASSEM_ask_root_part_occ()函数根据标识获取装配根节点的事例标识。 UF_ASSEM_ask_part_occ_children()函数查询给定组件事例的所有子组件事 例,返回子组件的标识数组。 UF_ASSEM_ask_component_data()函数获取指定组件的相关信息。 UF_ASSEM_add_part_to_assembly()函数给在指定的父部件下添加一个部件 的实例。 UF_ASSEM_init_mc()函数初始化配合条件数据结构。 UF_ASSEM_solve_mc()函数对配合条件进行求解。 UF_ASSEM_apply_mc_data()函数将配合条件应用到当前模型中,实现主动件 的重新定位。 UF_MODL_update()函数更新模型。 UF_ASSEM_ask_prototype_of_occ()函数获取几何对象的原型。 UF_ASSEM_ask_inst_of_part_occ()函数获取该事例的实例。 编辑完模架自动装配程序后,此程序是需要通过调用执行*.xml 文件去实现 装配模式和装配顺序的。*.xml 文件里面记录了装配的对象标识,装配的约束条 件,装配的类型,主动件和被动件标识等相关装配成员变量。*.xml 文件代码如 下: <?xml version="1.0" encoding="gb2312" ?> <root> <sub_node name="asm_01" pt="false"> <sub_node name="dingmuban" pt="true"> <feature name="plan_dingmuban_01" type="PLAN_FACE"/> <feature name="cycl_dingmuban_01" type="CYCL_FACE"/> <feature name="plan_dingmuban_02" type="PLAN_FACE"/> <feature name="cycl_dingmuban_02" type="CYCL_FACE"/> <feature name="plan_dingmuban_03" type="PLAN_FACE"/> <feature name="cycl_dingmuban_03" type="CYCL_FACE"/> <feature name="plan_dingmuban_04" type="PLAN_FACE"/> <feature name="cycl_dingmuban_04" type="CYCL_FACE"/> <feature name="cycl_dingmuban_05" type="CYCL_FACE"/> <feature name="plan_dingmuban_05" type="PLAN_FACE"/>
76

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

<feature name="cycl_dingmuban_06" type="CYCL_FACE"/> <feature name="cycl_dingmuban_07" type="CYCL_FACE"/> <feature name="plan_dingmuban_06" type="PLAN_FACE"/> <feature name="cycl_dingmuban_08" type="CYCL_FACE"/> <ASM num="2" status="OK">

<constrains id="0" name="ASDDF"> <From_status value="OK"/> <To_status value="OK"/> <Mate_type value="MATE"/> <From_type value="PLAN_FACE"/> <To_type value="PLAN_FACE"/> <From_P_occ value=""/> <From_F_occ value="plan_dingmuban_01"/> <To_P_occ value="daotao_1"/> <To_F_occ value="plan_daotao_1_01"/> </constrains> <constrains id="1" name=""> <From_status value="OK"/> <To_status value="OK"/> <Mate_type value="MATE"/> <From_type value="CYCL_FACE"/> <To_type value="CYCL_FACE"/> <From_P_occ value=""/> <From_F_occ value="cycl_dingmuban_01"/> <To_P_occ value="daotao_1"/> <To_F_occ value="cycl_daotao_1_01"/> </constrains> </ASM> </sub_node> <sub_node name="daotao_1" pt="true"> <feature name="plan_daotao_1_01" type="PLAN_FACE"/> <feature name="cycl_daotao_1_01" type="CYCL_FACE"/>
77

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

</sub_node> </sub_node> <sub_node name="daotao_2" pt="true"> <feature name="plan_daotao_2_01" type="PLAN_FACE"/> <feature name="cycl_daotao_2_01" type="CYCL_FACE"/> <ASM num="2" status="OK">

<constrains id="0" name="ASDDF"> <From_status value="OK"/> <To_status value="OK"/> <Mate_type value="MATE"/> <From_type value="PLAN_FACE"/> <To_type value="PLAN_FACE"/> <From_P_occ value=""/> <From_F_occ value="plan_daotao_2_01"/> <To_P_occ value="dingmuban"/> <To_F_occ value="plan_dingmuban_02"/> </constrains> <constrains id="1" name=""> <From_status value="OK"/> <To_status value="OK"/> <Mate_type value="MATE"/> <From_type value="CYCL_FACE"/> <To_type value="CYCL_FACE"/> <From_P_occ value=""/> <From_F_occ value="cycl_daotao_2_01"/> <To_P_occ value="dingmuban"/> <To_F_occ value="cycl_dingmuban_02"/> </constrains> </ASM> </sub_node> ?? <From_type value="CYCL_FACE"/>
78

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

<To_type value="CYCL_FACE"/> <From_P_occ value=""/> <From_F_occ value="cycl_dongmuzuoban_02"/> <To_P_occ value="diankuai_1"/> <To_F_occ value="cycl_diankuai_1_02"/> </constrains> </ASM> </sub_node> </root> 把函数编译生成的*.dll 和*.xml 共同放到程序中定义的文件夹中,还要把生 成的零件对按照*.xml 文件的装配标识对其装配配合面进行标识设定,在 UG 环境 下选择下来菜单[文件]→[执行]→[NX 打开]或者直接用快捷键[Ctrl+U], “执 打开 行用户函数”对话框,选择应用程序手动加载,点击“确定”按钮,系统弹出对 话框,如图 5.5 所示。

图 5.5 装配对话框 Figure 5.5 The assembly dialog

点击“加载零件”按钮,会自动加载模架各零件,在弹出的信息对话框中记 载着加载的信息,用于判断零件加载是否成功,点击“刷新”按钮,会自懂显示 出加载各个零件的信息,如图 5.6 所示。
79

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

图 5.6 零件加载 Figure 5.6 The parts loading

最后点击“装配”按钮,进行自动装配,信息栏中显示装配的信息,提示着 每步进行装配的结果,如图 5.7 所示。

图 5.7 模架自动装配模型 Figure 5.7 The automatic assembly model of mould base
80

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

5.4 装配爆炸图
在装配环境中,将装配体的零部件依次按一定的方向和路径移开,生成装配 体的爆炸视图,利用爆炸分离图可以将装配图中的零部件分离开,以便清晰地反 映出零部件的装配方向和关系,零部件的移出方向和路径一般要根据装配结构和 装配关系来定义,结合手动和自动完成爆炸视图的创建。但爆炸图并不影响实际 的装配关系,它仅仅是一个供观察的视图,并可输出到工程图之中。下面以上图 的装配体为例,其爆炸视图如图 5.7 所示:

图 5.7 装配体爆炸图 Figure 5.4 The assembly body explosion figure

81

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

5.5 本章小结
本章首先简述了装配的概述,重点介绍了模架自动装配配合关系和自动装配 接口设计、程序编译设计和装配配合的实现过程,最后生成模架爆炸图,对模架 进行结构检查,以确保模具结构设计的合理性。

82

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

6 结论和展望
6.1 结论
随着经济全球化趋势的形成和科技的不断进步,现代化企业要想在日益激烈 的市场竞争中占有一席之地,企业对新产品设计和开发必须以提高设计效率、降 低设计成本、缩短产品的开发周期为准则,而传统的产品设计方法和设计过程存 在工作量偏大、效率偏低、周期偏长、标准件重复造型等一系列问题,给开发人 员带来了诸多不便,造成各类资源的浪费。人们已经意识到,依赖传统的产品开 发手段,己经不能适应市场竞争的需要。本论文针对以上的情况,以注塑标准模 架为例,开发了基于 UG 注塑模标准模架库系统,并研究探讨了系统实现中的相关 问题与关键技术。通过该系统,不仅能实现强大的标准模架库快速设计功能,在 一定程度上还实现了产品的智能化、自动化。而且还能利用数据库技术对设计数 据进行存储和管理,实践证明,本文的研究对提高产品的设计效率、缩短新产品 的开发周期有很大的实际应用价值,同时也为其它产品的智能化设计开发提供了 可行的技术路线和方法。现就本课题的研究开发工作总结如下: (1)课题系统研究了 Unigraphcs 提供的二次开发工具和方法,根据实际情 况和用户需求,通过比较优化,选取了 UG/Open UIsytler、UG/Open MenuScript、 UG/Open API 三个模块对本系统进行开发。并对其各个模块之间关系和配合做了 详细的阐述和说明,找出了它们各自的特性,设计出了更加灵活,快捷,直观的 开发系统。 (2)论述和分析模架库系统开发关键技术及应用,在此基础上,针对标准模 架三维 CAD 系统应用开发的需求,结合各种软件的功能,设计了注塑模标准模架 三维 CAD 系统的总体结构,提出了自己的全程序化编译建模思路。 (3)建立了注塑模标准模架设计专用的数据库,储存了所有型号标准模架的 各个零部件几何尺寸和位置尺寸参数,这大大减轻了设计人员的查阅资料和翻阅 手册劳动量以及提高了产品设计的精度。并对数据库接口和程序编程函数设计和 开发做了详细的阐述和分析。 (4)解决了模型程序、数据库程序和 UG 相互之间的人机接口问题,建立友 好界面,实现人机交互式设计和人机界面的可视化设计,为在 UG 环境下进行人机

83

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

界面设计的设计人员提供有效的技术支持。 (5)对人机工程学当中的人机界面设计进行研究,从分析人机工程学领域的 研究内容和研究方向出发,针对人机界面设计过程,结合设计人员设计思维和习 惯,提出恰当的人机界面设计方法,解决好软件的设计开发和兼容性问题。 (6)用参数化技术和数据库技术建立注塑模标准模架库,实现了参数和数据 之间在操作后台可以进行高速交换和处理。利用数据库技术,减少尺寸数量和数 据库的数据量,从而也就减少了用户输入的数据量,使得用户在程序操作时更加 方便不易出错。 (7)通过对装配体自动装配系统的开发,借助于程序函数的编译和生成,实 现标准模架的自动装配,避免了手动装配时的加载零件和装配条件的设定,节约 了大量的时间。 (8)实现把模架二维零件图融入零件的开发界面中,可以使用户更加清晰的看 到各个尺寸之间的关系,对零件的结构有更加直观的判断,方便的对尺寸进行修改。

6.2 本文的创新点
本文采用全程序编程建模的方法,用程序编程去实现模型的生成,也是用编 程去实现参数的驱动,省去了模板库样板文件的创建,节约了设计的时间,也节 省了文件的储存空间。同时,全程序编程模型避免复杂的建模工作,占用计算机 内存小,并且不用担心会发生参数化模型不能成功更新的情况。 本文把零件机构的二维工程图,加载到用户的创建界面中,用户可以根据二 维图灵活方便的修改零件各个尺寸间的参数,去实现用户的需求。 本文的自动装配系统的开发,是独立的系统,此系统只能实现装配的配合, 具体的实现去通过*.xml 文件控制。在其他的开发装配过程不,程序不需要进行 重新编译生成,只需对*.xml 文件进行编辑修改。

6.3 展望
由于受时间和本人能力的限制, 本文只是在 UG 二次开发方面作了一些初步工 作,还存在许多不足之处。本文在以下问题上有待于进一步深入研究和改进: (1)由于各种软件功能尚未全部开发完成和成熟,再加上本人对各个软件的 学习和应用程度欠缺, 所以设计中的所运用的一些方法有待于进一步完善和提高。 (2)目前该软件大多数主要还是单机运行,存在着文本和图样的修改等工作

84

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

效率低,为此对于大型的人机界面设计还需要网络连接,这样可大大提高效率。 (3)UG 和 Visual Studio.net 的兼容性还有待进一步的优化和整合。

85

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

参考文献
[1] 中国模具工业发展产值已达 534 亿. 中国机床网,2009.09.29. [2] 历年模具进出口比例彰显我国模具出口大国潜质. 中国机械网,2009.09.3. [3] 模具业如何实现从大国向强国的转变. 模具网,2009.07.09. [4] 全球主要模具市场发展现状解析. 国际模具网,2009.09.14. [5] 我国塑料模具发展趋势. 国际模具网,2009.05.21. [6] 六大难题困挠我国塑料模具行业快速发展. 中国机械资讯网,2009.02.09. [7] 紧追步伐让模具制造发挥出最好水平. 国际模具网,2009.09.02. [8] SUH N P. The principles of design[M]. 2nd ed. New York: Oxford University Press, 2000. [9] PINE IIBJ. Mass customization-the new frontier in business competition[M]. Boston: Harvard Business Press, 1993. [10] 贺炜,李思益等. 计算机辅助设计. 北京:机械工业出版社,2004.5. [11] 李凯,阎红娟,罗学科主编. CAD/CAM 与数控自动编程技术. 北京:化学工 业出版社,2004.1. [12] Mark D Gross, Why can’t CAD be more like Lego CKB, a Program for building construction kits. Automation in Construction, 1996, 5:285-300. [13] 刘华春. UG 环境下大型注塑模具 CAD 研究及模流 CAE 分析. 硕士学位论文, 昆明理工大学,2005. [14] 李名尧主编. 模具 CAD/CAM. 北京: 机械工业出版社,2004.7. [15] 任秉银主编,姚英学主审. 模具 CAD/CAE/CAM. 哈尔滨:哈尔滨工业大学出 版社,2006.9. [16] 何涛主编. 模具 CAD/CAM. 北京:北京大学出版社,2006.8. [17] 应道宁,吴中奇. 冷冲模 CAD/CAM 讲座[J]. 模具工业,1986(4):20-24. [18] 张 惠 民 . 国 内 外 模 具 CAD/CAM 技 术 发 展 概 况 [J]. 华 中 工 学 院 学 报 , 1991(5):1-4. [19] 阮雪瑜等. 中国模具工业和技术的发展[J]. 模具技术,2001(2):72-73. [20] 王洪俊,曹颖.Q 汽车覆盖件模具 CAD 技术的应用与发展[J]. CAD/CAM 计算 机辅助设计与制造,2000(4):7-8. [21] 中国模具业 2009 年仍将蓬勃发展. 佳工机电网,2009.03.02. [22] 任天娟. 中小型注塑模标准模架的选用. 广西轻工业, 2009.8 (8) 53 : (93) .
86

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

[23] 孙 涛 ,耿也 ,舒奎 . 注塑模具模架选型专家系统 . 大连工业大学学报, 2009.1(1):73-75. [24] 王雷钢. 注塑模具模架的智能化设计技术研究. 硕士学位论文. 大连理工 大学,2005. [25] 王蕊. 3D 冲裁模辅助设计及标准件库系统开发. 硕士学位论文. 西安工业 大学,2009. [26] 周子凡. 三维模架设计及零部件图形生成系统的开发.硕士学位论文.天津 科技大学,2004. [27] Rippon S, Using CAD for Design and more. Fuel and Energy Abstracts, 1997, 38(3): 55-68. [28] UG OPEN API DOCUMENT. [29] R Ander, R Mendger. Modelling with constraints Theoretieal foundation and application. Computer Aided Design, 1997, 3, 28. [30] EDS PLM Solution, UG NX2 Moldwizard Help. [31] Moldflow Plastics Advsers 70 Introduce. [32] 刘华春. UG 环境下大型注塑模具 CAD 研究及模流 CAE 分析. 硕士学位论 文. 昆明理工大学,2005. [33] 马岩. 基于UG NX的压铸模CAD开发方法的研究及实现. 硕士学位论文. 新疆大学,2007. [34] EDS Unigraphics Division, Unigraphics Modeling User Manual. 1997. [35] 吴友汀. 基于UG产品造型设计特征提取与继承技术研究. 硕士学位论文. 东南大学,2006. [36] EDS Unigraphics Division, Unigraphics Essentials User Manual. 1997. [37] 胡磊. 基于UG的覆盖件冲压成形工艺设计的研究与软件开发. 硕士学位论 文. 武汉理工大学,2006. [38] 刘洪丽. 基于UG二次开发的弧齿锥齿轮参数化造型. 硕士学位论文. 辽宁 工学院,2007. [39] 姚兴,石晓祥,陈军,等. UG软件的二次开发工具在覆盖件冲模智能设计 系统开发中的应用. 锻压技术,2002, (6):55-57. [40] 吴家洲,吴波,杨叔子. UG软件的二次开发. 精密制造与自动化,2002, (1):29-3l. [41] 杨小辉,方宗德,杨青. UG环境下利用GRIP实现螺旋锥齿轮数值仿真齿面
87

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

的精确重建.机床与液压,2005, (1):162-164. [42] 董正卫,田立中,付宜利. UG/OPEN API编程基础[M] . 北京: 清华大学出 社,2002. [43] 王庆林. UG/Open GRIP实用编程基础. 第1版. 北京: 清华大学出版社, 2002.3-11. [44] 何为平,孙小捞. 用UG/Open GRIP开发基于UG-NX的三维冲模标准件库. 纺织机械,2006(6):47-50. [45] 高超. 用UG/Open GRIP对摆动活齿的二次开发. 机械设计与制造,2006.6 (6):118-119. [46] 李立英,柳和生,饶锡新,等. 基于UG二次开发工具的应用研究. 上饶师 范学院学报. 2005,25(6):30-33. [47] 郦洪源. 基于UG的零件库建库技术的研究与实现. 硕士学位论文. 江南大 学,2007. [48] 严婷. 基于UG的三维参数化标准件库的研究与开发. 硕士学位论文. 华中 科技大学,2007. [49] 张桂侠. 基于UG注塑模具CAD系统的研发与应用. 硕士学位论文. 合肥工业 大学,2007. [50] 卓雁雄. UG/Open GRIP 在建模中的应用. 福建电脑. 2006(2):154-155. [51] 黄翔,李迎光. UG应用开发教程与实例精解. 第1版. 北京: 清华大学出版 社. 2005.1-142. [52] 于忠海. 基于实例的刀具CAD系统关键技术研究. 组合机床与自动化加工技 术. 2003(6):33-35. [53] 赵韩,张冰战,朱可. UG二次开发CAD系统MFC的调用方法研究. 现代制 造工程.2007(2):52-54. [54] 陈献平, 樊红丽. 关于UG软件二次开发工具的研究.华中师范大学学报, 2006 (5):141-143. [55] 孙利峰,张汉国,孙文磊. 基于UG NX 的二次开发方法及其实现. 科技咨 询导报,2007(17):18-19. [56] 袁修干,庄达民. 人机工程. 北京航空航天大学出版社,2001.12. [57] EDS Corporation. Unigraghic NX2 API Reference Guide. 2003. [58] EDS Corporation. Unigraghic NX2 API Programmer’s Guide. 2003. [59] 黄勇, 张博林, 薛运锋, 等. 二次开发与数据库应用基础与典型范例. 北京:
88

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

电子工业出版社,2008.1. [60] 侯永涛,丁向阳. UG/Open二次开发实例精解. 北京:化学工业出版社, 2007.4. [61] 黄勇著.UG/Open API、MFC和COM开发实例精解. 北京:国防工业出版社, 2009.2. [62] UGS公司UG/ OPEN API Reference 1998. [63] 李立英,柳和生,饶锡新,等. 基于UG二次开发工具的应用研究. 上饶师 范学院学报,2005.12(6):30-33. [64] 张磊. 再探UG零件建库方法. 机械工程与自动化,2004(1):19-22. [65] 黄翔. 应用开发教程与实列精讲. 清华大学出版社,2005年4月15. [66] Anonymous, CAD translator doesn’t forget feature, parametric, Machine Design, Nov18, 2004: 76, 22:Pg.38. [67] C.M.Hoffmann, K.J.Kim, Towards valid Parametric CAD models. ComputerAided Design, 2001, 33:81-90. [68] 刘文剑,常伟,金天国,等. CAD/CAM集成技术. 第1版. 哈尔滨: 哈尔滨工 业大学出版社,2000.34-41. [69] Ventura Rick J, MignoletMarc P, Kulkami Harihar T, “Good” Parts-Bad “Parts” diseriminatior.An ARX modeling approach.Proe SPIE Int Soc 127-1285. [70] Buchanan s Alasdair, Alan de Peddington. Constraint definition system: a computer-algebra based approach to solving geometric-constraint problems [J]. Computer-Aided Design,1993,25(12):741-750. [71] B D McGinnis, D G Ullman. The Evolution of Commitments in the Design of a Component. Transaction of the ASME(Journal of Mechanical Design), Vol.114, 1992.3. [72] Y.M.Deng, Y.C.Lam, S.B.Tor,et al. A CAD-CAE Integrated Injection Molding Design System. Engineering with Computer, 2002, 18:80-92. [73] 王贤坤,陈淑梅,陈亮. 机械CAD/CAM技术应用与开发. 第1版. 北京: 机械 工业出版社,2001.26-27. [74] Nguyen C, Lafon J.C. Constrained based design of exact Parameterized 3D solids , Proceedings CSG 96, Winchester(UK), 1996, 4:49-64. [75] Osman T.A,Abdel-Aal U.M.,Elkenany A.H.et al. Development of intelligent
89

Opteng.2002(2):

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

CAD for the design of mechanical systems. Journal of Engineering and Applied Science, 2001, 48(5):937-953. [76] Duan W, Zhou J, Lai K.FSMT: a Feature Solid-Modeling Tool for Feature based Design and Manufacture. Computer assisted design, 1993, 25(1): 29-38. [77] Hoffmann C M, Joan-Arroyo R. On user defined features. Computer Aided Design. 1998(5):30. [78] 李 佳 . 计 算 机 辅 助 设 计 与 制 造 . 第 1 版 . 天 津 : 天 津 大 学 出 版 社 , 2001.32-33. [79] 于文革,耿长胜,刘蔚. 三维参数化造型设计方法.中国科技信息,2005, (18):87-90. [80] Nahm Y.E, Ishikawa H. New 3D-CAD system for set-based parametric design. International Journal of Advanced Manufacturing Technology, 2006,

29(1):137-150. [81] Gao H.,Zhao K,Lu Y. Development of 3-D parameterized design system for involute gear parts. Advances in Materials Manufacturing Science and Technology,2004,(11):230-233. [82] Yan Bingbing,Ren Fujun,Yan Chenggang. Parameterized Design of Mechanical Structure of Move-in-mud Robot. 2006, (12):120-124. [83] 高佳宏,朱梅玲,王琳. 包装纸盒盒型参数化设计应用程序的开发与实现. 包装工程,2006,02: 135-139. [84] Marques Davis, Woodbury Robert. Using rule based selection to support change in parametric CAD models. Computer Science, 2006, (6)230-235. [85] 许洪斌,樊泽兴等编著. 塑料注射成型工艺及模具. 北京: 化学工业出版 社,2007.1. [86] 金字华,李双林. 基于 Pro/E 的三维注塑模具参数化标准模架库的建立 [J]. 塑料,2006,35(2):67-74. [87] Celesle Robinson 等著. 邱仲潘等译. Access2002 从入门到精通. 北京: 电 子工业出版社,2002,l-100. [88] Shuang-yue Li. Object-oriented design methods of processing equipment Management database[J]. Journal of southeast institute technology, 2002, 17(1)21-26.
90

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

[89] 胡海青 [1],李建福 [2],田惠群 [1],等. SQL 数据库在 AutoCAD 二次开发中 的应用. 塑料,2010,39(1) : 110-112. [90] 沈炜,徐慧. Visual C++数据库编程技术与实例. 北京: 人民邮电出版社, 2005.2,46-74. [91] 张强. 基于 Pro/E 的圆柱齿轮减速器参数化 CAD 系统的研究与开发. 硕士学 位论文. 西安电子科技大学. 2009. [92] 黄诚驹, 韩旭, 范瑜珍. 基于 AUTOCAD 的塑料注射模 CAD 系统的二次开发. 武 汉职业技术学院学报,2009,8(5):66-69. [93] 黄维通. Visual C++面向对象与可视化程序设计.第 2 版. 北京: 清华大学 出版,2003.3-62. [94] 童团刚. 利用 UG/OPEN API 开发标准件库. 机械设计与制造 ,2004, (1):19-20. [95] 莫蓉,周惠群编著. Unigraphics 18版CAD应用基础. 北京: 清华大学出版社, 2002,380. [96] EDS Corporation. Unigraphics NX2 CAST, 2003.

91

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

附录 A
自动装配 xml 文件: <?xml version="1.0" encoding="gb2312" ?> <root> <sub_node name="asm_01" pt="false"> <sub_node name="dingmuban" pt="true"> <feature name="plan_dingmuban_01" type="PLAN_FACE"/> <feature name="cycl_dingmuban_01" type="CYCL_FACE"/> <feature name="plan_dingmuban_02" type="PLAN_FACE"/> <feature name="cycl_dingmuban_02" type="CYCL_FACE"/> <feature name="plan_dingmuban_03" type="PLAN_FACE"/> <feature name="cycl_dingmuban_03" type="CYCL_FACE"/> <feature name="plan_dingmuban_04" type="PLAN_FACE"/> <feature name="cycl_dingmuban_04" type="CYCL_FACE"/> <feature name="cycl_dingmuban_05" type="CYCL_FACE"/> <feature name="plan_dingmuban_05" type="PLAN_FACE"/> <feature name="cycl_dingmuban_06" type="CYCL_FACE"/> <feature name="cycl_dingmuban_07" type="CYCL_FACE"/> <feature name="plan_dingmuban_06" type="PLAN_FACE"/> <feature name="cycl_dingmuban_08" type="CYCL_FACE"/> <ASM num="2" status="OK">

<constrains id="0" name="ASDDF"> <From_status value="OK"/> <To_status value="OK"/> <Mate_type value="MATE"/> <From_type value="PLAN_FACE"/> <To_type value="PLAN_FACE"/>

<From_P_occ value=""/> <From_F_occ value="plan_dingmuban_01"/> <To_P_occ value="daotao_1"/> <To_F_occ value="plan_daotao_1_01"/> </constrains>
92

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

<constrains id="1" name=""> <From_status value="OK"/> <To_status value="OK"/> <Mate_type value="MATE"/> <From_type value="CYCL_FACE"/> <To_type value="CYCL_FACE"/> <From_P_occ value=""/> <From_F_occ value="cycl_dingmuban_01"/> <To_P_occ value="daotao_1"/> <To_F_occ value="cycl_daotao_1_01"/> </constrains> </ASM> </sub_node> <sub_node name="daotao_1" pt="true"> <feature name="plan_daotao_1_01" type="PLAN_FACE"/> <feature name="cycl_daotao_1_01" type="CYCL_FACE"/> </sub_node> </sub_node> <sub_node name="daotao_2" pt="true"> <feature name="plan_daotao_2_01" type="PLAN_FACE"/> <feature name="cycl_daotao_2_01" type="CYCL_FACE"/> <ASM num="2" status="OK">

<constrains id="0" name="ASDDF"> <From_status value="OK"/> <To_status value="OK"/> <Mate_type value="MATE"/> <From_type value="PLAN_FACE"/> <To_type value="PLAN_FACE"/>

<From_P_occ value=""/> <From_F_occ value="plan_daotao_2_01"/> <To_P_occ value="dingmuban"/> <To_F_occ value="plan_dingmuban_02"/>
93

硕士学位论文

基于 UG 注塑模标准模架库的研究与应用

</constrains> <constrains id="1" name=""> <From_status value="OK"/> <To_status value="OK"/> <Mate_type value="MATE"/> <From_type value="CYCL_FACE"/> <To_type value="CYCL_FACE"/> <From_P_occ value=""/> <From_F_occ value="cycl_daotao_2_01"/> <To_P_occ value="dingmuban"/> <To_F_occ value="cycl_dingmuban_0

相关文章:
基于UG注塑模标准模架库的研究与应用
基于UG注塑模标准模架库的研究与应用_机械/仪表_工程科技_专业资料。模具分类号: 学校代号: 10538 密学 级: 号: s007052 硕士学位论文 基于 UG 注塑模标准模架...
注塑模之标准模架
注塑模之标准模架_机械/仪表_工程科技_专业资料。介绍注塑模具标准模架组成 ...基于UG注塑模标准模架库... 123页 免费 UG_注塑模向导模架说明 6页 1下载...
注射模标准模架及选用
注射模标准模架及选用_机械/仪表_工程科技_专业资料...目的注塑成型模具设计 理论+实践 第 十一 单元(节)...基于pro 的三维注射模标... 4页 免费喜欢...
标准模架
12×M16 4.6 标准模架型号、系列、规格 1.型号 每一组型式代表一个型号。 ...注塑模标准模架 3页 免费 冲模标准模架及标准零件 119页 免费 注射模标准模架...
注塑模具 参考文献
中小型注塑模标准模架的选用[J]. 广西轻工业, 2009, 8(30): 5- 7 [45]...注塑模自动分模技术研究[D]. 上海: 同济大学, 2009. [68] 唐合存. 基于...
第6章 模架库
在对话框的【设置】选项组中,勾选【创建区域】【创建分型线】 ,单击【应用...基于UG注塑模标准模架库... 123页 免费 注塑模三维标准模架库系... 60页 免...
注塑模
摘 要 本文主要是注塑工艺的分析及模具设计。首先,...如美国 EDS 的 UGⅡ、 美国 Parametric Technology ...塑料模标准模架、标准推杆和弹簧等越来越广泛地得到...
注塑模架选择
注塑模具设计资料荟萃-注塑... 4页 免费 模架选择 1页 1财富值 UG二次开发...基于VisualC 6_0的ProE注... 4页 5财富值 标准模架选择步骤 3页 免费喜欢...
模拟试卷2A
主流道衬套 D、定模座板 2.注塑模标准模架中的 B 板尺寸通常表示的是(B)...圆形加工方便,装配容易,应用较广。矩形在相同截 面条件下具有较大的抗弯截面...
标准模架选用
标准模架选用_机械/仪表_工程科技_专业资料。一、标准...的注塑机,包括模架外形的 大小、厚度、最大开模...
更多相关标签:
注塑模具模架 | 注塑模具模架标准尺寸 | 注塑模具模架选择 | 注塑模标准模架 | 注塑模模架 | 注塑模标准模架尺寸 | ug8.0标准模架库下载 | ug10.0模架库下载 |