基于OpenGL的圆筒段自动铺带仿真研究

1 引言
    复合材料筒形体构件广泛应用于航空航天及民用工业中,如军用、民用飞机的机身段、固体火箭发动机壳体[1]等。目前国内对于复合材料筒形体构件主要采用手工铺叠、缠绕成型等成型方法,手工铺叠效率低、浪费大,普通缠绕成型封头处材料浪费较大、挂钩缠绕工艺复杂。发达已广泛采用自动铺放成型技术以降低成本,提高效率,如波音787机身段等[2]
   自动铺带技术[3]是20世纪60年代发展起来的一项复合材料自动化制造技术,以带有隔离衬纸的单向预浸带为原料,在铺带头中完成预定形状的切割,加热后在压辊的作用下直接铺叠到模具表面。铺带机是自动铺带技术实施的关键之一,典型的自动铺带机为10轴龙门式自动铺带机,如图1(a)所示,其中5轴控制铺带头运动轨迹、另外5轴实现铺带头内部预浸带放卷、回收和切割等运动;另一类铺带机为铺放特定形状的专用铺带机、如锥形和筒形体多采用主轴-小车式结构,如图1(b)所示。

           
    国内自动铺带技术研究起步数年,包括原理样机、铺放工艺和铺带设计方法等[4]。文献[5,6]研究了自动铺带技术一般曲面的铺放轨迹、平面铺带的软件开发。对于筒形体构件,文献[7,8]从纤维缠绕的角度研究,提出了筒形段实现非测地线的条件,实现了纤维缠绕筒形压力容器的动态仿真。本文针对有开口的筒形体构件,采用主轴-小车式结构的专用自动铺带机,基于OpenGL技术对铺放过程进行三维动态仿真,重点研究自动铺带机模型的构建、预浸带的绘制、开口圆筒芯模上轨迹规划算法及铺放过程的动态显示。仿真结果对具有开口的复合材料构件一次成型具有指导意义,可以提高效率、降低成本。[-page-]
2  OpenGL下三维建模
2.1 自动铺带机模型的构建
    随着计算机硬件技术和计算图形软件技术的不断发展,计算机的图形处理能力大大提高,三维动画制作软件不断涌现,常用的有3DMAX, Maya,OpenGL等。其中OpenGL是目前工业界公认的先进而强大的三维图形编程接口(3D API)。它有着功能完备的二维和三维图形处理能力,是理想的三维应用程序开发工具。已被广泛应用于科学可视化、计算机动画、CAD/CAM、仿真、虚拟环境等领域[9]。OpenGL虽然是性能卓越的三维图形标准,但是实现复杂物体的建模困难,需要强大的建模工具来辅助完成物体建模[10]
    自动铺带机的核心部位是自动铺带头[11],图2为本系统采用的专用铺带机自动铺带头的结构简图,对自动铺带机的建模采用以下方法来实现:

       
    (1)对于结构比较复杂的自动铺带头,使用现有的三维软件(如CATIA软件)构造出复杂的几何形体。完成建模后,将标准CAD数据文件通过一些相关的转换工具软件(如3D Exploration),生成OpenGL格式的C++数据文件,直接导入到VC工程中,稍加修改就可完成自动铺带头及其辅助结构的绘制工作;
    (2)对于结构简单而控制要求稍复杂的筒形体芯模,可直接使用OpenGL提供的三维建模函数完成绘制[12]。在此过程中,对芯模的缩放、位置、角度的调整主要使用OpenGL中glSclaef()、glTranslatef()、glRotatef()函数来完成。
