版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
硕士学位论文PAGEPAGE791绪论1.1刀具CAD技术及其发展现状1.1.1CAD/CAM技术的特点和发展趋势CAD技术是伴随着计算机技术的产生和发展而产生并不断发展的,这门技术从产生到现在,已经历了半个世纪,从形成、发展、提高到目前的高度集成,已经形成了比较完整的科学技术体系,并在当今高新技术领域中占有很重要的位置[2]。自从1946年出现第一台计算机开始,人们就不断地试图将计算机技术引入到传统的机械设计和制造领域。特别是1951年美国PARSONS公司麻省理工学院(MIT)研制成了数控三坐标铣床,实现了利用不同数控程序对不同零件的加工,首次出现了现代柔性自动化的原形。随后,为适应数控铣床加工各种复杂形状零件的需要,MIT研制数控自动编程系统,于20世纪50年代末研制成功了批处理语言的数控自动编程系统APT(AutomaticallyProgrammingTool),该系统是最初的计算机辅助编程系统,开辟了计算机在制造领域的应用前景。在此基础上,有人提出能不能不通过APT系统对走刀轨迹的描述而直接描述零件本身的问题,由此产生了CAD的概念[3]。这一时期,美国BarberColman和Fellows公司等,就已应用计算机进行齿轮刀具齿形的设计计算,有效地提高了齿轮刀具的设计速度和精度。60年代初,MIT的研究生I.E.Sutherland首次提出计算机图形学、交互技术及图形符号的存储采用分层的思想,为CAD技术提供了理论基础。随后相继出现了商品化的CAD设备和软件系统。60年代中期到70年代中期是CAD/CAM技术走向成熟的阶段,随着计算机硬件的发展,以小型机、超小型机为主的CAD/CAM软件进入市场。出现了面向中小企业的CAD/CAM商品化系统,并在60年代末和70年代初出现了柔性制造系统FMS[5]。80年代是CAD/CAM技术迅速发展的时期,这一阶段CAD的主要技术特征是实体造型(SolidModeling)理论和几何建模(GeometricModeling)方法。实体建模的边界表示法(B-Rep)和构造实体造型几何数表示法(CGS)在软件开发上得到应用,实现了三维造型、自由曲面设计、有限元分析等工程应用。从90年代起,CAD/CAM技术已不再是过去单一模式、单一功能、单一领域的水平,而向标准化、集成化、智能化发展。为了实现系统的集成,资源的共享,和产品生产与组织的高度自动化,需要企业和企业集团内的CAD/CAM系统之间和各个子系统之间进行统一的数据交换。在这种情况下,一些发达国家和国际化标准组织都进行了数据交换接口方面的开发工作,并指定了相应的标准。这一时期的CAD技术基础理论主要是以PTC公司的Pro/Engineer为代表的参数化造型理论和以SDRC的I-DEAS为代表的变量化造型理论,形成了基于特征的实体建模技术。1.1.2市场上流行CAD系统的技术特点和发展趋势CAD软件大致可分为高端UNIX工作站CAD系统,中端Windows微机CAD系统和低端二维微机CAD系统等三类。高端UINX工作站CAD系统这类系统的特点是,UNIX操作系统为支撑平台,从50年代发展至今,产生了许多著名的软件,也使许多曾经显赫一时的软件在竟争中落伍,有的被兼并改组,如Appilcon,CADAM,intergraph等。目前,这类系统中比较流行的有:·PTC公司的Pro/Engineer。是一套由设计至生产的机械自动化软件,是新一代的产品造型系统,是一个参数化、基于特征的实体造型系统,并且具有单一数据库功能。·SDRC公司的I-DEAS软件。采用基于特征的实体建模技术,以实体造型和并行相关性为特征。·EDS公司的UGH软件。采用混合建模方法,主要应用于汽车行业建模造型。在设计分析,加工制造等方面有一定的特色。·CV公司的CADDS5软件。采用混合建模,提供参数造型,全套工程分析,曲面,并行装配等强大的功能,统一数据库,图形界面,其强项为:企业产品数据管理和并行装配模形应用。·以色列Cimatron公司的CIMATRON软件。可提供优良的三维造型,工程绘图,数控加工,以及集成化的PDM,其强项是CAM。·MatraDatavision公司的Euclid3软件。采用混合建模方法,曲成设计造型和数控加工编程等功能强大。其强项为详细设计和CAM。·IBM/Dassualt公司的CATIA软件,采用混合建模方法,其强项为应用集成和CAM。·日立造船情报系统株式会实社的GRADE/CUBE-NC软件。有突出的特点是面向制造,具有丰富的实用化曲面造型和加工编程。(2)中端微机的CAD系统随着计算机技术的发展,尤其是微机的性能和Windows技术的发展,使微机具备了与中低档UNIX工作站竞争的实力,也使基于Windows技术的微机CAD系统迅速发展起来。目前,国际上最流行的有Solidworks公司的Solidworks软件,UG公司的SolidEdge软件和Autodesk公司的MDT软件等,国内也推出清华CAD工程中心的GEMS,浙大大天公司的GSMASD,北京巨龙腾公司的龙腾CAD,北京爱宜特公司的MicroSolid、江苏杰必克超人CAD/CAM以及华正公司的CAXA-ME。·Solidworks软件。包含装配设计建模,零件设计建模,工程图与钣金等模块,还与高级图像渲染软件Photoworks,高级有限元分析软件Cosmos、机构运动学分析软件Motionworks,产品数据管理(PDM)软件SmarTeam,以及数控加工等著名和分析软件无缝集成。·SolidEdge6.0软件。采用Parasolid造型内核和STREAM技术,基于Windows操作系统,以及完全与Microsoft产品相兼容的参数化三维实体造型系统,提供了实体造型、钣金、制图、装配、塑料模具和铸造设计、产品渲染和文档管理等功能,并能和Cosmos、IPA、SmarEdge无缝集成。·MeshanicalDesktop(MDT)3.0软件。采用ACIS4.2几何造型核心系统,提出基于特征为参数化实体造型、曲面造型、装配相关联的绘图和草图功能,并包含了完整的AutoCAD绘图工具集,与AutoCAD完全融为一体。·国产的三维CAD软件中,Microsolid采用ACIS作为系统的内核,GEMS、GS-MCAF、龙腾、超人CAD/CAM三维系统是侧重于面向加工的曲面造型系统。(3)低端CAD系统——二维CAD系统·AutoCAD软件。纯二维CAD系统在国外已经不多,真正有名的是Autodesk公司的AutoCAD软件。AutoCAD2004提高了数据访问能力,软件适用性以及更强的定制和开发能力,扩展Internet系统设计信息的沟通,提高文件输出/输入、编辑/对象捕捉和制图的速度,可对多个图形文件同时进行操作,支持多任务设计环境(MDE)。·国产二维CAD软件。目前流行的二维CAD软件是自主开发平台和自主版的二维CAD系统,如开目CAD、高华CAD、凯达BCAD、浙大ZDDS、中科院PICAD和华正CAXA电子图板等等。另一类是以AutoCAD为平台的二维CAD系统,如利玛CAD、大恒CAD等。国产CAD二维软件在参数化绘图、动态导航、明细表BOM等三表生成、公差标准、机械零件设计标准件图库和工程图纸管理等方面有较强的特色。随着国内外CAD系统的不断发展和完善,我们可以看到CAD系统的发展趋势主要有以下几个方面:(1)建模技术。由线框模形、实体模型和非均匀有理B样条算法为特征,几何建模已发展到参数化、变量化和特征建模,以及未来的面向产品生命周期,实现产品生命周期中内部描述信息(产品设计、计划、制造、加工、装配、检验等信息)和外部过程的集成为特点的产品建模技术。参数驱动、特征造型、动态导航、二/三维双向相关、STEP标准和动态图形显示等UNIX系统的精华已被充分吸收到新一代微机CAD系统中,而特征树是近年来在CAD软件中引入的一项非常有效的技术。面向产品生命周期的关系型产品模型技术的研究正在不断提高。(2)软件组件技术。可以提高软件的稳定性和开发效率。Solidworks、Solidedge均采用Parasolid几何造型器,MDT、Microsolid均采用ACIS几何造型器等。(3)Windows技术和Internet技术。许多公司,如Autodesk正将其软件技术的研究开发重心集中于正在蓬勃发展的三大技术领域:对象技术、三维技术和Internet技术,这些核心技术主导着全球设计工业的发展趋向。(4)智能CAD技术。智能技术在CAD系统中将占有重要地位,将专家系统、智能工程等技术,借助领域专家的设计经验,不断积累和更新,形成企业产品设计知识库,是企业开发产品的宝贵资源[12]。1.1.3CAD/CAM技术在刀具行业中的应用八十年代,由于计算机技术的发展,特别是工程工作站的诞生、三维图形技术的成熟和CAD/CAM支撑软件的集成化和商品化,而且由于CNC机床和加工中心的广泛应用,高档刀具的需求日益提高,促进了刀具生产系统的进现代化,使得刀具CAD/CAM技术的开发应用,无论在广度上还是在深度上都达到了较高的水平,其中以多品种、小批量的可转位刀具和数控工具系统生产部门最为活跃,技术水平也较高[5]。在可转位刀具的实际生产中,复合可转位孔加工刀具的生产与CAD/CAM的应用较早。除由于结构限制,少数刀具采用整体或焊接刀具外,大多数均采用可转位刀具。为了适应可转位刀具的设计与制造要求,提高市场的竞争力,生产复合孔加工刀具的厂家分别从设计与加工上入手,引进了一系列先进的设计与制造手段。为满足用户交货期与使用要求,提高刀具的设计质量与成功率,它们在大量采用NC机床与加工中心的同时,纷纷建立了自己的计算机系统及CAD/CAM软件支持系统,实现了CAD/CAM一体化,有的甚至建立了小规模的集成制造系统,其中著名的复合孔加工刀具生产厂商美国的Valenite公司(现归美国Cincinati集团)、德国的Hertel公司、Mapal公司和Komet公司等都分别于七、八十年代开始建立了自己的计算机系统用于CAD/CAM;尤其是德国的Walter公司于近年投资1亿多马克改造了可转位铣刀刀体生产线,该生产线是一个小型的计算机集成制造系统,设备运行、产品周期、质量监控均由计算机控制并进行CAD/CAM信息处理[6]。我国生产可转位刀具虽然已有近30年的历史,但大多数沿用传统的设计、制造方法。“七五”及“八五”期间,国内的生产可转位刀具的厂家大多进行了不同规模的技术改造,配备了CNC机床、加工中心及图形工作站等,推动了国内可转位刀具生产的发展。但由于没有CAD/CAM技术上的支持,无法适应新产品开发的非标订贷的要求,没有发挥出先进设备应用和潜力[6]。只有少数厂商如哈尔滨工量数控刀具有限责任公司等在推进可转位刀具的开发和CAD/CAM一体化技术的商用化等方面走在了前面[2]。1.1.4国内外对可转位浅孔钻的研究及其CAD系统现状70年代未,国外出现了硬质合金可转位钻头,这种钻头与高速钢麻花钻相比,允许采用较高的切削速度和进给速度,可以大大缩短加工时间,故具有效率高、寿命长和经济性好等优点,因而获得了广泛的应用,出现了一种用这种高效短钻头替代麻花钻加工浅孔的趋向[14]。硬质合金可转位钻头是一种浅孔钻,是SANDVIK公司于1975年首次推出的一种加工浅孔的高效钻头,也叫浅孔钻或U钻[15]。多年来,由于大量的研究工作和生产实践,使这种刀具在技术上不断地得到了完善和发展,在工业发达国家,这种新型刀具不仅在车床、铣床和加工中心等机床上得到广泛采用,而且在组合机床和自动线上也得到了很好应用,提高了组合机床的生产效率。目前,该产品在国外已得到广泛应用。瑞典、德国、美国、日本等国都有同类产品,其中以瑞典Sandvik公司和德国KOMET公司的可转位浅孔钻较为典型[23]。在现代生产中,硬质合金可转位孔加工刀具已为人熟知。为加工L/D比值3~5、中等直径的孔,常常采用有内、外两个刀片的可转位浅孔钻,它是从高速钢麻花钻和整体硬质合金钻头基础上发展起来的。利用耐磨性高的硬质合金,并通过选择合适的刀片牌号(材质)和涂层种类制造的可转位浅孔钻,即可适用于一定的加工任务,并大大提高钻孔效率[16]。对于精密孔加工,前道工序如采用可转位钻头钻孔,不仅可减少中间工序,缩短加工时间,而且可减少加工工位和设备投资,有着特别明显的经济效益[14]。在我国,可转位钻头虽在80年代初己研制成功,但到目前为止尚未进行稳定的批量生产。在汽车工业中,象连杆、转向节和气门摇臂等一些零件的钻孔加工,国外早已采用可转位钻头。而我们至今仍是采用高速钢麻花钻这样的传统刀具,这在加工工艺上确实存在着很大的差距。可转位浅孔钻一般是由两块硬质合金刀片(较大直径浅孔钻也可有4~5块刀片)在径向不对称分布来构成,两块刀片分别切削一段金属而形成被加工孔。而正由于刀片在钻头上的非对称布置,导致了刀具在加工时要产生径向合力,从而影响机床的受力与刀具的变形,进而影响被加工孔的质量(主要是孔的形状精度),制约了该种高效刀具的进一步扩大使用。因此最大限度地减小刀具加工时的径向合力,就成为浅孔钻开发的关键技术。在以往的国内外研究中一般采用两种方法:其一是参数采用单位切削力进行近似的计算与分析,得到相应的保持径向力平衡的钻头结构[5][8];其二是采用试验的办法对较小范围内的结构参数与径向力的关系进行有限的研究[9][10]。但这两种方法都无法建立结构参数优化的数学模型,且采用试验的办法费力费时,不大可能对大范围的数据进行研究与分析。所以应该对浅孔钻进行深入系统的研究并建立正确的数学模型,从理论上优化刀具的结构和几何参数,并根据优化模型,开发智能CAD设计系统,使浅孔钻的标准和非标准设计,都能在同一程序中完成。1.2本课题的来源本课题来自四川省教育厅的重点科研项目《浅孔钻钻削机理及智能化开发系统研究》的智能化开发系统研究部分。1.3主要研究内容及论文的结构安排本论文主要研究了可转位浅孔钻智能CAD系统的设计与开发,其主要内容如下:在收集和分析当前国内外有关可转位浅孔钻及CAD系统资料的基础上,提出可转位浅孔钻智能CAD系统的基本构架。建立可转位浅孔钻几何参数计算的数学模型,并在此基础上给出刀体上刀片槽空间位置的数学模型及最优结果。重点进行可转位浅孔钻智能CAD系统的开发与研究。确定本系统的软硬件环境,建立系统的总体框架。完成可转位浅孔钻的刀片槽空间位置优化计算模块、智能推理模块、三维实体建模模块、装配图模块和二维工程图模块的设计。建立可转位浅孔钻的数据库、知识库和实例库。论文包括以下6部分:1绪论综合分析了CAD技术的特点和发展趋势,论述了论文的研究背景,提出智能CAD系统的可行性和必要性。2可转位浅孔钻几何建模与分析论述了可转位浅孔钻数学模型的建立,并给出了刀体上刀片槽空间位置的优化模型。3可转位浅孔钻智能CAD系统的设计主要论述了系统运行的软硬件环境和系统的整体设计框架。4系统实现的关键技术这章是本论文的重点,对系统涉及到的主要技术都做了较详细的阐述。重点叙述了Pro/Toolkit二次开发技术,matlab与VC的接口技术等。5系统的运行本章通过例子对智能系统的使用方法作了较详细的介绍,使读者对本系统的功能有较全面的认识。6总结及展望对全文进行总结,给出了论文的价值与不足之处,展望未来的发展趋势以及还需进一步研究的内容。2可转位浅孔钻的数学模型2.1可转位浅孔钻的几何模型参考文献[60]对可转位浅孔钻数学模型的求解做了较详细的阐述,在本论文中,给出了刀体上刀片槽五个空间位置参数的计算及其优化模型。2.1.1坐标系的建立以刀杆的端部装有两个等边不等角六边形硬质合金可转位刀片的浅孔钻为例,如图2.1(a)建立钻头坐标系o-xyz,z轴与钻头轴线重合;如图2.1(b)建立刀片坐标系o’-x’y’z’。现将刀片连同其坐标系分别安装在钻头上,首先将刀片系的原点o’与o点重合,并使y’轴与y轴重合,然后使坐标系o’-x’y’z’绕y轴反转ψ角,使x’轴与x轴重合,z’轴与z轴重合,形成坐标系o-xyz,接着使坐标系o’-x’y’z’绕轴正转角,使y’轴与y轴重合,z’轴与z轴重合,至此,刀片已安装在坐标系o-xyz所在的位置上,此位置上的刀片为内刀片,并设为刀片1。将刀片系的原点o’与o点重合,并使z’与z轴重合,然后使坐标系o’-x’y’z’绕z轴正转(180º-ß)角,使x’轴与x轴重合,y’轴与y轴重合,形成坐标系o-xyz;接着使坐标系o’-x’y’z’绕y轴正转角,使x’轴与x轴重合,z’轴与z轴重合,形成坐标系o-xyz;最后再将坐标系o’-x’y’z’绕x轴正Fig2.1(a)Drillcoordinatesystem转角,使y’轴与y轴重合,图2.1(a)钻头坐标系z’轴与z轴重合,这样便将刀片安装在坐标系o-xyz所在的位置上,此位置上的刀片为外刀片,并设为刀片2。Fig2.1(b)Coordinatesystemforindexabletrigoninsert图2.1(b)刀片坐标系Fig2.1(c)Settingcoordinatesystemforinnerandouterinserts图2.1(c)内外刀片安装坐标系图2.1(c)表示坐标系o-xyz以及坐标系o-xyz与坐标系o-xyz之间的关系。坐标系o-xyz与坐标系o-xyz中矢径之间的转换关系可表示为:(1)式中表示坐标系o-xyz中任意一点的矢径,表示坐标系o-xyz中同一点的矢径。,为坐标变换矩阵,可表示为:式中坐标系o-xyz与坐标系o-xyz中矢径之间的转换关系可表示为:(2)式中表示坐标系o-xyz中任意一点的矢径,表示坐标系o-xyz中同一点的矢径。,,为坐标变换矩阵,可表示为:式中2.1.2刀片坐标系o’-x’y’z’中各矢量方程刀片左切削刃幺矢(3)式中为刀片的余偏角刀片右切削刃幺矢(4)刀片左刃法前角幺矢(5)式中为刀片的法前角刀片右刃法前角幺矢(6)刀片左刃法后角幺矢(7)式中为刀片的法后角刀片右刃法后角幺矢(8)2.1.3刀片上的各矢量在钻头坐标系中的表示由于在计算刀具的几何角度时,刀片上的矢量只与坐标系的旋转变换有关,而与坐标系的平移变换无关,因此,刀片上的各矢量在钻头坐标系中的表示如下所示。刀片安装在坐标系o-xyz中后各矢量方程:刀片1左切削刃幺矢(9)刀片1右切削刃幺矢(10)刀片1左刃法前角幺矢(11)刀片1右刃法前角幺矢(12)刀片1左刃法后角幺矢(13)刀片1右刃法后角幺矢(14)刀片安装在坐标系o-xyz中后各矢量方程:刀片2左切削刃幺矢(15)刀片2右切削刃幺矢(16)刀片2左刃法前角幺矢(17)刀片2右刃法前角幺矢(18)刀片2左刃法后角幺矢(19)刀片2右刃法后角幺矢(20)2.1.4内外刀片切削刃上任意一点在钻头坐标系中空间位置参数计算设刀片1切削刃上任意一点在刀片坐标系o’-x’y’z’中的矢径为:同一点在钻头坐标系o-xyz中的矢径为:则由式(1)有:(21)如图2.2所示,该点在钻头坐标系o-xyz中的合成速度幺矢可表示为:Fig2.2Resultantcuttingspeed图2.2合成切削速度式中主运动速度幺矢进给速度幺矢合成速度幺矢n转速R刀片1切削刃上所选点处的半径设刀片2切削刃上任意一点在刀片坐标系o’-x’y’z’中的矢径为:同一点在钻头坐标系o-xyz中的矢径为:则由式(2)有:(22)该点在钻头坐标系o-xyz中的合成速度幺矢可表示为:式中主运动速度幺矢进给速度幺矢合成速度幺矢n转速R刀片2切削刃上所选点处的半径2.1.5内外刀片切削刃的几何角度的计算由参考文献[48]知:(23)(24)(25)(26)式中合成速度幺矢由上式,分别计算出刀片1与刀片2左右切削刃上任意一点在加工状态下的刃倾角、法前角、法后角和主偏角如下:对于刀片1左切削刃,由式(9)、式(11)、式(13)及式(23)~式(26)分别求出:(27)(28)(29)(30)对于刀片1右切削刃,由式(10)、式(12)、式(14)及式(23)~式(26)分别求出:(31)(32)(33)(34)对于刀片2左切削刃,由式(15)、式(17)、式(19)及式(23)~式(26)分别求出:(35)(36)(37)(38)对于刀片2右切削刃,由式(16)、式(18)、式(20)及式(23)~式(26)分别求出:(39)(40)(41)(42)2.1.6内外刀片搭接交点的计算为了计算刀片1(内刀片)右刃与刀片2(外刀片)左刃的实际切削长度,必须求得内外刀片搭接时的交点在各刀片坐标系中的坐标。Fig2.3Diagramofdrillingforinnerandouterinsertsofdrillswithindexableinserts图2.3浅孔钻内外刀片钻削示意图Fig2.4Itersectionpointsbetweentherightcuttingedgeofinsert1andtheleftcuttingedgeofinsert2图2.4刀片1右刃与刀片2左刃搭接交点示意图1.不考虑进给量时,内外刀片的搭接交点在钻头坐标系中,两刀片切削刃搭接时的交点其半径必然相等,Z坐标也必然相等。由式(21)与式(22)可建立如下联立方程式:(43)
将以上四个方程整理并化简后,可得到如下一元二次方程:(44)式中:令得出:(45)解此一元二次方程,得到刀片1右刃与刀片2左刃搭接交点在刀片坐标系中的坐标。将代入(21)式可以求出角,将代入(22)式可以求出角。当外刀片逆时针旋转到内刀片的位置并发生搭接时,转过的角度为(π--),内刀片逆时针旋转到外刀片的位置并发生搭接时,转过的角度为(π++)。2.考虑进给量时,外刀片逆时针转过(π--)度后与内刀片发生搭接的搭接交点的计算(46)将以上四个方程整理并化简后,可得到如下一元二次方程:(47)令得出:(48)3.考虑进给量时,内刀片逆时针转过(π++)度后与外刀片发生搭接的搭接交点的计算(49)将以上四个方程整理并化简后,可得到如下一元二次方程:(50)令得出(51)2.2可转位浅孔钻的力学模型2.2.1切削层断面尺寸的分析因为任何刀具都可以视为一系列“单元切削刃”的组合,而所有的“单元切削刃”之间都存在某种“局部相似性”,现代形状复杂刀具的力学建模,正是基于这种“局部相似性”。因此,为了建立浅孔钻的力学模型,需要将切削刃分成若干等分的细小单元[49]。切削层断面尺寸即被切削层材料在基面中的尺寸,切削厚度和切削宽度如图2.5所示:Fig2.5Dimensionsoftheuncutchip图2.5切削层断面尺寸的分析图2.5中,切削刃幺矢为,它在工作基面上的投影方向的单位向量即为;进给方向的幺矢为,它在工作基面上的投影方向的单位向量为;矢量与矢量之间所夹的角为工作主偏角。切削厚度:f-进给量z-刀齿数-主运动速度与合成速度之间的夹角切削宽度:-单元切削刃长度2.2.2内外刀片上的钻削力及扭矩的计算钻削力和扭矩的计算采用经典的斜角切削理论和经验公式相结合的方法来建立钻削力和扭矩的方程式[50][51]。首先将切削刃分成若干等分的细小单元,钻削时每一个单元将产生单元切削力和单元扭矩。由于单元很小,因此在该单元内可近似认为其几何参数和切削速度不变,取该单元起始点的几何参数和切削速度表示,并用以确定该单元切削力的作用点来计算单元扭矩。然后再将单元切削力和扭矩分解到钻头坐标系的x,y,z各坐标轴上,最后将各坐标轴上的单元切削力和单元扭矩叠加起来就得到整个钻头所受的主切削力(切向力)、轴向力(进给力)、径向力(背向力)和扭矩。按单元经典斜角切削理论(Elementalclassicalobliquecuttingapproach)[50][59],在每一个单元上产生的切削力的作用方向如图2.4所示,图中:——单元主切削力,刀片左右切削刃均与合成切削速度共线,且方向相反。——垂直于合成切削速度和切削刃方向的单元切削力,刀片左右切削刃均与(切削平面法幺矢)共线,且方向相同。——垂直于和的单元切削力,内刀片左右切削刃均与(主剖面法幺矢)共线,且方向相同,外刀片左右切削刃均与-共线,且方向相同。文献[50]给出以上各单元切削变形力的表达式如下:式中:Fig2.4Unitcuttingforceandgeometry图2.4单元切削力与几何参数 ——剪切面的剪应力(shearstressinshearplane) ——前刀面上的流屑角,当<45°以及切削<0.3mm时,≈。——法向剪切角(normalshearangle) ——前刀面上的摩擦角(frictionangleonrakeface) ——法向摩擦角(normalfrictionangle)另外,单元刃口切削力可写成[50]:式中——法剖面内平行于合成切削速度方向单位切削宽度的刃口力——法剖面内垂直于合成切削速度方向单位切削宽度的刃口力以上公式所需的基本切削参数、、、、可由试验公式给出。单元切削力为单元变形力与单元刃口切削力之合,写成:本论文以刀杆的端部装有两个等边不等角六边形硬质合金可转位刀片的浅孔钻为例进行受力分析,刀片形状如图2.1(b)。将实际参与切削的切削刃分成七个部分,如图2.4所示,包括:刀片2右刃、刀片2左刃bc段及cf段、刀片1右刃ek段及kn段、刀片1左刃no段及过心部分oq段。按定义在钻头坐标系o-xyz中,将单元切削力、、三个力写成矢量表达式,对于刀片2右切削刃有,,。求得小单元上的力沿着x,y,z三个方向上的合力及扭矩:刀片2右切削刃沿着x,y,z三个方向上的合力及扭矩:对于刀片2左切削刃有:(1)段如图2.4所示,三角形abc区域是由双刃切削形成的,因此进给量为。不考虑进给量时的搭接点为a点,它在刀片坐标系中的坐标为及;考虑进给量时的搭接点为b点,它在刀片坐标系中的坐标为及。为了简化计算过程,将段看作一个小单元,求出三角形abc在基面内的面积就等于求出了段的切削面积。利用经验公式可以求出段上的、、、、、、、、,从而求出段上的力沿着x,y,z三个方向上的合力及扭矩:(2)段如图2.4所示,平行四边形acfg区域是由单刃切削形成的,因此进给量为。将段分割成许多小单元,任取一个小单元进行分析,利用经验公式可以求出这个小单元上的、、。求出小单元上的力沿着x,y,z三个方向上的合力及扭矩:求出段上的力沿着x,y,z三个方向上的合力及扭矩:对于刀片1右切削刃有:(1)段如图2.4所示,三角形dek区域是由双刃切削形成的,因此进给量为。不考虑进给量时的搭接点为d点,它在刀片坐标系中的坐标为及;考虑进给量时的搭接点为e点,它在刀片坐标系中的坐标为及。为了简化计算过程,将段看作一个小单元,求出三角形dek在基面内的面积就等于求出了段的切削面积。利用经验公式可以求出段上的、、,并将、、三个力写成向量的形式,就可以求出段上的力沿着x,y,z三个方向上的合力及扭矩:(2)段如图2.4所示,平行四边形dknm区域是由单刃切削形成的,因此进给量为。将段分割成许多小单元,任取一个小单元进行分析,利用上面的经验公式可以求出这个小单元上的、、,写出、、的向量形式,可以求出小单元上的力沿着x,y,z三个方向上的合力及扭矩:然后求出段上的力沿着x,y,z三个方向上的合力及扭矩:对于刀片1左切削刃的非过心段,如图4所示,平行四边形mnoh区域是由单刃切削形成的,因此进给量为。将段分割成许多小单元,任取一个小单元进行分析,利用上面的经验公式可以求出这个小单元上的、、、、、、、、。进而求出小单元上的力沿着x,y,z三个方向上的合力及扭矩:求出段上的力沿着x,y,z三个方向上的合力及扭矩:2.3过心部分的几何参数的计算可转位浅孔钻内刀片,由于靠近刀具旋转中心,线速度较低(中心处为零),刀片主要受挤压作用。因此,为了避免让强度较弱的刀尖参与切削,增强实际参加切削的切削刃强度,以减小崩刃,使内刀片超过钻头中心一定量,称之为过心部分。设过中心部分切削刃上任意一点在刀片坐标系o’-x’y’z’中的矢径为:同一点在钻头坐标系o-xyz中的矢径为:则由式(1)有:(52)该点在钻头坐标系o-xyz中的合成切削速度矢量可表示为: 式中主运动速度幺矢进给速度幺矢合成速度幺矢n转速R过中心部分切削刃上所选点处的半径如图2.5所示,过中心部分在钻头坐标系中的前、后刀面相反,因此过心部分在刀片坐标系o’-x’y’z’中各矢量方程表示如下:切削刃幺矢:法前角幺矢:将过中心部分安装在坐标系o-xyz中后各矢量方程表示如下:切削刃幺矢:切削刃幺矢:法前角幺矢:切削刃幺矢:Fig2.5Thegeometryofcuttingedgeexceedingthecenterlineofthedrill图2.5过心部分的几何参数切削刃幺矢:法前角幺矢:将过中心部分安装在坐标系o-xyz中后各矢量方程表示如下:切削刃幺矢:法前角幺矢:过中心部分切削刃上任意一点在加工状态下的刃倾角、法前角和主偏角计算如下:(53)(54)(55)且2.4优化模型与优化结果用最优化方法解决最优化问题的技术称为最优化技术,它包含两个方面的内容:=1\*GB3①建立数学模型,即用数学语言来描述最优化问题。模型中的数学关系式反映了最优化问题所要达到的目标和各种约束条件。=2\*GB3②数学求解。数学模型建好以后,选择合理的最优化方法进行求解。2.4.1浅孔钻的优化模型由于浅孔钻内外刀片的非对称布置,导致刀具在加工时要产生径向合力,从而影响了被加工孔的质量,因此最大限度地减小浅孔钻加工时的径向合力就成为研究的重点。我们知道,对于给定的应用条件(即工件材料的机械物理性能、切削用量及切削状态等),某种刀片形状和材质必然存在一种最优的空间刀片布置方案,以形成合理的空间几何参数,使得径向合力达到最小。于是,我们将最优化原理和计算机技术应用于浅孔钻的设计来寻找这种最优的方案,采用多目标非线性约束优化方法。最优化模型可描述为:目标函数:minand∈D式中,,,,边界约束条件:作者在建立上述优化模型时,综合考虑了可转位浅孔钻的几何结构及钻削性能,将刀片1与刀片2的五个安装位置参数的约束边界限制在一个较小的范围内。优化结果表明,在该范围内可以找到使径向合力及扭矩为最小的5个最优参数。2.4.2用MATLAB的Fgoalttain求解多目标优化问题利用Fgoalttain函数求解多目标达到问题。假设多目标达到问题的数学模型为:=1,…,m(非线性不等式约束)(非线性等式约束)(线性不等式约束)(线性等式约束)其中为可正可负的标量变量,为第个目标函数,和分别为第个目标函数的加权系数和目标。加权系数控制未达到目标或超过目标的相对程度,在公式中为一弱化量。fgoalttain函数的调用格式为:[x,fval]=fgoalattain(fun,x0,goal,weight,A,b,,,lb,ub)其中,goal变量为目标希望达到的向量值。向量的长度与fun函数返回的目标数相等。weight变量为权重向量,可以控制低于或超过fgoalattain函数指定目标的相对程度。当加权函数weight为正时,fgoalattain函数试图使对象小于目标值;当权重weight为负时,目标函数大于目标值。优化程序计算流程图如图2.6所示:开始开始输入输入,的已知值和的初值调用MATLAB优化工具箱中的f调用MATLAB优化工具箱中的fgoalttain函数计算and及对应的值输出输出,,结束结束Fig2.6Flowchartforoptimizationcomputerprogram图2.6优化程序的计算流程图2.4.3优化计算结果及优化后的钻头几何参数由于两块硬质合金刀片在径向非对称分布,导致了浅孔钻在加工时要产生径向合力,从而影响机床的受力与刀具的变形,进而影响被加工孔的质量(主要是孔的形状精度)。影响径向合力的大小和作用方向的主要因素有钻头的几何参数、可转位刀片在钻头上的装夹位置和钻头的横截面。因此,本论文从理论上优化刀具结构,寻找能使径向合力及扭矩达到最小,并且优化后的几何参数有利于改善刀具切削性能的最优的设计方案。下面以Φ25的浅孔钻为例,对其进行优化,采用多目标达到法,将已知数据与设计参数的初值代入优化模型中,优化结果列于表2.1中。表2.1优化结果Table2.1OptimalResults123参数初值-5-4-1-12优化结果-7.49-5.56-3.01-8.7113.802.4.4钻头直径与优化参数间的关系硬质合金可转位浅孔钻的钻削范围是Φ17.5~56mm的浅孔,前边仅对直径为25mm的钻头进行了参数优化。将数学模型及优化模型应用于不同直径的可转位浅孔钻,研究钻头直径与优化参数间的关系。表2.2给出了不同直径的浅孔钻经过优化之后的,,1,2,3值。表2.2优化参数/钻头直径Table2.2OptimumParameters/DrillDiameter安装角度钻头直径12320-7.23-6.58-0.09-9.9714.4822-6.99-5.010.88-9.5612.2425-7.49-5.56-3.01-8.7113.8028-5.99-4.074.81-9.674.0930-8.38-7.460.28-9.7411.1034-4.24-3.268.23-4.150.3842-2.77-1.835.45-6.93-8.1248-3.80-1.687.12-4.31-6.6852-3.35-1.997.87-4.37-8.8256-1.81-1.8010.11-3.97-8.643可转位浅孔钻智能CAD系统的设计3.1系统设计的硬件环境CAD系统要求有强大的数据处理能力,选择好的CPU对于CAD系统是至关重要的,一般要求PentiumIII以上。CAD系统的图形显示速度和计算能力也要求有性能良好的显示适配器(VGA以上)和较大内存(64M以上)[11]3.2系统所选用软件简介软件的更新换代是最快的,开发本系统时,选用的操作系统是WindowsXP系统,在此操作系统下,我们选用了VisualStudioC++6.0,Pro/EWildfire(英文版),Matlab6.0,SQLServer2000等作为开发本系统的软件。3.2.1图形支撑软件Pro/EWildfirePro/Engineer软件是由美国参数化技术公司(ParametricTechologyCorporation,PTC)开发的新一代CAD/CAM系统,该软件是一种采用了特征建模技术,基于统一数据库的参数化的通用CAD系统。自从面世以来,以全参数化尺寸驱动、基于特征、单一全关联的数据库等优点深受用户好评,并成为国际参数化的行业标准。目前Pro/Engineer软件在我国的机械、电子、家电、模具等行业取得了广泛的应用,在国内的应用数量大大超过了同类型的其他国外产品。虽然Pro/Engineer软件功能非常强大,通用性非常好,然而在具体的使用过程中不可能满足各种要求,特别是国外的CAD/CAE/CAM系统在设计标准、规范及标准件库等方面和国内存在较大差异,因此,以Pro/Engineer软件为平台进行二次开发,使之适合国内外企业设计的要求,更大限度的发挥Pro/Engineer的作用,已成为该软件应用过程中的一项重要工作。可喜的是Pro/Engineer具有开放的体系结构和优秀的二次开发工具,允许用户和开发者对其进行扩充和修改。Pro/Engineer常用的二次开发工具有:族表(FamilyTable)、用户定义特征(UDF)、Pro/Program、J-link、Pro/Toolkit等。Pro/Toolkit是Pro/E自带的功能最强大的二次开发工具,它是基于C语言的,其主要目的是让用户或第三方通过C程序代码扩充Pro/Engineer系统的功能,开发基于Pro/Engineer系统的应用程序模块,从而满足用户的特殊要求。不仅如此,还可以利用Pro/Toolkit提供的UI对话框、菜单以及VisualC++6.0的可视化界面技术,设计出方便实用的人机交互界面,从而大大提高系统的使用效率。Pro/Toolkit工具包提供了开发Pro/Engineer所需的函数库文件和头文件,使用户编写的应用程序能够安全地控制和访问PE,并可以实现应用程序模块与Pro/Engineer系统的无缝集成。Pro/Toolkit支持在Windows2000/NT/XP操作系统中使用C和C++语言设计程序,采用MicrosoftVisualC++6.0作为编译器和连接器,并可以在MicrosoftvisualC++6.0的集成环境下完成程序的设计、调试和编译[3]。3.2.2应用程序开发软件MicrosoftVisualC++6.0VisualC++6.0是在C语言的基础上发展起来的一种面向对象的编程语言。由于C++提供了把数据及数据之上的操作封装在一起的类、对象和方法的机制,并通过继承、重载和多态性等特征实现了软件的重用和程序的自动生成,使软件的构造、开发和维护变得更为有效,并能更好地反映客观事物的本质。VisualC++的MFC为面向对象的Windows编程提供了强有力的支持,它与win32紧密相连,是当今Windows系统平台上最强大的应用程序开发系统,利用VisualC++6.0可以完成各种各样的程序开发,从界面设计到数据库访问,能满足不同用户CAD系统要求。在VC++6.0中,主要有三种常用的工程:Win32ConsoleApplication;Win32Application;MFCAppWizard。Win32ConsoleApplication是用于创建DOS控制台的C/C++程序,简称DOS程序。Win32Application用于创建的WindowsC程序或MFCWindows程序。MFCAppWizard用向导创建MFCWindows程序,并生成应用程序框架(即自动生成底层代码),编程时在原代码基础上增加新的应用代码即可,这样,即使对C/C++不是很熟悉,根据向导操作也可以很快开发出单文档或多文档图形操作界面,实现一些简单的WINDOWS功能。但是,应用C++去编制数值处理模块,特别时涉及到许多矩阵运算和优化算法的情况下,它远没有MATLAB方便和简洁。3.2.3数学计算软件MATLAB6.0MATLAB是美国MathWorks公司推出的用于数值计算和图形处理的科学计算环境。MATLAB是英文MATtrixLABoratory(矩阵实验室)的缩写。它包括高效的数值运算、矩阵运算、信号处理、公式推倒和图形生成等。在MATLAB环境下,用户可以集成地进行程序设计、数值计算、图形绘制、输入输出、文件管理等各项操作。同时MATLAB还有很强的功能扩展能力,与它的主系统一起可以配备各种各样的工具箱,以完成一些特定的任务。用户也可以根据自己的工作任务,开发自己的工具箱。MATLAB进行数值计算的基本处理单位是复数数组(或称阵列)。它拥有一流水平的数值计算函数库,其所有数值计算算法都是国际公认的、先进的可靠算法,而执行算法的指令形式非常简单、易读易用。应用MATLAB进行函数图形绘制也非常方便,一般来说,不管二元函数多么复杂,它的三维图形,仅需要10条左右指令,就能得到富于感染力的表现。而且MATLAB有专门的优化工具包,处理优化算法也只要简单的几条语句就可以了。浅孔钻的数学建模过程,最麻烦的是牵涉到大量的矩阵运算,尤其是矩阵相乘和求逆运算,用一般的高级语言编写建模过程和处理优化结果,就必须花大量的时间去编制相应的子程序模块处理矩阵运算和优化算法,如果还需要绘制运算曲线图,那么开发工作量就更是惊人。MATLAB在数值分析和处理上是第一流的,尤其擅长矩阵运算。如方阵A的求逆,只要一个简单的命令inv(A)就可以了,矩阵A和B的相乘也只要输入C=A*B就可以实现。在MATLAB中,一个一定格式存储的数据文件,用load命令就可以直接赋值给一个数值变量,无需象其他高级语言中要求的进行数组循环赋值,而其强大的优化工具箱更为浅孔钻的优化算法节约了大量的开发时间,从而大大提高了编程效率。但是,MATLAB编程也有它的不足,编制的M文件需要一定的运行环境,而且程序是解释性运行,这大大降低了其计算速度,而运行的高效率则正是C/C++程序的优势。另外MATLAB保存的M文件是源程序代码,不利于算法和数据的保密。所以采用结合其他高级语言(如VC++6.0)实行联合编程的方法,就可以充分发挥各自的优点。我们只是把一些计算过程留给MATLAB而应用VC++6.0进行函数调用和开发可视化图形操作界面,提高软件的开发效率,大大缩短软件的开发周期[7]。3.2.4数据库支撑软件SQLServer2000SQLServer是一种高性能的客户/服务器型的关系数据库管理系统,具有极强的操作性。它所包含的管理和开发工具使得数据库管理者和用户可以轻松地安装、配置和使用数据库,VisualC++6.0的ODBC类就封装了SQLServer支持的ODBCAPI,因此,在VisualC++6.0中通过调用相应的ODBC类函数就可以实现与SQLServer的连接和交互。3.3系统的总体设计框架本课题重点进行可转位浅孔钻智能CAD系统的开发与研究。系统设计了可转位浅孔钻的刀片槽空间位置计算模块、智能推理模块、三维实体建模模块、装配图模块和二维工程图模块,建立可转位浅孔钻的数据库、知识库和实例库,本系统的总体设计框图如图3.1所示。装配实例库装配实例库知识库数据库零件实例库数据库管理系统参数选择推理实例推理设计专家系统CAD模块设计三维实体工程图装配实体用户界面(Pro/E环境)设计环境 Fig3.1FrameworkofIntelligentCADSystem图3.1智能CAD系统总体框图对于以上的框图,我们可以细分出功能模块,具体如图3.2所示,现对系统的各功能模块做一简要的介绍:用户界面:完成各项任务之间的调度和信息交流。其主要功能有:系统的登陆;初始设计信息的输入和管理;人机交互与控制块配合,使结构面向用户;工作任务与不同功能模块的选择。设计专家系统:根据用户要求选择刀具的基本参数,如直径、材料、进给量、切削速度等,这些数据将存入专家系统作为设计的已知条件,当一个新设计完成后,又可以存入专家系统,作为经验设计值供以后的设计参考和使用,这样专家系统就会得到不断的扩充和完善,从而使设计越来越轻松。浅孔钻的CAD智能设计和数据管理系统数据管理模块浅孔钻的CAD智能设计和数据管理系统数据管理模块CAD设计模块专家系统模块设计检索和知识库模块零件库、装配库管理模块用户管理模块二维工程图自动生成模块零件参数化设计模块产品自动装配图参数选择推理模块实例推理模块刀片参数化设计刀体参数化设计Fig3.2ModulesofIntelligentCADSystem图3.2智能CAD系统模块构成图CAD模块设计:完成零件的三维实体造型和二维工程图的生成:刀片的三维参数化设计,刀柄的三维参数化设计,刀片的二维工程图自动输出,刀柄的二维工程图自动输出,装配图的自动生成、装配工程图的自动生成。在这里,根据专家系统中提供的参数值或者用户自己输入的初始值,运用CBR技术进行刀片和刀柄的三维设计,然后再自动生成相应的装配图和工程图等。数据库管理系统:浅孔钻数据库管理系统包括知识库、实例库和数据库。知识库中存放用于专家推理的各种已知参数、经验值等,实例库中存放刀片实例、刀柄实例、装配实例以及对应的工程图实例,数据库中存放各种刀具材料的各种性能参数等。4系统实现的关键技术4.1可转位浅孔钻智能CAD系统数据库的建立4.1.1数据库互联技术在VisualC++中通过调用相应的ODBC类函数就可以实现与SQLServer2000的连接和交互。建立ODBC连接(以user_pswd为例):CStringCUserRecordSet::GetDefaultConnect(){ return_T("ODBC;DSN=hollowdrill");}获取数据库中的表单:CStringCUserRecordSet::GetDefaultSQL(){ return_T("[dbo].[user_pswd]");}4.1.2知识库的建立(1)钻削参数表(dforce)该表包括工件材料牌号(dwmnumber)、刀片材料牌号(dtmnumber)、单位切削力(ducutting)、进给量(donset)、修正系数(modikr),切削速度(cutspeed)等字段,如图4.1所示。Fig4.1DrillingParametersTable图4.1钻削参数表设计参数表(design_value)该表包括刀片材料(tmaterial)、直径(diameter)、刀片边长(insert_lenght)、切削速度(cutspeed)、转速(rotate)、进给量(force)、过心量(guoxin),如图4.2所示。Fig4.2DesignParametersTable图4.2设计参数表4.1.3实例库的建立(1)刀柄实例表(bodyfile)这里建立了刀柄实例库表,包括刀柄ID(body_id)、文件名字(body_file),工程图文件(body_draw)等字段。存放了已知的和已设计的刀柄实例,供设计时候参考和修改。刀柄ID不允许空,如图4.3所示。Fig4.3ToolBodyCaseTable图4.3刀柄实例表(2)刀片实例表(insert_file)刀片实例表中存放有标准刀片和自定义设计的刀片,包括刀片ID(insert_id)、刀片牌号(tmaterial)、刀片边长(tlength)、文件名字(filename),工程图文件(insert_draw)。刀片ID不允许空,如图4.4所示。Fig4.4InsertCaseTable图4.4刀片实例表装配实例表(asmtable)装配实例表中存放了用户设计的装配实体图及其对应的工程图。包括刀柄ID(asm_id),装配文件名(asm_file),工程图名(asm_draw)。刀柄ID不允许空,如图4.5所示。Fig4.5AssemblyCaseTable图4.5装配实例表4.1.4数据库的建立(1)用户管理表(user)这个表包括用户ID(id)、用户名字(username)、用户密码(password),如图4.6所示,所有字段均不能空。Fig4.6UserManagementTable图4.6用户管理表(2)刀具材料表(tmaterial)该表包括刀片材料牌号(tmnumber)、刀片材料名称(tmname)、密度(ttense)、硬度(thard)、抗弯强度(txbb)、抗压强度(txs)、冲击韧性(ttenacity)、弹性模量(te)、应用范围(trange),如图4.7所示:Fig4.7ToolMaterialTable图4.7刀具材料表(3)工件材料表(wmaterial)该表包括工件材料牌号(wmnumber)、工件材料名称(wmname)、密度(wxb)、弹性模量(we)、硬度(whard)、热处理(wheat)等字段,如图4.8所示。Fig4.8WorkpieceMaterialTable图4.8工件材料表4.2专家系统的建立专家系统是在某一特定领域内,具有大量专门知识与经验的计算机程序。它是基于知识的智能系统并利用专家的丰富知识进行推理和判断来求解问题,使计算机的工作过程尽可能地来模拟专家解决实际问题的工作过程。专家的能力往往不只限于公开发表的知识,更重要的是专家的工程实践经验知识。专家系统具有许多优良特性,如:启发性、透明性、灵活性、高效性、准确性等。对于具体的浅孔钻专家系统,首先对每一类零部件进行特征描述,包括几何特征和物理特征,如知识库中存放的刀片的直径、材料、切削速度、单位切削力、进给量等,实例库中存放的刀片和刀柄的实例模型等,在设计的过程中,提取这些数据参数,调用封装的计算方法(本系统将浅孔钻刀片槽空间位置的建模和优化算法封装在一个DLL动态链接库里面),完成零件的设计,并将每次设计的参数和结果保存到数据库中,供下次设计参考和调用。专家系统的推理模型如图4.9所示。推推理机制实例推理规则推理实例库知识库新设计解Fig4.9ReasoningModelofExpertSystem图4.9专家系统的推理模型4.3动态链接库每种版本的Windows都依赖于存储在动态链接库(DynamicLinkLibrary,DLL)中的函数和数据。实际上,当查看Windows系统时,看到的几乎所有内容都由DLL以各种形式所表示的。DLL是建立在客户程序服务器通讯的概念上的。函数和数据被存储在一个DLL(服务器)上并由一个或多个客户程序导出而使用。这些客户程序可以是应用程序或者是其他DLL。DLL类似于普通的运行时(run-time)库或静态库。在静态库情况下,函数和数据被编译进一个二进制文件(通常扩展名为.LIB)。然后链接器从库中复制这些函数和数据并把它们和应用程序的其他模块组合起来创建最终的可执行文件(.EXE文件)。链接器也负责称为“修正”的工作。修正时可执行文件中来自其他模块的调用被映射到库中的函数的过程。当应用程序链接到一个静态库时,这个过程称为“静态链接”。因为应用程序所需的全部内容都要从库中复制到可执行文件中,库本身并不与可执行文件一起发行。在动态库的情况下,一个库的函数和数据并不复制到可执行文件中,而是创建了两个文件:一个引入库和一个DLL。引入库包含被DLL导出的函数的名称和位置,DLL包含实际的函数和数据。然后,要使用给定DLL的导出函数的应用程序则链接到这个DLL。创建一个DLL的过程非常类似于创建可执行文件的过程。库的函数被编译进一个.OBJ文件(模块),通过把不同的模块链接在一起,链接器创建最终的二进制输出文件。然而,在DLL的情况下,要使用一个特殊的链接开关(/DLL),以告诉链接器正在创建一个DLL,而不是EXE。这样加载程序的时候就能把它作为一个DLL来识别[47]。加载DLL有两种方法:隐式和显式。DLL客户程序或者通过链接DLL的引入库,或者通过在客户程序的“.def”文件中的IMPORT段列出DLL的导出函数来隐式地加载一个DLL。DLL的隐式加载是最常用的DLL加载方式,原因很简单,隐式加载不需要客户程序方做额外的工作。编写应用程序的人只需要简单地包括所需的(一个或多个)头文件,进行所需的函数调用并链接DLL即可[47]。本论文中对刀片槽的优化计算程序(用MATLAB的MCC编译器编译成的force3lib.dll)就是采用隐式调用的。显示链接需要专门告诉客户程序要加载哪个文件以及何时加载它,仅当客户程序加载DLL时该DLL才会被加载,而客户程序在运行时可以有机会选择加载不同的库,作者在调试本系统的过程中,Pro/E对本系统的调用,使用的就是显示链接。4.4CBR技术基于实例推理技术(Case-basedReasoning,CBR)是人工智能领域近年来广泛应用的一项新技术。CBR技术是一种相似推理方法,其核心是通过实例库方式运用过去已有的经验来解决新问题。在产品设计中,设计经验往往起着关键作用,设计者可利用以往的设计经验,通过对已有设计实例进行组合、修改而设计出新产品,因此CBR技术很适合用于解决设计问题。由于大量机械产品的设计是对已有产品进行变型设计,因此现有产品模型就成了设计的出发点,直接利用现有产品就等于利用了以往的设计经验和知识。因此,将CBR技术应用于机械产品CAD系统具有广阔发展前景,其设计原理如图4.10所示:用户设计要求用户设计要求基于实例推理实例库相似实例实例修改新实例实例评价Fig4.10CBRDesignPrinciple图4.10CBR设计原理采用基于实例推理(CBR)的方法进行浅孔钻的设计,可充分利用已有的设计经验,通过对浅孔钻设计实例库中最佳实例的修改和优化,设计出新的浅孔钻,从而大大缩短浅孔钻的设计周期,显著提高设计效率。在本课题中,基本的做法是用交互方式创建基于特征和参数的浅孔钻刀柄和刀片的实例模型,开始设计时,会先把实例特征和设计要求进行相似匹配,从实例库中提取最相似实例,在对此实例进行修改,从而得到新的符合用户要求的实例。由于浅孔钻具有结构相似性的特点,即对于不同种类的浅孔钻,其主要结构都是相似的,区别主要体现在特征上,而不是参数上。比如,对于刀片的自定义设计来说,等边不等角六边形刀片与三角形刀片有很大的差别,而对于六边形刀片来说,边长的大小差别很小,可以通过参数化实现不同参数的刀片设计,对于刀柄的设计,同样是圆柱柄的刀柄,其结构都是相似的,只要设计一部分的参数,通过修改参数,就可以完成刀柄的设计。4.5基于Pro/TOOLKIT的二次开发技术4.5.1Pro/Toolkit简介(1)Pro/Toolkit的安装Pro/Toolkit工具包是随Pro/Engineer安装盘一起提供的,安装时在“元件”列表框中选中“APIToolkits”复选框,并在“子元件”列表框中选中“Pro/Toolkit”复选框,它将会在Pro/E系统的默认目录下自动创建两个下级目录:protoolkit和prodevelop。Protoolkit目录中共有四个子目录:\i486_nt、\includes、\protk_appls和\protkdoc。头文件位于protoolkit\includes目录,库文件位于protoolkit\i486_nt\obj目录,这两种类型的文件是用VC开发Pro/Engineer应用程序必不可少的支持文件。(2)Pro/Toolkit开发环境与Pro/Engineer版本的关系在不同Pro/Engineer版本提供的Pro/Toolkit开发环境中,其函数库以及头文件的定义会有些变化,通常在编译时使用的头文件和在连接时使用的库文件最好应与Pro/Toolkit应用程序运行的Pro/Engineer环境的版本相一致。与AutoCAD的ObjectARX开发环境不同的是,使用低版本的Pro/Toolkit的头文件和函数库生成的Pro/Toolkit应用程序可以在高版本的Pro/Engineer环境中运行,反之则不行。本论文是在Pro/EngineerWildfire版本中开发的,所以它只能在Pro/EngineerWildfire或更高的版本中运行。(3)Pro/Toolkit语法Pro/Toolkit采用面向对象的程序设计方法(Object-OrientedProgramming)。在Pro/Engineer和应用程序之间主要是通过特定的数据结构来传递信息,对应用程序来说,这种数据结构并不是直接访问的,而只能通过Pro/Toolkit提供的函数来访问。在设计Pro/Toolkit程序时,要涉及到大量的由Pro/Toolkit函数库提供的C函数,正确理解和使用这些函数是非常重要的。对象(Object)和动作(Action)是Pro/Toolkit中最基本的概念。Pro/Toolkit的对象实质上是一种类型为结构体的数据,结构体中的成员描述了该对象的属性。Pro/Toolkit定义的对象分成两类:第一类对象本身是Pro/Engineer数据库中的一个,如ProFeature和ProSurface;另一类对象是抽象或临时对象,如调用有关选择操作时用来保存选择结果的数据对象。对特定的Pro/Toolkit对象执行的某种操作称为动作,动作的执行是通过调用Pro/Toolkit函数库提供的C函数来实现的。Pro/Toolkit函数库提供的库函数均有相应的ANSI函数原型,并在相应的头文件中定义,在调用函数之前必须将头文件包含在C或C++程序中。大多数Pro/Toolkit函数的返回值类型为ProError,用来表示调用函数执行状态,其中最常用的返回值是PRO_TK_NO_ERROR表示函数调用成功。在程序中通过检查函数的返回值不仅便于在调试时找出错误,更重要的是可以避免在执行时出现异常情况,提高了程序的可靠性。4.5.2Pro/Toolkit的开发模式使用Pro/Toolkit对Pro/e进行二次开发主要有两种模式:同步模式(SynchronousMode)和异步模式(AsynchronousMode)。同步模式分为动态链接库(DynamicallyLinkedLibrary)模式(DLLMode)和多进程模式(MultiprocessMode)或称为派生模式(SpawnedMode)。异步模式分为简单异步模式(SimpleAsnchronousMode)和全异步模式(FullAsynchronousMode),如下所示:在同步模式下,Pro/Toolkit应用程序和Pro/E产生各自的进程,每个进程都能发送消息,请求执行某个操作,每个进程都在等待返回消息,以报告操作的完成,控制权在两个进程之间交换,总有一个进程处于等待状态。(1)多进程模式包含比DLL模式更多的交换过程,当Pro/Toolkit应用程序频繁调用库函数时,情况更是这样;在多进程模式下,信息交换是由进程间消息系统完成的,该系统模拟直接函数调用,在两个进程之间传递函数的识别信息及其参数,多进程模式能够用源代码调试运行Pro/Toolkit应用程序,不必将整个Pro/e执行程序加载到调试器中。(2)在DLL模式下,Pro/Toolkit应用程序与Pro/E的信息交换是通过直接的函数调用实现的,这需要用户编译C应用程序,与Pro/Toolkit库链接,生成一个库文件(*.lib文件),之后需要再加载到Pro/E中,DLL模式性能较好,在为客户安装应用程序时一般都要转化为DLL模式。因此,在程序开发阶段以采用多进程模式,这有利于程序调试,当程序开发完之后,以采用DLL模式,这可以提高程序运行的速度。在异步模式下,Pro/Toolkit应用程序和Pro/E进程之间能够并行,能够同时进行自己的操作,在应用程序和Pro/E的通信方面,异步模式采用远程程序调用(RemoteProcedureCalls,RPC)方式。(1)在简单异步模式下,Pro/Toolkit应用程序包含自己的主函数,定义程序的控制流,并能在程序中调用函数ProEngineerStart()来启动Pro/E进程。这使得应用程序可以开发自己风格的界面,而且独立于Pro/E界面。在简单异步模式中Pro/E不能激活Pro/Toolkit中的函数,但是,当Pro/E运行时可以交互使用Pro/E。(2)全异步模式可以实现Pro/Toolkit和Pro/E之间信息的双向交互,但是必须在Pro/Toolkit程序中建立事件处理函数,定义事件处理函数需要在调用ProEngineerStart()之前调用函数ProInterruptSet(),此外为了对Pro/E的消息作出回应,需要调用函数ProEventProcess()。因此,Pro/Toolkit程序与Pro/E进程之间只存在单向消息传递时,也就是当只有Pro/Toolkit应用程序往Pro/E发送消息时宜采用简单异步模式;当存在双向通信时宜采用全异步通信模式。异步模式和同步模式的一个主要区别是Pro/Toolkit应用程序的启动:在异步模式下,应用程序有自己的main()函数,能够独立于Pro/E而启动,然后启动或连接到Pro/E的进程中;在同步模式下,Pro/E根据注册文件中的信息启动Pro/Toolkit应用程序。另外,异步模式较之同步模式,具有代码复杂、执行速度慢的缺点,因此,除非特别需要,一般建议不要采用异步模式[24]。在本系统中,采用的是同步DLL模式,Pro/E根据注册文件HollowDrill.dat来启动HollowDrill.dll进程。4.5.3用VC开发Pro/Toolkit应用程序的主要步骤利用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年食品原料采购合同规范范本2篇
- 2025年度物流园区绿色物流推广承包合同3篇
- 2025年度环保型批灰技术合作合同协议
- 二零二五年度旅行社与旅游保险合作框架协议3篇
- 二零二五年度不动产抵押贷款债权让与合同模板3篇
- 二零二五版绿城物业智能安防系统升级合同4篇
- 2025版全新注塑机购销合同(含设备安装与调试)
- 2025年食品添加剂与添加剂原料供货协议书3篇
- 2025版小额贷款公司合作协议范本2篇
- 二零二五年度企业员工沟通技巧培训合同8篇
- 室上性心动过速-医学课件
- 建设工程法规及相关知识试题附答案
- 中小学心理健康教育课程标准
- 四年级上册脱式计算400题及答案
- 新课标人教版小学数学六年级下册集体备课教学案全册表格式
- 人教精通版三年级英语上册各单元知识点汇总
- 人口分布 高一地理下学期人教版 必修第二册
- 教案:第三章 公共管理职能(《公共管理学》课程)
- 诺和关怀俱乐部对外介绍
- 玩转数和形课件
- 保定市县级地图PPT可编辑矢量行政区划(河北省)
评论
0/150
提交评论