




已阅读5页,还剩82页未读, 继续免费阅读
(机械电子工程专业论文)计算机辅助机构运动学、动力学分析及仿真技术的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西华大学硕士学位论文 摘要 计算机辅助机构运动学、动力学分析 及仿真技术的研究 机械电子工程专业 研究生王永胜指导教师罗中先教授,戴跃洪教授 计算机辅助机构运动学、动力学分析及仿真技术是借助于计算 机和相应的建模及分析软件来完成机构的运动学与动力学分析并实 现运动过程的动态模拟,可以在很短的时间内完成整个建模、分析 和仿真过程。目前计算机辅助机构分析的一个重要的发展方向是与 三维实体建模系统集成,这样可以充分利用三维c a d 软件的建模功 能,方便地构建出机构的三维参数化模型,减少了机构分析软件本 身开发的工作量,并且使机构的运动分析与仿真更加形象直观,动 力分析更加快捷、方便、准确。本文以c 存语言作为开发工具,采用 基于杆组的运动分析和动力分析方法,在s o l i d w o r k s 平台上开发了 一个机构分析与仿真软件。所开发的软件可以与s o l i d w o r k s 无缝集 成,能对在s o l i d w o r k s 中所构建的i i 级杆组和i 级杆组r r - r r - r r 类 型的机构模型进行分析与仿真,界面友好,交互性强,操作简便。 本论文主要成果如下: 1 开发了基于s o l i d w o r k s 的三维机构运动仿真器,可以对在 s o l i d w o r k s 中构建的三维参数化机构模型进行仿真,并可对仿 真的速度和方向进行控制: 2 采用基于杆组的运动分析方法,开发了基于s o l i d w o r k s 的三维 机构运动分析系统,能对在s o l i d w o r k s 中所构建的i i 级杆组和 i i i 级杆组r r r r r r 类型的三维机构模型进行运动学分析; 西华大学硕士学位论文 3 采用基于杆组的动力分析方法,开发了基于s o l i d w o r k s 的三维 机构动力分析系统,能对在s o | i d w o r k s 中所构建的i i 级杆组和 i i i 级杆组r r r r r r 类型的三维机构模型进行动力学分析: 4 开发了机构分析结果的线图化处理及数据输出系统,可以将分 析结果以线图的方式输出,还可将结果输出到指定的文本文件 和电子表格文件中; 5 开发了飞轮转动惯量的计算系统,可以计算出加在原动件主轴 上的飞轮的转动惯量。 关键词: 机构,运动学,动力学,仿真,s o l i d w o r k s 西华大学硕士学位论文 a b s t r a c t r e s e a r c ho nc o m p u t e ra i d e dk i n e m a t i c s 、d y n a m i c s a n a l y s i sa n ds i m u l a t i o no fm e c h a n i s m s p e c i a l i t y :m e c h a t r o n i c s p r e s e n t e db y :w a n g y o n g s h e n g s u p e r v i s e db y :l u 0z h o n g - x i a n ( p r o f e s s o r ) d a iy u e - h o n g ( p r o f e s s o r ) c o m p u t e ra i d e dk i n e m a t i c s 、d y n a m i c sa n a l y s i sa n ds i m u l a t i o no fm e c h a n i s m r e c u rt ot h ec o m p u t e ra n dt h er e l e v a n tm o d e l i n ga n da n a l y t i cs o f t w a r et of i n j s ht h e m e c h a n i s m s k i n e m a t i c s 、d y n a m i c sa n a l y s i sa n ds i m u l a t i o n a n di tc a na c c o m p l i s h t h ew h o l ep r o c e s so fm o d e l i n g 、a n a l y s i sa n ds i m u l a t i o ni n v e r ys h o r tt i m e c o m p u t e ra i d e da n a l y s i sa n ds i m u l a t i o no fm e c h a n i s mi st ob em e r g e di n t ot h e3 d d r a w i n gs y s t e m ,w h i c hi s am a i nd e v e l o p m e n tn o w t h i sc a l lu s e3 dd r a w i n g s y s t e m st oe s t a b l i s ht h e3 de n t i t ym o d e io fm e c h a n i s me a s i l y , s ot h ew o r k l o a do f d e v e l o p i n gt h es o f t w a r eo fa n a l y s i so fm e c h a n i s mi sl e s s e n e d ,a n df u r t h e rt h i sm a k e t h ee f f e c to fk i n e m a t i c sa n a l y s i sa n ds i m u l a t i o no fm e c h a n i s mm o r ev i s u a l ,a n d m a k et h ed y n a m i c sa n a l y s i so fm e c h a n i s mm o r ec o n v e n i e n t l ya n de x a c t l y w i 廿1c 社 a st h ed e v e l o p i n gs o f t w a r e ,a d o p t i n gt h ew a yo fk i n e m a t i c sa n dd y n a m i c sa n a l y s i s b a s e do nt h ep o l eg r o u p ,as y s t e mo fa n a l y s i sa n ds i m u l a t i o no nt h ep l a t f o r mo f s o l i d w b r k si sd e v e l o p e d t h es o f t w a r ed e v e l o p e dw h i c hh a sf r i e n d l yi n t e r f a c ea n d s t r o n gi n t e r c o m m u n i c a t i o n ,t a i lb eo p e r a t e dc o n v e n i e n t l ya n dc a i lb em e r g e di n t o s o l i d w o r k sw e l l t h ei ig r a d ep o l eg r o u pa n di i ig r a d eg r o u pr r r r r - r r ) 3 d e n t i t ym o d e lo fm e c h a n i s mw h i c ha r ee s t a b l i s h e di ns o l i d w o r k sc a nb ea n a l y z e d a n ds i m u l a t e di nt h ed e v e l o p e ds o f t w a r e m a i nw o r ka n da c h i e v e m e n t sa r ea s f o l l o w : 1 b a s e do ns o l i d w o r k s as i m u l a t o ro f3 de n t i t ym o d e lo fm e c h a n i s mi s d e v e l o p e d a n d 也es p e e d 、d i r e c t i o no fs i m u l a t i n gc a nb eo p e r a t e d 2 w i t ht h ek i n e m a t i c sa n a l y s i so f p o l eg r o u p ak i n e m a t i c sa n a l y t i c s y s t e mo f 3 d e n t i t ym o d e lo fm e c h a n i s mb a s e do ns o l i d w o r k si sd e v e l o p e d a n dt h eh g r a d ep o l eg r o u pa n di i lg r a d eg r o u p ( r r r r - r r ) 3 de n t i t ym o d e lo f m e c h a n i s mw h i c ha r ee s t a b l i s h e di ns o l i d w o r k sc a nb ea n a l y z e di nt h e s y s t e m 3 、矾t ht h ed y n a m i c sa n a l y s i so fp o l eg r o u p ad y n a m i c sa n a l y t i cs y s t e mo f3 d 西华大学硕士学位论文 e m i t ym o d e lo fm e c h a n i s mb a s e do ns o l i d w o r k si sd e v e l o p e d a n dt i l e i i g r a d ep o l eg r o u pa n d g r a d eg r o u p ( r r - r r - m 1 ) 3 de a r l t ym o d e lo f m e c h a n i s mw h i c ha l ee s t a b l i s h e di ns o l i d b r k sc a nb ea n a l y z e di nt h e s y s t e m 4 as y s t e mt h a ti l l u m i n a t e st h ea n a l y t i cr e s u l t so fm e c h a n i s mw i t hg r a p ha n d o u t p u t si t sd a t u mi sd e v e l o p e d ,a n dt h ea n a l y t i cr e s u l t so fm e c h a n i s mc a nb e d r a w ni n t oc u r v e s ,a n di ta l s oc a r lb eo u t p u r e di n t ot h et e x tf i l e sa n de x c e l f i l e s 5 as y s t e mo fc a l c u l a t i n gt h em o m e n to fi n e r t i ao ft h ef l y w h e e li sd e v e l o p e d , a n dt h em o m e n to fi n e r t i ao ft h ef l y w h e e lt h a ti sf i x e di nt h em o t o r sp r i c i p a l a x i sc a nb et a l c u l a t e d k e yw o r d s : m e c h a n i s m ,k i n e m a t i c s ,d y n a m i c s ,s i m u l a t i o n ,s o l i d w o r k s 西华大学硕士学位论文 第1 章绪论 1 1 课题研究的背景 随着工业生产的不断发展和人民生活水平的日益提高,机械产品种类日益 增多,例如,各种金属切削机床,仪器仪表,重型机械,轻工机械,交通运输 机械及办公设备,家用电器,儿童玩具等。各种机械设备一般均需要实现生产 和操作过程的自动化,或者实现某工艺动作过程。因此,机械设备设计首先 需要进行机械运动方案的设计和构思。在运动方案的确定过程中,对于执行动 作多少为宜,执行动作采用何种形式以及各执行动作间如何协调配合等都可以 成为富于创造性设计的内容。采用什么样的机构来巧妙地实现所需的执行动作, 这就要深入了解各类机构的结构特点,工作性能和设计方法,同时也要有开阔 的思路和创新能力,以便创造性地构思出新的机构来。 机构设计是整个机械设计过程中的重要阶段。机构类型选择是否得当,结 构尺寸设计得是否合理,将在很大程度上影响到机械工作质量。机构设计是一 个综合一分析一再综合,反复改进不断提高的过程。根据给定的工艺动作要求 和其他的约束条件,参照现有资料,综合运用所学知识初步构思一个机构方案, 这个方案是否可行? 能不能完成规定的运动交换要求? 它的动力学性能如何? 这只能靠科学的分析来检验。因此,要对所构思的方案进行运动学分析,动态 静力分析,以考察工作构件的运动规律,各运动副中,尤其是与机架相连接的 运动副中支撑反力的大小和方向以及它们的变化规律,主动件上平衡力矩的变 化规律等。从分析结果可能会发现某些性能指标达不到设计要求,某些性能指 标还不够理想,这时应有针对性地修改和调整某些尺寸参数,必要时要重新构 思或选择机构类型,再做分析,直到得出满意的结果。 可见,机构设计是一项难度很大的工作,而机构分析在其中起到非常关键 的作用。传统的机构分析方法主要是图解法,这是由于机构学问题的运动方程 往往是非线性的,通常都是比较复杂的方程组。在使用计算机之前,这些非线 性方程的求解是十分困难的,即使在方法上可以解决,但限于实际计算工作量 太大,不能不令人望而生畏。随着计算机的出现及其性能的飞速提高,利用计 算机进行机构的分析与设计已成为一种重要的手段。机构的计算机辅助分析软 西华大学硕士学位论文 件系统的开发就成为一项重要工作,国内外在这方面已经进行了不少研究,并 已经建立了各式各样的分析与仿真系统。国外在这方面的发展已经很成熟,很 多优秀的软件在世界各地得到了广泛的应用:而国内在这方面的发展相对落后 很多,几乎没有好的机构分析与仿真软件真正投入使用。 1 2 课题研究的目的、意义及必要性 传统的机构设计中一般是用手工计算来完成机构运动学和动力学分析,这 种传统手工方法存在诸多弊端,从而使机构设计变成项非常难以解决的任务。 首先,其工作效率非常低,计算机构中个杆件在一个位置上的一个点的位移、 速度、加速度和反力可能要花费几天的时间,要完成一个机构的所有杆件上的 任意点在整个运动周期内的所有运动学和动力学参数计算所需的时间可能是几 年,这是不允许的,所以,实际上传统手工计算仅仅是一种凭经验作了极大简 化处理的粗略计算,就算如此,还是大大地延长了设计周期:其次,由于工作 效率低下和手工作图计算的不准确,必然造成分析结果的可信度大打折扣:其 三,传统手工计算输出的结果是数字,不够生动形象,给方案评价带来不便; 其四,某些复杂机构的分析必须求解复杂方程组,用手工计算无法完成,必须 借助于数值计算方法才能解决。 计算机辅助机构分析与仿真技术是利用计算机和相关的软件来完成机构的 运动学和动力学分析,并实现运动过程的动态模拟。它克服了传统手工方法的 所有缺点,可大大缩短设计周期,保证分析结果的正确性,生动形象地模拟运 动过程,能解决用手工计算无法完成的复杂机构的分析。 目前,我国机械行业所使用的机构分析与仿真软件几乎完全依赖进口,付 出了昂贵的代价,而国内自主版权的同类软件几乎没有,因此,从提高我国机 械行业的新产品开发能力和发展高新技术软件产业的角度来看,开展计算机辅 助机构运动学和动力学分析与仿真技术研究具有十分重要的现实意义和必要 胖。 1 3 计算机辅助机构分析与仿真技术研究的现状及发展 对机构分析与仿真技术的研究国内外专家学者进行了大量的工作,获得了 许多有价值的科技成果。 西华大学硕士学位论文 在国外关于机构分析与仿真技术的研究开展的较早,并且开发出了很多成 功的商品化软件,像美国m d i 公司的a d a m s 、c a d s i 公司的d a d s 、w o r k i n g m o d e l 公司的w o r k i n gm o d e l 等,很多大型的c a d c a m c a e 软件如u g 、 c a t i a 、p r o e n g i n e e r 、 i - d e a s 等也都有自己的机构分析与仿真模块( 有 些是将专业公司的机构分析软件子集嵌入其中) 。最近在p c 和w i n d o w s 平台上 崛起的s o l i d w o r k s 、s o l i d e d g e 、m d t 等所谓的中档c a d 软件,无一例外地都 把m d i 、c a d s i 等公司的机构分析软件作为其集成方案的重要系统之一。这些 软件在全球的内燃机、飞机、汽车、工程机械、冶金机械、石油钻采机械、纺 织机械、轻工自动机械中得到了广泛的应用,推动了这些行业的快速发展。 在国内关于机构运动学和动力学分析的研究开展得也很早,一大批专家学 者在这方面做了大量的研究工作。如果单从机构运动学和动力学的理论研究来 讲,我国目前的水平可能并不比国外落后。但是,有一个大的问题,就是这些 工作长期停留在传统技术领域,研究成果都只是一些概念、算法,或者是编一 些简单的计算程序或绘出简单的运动分析曲线和图谱,使用的大多是像f o r t r a n 或b a s i c 等程序设计语言,很少有人把它与高技术相联系。所以,到目前为止, 国内还没有一个能适应c i m s 需求的能与三维c a d 系统集成的机构运动学和 动力学分析与仿真方面的软件,这方面的研究工作在国内还处于起步阶段。 1 4 课题来源 本论文研究课题来源于四川省重点科技攻关计划( 0 1 g g 0 3 4 - - 0 8 ) 计算机 辅助机构运动学和动力学分析与仿真技术研究。 1 5 本论文主要研究内容 1 在s o l i d w o r k s 二次开发技术方面做了比较深入的研究,掌握了用c # 语言 进行s o l i d w o r k s 二次开发的技术,实现了c # 语言与s o l i d w o r k s 的接口; 2 对通用的i i 级杆组和i i i 级杆组进行运动分析的数学模型的建立,包括 r r r 、r r p 、r p r 、p r p 、r p p 、r r r r r r 类型; 3 对通用的i i 级杆组和i i i 级杆组进行动力分析的数学模型的建立,包括 r r r 、r r p 、r p r 、p r p 、r p p 、r r r r r r 类型; 4 ,对在s o l i d w o r k s 中所构建的三维参数化机构模型进行运动仿真,并对仿 西华大学硕士学位论文 真的速度和方向进行控制; 5 。对在s o l i d w o r k s 中所构建的三维参数化机构模型进行运动学分析: 6 对在s o l i d w o r k s 中所构建的三维参数化机构模型进行动力学分析; 7 。对机构运动学和动力学分析结果的线图化处理输出技术方面的研究,以 及将分析结果输出到文本文件和电子表格文件中的研究; 8 用c 拌语言在s o l i d w o r k s 平台上开发了一个计算机辅助机构运动学和动力 学分析与仿真软件系统。 西华大学硕士学位论文 第2 章s o l i d w o r k s 二次开发技术方面的研究 s o l i d w o r k s 是采用面向对象技术开发的三维c a d 软件。基于对象统一的 语义模型,对象技术可提供统一的机制将对象模块组装在一起,极大地复用已 有的对象,满足各种应用要求。所以对象技术对软件模块化的设计和复用带来 了工程现实的可行性。对象的封装和继承可以很好地支持软件的复用,对象封 装允许应用开发者将模块视作黑匣子,通过界面去理解和操作对象,而不用关 心实现的具体细节。对象继承容许对象实现复用具有相同特性的其它对象的代 码,而不需要重复开发。基于此,我们可以通过复用s o l i d w o r k s 中创建的对象, 调用a p i 函数对其进行二次开发。 目前,二维c a d 软件如a u t o c a d 的二次开发技术在工程界应用非常广泛, 已为各行业带来了巨大的经济效益,为该软件的专用化起了巨大的推动作用。随 着三维c a d 软件的迅猛发展,由于其特征建模技术和设计过程的全相关技术 的应用,较二维c a d 软件具有更直观、设计更快捷等优势,在工程上发挥的 作用越来越大,必将成为今后c a d 软件二次开发的主流。 2 1s o l i d w o r k s 二次开发的工具”鲫 任何支持o l e ( o b j e c tl i n k i n ga n de m b e d d i n g ,对象的链接与嵌入) 和 c o m ( c o m p o n e n to b j e c tm o d e l ,组件对象模型) 的编程语言都可以作为 s o l i d w o r k s 的开发工具。s o l i d w o r k s 二次开发分两种,种是基于自动化技术 的,此种技术只能开发e x e 形式的程序;另一种开发方式是基于c o m 的,这 种技术可以使用最多的s o l i d w o r k sa p i ( a p p l i c a t i o np r o g r a m m i n gi n t e r f a c e ,应 用编程接口、。a p i 可控制s o l i d w o r k s 会话的方式,生成+ d l l 格式的文件,也就 是s o l i d w o r k s 的插件。 s o l i d w o r k s 的二次开发工具较多,如v i s u a l b a s i c 、v b a 、v i s u a l c + + 、d e l p h i 、 c + + 、c 撑等。开发者可以根据自身的条件、工具的特点,选择种合适的开发 工具。下面只对在本课题中所用到的c 撑语言作一下介绍。 c # 是m i c r o s o f t 专用在n e tf r a m e w o r k 平台上进行开发的一门新型编程语 西华大学硕士学位论文 言。n e tf r a m e w o r k 主要包含一个非常大的代码库,这些代码可以在客户语言 ( 如c # ) 中通过面向对象编程技术( o o p ) 来使用。这个库分为不同的模块,这 样就可以根据希望得到的结果来选择使用其中的各个部分。m i c r o s o f t 公司对 c # 的定义是:“c # 是种类型安全的、现代的、简单的,由c 和c + + 衍生出来 的,面向对象( o b j e c to r i e n t e d ) 和类型安全( t y p e s a f e ) 的编程语言。它牢牢根植 于c 和c 十+ 语言中,并可很快被c 和c + + 的使用者所熟悉。c # 的目的就是综 合v i s u a lb a s i c 的高生产率和c + + 的行动力。”c # 设计者的本意是以类似于 v i s u a lb a s i c 的方式支持r a d ( r a p i da p p l i c a t i o nd e v e l o p m e n t ,1 夹速应用程序开 发) 。v i s u a lc 群使得我们更方便地设计w i n d o w s 和w e b 应用程序。c # 语言让软 件开发人员更容易发展以全球信息网为导向的服务。c 拌结合了m i c r o s o f t 的c + + 程序开发的威力及v i s u a lb a s i c 的简易性,与s t m 公司的j a v a 语言一样能跨平 台运行,是m i c r o s o f t 的n g w s ( n e x tg e n e r a t i o nw i n d o w ss e r v i c e ,下一代窗口 服务) 策略的部分。c # 中的几种功能明显类似于j a v a 编程语言中的流行功能, 但是它将比j a v a 更适合融入m i c r o s o f t 的技术。c # 语言是c 或c + + 语言的下一 个版本,是支持w i n d o w s 平台的。c # 与c 和c + + 的差别在于c # 有更简单的语 法,紧密集成的组件和函数,类型安全等。总之,c # 具有简单性、现代性、面 向对象性、类型安全、兼容性和灵活性等优点。 2 2 用c 开发s o l i d w o r k s 的一般步骤 s o l i d w o r k s 从2 0 0 4 版本开始支持,n e t 插件。s o l i d w o r k s 2 0 0 4 中有一个 s o l i d w o r k s a p is d k ( 软件开发包) ,安装此软件后可以在v i s u a ls t u d i o n e t 项 目向导中添加一个如图2 1 所示的模板( s o l i d w o r k sc 荐a d d i n ) ,通过此模板可 以实现与s o l i d w o r k s 的接口。 6 西华大学硕士学位论文 f i g u r e2 - 1n e wp r o j e c ti n t e r f a c e 图2 - 1c # 新建项目界面 用c # 作为开发工具,进行开发的步骤如下: ( 1 ) 安装s o l i d w o r k s2 0 0 4 、s o l i d w o r k s a p is d k 和m i c r o s o f tv i s u a l s t u d i o n e t 。 ( 2 ) 启动m i c r o s o f tv i s u a ls t u d i o n e t ,新建一个项目,项目类型选择v i s u a l c # 项目,模板选择s o l i d w o r k sc 撑a d d i n ,最后单击确定按钮会弹出如图2 - 2 所 示的界面: f i g u r e2 - 2s o l i d w o r k sa d d i n w i z a r d 图2 - 2 模板界面 7 西华大学硕士学位论史 在此模板上选择相应的项目,完成后就可以生成一个类( m y c s ) ,在这个 类中已经成功实现了与s o l i d w o r k s 的接口。 ( 3 ) 在所生成的类( m yc s ) 中有一个s o l i d w o r k s 对象类型的变量i s w a p p , 通过这个变量可以调用s o l i d w o r k s 内部的a p i 函数来实现我们所需要的功能。 ( 4 ) 在写完程序后对新建的机构仿真项目生成解决方案,可以生成一 个m y d l l 文件,此文件可以嵌入到s o l i d w o r k s 中作为s o l i d w o r k s 的一个插件 来使用。 ( 5 ) 启动s o l i d w o r k s 2 0 0 4 ,选择打开文件的类型为a d d i n s ( * d 1 1 ) ,确定打开 文件为m y d l l ,这样m y d l l 就可以实现与s o l i d w o r k s 的连接并成为s o l i d w o r k s 的一个插件。 2 3s o l i d w o r k sa p i 概述“2 伽 s o l i d w o r k s a p i 是s o l i d w o r k s 的o l e 应用程序开发接口,用户可以利用它 并通过支持o l e 编程的开发工具,如v i s u a lb a s i c 、v b a 、c 、v i s u a lc + + 、c + + 、 c # 等对s o l i d w o r k s 进行二次开发,建立适合用户需要的、专用的s o l i d w o r k s 功能模块。 s o l i d w o r k sa p i 由大量的对象、方法、属性、事件组成。我们在编程时正 是用到了面向对象的程序设计方法。 2 3 1 面向对象的程序设计 面向对象的程序设计方法是通过增加软件的可扩充性和可重用性来提高程 序员的编程能力的。 在软件设计和实现中,传统的、人们广泛使用的方法是面向过程的程序设 计方法。面向过程的程序设计思想的核心是功能的分解。当程序员试图用c 或 其他语言来设计程序以解决一个实际问题时,第一步妻做的工作就是将问题分 解成若干个称为模块的功能块,然后根据模块功能来设计一系列用于存储数据 的数据结构,最后编写一些过程( 或函数) 对这些数据进行操作。最终的程序 就是由这些过程构成的,显然,这种方法将数据结构和过程作为两个实体来对 待,其着重点在过程,设计人员首先考虑如何将功能分解,在每一个过程中又 要着重安排程序的操作序列,但同时程序员在编程时又必须时时考虑数据结构, 西华大学硕士学位论文 因为毕竟要将操作用于数据上。数据结构和过程的这种分离,给软件人员造成 沉重的负担。 面向对象程序设计中所用到的对象类定义了具有相同结构和操作的一组对 象,其最基本的特征是封装和继承。作为一种抽象数据,对象把实体的相关特 征和操作封装在一起,允许人们以自然的方式去模拟外部实体的结构和行为; 继承是对象类实现可复用性和可扩充性的重要保证。一个对象类可以定义为另 一个更一般的特殊情形,这个对象类是特殊对象类的父类( s u p e r c l a s s ) ,或者 说,特殊对象是这个一般对象的子类( s u b c l a s s ) ,子类继承父类的所有属性和 操作,除此以外,子类还可以定义自己特有的属性和操作。继承是对象类的一 种特例化关系,亦即集合包含关系,子类对象实例集合是父类对象实例集合的 子集。 面向对象的程序设计是一种新的程序设计范型。面向对象程序的主要结构 特点是:第一程序一般由类的定义和类的使用两部分组成,在主程序中定义 各对象并规定它们之间传递消息的规律;第二,程序中的一切操作都是通过向 对象发送消息来实现的,对象接收到消息后,启动有关方法完成相应的操作。 面向对象程序设计的最大优点就是软件具有可重用性。当人们对软件系统的要 求有所改变时,并不需要程序员做大量的工作,就能使系统做大量的工作。 2 3 2s o l i d w o r k sa p i 对象 s o l i d w o r k s 支持o l e 标准,完全实现了o l e 自动化。作为一个o l e 服务 器,s o l i d w o r k s 提供了大量的o l e 对象,以及这些对象所拥有的方法和属性, 用户通过在客户应用程序中对这些o l e 对象及其方法和属性的操作,可咀在自 己开发的应用软件中实现诸如生成直线、构造实体、检查曲面表面参数等几乎 所有的s o l i d w o r k s 软件的功能。s o l i d w o r k so l e 对象也就是所谓的s o l i d w o r k s a p i 对象,图2 3 是一个简单的s o l i d w o r k sa p i 对象模型: 西华大学硕士学位论文 f i g u r e2 - 3s o l i d w o r k s o b j e c t s 图2 - 3s o | i d w o r k s 的对象模型 s o l i d w o r k s 的对象模型是一个多层次的对象网络,s o l i d w o r k s 对象是 s o l i d w o r k s a p i 中的最高层的对象,它包括m o d e l d o c 、e n v i r o n m e n t 、f r a m e 、 a t t r i b u t e d e f 、m o d e l e r is w p r o p e r t y s h e e t ,以及一些其他的对象,它能够直接或 间接地访问s o l i d w o r k s a p i 中的所有其他对象。s o l i d w o r k s 对象也封装了很多 的方法,利用这些方法可以实现应用程序的最基本的操作,如生成、打开、关 闭、结束文件、设置当前的激活文件、生成属性定义,也可以对s o l i d w o r k s 的 系统环境进行设置。 2 3 3s o l i d w o r k sa p i 对象的属性和方法 在s o l i d w o r k s 创建的对象中,每个对象都有自己的属性和方法,通过调用 a p i 函数实现。s o l i d w o r k s 的对象、方法很多,比如s o l i d w o r k s 对象有9 8 种方 法,m o d e l d o c 对象有4 7 7 种方法。没有哪一个搞开发的人能用遍s o l i d w o r k sa p i 中的每一个方法,在本课题中我们也只是用到了其中的一部分。在这里以c j ! f 为开发平台介绍在本课题中用到的一些方法。 珏华大学硕士学位论文 ( 1 ) 激活当前文件 我们要对在s o l i d w o r k s 中构建的模型进行一系列操作时必须得到当前文件 对象,这样才能调用相应的方法实现一系列的操作。 i s l d w o r k s i s w a p p : 定义一个s o l i d w o r k s 对象 l m o d e l d o c 2m o d e l : 定义一个m o d e l d o c 对象 i a s s e m b l y d o c a s s e m : 定义一个a s s e m b l y d o c 对象 m o d e l = ( i m o d e l d o e 2 ) i s w a p p a c t i v e d o c ; 这个函数得到当前的一个文件对象,这个文件对象是一个广义的文件对象。 a s s e m = ( i a s s e m b l y d o c ) i s w a p p a c t i v e d o c : 这个函数得到的是当前的一个装配体文件对象。 ( 2 ) 确定装配体文件中总的零件数目 i a s s e m b l y d o ca s s e m ; i n t n u m b e r ; n u m b e r = a s s e m g e t v i s i b l e c o m p o n e n t s i n v i e w c o u n t 0 ; n u m b e r 是一个整数类型的变量,通过上面这个函数可以返回总的零件数 目。 ( 3 ) 选择一个零件对象与消除选择 i c o m p o n e n t 2c o m p o n e n t ;定义个零件对象 i m o d e l d o c 2 m o d e l ; b o o l a p p e n d f l a g ,a l l ; c o m p o n e n t s e l e c t ( a p p e n d j 7 l a g ) ; m o d e l c l e a r s e l e c t i o n 2 ( a 1 1 ) ; 第一个函数是选择一个零件对象,如果a p p e n d f l a g 为t r u e 则将这个零件对 象增加到选择列表中,如果a p p e n d f l a g 为f a l s e 则替换原有的选择列表。第二 个函数是消除选择,如果a l l 为t r u e 则消除选择列表中的所有对象,如果a l l 为 f a l s e 则只消除处于活动状态的对象。 ( 4 1 添加菜单 在本软件中需要在s o l i d w o r k s 中添加一个菜单( 机构仿真) ,这项功能就 是在所生成的类( m y c s ) 中所完成的,在类中调用s o l i d w o r k s 的两个a p i 函 数,就可实现菜单的添加。两个函数为: 西华大学颂,l 学位论文 为 s l d w o r k s a d d m e n u ( d o c t y p e ,m e n u ,p o s i t i o n ) s l d w o r k s a d d m e n u l t e m ( d o c t y p e ,m e n u ,p o s i t i o n ,c n l b a c k ) 第一个函数的功能是添加一个主菜单,各个参数的含义为: d o c t y p e :s o l i d w o r k s 中的文件类型,即菜单要在s o l i d w o r k s 中的那一种 文件类型中被激活: m e n u :所添加的菜单的名字; p o s i t i o n :所添加的菜单在s o l i d w o r k s 菜单栏中的位置。 在本软件中,菜单应该在装配体文件中被激活,所以本函数应为: d o c t y p e = ( i n t ) s w c o n s t s w d o c u m e n t t y p e s e s w d o c a s s e m b l y ; i s w a p p a d d m e n u ( d o c t w e ,”机构仿真”,5 ) : 第二个函数是在所添加的主菜单上面添加相应的菜单条,各个参数的含义 d o c t y p e :与第一个函数中d o c t y p e 的含义相同; m e n u :所添加的菜单条的名字,其中要包括父菜单的名字,中间用 隔开 p o s i t i o n :菜单条在菜单中的位置; c a l l b a c k :当用户点击菜单条后所调用的函数。 2 4 小结 本章介绍了s o l i d w o r k s 二次开发方面的一些知识,着重介绍了s o l i d w o r k s 二次开发的工具c # 语言、用c # 语言进行s o l i d w o r k s 二次开发的一般过程和 s o l i d w o r k sa p i 对象。在s o l i d w o r k sa p i 对象这一小节中又分别介绍了面向对 象的程序设计方法、s o l i d w o r k s a p i 对象模型和s o l i d w o r k s a p i 的属性和方法。 西华大学硕士学位论文 第3 章软件系统的总体设计 当前比较流行的机构分析软件主要有两种类型,一种是像a d a m s 这样的 一类独立的软件,这类软件本身就同时具有建模和仿真分析功能,利用本身的 功能就可完成各类机构模型的建立和对机构模型的仿真分析,所以这类软件可 以不与c a d 系统集成;另一种是像c o s m o s m o t i o n 这样的软件,这类软件必 须与特定的c a d 系统集成才能完成机构的仿真分析,因为这类软件本身没有 建模功能,所以它与c a d 系统集成后必须首先利用c a d 系统的建模和装配功 能来完成机构模型的建立,然后再利用自身的功能对机构模型进行仿真和分析。 结合目前机构分析软件的两种发展趋势,本课题采用与c a d 系统集成的 一种方案来开发一个机构运动学和动力学分析与仿真软件系统,这种方案可以 充分利用c a d 系统的建模和装配功能完成机构的三维建模,从而减少了软件 开发的工作量,可以保证软件开发更加顺利的完成。s o l i d w o r k s 是一套中档的 三维c a d 软件,它以参数化和特征建模技术,为设计人员提供了良好的设计环 境。s o l i d w o r k s 有良好的a p i ( a p p l i c a t i o np r o g r a m m i n gi n t e r f a c e ) 应用编程接 口,通过它可以调用很多的功能函数,实现很多的功能。c 群语言是微软公司新 一代开发语言,可以很容易地实现与s o l i d w o r k s 的接口,并且c # 语言具有很强 的图形处理功能。因此本课题决定采用与s o l i d w o r k s 系统集成的方法来建立一 个计算机辅助机构运动学和动力学分析与仿真软件系统,就是用c # 作为开发语 言在s o l i d w o r k s 平台上开发一个机构仿真与分析软件系统,该软件系统作为 s o l i d w o r k s 的一个插件来使用,可以对在s o l i d w o r k s 中构建的机构模型进行运 动仿真、运动学分析和动力学分析。 所开发的软件系统的主要操作方式为,启动s o l i d w o r k s 软件后能够自动的 在s o l i d w o r k s 的菜单栏中添加一个“机构仿真”菜单,该菜单下面有很多的子 菜单,菜单条可以作为单独的命令来使用,也可以点击菜单条弹出一个对应的 窗体,然后通过对该窗体上各个控件的操作来完成对机构模型的仿真与分析工 作。 西华大学硕士学位论文 3 1 软件系统的总流程图 f i g u r e3 - 1w h o l ef l o wc h a r to ft h es y s t e m 图3 - 1 软件系统总流程图 4 西华大学硕士学位论文 从数据流程图可以看出,本软件系统的工作过程可分为: 第一步,实
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Control-Liposomes-PBS-生命科学试剂-MCE
- 2025年智能生态办公空间改造与装饰一体化服务合同
- 2025心血管介入器械临床试验与技术转让服务合同
- 2025年汽车零部件钣金加工及安全防护协议书
- 2025年校园学生离校途中人身安全保障责任协议书
- 2025年国际足球联赛赛事赞助权益及广告投放合作协议
- 2025年高科技园区生产区全面清洁与消毒服务合同
- 2025年度离婚诉讼费用及财产分割方案执行监督合同
- 2025年矿山爆破作业人员技能培训与安全责任管理协议
- 2025年度健康食品定制包装印刷服务承包协议
- 防洪防汛应急处置措施
- 葫芦岛打渔山 220kV 输变电工程环评报告
- 08SG213-1 钢烟囱(自立式30m-60m)(不清晰有水印)
- 社会团体单位会员登记表完整
- GB/T 531.1-2008硫化橡胶或热塑性橡胶压入硬度试验方法第1部分:邵氏硬度计法(邵尔硬度)
- 消化系统疾病课件整理
- 子宫肉瘤诊疗指南
- 培训注塑成型原理
- 2009-2022历年江苏省镇江市丹阳市事业单位考试《综合知识和能力素质(计算机类岗位)》真题含答案2022-2023上岸必备带详解版3
- 交流电气装置的过电压保护及绝缘配合
- 工业园区消防安全标准化
评论
0/150
提交评论