成 博,弓站朋,邓俊楷,3*,白 侠,李 艳,张承双,3*
(1.西安交通大学 金属材料强度国家重点实验室,西安 710049;2.西安航天复合材料研究所,西安 710025;3.陕西省航天复合材料重点实验室,西安 710025)
针刺C/C复合材料具有高比强度、高比模量、优良的耐磨性、抗热震性和化学稳定性等优异性能,已成为航空航天工业和国防领域的关键性基础材料[1]。针刺C/C复合材料的纤维排布方式、针刺工艺(针刺密度、针刺深度和针刺区域的分布等)和致密化工艺对其力学性能具有显著的影响[2-3],因此导致了针刺C/C复合材料产品质量的稳定性差,进而影响其使用寿命并限制了其更为广泛的应用。目前,由于针刺C/C复合材料预制体中纤维排布方式和针刺工艺参数的多样性,导致其存在巨大的结构设计空间。利用传统的“试错”型材料研究方法研究针刺C/C复合材料结构、工艺和性能之间的关系,存在周期长、成本高和偶然性大等不足,导致目前针刺C/C复合材料的设计和优化存在困难,影响了新型高性能针刺C/C复合材料的研发效率。
事实上,传统的“试错”型材料研究方法设计和开发一种新材料,一般从研发到实际工业化应用需要10~20年的时间[4]。材料研发的速度已经成为制约科技、经济等诸多重大战略领域发展的主要因素[5]。为了提高材料研发的速度,2011年6月,美国率先发布了“材料基因组计划”(Materials Genome Initiative,MGI)[6],旨在将材料研发的速度加倍,减少研发周期。材料基因组计划旨在全面改革材料的研究模式,通过借助超级计算机、大数据、人工智能等技术,有效整合现有的材料研究力量和设备,将先进的高通量实验和材料计算工具的效能发挥到最大[7],减少研发投入,缩短研发周期。随着材料基因组的发展,结合材料科学和信息科学,逐渐形成了先进的材料信息学方法,并成为材料研发的第四范式[8]。材料信息学可以归纳为材料科学与工程领域的大数据分析,通过计算机技术对海量材料数据进行数据挖掘和可视化分析,从中提取、总结材料的“成分-工艺-结构-性能”之间的关系,实现知识共享,能够有力促进新材料新工艺的研发设计[9]。
近年来,材料信息学在许多研究领域取得了显著的进展,并搭建了一些材料数据库平台。如哈佛大学的清洁能源计划,建立了以太阳能电池的分子材料为主要研究重点的Molecular Space 数据库,通过机器学习来预测模拟物质模型的实际属性[10];肯特州立大学LAURA M B教授等建立了材料信息学实验室,来研究金属材料、生物材料、聚合物材料等的构效关系[11];GE(General Electric)公司通过高通量实验技术找到了符合性能要求的高温合金材料等[12]。但迄今为止,国际上尚未见到与针刺C/C复合材料相关的材料信息学软件平台。
本文基于材料信息学知识,设计和开发了一套“针刺C/C复合材料结构-工艺-性能一体化软件平台”,旨在对针刺C/C复合材料中关于结构-工艺-性能关系的数据进行有效收集和管理,并基于机器学习算法建立结构-工艺-性能之间的映射关系,实现特定结构和工艺参数条件下的针刺C/C复合材料力学性能的准确预测。由于通过实验测量针刺C/C复合材料力学性能存在成本高、周期长、准确性差等缺点,导致可用的实验数据稀缺。因此,本文针对一种已用于实际应用的针刺C/C复合材料基本参数,通过有限元高通量计算方法及机器学习中神经网络回归算法,构建其结构-工艺-性能(有效弹性力学参数)的数据集及其之间的映射关系,并将训练好的机器学习模型部署于该软件平台中。通过软件平台的Web界面管理和应用数据,并调用机器学习模型来预测特定结构和工艺条件下针刺C/C复合材料的有效弹性力学参数,进而为其设计和优化提供理论指导。
图1为针刺C/C复合材料一体化软件平台架构图。此软件平台主要由数据库模块和机器学习模块两个功能模块组成。利用数据库模块,对实验、工业生产和数值模拟中产生的数据进行存储和管理。利用机器学习模块,基于机器学习算法构建材料中“结构-工艺-性能”之间的映射关系。
图1 针刺C/C复合材料一体化软件平台架构图
用户可通过针刺C/C复合材料结构-工艺-性能一体化软件平台,基于Web网页的用户界面,来使用数据库和机器学习模块,预测特定参数条件下材料的性能,并可以在参数空间中,搜寻具有目标性能的结构和工艺参数,为优化生产工艺参数提供理论依据。
图2为针刺C/C复合材料一体化软件平台开发流程图。为了实现材料数据的存储、解析、检索,以及后续机器学习模型预测力学性能的功能,依据数据关系模型构建了数据库存储范式(即将数据按照一定的规则存储到数据库中保存和管理)。一方面,按照Spring MVC框架,通过MyBatis-Plus数据持久层来构建Data Access Objects数据存取对象(DAO),由Services(API)提供数据检索支持,并结合Vue渲染View显示层,提供了人机交互界面;另一方面,使用基于Python的可扩展Web框架Flask调用训练完成的机器学习模型,生成JSON/XML等形式的数据结果,提供给显示层,供结果显示使用。
图2 针刺C/C复合材料一体化软件平台程序开发流程图
为了设计简单、易操作的软件平台页面,结合针刺C/C复合材料的结构特性和针刺工艺参数的特点,设计了软件平台的每个页面及功能。采用将平台的功能与针刺C/C复合材料的生产流程相结合的设计思路,通过将平台划分为多个页面,每个页面对应生产流程的特定步骤,使平台的页面简单且易理解,方便工程人员使用。基于上述构想将软件平台分为材料信息、结构参数、工艺参数、材料性能和预测性能五个页面。前四个页面用于材料数据集的存储和管理,包括文本、数字和图片等数据格式;后一个页面用于调用基于数据集训练好的机器学习模型,来预测特定结构、工艺条件下的针刺C/C复合材料的性能。基于上述设想构建了针刺C/C复合材料结构-工艺-性能一体化软件平台。
针刺C/C复合材料由于预制体纤维排布方式和针刺工艺的复杂性,导致结构和工艺参数对其力学性能有很大的影响。同时,文献报道针刺区域的分布对弹性力学参数的影响可以忽略不计[13]。因此,本文仅考虑了纤维排布方式、针刺密度和针刺深度对针刺C/C复合材料有效弹性力学参数的影响。
本文所用的针刺C/C复合材料由西安航天复合材料研究所提供。这种针刺C/C复合材料预制体由炭布(无纬布)和网胎正交交替叠层制备,用液相倾浸法作为增密方式,预制体经历多次高压沥青倾浸-炭化的循环加工制成。其针刺密度为32针/cm2、针刺深度为18 mm、孔隙率为12.7%,成品密度为1.94 g/cm3。利用光学显微镜、CT扫描和三维重构的实验研究,获取了此针刺C/C复合材料中炭布层(无纬布)、网胎层、针刺纤维束区的纤维、基体和孔隙的体积分数,如表1所示[13]。
表1 针刺C/C复合材料炭布、网胎、针刺纤维束区的体积分数[13]
针刺C/C复合材料中碳纤维(聚丙烯腈基碳纤维T700)、碳基体和孔隙等各部分对应的力学性能参数如表2所示[13]。通过二次均匀化的细观解析方法,可计算出针刺C/C复合材料中炭布层、网胎层和针刺纤维束区的有效弹性力学参数。首先,第一次均匀化采用 Mori-Tanaka 方法,计算孔隙造成的基体刚度折减[14];随后,第二次均匀化采用Mori-Tanaka方法,预报网胎层的有效性能,并采用 Chamis细观力学公式预报炭布层与针刺纤维束的性能[14-15]。
表2 针刺C/C复合材料各相的工程弹性常数(纤维轴向为X3)[13]
基于实验和理论公式得到的针刺C/C复合材料各部分尺寸、力学性能、结构参数和工艺参数是本文有限元模型建模的依据,也是针刺C/C复合材料结构-工艺-性能一体化平台的实际应用对象。
通过将得到的炭布层、网胎层和针刺纤维束区的有效弹性力学参数赋予有限元模型中相应的部分,从而计算得到模型所对应针刺C/C复合材料的有效弹性力学参数。通过表3对比发现,有限元计算的结果与理论公式计算得到的拉伸模量(理论公式计算得到的拉伸模量最为贴近真实值)基本一致,相对误差小于0.5%[16]。因此,本文通过有限元计算来获取针刺C/C复合材料不同结构和工艺参数条件下的有效弹性力学参数。
表3 文献[16]计算值与本论文计算值对比(叠层方向为Z方向)
为了利用高通量有限元方法,计算出大量不同纤维排布方式、针刺密度、针刺深度参数条件下的有效弹性力学参数的材料数据集,基于Python语言自主开发了有限元模型生成、计算任务提交、结果文件中有效弹性力学参数提取的自动化脚本。通过改变脚本中炭布铺层角度(对应纤维排布方式)、模型的尺寸(对应针刺密度)、针刺纤维束区的高度(对应针刺深度),可以自动化、大批量的生成不同炭布铺层角度(纤维排布方式)、针刺密度、针刺深度的有限元模型,并提交计算和读取计算结果。通过有限元高通量计算,针对实际应用的这种针刺C/C复合材料,获得了具有不同结构参数、工艺参数和有效弹性力学参数关系的材料数据集(近40 000条数据),并存储到针刺C/C复合材料一体化平台的数据库模块中。
图3为针刺C/C复合材料结构-工艺-性能一体化软件平台的材料信息页面。一方面,利用材料信息页面,可用来输入和存储针刺C/C复合材料中原材料炭布和网胎的信息,包括炭布和网胎的供应商信息、力学性能和样品照片等;另一方面,可用来检索数据库中关于炭布和网胎组成的针刺C/C复合材料的数据。通过在检索框中选择炭布和网胎的品牌、类型和产品,能够确定具体对应的炭布和网胎,并通过检索框右边的炭布展示和网胎展示按钮,将所选炭布和网胎的信息展示在材料信息页面中,通过右边的滚动条来展示所选炭布或网胎的所有信息。通过搜索按钮,还可用来检索数据库中所选炭布和网胎的数据,在选择相应的针刺C/C复合材料所用的炭布和网胎之后,通过结构参数按钮,可转换到结构参数页面,用来设置或选取针刺C/C复合材料结构中炭布的叠层方式(对应纤维排布方式)。
图3 材料信息页面
针刺C/C复合材料的原材料(炭布和网胎)确定之后,通过结构参数页面可以确定针刺C/C复合材料结构中炭布的叠层方式(对应纤维排布方式),即相邻炭布以几层为一个周期循环叠层,以及每相邻叠层之间炭布铺层的角度。如图4所示,通过结构参数页面,可以确定要检索的炭布叠层结构的叠层周期,即一个周期循环叠层的层数;随后,可以确定要检索的每相邻叠层炭布之间铺层的角度范围;最后,可以通过点击搜索按钮检索出满足所选参数要求的所有材料数据。在点选完结构参数页面后,通过工艺参数按钮可转换到工艺参数页面,来确定针刺C/C复合材料的工艺参数。
图4 结构参数页面
确定了针刺C/C复合材料所用的炭布、网胎及炭布叠层方式之后,通过工艺参数页面,可确定针刺工艺和致密化工艺中的一些具体参数,如针刺密度、针刺深度、致密化工艺和成品密度。如图5所示,在工艺参数页面,可通过输入针刺密度、针刺深度、致密工艺和成品密度等参数,来检索满足这些工艺条件下的材料数据。随后,可通过点击材料性能按钮,转换到材料性能页面,来查看检索到的针刺C/C复合材料的有效弹性力学参数等力学性能。
图5 工艺参数页面
在材料信息、结构参数和工艺参数确定后,可通过材料性能页面,浏览所有满足条件的针刺C/C复合材料的性能参数,本文以有效弹性力学参数为例。同时,通过搜索框,可以进一步筛选满足所选性能范围的针刺C/C复合材料。如图6所示,通过在有效弹性力学参数检索框中,输入有效弹性力学参数的最小值和最大值(使用逗号隔开),可进一步检索满足此性能范围的针刺C/C复合材料。然后,在页面中列出所有满足检索条件的材料数据。
图6 材料性能页面
由于高通量有限元方法得到的结构-工艺-性能(有效弹性力学参数)的数据集,数量大、参数多,很难用数据拟合等方法发现结构-工艺-性能之间的映射关系。因此,利用机器学习中神经网络回归算法,来研究数据集中隐含的映射关系。并基于此开发了机器学习模型,实现预测特定结构和工艺参数条件下针刺C/C复合材料的有效弹性力学参数。
本文中训练机器学习模型所用的框架为Pytorch,Pytorch是一个基于神经网络框架Torch的深度学习库,它提供了强大的GPU张量计算能力和神经网络自动计算梯度的功能,具有简洁高效的库函数,方便用户对深度学习神经网络的快速设计与搭建[17]。
为了得到纤维排布方式、针刺密度、针刺深度与有效弹性力学参数之间的关系,以炭布铺层角度(纤维排布方式)、针刺密度和针刺深度作为神经网络的输入参数,9个有效弹性力学参数作为输出参数。如图7(a)所示,通过改变神经网络中输入层的输入参数的数值,即图中X变量(X1,X2等)的数值,来训练炭布在不同叠层周期条件下对应的机器学习模型。首先,对输入的炭布铺层的角度、针刺密度、针刺深度和输出的9个有效弹性力学参数进行归一化处理,加快梯度下降求最优解的速度和提高精度[18];随后,将数据集输入到神经网络模型中训练模型,通过训练的效果来修改神经网络模型中隐藏层的层数和每层的神经元个数。本文采用0.9/0.1的训练集/测试集划分策略,采用指数学习率下降的动态调整网络学习率(初始为0.001,每训练一轮次学习率变为原来的0.97倍)。采用ADAM优化器、批随机下降算法更新网络参数,Batch size取200。因为有效弹性力学参数的取值是连续值,研究的问题是回归问题,所以采用均方差(MSE)作为网络的损失函数,以获得更好的表现。
图7(b)为炭布以四层为叠层周期时,机器学习模型预测值(E11)与有限元计算值(E11)的散点图,以此参数为例,说明此机器学习模型的精度和泛化性能。横坐标是有限元计算值,纵坐标是机器学习模型的预测值,共12 000个数据点,包含了训练数据集中10 800个数据点和测试数据集中1200个数据点。可以看出点分布在红色直线Y=X附近,其中决定系数(R2)为0.988,均方差MSE=0.611 GPa2,即训练出来的神经网络具有很高的精度和良好的泛化性能。因此,该模型可用来预测炭布以四层为叠层周期的结构时,不同炭布铺层角度、针刺密度和针刺深度的工艺参数下对应的针刺C/C复合材料的有效弹性力学参数。
(a)Schematic diagram of machine learning regression model
类似地,还针对炭布为二、三、五、六等不同叠层周期的结构参数条件下,不同炭布铺层角度、针刺密度和针刺深度的工艺参数下的机器学习模型进行了训练。最后,将这些机器学习模型部署在针刺C/C复合材料结构-工艺-性能一体化软件平台中,用户可以通过预测性能页面(Web界面)进行访问和使用。
针刺C/C复合材料结构-工艺-性能一体化软件平台预测性能页面,主要是调用已经训练好的机器学习模型,预测给定结构参数和工艺参数下具体某一种针刺C/C复合材料的力学参数(以有效弹性力学参数为例)。如图8所示,首先选择针刺C/C复合材料的炭布和网胎组成,然后选择炭布的叠层周期(即叠层方式)。这样在确定对应的机器学习模型后,通过输入炭布铺层的角度、针刺密度和针刺深度等参数,预测此结构和工艺参数条件下针刺C/C复合材料的有效弹性力学参数。
图8 预测性能页面
历经两年(2020年1月~2021年12月)的设计研发,针刺C/C复合材料结构-工艺-性能一体化软件平台已开发完成,现已投入使用。为了再次验证软件平台中机器学习模型对特定针刺C/C复合材料力学性能预测的准确性,特意新生成了一组有限元模型,对比了新生成模型的有限元计算值与机器学习模型预测值之间的相对误差。表4为随机选取的一个有限元模型的计算值和机器学习模型的预测值的对比,其中炭布的叠层周期为4层,相邻炭布铺层角度分别为15°、96°、120°和163°,针刺密度为36 针/cm2,针刺深度为8层(炭布和网胎合为一层,单层为0.81 mm,8层模型厚度为6.48 mm)。从表4可看出,有限元计算值与机器学习模型预测值非常接近,相对误差小于2.4%。
表4 相邻炭布以4层为一周期循环叠层,角度为[15°/96°/120°/163°]时9个弹性参数预测值与有限元计算结果对比
对比结果充分证明了本软件平台所提供的预测功能,即通过机器学习模型可准确预测特定炭布叠层周期的结构条件下,不同炭布铺层角度、针刺密度和针刺深度下针刺C/C复合材料的有效弹性力学参数,也显示出针刺C/C复合材料“结构-工艺-性能”之间的映射关系,实现了本软件平台的功能特性。
通常为了获取针刺C/C复合材料的力学性能,通过实验会耗费大量的时间成本(约几小时)。利用有限元模拟并行计算,针对现有的模型,在使用28个CPU核心条件下,1次力学性能参数的模拟计算,通常需要耗费10 min以上。而利用本软件平台的预测功能,使用1个CPU核心,调用机器学习模型仅需 0.001 s,极大地提升了材料性能测试的效率,充分证明了平台的价值和功能。
利用软件平台中部署的机器学习模型,获得了针刺C/C复合材料结构-工艺-性能(有效弹性力学参数)的映射关系。基于此,在结构参数和工艺参数的参数空间中进行搜索,可以获取参数空间对应的海量针刺C/C复合材料弹性力学参数,进而能够预测和发现具有优异力学性能的新型复合材料,并获取其对应的结构和工艺参数,从而为设计和优化针刺C/C复合材料的结构参数和工艺参数提供理论指导。
利用开发的“结构-工艺-性能”一体化软件平台,未来可以有效存储和管理在实验、工业生产和数值模拟中获得的更多材料参数,研究并建立针刺C/C复合材料结构参数、工艺参数和更多材料性能(如拉伸强度、压缩强度、耐磨性、热导率)之间的映射关系。此外,由于材料之间所具有的共性,即“材料-结构-工艺-性能”之间具有相互依存的对应关系,因此本软件平台通过数据库模块和机器学习模块的简单调整,也可用于其他各类材料如金属材料、陶瓷材料、复合材料、高分子材料等。因此,本软件平台不仅可用于针刺C/C复合材料的使用,而且可以推广到各类其他材料的使用,有望为基于数据驱动的材料工艺优化和新材料的研发提供新的解决方案。
(1)本软件平台针对航天复合材料研究所提供的一种针刺C/C复合材料,存储了40 000条关于结构参数、工艺参数及其对应的弹性力学参数的数据,并对数据提供了高效存储、管理和再利用功能。
(2)利用所存储的针刺C/C复合材料数据集,基于机器学习回归算法,构建了结构参数和工艺参数与材料性能之间的5种机器学习模型,能够为特定结构参数、工艺参数条件下的针刺C/C复合材料的弹性力学性能提供预测功能。
(3)验证表明,本软件平台的机器学习模型具有很好的精度和泛化性,其预测数值的相对误差小于2.4%,同时参数预测的效率相比实验或模拟计算有了极大的提高,证明了软件平台的效果。
(4)本软件平台不但能够为针刺C/C复合材料的结构和工艺优化提供理论指导,也能够为基于数据驱动的各类新材料的结构、工艺、性能的优化和设计提供新的解决方案。