当前位置:首页>>基于CATIA二次开发的翼面结构参数化设计

基于CATIA二次开发的翼面结构参数化设计

发布时间:2017-08-30作者:智汇胡妮

0 引言

  参数化设计是计算机辅助设计中的一项重要的技术,是初始设计和多种方案比较的有效手段。在机翼结构设计的选型阶段,需要对几种不同方案进行对比研究。翼面结构建模过程中往往需要对一些元件位置、尺寸等进行调整,但后期修改模型的工作十分复杂,有时甚至无法修改;翼面结构中相同的元件(如长桁、翼肋等)有多个,这些元件的建模方式虽然完全相同,但结构设计人员仍要做大量重复性的工作。从缩短设计周期的角度考虑,参数化建模技术作为一种先进的设计方法可以很好的解决翼面结构建模中遇到的难题。

  首先,将翼面结构主要元件的布局,尺寸设定为参数,通过对参数的重置,实现对各元件布局、尺寸的重新调整;其次,程序语言可使翼面结构复杂琐碎的建模过程模块化,方便管理且简化了大量复杂的建模操作,使结构设计人员能够把更多的精力放在设计本身。因此参数化建模可以提高翼面结构建模的效率和质量。如何快速建立满足各种方案设计、预研要求的翼面结构数学模型,已成为工程领域急需解决的难题。基于计算机辅助设计软件的二次开发技术为飞机翼面结构参数化设计方法提供了一种有效的途径。

  本文研究如何应用CATIA的Automation二次开发技术和C++、VB语言混合编程实现飞机翼面结构的参数化设计。要自动生成翼面结构模型,必须要找到能够准确描述翼面结构布局和各元件的位置、尺寸的参数。其中机翼的平面控制参数既可以是用户手动输入,也可以从总体模型读取。各组成元件的尺寸、位置参数从软件界面输入,翼型数据从文件读取。得到这些参数后,结合CATIA的建模规范,程序可以自动生成翼面结构CATIA三维模型。参数化创建的三维CATIA模型既可以计算出面积、体积等几何特性,方便查看截面几何信息及快速生成相应工程图,也可以提供给各个设计部门直接使用。同时在工程实践中,特别是航空航天复杂零件的设计中,使用CATIA建模生成中间文件来进行有限元分析的方法也具有很强的现实意义。文章最后以简化后的某型飞机翼面结构作为实例,证明了应用CATIA二次开发方法实现翼面结构参数化设计的可行性。

1 翼面结构元件的参数化描述

  1.1 机翼平面形状及其组成元件站位信息的参数化描述

  机翼平面形状的控制参数有半展长L、前缘后掠角xo、根弦长b0、尖弦长b1。

  假设机翼为双梁式,长桁等百分比布置(上、下翼面的个数可不同),翼肋为顺气流布置,这些元件的个数、位置均以参数形式给出,确定这些参数后就可以唯一确定机翼的平面形状以及各元件的站位信息。 

1.2 翼面结构元件截面形状的参数化描述

  1.2.1 梁的设计

  翼梁由腹板和缘条组成,腹板用于承受扭矩引起的剪流和机翼的剪力,缘条用于承受弯矩引起的轴向力,受拉伸和压缩。

  现代飞行器翼面普遍应用腹板式梁,梁缘条以承受轴向拉压方式承弯,腹板承剪。腹板式梁的控制参数有梁的高度、梁缘条的截面尺寸、梁腹板的截面尺寸。从剖面形状看,梁腹板的截面多为矩形,梁缘条有开口型和闭口型。梁缘条的截面形状有多种形式可供选择,其参数描述如图2所示。

  1.2.2 壁板的设计

  蒙皮起传递气动力和维持机翼外形的作用,现代飞行器翼面一般采用承力蒙皮,蒙皮较厚。设计时根据翼肋的站位,蒙皮沿展向,以翼肋缘条为边界分段变厚度,每一段厚度值自己设定。

  长桁的主要功能是承受机翼弯矩和局部空气动力载荷引起的轴向力和剪力,此外在纵向起支持蒙皮的作用。长桁支承在翼肋上,相当于一根处于纵向和横向弯曲作用下的多支点梁柱。长桁的设计与梁缘条设计方法相同,布置方式分为等百分比布置、给定角度布置、平行于前梁布置、平行于后梁布置。

  1.2.3 翼肋的设计

  普通肋用于维持机翼剖面形状,并传递初始局部气动载荷。同时翼肋还有支持蒙皮和长桁的作用,从而提高加筋壁板的抗失稳能力。加强肋传递来自其它部件传来的集中载荷或将某种形式的分布剪流转换成另一种形式的分布剪流。

