• 2.20 MB
  • 2022-06-17 14:59:20 发布

《(最新)基于知识的三维编织复合材料cad系统的研究与实现》

  • 70页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
摘要当今经济全球化、市场竞争日趋激烈,新产品的开发周期成为企业能否在激烈的市场竞争中取胜的关键因素。只有将领域产品设计人员的知识融入到CAD/CAM/CAE/CAPP系统,实现产品的智能化设计,才是企业实现快速设计的最佳方案。本文引入KBE技术,基于Pro/E平台,研究并开发了基于知识的三维编织复合材料CAD系统。本文主要进行了以下几方面的研究:(1)研究了基于知识工程(KBE)技术和面向对象设计方法,并运用于创建零件模型、建立知识库、程序设计等各个方面,以先进的设计思想指导系统的研究与实现。(2)研究了基于特征的参数化设计方法,建立了零件模型库,并将设计知识融入模型中,以实现设计规则、经验与模型参数化驱动机制的结合。(3)研究应用Pro/Toolkit对Pro/E进行二次开发的相关技术,实现了通用Pro/E系统与本课题专用CAD系统之间的接口通讯;并以调用Pro/E底层函数方式,实现了常用零件模型的参数化驱动。(4)分析了三维编织复合材料内部细观组织特性,建立了三维编织物的数学模型。经过对三维编织细观结构的拓扑分析,建立了编织工艺参数之间的关系,如编织角、编织花节长、纤维体积含量、复合材料的尺寸等。在此基础上,推导出三维编织工艺设计中用于排纱设计的数学公式,通过迭代法可以计算出主要的编织工艺参数。(5)基于上述基于知识工程技术、面向对象技术等,利用通用的CAD软件Pro/E作为开发平台,开发了三维编织复合材料CAD系统。该系统的研制,使三维编织复合材料设计由计算机来实现,它使得工程技术人员从重复绘图和繁琐的计算中解脱出来,提高了设计精度,加快了设计速度,为提高三维编织复合材料设计的质量做出了有意义的探索。关键词:CAD;三维编织;复合材料;基于知识工程;面向对象 AbstractAttheageofknowledgeeconomyanddrasticcompetition,respondingtOthemarketrapidlyisthemainfactortothevictoryofacorporation.Therefore,mergingtheknowledgeandexperienceintotheCAD/CAM/CAE/CAPPsystemtorealizetheintelligentdesignisthepreferentialschematorespondrapidlyforthecorporation,weresearchedandexecutedthe3DbraidingcompositesCADsystembasedonKBE,on也ebasicofPro_厄.nlepapermainlystudiedthefollowingcontents:(1)删spaperresearchedtechniqueonKBEandtheOrientObjectDesignmethod,appliedthemintocreatingmodels,settingupKnowledgeBase,programdesign.Usedadvancedideainguidingtheresearchofthewholesystem.(2)1Ⅶspapersatupthemodelbasebythetheoryofparametricdesignbasedonfeature.Theknowledgeandexperienceofdesignweremergedimoeverymodeltorealizetheintegratingofrulesandcriterionsindesign、丽t11theparametricallydrivemechanism.(3)ItstudiedaboutthekeytechniqueofsecondarydevelopmentinPro/EusingPro/Toolkit.Onthebasicofthesekeytechnique、communicationbetweenPro,EandthesecondarilydevelopedCADsystemandthefunctionofparametricallydrivemodelswererealized.(4)Themathematicalmodelisdefinedfortheprocessdesignonthebasisofthemicrostructureof3Dbraidedcomposites.Accordingtothetopologicalanalysisoftheunitcells,therelationshipbetweenthebraidingparametersisestablished,suchasbraidingangle,braidingpitch,fibervolumefraction,dimensionofcompositesetc—Basedonthemathematicalformulas,themainlyprocessdesignparameterscanbecalculatedbytheiterativemethod.(5)Basedonaboveresearches,UsingCADsoftwarePro/Eastheplatform,thispaperdevelopedthe3DbraidingcompositescADsystembasedonKBE.Withtheresearchofthesystem,thedesignof3Dbraidingcompositesismadetotallybycomputer.Thetechniciansarefreedfromdrawingandthecomplexcalculation,theprecisionandspeedofprocessdesignareenhanced,whichcontributesgreatlytothedesignqualityof3Dbraidedcomposites.Keywords:CAD:3Dbraiding:composites;KBE;OrientObjectDesign 独创性声明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得丞淫王些太堂或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。学位论文作者签名:昔泠签字日期:如噼工月如日学位论文版权使用授权书本学位论文作者完全了解云挂王些太堂有关保留、使用学位论文的规定。特授权云篷王些太堂可以将学位论文的全部或部分内容编入有关数据库进行检索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校向国家有关部门或机构送交论文的复印件和磁盘。(保密的学位论文在锯密后适用本授权说明)学位论文作者签名青羚新躲钟啼签字目期:如b年≥月洳日签字日期j≥印}年_月王D日 学位论文的主要创新点一、研究了基于知识工程(KBE)在计算机辅助设计系统中的应用,研究了参数化特征建模技术,并结合三维编织复合材料的特点,将这些理论和方法应用到三维编织预制件的设计过程中,建立了知识库。二、把KBE技术与通用CAD软件结合,在交互式绘图软件Pro/E平台上开发了专用于三维编织复合材料的智能化快速设计系统,实现了常见的各种形状编织预制件的参数化特征造型和排纱设计功能,为提高三维编织复合材料设计的质量和效率做出了有意义的探索。 第一章绪论1.1三维编织复合材料及其织造技术材料、能源、信息是当代社会发展的三大科技支柱,也是一个国家工业先进的标志。特别是材料,涉及的领域极为广泛,人类历史上的各方面的进步与新材料的创造、出现和使用时紧密相连的,可以说,人类的文明也就是材料的进步史。1.1.1三维编织复合材料简介复合材料(CompositematerialS),顾名思义,就是由有机高分子、无机非金属或金属等几类不同材料通过复合工艺组合而成的新型多相材料。或者更概括地说,复合材料是由两个或两个以上独立的物理相所组成的固体材料。它既能保留原组分材料的主要特色,又通过复合效应获得原组分所不具备的性能。可以通过设计使各组分材料的性能互相补充并彼此关联,从而获得新的优越性能,与一般材料的简单混合有本质的区别。通常称复合材料中的连续相材料为“基体材料”,称不连续相材料为“增强材料”,有害的杂质不能称为增强材料。三维编织预制件(织物)和基体复合固化后,就形成了三维编织复合材料,除了具有传统复合材料重量轻、强度高等固有优点外,还具有传统复合材料所不具备的下列优点:(1)三维编织复合材料是一个不分层的整体结构。增强纤维在三维空间中沿多个方向分布,并相互交织交叉在一起,完全避免了传统复合材料的分层现象,从而大大提高了三维编织复合材料沿厚度方向的性能和其他力学性能,可用于制作主承力结构件和高性能制件。三维编织结构复合材料具有质轻、不分层、比强度高、比刚度高、抗冲击、基体损伤不易扩展、综合性能好,以及耐烧蚀和抗高温等优点。(2)可以直接编织成各种形状和不同尺寸的异型整体件。采用三维编织技术除了可以编织矩形截面的预制件以外,还可用于编织工型梁、T型梁、十字梁、L型梁、盒型梁、三维整体厚壁圆管、圆锥套体、圆柱体和横截面为各种形状的异型件都可以一次编织成型。只要横截面是矩形的组合或是圆及圆的一部分的预制件都可一次编织形成一个完全的整体结构,可避免由于组装而带来的纱线不连 第一帚绪论续而造成构件的某些薄弱环节,同时也可避免某些制件加工上的困难。因此,由三维编织的预制件经复合固化制作的复合材料件后,就可达到最终制件的尺寸,无需再进行机械加工,从而可避免由于加工而造成的纤维及纱线的损伤,可大大提高复合材料制件的性能。(3)三维编织复合材料的性能可通过纱线结构的合理设计而得到提高。通过纱线结构的设计,改变三维编织预制件中的纱线编织角(编织纱线与轴向的夹角)和花节长度(在一个编织循环中所编织出的预制件的长度)就可以改变三维编织预制件中纱线的走向,从而可改变复合材料的纤维体积含量与各个方向的性能等。同时,还可通过对纱线粗细、纱线的位置以及在需要迸一步增强的方向上加入纱线等工艺设计,达到对三维编织复合材料力学性能和其他性能的调节作用。(4)可以对高性能纤维进行编织。近年来,随着高新技术的发展,在航空航天、建筑、船舰、汽车等领域使用的高性能纤维越来越多,采用三维编织技术完全可以对碳纤维、超高分子量聚乙烯、碳化硅纤维、石英纤维、玻璃纤维、芳纶等进行编织,以满足当前高科技领域对高性能复合材料的迫切需要。(5)具有比传统复合材料更优良的力学性能。如三维编织的复合材料的拉伸和弯曲性能等比传统复合材料提高了许多倍。目前,三维编织复合材料已在航空、航天、军工、船只、汽车,建筑、以及高级体育用品等领域得到了广泛应用。在医疗方面,国外己经有人用三维编织碳纤维复合材料制作了人工假肢、外植入物等,使复合材料科学发生了质的飞跃,提升到一个薪的平台。下表1.1给出了编织结构复合材料在这些领域的具体应用。表1.1编织结构复合材料的应用应用航空航天娱乐设施工业领域医疗设施}气车领域导管棒球拍接线柱人造关节赛车车身火箭啧嘴高尔夫球杆连接杆人造肢连接杆动火箭发动机部件帆船袍秆风力螺旋架能寻弹环网球拍电子部件直升飞机螺旋桨自行车压力容嚣高速刘艇驱动阀结构件2 第一章绪论I.I.2三维编织复合材料织造技术复合材料的编织技术起源于纺织科学。纺织科学主要包括两个过程:纺纱和织造。纺纱是将纤维纺成纱线的过程,织造是将纱线织成织物的过程。按照工艺划分,可以将织造分为三种:机织、针织和编织。按纤维结构则可分为:线性(一维)、平面(二维)和立体(三维)。编织工艺是入类发展史上使用最早的纺织技术之一。然面直至20世纪40年代,人们才把编织作为一种工程技术来分析。w.Hamburer分析了几何因素与编织性能的关系。50年代,D.Brunnsehweiler论述了管状编织的成形和拉伸性能。60年代,w.Douglass从机械和工艺的角度对编织技术进行了论述。此时纤维编织技术不够成熟,纤维编织设备的研究还没有得到重视。70年代以后,由于航天上的需要,编织技术被首先用于火箭头部表面防热层,人们逐渐研制出各种二维编织机械,二维编织复合材料也得到较大的发展。1977年,Sander提出可以将三维整体编织技术引入复合材料的制造。8。年代初,Brown研制成功了三维整体编织技术中的四步法工艺。后来,Popper和MGConell提出了二步法三维编织技术。计算机辅助设计与制造(CAD/CAM)技术也使编织技术更加自动化。编织技术从手工、二维、板状编织发展到了机器、三维、管状(以及更复杂形状的)编织。这些技术使得三维编织复合材料的研究进入了一个新领域。人们也逐渐认识到三维编织复合材料比传统层合复合材料有更多的优点。三维编织复合材料的织造技术基本上是从传统的纺织技术基础上发展起来的。各枚纱锭在角导轮的带动下运动,并在交点处从一个角导轮转移到另一个相邻的角导轮上。该过程的持续重复循环,使每一枚纱锭都以相互连接的数字8的轨迹运动,从而使各根纱线相互交织交叉在一起而形成织物。它可以达到任意厚度,形成一个不分层的整体结构。在三维编织中,无论有多少个纱线系统,所有参与纺织的纱线都是沿一个方向喂入的。在工艺设计时,按照所要编织的预制件的形状、尺寸和所用纱线的细度来确定所用纱线的根数和纱线在机器底盘上排列的方式。在编织时,将纱线的一端全部挂在机器底盘上,另一端则沿织物成型的方向挂起,并将其集中在一起。所有参与编织的纱线可分为两个系统,一个是编织纱系统,另一个是轴纱系统。编织纱挂在机器底盘上可以运动的携纱器上,而轴纱则直接挂在机器底盘上。在编织过程中,每个携纱器按一定的规律在机器底盘上沿不同的方向运动,从而带动编织纱运动,但轴纱不动。编织纱在三维空间中进行相互交织交叉的同时,把轴纱包围起来,从而形成一个不分层的整体结构(即预制件)。其中,轴纱对预制件的性能具有进一步增强的作用。机器底盘是三维编织机的关键机构,其构成形式主要有两种:一种是角导轮 结构,另一种是行列结构。在角导轮结构中,纱锭被安放在角导轮的缺口中,角导轮的转动带动纱锭运动,同时将纱锭从一个角导轮传递到另一个角导轮上,从而使纱锭在整个机器底盘上产生有规律的运动,使纱线相互交织交叉而形成织物。在行列结构中,携纱器被安放在轨道的槽中,轨道按一定的规律运动而带动携纱器运动(沿行的方向运动),同时,携纱器在轨道槽中也按一定的规律运动(沿列的方向运动),从而使携纱器从一个轨道的某~位置运动到另一个轨道的另一个位置上,即在机器的底盘上按一定的规律运动。因此,不同的携纱器运动规律的不同,使纱线相互交织交叉在一起而形成一个不分层的整体结构。1.2C矗D技术概述图1.1三维编织机示意图CAD(CompuverAidedDesign,计算机辅助设计)口】是借助计算机系统在工程和产品设计的各个阶段提供快速、有效的工具和手段,以辅助设计人员加快、优化设计过程和结果,达到最佳设计效果的一种技术。它将计算机高速而精确的计算能力、大容量存储能力和数据处理能力与设计者的综合分析和逻辑判断能力以及创造性思维结合起来,从而大大加快设计进程,缩短设计周期,提高设计质量。CAD技术作为当今世界十大杰出工程技术成就之~,它本身是~项综合性的、技术复杂的系统工程,涉及许多科学领域,如计算机科学和工程、计算机图形学、数据结构和数据库、仿真以及与产品设计和制造有关的专业知识等。CAD及其相关技术女nCAM(计算机辅助制造)、CAPP(计算机辅助工艺设计)、CAE(计算机辅助工程)等也统称为CAX,是60年代以来迅速发展起来的一门新兴的综合性计算机技术。CAX主要指的是以计算机作为主要技术手段处理各静数字信息,辅助4 第一章绪论完成产品设计和制造中的各项活动。CAD技术从50年代发展至今已有几十年的历史,基于计算机图形学、以产品几何模型为核,已,CAD技术已经相当成熟,并广泛应用到机械、电子、汽车、航空、纺织、材料、交通等社会各个领域,成为企业的现实生产力。在纺织行业,计算机技术已经逐步渗透到设计、编织、工艺、检测等各个方面,尤其在设计中,CAD系统极大的提高了设计效率和质量,降低了产品开发成本,缩短了产品研制周期,已成为不可缺少的辅助工具,其发展和应用水平成为衡量一个国家科技现代化和工业现代化水平的重要标志之一。随着计算机技术和现代工业的飞速发展,CAD/CAM也经历从二维平面设计向三维立体设计的转变,三维CAD技术更符合人的设计思维习惯,整个设计过程完全在三维模型上进行,形象直观,更易于工程与非工程人员之间的交流。目前,三维特征造型技术和参数化技术以及并行工程、协同设计等技术获得了巨大的发展。围绕企业创新设计能力的提高和网络计算环境的普及,CAD系统主要向智能化、网络化、集成化方向发展。图1.2为智能化、网络化的计算机辅助设计过程。l基于专寰系统静智j}化、基于信息技术的网络化图】。2CAD的智能化、网络化CAD技术的发展主要表现在以下几方面:(1)CAD技术智能化CAD技术不再是传统的设计流程和方法的简单映像,而是将计算机科学与工程领域的专业技术以及人的智慧和经验结合起来,在产品设计过程中,应用工程设计知识、实现优化设计和智能设计。基于知识(KBE—KnowledgeBasedEngineering)的CAD系统正是面向现代设计要求而产生、发展的新型智能设计方法和设计决策自动化系统。它将专家系统(ES)、知识库(KB)与CAD$目结合,引导用户完成特定任务,获得最佳设计效果。(2)CAD技术网络化对于产品设计,网络化的设计环境便于设计者形象、高效地研究和交流设计思想,使更多的设计人员可以在同一平台下,通过网络针对同一项设计任务进行实时的双向交互通信与合作。建立基于虚拟技术、企业局域网(Intranet)和分 第一市绪论布式客户机/N务器模式基础上的cAD/cAPP/cAM协同开发环境,可以满足制造业信息化进程中实现数据共享的迫切需要。(3)CAD技术集成化CAD技术集成化是指以工程数据库为核心,以图形系统和网络软件为支撑,遵循产品数据接口标准和图形接口标准,实现不同的硬件平台之间、不同的网络结构之间、不同的操作系统之间、不同的应用之间的集成,即以三维CAD为基础CAD/CAE/CAPP/CAMPBM/ERP(4CPE)集成技术。另外,从产品设计开发的角度看,CAD的发展经历了基于图纸、基于特征、基于过程、基于知识的四个发展阶段。基于图纸阶段:CAD的含义仅仅是图板的替代品,人们借助CAD技术来摆脱繁琐、费时、绘制精度低的传统手工绘图。二维CAD系统改变了传统的工程图纸的设计和管理手段,将工程设计图纸都看成是“点、线、圆、弧、文本”等几何元素的集合,但并不能记录图素所代表结构的物理意义。基于特征的造型:在几何模型的基础上增加结构的精度、材料、装配和分析等特征,包含了一部分的设计信息,是三维CAD系统面向制造过程、CAD/CAM集成的重要手段。特征的引入,使CAD系统摆脱了传统的基于几何拓扑的低层次交互设计方法,零件和产品的设计信息可以用工程特征术语来定义,提高了表达设计的层饮。基于过程阶段:CAD系统可以为用户提供设计过程的向导、实现步骤的逻辑顺序、已完成的部分、未完成的部分和全部过程中的所有选项。它融合了特定工程设计的最佳实践经验,法定标准和实拖准则,引导用户按设计向导完成预定的某类产品设计工作。如模具设计向导(MoldWizard),齿轮工程向导(GearEngineeringWizard)等。基于知识阶段的CAD系统,对于产品开发,知识是驱动力,系统通过记录不同经典的工程、设计和产品配置的知识,并对它们加以理解、抽象、描述、使用和维护构建一个可以重用的知识库,生成相应的工程规则,即在知识驱动的智能CAD系统中,通过修改KBE系统中产品对象的性能参数,就可以驱动CAD系统中的几何实体的改变。如图1.3所示:图1.3知识驱动几何示意图 第一章绪论1.3课题的研究现状随着科学技术的发展和纺织工业的进步,纺织品复合材料在各个领域里得到普遍的应用。由于三维异型整体编织成的复合材料克服了传统复合材料由于层问没有纱线通过而容易分层的弊病,它的出现引起了各国科技界的高度重视,一些发达国家如美国、法国、德国、俄罗斯等都投入大量的人力和物力进行研究开发,尤其是美国航空航天局制定了6年的发展先进复合材料技术的ACT计划,投资l亿多美元来开发三维编织技术和自动化加工,以提高复合材料的强度和耐冲击性,并可实现一体成型。现在国外很多研究复合材料工艺的大学、研究所以及实验室都有大型编织机,美国费城大学、Drexel大学于1987年率先实现了大型编织机的CAD/CAM系统,并于次年应用到实际生产中。国内的天津工业大学、南京玻璃纤维研究设计院等机构对三维编织技术进行了深入的研究。天津工业大学为航天部门编织了多层整体锥套。该锥套为三层整体结构,从横截面看外层为金属纤维,中层为碳纤维,内层为玻璃纤维。具有不同性能的三层编织层共同构成多功能的整体部件。南京玻璃纤维研究设计院也采用i维编织技术编织了多种鼻锥、雷达罩等构件。航空工业总公司637研究所采用RTM技术制成了歼一8、歼-10等多种军用飞机的雷达罩。航空工业总公司621研究所、625研究所、同济大学、西北工业大学、南京航空航天大学等机构对RTM工艺及专用树脂等进行了研究。深圳中华复合材料制品有限公司研制了我国第一台144线轴大型编织机,并开发出用于自行车车架的可焊接碳纤维编织复合材料管等部件和产品,并初步形成了产业化。复合材料计算机辅助设计作为当前纺织和复合材料交叉领域中的一项热门课题,不论国内还是国外,不论是纺织行业还是非纺织行业,都在从不同的角度,或不同的层次对这一问题进行研究。国内外的一些专家学者正在研SfJ--维编织的计算机辅助设计系统,并且在某些方面已经取得了一定的进展。天津工业大学复合材料研究所一直致力于三维编织计算机辅助设计系统的探讨和研究,经过几年的发展,取得了一些经验和成果。1995—1996年,韩其睿教授用TurboC语言开发了一套三维编织的CAD系统。此系统可以完成预制件的单元体结构显示、内部纤维走向显示、编织机的运动显示、规则截面的运动模拟显示、任意截面的设计等功能。该系统包括的内容较全面,基本能满足三维整体编织的要求。但是,由于该系统的实现是在DOS环境下用TurboC语言编程,不可避免地产生了系统界面单调,编程复杂等问题。韩其睿教授于1999年已将此系统在SUN工作站上实现。研究生吴辉辉、郑篙在1998年,在SUN工作站So]aris系统上利用Fortran语 第一罩绪论言完成了“基于EUCLID3软件的三维编织二次开发3DBSTC—CAD系统”。此系统主要是进行三维编织预制件i亡艺设计和编织过程的模拟。研究生贾肠在1998—1999年开发了“复合材料二步法三维编织预制件的结构显示及动态编织过程模拟”的CAD系统,通过本系统可建立织物细观结构的几何模型及显示其编织过程。研究生李仁璞在1998—1999年进行了三维编织预制件光照模型的研究,有效地改善了预制件在计算机中的立体显示效果,增强了其空间真实感。研究生鄢素敏在200卜2002年开发了“任意矩形组合截面二步法三维编织计算机辅助设计系统”,该系统实现了二步法三维编织的工艺设计,并利用计算机实时三维动画模拟了三维编织的底盘运动过程和编织过程。1.4课题的提出和研究内容1.4.1课篡的提出三维编织CAD系统是利用功能强大的计算机技术,解决人工难以解决的异型件三维编织过程设计问题,是三维编织技术与计算机技术的完美结合。对于三维异型整体编织技术的发展、实现三维异型整体编织的自动化、提高三维编织复合材料的质量和生产率、加速三维编织复合材料的发展、推广应用具有十分重要的意义。目前国内所存在的三维编织计算机辅助设计系统的运行大都受限于特定的软硬件环境,其通用性较差,仅有极少数的专业人员能接触到,而且以往建立的三维编织复合材料CAD系统涉及到的界面设计、图形显示等各方面都是通过高级语言编程实现,对于各种形状、不同尺寸的三维织物,绘制其图形编程就非常烦琐;对于CAD软件供应商来说,CAD软件的通用化可以使CAD产品占领更广阔的CAD用户市场。而对于CAD具体用户来说,又希望CAD软件个性化,即具有更强的针对具体产品的设计功能。因此,在已有的CAD系统上进行二次开发对企业提高设计能力有重要意义。因此,为实现三维编织预制件的快速智能设计,缩短其开发周期,本课题通过对Pro/E软件进行二次开发,为三维织物提供智能化设计环境,达到各种形状三维织物参数化建模,实现基础数据资源共享,提高工作效率,并为后续的工艺设计奠定基础。8 第一章绪论1。4.2课题的研究内容随着编程软件、图形软件、有限元技术和数据库技术的发展,新一代三维CAD/CAM/CAE集成软件,如Pro/Engineer(简称Pro/E)、UG、Solidworks等软件得到广泛应用,可以很好地完成零件描述、图形数据处理和设计等功能,并使设计、分析、绘图实现一体化,采用人机交互技术,增强系统综合功能。为KBE的实现提供了完善的图形开发平台和数据接口,方便了基于知识工程的智能cAD系统的开发。Pro/E是由美国的PTC(ParametricTechnologyCorporation,参数技术公司)推出的,自1988年问世以来,目前已发展为世界上最普及的CAD/CAM/CAE集成软件,基本上成为三维CAD的一个标准平台。PTC提出的单一数据库、参数化、基于特征、全相关及工程数据再利用等概念改变了CAD的传统观念,这种全新的概念已成为当今世界CAD领域的新标准。Pro/E目前共有80多个专用模块,集零件设计、产品装配、模具开发、造型设计、逆向工程、自动测量、产品数据管理等功能于~体,涉及工业设计、机械设计、功能仿真等方面,广泛应用于自动化、机械、电子、模具、汽车、航空航天、医疗器械、家电、玩具等多个领域。本文将KBE技术与通用CAD软件相结合,运用基于特征的参数化设计技术,研制了一个适用于三维编织复合材料的CAD系统。应用此系统可以实现各种形状、不同尺寸三维编织预制件的快速、智能化设计。章节主要内容如下:第一章:简要介绍了复合材料及三维编织复合材料织造技术,综述了CAD技术及其发展趋势,研究了三维编织复合材料的发展现状,提出了本课题研究背景和研究的主要内容。.第二章:介绍了基于知识的CAD技术,引入了KBE思想,研究TKBE技术及其相关知识在三维编织复合材料CAD系统中的应用。第三章:研究面向对象技术、基于特征的参数化建模技术、Pro/E的二次开发技术和数据库技术,分析其在三维编织复合材料CAD系统中的应用。第四章:研究了三维编织工艺理论,建立编织物的几何模型和编织工艺参数之间的关系,如编织角、编织花节长、纤维体积含量、复合材料的尺寸等;推导出三维编织工艺设计中用于排纱设计的数学公式,可计算主要的编织工艺参数。第五章:在前面章节理论和技术研究的基础上,开发基于知识的三维编织复合材料CAD系统。第六章:结论与展望9 第二章KBE技术,l:二维编织复台干才科CAD系统中的应用第二章KBE技术在三维编织复合材料CAD系统中的应用2.1KBE(基于知识工程)技术概述随着各类技术尤其是信息技术的高速发展,知识与信息跃升到与传统经济杠杆(如人力、财力和物力)同等重要的地位。Sai/]tel"-等指出:典型企业内有90%的交换过程都涉及数据的交换,而这其中又有大约75%可以归类为知识或信息,知识正成为最重要的资本和生产力。新经济的到来,新~代的制造方式要求企业不仅能快速响应市场,而且能够快速生产出高知识含量的产品,使企业在激烈竞争的市场中赢得生存和可持续发展的空间,而知识是唯一能保持企业可持续发展和竞争优势的重要资源。2.1.1知识的概念知识是人类在改造现实世界的实践中认识和经验的总和。人类的各项活动总是基于人类的知识,即对外部世界的观察和了解,正确的判断和决策以及采取正确的行动。本文要讨论的知识是从信息的角度来理解的,即知识是一种经过综合处理的具有自己独立意义的信息,这种信息可以被人们所学习与使用,对周围的事物做出反应和预测。信息是指通过分析、处理过的数据,是对数据事实的叙述。信息与数据的不同在于信息通过某些法则和准则将数据转化为相关的资料。知识是综合的信息,信息和知识的本质不同是信息是没有经过个人或相关系统的综合,它只能反映一段时间和一定范围内的规律(I“,而知识一旦获得,就具有一定的规律性,使人可以立即将它运用到实践生活和工作中。因此知识的木质特征就是其“转化为实践的能力”。知识的层次关系如图2.1所示。图2.1知识的层次关系图 第二毒KBE技术在三维编织复合利料CAD系统中的应用知识的类型按知识的作用来分,有以F三种:(1)描述型知识:以描述的方式来表示的知识叫描述型知识,包括事实知识和判断知识,事实知识描述有关对象、事件,以及行为等特征,而判断知识是指对事实的判断和判断的过程。描述型知识可以用数据结构来表示,使知识作为一种独立于程序的实体存在,把用于解决问题的知识与程序编制方面的知识有效地分开,描述型知识具有知识表示清晰明确、易于理解、可读性好等优点。(2)过程型知识:传统的数据处理将知识寓于程序中,即程序就代表着系统解决问题所使用的知识。这种知识表现类型称为过程型知识。过程型知识针对特定问题,根据具体的处理步骤用一系列过程来表达的,所以执行效率非常高,但它有以下的缺点:①不易表示大量的知识,且知识难于修改和理解。②只适合表达完全正确的知识,稍有含糊的知识就难以用程序来描述。⑧只适合处理完整、准确的数据。(3)元知识:所谓元知识就是关于知识的知识[6I。具体说元知识可分为以下几类:第一类是有关怎样组织、管理知识的元知识,这些元知识刻画了知识的内容和结构的一般特征,以及分类、综合等有关特征。第二类是有关利用知识求解问题方向的元知识(如在问题求解中所用到的推理方法,为解决一个特殊任务而须完成的活动的计划、组织和选择方面的知识等),对领域知识的运用起指导作用。例如:在解决一个问题的推理过程中出现同时产生两条以上规则可适用情况,究竟应采用哪~条规则,则需要使用一种理论性的标准,这种决定是一种元知识。第三类是有关从知识源中获取知识的知识。在这里知识源包括书本、人脑和其他知识系统。2.1.2KBE(基于知识工程)技术1)知识工程。知识工程(KnowledgeEngineering,KE)是以知识本身为处理对象,研究如何使用人工智能AI的原理和方法来设计、构造和维护知识型系统的--I"]学科,与设计、构造和维护知识型系统有关的理论技术、方法和工具都是知识工程的研究内容,包括基础理论研究、实用技术的开发、知识型系统的工具的研究。基础理论的研究是指知识工程中的基本理论和方法的研究。例如关于知识的本质和应用的研究,关于知识的表示、推理、获取和学习方法的研究,关于认知模型的研究等。实用开发技术的研究主要是为了解决在建立知识系统过程中遇到的技术问题。它的研究范围应该包括:实用知识表示方法,实用知识获取技术,实用知识 第二章KBE技求杠三维编织复台捌利CAD系统中自DJ,E用推理方法,知识库结构系统,知识系统体系结构,知识库管理技术,知识型系统之调试与评估技术,实用解释技术,实用接口技术等等。其中知识表示、知识获取、推理机制、知识利用和知识库构成了知识工程的基础。2)基于知识的工程。基于知识的工程(Knowledge—BasedEngineering,KBE)是基于知识的系统在特定的领域产品设计中及其下游活动中的特定应用,使企业捕获和重用设计人员的经验和知识,捕获和重用产品开发中最好的设计实例、规律和规则等。基于知识的工程与人工智能(AI)、基于知识的系统(KBS)和专家系统密切相关,但更注意系统的实际应用。作为AI/KBS与cAD/CAE/CAM结合的产物,KBE已经显示出将AI/KBS应用至8工程设计和制造领域的重大价值.上海交通大学模具CAD国家工程研究中心指出:KBE是通过知识的驱动和繁衍对工程问题和任务提供最佳解决方案的计算机集成处理技术。KBE系统的主要内涵为:(1)是关于设计、制造和分析的处理过程;(2)是领域专家知识的集成、创新和管理:(3)是CAX(CAD/CAM/cAE/cAPP即等)技术与AI技术的有机集成。KBE系统不仅能够方便地访问知识库,而且提供了繁衍知识的手段,拓宽了获取知识的途径,允许用户利用KBE提供的工具添加自己的独特知识,从而对系统进行扩展。下表2.1给出了基于知识的系统与传统程序的区别。表2.1基于知识的系统与传统程序的区别隧翳巍囊斓霸§羹霆囊篓一谲鳞藉蒂熬瀚麟缫麟手菇扳的系自镬黼瀵糕璐薅簸糖浆~冀缓铱熬霸麓或澎芪斑露数辩链壤黪鞲黪辙建辩馕惩皴浚辩罐曳、寝举鞫缝嬲瓣稼方疆朝澈馕耀稀鲰溢豢舞灌鸯纛一怨翱锨耪麓蛾瞧嗣努黪麟烈算滚滚躺发鼗l憋疆辩蒙窳滚簸籀母纛;戳£≥避程壤摩蠢麓娥熬戆壤方或撬纷太敏燮嚣方建蔽躲褥黪蘸醺罐黪菠。麓麓德纛痔井麓簇燎绛蕊骚馥,嶷蘸竣动留{穗黪糗{擎串韩释誉蟋避帮执黪枣麴解释霹缝i煞潦滋勰,帮褰诲举薅建缆满激-绺诲举髓宠蠛基于知识的工程KBE是将知识工程(包括知识库,知识规则、知识推理等)与CAD设计系统(包括几何特征、参数化驱动、CAE等)有机地结合起来,使其应用对象从几何造型、分析、制造延伸到工程设计领域,形成了工程设计与CAD 第二章KBE技术存三维编织复台午j料CAD系统中的应用系统的无缝连接。研究如何更进一步把知识工程的思想、方法和技术引入传统的CAD系统中,实现产品设计自动化的需求,具有非常重要的意义。2.2KBE技术在三维编织CAD系统中的应用三维编织复合材料设计系统中,一方面我们要不断地将专家和设计者的经验知识按某种机制进行归纳和处理,并建立某种推理机制,对实际情况进行有效分析,从而推导出设计方案。另一方面,还要建立某种驱动和集成机制,使知识能直接驱动CAJ:)系统进行图形和数据处理,从而将设计者的经验和思想真接体现在编织件的模型上,来实现基于知识的三维编织复合材料的智能化设计。在此将KBE的技术和思想融入到三维编织复合材料CAD系统中,进行了编织件设计知识库、建立推理机制、知识库管理等技术的研究。2.2.1知识获取技术知识获取(Know]edgeAcquisition,KA)系统将用于领域问题求解的专家知识从某种知识源(如人类专家、文本、数据库等)中总结和抽取出来,转换为计算机可以利用的形式并送入领域知识库。从广义角度讲,知识获取过程还包括计算机系统从原有知识中产生新知识的过程,即机器学习。知识获取为创建、修改、扩充知识库中的知识提供了手段。知识获取方式知识获取的方式是多种多样的,如与专家会谈、观察专家的问题求解过程、利用智能化知识编辑系统、利用机器学习中的归纳程序、使用文本理解系统等。一般地说,可根据知识获取过程中的自动化程度,将知识获取方式分为以下三类:·人工(manual)知识获取;·半自动(semi—automazed)知识获取;·自动(automated)知识获取。知识获取过程中需要提炼知识,这一过程中需要尽量做到知识的准确性,可靠性。完整性,精炼性。准确性指获取到的知识应能准确地代表领域专家的经验和思维方法;可靠性指获取到的知识能被大多数领域专家所公认和理解,并能经得起实践的验证;完整性指获取到的知识的一致性或无矛盾性:精炼性指尽量保证己获取的知识的集合无冗余。本课题研究中知识获取主要涉及人工方法,通过归纳整理自我积累的专门领域知识得到。这部分知识包括企业、行业内部特定产品的设计流程,由理论表达 第二幸KBE投术d三维编织复合材利CAD系统中的应用式和经验公式决定的诸多参数之间的因果、递推、和制约关系,与产品指标相关的主参数提取,参数驱动过程中受到的编织工艺约束和必要的小型数据库等,它是以往成功的设计知识的总结,对于这部分知识主要需解决的是如何将知识概念化及形式化的问题。2.2.2知识表示技术知识表示(KnowledgeRepresentation)就是用某种约定的(外部)形式结构对所获取的领域知识进行规范化表示,即知识符号化的过程。这种形式结构还要能够转换为机器的内部形式,使得计算机能够方便地存储、处理和利用。知识表示是知识处理中最基本的一个问题,没有知识的表示就谈不上知识的运用。知识表示的好坏对知识处理的效率和应用范围影响很大。良好的知识的表示应该有直观性,简洁性,抽象性,易结合性,可划分性,合适的知识粒度等。知识表示的方法大致有以下几类:(1)逻辑表示法:逻辑表示法是最早使用的一种知识表示方法,它适合于表示事物的状态,属性,概念等事实性的知识,也可以用来表示事物间确定的因果关系,即规则。逻辑表示法的推理系统采用归结原理,这种推理方法严格、完备、通用。具有表达自然,它具有简单、自然、精确、灵活、模块化的优点。缺点在于难以表达过程性知识。(2)基于产生式规则的知识表示方法:知识的表示是通过If/Then方式表达。设计任何基于知识的系统,这种知识表示方法都是必不可少的,设计系统过程中,领域专家和计算机设计人员需要共同协作,经常修改系统。采用基于规则的表示方法,规则可以独立地添加,删除,修改而不影响其他规则以及其他子系统,并且采用这种方式系统能够跟踪推理过程,系统的调试,维护较方便。但是,从逻辑的一致性和完整性的角度来看,当规则变的越来越多时,这种独立性会大打折扣,频繁地改动更新规则占用了大量设计时间。(3)框架范式表示法:框架理论是Minskey于1974年提出的,将知识表示成高度模块化的结构。框架是把关于一个对象或概念的所有信息和知识都储存在一起的一种数据结构。框架的层次结构可以表示对象之间的相互关系,用框架表示知识的系统称为基于框架的系统。在专家系统中,框架也常常和产生式规则在~起共同表示知识。(4)语义网络表示法:语义网络表示法是通过概念及其语义关系来表达知识,用语义网络表示事实,事实间的关系以及其他比较复杂的知识,有结构清晰,便于联想,表达自然等优点,但也存在严格性较差和处理上的复杂等缺点。现有 第二章KBE技术在三维编织复合材料CAD系统中的应用的基于知识的设计系统普遍采用产生式规则,随着面向对象技术的发展,越来越多的基于知识的系统将其与框架范式结合起来。(5)面向对象的知识表示方法:随着面向对象技术的发展,越来越多盼基于知识的系统把知识表达与面向对象技术相结合。面向对象的知识表示方法是把面向对象方法与框架或产生式规则结合起来进行知识表示的方法。对象是知识表达的基本单元,对象有属性和方法,属性代表设计对象的静态属性,方法是允许作用在对象上操作的集合。在本系统中,因为面向对象的知识表示方法能够比较全面的反映编织件的特征,在编织件的结构和工艺设计上,我们充分利用面向对象的知识表示方法,把编织件作为对象处理。2.2.3知识推理技术推理就是依据一定的原则从已有事实推出结论的过程。推理机制是根据输入信息、规则库及实例库推理出合理的设计方案的方法,主要有两个任务:一是知识的运用,即从已有的知识中推导出所需要的结论和知识;二是控制搜索过程,即确定知识库巾规则的扫描顺序,决定在每个控制信息下要触发的规则。推理方法主要有基于规则的推理(RBR,Rule—BasedReasoning)、基于实例的推理(CBR,Case—BasedReasoning)、基于模型的推理(她R,Model-BasedReasoning)。这些推理方法各有其优缺点和各自的应用场合,下面分别论述。l。基于规则的推理RBRRBR是一种发展较早理论上比较成熟的推理模式。基于知识的工程KBE开始采用的就是RBR推理机制。其原因在于,~方面,数模理论的发展早已在各个领域形成了一些模型与规则:另一方面,RBR方法比较容易在计算机上实现。但是,随着研究的深入和应用扩展,RBR方法表现出明显的缺点,主要是:设计问题的解决仍然主要取决于设计人员的经验和创造能力;知识获取比较困难;对求解问题的历史缺乏记忆,每次求解都须从头开始,故推理效率不高;随着求解问题的复杂性不断提高,需要的规则也不断增加,可能出现知识爆炸;系统性能脆弱,只适用于理论严谨、知识规范的强知识领域。2.基于实例的推理CBR印R技术起源于70年代,是人工智能发展过程中涌现出来的区别于RBR技术和MBR技术的一种推理模式,CBR技术应用在设计领域中,其设计思想来源于人类的思维方式,面对一个新的设计要求,设计者的脑海中往往首先浮现出以往的工作中曾经出现过的类似的设计条件,找出两者之间的区别,并以此为依据联系标准 第二章KBE技术在三维编织复台利柑CAD系统中的应用的设计准则,确定新的设计方案。基于实例的设计试图利用计算机再现这一过程:设计系统根据用户对设计条件的描述抽象出实例特征并建立匹配条件;根据这一条件从实例库中选择与设计要求最接近的实例;对比两者之间的区别,调整选定实例中不能满足条件的因素,生成最终的设计方案并更新实例库。CBR具有以下优点:1)CBR技术避开了获取规则或模型这一瓶颈,实例是以前设计问题的优化结果或满意结果,它本身包涵了大量的设计经验知识,可省去大量经验知识的获取与表达.2)更符合领域专家的思维习惯。设计人员在产品方案设计时,总要考虑以前的设计实例,找出相似设计方案对其进行修改,以获得新的设计方案。3)具有自学习能力。通过增加新实例,不仅达到了学习的目的,还可以反映用户需求的特点。4)求解时,不需要从头推起,而是直接从一完整的答案开始推理,可以迅速提供解答。3.基于模型的推理bfBRMBR技术通过设计对象的结构——状态——功能模型的方式解决问题。在求解问题以前,首先要建模,基于充分约束或者数学理论的建模方法一方面是一种创造性活动,需要严谨的约束与推理,当问题很复杂时,模型的建立非常困难:另一方面,所建模型在产品设计阶段,特别是概念设计阶段,模型所需的条件往往不能完全满足,从而无法得到结果,另外,其不具有经验知识的记忆能力,知识的学习完全局限于模块模型。故MBR除少数用于创新性设计问题外,在变形设计上很难满足需要。通过以上分析可以看出RBR、CBR、MBR各有优缺点,目前较好的方法是根据问题的需要,把三者集成起来,发挥各自的优点,RBR适合于解决规则性的问题,CBR适合于解决经常遇到的、而且难于用知识或者模型表达的问题:MBR适合于解决新的创造性的问题。对于设计领域中存在知识具体表现为:过程知识、经验知识、实例知识及可模型化知识。基于规则的推理方法RBR解决过程知识及经验知识的处理问题,基于实例的推理技术CBR解决实例知识、样本知识的处理问题,基于模型的推理技术MBR适合于解决新的、创造性的易于模型化的知识,这三种知识处理方法在智能设计中都占有自己相应的位置,不能互相替代。一个完整的知识处理系统应把三者有机地结合起来,形成一种集成的推理。本论文主要采用知识驱动下的CBR(KDCBR,KnowledgeDrivenCBR)推理技术,基于实例的推理流程如图2.2所示。首先根据编织件的特点把设计需求分解成许多子问题,依据设计过程把设计分解成许多步骤,在知识的驱动下,设计依 第二章KBE技术在_三维编织复台材料CAD系统中的应用次由粗到细、由概念到具体,一步步形成完整的设计方案。在求解过程中,通过实例匹配、实例调整、实例维护等与实例库打交道。2.2.4知识库图2.2基于实例的推理流程1.知识库的概念知识工程认为,知识库是为了满足问题求解的需要,按照一定的知识表示方式,在计算机系统中组织、存储和使用的相互关联的知识集合,知识库中包括实例类知识、经验类知识、规范类知识,它是系统智能的源泉。知识库作为知识系统的有机组成部分,存储与具体设计领域相关的知识,并与知识求解模块和知识表示方式结合作用。知识库是基于知识的CAD系统与~般cAD系统的主要区别之~,是数据库在知识工程领域的拓广和衍生。知识库系统是面向人工智能问题求解或智能信息处理的系统,’用于处理高层抽象的信息(规则和经验等),管理的对象是知识,其研究的重点是如何有效的实现知识表示和推理,特别是涉及不完全、不确定、不精确知识的表示问题。对知识库的操作主要体现为:在一定的推理控制策略制约下,对问题空间进行启发式搜索。2.知识库和数据库的区别从目前研究的情况看,数据库(DB)和知识库(KB)二者是有区别的,数据库用于信息管理系统,收集表达事实的数据,管理的对象是数据。研究的目标主要是如何有效地存储和检索大量的数据。对数据库的主要操作有查询、更新、维护等,研究重点为数据模型、数据结构、查询优化、数据一致性、数据分布策略等。而 第二章KBE投术在二二维编缑复合剌科CAD系统甲的应用知识库不但包含了数据库的所有内容,而且包含了规则和过程性知识。3.知识库系统的结构知识库系统是以知识库为核心的,它由实例库、规则库、约束库、知识库组成。如图2.3所示。知识库管理系统用来对知识库进行添加、管理、维护。实例库用于存放用户提供的一些成功实例及推理机所产生的新实例。规则库存储的是进行知识推理的规则,如实例的搜索、相似算法等。约束库用于存放设计的各类约束,如几何约束、产品性能参数以及其它产品相关的法规及各种标准等。知识库是用于存储大量领域专家的经验知识、实验数据、设计准则及公式。知识库中的知识数据能够被推理机所采纳并通过系统的知识获取、学习功能进行添加、修改。图2.3知识库系统的结构模型4.本系统知识库设计要求知识库的设计是本系统中实现知识共享与重用的重要步骤,知识库的存储、组织与管理等对知识共享与重用的可行性、可用性有重要影响.本系统中知识库的设计要求是:(1)紧密结合三维编织复合材料设计的特点。不同的设计领域有不同的设计要求和特点。知识库中管理了大量的不同领域的设计知识,知识库设计必须根据不同领域的设计特点有效、准确地表达和存储专业领域中的各种设计知识,为设计知识提供良好的交互方式支持。(2)配合知识求解和知识表示方式。知识库的组织与管理方式应提高其内聚性,减少与求解模块的耦合,使知识库和求解模块的相互独立,以保证知识库的内部组织方式的改变不会导致知识求解模块的改变,并要求和知识表示方法相配合,简化模型知识与知识库间的数据操作。(3)保证知识库与知识求解模块的相对独立性。知识库的组织应保证今后知 第二章KBE技术在三维编织复合丰j料CAD系统中的应用识库与知识求解模块的相对独立性.使知识库内知识的变动不会引起知识求解机制的改动。另外,知识的组织还要方便所选择的推理策略的实施。(4)保证知识库的正确性。知识库的组织和管理方式要保证知识库内容的一致性、完整性和安全性的维护,保证数据的安全与准确,使知识库运行良好。f5)保证知识库的可扩充性与效率。知识库设计必须考虑以后知识类型的扩展和优化,尽量避免较大幅度的修改,提高知识库的可扩充性,并对知识库的物理存储方式和数据结构进行优化,提高知识存储空间效率和知识求解的时间效率。在此要求基础上,我们建立的知识库主要有零件的模型库及其设计相关数据库、纱线库等。 端二章系统开发关键技术研究第三章系统开发关键技术研究3.1面向对象技术3.1.1面向对象概念面向对象方法(ObjectOriented,口0)就是以对象和类为基础,将数据和操作封装在对象的统一体中,用外部传递的消息触发对象内部操作;采用面向对象方法解狭问题时,可看成对一系列相关对象的操纵,也就是发送消息到目标对中,甫对象执行相关的操作并返回结果。它强调的是对对象的操作,也就是以对象为中心的问题求解方法。面向对象的开发方法是为解决70年代末的软件危机而应运产生的。它最基本的原则就是:使描述问题的问题空间和解决问题的方法空间在结构上尽可能一致,使分析、设计和实现一个系统的方法学与认识客观世界的过程尽可能一致。它的抽象性、封装性、继承性和多态性不但有效的解决了软件危机。而且使得大规模软件系统的开发思路、数据管理、维护扩充等都变得高效而简洁。因而,面向对象的开发方法受到了越来越多的软件开发人员的欢迎。3.1.2面向对象系统的基本特征面向对象系统的基本特征是抽象性、封装性、多态性和继承性。(1)抽象性.抽象是我们用于管理每天收集到的信息复杂性的一种方式。它允许我们标识事物是如何相似的,并忽略它们是如何不同的,让我们考虑一般性而不足具体细节,并明白事物是什么,可以在任意给定时间和为了特定的目的抽象对象的重点特点,而忽略所有其它方面。通过使用抽象,可咀将精力集中在应用程序的对象上而不是实现上二。这让程序员想到需要什么而不是计算机来如何做它.它允许程序员从计算机处理的技术背后引出设计并将它用于用户可以参与的地方。用户或领域专家成为设计进程中关键的参与者。(2)封装性所有程序都出两个基本要素组成:程序语句(代码)和数据。代码是程序实现其行为的部分,数据是这些行为所影响的信息。割装是把代码和代码操纵的数据其行为的部分,数据是这些行为所影响的信息。封装是把代码和代码操纵的数据 第二蕈系统开麓关键技术研究进行联编的编程机制,保护接口外面的安全,防止误用。在对象内,代码或数据或两者都是对象私有或公有的。私有代码和数据仅被对象的另外部分识别和访问,也就是对象的私有部分不能被对象外的程序部分访问。代码或数据为公有时,即使是在对象内定义的,程序的其它部分也能访问,即对象的公有部分为对象的私有部分提供一个被控接口。(3)多态性多态性是允许一个接口用于通用类的行为特性。特性的行为是由状态的本质所决定的。更一般的情况,多态性的概念用“一个接口,多个方法”来表达,意思是可为一组相关的活动设计一个通用的接口。通过允许使用同一接口来指定一个通用行为来帮助降低复杂性。在用于各种情况时,由计算机来选择这种指定的行为(即方法)。程序员不必手工选择,只需记住和使用这种通用接口。(4)继承性继承性是一个对象可以从另一个对象获得其特性的过程。其意义在于它支持层次分类的概念。大多数知识都可以由层次(自顶而下)分类进行管理。不使用继承,每个对象都必须显式的定义其特征。然而使用继承后,一个对象只需定义那些表现其独特于其它对象的品质,它可以从其父类继承通用属性。这样,继承机制就可以只用一个对象来作为多个一般情况的特殊实例。3.1.3面向对象的知识表示设计知识一般可分为静态知识和动态知识。静态知识主要是关于问题领域内事物的事实、关系等。动态知识是关于问题求解的知识。主要又分两大类:一类是解决特定问题及细节设计的推理判断性知识,另~类是可用数值方法处理的原理性知识。就三维编织复合材料设计这~具体领域而言,涉及到编织件的几何结构、尺寸关连、尺寸约束、特征关连、模型实例、材料性能、参数计算等诸多方面。设计知识不仅包括专家对设计对象的结构特征、功能特征等内在性质的认识程度,以及许多确定各参数的计算原理和公式。设计对象知识的表达和应用是提高相应的智能设计系统性能的关键所在。在建立智能设计系统时,要求既能表达领域对象的静态属性、行为特征与设计约束,又能表达专家经验和判断决策等方面知识,还要有较强的数值计算能力及过程控制能力。而面向对象的知识表示(OOKR)方法恰好具有这样的能力,它以“对象”为中心,将对象的属性动态行为特征相关领域知识和数据处理方法等有关知识“封装”在表达对象的结构中。这种知识表示方法既集中了各种单一知识表示方法的优点,又符合人类专家对设计对象的认识21 第三章系统F发关键技术研究模式。面向对象的方法学提供了从一般到特殊的演绎手段(如继承等),又提供了从特殊到一般的归纳形式(如对象类的表达等),是一种很好的认知模式,在较高层次上模拟了人的思维。面向对象的思维认为一个好的系统应该把系统设计看成是一些不可变部分的最小集合所组成,这些不可变部分能用一种统一的、通用的框架去描述。由此形成的面向对象方法学具有以下基本点:(1)抽象机制;(2)操作机制;(3)封装机制;(4)继承机制。面向对象的知识表示方法(OOKR)将多种单一的知识表示方法按照面向对象的程序原则组合成一种混合知识表示形式。在OOKR中,对象是表达属性结构、相关知识领域、属性操作过程及知识使用方法的综合实体。对象类是一类对象的抽象描述,而对象的实例则是指具体的对象,它将由四类槽组成:(1)关系槽;(2)属性槽;(3)方法槽;(4)规则槽。从而包括了前面所述的几种知识表达方式。3.1.4面向对象的程序设计面向对象的程序设计(Object—OriantedProgramming,OOP)方法采用“对象+消息”的程序设计模式,尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界、解决问题的方法与过程【】o】。面向对象的编程采用了结构化的编程思想,并把它与几个以新的方式达到编程任务的新概念相结合进行面向对象风格编程时,把一个问题分解成有关部件的子组,用这些子组来考虑有关的代码和数据,再把这些子组组织为一个层次化的结构。最后,把这些子组翻译成称作对象的自主式单元。面向对象编程的特点在于提出了对象这样一个集合概念,而将被操作的数据和操作函数作为它的属性和行为。在面向对象的程序中,对象的属性不能由外部直接存取,而是由对象的行为来操纵。当对象接受一个信息时,就引用对象的行为(动作)。这样一个应用程序乃至整个计算机都成为~个对象的集合体,对象彼此之间通过消息相互作用,程序具有更好的模块化结构,维护更具方便性。在分析阶段,编程人员主要考虑如何定义程序中的各种数据类:怎样利用类的继承使类定义中的冗余代码量最小;怎样利用类的封装性,使得数据得到保护,而不是像以往传统的结构化设计那样.系统分析阶段主要考虑如何划分功能模块,各个模块完成什么工作。vc++作为面向对象的程序设计语言,类(Object)是程序设计的核心。运用类的封装性,把基类与各子类分别封装为各个不透明的整体,利用接口技术实现基类与子类之间的信息传输,可以保证零件系统各子类之间的独立性,并且实现 第三章系统开发若键技术研究总体系统的可扩展性与可重构性。采用面向对象技术编写程序通常有以下几个特点:(1)程序开发周期短由于开发环境采用了大量的可视化和程序源代码自动生成技术,使得程序开发界面部分的编程工作变得非常直观和简洁,这样程序开发人员就能够将主要精力集中在具体问题算法的设计上,而不必象过去那样因编写界面而耗去大量精力,从而提高了编程效率,缩短了开发周期。(2)编写的程序操作方便采用面向对象技术编写的程序通常都提供了大量的图形用户界面,操作人员可以在系统提供的在线帮助下通过鼠标和功能健进行准确的操作。(3)程序的维护、扩展和升级容易采用面向对象技术编写的程序通常都提供了高级语言接口,这便于程序功能的扩展、升级和用户对程序的二次开发。3.2基于特征的参数化设计3.2.1参数化设计参数化设计是新一代智能化、集成化CAD系统的核心内容,它不仅可使CAD系统具有交互式绘图功能,还具有自动绘图的功能。参数化设计就是用几何约束来确定产品模型的形状特性,通过参数这种驱动机制,可以对图形的几何数据进行参数化修改。在修改阐述的同时,必须还要满足图形的约束条件,需要约束间关联性的驱动机制来保证约束联动。对一个图形,可能的约束十分复杂,而且数量很大。而实际由用户控制的,即能够独立变化的参数一般只有几个,称之为主参数或主约束;其它约束可由图形结构特征确定或与主约束有确定关系,称之为次约束。利用参数化设计手段开发出来的专用产品设计系统,可使设计入员从大量繁重而琐碎的绘图工作中解脱出来。可以大大提高设计速度,并减少信息的存储量。其主要技术特征是:基于特征、全尺寸约束、尺寸驱动设计修改、全数据相关。(1)基于特征:将某些具有代表性的平面几何形状定义为特征,并将其所有尺寸存为可调参数,进而形成实体,以此为基础来进行更为复杂的几何形体的构造。(2)全尺寸约束:将形状和尺寸联合起来考虑,通过尺寸约束来实现对几何 第二章系统开发关键技术硎『宄形状的控制。造型必须以完整的尺寸参数为出发点(全约束),不能漏注尺寸(欠约束),不能多注尺寸(过约束)。(3)尺寸驱动设计修改:通过编辑尺寸数值来驱动几何形状的改变。(4)全数据相关:尺寸参数的修改导致其它相关模块中的相关尺寸得以全盘更新。参数化为产品模型的可变性、可重用性、并行设计等提供了手段,使用户可以利用以前的模型方便地重建模型,并可以在遵循原设计意图的情况下方便地改动模型,生成系列产品。3,2.2特征建模技术人们为了定义几何图形描述的工程意义,提出了特征的概念。特征是构成产品信息模型的结构单元,它可以支持产品活动不同过程、不同层次的需求,实现这些过程之间的数据传递。它包含了产品特定几何形状、拓扑关系、典型功能、模型表示方法、制造技术和公差要求等。在产品建模过程中,特征是对产品的高层次信息描述,它代表一定的几何形状以及与之相关的工程语义,与产品类型、应用领域和抽象级别密切相关。将特征建模引入产品设计中,有助于将设计意匿直接贯彻到产品全生命周期内的各个阶段,使设计人员摆脱了传统的基于几何拓扑的低层次建模方式,完全脱离了几何造型点、线、面的约束,提高了产品设计的效率和模块化程度。现代的各种商品化CAD软件中,特征造型技术己被广泛采用。产品定义数据可以由形状特征、技术特征、性能特征等其它特征来表示,其中形状特征是构成零件形状的基本单元,是零件模型的关键要素。零件的结构形状可以看作是形状特征通过一定方式的排列与组合得到的,而形状特征问的连接方式是由形状特征在零件中的位置决定的,根据形状特征在产品中的位置关系,形状特征可进一步划分为主形状特征和辅形状特征。在本系统编织件的三维建模过程中,我们充分利用了不同几何形状编织件的横截面形状特征。3.2.3基于特征的参数化设计技术参数化特征造型技术就是将特征造型技术与参数化设计方法有祝结合起来,实现对多种设计方法和设计形式的支持。参数化特征造型技术将三维模型几何体的多个体素结合起来,形成咀特征为操作单位的新语义实体,包含比几何实体更多的模型描述。对于一个给定的特征,其构成体素间的拓扑关系是不变的,特征 第三章系统开发关键技术研究形状的变化只能通过为特征中各参数赋予不同值进行修改,而不用直接改变几何体素的位置,这就大大方便了零件的设计和修改过程,提高了设计的效率和准确性。参数化特征造型的关键是特征及其相关尺寸、公差等的变量化描述。特征(严格讲是语义特征)可视为包含三类属性的面向几何的实体:数据属性包含特征的静态信息;方法属性定义特征特定的设计与制造特性:关系属性描述特征间的相互依赖关系或形状特征间的位置关系。形状特征实际上是几何实体的无任何语义的结构化组合,它与语义特征间是一对多的关系。参数化特征造型如图3.1所示。它主要包含下列要素:设计模型描述为形状特征的集合:形状特征有对应于拓扑的固定几何体素;几何体素可以是实体、线框或者或曲面模型;约束由设计者在设计中显式提供,以完全满足特征所有属性的要求;几何体素的构成与位置以三维几何构成知识为基础,通过给定约束的评测结果而决定。型冀等塞定性约柬翌鐾势塞定量药秉逻辑约束。j.⋯’吝;.1参数化特征造亟的描述3.2.4PRO/E环境基于特征的参数化建模Pro/E是一套由设计至生产的自动化软件,是新一代的产品造型系统,除了强调真实的3D模型,弥补了面、线结构的不足,它还提出了单一数据库、参数化、基于特征、全相关的CAD设计思想,表现出了不同于一般CAD软件的优越建模特征。其特点如下:1)参数化建模思想(ParametricModeling)Pro/E是第一套将参数化设计理论应用于实际工程的应用软件。参数化设计 筇三币系统开发关键技术研究思想是PTC公司的核心设计思想,直接挑战传统模型设计思想。又因为Pro/E是基于特征的实体化模型系统,它的参数化包含特征截面几何的全参数化、零件模型的全参数化、装配体模型的全参数化,并且在很多方面都体现出来,如:●特征尺寸的更改可以引起特征的变化●特征与特征间可以建立数学函数关系,使特征之间表现出一种互动关系●特征之间存在依赖关系(如父子关系)2)基于特征建摸的思想(Feature—BasedModeling)特征是对有实际工程意义的图元的高级抽象。Pro/E是采用参数化设计的、基于特征的实体模型系统,工程设计人员可采用基于特征的功能去生成模型,如腔、壳、圆角、加筋等,可以勾画草图,比较方便的改变模型。这~功能特性给工程设计者提供了在设计上的简易和灵活。3)单一数据库(SingleDataBase)和完全关联性(FullAssociability)所谓单一数据库,就是工程中的资料全部来自一个库;所谓完全关联性,是指Pro/E的所有模块都是全相关的。Pro/E设计概念是从三维实体模型产生二维工程样图,并且自动标注相关尺寸,这就意味着,不论设计者在三维和二维环境下修改任何尺寸,其关联的二维和三维实体模型、模具都将自动更改。在产品开发过程中,用户在任何时候所做的更改,都会扩展到整个设计中,同时自动更新所有的工程文档。这种独特的数据结构与工程设计的完美结合,使得设计更优化。在PRO/E环境下,三维实体建模技术除了手动方法,还有几何特征程序自动建模的方法。对于几何特征的程序自动建模,又可以通过三种方法来实现:特征描述法、族表法和用户定义特征法。这三种方法各有特点,经过比较后,我们对三维编织件的三维建模采用用户定义特征法。采用用户定义特征法,首先预先手工构建产品模型。模型创建后定义要包含的几何特征、参考基准、可变尺寸以及可变尺寸的记号,然后将这些信息存为一个后缀为.gph的文件。这样就可以在程序中通过这个文件来改变可变尺寸,产生所需的衍生件。这种方法适用于特定产品的特定结构,有利于设计者根据产品特征快速生成几何模型。创建常用编织件几何模型的步骤如下:①创建常用编织件的各种模型(如工型、十字型、L型、T型、u型、v型等),设定模型几何特征、可变尺寸记号,建立实体尺寸联系,生成.gph的文件。②使用Vc++工具,编写PRO/E与用户界面、数据库SQLServer的专用接口程序,实现用户与PRO/E接口的交互。③通过访问数据库与计算得到的数据,驱动模型库中相应实体,重新生 第三章系统开发关毽技术研究成常用三维编织件实体。建立了基于特征的参数化零件模型库后,下图3.2显示了基于特征的参数化常用编织件建模设计过程。在进行设计时,用户选取常用零件模型库中的零件模型,则系统会自动建立常用零件系统参数模型,以设计参数来确定系统内各参数,驱动零件的参数化特征模型,自动生成零件实体。图3.2基于特征的参数化编织件建模设计过程3.3ProlE=次开发技术研究未经开发的cAD支撑软件仅能作为一种绘图工具,而在不周层次上的有针对性的应用开发则可赋予CAD软件智能化的设计功能。基于CAD支撑软件的二次发应用程序是沟通支撑软件与最终用户的桥梁与纽带。所谓的二次开发就是将专业对象所遵循的各种规范、习惯、经验,以约束关系的形式增j3HNIJCAD平台系统中去,对这一cAD系统进行再次开发。企业要想最大效率的发挥出软件的功能,必须根据企业的产品特征和企业状况对软件进行二次开发。在本系统中,通过在统一的编织件模型基础上,开发内嵌于Pro/E系统中的用户菜单、应用程序界面,实现输入基本参数、根据知识库内容推理模型结构、知识重用以及编织件参数驱动功能,于Pro/E中显示新创建的编织件,并可完成排纱工艺设计,进行设计结果输出。3.3.1ProlE系统二次开发工具1.二次开发工具的选择Pro/E提供了多种层次开发方法,根据层次的高低用户的灵活性不同,开发方法如下:(1)族表(FmmilyTable)族表是Pro/E提供给用户一个工具,不需要编制程序,功能十分有限。通过27 第三章系统开发关键技术研究族表用户可以方便的管理具有相同或相似结构的零件,特别适合标准件库的建立和管理。族表通过建立通用性零件为父零件,然后在此基础上对尺寸参数进行控制来生成派生零件。族表通过表格来管理,常常被称为表格驱动。(2)用户定义特征(UDF)用户定义特征也是系统提供给用户的工具,通过这个工具,用户可以将几个特征组成为一个自定义特征。系统以gpb文件保存用户定义特征,调用时作为一个整体出现。用户定义特征有利于用户根据产品特征快速生成三维模型,提高设计效率。(3)Pro/ProgramPro/E对于每个模型都提供了一个主要设计步骤和参数列表记载工具——Pro/Program。它是一种类似于BASIC的高级语言格式,用户可以根据设计需要来编辑模型的Program,使其作为一段程序来工作,通过运行该程序来控制系统参数、特征显示和特征尺寸参数等。Pro/Program不能调用系统函数,功能十分有限。Pro/Program的基本语法包括INPUT、RELATIONS、EXECUTE、ADD等语句。(4)J-LinkJ-Link是Pro/E提供的基于JAVA语言的高级二次开发工具包,功能强大。用户可以通过JAVA编程来扩充系统的功能或定制基于产品的设计模块。(5)Pro/Toolkit!“1Pro/Toolkit是PTC公司为Pro/E软件提供的开发工具包,不同于J—Link的是它是基于c语言的,其主要目的是让用户或第三方通过c程序代码扩充Pro/E系统的功能,开发基于Pro/E系统的应用程序模块,从而满足用户的特殊要求。Pro/ToolkitT具包提供了开发Pro/E所需的函数库文件和头文件,使用户编写的应用程序能够安全地控制和访问Pro/E,并可实现应用程序模块与Pro/E系统的无缝集成。本次设计采用Pro/Toolkit开发工具进行程序的二次开发,选用面向对象开发工具VC++6.O作为系统开发工具,并采用SQLServer2000作为数据库支持工具。2.Pro/Toolkit特点与结构Pro/Toolkit采用面向对象的程序设计方法(OOP)。在Pro/E和应用程序之间主要是通过数据结构来传递信息,对应用程序来说这种数据结构并不直接访问,而只能通过Pro/Toolkit提供的函数来访问。它为开发者提供了大量的C语言函数,基本上涵盖了Pro/E绘图模块的所有动作。Pro/Toolkit最基本的概念是对象(Object)和行为(action)。Pro/Toolkit的对象实质是一种类型为结构体的数据,结构体中的成员描述了该对象的属性。 第三章系统开发关键技术研究对象的命名约定为:Pro十<对象名>,其中对象名用英文单词表示,第一个字母大写,如ProFeature(特征对象)、ProSo]id(实体对象)。对特定的Pro/Toolkit对像执行的某种操作称为行为。行为的执行是通过调用Pro/Toolkit函数库提供的C函数来实现。行为的命名约定为:Pro+<对象名>+<动作),表示<对象名)和<动作>的英文单词首写字母均用大写表示,如:ProSolidRegenerate0(实体再生)、ProFeatureDelete0(特征删除)。开发人员可以借助第三方编译环境(c、VC一-+),通过调用Pro/Toolkit软件包中的库函数与头文件,直接访问Pro/E软件几乎所有的底层数据资源。3.3.2利用Pro/Toolkit开发应用程序的方式Pro/Toolkit的应用程序采用C语言,利用Pro/Toolkit的函数库来开发。Pro/E为应用程序提供两种工作模式:同步模式(SynchronousMode)和异步模式(AsynchronousMode),由于异步模式利用远程调用与主程序通讯,交互的效率比较低,且应用比较复杂,而同步模式启动与停止完全在主程序环境下控制,可以做到与Pro/E设计环境紧密集成,交互通讯效率高,所以本次二次开发使用同步模式。同步模式又分为MultiprocessorMode(多进程模式)或d11(动态链接模式)两种。根据工作模式不同,编译时的生成文件也不同。采用MultiprocessorMode模式工作,必须将源文件编译生成exe文件;若采用dll模式工作,将把源文件生成动态链接库。动态链接库是将Pro/Toolkit应用程序集成到Pro/E中的标准方法,开发编译完成的应用程序以$.dll格式放于由特定的开发描述文件(如protk.dat)指定的路径下,主程序启动时读取protk.dat中有关Pro/Toolkit二次开发程序的位置等相关信息,调用此DLL应用模块,对窗口菜单项及其所对应的功能函数进行定制。’在本系统中,我们采用DLL模式来开发Pro/Toolkit应用程序。3.3。3Pro/Toolkit应用程序主要内容Pro/Toolkit应用程序主要包括三部分:头文件、主程序、自定义函数。头文件:每个Pro/Toolkit应用程序必须包含Pro/Toolkit.h,放在所有文件之前。主程序:Pro/Toolkit应用程序的主程序必须包含User_fnitialize0和User—terminate0两个接口函数,它们都是由开发者编写,由主程序调用。函数User—initialize0由主程序在启动时调用,也是二次开发程序的唯一入口, 笫:三章系统开发关键技术硼究它运行程序初始化操作,一般是对环境菜单和菜单项所对应的函数做出定义。函数Userterminate0由主程序在退出时调用,如释放内存、提示信息等善后处理可在此函数中编写。在Pro/E会话结束时被调用。本次开发通过在主程序中调用相应的对话框,实现DLL的动态调用,从而保证了各个子系统的相互独立。用户自定义函数:这是用户自己编写的部分,在本系统的菜单设计中它对应Pro/E界面上添加菜单中按钮的动作,这些动作通过函数来实现。在主程序中编写自定义函数实现模型的调用、参数传递以及再生,相应的底层函数有:ProMdlCurrentGet(&p—model)//获得当前模型ProSolidlnitPRO_PROTO((Solidname,PR吐PART,&p_handle))://模型初始化函数ProRelsetRelationsGet(&p—relset,&w_array)://重置模型关系ProUtiICe]1ectParameters(&sel—item,&pars)://收集所有参数ProParameterValueGet(&pars[i],&value)://获得参数原值函数ProParamvalueTypeGet(&value,&value—type)://获得参数类型函数等等。3.3.4Pro/TooIkit二次开发步骤使用Pro/Toolkit开发应用程序包含三个步骤:编写vC++源文件(包括资源文件和程序源文件);生成可执行文件;在Pro/E中注册可执行文件并运行。I)编写VC++源文件源文件包括三种类型:菜单文件、窗口信息文件$nc程序。★菜单文件:分为完整菜单(以mnu为后缀名)和辅助菜单(以aux为后缀名)。完整菜单是指独立于Pro/E原有菜单,并且具有完整结构的菜单。辅助菜单是指在Pro/E原有菜单中添加的菜单按钮。这个按钮的名称不能与Pro/E中的菜单按钮同名。他是对原有Pro/E菜单的补充。菜单文件的标准格式为:(菜单标题组)+若干个<菜单命令组)。具体如下所示:<菜单标题>//菜单标题组<空行><菜单命令的名称)//菜单命令组<菜单命令的提示信息>30 第三章系统开发关键挫术研究<空行或信息替换行)★窗口信息文件:窗口信息文件是含有在调用某些需要人机交互的函数时在屏幕上显示的提示信息。他是txt为后缀的文本文档。他是由若干个<提示信息组>构成,每个信息提示组由下列四行构成:<提示信息的关键字><提示信息的内容><空行>★c程序:c程序文件包含用户定义的菜单内容与菜单动作。在定义动作函数时可以调用本身的Pro/Toolkit函数,也可以调用用户自定义函数。为了将菜单文件载入,需要在c文件中完成菜单调入,菜单注册和菜单动作定义三个步骤。2)生成可执行文件Pro/Toolkit应用程序在Visualc++环境下编译(Compile)无错后,还必须在命令提示符下编译、链接(nmake),生成可执行的.exe或.。本次开发即采.dll用动态链接库的方式。3)注册可执行文件并运行要使可执行文件能够集成到Pro/E当中并可以运行,必须要创建一个名为protk.dat的注册文件格式如下:name<应用程序名称>startup<设定工作模式>exec—file<生成的可执行文件或动态链接库的位置>text—dir<资源文件(菜单文件、对话框文件、窗口信息文件)的位置>revision<所使用的PRO/E版本号)end<结束>‘Pro/Toolit应用程序在Pro/E中注册成功后就可以运行了。此时,你所编辑的新菜单或新菜单按钮就会出现在菜单中,选中它就能完成你所定义的动作。3.3.5Pro/E系统菜单开发技术菜单是Pro/E的主要用户界面,基于Pro/E的二次开发系统菜单是实现用户由通用Pro/E软件进入专用Pro/E开发系统的接口。Pro/Too]it提供了一系列菜单操作函数,允许应用程序创建和管理菜单。Pro/E为外部应用程序提供TDLL模式,在Vc++环境中可以直接调用Pro/Too]it软件包中关于添力NPro/E菜单的头文件和 籀三辛系统开发关键技术研究底层函数,添加Pr。/E用户化菜单,从而实现Pro/E与二次开发系统的通讯接口。在本系统中,我们在Pro/E的下拉菜单“:[具”后面添加了两个主菜单“零件”和“排纱”,“零件”主菜单下又有一些子菜单。下面图3.3给址IPro/E中添加的二次开发系统菜单示意图。图3.3Pro/E中添加的二次开发系统菜单示意图本系统中添加的菜单函数有(以零件为例)://添加[零件]主菜单在[工具]后ProMenubarMenuAdd(”零件”,”零件”,”工具”,PR0-B—TRUE,UserMsg)://在[零件]主菜单下添加[T型]子菜单ProMenubarmenuMenuAdd(”零件”,”T型”,”T型”,NULL,PROBTRUE,UserMsg);//定义菜单按钮“T型”的动作所调用函数ProCmdActionAdd(”T型”,(uiCmdCmdActFn)GetFeature,uiCmdPrioDefaultTestAccessDefault,PRO_B—TRUE,PR0一B~TRUE,&cmd—id);如果需要,还可以利用ProMenubarmenuPushbuttonkdd0函数在某个一级子菜单下添加二级予菜单。 第三章系统开发关键技术研究3.3。6Pro/E。Pro/TooIkit程序与VC++程序之间的通讯目前,Pro/Toolkit还没有提供数据库编程接口,对话框的编程接口虽然提供,但远没有vc++的对话框资源来的丰富,而且系统采用客户机/服务器模式,仅靠Pro/T00lkit工具更是无法实现。因此,本系统用户对话框界面的开发与设计数据库的访问是利用Visualc++6.O来实现的,而对于零件模板的选择、参数的传递、再生等则由Pro/Toolkit来实现,并最终通过Pro/Toolkit把Pro/E环境和Visualc++程序开发环境连接起来,实现系统的运行。从上面的分析可以看出,要保证整个系统的畅通、稳定运行,关键在于保证Pro/roolkit应用程序、Pro/E系统、VC++应用程序三者之间通讯的流畅和可靠。为此,本系统采用了动态连接库(DLL)的方式来实现三者之间的通讯,如图3.4所示。由于通讯是通过直接的函数调用来实现的,所以具有执行速度快的优点。Pro/E系统越方式Pro,roolkit应用程序九dllrill方式vc抖应用程序B.越图3.4Pro/E,Pro/Toolkit与Vc十+之间的通讯实现方案3.4数据库技术研究数据库在本次设计中起着数据支撑的作用,它包括了设计所需各类设计数据表,是整个系统实现的基础。系统开发中数据库采用SQLServer2000,它是一个大型数据库管理系统,具有客户机/服务器体系结构,采用Transact-SQL语言在客户机和服务器之间传递客户机的请求和服务器的处理结果{2⋯.Server2000拥有许多优秀的特点,如受到用户欢迎的易用性、适合分布式组织的伸缩性、与许多其他服务器软件紧密关联的继承性、适于决策支持的数据仓库功能、卓越的性能价格毖等,因此我们选用Server2000对设计数据进行管理。3.4.1基于ODBC的数据库访问技术VisualC十十提供了多种多样的数据库访问技术,主要有ODBC(OpenDatabaseConnectivity,开放数据库互连)、DAO(DataAccessObject,数据访问对象)、OLEDB(ObjectLinkandEmbeddingDatabase,对象链接与嵌入数据库)和ADO(ActiveXDataObject,Activex数据对象)等几种。这些技术各有自己的特33 第三章系统开筮关键投术研究点,它们提供了简单、灵活、访问速度快、可扩展性好的丌发技术。ODBC是Microsoft提供的通用数据库访问技术,提供了访问所有类型的相关和不相关信息的通用程序。ODBC为不同的数据库(如Access数据库、SQLSever数据库)提供了统一的访问接口,可通过选择使用ODBCAPI和MFcODBC技术来分别进行底层操作和高层访问。SOL是一种标准的数据库访问语言,ODBC不仅定义]"SOL语法规则,而且还定义了C语言同SOL的数据库接口。经过编译的C或c++程序就可以对任何带有ODBC驱动程序的数据库管理系统访问。本系统就是在VC++6.of利用ODBC技术和SOL语言实现对系统数据库的操作。ODBC由应用程序、ODBC管理器、ODBC驱动程序、数据源四个部分组成,如图3.5N示。其核心是ODBC管理器。图3.5ODBC的组成ODBC技术为编写关系型数据库的客户端软件提供了统一的接口,使用它提供的API函数的应用程序,可以与任何具有ODBC驱动程序的数据库客户端应用程序进行通信。ODBC驱动程序管理器调用ODBC驱动程序中的函数,实现对数据库的操所,ODBC的数据接口体系结构如图3.6。图3.6基于ODBC的数据接口体系结构图3.4.2网络数据库管理技术C/S是由客户机和服务器合作完成的二层结构系统平台模式。C/S采用34 第三章系统开发关键技术研究Client(客户应用代码)和Server(数据库服务代码)实现用户界面处理、业务功能处理和数据处理等功能,图3.7说明了c/s模式的数据处理模式。client向Server发送用SQL编写的应用请求代码,数据库服务代码Server处理后得到的结果(数据)通过中间件传回给C1ient,为了发送SQL,Client必须明白Server语法、Server地址、数据库的组织方式、数据结构以及数据的有效性完整性等特征,同时回传的结果必须被C1ient识别。使用户界面处理、业务功能处理、数据处理这三个子模型相互独立,分别由不同的资源、代码来实现,由此形成浏览器/服务器(B/S)模式。在B/S模式中,客户端的标准配置是浏览器,如MicrosoftInternetExplorer(IE),业务功能处理模块从c/s代码中彻底分离出来,由独立的应用服务器处理,web服务器成为应用服务的标准处理方式,数据处理仍然由数据库服务器(DatabaseServer)处理。图3.8为B/S模式构成和数据处理方式。B/S模式是三层分布结构,印浏览器一web服务器一数据库服务器。SQL请求返回结集图3.7c/s模式构成和数据处理模式图3.8B/s模式构成和数据处理方式分析比较c/s和B/S模式,可以发现:.C/S只有两层逻辑结构,而B/S为三层逻辑结构,因此,C/S的网络通信量 第三章系统开发关键拉术研究要低于B/S模式,而且,对于相同的任务,c/S的运行速度要ELB/S快一些;.C/S在客户端有一套完整的应用程序,可以有很强的交互性;.B/S在客户端安装的是标准通用的浏览器,而无需象C/S模式那样在不同的客户端安装不同的应用程序;.B/S模式的功能和任务都能在web服务器上实现,使开发和维护工作简单易行。考虑C/S模式体系结构有很强的人机交互性,处理的数据量大的特点和本系统的实际需要,因此,在本系统中,选用C/S模式体系。并且服务器与客户机端均选用SQLServer2000作为数据库。 第叫章三维编织工艺及编织物的几何模型第四章三维编织工艺及编织物的几何模型三维编织预制件的纱线构造决定了以其增强的复合材料的细观结构,同时也是分析三维编织复合材料力学性能的基础。为了预测三维编织结构复合材料的性能和进行优化设计,必须要掌握三维编织复合材料内部细观组织特性,即材料单胞内纤维束与基体在空间上的几何分布规律。随着三维编织复合材料应用的日益广泛,且由于三维编织复合材料的优异性能是与细观结构密切相关的,深入研究其细观结构显得尤为重要。为了预测三维编织复合材料的性能,人们对三维编织结构作了大量的研究,提出了各种各样的单元体模型。本文给出了一种描述三维编织预制件的纱线编织结构的分析方法,分析了编织纱线的运动规律。在此基础上,提出三维编织预制件的结构单胞模型,以建立工艺设计的理论基础。4.1编织方法简介自从20世纪60年代后期以来提出了许多三维编织的概念,新的编织方法至今还在不断的探索中,其中三维编织即四步法和二步法代表了该领域的主流,应用较广。在二步法编织中,轴向纱不动而编织纱围绕着轴向纱而运动,因此,轴向纱提高纵向的刚度和强度,降低洎松收缩系数。在制造二步法中,有高度的灵活性,主要表现在轴向纱、编织纱的材料和几何参数的选择。在织造四步法织物时,其灵活性没有二步法织物强。在编织过程中,所有纱线的织梭改变它们的位置,而且不能保证笔直的外形。因此,编织表现了相对高的泊松收缩系数,为了增强纵向的刚度和强度,经常放置一些笔直不动纱。可以说明,四步法和二步法编织仅仅是属于总的编织系统中的两种方法,在编织机上,插入一些轴向纱且将编织纱放在特定的位置,四步法编织工艺就能转换成二步法编织工艺。4.1.1=步法编织(2一stepbraiding)在二步法中,笔直的轴向纱所卷绕,轴向纱的安排决定了编织纱的数量和编织物的截面积.纱线按工艺顺序的运动过程:第一步,编织纱沿着对角线方向穿过 第叫章三维编织T艺及编织物的几何模型轴向纱而运动:第二步,它们沿着另一个对角线方向而运动.⋯个机器循环分两步,重复这个过程就能得到需要的织物长度.虽然机器运动仅包括两步,每一编织纱移动通过结构的很大部分,这可以从重复的二步法机器动作中跟踪一根编织纱的路径看出,所有编织纱通过的路径将完全紧固轴向纱,而且将它们锁为所需要的形状.与其它的三维编织工艺相比,二步法编织具有一些独特的优点,一个相对简单的编织纱运动程序就能形成各种各样的形状.在编织过程中的每一步中所有的编织纱同时地在轴向纱排列的外边,因此,完全可能向结构中加进不同种类的轴向纱或者重新安排轴向纱的几何形状,以改变预成形织物的横截面。而且,轴向纱的数量可以很多,这种纤维结构可以做得高度密实,以满足应用上的需要,4.1。2四步法编织(4一stepbraiding)在四步法编织中,编织中,编织纱通过它们之间的相对位移而相互卷绕,即所有的纱线全部参与编织运动,在一个机器循环的四步中,第三步和第四步的移动与第一步和第二步的移动相反.四步法编织工艺涉及到行和列四个不同的垂直运动,四步法工艺而且可进一步分为lxl,lx3,lx5和lxlxl/2F等,这取决于行和列之间移动位置的相对关系。第一位数字代表纱梭每次沿横(列)向运动的步距,第二位数字则代表纱梭每次沿列(横)向运动的步距。lxlxl/2F编织模式除了按lxl方式编织外,在结构内部还存在着编织纱线总数目一半的轴向纱线。不同的编织模式将得到不同类型的织物实体。由于ixl方式最为简单而且应用得最为广泛,因此,通常被用作四步法编织工艺的代表来讨论。对于mxn维1xl方式矩形截面编织结构,纱线的总数目为N=mn+m+n.4.2三维编织工艺理论立体编织物按其横截面的形状分为两大类,一类是矩形与矩形组合形状(如T字形、工字形、十字形等);另一类是圆形,如圆管状、锥管状立体编织物。下面主要介绍矩形横截面织物的四步编织法。4.2.1四步法lXl编织工艺三维编织中,编织纱线由携纱器携带,并且按预制件的横截面形状排列,通过携纱器携带编织纱线运动,使编织纱线彼此相互交织,因此纱线编织结构主要取决于携纱器的运动规律。以四步法lxl方型编织为例,主体携纱器排成m行和n 第四青三毒}}编织工艺及编织物的几何模型列的主体阵列,附加携纱器间隔排列在主体阵列的周围。每一携纱器上携带一根编织纱线,编织过程由行和列的四步间歇运动实现,图4.1表明了在一个编织循环周期里携纱器模式和运动步骤。根据预制件的横截面形状设计初始携纱器的排布,在每个携纱器运动步骤里,携纱器沿着行或列仅运动一个位置。携纱器的运动分为四步:(1)交错移动各行。(2)交错移动各列。(3)按照与第一步相反的方向交错移动各行。(4)按照与第二步相反的方向交错移动各列。以上四步构成一个机器循环。在一个机器循环中获得的预制件长度定义为花节长度,用h标识。重复上述编织步骤,纱线将相互交织而形成一定长度的预制件。精确的携纱器排列模式表明了预制件的横截面形状,一个方型预制件通常表示成mXn的形式,其中Iil是携纱器在机器底盘上排列的主体纱的行数,n是主体纱的列数。预制件中编织纱线的总根数N为:N=mn+m+n=(Ⅲ+1)(n+1)一I因此,图4.1中所示的编织纱线总根数为48。Oo100000010olooooo纠y1090000Iofoloo0000Il100060DIo臼一xoio00000Izo稿蛤位置o~o—oaopoI,DoQoDo■oODo口o第一步JI;OoooooooolOoOoOIooIooOjoOofl;簟二步一。一oOoOoODQ凸oDoDoOo第三步IloOo0otf第四步oOo0oDo 第旧章三维编织【艺及编织物的几何模型4.2.2基本假设图4.1四步法lxl编织过程的纱线运动为了分析四步法三维方型编织预制件的细观结构,建立如下假设:(1)预制件的内部编织纱线(纤维束)的横截面为椭圆形,短轴标识为d,横截面的变形因子为k;(2)编织纱线具有相同的几何特性;(3)编织过程稳定,编织结构均匀;(4)编织纱线具有相同的纱线填充因子。。在以上的四个假设中,假设(3)在实际的加工过程中基本上可以满足假设;假设(1)中编织纱线的横截面为椭圆形比较理想化,忽略了编织纱线在交织点的挤压变形,但考虑到研究问题方便,故采用椭圆的方程进行相应的推导运算;假设(4)编织纱线具有相同的纱线填充因子也是一种理想状态,而实际上,从预制件到复合材料,由于固化模具的挤压和预制件形状的改变,纱线填充因子将发生相应的变化。假设(2)和(4)都有一定的局限性,限制了不同纱线的混杂编织。虽然有些假设是理想状态,但与实际偏差不大,且不影响由此产生的结论的正确-眭。4.2.3复合固化过程中的形变预制件横截面的精确尺寸取决于所使用的纱线和纱线的挤紧情况。然而在复合固化过程中,预制件的尺寸和形状会发生变形。因为固化成型过程中,三维编织预制件将发生变形以适应模具尺寸。但是,通常三维编织预制件是按照最终复合材料的几何尺寸设计的,因此,预制件在固化过程中的尺寸变化一般并不十分显著。最终预制件的横截面将变形至复合材料的横截面形状。内部编织纱线在三维编织复合材料的横截面上的投影与制件厚度方向的夹角,定义为内部编织纱线的水平取向角巾。特别需要指出的是,当是预制件状态时,巾是45度。4.3建立数学(几何)分析模型4.3.1单元几何模型携纱器在内部、表面和棱角区域的运动具有不同的特点,这将导致各个区域 第四章三维编织工艺及编织物的几何模型具有不同的纱线结构。因此,三个区域必须分别对待。通常情况下,在整体结构中棱角单胞仅占很小比例,故假设三维编织复合材料的性能主要由内部单胞和表面单胞决定。图4.2和图4.3分别为预制件内部的编织结构单胞模型和表面的单胞模型。edl-Bceil.ecei!-D图4.2预制件内部的单胞模型cell-F_,cdl-F图4.3预制件表面的单胞模型从图4.2和4.3可以看出,单胞为一六面体形状,预制件内部有四种走向的纱线,与织物成形方向的夹角为内部编织角Y;内部编织角Y在编织物表面的投影为编织角a;内部编织纱线在三维编织复合材料横截面上的投影与制件厚度方向的夹角为内部编织纱线的水平取向角由。预制件表面有两组相互交织的纱线,与制件厚度方向的夹角为表面编织角B(B’):在一个机器循环中所形成的织物的长度称为编织花节长或编织节距,用h表示;内部单胞的取向平行于预制件的表面,且高为编织花节长h,纱线的短轴为d, 第阳章二维编织T艺及编织物的几伺模型其中,A为编织纱线的横截面积,A=p,/p。,p,,成分别为纱线的线密度{g/m)和体密度(g/cm3);k,e分别为纱线横截面的变形因子和纱线填充因子,通常e的取值范围为£=0.70—0.75.4.3.2四步法方型编织的挤紧状态三维编织预制件是一种由不同取向的纱线组成的空间纤维网络结构。在编织过程中,纱线由于张力的作用,以及在每个机器循环后的“打紧”工序,使得预制件内相邻编织纱线彼此接触,处于挤紧状态。否则,结构将处于不稳定状态,编织纱线将重新取向直到挤紧状态。沿与预制件表面成45度角截取一平面,纱线间的空间位置如图4.4所示。为图4.4编织件内部区域的挤紧状态由图4.43#析可得:妊面4d一(2)培ysm2妒根据纱线的挤紧状态,经过一系列推导,可得出纱线横截面的变形因子公式当妒≥450时,k=cosr怕面面i面硼面面i厕:~(3)当妒<450时,k=cosy施面面i面积品丽碉;~(4)42 第四章三维编织工艺及编织物的几何模型编织纱线的横截面变形因子k随内部编织角Y增大而减小,当k=I时,内部编织角y接近最大,编织花节长度h最小:k<1时的情况在编织结构中几乎不存在。4.3.3预制件单胞的几何特征l_内部单胞的几何特征根据定义和假设,可以得到内部单胞的宽度彬和厚度z及内部编织角Y分别为:z=志:彬=击:t97=面4dSlnCOS舻∞,zSlnZD2.表面单胞的几何特征根据定义和假设,可以得到表面单胞的宽度和厚度及表面编织角分别为:沿宽度方向的单胞:瓦:d;睨;旦;郴:-LCOS舻力cos∞沿厚度方向的单胞:Ikd;%,:三;郡t:osinonSlno4.3.4编织角之间的关系从预制件的单胞模型的几何特征,可以推导出内部编织角Y,表面编织角口(口’)和编织角a之间的关系如下:留y:土.留a——(5)sino卵=三1·留&一(6)tgl3’=ctgl50·郴——(7)4.3.5预制件横截面的外形尺寸根据定义,四步法l×1方型编织预制件横截面的宽度w和厚度T分别为W:(n-1)彬+2d:[(H一1)上+2】d——(8)COSo 第叫奇三维编织丁岂及编织物的几何模型T=(脚一1)f+2d=[(聊一1)÷+2]d——(9)设纱线的横截面积为A=WT,内部区域和表面区域的横截面积分别为Ai和As(As’),A,=(删一1)(H一1)WI,A。。2(n一1)W,d=2(m一1)彬d,彳。’=2沏一1)畋’d=2(m一1)T,d,则内部区域和表面区域所占横截面积的比例分别为:,A,(脚一1)(n一1)彬f.。,一_i一——一∥r’c,=鲁=气掣;c,t=鲁=半;4.3.6纤维体积含量在立体编织物内含有高强纤维的体积百分比是立体编织物主要性能指标之一,该指标称为纤维体积含量Vf,它是所有纤维体积与整个立体编织物的体积之比,gIIVf=纤维所占体积/制件总体积。该系数越高,通常复合材料的性能越好。而纤维体积含量取决于两方面,一方面是在立体编织物内并不是所有的空间都被纱线所占领,纱线之间有空隙,就存在纱线体积含量,即所有纱线的体积与立体编织物体积之比;另一方砸每根纱线内并不是所有空间都被纤维所占领,其中有空隙,即存在纱线填充因子,它是纱线内所有纤维的体积与纱线体积之比。因此,纤维体积含量=纱线体积含量×纱线填充因子。在编织物的内部区域单胞中,纤维的体积为F,.:』坠;COSy,单胞的体积为¨,=彬正厅=吉^3t92ysin2日o;.纤维体积含量为蚱,=等=谚享‰=萨i8A面sec7;在编织物的表面区域单胞中,沿宽度方向,纤维的体积为%2盎单胞的体积为吃=%砌=h3tg2卢cosqo;纤维体积含量为K,=嚣=谚丽A=萨iA—面sec]3 第叫章三维编织工艺及编织物的几何模型沿厚度方向,纤维的体积为K.,=丽Ah单胞的体积为圪.。=Ws.dh=h3tg2p’cosq,纤维体积含量为屹一,=由内部单胞和表面单胞的纤维体积含量,兰立:兰:丝!!!旦!~=·—-··--------_---·_:.---—一V可,以得W出,d.嚣鲜蕹枉饔譬垡男:妒可以得出总纤维体积含量为:’_《”c%㈣.,=鲁[≮笋+裂+掣]一。,对以上(1)一(10)各公式经分析、变形整理,得到用于四步法方形编织预制件排纱设计的各公式及计算过程如下:(1)设舻=45。(初始值)(2)辔r=÷-tgasm∞Tt邸={‘tgatg#j=ctgqD·tg§(3)当妒≥45咐,k=cosy怕面面i面积面万碉;当妒<45。时。k=cosy娟面面j面硬磊丽硐;(4)d=。彳:旦pr其中,取£=0.70—0.75;九=o.8(g/m),Pv=1.76ig/cm3)(rr_300碳纤维一12k)Pz=O.4(g/m),Pv=1.76(g/em3)(T-300碳纤维一6k)cs,m=(三一z)s;n妒+tcm取整数,■胛2∞一1)(6)”(7)∞玉(m—-I)匹.|2三隧层数整取们n(、IlIII,J\、●,./一】“_一习 第【门帝三维编织T艺及编织物的几何模型萤(复8)(z:j)l曩AVI()m,-直lX鋈n前-1后)+两2次(n诨-l算)+的2m(m耀-1d)lCOS59s.cos不变,然后,再根据m和。蹄丁Iy肛卢。..1⋯,.⋯一⋯重复(2)一(§),直奎前后两次计算的m和n值不变,然后,再根据m和n值确定p值,进而确定k和d,此时妒、k、d均为定值,从而求出编织花节长:,4dn=一辔ysin2妒 第五章基于知识的三维编织复台利科CAD系统实现第五章基于知识的三维编织复合材料CAD系统实现5.1系统开发方法现代CAD系统的开发必须以系统工程的观点和正确的方法论为指导,以减少和避免开发过程中的失误,提高效率和保证系统的质量。工程化软件的具体要求是:◆正确性:实现软件的全部功能,且保证正确;◆可靠性:软件多次反复使用不失败,出错的概率小于某个指标;◆简明性:表达简明易读,程序内外层次分明,接口简单;◆易维护:能方便地实现校正维护、适应维护和完善性维护;◆结构化设计方法:用大家熟悉的顺序、判断、循环三种基本逻辑分支实现每个模块的程序编制;◆文档齐全、格式规范。软件从丌始设计、开发、实现运行到最后停止使用的整个阶段称之为生存期,一般分为需求分析、总体设计、详细设计、编写代码、测试、运行维护六个阶段,在每个阶段都有其具体内容。1.需求分析阶段:确定软件的开发要求,包括软件应完成的功能、软件的性能和可靠性等;选择软件开发的软硬件环境。2总体设计阶段:明确软件的系统结构,包括划分模块、模块之间的通信等。3.详细设计:把总体设计阶段确定的各个功能模块进一步划分为程序模块。4编码阶段:编写各个程序模块的源代码。5.测试阶段:对软件进行测试,以检查软件在功能和结构方面的缺陷。6.软件维护阶段:软件交付用户使用后,对软件进行纠错、完善和扩充。此外,在软件开发的各个阶段,都要编写详细的开发文档。5.2系统功能和总体结构在需求分析的基础上,首先建立了系统的功能树,从功能角度对整个系统进行描述,确定系统的功能范围。基于知识的三维编织复合材料CAD系统包含三个子系统:知识库管理子系统、三维参数化特征建模子系统和排纱设计子系统。下图5.1给出了系统的功能模型树。47 第五章筚于知识的二维编织复合材利CAD系统实现i!{庠雷亍:蕞统一缚秘敷亿蛄缸[廷槛予系统栅&日子系缓冒圈圜唧明团曰匪驹雕㈣辨图5.1系统的功能模型树知识库管理子系统是通过SQL编程,用于对知识库中的知识进行分类管理和控制,实现对知识的各种操作,如添加、修改、删除等,同时向用户提供检索、查询知识的手段的软件系统,它包括系统的维护、系统事物管理、各种实用程序的管理、知识库系统的安全控制和用户的使用权限管理等。零件三维参数化特征建模子系统在知识库的支持下,通过内部运行机制,采用知识库接口和二次开发工具将知识库的数据输入到通用CAD系统,驱动CAD系统,生成各种不同结构形状的常用编织件的三维实体,实现常用编织件的参数化自动创建功能。排纱设计子系统通过提取实体及截面参数,完成排纱设计功能。5.3.1硬件环境a.处理机的型号:PIII以上。b.内存:256M以上。c.显卡:显存32M或更高d.硬盘容量:40Ge.I/O设备:三键鼠标 第五章基于知识的三维编织复合村祠CAD系统实现5.3.2软件环境a.操作系统:b.CAD软件c.支持系统:d.开发平台:5.4系统的实现Windows2000,XP悄TPro/EWild商re2.OVc++6,0,SQLServer2000Pro/EWildflre2.O5.4.1系统主界面本系统采用参数化进行零件建模,运行的结果主要由参数控制,排纱设计结果也是参数决定的,用户要向系统提供设计参数,就需要系统为用户提供友好的人机交互环境。人一机之间的通讯和对话是通过用户界面UI(UserInterfaceDialogBoxes)来实现的。用户界面是用户和计算机之间的通讯媒体,它不仅承担着输入输出的任务,还负责对界面各程序模块的总控任务。隐藏了导航栏的系统主界面如图5.2所示。图5.2三维编织复合材料CAD系统界面5.4。2零件的参数化三维建模基于三维模型的参数化创建零件的程序设计过程为:针对该零件的设计参数49 第五章-转于知识的三缩编织复台材料CAD系统实现进行编程,实现设计参数的检索、修改和根据新的参数值生成新的三维模型的功能。其过程如图5‘3所示。图5.3基于三维模型的参数化设计实现过程用户在输入信息界面中输入的数据是参数化创建零件实体的依据,使用这些数据驱动模型库中的实体模型,是通过开发人员编写的Pro/Toolkit应用程序实现的。该应用程序调用Pro/Toolkit软件包提供的c函数,实现Pro/E环境下对实体模型进行程序控制的操作。由用户界面输入的数据作为调用C函数的参数,在应用程序执行时,利用Pro/E软件的尺寸驱动特性,根据创建模型时建立的约束关系完成模型自动创建。应用程序中通过调用ProfI"oolkit底层函数得到新参数数值函数ProParamvalueValueGet(),将新参数值赋值给某个已设定参ProParamvalueSet(1,参数驱动生成新零件实体函数ProSolidRegenerate()等函数,将用户界面输入的数据以及程序查询的数据赋值给调用的模型,参数化驱动,重新仓l建零件,产生满足用户设计要求的零件实体。下图5.4是创建U型零件的参数输入界面。图5.4创建U型零件的参数输入界面输入相应的参数:长度L=150,宽度W=44,端距H=22,厚度=7,孔径=22确定后,显示于Pro/E造型如图5.5所示。此零件为三维编织复合材料单耳接头,其横截面总体为u型,上面留圆孔,50 第五章基于知识的三维编织复台利料CAD系统实现纤维材料为Y700。其几何尺寸有两种规定,上述参数为第一种,第二种规定为长度L=180,宽度W=66,端距H=33,厚度=7,孔径=22。图5.5显示于Pro/E的单耳接头造型对于复杂形状的变截面零件,既不便于直接绘制二维图形,而且可视性也差,我们可以先设计出真实的3D模型,弥补了传统面结构、线结构的不足,这些3D模型除了可以将用户的设计思想以最真实的造型在计算机上表现出来之外,我们还可以在Pro/E中随时对模型进行剖切,利用剖切产生的截面可以随时观察零件任意部位的断面情况,并通过对截面的形状和尺寸进行分析、提取出必要的参数来进行后续的排纱工艺设计。下面给出截面形状为矩形,尺寸交化的某零件三维造型,如图5.6所示。图5.6变截面零件三维造型 第五章耩于知识的二维编织复台利}:CAD系统实现为了取零件不同部位的截面,需要确定剖面的位置。下面仅显示插入的两个基准平面DTM2和DTM5,来确定剖面的位置。如图5.7所示。图5.7插入的基准平面DTM2和DTM5在Pro/E系统菜单中选择“视图”——“视图管理器”命令,打开“视图管理器”对话框,用上面的基准平面DTM2创建剖截面Jml,得到截面如下图5.8中打剖面线矩形区域所示。图5.8用基准平面DTM2创建剖截面得到的截面用上面的基准平面DTM5创建剖截面Jm2,得到截面如下图5.9中尺寸较小 第五章基于知识的三维编织复合利料CAD系统实现的打剖面线矩形区域所示。图5.9用基准平面DTM5创建剖截面得到的截面隐藏所有的基准平面后,得到的不同部位的截面情况如下图5.10所示。图5.10不同部位的截面情况图得到的不同部位的截面情况后,我们可以应用Pro/E系统的功能,对截面的形状和尺寸进行分析、提取出截面参数来进行后续的排纱工艺设计,避免了为了得到截面尺寸参数而进行的繁琐的数学计算。在其中我们还可以根据需要为截面设置适当的精确度。 第五章摧于知识的兰维编织复合材料CAD系统实现5.4.3排纱设计界面及功能的实现排纱设计功能是本系统完成的主要的工艺设计功能,通过排沙设计子系统用户可以从绘制好和编辑好的制件截面图形中提取出参数(对于方形编织件主要是厚度和宽度参数),然后通过已知的设计参数,计算出所需的编织工艺参数。系统的排纱设计功能使三维编织工艺设计由计算机来实现,它使得工程技术人员不必把大量的精力耗费在繁琐的计算中,提高了设计的精度,加快了设计的速度,为提高三维编织工艺设计的质量做出了有意义的探索。排纱设计功能的实现主要依赖排纱设计函数YarnDesign0,该函数定义如下://排纱设计函数voidCDesign::YarnDesign(doublew,doub]eT,doubleVf,doubleA){doubleP1,Pv,e,phi,k,d,S,h:doubleR,B,B1:doubletempR,tempB,tempBl:doubleX,Y,M,N:intm,n,m0,nO:P1=mPt:Pv=mPv:e=me:phi=pi/4m=n=mO=nO=O:dofmO=m:n0=n:tempR=(1/sin(phi))*tan(A)R=atan(tempR):tempB=tan(A)/2:B=atan(tempB):tempBl=tan(B)/tan(phi):Bl=atan(tempBl): 第五章基于知识的三维编织复合材料CAD系统实现if(phi>=pi/4)k=cos(R)*sqrt((3/sin(2*phi)+1/tan(2*phi))}(i/sin(2*phi)一i/tan(2*phi))Elsek=cos(R)*sqrt((3/sin(2*phi)一1/tan(2*phi))十(1/sin(2*phi)+l/tan(2*phi))S=PI/Pv:d=sqrt((4*s)/(k*pi*e)):M=(T/d一2)*sin(phi)+1:m=in%(M+O.5):x=vf}w}T/S一2}(m-1)/cos(B1):Y=(m-1)/cos(R)+2/cos(B):N=(X/Y)+1:n=int(卅O.5):phi=atan(((m一1)}(W/d一2))/((n一1){(T/d一2))):Vf=(S/(W*T))}(((m-1)}(n-1)/cos(R))+(2{(n-1)/cos(B))+(2}(m一1)/cos(B1))):)While(((m-mO)>ZEROll((n-nO)>ZERO)):phi=atan(((m一1)}(W/d一2))/((n-1)}(T/d一2))):tempR=(1/sin(phi))*tan(A):R=atan(tempR):tempB=tan(A)/2:B=atan(tempB):tempBl=tan(B)/tan(phi):Bl=atan(tempBl):’if(phi>=pi/4)//纱线横截面的变形因子k=cos(R)*sqrt((3/sin(2*phi)+l/tan(2*phi)){(1/sin(2*phi)一l/tan(2*phi))E1sek=cos(R)*sqrt((3/sin(2*phi)一1/tan(2*phi))}(1/sin(2*phi)+l/tan(2*phi))S=PI/Pv:d=sqrt((4*s)/(k*pi*e)):h=(4*d)/(tan(R)*sin(2*phi))://将计算结果赋值给排纱设计对话框中相应的控件变量,以输出设计结果 第五幸基于知识的_三维编织复台丰j料CAD系统实现Uj—j")--1"1nlm=R1:邢h=h:m_R=R*180/pi:re_phi=phi*lSO/pimVf=Vf:下面给出四步法编织方形编织预制件排纱设计结果。排纱设计界面如下图;图5.11排纱设计对话框在图5.11所示的排纱设计对话框中,用户可以从绘制好的方形预制件横截面图形中提取制件的宽度w和厚度T,或者在对话框中直接输入宽度和厚度的尺寸,然后输入已知的参量,点击下方的排纱设计按钮,则在对话框的右半部分输出排纱结果。如图5.12所示。 第五章基于知识的三维编织复合材料CAD系统实现图5.12排纱设计结果根据前面给出的公式和算法,输入复合材料四步法三维编织工艺设计过程所需的编织参数,利用本系统输出的排纱结果和实验结果进行了对比,下面给出两组数据,结果如表5.1和5.2所示。表5.1计算结果与实验结果比较一己知稿织参鼗计算结果实验结果竞度w㈣=38.o主律纱列藏n37厚度T(商n,一5.o主体炒行教m4纤维体积古tVf=0.Sl花节长度hom)4.164.14缝织角o=25内部鳙织角T(角度)35‘54纱线线密度见=髓B缸h)水平取向舟●伪国纯话纱线体密度所=纤维体积售量vf0.5lo-531.76(ghn|)编坎角a(角度)2526 第五章茉于知识的三维编织复合柯糊CAD系统实现表j.2计算结果与实验结果比较二已知编织参数计葬结果实验结果宽度w(ⅡⅡ)一25.D‘主体纱罗I}敷n32厚度TYhn)一6.O奎体纱{I蔓陆8纤维体积禽量V阁.53花节长度嘶n吣3.023’ol编织角o=27内酃铺织角I(角豳34.66纱线线密度见=0.吨^砷求平取向角巾国度)47.48纱线体密度A,一纤维体积舍ltVfO。52O.53稿螺角4(角度)27281.76国时.从上两表可以看出,纤维体积含量Vf、编织花节长度h和编织角a在一定的误差范围内接近,说明计算结果和实验值吻合较好。 第六帝绑i论与展望第六章结论与展望本文从CAD的发展趋势一知识驱动、参数化设计的关键技术——三维CAD建模出发,结合作者本人研究生阶段的实际工作——三维编织复合材料CAD系统实例,完成了“基于知识的三维编织复合材料CAD系统的研究与实现”论文。本文主要研究内容和创新点有:1.基于特征参数化建模技术的研究。以参数化思想为指导,研究了基于特征的参数化建模方法,实现了常用编织件三维模型的自动生成,创建了常用编织件的模型库,将数据信息集成到三维特征模型,实现了二维工程图的转换,并为cAM/cAPP集成奠定了基础。2.KBE理论的研究及其在建模技术和系统开发中的应用研究知识获取、表达、存储等KBE理论,并将KBE思想与三维建模和Pro/E--次开发技术集成,将设计知识归纳存储,建立了设计知识库,从而实现了设计知识的继承和重用。3.基于Pro/E二次开发关键技术的深入研究。采用面向对象的思想,利用Pro/E的二次开发工具Pro/Toolkit,VC+斗高级语言以及SQLServer数据库实现]"DLL动态链接库与Pro/E的无缝集成,开发了友好的用户界面。4.在上述理论和关键技术的支持下,完成了常用件三维参数化CAD系统。本文虽然对相关理论进行了一定的研究和探讨,并在实际开发中得到了不同程度的应用。但是鉴于时间限制和本人知识的局限,还有许多实际工作需要完善。在本文所做研究工作的基础上,提出进一步的研究设想如下:1.扩充三维图库,尤其是复杂形状的编织件,进一步增强系统功能。2.进一步研究运用神经网络理论和KBE技术,实现更好层次的智能化CAD系统。3.数据库的安全性及维护的进一步完善。 参考文献1.秦玉学,汽车底盘的参数化设计,大连理工大学,车辆工程专业,2003,03:6-72.张亚明,基于设计计算的三维cAD二次开发技术研究,华北工学院,机械设计制造及其自动化,2003,03:2,3.王贤坤,CAD/CAM技术应用与开发,北京机械工业出版社,20014.DaniTH,GadhR,CreationofconceptshapedesignsviaavjrtuaIrealityinterface,Computer—AidedDesign,1997,29(8):555—5635.孙林夫,现代产品设计技术及其发展,中国制造业信息化,2003,1:406.孙林夫,三维CAD关键技术及其发展,中国制造业信息化,2003,04:10—1l7.http:11www,sccp—si,eom/hill/studylhistory.htm8.http://wWw,ahbbe,com,cn/xxh/news—memp,asp?wz—id=1000016419.仲卫利,基于特征的三维参数化磨床关键部件cAD系统研究,机械与汽车工程学院,2003.3:810.范兴柱,基于知识的可重构FAs系统及仿真软件的研究与开发,南京航空航天大学,2002,311.苏建等,数字化工业设计,甘肃工业大学学报,2002,3:39—4012.吴翔,李刚炎,知识在未来产品开发系统中的作用,中国制造业信息化2003,990—9113.孔繁胜,知识库系统原理,杭州:浙江人学出版社,200014.谢友柏,现代设计与知识获取,中国机械工程,1995,7(6):36—4115,KiritsiSB,Areviewofknow]edge—basedexpertsystemsforproeessplanning:methodsandproblems,Int.1AdvklanufTechnol,j995(10):240-26216.孔维亚,钱立新,基于KBE的常规战斗部CAD系统的关键技术研究,机械设计与制造工程,2002,l:16—1717.D.KiritsiS,H,^l,Porchet,GenedcPetrinetmode]fordynamicprocessplanningandsequenceoptjmizatiOD,AdvancedengineeringSoftware.1996,Vol,25,N0:l18.张宇闻,基于领域知识的虚拟产品特征参数化设计,西安:西安电子科技人学,2002,1:1219.钟志华,舟彦伟,现代设计方法,[峒,武汉理工大学出版社,200120.零点工作室,Pro/ENGINEER2003三维造型基础教程,北京:机械工业出版社,2004,921.李燕,基于Pro/E的齿轮三维参数化特征造型设计,制造业自动化,2003,622.吴海华,曾孟雄,基于Pro/E的三维标准件库研究与实现,机械计,2003:31—3223.孙家广,计算机辅助设计技术基础(第二版),清华大学出版社,2000,9 24.董丽华等,Pro/ENGINEERwildfire产品设计到制造,北京:电子工业出版社,2004,925.张红旗、曹文钢,Pro/ENGINEER二次开发技术的应用与研究,2002,1:48—5026.张继寿,Pro/E二次开发教程(1),2002,11:100—104,27.李世国,Pro/TOOLKIT程序设计,北京:机械工业出版社2003,728.李真文,SQLServer2000开发人员指南,北京希望电子出版社,2001,129.Kostar,T,D,andChou,TWDesignandAutomatedFabricationof3-DBraidedPriformsforAdvancedStructuralComposites,ComputerAidedDesigninCompositeMaterialTechnologyII,ElsevierScience.1992,63—7830.Char]esLei,Yun—JiaCai&FrankKo,FiniteelementanalysiSof3-Dbraidedcomposites,AdvancesinEngineeringSoftwarei4(1992)i87-19431.Du,GW,Ko,F,K,UnitCellGeometryof3-DBraidedStructure,J,ofReinforcePlastiesandComposites,1993,12,752—76832.JianhuabanandS,V,Hoa,Athree—dimensionalmultilayercompositefiniteelementforstressanalysiSofeomposite1aminates,Internationaljournalfornumericalmethodsinengineering.1993vol363903~391433.Wang,YQ,andWang,A,S,D,OntheTopologicalYarnStructureof3DRectangularandTubularBraidedperforms,CompositesScienceandTechnology,1994,51,575—58634.YasserA,Gowayed:ChristopherM,Pastore,ProcessScienceModelofTextileMachinery:TheoryandApplicatiorlto3-DimensionalBraiding,39、l’InternationalSAMPESymposiumApril11——14,199435.韩其睿,李嘉禄,李学明,复合材料三维编织结构的单元体模型复合材料学报,1996,836.Joon—HyungByun&Tsu—WeiChou,Process—microstructurerelationshipsof2-stepand4一stepbrsidedcomposites,CompositesScienceandTechn0109y56(1996)235—25137.D,L,Wu,Three~cellmodeland5Dbraidedstructuralcompositea,CompositesScienceandTechnology56(1996)225~23338.PandeyR,:Hahn.H,T,Visualizationofrepresentativavolumeelementsforthree—dimensionalfour—stepbraidedcomposites,CompositesScienceandTechnologyFebruary1996,vol,56,no,2,PP,161—170(10)39.AmosA1exander,Jerome,T,Tzeng,ThreedimensionaleffectivepropertiesofcompOSitematerialsforfiniteelementapplications,JournalofcompositematerialS,1997,5vol3140.陈利,三维编织复合材料的细观结构及弹性性能分析,博士学位论文,天津工业大学,1998,94】.陈作荣,诸德超,三维四步编织复合材料单元胞体几何模型,北京航空航天 大学学报,2000,26,(5j,539—54242.孙义林,黄小平,三维编织结构的计算机图形显示,中国图形图象学报,2000,05A(5),443—44643,Salem,E1saidHassan,Structureandpropertiesofthree—dimensiona]wovenandw。ven/braidedcomposites[博士学位论文],NorthCarolinaStateUniversity,200144.Hu,XiaoChun,AninformatiON—basedframeworkforcompositesdesign博士学位论文,DrexelUniversity,200245.道德馄,吴以心,李兴国,立体织物与复合材料,上海:中国纺织大学出版社,1998,846.杨桂,敖大新,张志勇,姚学锋等编著编织结构复合材料制作、工艺及工业实践,北京:科学出版社,1999,247.修英妹,陈利,李嘉禄,三维编织复合材料的细观结构分析,宇航材料工艺2001,31,(3),19—2248.陈利,李嘉禄,李学明,三维编织中纱线的运动规律分析,复合材料学报,2002,19,(2),71—7449.郡素敏,任意矩形组合截面二步法三维编织计算机辅助设计系统,硕士学位论文,天津工业大学,2003,150.郎锐编著,Visua]c++数据库开发基础及实例解析,北京:机械工业出版社,2005—51.肖刚,李学志主编,机械CAD原理与实践,北京:清华大学出版社,1999,752.康博创作室薛静锋等编著,Visua]c+十6.0N级开发教程,北京:人民邮电出版社,1999,953.(美)JulJanTempleman,AndyOlsen著,Visualc++.NET程序设计,北京:清华大学出版社,2002,754.官章全,刘加明等编著,Visua]c++.NET类库大全北京:电子工业出版社,2002』55.韩世伟等编著,按实例学Visualc++6.0,北京:科学出版社,2000,356.丁有和编著,Visualc{+文档视窗设计,青岛:青岛出版社,2000,357.(美)70hnE,Swanke著,VisualC++MFC编程实例,北京:机械工业出版社,2000,1 发表论文和参加科研情况说明发表论文:1.董玲,韩其睿,刘薇.Delphi多线程安全分析与实现.仪器仪表用户.2005,122.董玲,徐蔚,杨素君.基于MATLAB、Excel和AutoCAD的零件三维建模技术.机械工程与自动化,2006,1参加科研:>2002.12—2004.12参与21世纪初天津市普通高校教学改革项目、网络课程建设项目一“画法几何与机械制图网络课程(下)”。 致谢衷心感谢我的导师韩其睿教授对本次课题给予的悉心指导和大力帮助。在攻读硕士期间,导师韩其睿教授在学习和生活方面都给了我很多支持和鼓励,使我能不断地努力进取,顺利完成课题。导师因材施教的治学方式、渊博的知识、严谨的治学态度、敏锐的开拓思维和勇于创新的精神将使我受益终生。在课题研究过程中,得到了天津工业大学复合材料研究所的陈利、焦亚男等各位老师的大力支持和帮助,在此表示崇高的敬意和诚挚的谢意!我的研究生学习是在机械电子学院各位领导和教研室各位老师的支持下完成的,在此,向所有支持我完成学业的领导和老师表示衷心的感谢!学习期间,我的研究生同学仲兆满、王电化、江效婵等给我很多关心和帮助,在此表示我深深的谢意l感谢研究生学习期间所有给予我关心和帮助的老师、同学。深深感谢远方的父母对我多年的教育和培养,感谢我的家人在生活上、精神上始终如一的支持、帮助和默默的奉献!还有我年幼的儿子,给我的工作、学习、生活带来了无穷的快乐。他们作为我最坚强的后盾,在繁忙的工作中我的学业的完成饱含了他们殷切的期望和无限的牵挂。衷心感谢在百忙之中抽出时间对论文进行评审的各位专家和学者们!最后,谨向所有关心和帮助过我的人们致以最诚挚的谢意!作者董玲2006年1月 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