




已阅读5页,还剩57页未读, 继续免费阅读
(机械设计及理论专业论文)基于proe的零件参数化设计及自动装配技术的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着计算机技术和信息化技术的发展,产品参数化c a d 系统的开发已成为企业产 品数字化、信息化的必然趋势,建立产品参数化图库、实现零件自动装配是企业的迫切 需要。本文的研究工作对弥补通用c a d 软件参数化建库功能的不足,简化繁琐、重复 性的装配工作具有重要的现实意义。 本文以国内普遍使用的c a d c a m 软件p r o e n g i n e e r ( 简称p r o e ) 为平台,对 p r o e 的各种二次开发工具簇表( f a m i l yt a b l e ) 、用户定义特征( u d f ) 、p r o g r a m 、 j - l i n k 和p r o 厂r o o t 等进行了分析比较。确定了利用p r o 厂r o o l k i t 进行p r o e 二次开 发的方法,对二次开发的关键技术如接口设计、数据库设计、界面设计以及创建 p r o t o o l k i t 应用程序、实现p r o e 与m f c 的通信等进行了研究和探索。 其次,提出了一种实现零部件自动化装配的方法。在应用自动装配理论的基础上, 研究了自动装配的关键技术,利用p r o t o o l k i t 编写了自动装配函数,从而在p f o e 环 境下完成了零部件的自动装配。 最后,本文应用以上研究成果设计开发了擦窗机参数化与自动装配系统。通过该 系统,用户可在可视化平台上设计擦窗机各个零部件,同时实现零部件间的自动装配, 这样不仅避免了相似零件设计的重复性,提高其设计效率和设计质量,缩短产品的开发 周期,而且方便了产品后续的有限元分析,符合现代设计思想的发展,具有较高的使用 价值和应用前景。 关键词tp r o e ;二次开发: p r o 厂t o o l t ;参数化;自动装配 a b s t r a c t w i t ht h e d e v e l o p m e n to fc o m p u t e rt e c h n i q u ea n di n f o r m a t i o ni n d u s t r y , p a r a m e t r i c t e c h n i q u ea r eu s e di nm e c h a n i c a lf i e l d t h ed e v e l o p m e n to fp r o d u c t i o np a r a m e t r i cc a d s y s t e mh a sb e c o m ec e r t a i nt r e n di ni n f o r m a t i o na n dd i g i t a le n t e r p r i s ep r o d u c t i o n s o t e c h n i q u eo fp a r a m e t r i ca n da u t o m a t i c a s s e m b l ei sw i d l yn e e d e d w h e nt h e r ea r el o t so fp a r t s i na s s e m b l y ,at e d i o u sa n dr e p e t i t i o u sw o r kc a nb er e s u l v e db yt h et e c h n i q u eo f a u t o m a t i c a s s e m b l e p r o ei saw i d l yu s e dc a d c a ms o f t w a r e t a k ei tf o rs t u d y i n go b j e c t ,w i t ha n a l y s i so f t h ed e v e l o p m e n ti n t e r f a c e so fp r o e n g i n e ea n dm a k ec o m p a r i s o nf o rc h a r a c t e r i s t i co f f a m i l yt a b l e ,u d f , p r o g r a m ,j - l i n k ,p r o t o o l k i t t h ew a yo fc r e a t i n ga p p l i c a t i o no f p r o t o o l k i ta sw e l la si m p l e m e n to fi n f o r m a t i o nt r a n s f o r m a t i o nm e c h a n i s mb e t w e e np r o e a n dm f ca r es t u d i e d s e c o n d ,t h ep a p e rp u te m p h a s i so ns t u d yo fa u t o m a t i c - a s s e m b l e a c c o r d i n gt ot h e t h e o r i e sa n dt e c h n i q u eo fa u t o m a t i c a s s e m b l e ,u s i n gt w i c e - d e v e l o p m e n tt o o lp r o t o o l o fp r o et oe d i tf u n ctio no fa u t o m a t i c a s s e m b l e ;c o m p l e t i n ga u t o m a t i c - a s s e m b l eo fp a n s a n da s s e m b l yb yp r o e f i n a l l y , t h ep a p e rd e v e l o p sas y s t e mo fg o n d o l as t u d i e di np r o e t h i ss y s t e mi so p e r a t e d e a s i l ya n dp r a c t i c a l t h r o u g ht h i ss y s t e m ,y o uc a nd e s i g na l lp a r t so nv i s u a lc i r c u m s t a n c ea n d m a k et h es y s t e ma u t o m a t i c - a s s e m b l e t h i ss y s t e mn o to n l yw o u l di m p r o v et h ed e s i g nq u a l i t y a n de f f i c i e n c yo fs p i d e r , a n ds h o r t e nt h ed e v e l o pc y c l e ,b u ta l s ow o u l db ev a l u a b l et ot h e f i n i t ee l e m e n ta n a l y s i s s oi tc o u l ds a t i s f yt h ed e v e l o p m e n to fm o d e mt e c h n o l o g y t h e p r a c t i c ep r o v e dt h a tt h es y s t e mc a ne n h a n c ep r o d u c t i v i t yg r e a t l y , l i g h t e nd e s i g n e r sb u r d e n , h a v eh i g hp r a c t i c a lv a l u e k e y w o r d s :p r o e :t w i c e d e v e l o p m e n t :p r o t 0 0 l k i t :p a r a m e t r i c :a u t o m a t i c a s s e m b l e 论文独创性声明 本人声明:本人所呈交的学位论文是在导师的指导下,独立进行研究工 作所取得的成果。除论文中已经注明引用的内容外,对论文的研究做出重 要贡献的个人和集体,均已在文中以明确方式标明。本论文中不包含任何 未加明确注明的其他个人或集体已经公开发表的成果。 本声明的法律责任由本人承担。 论文作者签名:翼镳碾 司年妒 - 日 论文知识产权权属声明 本人在导师指导下所完成的论文及相关的职务作品,知识产权归属学 校。学校享有以任何方式发表、复制、公开阅览、借阅以及申请专利等权 利。本人离校后发表或使用学位论文或与该论文直接相关的学术论文或成 果时,署名单位仍然为长安大学。 ( 保密的论文在解密后应遵守此规定) 论文作者签名:韩志强 导师签名: 肉嘞 如坼j 月叼日 2 。司年岁月叩日 长安人学硕l :学位论文 第一章绪论 1 1 选题背景及意义 当今世界,任何一个国家若要在综合国力上取得优势地位,就必须在科学技术上取 得优势。2 0 世纪9 0 年代以来,随着计算机技术为支柱的信息技术的发展,世界经济格 局发生了巨大的变化,逐步形成了一个统一的一体化市场,经济循环加大、加快,市场 竞争同趋激烈。同时,工业产品由传统的产品向机电一体化产品、信息电子产品方向发 展,技术含量大为增高。这种趋势促使企业在着手进行新产品开发时把面向产品的创新 性、外观造型、人机工程等设计理念提高到了一个新的高度,从而也迫切要求对产品设 计的研究能有进一步的突破,以提高企业形象、产品设计水平和市场竞争力。正因如此, 对于产品设计领域的研究逐渐受到国内外学者的关注。特别是近几年来,随着计算机软 硬件技术的同新月异,计算机图形学、计算机辅助设计、多媒体等技术的发展,日益激 烈的市场竞争要求现代化企业必须低成本高效率的开发新产品。同时,新产品的更新换 代周期不断缩短,这样产品的设计过程在产品的整个生命周期中占据了越来越重要的地 位。企业对产品的设计要求程序化、可视化,这使c a d 、c a m 、c a e 等技术得到迅速 普及和发展。 随着c a d 技术的不断发展,像擦窗机这样零部件较多的机械的设计向提高效率、 增加可靠性、减轻质量等方向发展。但由于其结构复杂,包含的零部件很多,并且在传 统设计当中,零件模型是设计者利用固定的尺寸得到的,仅仅描述零件的可视形状,不 包含设计者思想,一旦零件尺寸或设计要求发生变化,必须重新绘制对应的零件模型, 这样在擦窗机的系列化设计上消耗了大量的人力物力。 参数化设计的理念j 下是解决这一问题的有效途径。参数化设计是面向系列化产品的 动态设计即根据设计对象拓扑结构的共同特征,用一组参数约束设计对象的结构尺寸, 噜 通过对其结构尺寸的关系驱动来实现相似的柔性设计。这样,用户就可以按着设计意图 方便的驱动和更改以前的模型,并可以生成系列模型库。 擦窗机工作装置存在着大量的装配关系,在使用通用c a d 软件对其进行装配时, 如果对每一个零部件进行交互装配,会占有很多时间。这成为在c a d 领域内进一步发 展面向装配体的辅助设计( 如装配体的参数化设计、功能概念的自顶向下设计等) 的瓶 颈。为了节省设计时间,利用c a d 二次开发技术对零部件进行自动装配,将会大大提 高设计效率和质量。 第一章绪论 综上所述,利用通用图形软件平台进行二次开发,对弥补c a d 软件自身不足,切 实解决工程实际问题具有重要的现实意义和良好的应用前景。 1 2 现代c a d 技术的发展现状及趋势 c a d 技术起始于2 0 世纪5 0 年代后期,进入6 0 年代,随着绘图在计算机屏幕上变 为可行而迅猛发展,早期的c a d 技术主要体现为二维计算机辅助绘图。进入8 0 年代以 来,3 2 位微机工作站和微型计算机的发展和普及,再加上功能强大的外围设备,极大地 推动了c a d 技术的发展。与此同时c a d 技术理论也经历了几次重大的创新,形成了曲 面造型、实体造型、参数化设计及变量化设计等系统。c a d 软件已做到设计与制造过 程的集成,不仅可进行产品的设计计算和绘图,而且能实现自由曲面设计、工程造型、 有限元分析、机构仿真、模具设计制造等各种工程应用。现在,c a d 技术已全面进入 实用化阶段,广泛服务于机械、建筑、电子、宇航、纺织等领域的产品总体设计、造型 设计、结构设计、工艺进程设计等各环节。 c a d 技术经历了如下发展阶段i l , 2 , 3 1 : 1 第一阶段一曲面造型系统阶段 2 0 世纪6 0 年代出现的三维c a d 系统只是极为简单的线框式系统。这种初期的线 框式造型系统只能表达基本的几何信息,不能有效表达几何数据问的拓扑关系。由于缺 乏形体的表面信息,c a e 及c a m 均无法实现。 进入7 0 年代,正值飞机和汽车工业的蓬勃发展时期。此间飞机及汽车制造中遇到 了大量的自由曲面问题,当时只能采用多截面视图、特征纬线的方式来近似表达所设计 的自由曲面。此时法国人提出了贝塞尔算法,使人们用计算机处理曲线与曲面问题变得 可行,同时也使法国达索飞机制造公司的开发者们,能在二维绘图系统c a d c a m 的基 础上,开发出以表面模型为特点的自由曲面建模方法,推出了三维曲面造型系统c a t i a 。 它的出现,标志着计算机辅助技术从单纯模仿工程图纸的三视图模式中解放出来。 2 第二阶段一实体造型技术阶段 有了表面模型,c a m 的问题可以基本解决。但由于模型技术只能表达形体的表面信 息,难以准确表达零件的其他特征,如质量、重心、惯性矩等。对c a e 十分不利,最大 问题在于分析的f i 处理特别困难。基于对c a d c a e 一体化技术的探索,s d r c 公司1 9 7 9 年发布了世界上第一个完整基于实体造型技术的大型c a d c a m 软件一i d e a s 。由于 实体造型技术能够精确表达零件的全部属性,在理论上有助于统一c a d 、c a e 、c a m 2 长安人学硕i j 学位论文 的模型表达,给设计带来惊人的方便性。 3 第三阶段一参数化技术阶段 正当实体造型技术逐渐普及之时,c a d 技术的研究又有了重大进展,即就是参数化 实体造型方法。该方法具有以下特点:基于特征、全尺寸约束、全数据相关联、尺寸驱 动设计修改。最早的参数化软件是p t c 公司的p r o e 。进入9 0 年代,参数化技术日益 成熟,充分体现出其在许多通用件、零件设计上的简单易行的优势。 4 第四阶段一变量化技术阶段 参数化技术的成功应用,使它在2 0 世纪9 0 年代前后成为c a d 业界的标准。但参 数化技术亦尚有一些不足之处。首先,“全尺寸约束 这一硬性规定就干扰和制约着设 计者创造力和想象力的发挥。全尺寸约束,即设计者在设计初期和全过程中,必须将形 状和尺寸联合起来考虑,并且通过尺寸约束来控制形状,通过尺寸的改变来驱动形状的 改变,一切以尺寸( 即所谓的“参数”) 为出发点。一旦所设计的零件形状过于复杂, 面对满屏幕的尺度,如何改变这尺寸达到所需要的形状很不直观;再者,如在设计中关 键形体的拓扑关系变化,失去了某些约束特征也会造成成系统数据的混乱。于是一种以 参数化技术为蓝本,比参数化技术更先进的实体造型技术一变量化技术应运而生。变量 化造型的技术特点是保留了参数化技术基于特征、全数据相关、尺寸驱动设计修改的优 点,但在约束定义方面做了根本性改变。变量化技术将参数化技术中需定义的尺寸”参数” 进一步区分为形状约束和尺寸约束,而不是象参数化技术那样只用尺寸来约束全部几何。 集成化是c a d 未来发展的主要趋势。c a d 技术的集成化体现在三个层次上:其一 是广义c a d 功能q 如c 舡c a p p c a m c a q p d m e r p 经过多种集成形式成为企业一 体化解决方案,推动企业信息化进程。目前创新设计能力( c a d ) 与现代企业管理能力 ( e r p 、p d m ) 的集成,已成为企业信息化的重点;其二,是将c a d 技术能采用的算 法,甚至功能模块或系统,做成专用芯片,以提高c a d 系统的效率;其三是c a d 基于 网络计算环境实现异地、异构系统在企业间的集成。应运而生的虚拟设计、虚拟制造、 虚拟企业就是该集成层次上的应用。 1 3 自动装配技术的研究现状 随着c a d 技术的发展,自动装配功能的实现也随之发展和成熟起来。自动装配技 术解决了由于零件数目众多,装配繁琐重复性操作的问题,从而大大提高了设计效率。 目前,对自动装配的研究有美国n a s a 用于哈勃望远镜虚拟修理装配的原型系统、 3 第一章绪论 同本今村等人开发的虚拟辅助设计与制造系统v s d s s 、葡萄牙j r g a l v a o 等所进行的 虚拟环境下的生产训练研究、日本n a b e 等人开发的机械零件装配性验证和装配机器可 视化系统以及发现初学者在装配虚拟机器时错误操作的训练系统等。 华中科技大学的吴义忠、王书亭、陈立平、周济【4 l 提出在p d m 环境下,自动装配模 块通过装配规划,将c a d 生成的二维零件图文档链接到装配图中正确位置。通过求作 二维零件图的外( 内) 轮廓,根据各零件之间的覆盖关系,采用边界裁剪实现裁剪装配 或采用面域覆盖以实现消隐装配,从而在不破坏零件图信息的情况下快速而简捷地完成 二维零件图的自动装配。由于生成的装配图动态地反映了零件图的变化,因而该方法对 面向装配的设计提供了有力的支持。 南京航空航天大学的张萍、廖文和、刘长毅【5 l 提出了一种根据零件及其装配特征的 参考原点和装配基准面来确定零件移动位置和方向的方法,从而完成自动装配,大大地减 少了计算机辅助装配系统输入的数据量,提高了装配速度。作者采用这一方法开发了基于 c a x a 平台的夹具快速装配子模块,取得了较好的效果。 南京航空航天大学的李福海、刘刻6 】在对飞机硬式机械操纵系统组件功能和构造特 点进行分析以及零件参数化模型的基础上,采用u g 二次开发工具u g o p e n ,通过编辑不 同类型零件的几何特征参数实现零件参数化设计;针对u g 交互方式进行大型复杂系统 虚拟装配存在的操作过程烦琐、重复性差等不足,研究开发装配过程中的零部件自动坐标 定位,并对虚拟装配过程加以记录,实现虚拟装配自动化。 北京科技大学的谢敏理、和丽、许纪倩1 7 】实现了一种利用p r o e 的二次开发接口 p r o 肿o l k i t 和用户进行无缝连接来实现零件的自动的装配方法。首先取得组件和元 件的句柄,调用已完成的零件模型;其次调用编写好的装配函数,实现自动装配。 河南工业学校的王聪兴、王华鲜、贺志范、宋燕池【8 】实现了基于p r o 鹰二次开发的 装载机工作装置自动装配设计。提出了在装配模型中零件坐标系与装配坐标系之间的空 间变换矩阵对进一步操作零件在装配体中的空间位置具有关键性作用,而自动装配的实 质就是根据零部件在装配空问中的位置,按照装配路径将零部件装配起来。该种方法的 优点是对用户方便、直观,空间概念上也很好理解。 1 4 论文主要研究内容 本文研究内容主要为以下几方面: 1 基于p r 0 e 的二次开发技术研究。在分析比较各种p r o e 二次开发工具的基础上, 4 长安人学硕i :学位论文 选择并确定课题的开发工具,设置丌发环境。 2 参数化图库开发关键技术研究。为了创建参数化零件图库,实现零件图库的数据 与用户界面之问正确的访问,研究确定用户界面技术、各种链接接口以及实现各种接口 后台链接的接口总方案。 3 自动装配技术研究。在自动装配理论研究基础上,提出了基于p r o e 的自动装配 方法,探讨其关键技术并对其方法进行验证。 4 擦窗机参数化系统的设计与开发。在参数化与自动装配技术研究的基础上,利用 上述研究成果,设计确定擦窗机系统总方案,通过应用程序调用,将所有的接口与资源 有机地链接起来,实现系统的功能。 本文的最终目的是探讨零件参数化建库与自动装配的方法,为解决工程机械产品的 参数化与装配自动化问题提供一个可行方案。 5 长安人学硕l :学位论文 第二章基于p r 0 e 的二次开发技术 2 1p r o e 二次开发方式 2 1 1p r o e 二次开发工具 成熟的c a d c a m 软件一般都有自己提供用户使用的二次开发接口,如a u t o c a d 的a u t o c a dr u n t i m ee x t e n s i o n ( a r x ) ,i - d e a s 的o p e na r c h i e c t u r e ( o a ) 等等,它给用户 提供一系列工具,可以完成用户界面定制、宏程序定义和编写外部程序来根据自己的需 要或具体情况扩展系统的功能。p r o e 软件在提供强大的设计、分析、制造功能的同时, 也为用户提供了丰富的二次开发工具。常用的有p r o p r o g r a m 、簇表( f a m i l yt a b l e ) 、用 户自定义特征( u d f ) 、j - l i n k 和p r o t o o l k i t 等【9 , 1 0 】。其功能及特点如下: 1 p r o p r o g r a m p r o e 对每个零件或组件模型都有一个主要的设计步骤和参数列表,那就是 p r o p r o g r a m 。它是零件与组件自动化设计的一种有效工具。设计人员可使用类似b a s i c 的高级语言,根据需要来编写该模型的p r o g r a m ,包括控制特征的出现与否、尺寸的大 小、零件与组件的出现与否、零件与组件的个数等。然后,p r o e 就可以通过运行该程 序来读取此零件或组件,并通过人机交互的方法得到不同的几何形状,以满足产品设计 的需要。 2 簇表( f a m i l yt a b l e ) 簇表可用于管理具有相同或相近结构的零件,特别适用于标准零件的管理。它是通 过建立基础零件为父零件,然后在簇表中定义各个控制参数来控制模型的形状及大小。 这样,就可通过改变各个参数的值来控制派生的各种子零件。 采用这种方法可以方便地生成标准零件库,但其交互性的缺陷及操作复杂性给用户 带来不便,并且装配时不能直接调用和占有的内存空间大。 3 用户自定义特征( u d f ) 设计人员在使用p r o e 进行零件设计时,经常会遇到一些重复出现的特征。例如, 螺钉的座孔等,因此设计人员就要花费许多时间进行这种重复性的操作。用户自定义特 征则能将同一特征用于不同的零件上,或将若干个系统特征融合为一个自定义特征,使 用时作为一个全局出现。这样,设计人员就可以建立自己的用户自定义特征库,根据产 品特征快速生成几何模型,从而极大地提高了设计人员的工作效率。 4 j 1 i n k 7 第一二市桀十p r o e 的_ 二次开发技术 j - l i n k 是一个面向对象,独立于平台且向上兼容的基于j a v a 的应用程序接口。它是 对p r o p r o t o o l t 进行封装而来的,虽然有些功能目前还没有实现,但都已经预留 了接口。此外,j a v a 语言本身具有与平台无关、安全、易于实现基于网络的应用程序等 优势,p t c 公司对j a v a 语言日益重视,现在p r 啦的部分模块已经是完全用j a v a 语言 开发的,如n c p o s t 模块。因此,从某种意义上说,j - l i n k 是p r o e 进行二次开发最具 发展潜力的工具。 5 p r o 汀o o l k i t p r o t o o l k i t 是p t c 为p r o e 制定的开发工具包,它提供了应用程序接口( a p i ) , 使客户或第三方厂商具有扩展p r o e 功能的能力。p r o t o o l k i t 使用面向对象风格c 编 程,且提供一个庞大、用于底层资源调用的c 语言函数和头文件,外部应用程序可借此 访问p r o e 的数据库和应用程序。 鉴于以上开发工具的功能及特点,结合本课题的任务主要是建立参数化图库及实现 零部件的自动化装配,故采用p r o t o o l k i t 作为二次开发工具。 2 1 2p r o t o o l k l t 的工作方式 p r o t o o l k i t 应用程序共有两种工作方式,一种为同步模式( s y n c h r o n o u sm o d e ) ; 另一种为异步模式( a s y n c h r o n o u sm o d e ) 。工作方式关系如图2 1 所示: 厂桫黻已一幻 l 厂群黔馘僵呻妙一) 8 长安人学硕t :学位论文 也称派生模式( s p a w n e dm o d e ) 。动态模式是将p r o t o o l k i t 应用程序集成到p r o e 中 的标准方法。用户编译c 应用程序,与p r o 肿o l k i t 库连接这种方法为d l l 模式。多 进程模式是p r o 厂r o o l t 支持的第二种应用程序和p m e 集成方法。在这种模式下应用 程序代码经过编译和连接,生成独立的执行文件。该文件作为p r o e 的子进程运行。 在d l l 模式下,p r o 厂r o o l k i t 应用程序与p r o e 的信息交换通过直接函数调用 实现的;在多进程模式下,信息交换是进程之间消息系统完成的,该系统模式直接函数 调用,在两个进程问传递函数的识别信息及参数。多进程模式包含比d l l 模式更多的 交换过程,当p r o 厂i o o l k i t 应用程序需要频率调用库函数时,情况更是如此。多进程 模式的优点在于,能够用源代码调试器运用p r o t o o l k i t 程序,无需将整个p r o e 执行 程序加载到调试器中。 在一个p r o e 会话中,可以运用多个p r o t o o l k i t 应用程序,并能综合使用各种模 式。如果为了调试方便,在开发阶段使用多个进程模式,在为用户安装应用程序时,需 要转化为d l l 模式,因为d l l 模式的性能更好,在转换时需要仔细测试程序,因为在 不同模式下,错误的表现形式不同。 虽然多进程模式包括两个并行的进程,但是这些进程不提供真正的并行处理。 p 棚o l k i t 应用程序和p r o e 能够并行,与就是说能够同时进行各自的操作。在应用 程序和p r o e 的通信方面,异步模式采用远程程序调用( r p c ) 方式。 异步模式又可分为简单异步模式和全异步模式。简单异步模式不能处理来自p r o e 的信息请求,亦即p r o e 不能调用程序p r o 厂r o o l k i t 的函数。完全模式下,p r 0 厂r o o l k i t 则能够处理p r o 但的信息,也就是说,p r o e 能够调用p r o t o o l k i t 中的函数。 异步模式较之同步模式,具有代码复杂、执行速度慢的缺点。两者之间的另一个主 要区别在于p 棚o l k i t 应用程序的启动:在异步模式下,应用程序能够独立于p r o e 而启动,然后启动p r o e 或与正在运行的p r o e 进程连接;而在同步模式下,p r o e 根据 注册文件的信息启动应用程序。为了使异步模式应用程序和p r o e 连接,必须设置环境 变量。 除非特别需要,一般不采用异步模式。 2 2p r o t o o k k it 基础知识 p r o t o o l k i t 采用面向对象的程序程序设计方法( o b j e c t _ o r i e n t e dp r o g r a m m i n g ) 。 在p r o e 和应用程序之间主要是特定的数据结构来传递信息,对应程序来说这种数据结 9 第二章皋于p r o e 的_ 二次开发技术 构并不是直接访问的,它们之间传递和交换信息的数据对用户来说是不可见的,而只 能通过p r o 厂t d o l t 提供的函数来访问。在设计p r o t o o l k i t 程序时,要涉及到大量 由p r o 厂r o o l t 函数提供的c 函数。 2 2 1 主要术语 1 对象及对象名 p r o 厂r o o i ,k i t 的对象实质上是一种类型为结构体的数据,结构体中的成员描述了该 对象的属性。如:名为p r o f e a t u r e 的特征对象的结构结构定义为: t y p e d e f s t r u c tp r o _ m o d e l _ i t e m p r o t y p et y p e ; i n ti d ; p r o m d lo w n e r ; p r o f e a t u r e ; 结构体中t y p e 、i d 和o w n e r 成员分别描述了该对象的类型、标识号和上级对象。 为了便于区别,在p r o t o o l k i t 中所有对象的命名约定位p r o + ,其中对 象名用英文单词表示,第一个字母大写,如p r o f e a t u r e ( 特种对象) 、p r o s u r f a c e ( 曲面 对象) 和p r o s o i l d ( 实体对象) 等。 p r o t o o l k i t 定义的对象分成两类:第一类本身是p r o e 数据库中的一个项;另一 类对象是抽象或临时对象。 对象访问的关键是如何获得对象的句柄,取得句柄后即可以对象中包含的信息( 如 尺寸参数、公差、粗糙度等各种参数) 进行操作。 2 动作及p r o t o o l k i t 函数 对p r o t o o l k i t 对象执行的某种操作称为动作,动作的执行是通过调用 p r o t o o l k i t 函数库提供的c 函数来实现的。与动作相关的p r o t o o l k i t 函数名约定 为:p r o + + 。特别要注意的是p r o t o o l k i t 函数的参数规则,规定为: p r o f u c t i o n ( 参数1 、参数2 、参数3 ,) ,其中第一参数用来识别对象( 通常为一i d 值) , 输入参数在输入参数之前。每个p r o t o o l k i t 函数都有一个a n s i 函数原型,特定的对 象函数在头函数在头文件中都有原型,而且头文件与对象名相同。 3 对象句柄 每个p 们o l t 对象都有一个对象应于一个结构体,定义该结构类型的一个具 1 0 长安人学硕一l :学位论文 体的结构体变量称之对象句柄。 按照对象句柄的定义和使用方式分成三类:模糊句柄( o p a q u eh a d l e ,非透明句柄) 、 d h a n d l e ( d a t a b a s eh a n d d l e ) 和工作区句柄( w o r k s p a c eh a n d l e ) 。 模糊句柄是使用p r o e 数据结构的内存地址引用p r o e 对象,这种方式最简单,使 用非透明句柄p r o 厂r o o l t 应用程序访问结构体中的成员。其特点是使用简单高效, 缺点是由于它是一个内存指针,所以具有可变性。 数据结构句柄( d a t a b a s eh a n d l e ) 则可访问该对象结构体的具体成员。数据结构句 柄是一个十分清晰的数据结构,它包含了足够的信息包括类型、整型标识符和指向 所属模型的旬柄,由于数据结构句柄至少包含一个整型标识,所以它具有稳定不变的优 点。 当利用p r o t o o l k i t 在p r o e 中创建一个包含很多信息的对象时,非常重要的一点 就是必须先建立该对象的所有相关信息,然后把这个对象添加到p r o e 数据库中去。然 而采用面向对象技术的p r o 厂r o o l k i t 不允许直接访问这些结构的内容。因此,必须使 用一个特殊的工作对象,这个对象通过调用为达到上述目的而提供的函数来分配及加载 空间。工作区句柄在p r o e 中包括了数据结构的内存区域,它不是设计数据的一部分。 工作区对象由一个包括对象存储地址的句柄来标识。 2 2 2 应用程序调用函数的状态检测 在p r o t o o l k i t 中,大多数的函数返回类型为p r o e r r o r 。p r o e r r o r 类型是一种枚举类 型,其值反映执行函数的成功与否,如果函数执行成功,返回值为p r ot kn oe r r o r 。 例如:p r ot kb a di n p u t s p r o t o o l k i t - - 应用程序调用函数错误( 输入的格式或数据 类型与p r o t o o l k i t 中的函数原型不匹配) p r o t ko u to fm e m o r - - 系统错误( 存储溢出) p r ot ken o tf o u n 驴一函数所操作的对象不存在 为此,在应用程序中对p r o t o o l k i t 函数的返回值进行检测,针对调用成功或失败的 各种不同情形采用不同的处理手段,以便使开发的实用软件系统的调试性比较好。 2 3 创建p r o t o o l klt 应用程序的基本方法 p r 0 厂r o o l t 应用程序是指利用p r o e 系统提供的p r o 厂i 0 0 u a t 工具包的支持, 用c 语言进行程序设计,采用c 编译器和连接器创建能够在p r o e 运行的可执行程序( 文 件后缀名为e x e ) 或动态连接库( 文件后缀名为d l l ) 程序。 第- 二章幕于p r o e 的_ 二次开发技术 2 3 1 利用m a k e 文件创建应用程序 默认安装时,在p r o t o o l k i t i 4 8 6n t o b j 文件央下,文件名前缀为m a k e 的文件为 p r o 厂r o o l k i t 工具包提供的m a k e 文件范例。将其扩展名改为m a k ,可在v c ( m i s c r o s o f t v i s u a lc + + 6 0 ) 环境打开该文件,并可直接创建应用程序。在这些m a k e 文件中对编译 和连接所需要的选项等均已按系统默认安装进行了设置,其中所涉及的c 源程序位于 p r o t o o l k i t p r o t ka p p l s 目录中。用户可以将m a k e 文件范例复制和修改,生成自己所需要 的m a k e 文件。在v c 环境打开选定的m a k e 文件范例,选择“f i l e v i e w ”显示m a k e 文 件的内容,并根据需要进行适当的修改。 2 3 2 利用v c 向导创建应用程序 采用m a k e 文件的方法创建p 枷o l k i t 应用程序必须用手工修改m a k e 文件,程 序的设计和调试均不方便。另外,由于这种方式无法使用m f c 类库,因此不能充分利 用v c 的资源,特别是在人机交互界面设计时不能直接进行对框的可视化设计。因此, 直接利用v c 的应用程序设计向导( a p pw i z a r d ) 和类向导( c l a s sw i z a r d ) 来进行 p r o t o o l k i t 应用程序的设计、创建和调试,无疑是一种更佳选择。 1 用v c 创建p r o 厂i d o i k i t 应用程序基本框架 v c 的集成开发环境采用工程来管理所有c + + 源程序、头文件、库文件和各种资源, 程序的设计、编译、连接和调试均十分方便。利用v c 的应用程序设计向导可以方便快 捷地创建p r o t o o l k i t 应用程序的基本框架。操作步骤为: ( 1 ) 进入v i s u a lc + + 6 0 集成环境,选择“f i l e n e w ”选项,启动如图2 2 所示的“n e w 对话框。在“n e w ”对话框中选择“p r o j e c t s ”选项卡,选项“m f c a p p w i z a r d ( d 1 1 ) ”项。 在“p r o j e c tn a m e ”输入框中输入工程文件名,在“l o c a t i o n ”输入框中输入路径。单击 o k 按钮,进入如图2 3 所示的对话框。 1 2 k 安 学碘l 学位镕文 图2 2 “n e w ”对话框 ( 2 ) 在“m f c a p p w l z a r d ”对话框中选择“r e g u l a r d l l u s i n gs h a r e d m f c d l l ” 单选框,使p r o r o o l k i t 应用程序使用共享的m f c 。单击f i n i s h 按钮进a n e w p r o j c o t i n f o r m a t i o n ”窗u 后,单击o k 按钮,完成工程文件框架的建立 匿器詈骤1 一“一“7 圄圉i ;黼羞篡。 b 五= = = = = = = = i 】w h i t 。m i d 蚋u i h d l l , 圉2 3 “m f c a p p w i z a r d ”对话框 ( 3 ) 选择“f i l e v i e w ”,打开v c 应用程序向导自动生成程序文件,如图2 4 所示。 v c 应用程序设计向导在f i l e v i e w 中自动加入r c a d m e t x t 、s t d a f xc p p 和以工程文 件名为前缀的c p p 源立件、d e f 模型定义文件以及r c 资源文件等。 第一章堪于p f o e 的一次开发技术 目“1 t 耻tb i , r a ”tb c m l dn i ;“嘶- h “, 划到 亩瞎口a龟融 吧闾冒噙厂一jh 而葡i 刁厕瓦鬲而而砑_ _ _ 一 宴- 档曲 i f 赢k i 1 历盂i i i i 亍纛i 磊i i i j i :i f l l & e a c l y h 1 c o l 图2 4 v c + + 集成开发环境 2p r o t o o k i t 应用程序设计 在v c 应用程序设计向导自动创建的程序框架上添加必要的函数代码、增加新的 c p p 源文件以及新的资源,才能构成一个完整的p r o t o o l k i t 应用程序体系。从功能 上分,程序设计者的主要工作在两方面;一是按p r o t o o l k i t 应用程序在p r o e 环境运 行的要求设计接口程序和应用程序运行结束时的终止程序;二是根据功能需要设计 p r o f i o o l k i t 应用程序主体部分。前者足系统所需的初始化部分和终止部分,后者是完 成应用程序预定功能的个或多个c p p 源程序。 u s e ri n i t i a l i z e 0 是p r o t o o l k i t 应用程序的初始化函数,主要用来对同步模式 ( s y n c h r o n o u s m o d e ) 的p r o t o o l k i t 应用程序进行初始化,任何同步模式的应用程序要 在p r o e 系统中加载都必须包含该函数,其作用相当于c 程序m a i n 0 函数。在该函数 中设置用户的交互接u ,如设置菜单、调用对话框或直接调用所需的函数等。在p r o e 环境加载p r o t o o l k i t 应用程序,首先调用u s e r _ i n i t i a l i z e 0 函数。其典型的定义格式为: e x t c m “c i n tu s e r i n i t i a l i z e ( i n la r g c 。c h a r + v e r s i o n ,c h a r + b u i l d , w c h a r _ te = b u f 【1 ) ,用户添加的接口程序部分 r e t u r ns t a t i i s : ) 长安人学硕i :学位论文 函数的参数a r g c 表示参数a r g v 中的参数个数;a r g v 是一个c h a r 型的指针数组表示 命令行变量列表;v e r s i o n 为p r o e 版本号;b u i l d 为p r o e 的构建代码。前4 个参数均是 p r o e 系统向应用程序传递的参数,e r r b u f l 为输出参数,存放初始失败的错误信息。如 果在应用程序中不需要这些信息,在定义该函数时可以不定义这5 个参数。参数返回 p r ot kn oe r r o r 表示初始化成功。 u s e r t e r m i n a t e o i 垂i 数在p r o e 终止同步模式的p r o t o o l k i t 应用程序时调用( 如退 出p r o e 将终止应用程序的运行) ,该函数由用户定义,其中可以不执行任何动作。 e x t e r n “c v o i du s e r t e r m i n a t e 0 用户添加的终止代码 ) u s e r _ i n i t i a l i z e o 和u s e r t e r m i n a t e 0 函数应放在与工程文件同名的c p p 文件中,其格 式固定不变。 2 4 本章小结 本章对p r o e 常用的开发工具进行了分析比较,确定p r o 肿o l k i t 为本课题二次开 发工具,介绍了p r 叩o o l t 开发方式与基础知识,以及创建p r o 厂r o o i ,k r r 应用程序 基本方法。 1 5 k 安人学硕 :学位论文 第三章参数化图库开发关键技术 3 1 参数化设计原理 参数化设计是一种参数驱动机制。通过参数驱动机制,可以对图形的几何数据进
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 蒲公英劳技课课件
- 2025年高考历史试题分类汇编:世界史-材料分析题解析版
- 常德七中分班考试试卷及答案
- 叉车理论考试速记口诀及答案
- 线性模型推理题目及答案
- 现代诗歌题目及答案
- 2025关于营销人员劳动合同模板
- 2025无产权证房屋买卖合同样本
- 2025标准化的建材代理合同范本
- 2025年7月中药药剂学考试题及答案
- 撤资协议范本(2025版)
- 2025广西公需科目考试答案(3套涵盖95-试题)一区两地一园一通道建设人工智能时代的机遇与挑战
- 2025年公需课考试题库(附答案)
- QC/T 1224-2025装备空气悬架的商用车减振效果判定方法
- 农资货运运输管理办法
- 2025至2030全球及中国过敏原提取物行业产业运行态势及投资规划深度研究报告
- 物业基础培训课件
- 人教版九年级上册历史期末复习知识点考点背诵提纲详细版
- 2025年广东省中考英语真题(原卷版)
- 非标自动化培训
- 2025年贵州省中考化学试卷真题(含答案解析)
评论
0/150
提交评论