翼肋构造形式有多种,在初步设计阶段,以腹板式作为简化,翼肋缘条和腹板的设计方法与腹板梁的设计方法相同,参数化设计时,根据翼型数据与当地弦长,绘制各段翼肋的轮廓。

2 Visual Studio环境下的CATIA二次开发

  CATIA Automation二次开发方法最直接的应用就是简单的自动绘图,在Visual Studio环境下,基于COM(component object model)的OLE(object liking and embedding)自动化技术对开发语言没有限制,为混合编程下的二次开发技术提供可能,且能使一些复杂问题得到简化。而CATIA CAA(component application architecture)二次开发方法不适用于自动绘图,实现方法也较复杂,并且对Visual Studio的版本也有限制,但CAA方法功能强大,可以为其他的开发方法提供借鉴。本文使用CAA Automation方法,在C++和VB语言下,介绍在Visual Studio 2010、CATIA V5R18环境下应用CATIA Automation技术的主要步骤,通过混合编程,实现翼面结构的快速建模。

  2.1 CATIA类库的引入

  在Visual Studio环境下,使用#import"…[.tlb"high—method prefix("Catia")rename—namespace("CAT")逐个引入CATIA安装目录下的93个“.tlb”库文件。由于CATIA类库中的函数名可能与C++标准库、Access数据库及Office类库的函数名相冲突,因此引入CATIA类库时用high—method—prefix("Catia")声明。此外,在CATIA类库引入的过程中,其自身多个类库的函数名冲突,需要调整类库的引入顺序并把相冲突的类库放在不同的命名空间下。编译成功后,会在debug目录下生成对应的“tlh”和“tli”文件。

  VB环境下只需在“工程一引用”选项中把所需CATIA类库勾选即可。

 

  2.2 机翼平面参数及翼型数据的读取

  考虑到某些CATIA的接口函数使用安全数组作为形参,而使用C++语言Automation做二次开发时不清楚如何构造相应的安全数组,且VB语言中安全数组的使用方法实现起来较为简单,故使用VB语言编写可以读取总体模型信息的动态链接库(DLL),使用C++调用的方式实现模型读取功能。

  程序首先利用曲面设计下的AddNewlntersection()函数来剖分修型后的飞机总体模型机翼段,得到能够描述翼型样条曲线的控制点,然后将这些点拆分、重命名,再按名字查找特征并读取点的坐标值。按名字查找特征时不能使用FindObjectByName()函数,它不适用有特征重名的情况,应使用

  CATIA.ActiveDocurnent.Selectio n_Search"Name=obj.1,all"方法。

  获取机翼某段翼肋剖面上点的类型和个数的方法为:

  CATIA.ActiveCbcmnent.Selection.Search

  (PointName)

  NmnOfpointsSelected=selectionPoint.Count2

  Set selectedElementl=selectionPoint.Item2(1)

  DetectPointType=selectedElementl.Type()

  用TheSPAWorkbench.GetMeasurable方法获取前缘后掠角

  获取机翼某段翼肋剖面上的HbridShapePointCoord类型点坐标的方法为:

  Set SelectedPbint(i)=CATIA.ActiveDocument.

  Selection.Item2(i+1).Value

  SelectedPoint(i).GetCoordimtes CoordTmp

  2.3 翼面结构模型的参数化创建

  创建CATIA应用的代码如下

  HRESULT hr=S_OK;

  Hr=m _CATIA.GetActiveObject("CATIA.Application");

  if(FAILED (hr)){

  hr=m CATIA.CreateInstance("CATIA.Application");

   )

  建立CATIA绘图环境,新建Part,启用混合设计的过程是:

  DocumentsPtr documents_WStru;

  documents_WStru=m_CATIA→GetDocuments();

  BSTR AddPart=_com_util::ConvertStringToBSTR("Part_WStru");

  PartDocumentPtr partDocument_WStru;

  partDocument_WStru=documents_WStru→CatiaAdd(&AddPart);

  PartPtr WingStru=partDocument_WStru→GetPart();

  WingStru→CatiaUpdateObject(hybridBodySkin);

  将绘制翼面结构的梁、长桁、蒙皮、翼肋所用到的点、线、面几何特征分别放在相应几何图形集下,例如蒙皮几何图形集的创建方法为:

  HybridBodiesPtr hybridBodiesSkin=WingStru→HybridBodies;

  HybridBodyPtr hybridBodySkin=hybridBodiesSkin→CatiaAdd();

  BSTR SkinName=_com_util::ConvertStringToBSTR ("SkinDatum");

  hybridBodySkin→PutName(&SkinName);

  WingStru→CatiaUpdateObject(hybridBodySkin);

  需要说明的是,在草图平面创建样条线时需要创建安全数组。在安全数组中存储控制点类型的指针,然后用CreateSpline()函数创建样条线,再用InsertControl-PointAfter()方法把ControlPoint2D类型的点附加到样条上。还可以用AddNewSpine()方法直接创建空间曲线。利用这两种方法生成的样条曲线都能通过loft命令生成代表蒙皮的厚曲面,蒙皮可沿展向分段变厚度。 