2.2 预浸带的图形表征
    预浸带需要在数控程序下完成开卷、输送、回收,在切割器中实现平面曲边的切割和开口切割,加热后在压辊的作用下直接铺叠到模具表面。根据上述要求,对于预浸带的绘制,考虑到预浸带铺叠过程是个添料的过程同时要求实时显示,并且考虑铺带过程对边界及开口区域做出处理,因此采用三角面片法以达到对切割带形及实时显示的要求。其具体原理和实施步骤如下:
    (1)根据在芯模表面的铺放路径[4]和开口情况,生成某一条预浸带上平面曲边的边界及开口区域的边界曲线,生成的切割边界示意图如图3(a)所示;

             
    (2)根据预浸带的输送方向,对上述的预浸带在u方向进行划分,如图3(b)所示,自动铺带机在时间段△t内完成预浸带u方向上△u距离的铺叠,△u大小的选取与自动铺带机的行程与每一步所走的步长有关,每次绘制△u距离的带形完成实时显示的要求;
    (3)为了实现切割带形,对v方向也进行划分,如图3(c)所示,对于切割边界,根据切割曲线与u线和υ线的交点,连接交点,以直代曲,实现对切割曲线的逼近,△u和△υ的选取大小直接与图像显示质量有关;
    (4)由上述模型,在一个△u距离内求取u线和υ线的交点以及切割交点,交点坐标映射回芯模表面,连接交点生成△u距离的三角面片,然后在OpenGL下进行一系列渲染,完成带形的绘制。图4所示为芯模为圆筒时,采用三角面片法绘制单条带时处理边界的情况。

          [-page-]
3 开口圆筒芯模轨迹规划算法
    单曲面上自动铺带轨迹与测地线等价[5],因此柱面上的铺带轨迹可以在其展开后的平面上直接构造直线研究,通过建立平面铺带与柱面铺带的转换关系,计算出压辊铺放轨迹和切刀切割轨迹,求取铺带过程中的特征点,控制各个角度的铺层。
3.1 开口圆筒铺带的几何参数
    开口圆筒芯模几何形式如图5(a)所示,圆筒半径为r,高度为h。开口形状根据输入顶点的个数来确定,构造相邻顶点的圆柱螺线可实现对复杂形状开口的离散逼近,依次处理每条螺线,确定预浸带上的开口情况。以四边形开口为例,处理方法与复杂形状开口一致。四边形开口的顶点分别为Q1、Q2、Q3、 Q4。图5(b)为沿母线X=r的展开示意图,开口点Q1对应的坐标点为P1,预浸带宽度为b,带与带之间的间隙为c,铺带角度为α,对于大铺放角度(如90°铺层),自动铺带机采用了缠绕机理,实际铺带角度根据公式arcos((b+c)/2/π/r)近似求取。

       
3.2 轨迹生成和特征点求取
    展开面上条带与割线P1P2、P3P4和P4P1相交,交点T1、P2、T2、P4和T3为带上的开口点,交线T1P2、T2P4与P4T3为超声割切器中切刀所走轨迹。给定柱面上一点和过该点的切方向,柱面上的测地线是唯一的[13],因此柱面上的压辊铺放轨迹是确定的,映射到展开面上为虚线X1X3
    虚线上控制点X1为铺带头定位点,X3为铺带结束点,X2为辅压辊工作点。切割控制点X4,由开口点P2到X4所在边界的距离等于主压辊到切刀的距离确定,同理确定其余开口点对应的切割控制点。将上述控制点映射回芯模表面,增加对应的动作量,生成铺带过程中的特征点。圆筒芯模上铺放一条开口预浸带的典型动作如下:定位X1点(包括自动铺带头空间移动,芯模旋转)、转头(根据铺放角度α)、送带、主压辊工作(X1-X2)、切割器工作(包括切刀定位、刀速与送带速度的比率、切刀结束控制等)切割开口、切割边界、主压辊提起辅压辊工作(X2-X3)、辅压辊提起。铺带结束时,旋转铺带头定位到下一条带上的X1点进行铺带,进而完成当前层上的所有铺带。
4 MFC下动态仿真的实现
4.1 仿真的平台
    OpenGL图形标准虽然优势明显,但同时也存在不足之处。如OpenGL与界面窗口系统无关,不提供任何交互手段,必须由程序员自己编写所有的交互功能。VC中的MFC(微软基本类库)为用户提供了Windows环境下面向对象的程序开发界面,它能处理多数标准的Windows编程任务。因此选用VC++6.0开发平台,一方面发挥MFC面向对象和界面开发的强大优势,同时也可充分发挥OpenGL的优点,实现具有友好界面和交互功能的三维动态仿真程序。
