(机械设计及理论专业论文)基于多平台交叉编程技术的多杆机构cad系统开发.pdf_第1页
(机械设计及理论专业论文)基于多平台交叉编程技术的多杆机构cad系统开发.pdf_第2页
(机械设计及理论专业论文)基于多平台交叉编程技术的多杆机构cad系统开发.pdf_第3页
(机械设计及理论专业论文)基于多平台交叉编程技术的多杆机构cad系统开发.pdf_第4页
(机械设计及理论专业论文)基于多平台交叉编程技术的多杆机构cad系统开发.pdf_第5页
已阅读5页,还剩88页未读 继续免费阅读

(机械设计及理论专业论文)基于多平台交叉编程技术的多杆机构cad系统开发.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

硼j 入学碗学忙论文 基于多平台交叉编程技术的多杆机构c a d 系统开发 机械设计及理论号, t k 研究生:孙军指导教师:郑忠俊 连杆机构是一种应用十分广泛的机构,经各种连杆和零件巧妙组合而成的 多级杆件机构因其便于制造,运动可靠,抗恶劣工作环境能力强,运动形式多 样且能实现各种复杂曲线运动,因而在各种机械设备上广泛应用。本课题基于 a u t o c a d 2 0 0 5 ,开发高效实用的多级杆件机构计算机辅助设计软件,并力图探讨 快速、高效的开发基于较低端c a d 软件的中小型专用设计软件的方法,在多平 台交叉编程技术和基于图解法、图解解析法、实验法的机构类计算机辅助设计 软件的实现方法上作了积极的探索,对提高多级杆件机构的设计效率和设计质 量,寻求开发类似机构类专用设计软件的方法具有很现实的意义。该系统包括 了多级杆件机构的求解机构尺寸、运动学分析、运动仿真、参数化建模以及有 限元分析等功能,涉及了机械类设计软件二次开发的大部分重要内容,对传统 杆件机构设计方法的计算机程序化方法进行了较详细研究,对专用机械软件的 开发方法进行了比较全面的探讨。论文在理论和实践中的主要成果和特色如下: ( 1 ) 研究了多级杆件机构设计中传统机械设计方法( 如图解法、实验法) 与计算机辅助设计技术相结合的途径。提出了基于传统图解法的计算机辅助设 计程序的实现方法,并对实验法的实现进行了探讨,提出了初步的解决方案, 开发了基于图解法、实验法的多级杆件设计及运动分析程序。 ( 2 ) 研究了高性价比中小型专用c a d 设计软件的开发方法。提出了以基于 v i s u a lb a s i c n e t2 0 0 3 的a c t i v e xa u t o m a t i o n 技术和基于v c + + n e t2 0 0 2 的 o b j e c t a r x 2 0 0 5 技术之间的多平台交叉编程技术为实现方法的解决方案。 ( 3 ) 研究了动态仿真技术及其在a u t o c a d 2 0 0 5 中的实现方法,并开发了基 于此技术的动态仿真模块,实现了多级杆件机构的二维、三维动态仿真。 ( 4 ) 研究了参数化设计技术及其在a u t o c a d 2 0 0 5 中的实现方法,并开发了 四川大学硕 学 论之 基于此技术的参数化设计模块,实现了杆件机构零件的参数化建模。 ( 5 ) 研究了c a e 技术在计算机辅助设计软件中的应用,并开发了基于 v i s u a lb a s i c n e t 的a p d l 程序生成技术的杆件有限元分析摸块。 ( 6 ) 研究了基于v i s u mb a s i c n e t 的复杂界面技术及数据库技术,并开发 了基于a d o n e t 技术的数据库系统。 本论文通过对多级杆件机构c a d 二次开发技术的研究,提出了一些可行的 实现方法,对机构类c a d 专用软件开发具有一定的借鉴价值。经对本软件的反 复使用,用不同数据进行测试,说明该系统使用方便、界面友好,运行可靠, 对提高多级杆件机构的设计效率与设计质量具有实用价值。 关键词:v b n e t :o b j e c t a r x :交叉编程:连杆:图解法: i i 四j | f 大学硕士学位论史 d e v e l o pb a r s l i n k a g ec a d s o f t w a r ew i t h m u l t i 。p l a t f o r mc r o s sp r o g r a m i n gt e c h m e c h a n i c a ld e s i g na n dt h e o r y p o s t g r a d u a t e :s u nj u n a d v i s o r :z h e n gz h o n g j u n b a r s - l i n k a g ei sak i n do fv e r yi m p o r t a n to r g a n i z a t i o na n dw i d e l yu s e di na l l k i n d so fm a c h i n e i tc a nb em a n u f a c t u r e de a s i l ya n dc a nr u nr e l i a b l y t od e v e l o p e f f e c t i v e b a r s l i n k a g e c a ds o f t w a r ew i t hl o wc o s ti st h et a s ko ft h i s t h e s i s a c c o r d i n gt ot r a d i t i o n a b a r s - l i n k a g ed e s i g nt h e o r ys u c ha sg r a p h i c a lm e t h o d a n de x p e r i m e n t a lm e t h o d ,as e r i e so f p r o g r a m m i n gt e c hw a st r i e d t h ed e v e l o p t e c h o fs p e c i a ls o f t w a r ew a st r i e di nt h i st h e s i sb yd e v e l o p m e n to f b a r sl i n k a g ec a d s o f t w a r e 1 1 1 i s $ o f t w a r ei n c l u d er e s o l u t i o n ,k i n e m a t i c s a n a l y s e , k i n e m a t i c s s i m u l a t i o n ,p a r a m e t e rm o d e l i n ga n df i n i t e e l e m e n ta n a l y s i sp a r t s m o s to ft h e d e v e l o p t e c ho fc a ds o f t w a r e w a sd i s c u s s e di nt h i s t h e s i s ,p a r t i c u l a r t ot h e d e v e l o p - t e c ho f s p e c i a ls o f t w a r e n ep r i m a r ya c h i e v e m e n ta n df e a t u r eo f t h i st h e s i s i nt h e o r ya n dp r a c t i c ei sa sf o l l o w s : ( 1 ) t h ew a yt ou n i t ec a dt e c hw i t ht r a d i t i o n a lm a c h i n ed e s i g nm e t h o di s s t u d i e d t h em a i nc o n t e n t sa r ea b o u tt h ef e a s i b i l i t yo fu n i t ec a dt e e hw i t h t r a d i t i o n a lg r a p h i c a lm e t h o da n de x p e r i m e n t a lm e t h o d n es o l u t i o ni so f f e r e d ( 2 ) t h ee f f e c t i v ed e v e l o p - t e c ho fa u t o c a ds o f t w a r ei ss t u d i e d t h em a i n c o n t e n t sa r ea b o u tt h ef e a s i b i l i t yo fm u l t i p l a t f o r mc r o s sp r o g r a m m i n gt e c hw h i c h w i l lb eu s e di nc o m b i n a t i o nw i t ha c t i v e xa u t o m a t i o nt e c ha n do b j e e t a r x 2 0 0 5 t e c ht od e v e l o pa u t o c a ds y s t e m s t h es o l u t i o ni so f f e r e d ( 3 ) n ep o s s i b l ew a yt op r o g r a mk i n e m a t i c s - a n a l y s eu n i ti ss t u d i e da n dt h eu n i t i sd e v e l o p e d ( 4 ) 1 1 1 ep o s s i b l ew a yt op r o g r a mk i n e m a t i c s - s i m u l a t i o nu n i ti ss t u d i e da n dt h e u n i ti sd e v e l o p e d 1 1 1 四川大学妒t 学位论文 ( 5 ) c a et e c ha sap a r to fc a ds o f t w a r ei ss t u d i e d ,a n df i n i t e e l e m e n ta n a l y s i s u n i tw i t ha p d ll a n g u a g ei nv b n e tp l a t f o r mi sd e v e l o p e d ( 6 ) t h ed a t a b a s es y s t e mw h i c hi s b a s e do na d o n e tt e c hi nv b n e t p l a t f o r mi sd e v e l o p e d t h e r e r es o m eu s e f u ln e ws o l u t i o n sa b o u tc a ds o f t w a r ed e v e l o p m e n ti nt h i s t h e s i s t h i ss o f t w a r eh a sb e e nt e s t e d ,a n dc o u l dr u ns t e a d i l y i t se x p e c t e dt h a tt h i s s o f t w a r ec o u l db eh e l p f u lt ob a r s - l i n k a g ed e s i g n e r si nd e s i g ne f f e c t i v e n e s sa n d q u a l i t y k e yw o r d s :v b n e t ;o b j e c t a r x ;c r o s sp r o g r a m ;b a r s - l i n k a g e ;g m p l l i c a lm e t h o d 网川大学硕学位论文 1 绪论 在机械设备中机械和控制足两大基本的组成部分,其中机械部分又处于主 导地位。事实上,总体设计特别是机械部分设计的优劣,对整个设备的性能、 成本,复杂程度等起着决定性作用“3 。能否设汁出结构好、成本低且便于控制 的机构是关键所在。零件的种类是有限的,但通过巧妙的组合,则可以产生形 形色色的机械,进一步而言,各种机构的不同组合又可以创造出无数装置或设 备。连杆机构是其中一种应用十分广泛的机构,经各种连杆和零件巧妙组合而 成的多级杆件机构因其便于制造,运动可靠,抗恶劣工作环境能力强,运动形 式多样且能实现各种复杂曲线运动,因而在各种机械设备上广泛应用。本课题 基于a u t o c a d 2 0 0 5 ,开发商效实用的多级杆件机构计算机辅助设计软件,并力 图探讨快速、高效的开发基于较低端c a d 软件的中小型号用设计软件的方法, 在多平台交叉编程技术和基于图解法、图解解析法、实验法的机构类计算机辅 助设计软件的实现方法上作了积极的探索,对提高多级杆件机构的设计效率和 设计质量,寻求开发类似机构类专用设计软件的方法具有很现实的意义。 1 1多杆机构的设计方法 平面多杆机构的计算机辅助设计,目前还没有完荚的设计体系,一是由于 机构选型方面尚无系统的理论和方法:二是尺寸综合方面还没有统一的方法,并 且设计过程也较为烦琐,往往需要进行大量的数值计算,这些对于一个经验不 足的设计者来说,要想保证设计质量是比较困难的。平面连杆机构的计算机辅 助设计系统的发展正向着实用,简明精确和人工智能化的方向即平面连杆机构 专家系统发展。 多杆机构的传统设计方法有图解法、解析法和实验法,各有特点。图解法直 观、清晰、一般比较简单易行,但是受手工作图工具的限制,精度差,效率低。 实验法也有类似之处,而且工作也比较繁琐。不过它用来设计运动比较复杂的 多杆机构或作为机构的初步设计仍不失为一种有效方法。解析法的缺点是机构 的位置方程可能相当复杂,计算求解也比较麻烦,但却可以得到比较精确的结 果。随着计算技术的发展,解析法应用日益广泛。而图解法由于其给人留下的 精度差,效率低的印象,曾经一度被认为会被逐渐淘汰,以往的多杆机构计算 四大学硕 学位论史 机辅助设计软件也都以解析法为基础进行丌发。随着计算机辅助没计软件在工 程领域的普及应用,目前已经能够很好地解决图解法的局限性”1 ,图解法被移 植到计算机上,其精度得到大幅度提高,其使用价值重新得到人们的认同。目 前很多设计人员已习惯于将a u t o c a d 的c a g d ( c o m p u t e ra i d e dg e o m e t r i c a l d e s i g n ) 功能用于机构设计,并取得了理想的效果。c a g d 是以计算几何为理论 基础,以计算机软件为裁体,进行几何图形的表达、分析、编辑和保存的一种 技术方法,称为“计算机辅助几何设计o 。目前对基于c a g d 功能的机构图解 法研究已经成为机构设计方法研究中的一个发展方向。如青岛大学的张继忠副 教授在c a x a 图板上对连杆、凸轮机构的图解法的实现方法进行研究,认为其达 到与解析法相当的求解精度:4 1 。黑龙江工程学院的徐丽娟副教授在a u t o c a d 中 用图解法对四杆机构进行优化设计,对其在a u t o c a d 中的设计精度进行了分析, 认为a u t o c h d 中绘图输入方式是数字化方式,对图素特征点的捕捉过程,其实 质也是一个连续数值计算过程,通过连续的插值,直至符合要求,与计算机辅 助的解析法精度相当但更为直观5 。北京服装学院的罗家莉副教授用计算机图 解法对连杆、凸轮机构进行分析,将其结果与解析法结果进行对比,发现其系 统误差很小,完全能够满足使用要求”1 。实际上传统的图解法精度差,效率低, 从根本上讲并非是其原理的问题,而是受手工作图工具的限制m 。而其简明、 直观的优点,恰恰使它成为用于机构设计类c a d 程序设计的非常理想的方法。 而要把图解法被移植到c a d 设计程序中还要解决一系列技术难题,因此计算机 图解法的程序化就成为本课题研究的一个主要方向。 i 2 机构设计软件开发现状 多杆机构的计算机辅助设计系统目前尚未有公认的较为成熟的商用软件, 针对机构设计的不同要求目前多杆机构的计算机辅助设计系统的开发主要集中 在机构设计、运动分析、机构可视化运动仿真等几个方面。形成了以机构设计 为目标的c a d 系统和以分析、仿真为目标的c a e 系统两大开发方向。 1 2 1 c a d 及c a e 技术现状 c a d ( c o m p u t e ra i d e dd e s i g n 计算机辅助设计) 是工程技术人员与计算机相 结合、各尽所长、应用多学科的技术方法综合有效地进行问题求解的先进信息 阴1 1 l 大学硕士- 学位论史 处理技术。它是计算机科学与工程设计学科相结合形成的新兴技术,是计算机 在工程中最有影响的应用技术之一,也是先进制造技术的重要组成部分。进入 本世纪以柬,计算机技术突飞猛进,特别是微机和工作站的发展和普及,再加 上功能强大的外围设备,如大型图形显示器、绘图仪、激光打印机的问世,极 大地推动了c a d 技术的发展,c a d 技术已进入实用化阶段。我国已经在工业企 业中实现计算机辅助绘图的普及,正进入深入应用计算机辅助设计技术的阶段, 其范围已经扩大到包括工程及产品的分析计算、几何建模、仿真与试验、绘制 图形,工程数据库的管理,生成设计文件等功能4 1 以及c a d c a e c a m 的集成技 术等,即向广义的c a d 技术方向发展。 c a e ( c o m p u t e ra i d e de n g i n e e d n g ) 计算机辅助工程是一种迅速发展起来的 信息技术,是实现重大工程和工业产品的建模、计算分析、模拟仿真与优化设 计的工程软件,是支持工程科学家进行创新研究和工程师进行创新设计最重要 的工具和手段。目前c a e 进一步被定义为支持从研究开发到产品检测整个生产 过程的计算机系统嘲。随着计算机技术的快速发展和市场竞争的日益激烈,更 多的企业越来越清楚地意识到要想提高工程、产品的设计质量,降低研究开发 成本,缩短开发周期,推出优秀的创新产品,从而尽快地占领更多的市场,那 么应该把c a e 技术作为实现工程、产品创新的有力工具和藿要的支撑技术“。 有限元分析软件作为c a e 的重要工具在我国制造业的应用普及率,与 c a d 、c a m 、c a p p 等信息化技术应用相比较相对较低。据2 0 0 4 年不完全统 计,完全将c a e 融入设计研发过程的企业,仅达到7 左右,当然在不同行业 c a e 普及应用水平也不尽相同;例如近年来,在航空航天,造船、汽车等先导 行业,以c a e 为核心的仿真中心从无到有,从小到大,从大到强,在本部门、 本行业发挥着越来越重要的作用。而对于通用机械、家用电子以及石油化工等 行业,c a e 由于其本身相对较强的专业性,无论应用水平还是普及程度尚未形 成浓厚的氛围1 。c a e 技术在我国制造业的普及已成为一个急迫的任务。 现代产品研发流程中,通常使用c a d 建模,用c a e 进行仿真。因此,在 目前c a d 与c a e 正逐渐融合成为广义的c a d 技术,在一个现代的c a d 软件 中设计与分析( c a d c a e ) 已成为不可分割的两个部分,因此本系统既包含了 c a d 功能。进行绘图、求解、参数化建模等,也包含了一定的c a e 功能,进行机 构的仿真与分析等。 四川大学颂 学位论史 1 2 2 连杆机构c a d c a e 软件历史及开发现状 自1 9 6 4 年d w c o o p e r 等人等人基于矢量三角形法开发了第一款公开发行的 平面连杆机构运动分析软件k a m ( k i n e m a t i ca n a l y s i sm e t h o d ) 以来,连杆机构 c a d c a e 软件的开发已经走过数十年历程,因为其机构选型、尺寸综合等方面 的多样与复杂,至今尚未有公认的较为成熟的商用软件推出。杆件机构的设计 更多依赖u g 、p r o e 、c a t i a 等大型通用设计软件和d a d s 、a d a m s 、w o r k i n g m o d e l 等大型通用机构运动学和动力学分析仿真软件来完成。目前连杆机构的 专用计算机辅助设计系统基本上都以解析法为基础,开发方向主要集中在机构 设计、运动分析、机构可视化运动仿真、动力分析等几个方面。如我国学者西 安理工大学的曹惟庆等人采用型转化理论和广义型转化理论开发了一套自动化 程度较高的对任意平面连杆机构进行运动分析和力学分析的通用软件 k d a s “”。青岛大学的师忠秀教授以运动分折解析法中的杆组法为基础开发了 平面连杆机构的杆组法运动分析及仿真软件,应用矩阵法对常见的基本杆组进 行数学建模,实现了机构运动分析数值计算、机构运动线图自动绘制和机构运 动动态仿真等计算机辅助可视化运动分析“。甘肃工业大学以利用a u t o l i s p 开发语言,建立了连杆机构计算机辅助设计系统。该系统可以确定构件尺寸参 数,验算机构最小传动角,绘制机构运动简图,还可以通过改变输入参数,获 得多种设计方案,进行比较选优。济南二机床集团有限公司应用自主开发的机 构分析软件,在产品开发过程中对压力机多杆机构进行优化设计与方案设计等 工作。该软件还具有干涉检查、动态模拟等功能,并可以对多杆机构装配进行 误差分析,成功地解决了许多试车中的精度调试难题。 目前连杆机构c a d c a e 应用软件的开发方法主要分为以下两种: ( 1 ) 无支撑系统开发。具体方法是根据连杆机构分析的各种基础算法,使用 通用语言v c + + 、v b 、j a v a 等,根据计算机图形学和基于o r e n g l 图形库开发 显示界面。由于其编程难度大、开发周期长,而开发效果并不理想,目前仅限 于研究性开发,更多局限于实现方法的讨论。 ( 2 ) 基于支撑系统的二次开发。具体方法是根据连杆机构分析的各种基础算 法,使用通用语言v c + + 、v b 、j a v a 等或支撑系统的专用语言( 如a u t o c a d 的v l i s p ) ,基于支撑系统提供的基本图象和造型功能进行软件的开发。由于其 编程难度减小、开发效率提高,开发质量得到保证,已经成为主流的开发手段。 4 网大学碗 学位论文 凡是成功的c a d 软件开发企业都足将选择高起点的c a d 技术作为开发战略,利 用已有的技术成果,在此基础上开发自己的c a d 软件,可避免将人力物力浪费 在低水平的重复开发上。这样既可以提高效率,又能保证自己的产品具有较高 的技术水平。例如达索公司的c a t l a 系统在c a d 方面购买了c a d a m 系统资源程 序,c d c 、a u t o d e s k 、h p 等七十余家公司部以英国s h a p e d a t a 公司的a c i s 实 体造型软件作为自己的系统核心。 国产c a d 软件与国外相比尚有一段距离,也逐渐趋于成熟,开始推广应用。 但纵观目前的应用状况,其应用水平相对较低,即使引进国外著名的软件也是 以绘图为目的,没有发挥其真正功效。企业一般不可能自行开发软件,只能购 买现有的支撑软件“”。但由于企业的性质、规模、产品各不相同,对c a d 应用 软件的需求也不相同,因此就充分发挥引进软件的效率而言也必须以现有的软 件作为支撑平台进行必要的二次开发,形成适合企业需求的应用软件。目前主 要的支撑软件为a u t o c a d 、m a t l a b 、a n s y s 等。本课题采用了a u t o c a d 2 0 0 5 和 a n s y s8 0 作为系统开发的支撑软件。 1 3本课题研究的背景和主要内容 1 3 1 本课题研究的背景 c a d c a e 技术主要应用于机械、电子、字航、建筑、纺织等产品的总体 设计、造型设计、结构设计等,该技术经过几十年的发展,先后走过大型机、小 型机、工作站、微机时代。现在随着微机性能的迅速提高,许多原来只能在工 作站上运行的大型c a d c a e 设计软件被纷纷移植到w i n d o w s 操作系统上,使 c a d c a e 软件的应用得到空前地推广,已成为设计人员的必备工具。目前被 广泛使用的c a d 软件主要有u g 、p r o e 、i - d e a s 、m d t 、s o l i d w o r k s 等,c a e 软件主要有a n s y s 、d a d s 、a d a m s 等。它们普遍具有功能强大、适用范围 广、通用性好等特点。当然同时也不可避免的有专用性差、价格昂贵的弱点。 因此基于一种性价比好、应用广泛的低端软件( 如a u t o c a d ) ,开发专用性好、 功能针对性强、设计效率高、经济实用的中小型设计软件就成为很有现实意义 的事情。连杆机构是一种应用十分广泛的机构,目前多杆机构的计算机辅助设 计系统目前尚未有较为成熟的商用软件,本课题针对多杆机构的设计需求,基 于计算机图解法开发了一套多杆机构的计算机辅助设计系统,可以实现机构结 四f i 大学硕t 学p 论文 构设计、运动分析、运动仿真、强度校核等多方面的功能。 1 3 2 本文的主要内容 全文共包括以下主要内容: ( 1 ) 系统开发技术:首先介绍了系统的总体设计方案及设计思路,然后着重 介绍了c a d 系统开发使用的核心技术多平台交叉编程技术,对其使用价值、 基本流程、关键技术、开发平台设置做了详细分析与说明。 ( 2 ) 机构设计模块开发:首先介绍了设计模块运行界面的开发方法,然后 分别对图解法、实验法在多杆机构设计、运动分析程序中的实现方法进行了详 细介绍。 ( 3 ) 机构运动仿真模块开发:酋先介绍了运动仿真的基本方法,然后对基 于a u t o c a d 的运动仿真技术在系统中的实现方法进行了详细介绍。 ( 4 ) 参数化三维造型模块开发:首先介绍了基于a u t o c a d 和a n s y s 的 参数化造型技术在系统中的的实现方法,然后对以该模块的数据库为例介绍了 系统的数据库技术。 ( 5 ) 强度分析模块开发:首先介绍了有限元技术,然后详细介绍了强度分 析模块中有限元分析程序的开发方法。 6 四川大学颂十学位论文 2 系统开发技术 2 1系统的总体设计 2 1 1 采用的设计方法 在产品的设计过程中,有两种较为常用的设计方法,一种是首先设计零件, 最后把所有零部件组装为部件,在组装过程中随时根据发现的问题进行零件的 修改。”;另一种则是遵循从部件到零件的设计思路,即从一个空的部件开始, 根据要实现的功能,先做出概念性的设计,然后在具体设计时创建零件。前者 称为自下而上的设计方法”“,后者称为自上而下的设计方法。自下而上的设计 方法是传统的设计方法,在这种方法中,已有的特征将决定最终的装配特征, 这样设计者就往往不能够对总体设计特征有很强的把握力度。因此,自上而下 的没计方法应运而生。9 0 年代初期,m a n t y l a 提出了自顶向下的产品设计思想。 他将设计过程分为3 个阶段:功能设计、概念设计和详细设计“”。在这种设计方 法设计思路下,用户首先从总体的装配组件入手,根据总体装配的需要,逐级 向下创建零件,添加约束。在自上而下的设计过程中,最后完成的是最下一级 的零件。自上向下的设计方法从产品顶层结构着手,通过定义特定的顶层设计 规程,向下延伸,按照规定的程序,进行产品零部件设计。自顶向下的设计过 程常划分为六个主要步骤:总体规划、产品结构模型的创建、在产品设计的各层 次上对设计信息进行共享化、在独立的两个零件间共用相互关系、部件及零件。 设计自上向下的设计方法要求c a d 软件具有参数化的建模功能,使用合适的方 法来表达设计意图与约束,从而定义顶层的产品结构模型,并能将这些产品顶 层的设计信息带到产品构成的下层以及后续的单个零部件设计过程中。 2 1 2 系统的主要设计流程及模块 本系统根据自上而下的设计方法对多级杆件机构设计的要求,开发了5 大 模块,分别为求解模块、运动分析模块、运动仿真模块、参数化建模模块、力 分析模块。主要模块结构如图1 1 : 使用本系统进行设计首先根据设计需要,使用求解模块对多杆机构的结构 尺寸进行求解,然后根据得到的结构尺寸使用运动分析模块对机构进行运动分 析,符合机构的运动要求之后使用运动仿真模块对机构进行运动仿真,观察机 构的运动情况,在运动情况满足设计要求后使用参数化建模模块对主要零件进 7 四川大学硕十学位论文 行立体建模,随后使用力分析模块对机构的主要构件进行力分析,最后可以使 用仿真模块对机构进行仿真运动立体渲染,得到逼真的机构运动场景,至此一 级杆件机构设计完成。如果设计的足多级杆件,则启动本系统多级秆件功能, 基本操作与一级杆件相仿,主要区别在可以启动使用本系统的多级杆件运动仿 真模块,并且可以进行多级杆件的仿真运动立体渲染。 图1 1 主要模块结构 图1 2 启动各模块的主界面 本系统基本包含了杆件机构 从概念设计到最后具体构件组合 运动完成的整个设计过程,包含 了c a d ( 计算机辅助设计) c a e ( 计算机辅助工程) 两大功能, 适用于大部分杆件机构及其组合 机构的设计,是一个功能比较完 整的多级杆件设计软件。如图1 2 为启动各模块的主界面。 四川大学硕十学位论文 2 2 多平台交叉编程的c a d 技术 2 2 1多平台交叉编程技术的意义 对中小型号用设计软件的开发而占,所开发程序的运行效率和程序开发的 成本是最重要的两个因素。而这两个因素往往又是相互矛盾的。在开发时如何 既保证程序的运行效率,又尽可能减少程序的开发成本,是一套软件能否开发 成功的关键因素之一,也因此成为中小型c a d 号用软件开发中必须解决的问题。 本人曾经通过平面四杆机构计算机辅助设计程序的开发实例,探讨过如何根据 v l i s p 和0 b j e c t a r x 两种开发工具的特点,以图解法结合解析法进行机构设计 的c a d 程序开发”,取得了一定效果,对多平台交叉编程技术有了一定认识, 从而在本课题中更进一步,采用基于v i s u a lb a s i c n e t 的a c t i v e xa u t o m a t i o n 技术和基于v c + + n e t 的o b j e c t a r x 技术进行交叉编程。 基于v b n e t 的a c t i v e x a u t o m a t i o n 技术和基于v c + + n e t 的o b j e c t a r x 技术是目前a u t o c a d 二次开发中最先进的两种技术。它们特点鲜明,各有优劣, 用于程序开发时具有明显的互补性。o b j e c t a r x 功能强、运行效率高,但语法 繁琐,编程难度大,开发成本高;基于v i s u a lb a s i c n e t 的a c t i v c x a u t o m a t i o n 技术语法简单,编程难度小,开发成本低,但其开发的程序在a u t o c a d 中的 运行效率比o b j e c t a r x 程序明显要低一些。当然,随着v b 从v b 6 0 升级到 v b n e t , v b 已成为不逊色于其它语言的主流语言,这就使人们不能不注意到 v b n e t 在今后a u t o c a d 二次开发中可能发挥的巨大作用。使用交叉编程技 术将o b j e c t a r x 在a u t o c a d 中的高运行效率与v b n e t 及a c t i v e x a u t o m a t i o n 技术有机地结合起来,就可以使开发的a u t o c a d 程序具有最高的运行效率,最 精彩的使用界面,同时使开发工作的难度尽可能最小,开发成本尽可能最低, 尤其适合中小型专用设计软件的开发,是一个非常有意义的研究课题。 2 2 2 多平台交叉编程技术程序的基本流程 多平台交叉编程技术程序的基本流程的原理是,以v b n e t 的a c t i v e x a u t o m a t i o n 运行方式为程序主干,调用各个0 b j e c t a r x 2 0 0 5 程序执行各自功能。 v b n e t 的a c t i v e xa u t o m a t i o n 为a u t o c a d 外部调用接口,相对更安全, o b j e c t a r x 2 0 0 5 程序与a u t o c a d 在同一地址空间内运行,相对更高效,这种程 9 四i l 大学颀t 学位论文 序结构保证了程序安全性与高效率的统一,成为本系统多平台交叉编程技术的 原则。其基本流程原理图如图2 1 。 启动v b n e t 程宇界面 上 从v b n e t 中启动a u t o c a d 2 0 0 5 上 从v b n e t 程序界面中输入数据并进行数据检查 上 从v b n e t 中加载o b j e c t a r x 2 0 0 5 程序 上 从v b n e t 中启动o b j e c t a r x 2 0 0 5 程序运行 上 从v b n e t 中将数据传入o b j e c t a r x 2 0 0 5 程序 上 o b j e c t a r x 2 0 0 5 程序运行并存储运行结果( 数据,图象,造型等) 上 从v b n e t 中读取o b j e c t a r x 2 0 0 5 程序结果并进行数据检查 图2 1 多平台交叉编程基本流程原理图 2 2 3 多平台交叉编程技术的关键一数据传递问题 数据能否在不同的开发平台开发的程序之间顺利传递是多平台交叉编程能 否实现的关键。由于0 b j e c t a r x 与v b n e t 的a c t i v e xa u t o m a t i o n 之间为不 同的运行方式,必须寻找二者之间可以互通的数据传递方式,并解决数据传递的 安全性问题。实现的方法多种多样,本课题主要采用以下方法: 2 2 3 1 传递数据的方法 1 从v b n e t 中调用o b j e c t a r x 程序和传递数据的方法 数据传递方法是在v b n e t 中使用s e n d c o m m a n d 方法,主要为下面3 个步骤: ( 1 ) 调用接口程序c a d 2 0 0 50 ,连接a u t o c a d 2 0 0 5 1 0 四1 入学硕_ 卜学位论文 ( 2 ) 用“a r x l o a d ”命令加载o b j e c t a r x 程序 ( 3 ) 最后用s e n d c o m m a n d 方法将v b ,n e t 的数据传递给o b j e c t a r x 程序 下面是数据录入框的数据传递给o b j e c t a r x 程序求解。主要实现代码为: c a l1c a d 2 0 0 50连接a u t o c a d 2 0 0 5 加载o b j e c t a r x 程序 a c a d a p p a c t i v e d o c u m e n t s e n d c o a r a a n d ( 4 ( a r x l o a d d :v a r x 2 0 0 5 a r x 2 d e b u g s u n a r x p r o j e c t l ) v b c r ) 传递给o b j e c t a r x 程序求解 a c a d a p p a c ti v e d o c u m e n t s e n d c o m m a n d ( q j 2 7 v b c r 一 t e x t b o x l t e x t v b c r t e x t b o x 7 t e x t v b c r ) 2 从o b j e c t a r x 程序向v b n e t 中传递数据的方法 在v c + + n e t 中文件读写最普遍的方法是直接使用“c f i l e ”类进行。c f i l e 类用来处理正常文件的i o 操作,它直接提供无缓冲的、二进制磁盘输入输出 服务,并且通过其派生类日】接支持文本文件和内存文件。在此需要说明的,c f i l e 对磁盘文件的定点读和写是通过函数r e a d ,w r i t e 和s e e k 进行的;m o d e c r e a t e 指示构造函数创建一个新文件,如果该文件已存在,则该文件截短为 0 :m o d e r e a d 打开文件用于读:m o d e r e a d w r i t e 打开文件用于读写:m o d e w r i t e 打 开文件用于只写。通过一个临时的t x t 文件,在o b j e c t a r x 中用c f i l e 类的函 数进行文件操作,用c s t r i n g 类的函数进行格式化后将数据写入t x t 文件提供 给v b n e t 程序。例如将求解的连杆长度数据格式化后将数据写入t x t 文件, 主要实现代码为: o u t f i l e o p e n ( d :v b v b 4 f h t x t c f i l e :m o d e n o t r u n c a t e l c f i l e :m o d e w r i t e 1 c f i l e :t y p e t e x t ) :创建t x t 临时数据文件 s t r l f o r m a t ( r ,a b ) :格式化字符串 o u t f i l e w r i t e ( s t r l ,1 0 ) :写字符串 s t r l f o r m a t ( ,a d ) : o u t f il e w r i t e ( s t r l 。l o ) : o u t f i l e c l o s e ( ) :关闭数据文件 3 v b n e t 中从o b j e c t a r x 程序接收数据的方法 l l 阴大学颂l 学位论文 v b n e t 中从o b j e c t a r x 程序接收数据的方法主要为下面2 个步骤: ( 1 ) v b n e t 程序从o b j e c t a r x 程序生成的临时的t x t 文件中按格式读入数据 ( 2 ) 转化为需要的数据类型 例如将t x t 文件中o b j e c t a r x 程序求解的连杆长度数据读入后,转化为需 要的数据类型,主要实现代码为: d i ma ,b 。c ,da sd o u b l e定义数据类型 打开t x t 文件,读入数据 f i l e o p e n ( 1 d :v b v b 4 f h t x t ,o p e r t l o d e i n p u t ) a = v a l ( i n p u t s t r i n g ( 1 ,l o ) ) 截取数据,转化数据类型 d = v a l ( i n p u t s t r i n g ( 1 。l o ) ) f il e c l o s e ( 1 ) 4 o b j e c t a r x 程序从v b n e t 中接收数据的方法 o b j e c t a r x 程序接收v b n e t 中用s e n d c o m m a n d 方法传递来的数据的方法 是:使用o b j e c t a r x 的a c e d g e t i n t ( 获取整数) 、a c e d g e t r e a l ( 获取实数) 、 a c e d g e t s t r i n g ( 获取字符) 等函数接收v b n e t 传递来的数据,数据的类型必须 与使用的获取函数的数据类型一一对应。例如将v b n e t 中数据录入框传递来的 求解条件数据一一读入的主要实现代码为: s t a t = a c e d g e t r e a l ( r l = ”e r l ) ;读入机架长度 s t a t = a c e d g e t r e a l ( r 2 = ,e r 2 ) ;读入夹角1 _ 6 5 利用a u t o c a d 自身的系统变量进行数据传递 另外有一种方法是利用a u t o c a d 自身的系统变量,进行参数的存储和提取, 实现o b j e c t a r x 、v b n e t 之间的数据传递。a u t o c a d 中专门设置了以下系统变 量用于参数的存储和提取:u s e r il u s e r l 5 ,用于整数值的存储和提取。u s e r r l _ u s e r r 5 用于实型数值的存储和提取。u s e r s l u s e r s 5 用于字符串数据的存储 和提取。此种方法用于少量数据的传递,在后面的仿真模块中采用了此方法。 2 2 3 2 数据传递的安全性 o b j e c t a r x 虽然是a u t o c a d 开发最高效的工具,但由于其与a u t o c a d 在同 1 2 舶”l 大学硕卜学位论文 一地址空间内运行并能直接利用a u t o c a d 核心数据库结构和代码,所以它也是 a u t o c a d 中最容易造成系统崩溃的开发工具。因此必须考虑录入o b j e c t a r x 程 序的数据的安全性。本系统主要采用了以下几种方法保证程序的数据安全: 1 对数据录入框输入数据类型的限制 求解模块的数据主要通过数据录入框输入,数据录入框的录入数据类型通 过数据录入框的文本椎控件的k e y p r e s s 事件进行限制,对录入错误数据类型进 行报警,保证输入的数据类型符合要求。其主要代码如下: s e l e c tc a s ee k e y c h a r c a s e 0 ”t o ”9 ,一,c h r ( 8 ) ,c h r 0 3 ) c a s ee l s e m s g b o x ( 请输入有效数字,v b e x c l a m a t i o n ,参数输入) e n ds e 】e c t 2 在求解之前对数据进行检查 图2 2 四杆机构求解录入数据检查流程图

温馨提示

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

评论

0/150

提交评论