机械毕业设计(论文)-基于UG的油缸的参数化设计【全套设计】

上传人:good****022 文档编号:116551914 上传时间:2022-07-05 格式:DOC 页数:82 大小:2.30MB
返回 下载 相关 举报
机械毕业设计(论文)-基于UG的油缸的参数化设计【全套设计】_第1页
第1页 / 共82页
机械毕业设计(论文)-基于UG的油缸的参数化设计【全套设计】_第2页
第2页 / 共82页
机械毕业设计(论文)-基于UG的油缸的参数化设计【全套设计】_第3页
第3页 / 共82页
点击查看更多>>
资源描述
编编 号号 无锡太湖学院 毕毕业业设设计计(论论文文) 题目:题目: 基于基于 UG 平台的油缸的参数化设计平台的油缸的参数化设计 信机 系系 机电一体化 专专 业业 学 号: 学生姓名: 指导教师: (职称:副教授 ) (职称: ) 2013 年 05 月 25 日 无锡太湖学院本科毕业设计(论文)无锡太湖学院本科毕业设计(论文) 诚诚 信信 承承 诺诺 书书 全套设计,加全套设计,加 153893706 本人郑重声明:所呈交的毕业设计(论文) 基于 UG 平台 的油缸的参数化设计 是本人在导师的指导下独立进行研究所取 得的成果,其内容除了在毕业设计(论文)中特别加以标注引 用,表示致谢的内容外,本毕业设计(论文)不包含任何其他 个人、集体已发表或撰写的成果作品。 班 级: 机械 94 学 号: 0923189 作者姓名: 2013 年 05 月 25 日 I 无无锡锡太太湖湖学学院院 信信 机机 系系 机机电电一一体体化化 专专业业 毕毕 业业 设设 计计论论 文文 任任 务务 书书 一、题目及专题:一、题目及专题: 1、题目 基于 UG 平台的油缸的参数化设计 2、专题 二、课题来源及选题依据二、课题来源及选题依据 UG 在 CAD/CAM 上显示出了强大的功能,但 UG 为了支持一般 软件的运行于操作,仅具有 CAD/CAM 的一些基础性功能,没有开发 出完善且系统的功能来支持专用产品的计算机设计及制造。 从产品的设计到制造的整个过程中,产品的形状及几何尺寸不可 避免的要进行反复的协调,优化与修改.如果通过 CAD/CAM 进行非 参数化建模,那么即使只是改变图形的一个结构与尺寸,也要对产品的 具体数据进行修改,甚至是重新进行建模,能否在进行产品设计的时候, 通过添加某些特定的数据从而获得产品设计所需的各个机构及零部 件的具体尺寸,这便是是参数化设计的具体思想。 三、本设计(论文或其他)应达到的要求:三、本设计(论文或其他)应达到的要求: 熟悉 UG 的发展历程,特别是近十几年来提出的对于 UG 平台的 二次开发的理论 掌握 UG 平台二次开发的原理以及 VC+语言编译的原理和方法 II 熟练掌握 UG 平台上对话框的设计与排布 了解并熟练运用 UG 与 VC+编程语言的关联性 掌握基于 UG 平台的三维模型的设计与构建 熟练掌握所编写程序在 UG 平台上正确运行的方法 四、接受任务学生:四、接受任务学生: 机械 94 班班 姓名姓名 五、开始及完成日期:五、开始及完成日期: 自自 2012 年年 11 月月 12 日日 至至 2013 年年 05 月月 25 日日 六、设计(论文)指导(或顾问):六、设计(论文)指导(或顾问): 指导教师指导教师 签名签名 签名签名 签名签名 教教研研室室主主任任 学科组组长研究所学科组组长研究所 所长所长 签名签名 系主任系主任 签名签名 2012 年年 11 月月 12 日日 III 摘摘 要要 通过 CAD/CAM 平台,UG 体现出了其强大的功能,但 UG 为了支持一般的 CAD/CAM 软件系统,只拥有其中一部分最基本的功能,缺少用于设计制造专用产品所需 要的完整的计算机功能。机械设计产品花样繁多,需要对具体的设计制造对象对 CAD/CAM 软件二次开发,以此来创建出功能优异,界面完善,使用便捷的 CAD/CAM 系统.通过 UG 的二次开发工具,可以扩展 UG 的功能,实现某些特定产品的参数化设计 和管理。可以大大提高产品设计的效率。 此次设计的题目是基于 UG 二次开发的油缸参数化设计管理。总体思路是输入预荷油 缸的原始设计参数,通过相关公式及查表获得油缸的几何参数,再通过油缸的几何参数 建立油缸模型,从而达到油缸参数化设计,再通过对油缸的各个零部件的管理达到基于 UG 二次开发的油缸参数化管理。 关键词:关键词:油缸;设计参数;几何参数;参数化设计;管理 无锡太湖学院学士学位论文 IV Abstract UG display the formidable function on CAD/CAM, but UG is the general support software system, only has the CAD/CAM basic function and not provide the complete computer-aided design/manufacture function which the special-purpose product needed. As a result of the ever- changing mechanical product,it needs to aim at the concrete object in the CAM software platform which selects to carry on the re-development and designs the nodding acquaintance good and it is easy to operate special-purpose product CAD/CAM system.Through the UG re- development tool,we may expand the function of UG and realize certain specific product parametrization design and the management.we also may enhance the efficiency of product design greatly. This design topic is based on the UG re-development on hydrocylinder parametrization design management.The overall train of thought is that we should input the primitive design variable of the pre-Dutch hydrocylinder,and obtains the geometry parameter of the cylinder through the correlation formula and the table, and then establish the hydrocylinder mode through geometry parameter of hydrocylinder , thus we achieve the hydrocylinder parametrization design and hydrocylinder parametrization management. Keywords: hydrocylinder,design parameter,geometry parameter, parametrization design,management 目目 录录 摘 要 .III AbstractIV 目 录.V 1 绪论 .1 1.1 本课题的研究内容和意义 1 1.2 国内外的发展概况 .1 1.3 本课题应达到的要求 .2 2 相关软件 .3 2.1 unigraphics NX 的简介.3 2.1.1 unigraphics NX 的概述3 2.1.2 unigraphics NX 的功能3 2.2 Visual C+的简介.6 2.2.1 Visual C+的概述6 2.2.2 Visual C+的功用7 2.2.3 设计选用的原因 .7 3 液压缸的介绍 .9 3.1 液压缸的分类和特点 .9 3.1.1 活塞式液压缸3.9 3.1.2 柱塞式液压缸 .12 3.1.3 摆动液压缸 .13 3.1.4 其他 .14 4 预荷油缸的尺寸参数的确定 .15 4.1 液压缸的主要尺寸 15 4.1.1 活塞杆直径 d .15 4.1.2 液压缸内径 D.15 4.2 液压缸的校核 16 4.2.1 缸体壁厚的校核16 4.2.2 液压缸缸盖固定螺栓直径的校核.16 1 d 4.2.3 活塞杆稳定性的验算 16 4.3 动系统及元件缸内径及活塞杆外径选定标准 17 4.3.1 液压缸的缸内径应符合下表 4-4 的规定7.17 4.3.2 液压缸的活塞杆外径应符合下表 4-5 的规定17 5 UG/Open API 的介绍 18 5.1 UG/Open API 的基础知识 .18 5.1.1 UG/Open API 应用程序的初始化与终止 20 5.1.2 函数名称及参数规范 .20 5.1.3 UG 对象类型及操作23 无锡太湖学院学士学位论文 VI 6 创建 UG 应用程序的用户界面27 6.1 MenuScript 菜单技术27 6.1.1 简介 .27 6.1.2 菜单脚本文件及其语法 .28 6.2 UIStyle 对话框技术35 6.2.1 缸筒的参数化设计的对话框 .35 6.2.2 活塞的参数化设计的对话框 .39 6.2.3 卡键帽的参数化设计的对话框 .41 6.2.4 载荷预设值的对话框 .44 7 编译环境设置 .46 7.1 创建 VC+ .46 7.2 配置调试环境 47 8 编写 UG/Open API 程序 50 8.1 简介 .50 8.2 创建应用程序主体函数建模函数 50 8.2.1 缸筒建模函数10.50 8.3 应用程序的自动加载 51 8.3.1 应用程序的自动加载 .51 8.4 应用程序的运行结果 .52 8.4.1 应用程序的运行结果 .52 9 结论与展望 .55 9.1 结论 .55 9.2 不足之处及未来展望 .55 致 谢 .56 参考文献 .57 附 录 .58 基于 UG 平台的油缸的参数化设计 1 1 绪论绪论 原始的机械设计及制造过程艰难且充满复杂性,从设计的整体思路初现端倪开始设 计者就要不间断的反复进行产品设计的整个过程,由于缺少一个人性化的产品设计系统, 设计的整体过程就会显得比较复杂,随之而来的便是效率的及其低下。随着设计软件及 CAD/CAM 技术的不断发展,开发者通过编写程序将设计过程中最抽象,最通用及最最通 用的部分抽取出来并使使用者能够根据实际的情况进行功能的组合,以实现参数化的 CAD/CAM 交互系统。 1.1 本课题的研究内容和意义本课题的研究内容和意义 UG 在 CAD/CAM 上显示出了强大的功能,但 UG 为了支持一般软件的运行于操作,仅 具有 CAD/CAM 的一些基础性功能,没有开发出完善且系统的功能来支持专用产品的计算 机设计及制造。机械设计的复杂性及产品功能的繁复性决定了需要对 CAM 软件平台进行 二次开发以适应具体变化的对象。同样,通过 UG 二次开发工具,可以扩展 UG 的功能, 实现某些产品的参数化设计加工和管理,由此,产品设计的效率将被大大的提高。 产品的设计制造过程中,产品自身的形状及相应的尺寸必然需要经过多次的协调,优化 与修正。如果通过 CAD/CAM 进行非参数化建模,那么即使只是改变图形的一个结构与尺 寸,也要对产品的具体数据进行修改,甚至是重新进行建模,能否在进行产品设计的时候,通 过添加某些特定的数据从而获得产品设计所需的各个机构及零部件的具体尺寸;同样,若产 品的总体设计发生变化,是否可以通过只修改其中一部分的数据而获得产品全新的数据信 息呢?这便是是参数化设计的具体思想。 1.2 国内外的发展概况国内外的发展概况 UG 因其强大的功能成为了当今世界上最为被广泛应用的设计软件,其中包含了世界 上最强力、最广泛的产品设计应用模块。UG 软件作为先进的 CAD/CAM 设计软件,拥有 产品的开发制造,设备全自动生产、设备无缝精确装配、三维图形资源库的功能。 UG 在当今机械产品的设计与制造行业中被运用的日渐广泛及深入,相较于 AutoCAD 等平面绘图系统,UG 的运用较为繁复,但也无法阻碍人们对其深入了解的脚 步。从这一点也可以看出来 UG 拥有人们所希望的良好的性能和全面的开发方法。伴随着 我国 GDP 的快速增长及制造业技术的不断发展,对于电脑制图能力的要求越来越高,并 且现在的制图软件功能也越来越强大,所以 UG 的应 用也越来越广泛,现在,这些制图 软件已在电子和电气、科学研究、机械 设计、软件开发、机器人、模具、工厂自动化、 土木建筑、地质、家电等 各个领域得到广泛应用。制造商在进行产品的研发时所需要的 工具及软件可以完全的被 NX 开发方案所支持。UGS PLM 的一些解决方案均能与 NX 开 发方案完美结合。 无锡太湖学院学士学位论文 2 如今,UG 已经被包括:通用汽车,通用电气,福特,波音麦道,洛克希德,劳斯 莱 斯,日产,克莱斯勒,及美军方所运用,UG 几乎包办了所有飞机及汽车发动机的设计, 体现出了其在高端工程领域及军工领域的实力。在高端领域与 CATIA 并驾齐驱。 对一般 的设计人员来说,要运用 UG 进行复杂产品的三维机械设计,设计师首先要花费大量的时 间熟悉整个软件的运行过程,同时要在较短的时间内对三维建模有较为深刻的认识,这 是一个极其困难的任务。UG 的二次开发工具应运而生,通过其对复杂机械结构的参数化 设计,设计的整体效率被大大的提高。由于 UG 软件的通用性只包含有 CADCAM 的一 些基本功能,无法提供进行专门产品设计是所需要的特定的功能。机械产品具有繁复性, 需要针对具体对 象在选用的 CAM 软件平台上进行二次开发,来设计出界面友好、功能 强大和使用方便的专用产品的 CAD/CAM 系统 UG/OPEN UIStyler、UG/OPEN GRIP 和 UG/OPEN API 的二次开发技术。 1.3 本课题本课题应达到的要求应达到的要求 此次设计的题目是基于 UG 平台的油缸的参数化设计.总体思路是输入油缸的原始设 计参数,通过相关公式及查表获得油缸的几何参数,再通过油缸的几何参数运用 Unigraphics NX 及 Visual C+等三维软件及编程软件建立油缸模型,从而达到油缸参数化 设计。 基于 UG 平台的油缸的参数化设计 3 2 相关软件相关软件 2.1 unigraphics NX 的简介的简介 2.1.1 unigraphics NX的概述的概述 UG NX 作为机械设计领域用途最为广泛的三维建模软件,其主要的作用是创建从设 计到制造的整套自动化流程,作为全新一代的 CADCAM 的系统软件,其在机械设计方 面用途广泛。相对于传统 CADCAM 软件功能的局限性,UG NX 不仅能进行产品结构的 绘制与建立,更能为此建立一套健全的产品设计制造方案,包括产品设计、结构设计、 模型建立、加工成型、结构分析、产品的分析及数据管理、甚至产品使用寿命的评估, 因此 UG NX 是集合了多种功能的设计系统。 UG NX 已成为世界商最优秀公司广泛使用的设计系统。这些公司包括:通用电气、 波音飞机、松下、飞利浦、爱立信、柯达、精工。从 1990 年登陆中国以来,经历了多次 迅猛的发展已成为中国航天业、汽车制造、机械制造业及家用电气等领域的首选软件。 1 2.1.2 unigraphics NX 的功能的功能 几个不同的模块构成了 UG NX 软件,其中包括了 CAD、CAM、注塑件、金属件、 工程质量检测、管路应用、Web、逆向工程等不同模块,其中每个功能模块都以 Gateway 环境为基础,它们之间既相互独立又互相联系。 2.1.2.1 CAD 模块模块 由于在三维建模领域拥有很强的能力,因此 UG NX 软件早已被世界上多家航天及汽 车制造厂商所运用。CAD 模块又由以下许多独立功能的子模块构成: (1) 建模模块 此模块作为全新的产品设计造型模块,提供实体化建模、特性建模、曲面建模等一 系列先进的造型和辅助功能。草图工具适合于全参数化设计;曲线工具虽然参数化功能 不如草图工具,但用来构建线框图更为方便;实体工具完全整合基于约束的特性建模和 显示几何建模的特征,由此各种特征实体、线框架构等功能能被自由的使用;曲面工具 是基于整合了实体化建模和曲面建模基础技术上的设计工具,可以设计出如工业造型设 计产品的复杂曲面外形。 (2) 工程制图模块 UG 工程制图模块中的平面工程图由实体模型自主生成,也可用曲线功能直接绘制。 此模块还提供自主的视图布局(包括基本视图、剖视图、向视图等),而且可以自动或 无锡太湖学院学士学位论文 4 者手动对尺寸进行标注,自动进行剖面线的绘制、对形位公差和表面粗糙度进行标注等。 由于 3D 模型的变化,工程图将会进行同步的更新,进而使二维工程图与三维模型达到基 本一致,同时也减少了因 3D 模型改变而更新二维工程图的时间。 另外,消隐线与截面视图也包括于视图之中,模型修改完成后也会进行相应的更新, 且可以运用自动的视图布局能力提供快速的图纸布局,从而减少工程图更新所需的时间。 (3) 装配建模模块 UG 装配建模模块是用于产品的模拟装配,支持“由底向上”和“由顶向下”的装配方法。 在总装配文中可以对装配模型进行设计和改造,组件通过对齐、偏移等方法进行定位及 配对,加强了性能,减少了对存储的要求。 (4) 模具设计模块 模具设计模块是 UGS 公司提供的运行在 UG 软件基础上的一个智能化、参数化的注 塑模具设计模块。此模块能够对产品的分型、型腔、滑块、推杆、镶块、型腔轮廓,以 及创建电火花加工的电极、模具的模架、浇注系统和冷却系统等提供了方便的设计途径, 最终的目的是生成与产品参数相关的、可用于数控加工的三维模具模型。此外,3D 模型 的每一改变均会自动地关联到型腔和型芯。 2.1.2.2 CAM 模块模块 作为 UG NX 在计算机上的辅助制造模块,CAM 模块提供了 CLSFS 编译与创建实现 了对 NC 的加工,提供了包括铣、车、切割、钣金等加工方法的交互操作,还具有机床数 据文件生成器及图形后置处理的支持。同时又提供了系统资源制造系统、刀具轨迹编辑 器、模拟切削、模拟机床等一系列功能。 2.1.2.3 UG/Gateway 模块模块 Gateway 是运行另外一些对应模块的前提条件,该模块为 UG NX6 另外模块的运作提 供了底层相一致的数据库支持和一个图形交互环境。通过它能够打开已经保存的部件文 件、建立全新的部件文件、画出工程图像及支持不同格式的文件等操作,也提供图层控 制、屏幕布局及视图的定义、表达式及特征查询、对象信息及分析、显示控制及隐藏和 再现对象等操作。 2.1.2.4 MoldWizard 模块模块 MoldWizard 是 UGS 公司设计的能够在 Unigraphics NX 软件基础上运行的一个注塑模 具设计模块。MoldWizard 为产品的分型、型腔、推杆、滑块、镶块、复杂型创建电火花 加工的电极和模具的模架、冷却系统和浇注系统等提供了方便的设计途径,最终可以生 成与产品参数相同的、可用于数控加工的三维模具模型。 基于 UG 平台的油缸的参数化设计 5 2.1.2.5 有序的开发环境有序的开发环境 UG NX 开发工具统称为 UG/OPEN,是一系列基于 UG 的应用软件在一个开放的平台 上集成的。他们随 UG NX 一起发布,主要包括:API、UI Styler、GRIP、KF、NX OPEN、Menu script。 2.1.3 设计选用的原因设计选用的原因 UG/OPEN 是一系列 UG NX 开发工具的总称,主要包括:UIStyler、Menu script、GRIP、UI API、NX OPEN、KF。 (1) UG/OPEN UIStyler 作为开发对话框的工具,UG/OPEN UIStyler 能使设计的对话框于 UG 相集成,使用户的 操作更加方便、更有效的与 UG 进行联动操作。免除了对繁复的图形与用户接口进行编程,直 接使用对话框里的基本空间进行不同的组合从而形成功能相异的对话框。 启动入 UG,点击【开始】【所有应用模块】【用户界面样式编辑器】即可启动 UG 的对话框自主设计功能。可通过选择点击工具栏上的各个控件实现设计对话框上各控 件的添加及删除;通过对象浏览器能观察到各个控件所包含的信息;可运用资源编辑器对 对话框中的各个控件的信息及功能进行修改与删除;同时,可通过设计对话框观察所设 计的对话框的界面情况。 界面设计结束后,将设计完成的对话框保存后即可自动生成三个文件: .dlg、_template.c 和 .h 文件。其中:.dlg 用于保存对话框中的图形文件; .h 是对话框的头文件,其中包含了 对话框和对话框中控件的标识符号及其原型函数;_template.c 作为对话框中 C 语言的头文 件,包含了各种指令及定义。之后的工作是修改 *_template.c 模板文件并在其中加入相应 的代码,以确保对话框能调用函数以实现预期的功能。模板文件*_template.c 的修改应该在 Vc 中修改完成,然后和 .h 编译连接生成 .dll 文件.这种 dll 文件可以直接通过 3 种方式调 用: 1)通过 Open Grip 函数调用 2)通过.men 调用,需要写在.men 文件中 3)通过 UI Styler 二次开发的对话框.dlg 中的按钮响应函数来调用 开发人员可以通过 UIStyler 工具方便、快捷地设定出和 UG 的界面风格相统一的对话 框界面,防止进行复杂的编程。而且可以和用其他开发工具开发出的结果进行集成。 (2) UG/OPEN MenuScript 用这一工具可以使菜单实现用户化。UG/OPEN MenuScript 支持 UG 菜单及对话框 的设计及修改,我们可以使用此功能对 UG 的菜单进行重新编排或增加新的功能来实现用 户所编译的二次开发程序、用户的工具文件以及系统的各项命令等。以下介绍两种能够 无锡太湖学院学士学位论文 6 通过 UG/OPEN MenuScript 实现的 UG 菜单的用户化操作: 1)添加了用户菜单文件:将已经经过用户编辑的且符合要求与规定的文件添加到与 其对应的目录下,这是一种较好的方法。 2)修改编译用户标准菜单文件:用户编辑与修改已经存在的菜单文件.但运用这种办 法将会改变 UG 原有的菜单布局并且无法恢复。 (3) UG/OPEN GRIP GRIP 作为一种独有的图形交互编程语言可以使用户实现在 UG 平台下的大部分操作, GRIP 命令与英语词汇惊人的相似,语法方面与其他编程语言有某些相同之处,在一些情况 下 GRIP 编程语言对于某些较高级的操作似乎比 UG 交互更为有效,UG 交互所能实现的功 能都能通过 GRIP 编程语言实现。UG/Open GRIP 作为最被广泛运用的 GRIP 语言编辑器 由 UG 所提供,用户可以通过它实现修改、编辑、编译、连接程序。和普通的语言一样, GRIP 语言拥有其自身的程序、语法、函数和与其他不同的语言进行互动的接口,单个 GRIP 语句中包含了单个或多个 GRIP 命令,作为 GRIP 语句的基本成分。GRIP 命令有三种 表示格式:A)GPA 符号格式:以此访问 UG 系统中各个对象及参数。)陈述格式:在编辑 于生成实体中起作用。)EDA 符号格式:在访问 UG 数据库中各个对象的功能时起作用。 作为工程师的语言,GRIP 语言具有简明,易懂的特点,由于所编写的程序长而繁复且 要求对细节的精准把握。GRIP 语言常只适用于一些规模相对较小的程序。 (4) UG/OPEN API UG/Open API(User Function),是一个允许程序访问并改变 UG 对象模型的程序集合。 UG/OpenAPI 装载了接近 2000 个 UG 操作的函数, 通过它可以在 C 程序和 C+程序中以 库函数的形式调用 UG 内部的将近 2000 个操作,该函数几乎可以实现 UG 平台上的所有 操作,包括:对 UG 中文件及数据的管理、对图形终端和数据库的操作。 由于编译连接的不同,UG/Open API 程序可以两种不同的环境中运行,分别是外部 (External)及内部(Internal)。通过.exe 的方式,外部类型可以直接运行于操作系统之 中,虽然能在计算机中生成所需的图形文件,但是此类型没办法显示出图形与用户相交互 的特性;内部类型的运行环境限制于 UG 中,并且以.dll 的方式被加入到到 UG 的运行进程 中,并常驻于内存之中。与外部类型相比,更快的连接速度、更小的程序大小及更好的互 动性是其显著的优点。 UG/Open API 程序通过 C 或 C+语言进行编译,这里给出两种方法在 VC 中建立用 于 UG 平台的二次开发程序:1)采用向导构建程序的基本的框架;2)手工构建一个工程。 第一种方法通过向导的指引按照规定的步骤逐步构建出程序的基本框架;第二种方法则 繁琐得多,通过在 VC 中手动加入各个配置,以建立起 UG 软件和 VC 之间的关联,所以最 好使用向导来建立 UG 平台的二次开发工程。 基于 UG 平台的油缸的参数化设计 7 2.2 Visual C+的简介的简介 2.2.1 Visual C+的概述的概述 C 语言作为计算机的高级语言已经在国际上处于主流地位,既可以用它来编译系统内 的软件,也可以用它来编译应用软件。 汇编语言普遍运用于早期操作系统中程序的编译。由于汇编语言对计算机的依赖性 较强,所以为了加强系统软件的可读性及可移植性,应该改用高级语言。但是,由于汇 编语言的某些功能难以用高级语言来实现(汇编语言可以直接对硬件进行操作)。人们 希望找到一种同时具备两种语言优点的语言,于是,C 语言由此应运而生了。 Visual C+6.0 不仅仅作为 C+编译器,更是一个运用于 Windows 操作平台的可视化 集成开发状况。Visual C+6.0 由许多部件组成,包括调试器、编辑器以及向导 AppWizard、类向导 Class Wizard 等一些开发工具. 这些组件通过一个名为 Developer Studio 的组件集成成为一个和谐的开发状况。2 2.2.2 Visual C+的功用的功用 Visual C+它大概可以分成以下三个主要部分: (1) MFC:理论上说,MFC 也不是专门用于 VC+语言的处理,其他类型的 VC+语言也可用 MFC 来进行处理。于此同时,通过 Visual C+编写代码并不意味着必 须要用 MFC,用 Visual C+、ATL、STL 来编写 SDK 程序一样可以。不过,Visual C+ 原本就是为 MFC 打造的,Visual C+中许多特征和语言扩展也是为 MFC 专门而设,所以 用 Visual C+而不是 MFC 就等于丢弃了 Visual C+中极大部分的功能。但是,Visual C+也不完全等于 MFC。 (2) Developer Studio:作为集成开发环境,生活中的大部分工作都是通过此平台 完成的,另外由于其标题上写着“Microsoft Visual C+”,所以有很多人必定会认为这便是 Visual C+。其实并不是这样,虽然 Developer Studio 提供了多种多样的 Wizard 和及其完 善的编译器,但事实上并不包含有任何链接的程序及编译的功能,真正完成这些工作的 幕后英雄另有其人。Developer Studio 不是专门用于 VC 的,同样也可用于 VJ,VB,VID 等。 (3) Platform SDK 才是 Visual C+及整个 Visual Studio 的灵魂和精华,虽然我们很 少能直接与它相接处。总体说来,Platform SDK 是以 Microsoft C/C+编译器为基础搭配 MASM,以其他一些工具及文档资料作为辅助程序。上文中提到 Developer Studio 不含有 编译程序的应用,那此项工作改由谁来完成?是 NMAKE,是 CL,和其它多种多样的命 令行程序,这些我们不可见的程序才是组成 Visual Studio 的基础。9 无锡太湖学院学士学位论文 8 2.2.3 设计选用的原因设计选用的原因 UG/Open API 应用程序是利用 UG/Open API,采用 C 语言进行程序设计,使用 C 语言编 辑器和连接器创建的能够在外部环境及内部环境运行的可执行的程序(文件名后缀名为.exe)或 者动态库(文件名后缀为.dll)形式的程序。基于有差别的操作系统平台,在编译和链接产生 UG/OpenAPI 应用程序的同一时间,编译的选项和所需要系统的文库有所不同。为了使 UG/Open API 应用程序能够正常的运作,一定要对编译和链接的选项进行正确的设置。这 里以最常用的 Windows 操作系统,Visual C+6.0 集成开发环境来创立 UG/Open API 应用 程序的方式及步骤。 而且 vc+工程中自带了一个 UG 向导“Unigraphics NX AppWizard”,通过它进行 UG/Open API 应用程序的设计,创建和调试无疑是一种最佳选择。 可通过一下方法在 vc+工程中获得 UG 向导: 将这两个文件放入 VC+安装目录 C:Program FilesMicrosoft Visual StudioCommonMSDev98Template 下。 基于 UG 平台的油缸的参数化设计 9 3 液压缸的介绍液压缸的介绍 3.1 液压缸的分类和特点液压缸的分类和特点 图 3-1 液压缸的分类图 3.1.1 活塞式液压缸活塞式液压缸 3 (1) 定义:在缸体内作相对往复运动的且组件为活塞的液压缸。 (2) 分类:按伸出活塞杆不同可分为“双杆活塞式液压缸”及“单杆活塞式液压缸”。 按固定的形式可将类型分为“以缸体固定”及“以活塞杆固定”两种形式。 (3) 单杆活塞式液压缸 无锡太湖学院学士学位论文 10 图 3-2 单杆活塞式液压缸 a. 简单连接形式的单杆活塞缸 特点: 两腔面积不等,。 21 AA 压力相同时,推力不等; 流量相同时,速度不等。 即不具有等推力等速度性质。 速度、推力计算: 无杆腔进油时: /4/ 11 cvqAcvqV 2 D cmApApF)( 22111 cmpdDpD4/)(4/ 22212 4/ )( 212 ppDcmd4/ 2 有杆腔进油时: )(/4/ 2222 dDcvqAcvqV cmApApF)( 12212 cmpDpdD4/4/)( 22122 cmpDpdD4/4/)( 22122 21 AA 21 VV 21 FF 故:活塞杆伸出时,推力较大,速度较小; 基于 UG 平台的油缸的参数化设计 11 活塞杆缩回时,推力较小,速度较大。 活塞杆伸出时,适用于重载慢速; 活塞杆缩回时,适用于轻载快速。 往复速比: 22212 /dDDVV 结论:活塞杆直径愈小,两个方向速度差值愈小; 工作过程和固定方式都与双杆活塞液压缸相同。 运动行程:都为两倍的活塞或缸体的有效行程。 b. 差动连接的单杆活塞缸 差动连接:单杆活塞液压缸两腔同时通入流体时,利用两端的面积差进行工作的连 接情况。 速度、推力计算: 2313 AVqAV 2213 /4)/(dcvqAAcvqV 故 要使, 32 VV dD2 4/4/)(2)2( 12122122113 cmpdcmpdDpDcmApApF 特点:能在不增加流量的情况下,实现快速运动。 应用:单杆活塞液压缸不同连接,可实现不同的工作循环: 表 3-1 单杆活塞液压缸的不同连接形式 单杆活塞液压缸的连接 形式 差动连接无腔杆进油有枪杆进油 实现的运动形式快进工进快退 速度与推力 3 V 3 F 1 V 1 F 2 V 2 F c. 活塞缸的安装形式和选用: 表 3-2 活塞缸的安装形式及选用 耳座式法兰式耳环式轴销式 (4) 双杆活塞式液压缸 无锡太湖学院学士学位论文 12 图 3-3 双杆活塞式液压缸原理示意图 特点: 1) 两腔面积相等。 2) 压力相同时,推力相等; 流量相同时,速度相等。. 即具有等推力等速度性质。 推力、速度计算: )(/4/ 22 dDcvqAcvqV 4/)()( 212221 cmppdDcmAppF 缸体固定式液压缸:多为实心双杆式液压缸,其工作过程如下表 3-3: 表 3-3 缸体固定式液压缸工作过程 左腔进油,右腔回油活塞右移 右腔进油,左腔回油活塞左移 总结进油腔与活塞运动方向相反 运动行程:三倍于活塞的有效行程,占地面积较大,一般用于中、小型设备。 活塞杆固定式液压缸:一般形式为空心双杆式液压缸,其工作过程如下表 3-4: 表 3-4 活塞杆固定式液压缸工作过程 左腔进油,右腔回油缸体左移 右腔进油,左腔回油缸体右移 总结进油腔与缸体运动方向相同 运动行程:两倍于活塞的有效行程,占地面积小,一般用于大、中型设备。 基于 UG 平台的油缸的参数化设计 13 3.1.2 柱塞式液压缸柱塞式液压缸 定义:柱塞在缸体内做相对往复运动的液压缸 结构:由缸体、柱塞、导向套、钢丝卡圈组成 工作原理: 只能做单向运动,回程时所需条件:外力 说明:为与老版本的 UG 程序兼容而保留 uc 表明是 UG/Open API 的 C 函数,通常是三位数或四位数接一个字母.例如: uc1601 是状态栏或消息框中显示字符串信息。固定的命名规则不便于函数的查找。在一 定的程序上影响了代码的可读性,而且这些函数正被标准函数所取代,因此在编写代码 的过程中应该尽量使用标准函数。在实际操作过程中,对于有些固定函数,由于其参数 少、使用方便等特点,仍然被广泛的使用。 (3) 参数约定 由于遵循 ANSI/ISO C 的标准,UG/Open API 所对应的头文件中都有函数的原型。函 数的格式一般如下: (变量列表) “回复的数据类型”一般指是 C 语言数据类型或者由 UG/Open API 所定义的数据的类 型。参数一共有三种方式进行输入与输出:I、O 或者 OF,说明见下表 5-2 表 5-2 参数输入方式说明 元素描述 I代表参数是一种输入方式,在使用前必须对其赋值 O代表参数是一种输出方式,无需在使用前对其赋值 OF 代表参数是一种输出方式,使用结束后要释放内存。用于释放内存的函数有 UF_free()、UF_free_string()和 UF_STYLER_free_value()等,要根据实际情况选择使 用哪个函数。 名称:UF_PART_open 使用环境: Internal(内部模式) 描述:将 UG 文件加载到对应的 UG 环境中,并对它进行相应的设定。 该函数的描述见下表 5-3: 表 5-3 函数 UF_PART_open()参数描述 参数输入输出类型描述 无锡太湖学院学士学位论文 22 part_name输入char *要打开的部件文件名 part输出tag_t * 打开部件的标识,当打开部件文件失 败时为 NULL_TAG 续表 5-3 error_status输出UF_PART_load_status_t * 当加载部件失败时该结构中将包含错 误代码和部件文件名称,使用结束后 应使用函数 UF_free_string_arry()和 UF_free()释放内存 return输出int 返回代号: 为 0 时表示正常; 非 0 时表示错误代号 (4) 数据类型 数据类型除了 C 语言的数据类型外,还包括一些自定义的数据类型,如 tag_t 类型、 结构类型(structure type)、枚举类型(enum type)、联合类型(union type)与指针类型 (pointer type)等,统一利用后缀“_t”表示,并且这些数据类型的指针用反缀“_p_t”命名 表示。数据类型约定如下表 5-4 所示: 表 5-4 数据类型约定 后缀描述 _t数据类型 _p_t数据类型的指针 _s结构标识 _u_t联合类型 _u_p_t联合类型的指针 _f_t函数指针 tag_t 数据类型 tag_t 是在 UG/Open API 中运用最广的数据形式 ,UG/Open API 的 uf_defs.h 中定义 如下: typedef unsigned int tag_t ,*tag_p_t; 在 UG 环境中,tag_t 是 UG 对象的句柄,并作为辨别 UG 对象模型的唯一标志。作 为无重复且没符号的数值,绝大多数用以标识应用程序里的对象,如部件、草图、曲线 基于 UG 平台的油缸的参数化设计 23 等。程序只能访问句柄,句柄所指代的实际对象无法被直接访问。获取句柄一般通过直 接调用 API 函数,并在别的 API 函数中直接调用此句柄,以引入它所指代的对象。这个 过程中,句柄的实际值对程序并无影响。此外,tag_p_t 是指向 tag_t 数据类型的指针。 这里以如下代码为例来说明 tag_t 的使用方法: tag_t disp_part_tag; int part_units; char part_nameMAX_FSPEC_SIZE; disp_part_tag=UF_PART_ask_display_part(); UF_PART_ask_units(disp_part_tag, UF_PART_ask_part_name(disp_part_tag,part_name); 这段代码中首先通过 UF_PART_ask_display_part()函数获得显示部件的 tag_t,之后再 使用该 tag_t,调用函数 UF_PART_ask_units()和 UF_PART_ask_part_name()获得部件的单 位和文件名。 5.1.3 UG 对象类型及操作对象类型及操作 UG 中的所有对象都是通过唯一的 tag_t 值进行标识,对象的类型大致可分为以下三 类: 部件对象 (Part object); UF 对象 (UF objects); 表达式 (Expressions); (1) 部件对象: 部件对象包含了零件大量的几何信息与非几何信息,是 UG 最基本的操作对象之一。 其中,非几何信息包括:计算机的类型;保存部件所运用的 UG 版本;部件所包含的历史 信息;部件中所包含的各种永久性的信息。 表 5-5 对部件对话操作的函数 函数描述 UF_OBJ_cycle_objs_in_part()在部件中查询对象 UF_ATTR_ask_part_attrs()访问部件的属性 UF_PART_close() UF_PART_reopen() 关闭和再打开部件 UF_PART_ask_part_name()获取部件的文件名 UF_PART_ask_customer_area() 查询其他信息,包括:查询用户定义的数据、部 无锡太湖学院学士学位论文 24 UF_PART_ask_description() UF_PART_ask_status() 件文件的描述信息,部件文件的状态信息 UF_PART_ask_part_history()查询部件文件的历史 UF_PART_ask_compression_flags() UF_PART_set_compression_flags() 查询及设置部件文件的压缩标记 (2) UF 对象: UF 对象是那些具有标识的实体、包括几何对象和非几何对象。几何对象包括点、线、 面、实体等;非几何对象有坐标系、矩阵、尺寸等。UG 中所有具有标识的实体,如点、 线、面、基准等,都可以称为对象。模型中包含的对象包括几何实体对象、非几何对象。 UF 利用类型与子类型来辨别部件文件中的不同对象。每个 UF 对象都有一种类型,在头 文件 uf_object_types.h 中,对象类型和子类型都被进行了完整的定义,UF 对象可以通过 子类型进行详细的描绘,但子类型并不是普遍存在的。 UG/Open API 提供的访问和操作 UF 对象的函数包括 UF 对象的查询、遍历、等。对 象操作函数请参考头文件 uf_obj.h 中的定义。 表 5-6 UF 对象基本操作属性 函数描述 UF_OBJ_set_name() UF_OBJ_ask_name() UF_OBJ_delete_name() 指定、查问及删除单个对象的名称 UF_OBJ_cycle_objs_in_part() UF_OBJ_cycle_all() UF_OBJ_cycle_by_name() UF_LAYER_cycle_by_layer() 查询遍历对象,可以在指定部件中遍历对象,在 当前工作部件中遍历对象,通过对象名称和图层 查询对象 UF_MODL_delete_exp() UF_MODL_delete_feature() UF_OBJ_delete_object() UF_OBJ_delete_array_of_objects() 对象删除 UF_UI_select_single() UF_UI_select_by_class() UF_UI_select_feature() UF_UI_select_sketch() 对话选择 对象状态 对象的状态可通过使用函数 UF_0BJ_ask_status()来查询。对象共有下列几种状: 基于 UG 平台的油缸的参数化设计 25 表 5-7 up 对象状态标识 状态标识描述 UF_OBJ_DELETED被删除的状态 UF_OBJ_TEMPORARY 临时状态。例如临时坐标系由 UF_CSYS_create_temp_csys 函数创建,不 会被保存 续表 5-7 UF_OBJ_CONDEMNED 不正常状态。一般由于对象被删除,但它是其它对象的参考,只有所有 的这些参考被删除后,该对象才从模型中被删除,该状态的对象永远不 被显示 UF_OBJ_ALIVE激活状态 对象访问 在创建对象时,可以直接得到对象标识。多数情况下需要查询存在于文 件中的现存对象。一般可能通过以下两种方法来确定 UF 对象的标识: 一是循环法。即可在获取目标体上面标识的循环过程中,插入下段程序。程序会显 示于目标上方并出现一个要用户确定的对话框,其中显现对象的标志。其中 tem_tag 为目 标体上表面的标识。 UF_DISP_set_highlight(tem_tag,1); Sprintf(mess, “The object is %d!“, i); uc1601(mess, 1); UF_DISP_set_highlight(tem_tag,0); 二是参数法。即可利用函数 UF_MODL_ask_face_data 获得目标体上表面的参数,包 括表面的法向和表面的原点等信息。 设置可显示的 UF 对象信息的函数。 UG/Open API 提供了对可显示的 UF 对象的层、颜色、线型等属性进行设置和查询的 接口。注意除了高亮状态外,其他信息都可以保存到 part 文件中。 表 5-8 设置可显示 up 对象函数 函数描述 UF_OBJ_ask_display_properties()用于查询可显示 UF 对象的显示属性 UF_OBJ_set_layer()用于设置可显示 UF 对象的层 UF_0BJ_set_color()用于设置可显示 UF 对象的颜 UF_0BJ_set_blank_status()用于设置可显示 UF 对象的 blank 状态 UF_OBJ_set_line_width()用于设置可显示 UF 对象的线型 UF_OBJ_set_font()用于设置可显示 UF 对象的字体 无锡太湖学院学士学位论文 26 UF_DISP_set_highlight()用于设置可显示 UF 对象的高亮(highlight)状态 (3) 表达式: 表达式的定义: 表达式提供 UG 中的参数化建模的机制,表达式能控制特征,特征也随表达式的变化 而改变。 表达式的形式一般是:“name = value”。 表达式名的首字符必须用字母表示,其他的字符可以用数字、字母、下划线等代替。 表达式名是大小写敏感的,一个部件文件中的表达式名应唯。表达式值可以是数字和 条件等式,表达式名可以用于表达式值中。 表达式的使用: UF 函数允许用户创建、查询和编辑表达式和几何表达式,对表达式进行各种操作的 函数包含在头文件 uf_modl.h 中,对几何表达式进行各种操作的函数包含在头文件 uf_gexp.h 中。 如果表达式串中,仅仅提供表达式值,UG 软件会自动给它个名字。如表达式串 定义如下: “diameter2” UG 会赋给它一个类似“p0”的名字。建议按下列形式赋值 “radius = diameter2 ” 可以用函数 UF_MODL_create_exp()创建表达式;当需要得到创建的表达式的标签时, 使用函数 UF_MODL_create_exp_tag()。常用表达式操作函数如表 5-9 所示: 表 5-9 常用表达式操作函数 函数描述 UF_MODL_create_exp()创建表达式,没有返回 UF_MODL_create_exp_tag()创建表达式,返回新建表达式的标识 UF_MODL_import_exp() 从文件输入表达式,即可引用其它部件的表达式 文件,操作完成后必须用函数 UF_MODL_update()更新数据库 UF_MODL_dissect_exp_string()分解名字和值返回名字、值和表达式的标 UF_MODL_eval_exp()输入表达式的名,返回表达式的值 UF_MODL_edit_exp() 用新的值替换表达式中原有的值。使用后应用函 数 UF_MODL_update()来更新模型 UF_MODL_rename_exp()给已有表达式赋新的名称 UF_MODL_ask_exp()返回表达式名和表达式值 UF_MODL_ask_exps_of_feature()返回制约某特征的所有表达式的标识 基于 UG 平台的油缸的参数化设计 27 UF_MODL_ask_exps_of_part()返回某部件文件的所有表达式的标识 UF_MODL_ask_exp_tag_string()输入表达式标识,返回该表达式串 UF_MODL_ask_exp_tag_value()通过表达式标识获得表达式值 6 创建创建 UG 应用程序的用户界面应用程序的用户界面 通过上面的一些介绍,我们对液压缸的结构、组成、设计原则以及 UG 建模、 UG/Open API 函数有了初步了解。在些基础上,我们就可以用 Visual C+在 UG 平台上 对有关液压缸的建模操作进行参数化设计的二次开发.下面将详细说明如何运用 MenuScript 菜单技术和 UIStyle 对话框技术对液压缸的参数化设计进行用户界面的设计。 6.1 MenuScript 菜单技术菜单技术 6.1.1 简介简介 UG/Open MenuScript 是 UG/Opend 的一个重要的构成成分,支持 UG 平台中菜单的构 建与修改,并可利用
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 研究报告 > 家居行业


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

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


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