4.2 动画的实现
    在MFC中为OpenGL仿真进行必要的环境初始化(如设置像素格式、创建绘制描述表等),添加一些消息的响应函数(如WM_SIZE,WM_TIMER等),为动画的实现做好准备。
    OpenGL利用双缓存技术实现动画绘制,为了提高动画显示速度,OpenGL提供了显示列表技术[14]。显示列表(DisplayList)是由一组预先存储起来的供以后执行调用的OpenGL函数语句组成,调用显示列表时就执行表中的函数语句。针对本文开发的仿真软件,自动铺带机部分(包括自动铺带头、基体)全部采用显示列表技术,预浸带部分为了达到实时铺放的效果,对于当前正在铺放的带编写程序计算控制顶点、轨迹路径,并用三角面片进行绘制,铺放完毕的带生成对应的显示列表,以供仿真程序调用。仿真软件的结构示意图如图6所示。

           
4.3 仿真结果
    采用上述方法,编写自动铺带三维运动仿真程序,图所示7为自动铺带三维运动仿真程序运行效果图。

               

                 [-page-]
5 结论
    (1)在VC6.0开发平台MFC编程环境下,基于OpenGL技术进行自动铺带加工仿真的几何建模和预浸带的绘制过程,对自动铺带机及预浸带部分利用了OpenGL的显示列表技术,仿真软件达到了流畅的显示速度;
    (2)在此基础上,进行开口圆筒芯模的轨迹规划算法、界面设计,方便控制加工过程和进行人机交互,完善了仿真软件;
    (3)初步完成的仿真软件可基本实现自动铺带加工的运动仿真,由于实际的铺放过程考虑的因素很多,可对仿真软件进行进一步开发与完善。
                    参考文献
[1] 林德春,潘鼎,高健等.碳纤维复合材料在航空航天领域的应用[J].玻璃钢,2007,(01):18-28.
[2] 陈亚莉.复合材料在飞机上的新应用[J].航空维修与工程,2005,(03):31-32.
[3] 陈祥宝.先进复合材料低成本技术[M].北京:化学工业出版社,2004:69-99.
[4] 李勇,肖军.复合材料纤维铺放技术及其应用[J].纤维复合材料,2002,(03):39-41.
[5] 胡翠玲,肖军,李勇等.复合材料自动铺带技术研究(I)-“自然路径”特性分析及算法[J].宇航材料工艺,2007,37(01):40-43.
[6] 还大军,李勇,吴海桥等.复合材料自动铺带技术研究(III)-平面铺带CAD/CAM软件开发[J].宇航材料工艺,2007,37(O1):47-50.
[7] 吴耀楚,张吉法,田会方.FRP固体火箭发动机壳体的非线性FW线型分析[J].宇航学报, 2002,23(04):85-87.
[8] 田会方,张杰峰.纤维缠绕筒形压力容器动态仿真[J].机械工程师,2005,(05):81-82.
[9] 和平鸽工作室.OpenGL高级编程与可视化系统开发(系统开发篇)[M].北京:水利水电出版社,2005:2-4.
[10] 郑洁,张为民.空间机器人的三维动画仿真[J].机电一体化,2004,10(03):37-39.
[11] 韩振宇,孟庆鑫,路华等.新型纤维铺放头的方案设计与实验研究[J].玻璃钢/复合材料,2007,(03):45-47.
[12] 钱钧,肖军,李勇.构架式卫星接头自动铺丝的建模研究[J].纤维复合材料,2002,(02):3-5.
[13] 王升,肖军,吴海桥.自动铺带轨迹规划中测地线算法研究[J].玻璃钢/复合材料,2007,(02):15-18.
[14] OpenGL体系结构审核委员会著,邓郑祥译,OpenGL编程指南(第四版)[M].北京:邮电出版社,2005:183-197.