3 实例

  机翼的平面形状可以是平直的(矩形、梯形)、后掠形、三角形。以上述机翼结构参数化为基础,表1给出了机翼结构的平面尺寸数据,由这些数据程序可以绘制出机翼的平面轮廓。其中,半展长L为机翼外漏部分的展长。

   为简化以上实例数据,翼梁、长桁、翼肋等元件的截面假设为直线。通过运行翼面结构快速设计软件系统,程序调用CATIA软件自动生成翼面结构的三维模型。图3所示翼面结构CATIA数模为该软件系统依据上述参数自动创建完成。

4 讨论

  软件通过用户输入或模型读取机翼平面参数,手动设置翼面各组成元件的个数、位置、截面控制参数,通过CATIA Automation二次开发方法,快速建立翼面结构模型。在满足翼面结构设计精度的同时,参数化设计手段可以大大提高模型的生成和修改速度。软件在开发过程中已经集成了一些工程算法。这些算法通过合理地分配弯矩,结合稳定性、最大应力等约束条件的限制进行翼面结构方案设计。后续工作可进一步改进和完善这些算法,开发出既满足设计要求,又能快速建立翼面结构模型的软件,并通过机翼结构方案设计算例进行验证。本翼面结构快速设计软件具有很明确的操作步骤,便于设计人员在未来飞机设计中使用。

5 结束语

  以上算例表明,在对翼面结构元件的参数化描述后,利用CATIA Automation二次开发方法可以自动生成翼面结构模型。参数化设计方法实现了翼面结构主要元件的快速布置和各元件尺寸的快速设计,提升了翼面结构的设计能力和设计水平,具有现实的工程意义和使用价值。

  应用CATIA Automation二次开发方法能够快速、准确的建立参数化的翼面结构模型。通过CATIA提供的二次开发接口,加上C++语言强大的编程效率和运行效率,几乎所有的CATIA建模功能都可以用二次开发方法实现。参数化设计作为未来设计发展的方向,其集成化、模块化的设计思想符合未来发展趋势,可为飞机结构设计工作提供有力的设计手段。

公司简介

宜科(天津)电子有限公司是中国工业自动化的领军企业,于2003年在天津投资成立,销售和服务网络覆盖全国。作为中国本土工业自动化产品的提供商和智能制造解决方案的供应商,宜科在汽车、汽车零部件、工程机械、机器人、食品制药、印刷包装、纺织机械、物流设备、电子制造等诸多领域占据领先地位。宜科为智慧工厂的整体规划实施提供自系统层、控制层、网络层到执行层自上而下的全系列服务,产品及解决方案涵盖但不局限于云平台、MES制造执行系统、工业现场总线、工业以太网、工业无线通讯、机器人及智能设备组成的自动化生产线、自动化电气控制系统集成、智能物流仓储系统等,以实现真正智能化的生产制造,从而带来生产力和生产效率的大幅提升,以及对生产灵活性和生产复杂性的管理能力的大幅提升。多年来,宜科以创新的技术、卓越的解决方案和产品坚持不懈地为中国制造业的发展提供全面支持,并以出众的品质和令人信赖的可靠性、领先的技术成就、不懈的创新追求,在业界独树一帜。帮助中国制造业转型升级,加速智能制造进程,成为中国工业4.0智慧工厂解决方案当之无愧的践行者。

更多详情>>

联系我们

  • 联系人:章清涛
  • 热线:18611695135
  • 电话:
  • 传真:
  • 邮箱:18210150532@139.com

Copyright © 2015 ilinki.net Inc. All rights reserved. 智汇工业版权所有

电话:010-62314658 邮箱:service@ilinki.net

主办单位:智汇万联(北京)信息技术有限公司

京ICP备15030148号-1