CAD软件开发基础解析_第1页
CAD软件开发基础解析_第2页
CAD软件开发基础解析_第3页
CAD软件开发基础解析_第4页
CAD软件开发基础解析_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

CAD二次开发技术重庆理工高校汽车学院机械基础教研室第1讲CAD软件开发基础一、为什么要开发CAD专用软件随着计算机在工程领域的广泛应用,CAD软件的需求量与日俱增,尤其是适合于生产实际的CAD专用软件。市场上有很多商品化的CAD软件,在这些软件中,除少数是由专业单位针对本行业的运用条件开发的应用软件外,绝大多数软件都是由软件公司开发的通用性CAD支撑软件,如AutoCAD、UG等。在应用这些软件的过程中,我们照旧会感到不便利,譬如:特定曲线、常用机械零件的绘制,设计数据的查询,设计公式的应用等。因此,设计人员应依据本单位的实际状况,在已有CAD软件的基础上进行二次开发,以扩充其好用的功能。二、开发的内容与要求上一页下一页结束首先依据本单位的产品开发与设计要求,列出总体设计,零部件设计,结构分析,参数化绘图,设计资料数据库与标准件图形库等内容。然后依照所选通用CAD软件能否满足要求的状况,确定软件二次开发的内容。这些内容也可以抽象地归纳为:数据查询与输入,设计计算、图形处理三部分。包含上述要求的CAD专用软件,通常都具有以下特点:1)集数据查询、计算、绘图于一身2)用户界面友好,具有较好的人机交互功能3)简便、好用。。

