(中航通飞研究院有限公司,珠海519040)
摘要:Python是一种开源的面相对向编程语言,CATIA是航空产业应用非常的三维建模软件。本文主要研究在Python语言环境中使用CATIA软件平台快速建立飞机机翼外形参数化数模的方法。
关键词:PythonCATIA机翼参数化
Python语言是一种功能强大的具有解释性、交互性和面向对象的第四代计算机编程语言。它是由荷兰人GuidovanRos?sum在八十年代末和九十年代初设计出来的,GuidovanRossum于2005年加入Google,领导并从事Python语言每一个版本的设计和开发工作[1]。本文主要研究在Python语言环境中实现CATIA平台上的飞机机翼外形参数化建模方法,可以减少概念设计阶段机翼参数选择或者气动外形优化时大量重复的建模工作,提高设计效率,缩短研制周期。
1Python库
Python语言有标准库和第三方库两类,标准库随Python安装包一起发布,用户可以随时使用,第三方库需要安装后才能使用。强大的标准库奠定了Python发展的基石,丰富的第三方库是Python不断发展的保证,随着Python的不断发展,一些稳定的第三库被加入到了标准库里面。
在本文的研究中,主要使用了pywin32、NumPy和pycatia三个第三方库。其中,pywin32直接包装了几乎所有的WindowsAPI,可以方便地从Python直接调用,也可以用来通过Python进行COM编程;Numpy(NumericalPython)是Python语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库,主要用于数组计算;pycatia库主要用来访问CATIAAPI接口,这种方法不再需要VB或者CATIA宏。
2机翼参数化建模方法
飞机三维外形设计是飞机总体设计中的一个重要环节,而机翼的气动外形设计与优化对飞机的整个气动特性有着重要的影响。由于总体设计阶段需要经常修改机翼的参数,因此能根据不同参数可以快速生成机翼的外形模型是一个关键问题[2]。机翼的参数可以分为平面参数、翼型配置参数及弯扭设计参数。主要的平面参数为展弦比、前缘后掠角和梢根比,其他平面参数可以根据以上参数计算得出,这样就可以确定一系列平面几何相似的机翼,再选定机翼面积,就可以得到确定的机翼平面形状。翼型配置参数三维参数主要包括机翼安装角、上反角和各站位控制翼型的扭转角。通过CATIA软件中定义参数和公式,可以构建以机翼主要设计参数为驱动的外形数模。在设计参数变化时,数模可以自动更新。
3基于Python语言的飞机机翼参数化建模方法
首先读取定义机翼形状的主要外形参数,并计算出构建参数化外形需要的中间参数。然后通过win32com.client.Dispatch启动CATIA进程,并参考CATIAV5Automation的HybridShapesAutomationObjects来构建机翼的参数外形数模。具体流程图如图3-1所,HybridShapesAutomationObjects见图3-2。
图4-1不同参数的机翼外形
5结论
本文通过对Python语言环境中实现CATIA建立机翼参数化外形的研究,表明该方法可以用在飞机概念设计阶段机翼参数选择或机翼气动外形优化等需要大量重复构建机翼外形的情况,可以显著的减少设计工作人员建模的工作量,提高飞机设计效率,缩短飞机研制周期。
参考文献
[1]肖旻,陈行.基于Python语言编程特点及应用之探讨[J].电脑知识与技术,2014,10(34).
[2]李惠宇,黄俊.基于CATIAVB二次开发的机翼几何外形参数化建模研究[J].飞机设计,2015,35(2).