软件开发的基本要求上一页下一页结束(1)正确性:满足功能要求,结果正确;(2)牢靠性:运行正常,容错性好;(3)完整性:程序和文档资料齐全;(4)好用性:界面友好,操作简便,好用;(5)可维护性:便于修改、扩充。。三、软件开发工程规范上一页下一页结束美国电气与电子工程师协会(IEEE)在1976年就着手制定软件工程标准,并于80年头初公布实施。我国在80年头初由航空部领先成立了软件工程化小组,制定出了一套软件工程标准和规范,在部内试行。在1983年才正式将此标准列入国家标准中,并于80年头末颁布实施。软件工程规范国家标准上一页下一页结束(1)《计算机软件开发规范》(GB8566-88);(2)《计算机软件产品开发文件文件编制指南》(GB8567-88)(3)《计算机软件需求说明编制指南》(GB9385-88)(4)《计算机软件测试文件编制规范》(GB9386-88)(5)《计算机软件质量保证支配规范》(GB/T12504-90)(6)《计算机软件配置管理支配规范》(GB/T12505-90)(7)《软件工程术语》(GB/T11457)。在机械设计过程中,常常须要引用有关的数据资料,如阅历数表、试验曲线、各种标准和规范等。在传统的设计中,这些数据资料通常是以设计手册或工具书的形式供应的。而在计算机帮助设计时,就必需将这些数据资料作相应的处理,以便程序运行时计算机能依据设计要求自动检索和调用,这就是所谓的数据资料程序化的问题。上一页下一页结束四.工程数据的计算机处理1)将数表和线图数据以方程、数组或数表的形式干脆编在程序中,即所谓的数据程序化;2)将数表和线图数据编制成一个个独立的数据文件,供程序运行时调用;3)将数表和线图数据建成数据库,以便于检索和管理。4)将数表和线图做成图片或幻灯片,须要时打开干脆查取。上一页下一页结束计算机对数表和线图的处理有如下四种方法数表有一维数表、二维数表。在机械设计中的数表多属于二维数表,如带传动工作状况系数表:上一页下一页结束§4-1数表的程序化处理这类数据可接受数组,如K(I,J)。最为简洁的是找出其规律,用一个公式来描述。如:KA=1+0.1(K1+K2),其中原动机工况K1取值为0、1、2,工作机工况K2取值为0、1、2、3。例1、带传动工作状况系数KA的确定:上一页下一页结束(defunKAtest()(initget5"012")(setqK1(getkword“\n原动机工况:0--<10h,1--10~16h,2-->10h<0,1,2>:"))(initget5"0123")(setqK2(getkword“\n工作机工况:0--载荷变动微小,1--变动小,2--变动较大,3--变动很大"))(setqk1(readk1)k2(readk2))

(setqKA(+1(*0.1(+k1k2))))(princ"\nKA=")(princKA)(princ));end上一页下一页结束将前式(setqKA(+1(*0.1(+k1k2))))变为:(setqKA(cond ((=k10)(nthk2'(11.11.21.3))) ((=k11)(nthk2'(1.11.21.31.4))) ((=k12)(nthk2'(1.21.31.41.5)))))其效果是一样的,不同的是没有接受公式,而是干脆用的数表,且用条件函数通过K1、K2来检索数据。上一页下一页结束若利用BASIC语言编程检索,则程序如下:DIMK(4,3)FORI=1TO4FORJ=1TO3READK(I,J)NEXTJ,IDATA1,1.1,1.2,1.1,1.2,1.3,1.2,1.3,1.4,1.3,1.4,1.5INPUTI,JPRINT“KA=“;K(I,J)END这里接受了二维数组,如K(2,3)=1.3上一页下一页结束例2:V带的基准长度系列及长度系数KL的确定(见机械设计P146表8-2)编程检索如下:先建立基准长度和长度系数的数表。上一页下一页结束检索时依据初算的基准长度Ld1在数表Ldb中确定出最接近的Ld,再定出相应的长度系数KL。上一页下一页结束在机械设计手册中,常常要用到表示各参数间关系的线图。编制程序时必需将线图程序化。程序化的方法有两种:其一是将线图公式化,其二是将线图数表化。例如:V带传动中,带型号的选择就是通过线图来实现的。上一页下一页结束§4-2线图的程序化上一页下一页结束依据计算功率Pca及小带轮转速n1由下图选定带型依据计算功率Pca和主动轮转速n1,选择V带型号的线图有如下关系:一、直线图的公式化上一页下一页结束(defundxh(pn)(setqpaa'(11111.738.12250) naa'(780480200100100100100100100) pbb'(3.85810142040100170) nbb'(31502500200012501100950640600500))(setqdd1'("506371""8090100""80859095100""112118125132140""125132140" "160170180200""200212224236250265280315”"355375400""500"))于是,依据已知的P和n,可以编写选择V带型号的程序如下:上一页下一页结束续前(setqi-1nk5000);循环搜寻区域(while(<=nnk)(setqi(1+i))(setqpa(nthipaa)na(nthinaa) pb(nthipbb)nb(nthinbb))(setqnba(-(lognb)(logna)) pka(-(logp)(logpa)) pba(-(logpb)(logpa)))(setqc(+(logna)(/(*nbapka)pba)))(setqnk(expc))(if(and(>ppb)(>nnb))(setqnk(-n10))));while上一页下一页结束续前

;检索带型号及其相应的小带轮基准直径(setqdx(nthi'("Z""Z""A""A""B""B""C""D""E")))(setqd1(nthidd1))(princ"\nDXH=")(princdx)(princ"\nd1=")(princd1)(princ))上一页下一页结束对于一些曲线线图或由曲线表示的近似数据,同样可将其数表化或公式化。常用的方法有插值法和最小二乘拟合法。插值法的基本思想是:设法构造一个简洁的函数y=p(x),作为曲线函数f(x)的近似表达式,然后计算p(x)的值以得到f(x)的近似值。使得:上一页下一页结束二、曲线线图的公式化即两点插值。已知插值点P的相邻两点:y1=f(x1),y2=f(x2),如图所示。可近似认为在此区间函数呈线性变更,插值点P对应于x的函数值为:上一页下一页结束1)线性插值编程时,只要将节点数据和插值公式编制其中,就可在输入一个x后,计算出相应的y值。

例、包角系数Kα的确定(见机械设计P155表8-5):上一页下一页结束线性插值应用举例线性插值的误差较大,为了提高插值精度,可接受多点插值。若插值节点取n,则拉格朗日插值多项式的一般表达式为:上一页下一页结束2)拉格朗日插值当插值节点取n=3时,得到二次插值多项式,即抛物线插值。上一页下一页结束拉格朗日插值编程应用举例:这是一个通用程序,其中数表xi,yi中的数据可以依据具体状况更换。该例中的数据取自机械设计教材p194动载系数8级精度曲线。(defunfx(x)(setqxi'(0.05.010.015.020.025.030.0) yi'(1.01.21.271.321.361.41.43))(setqi0j0y0ajx1.0)(setqn(lengthxi))上一页下一页结束续前

(while(<jn)(setqxj(nthjxi))(while(<in)(setqx_xi(-x(nthixi)) xi_xn(-xj(nthixi)))(if(/=ji)(setqajx(*ajx(/x_xixi_xn))));end_if(setqi(1+i)));end_while_i上一页下一页结束续前

(setqy(+y(*ajx(nthjyi))))(setqj(1+j)i0ajx1.0));end_while_j(princ"\ny(x)=")(princy)(princ));end插值法的实质是在几何上用严格通过各个节点的曲线来近似代替线图曲线。但没有通过节点的数据往往误差比较大,因此,在工程上常接受拟合的方法来构造近似曲线。此曲线并不严格通过全部节点,而是尽可能反映所给数据的趋势。这种方法称为数据的曲线拟合,其理论基础为最小二乘法。上一页下一页结束3)曲线拟合法1)设定一条平滑的拟合曲线方程2)从y=f(x)曲线图上取出n组数据xi,yi。与拟合曲线上对应数据的偏差为:上一页下一页结束用最小二乘法拟合的步骤:3)依据最小二乘法定理,为了达到最好拟合,应使各节点的偏差平方和为最小。上一页下一页结束4)上列方程整理得到线性方程组:上一页下一页结束求解该线性方程组,得到系数a0、a1、a2…。5)将各个系数代入拟合方程,即得到方程表达式上一页下一页结束说明:对于同一条曲线,同一组数据,可以选用不同的方程去拟合它。如:直线、抛物线、指数方程、对数方程或K次多项式等。最好依照曲线的特征选用,得到的拟合方程即可便利地编入程序中。前述各种方法都是将数据资料编入程序,运用起来便利、快捷。但它的缺陷是数据依靠于程序而存在,若要修改数据,则要修改程序,各程序之间所需相同数据资料无法共享。因此,对于数据量较大,且须要共享的数据,通常接受数据文件

温馨提示

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

评论

0/150

提交评论