分层是常见的失效模式,影响复合材料层压板的结构特性。铺层间的界面为裂纹增长提供了一个低阻力路径,因为相邻两铺层之间粘合仅依赖于基体特性。分层可能起源于制造缺陷、疲劳或低速冲击产生的裂纹、几何/材料不连续附近(例如接头和自由边)的应力集中,或较高的层间应力。
受压层压板中,分离的铺层可能会屈曲,分层增长和屈曲导致裂纹扩展。分层的存在会大幅降低复合材料层压板的屈曲载荷和压缩强度[145](图10.1)。层压板内横向载荷也可能导致分层[146]。分层屈曲分析需要结合几何非线性结构分析和断裂力学。
图10.1 受压层压板内的分层屈曲
根据分层的形状,可以分为:贯穿宽度方向或带状[146-153]、圆形[153-159]、椭圆形[160]、矩形[161]或任意形状[162, 163]。根据分层在层压板厚度方向的位置,可以分为:薄膜、对称劈开[145, 148, 149]、一般情况[150, 153, 156, 157, 159]。另外,对于包含多个分层的复合材料层压板在面内压缩载荷作用下,结合屈曲和分层增长的分析已实现[164, 165]。分层屈曲的实验结果在[166, 167]中给出。
在文献中已研究的其他分层构型有梁-型分层试样,受到弯矩、轴向力、剪力作用[166-172],这3种加载形式构成了实验方法的基础,用于测量纯模式I、模式II和混合模式条件下在复合材料、胶接接头和其他层压板材料的层间断裂强度(图10.2)。
图10.2 梁-型分层试样
带压电传感器或驱动器的板内,压电层和基板之间的粘结缺陷在机械和/或电载荷作用下可能增长。因此,智能系统的自适应特性会显著降低,因为剥离导致静态或动态响应的显著变化[173, 174]。最后,分层增长可能由动力学效应引起,例如振动和冲击。举例来说,通过圆形分层和随时间变化的载荷,研究了层压板的惯性导致的动力学效应对分层的屈曲引起的增长过程的影响[175]。
分层可以使用内聚损伤模型(10.1节)和断裂力学(10.2节)进行分析。内聚损伤模型用损伤变量和损伤演化准则实现截面本构关系。内聚损伤单元经常插入实体单元[176-179]或梁/壳单元[178]。
在断裂力学方法中,已有分层的扩展通过对比能量释放率(ERR)的量和界面的断裂韧性来进行分析。当涉及混合模式条件时,有必要将总的能量释放率分解为模式I、模式II和模式III的分量形式,因为混合模式依赖于界面韧性[170, 180]。在文献中提出了很多基于断裂力学的模型用于研究分层,包括三维模型[181-183]和简化的梁状模型[145, 147, 172, 184, 185]。
断裂力学使我们可以预测已存在裂纹或缺陷的生长。均质各向同性实体受到一般载荷条件时,裂纹倾向于在一个方向扭着增长,因此裂纹尖部保持模式I。相反地,在层压的复合材料中的分层会在其所在的平面内扩展,因为界面的韧性相对于邻近的材料要低一些。由于分层裂纹增长时,裂纹尖端为混合模式情况,分析需要的断裂准则包含3个模式分量(10.1.2节)。
Irwin(局部)方法基于应力强度因子的概念,应力强度因子表示裂纹尖端附近的能量应力场。这两种方法是等效的,因此,能量准则可以重新写为应力强度因子的形式。进一步,大量路径独立积分已被提出用于计算能量释放率(ERR),例如J-积分[186]。
在裂纹扩展过程中释放的弹性应变能ΔU(用于创建新裂纹表面面积)可以通过计算使裂纹闭合所需的功来计算,即
计算裂纹闭合方法为虚拟裂纹闭合技术(VCCT,在10.2节介绍)提供了基础。
内聚区方法(CZM)基于这样的假设:一个分层的两个分离面之间的应力传递能力在损伤初始阶段没有完全丧失,而是由两个分离面之间的界面的渐进刚度降低控制的一个渐进过程(图10.3)。
图10.3 内聚区方法模拟裂纹扩展
层压材料的两个可能的分离面之间的界面使用Cohesive单元建模[187]。在Abaqus中有两种类型的内聚区方法单元:
——有限厚度的CZM单元,基于规则的连续(σ-ε)本构行为。该类型的单元用于对考虑界面厚度的粘结处的分层行为建模。
——零厚度的CZM单元,基于拉力-分离(σ-ε)本构行为。该类型的单元用于对可以忽略界面厚度的粘结处的分层行为建模,层压复合材料即属于该情况。
内聚力行为用拉力-分离方程描述(图10.4)。如其名所示,该方法使用拉力-分离()方程代替工程应力-应变(σ-ε)方程。通过定义Cohesive单元同位对面节点,将单元厚度设置为0。然而,即使对面节点初始时坐标相同(同位),但仍是各自独立的节点,在层压复合材料变形过程中对面的节点会分离。各铺层相邻的面可以认为是通过Cohesive单元的刚度相互连接。在变形过程中,相邻铺层间产生的分离与Cohesive单元的刚度成比例。
图10.4 内聚区模型的应力传递模型
图10.5 裂纹扩展模式:a) I-张开,b) II-剪切,c) III-撕开
假设界面处材料的行为是线弹性的直到出现损伤(图10.4中OA段),之后为损伤弹性(图10.4中的OB段)。因此,应力-分离距离描述为
并且,
因此,损伤初始准则为
损伤起始时的分离距离计算如下
根据图10.4,则有:
将式10.4代入式10.5中并重新排序,可得
由图10.4中三角形BB’C和三角形AA’C(原文为BB’F和AA’F)相似,可得
式10.11代入式10.10可得
总之,在图10.4中描述了材料行为的四个不同阶段:
——线弹性未损伤材料行为(OA段)及相关的本构方程(式10.4)。
——损伤初始(A点)及相关的准则(式10.6)。
——损伤演化(AC段)及相关损伤演化方程(式10.5、式10.12)。
——断裂(裂纹形成)及相关裂纹形成准则(式10.2)。
如前所述,本节提出的公式化仅能用于纯模式I、II、或III。混合模式加载的一般情况在下面章节中给出。
混合模式比可以通过模式分量的比值定义。例如,以分离距离定义如下
或者以能量释放率(ERR)的形式
不管使用什么方式的定义,混合模式比知识表征混合模式状态的参数,这样允许通过假设减聚力过程在恒定混合模式比下进行,从而将分析简化。进一步假设这些模式是非耦合的,即使同时发生。也就是,对于每一种非耦合模式的应力-分离距离关系再次使用式10.4表达。
接下来,混合模式分离距离使用各模式分离距离L2的范数定义,即
式中,M为涉及的模式的数量(即,2或3)。下一步,使用二次应力准则代替式10.6中的单模式的损伤初始准则
接下来,使用式10.13中的第一项重写式10.15可得
再次使用式10.13
现在,需要使用混合模式裂纹扩展准则代替单模式准则(式10.2)。一个可能的选择是使用能量释放率(ERR)指数准则如下
一般而言,基于线弹性断裂力学(LEFM)的方法对于混合模式分层的承载能力的预测应该比较保守。另一方面,因为在各点的分层过程中总能量耗散没有像LEFM假设的一样立即释放,当分层前面非线性断裂过程区域不能忽略时,如同在层压复合材料可能发生的损伤区域可能接近或超过单个铺层的厚度(通常与尖端附近应力场成比例),基于损伤力学的定义表现的特别恰当。
一旦断裂时混合模式的分离距离(式10.25)基于选择的准则计算得到,并且损伤起始时的混合模式分离距离根据式10.20是已知的,对于混合模式条件的损伤变量可以用与满足式10.8的要求的单模式情况类似的方式表示,即
例10.1 一个层压的双悬臂梁(DCB)长100mm,宽20mm,由两层胶接而成,忽略胶层厚度。每层厚度为1.5mm。施加载荷使双悬臂梁在胶层产生模式I的裂纹生长。假设线弹性行为,创建一个双悬臂梁的2D模型,使用CZM单元代替胶层。使用Abaqus中的基于单元的内聚力行为表示胶层。
解10.1 为了便于本例求解,在工作路径下运行Python脚本ws_composites_dcb.py。该脚本可以从Abaqus帮助文件中的实例中取出,操作如下
# 打开Windows命令窗口,通过Windows任务栏开始→运行,打开[cmd],OK
# 路径设置为C:\SIMULIA\User\Ex_10.1
# 使用命令创建路径:mkdir Ex_10.1
# 输入以下命令并按Enter键
abaqus fetch job=ws_composites_dcb.py
# 这样就将ws_composites_dcb.py复制到工作路径
该脚本创建两个模型,本例中只使用名为coh-els的2D模型。该模型包含部件、装配、材料、截面、集 合和表面,用于施加边界条件、约束和定义输出要求的场变量。
在建模过程中,使用cohesive单元表示胶层,并定义为有限厚度。这样做仅是为了容易处理和定义约束。建模结束时,cohesive单元的厚度调整为0,在第v部分介绍。也就是,本例中使用的COH2D4单元厚度为0。
尽管本例中应用的加载条件仅包含模式I的裂纹扩展,Abaqus要求定义与所有三种扩展模式一致的参数。
菜单:File,Set Work Directory,[C:\SIMULIA\User\Ex_10.1],OK
i. 运行Python脚本
菜单:File,Run Script,[ws_composites_dcb.py],OK
# 注意,模型已命名为dcb.cae
菜单:Save As,[Ex_10.1.cae],OK
ii. 定义材料、截面,并赋截面给部件
模块:Property
模型:coh-els
部件:adhesive
菜单:Material,Manager
Create,Name [cohesive],Mechanical,Elasticity,Elastic
Type: Traction,E/Knn [5.7E14],G1/Ktt [5.7E14],G2/Kss [5.7E14]
# 损伤起始准则
Mechanical,Damage for Traction Separation Laws,Quads Damage
Nominal Stress Normal-only Mode [5.7E7]
Nominal Stress First Direction [5.7E7]
Nominal Stress Second Direction [5.7E7]
# 裂纹扩展准则和需要的参数
# 使用Benzeggagh-Kenane (BK),见Abaqus帮助文件
Suboptions,Damage Evolution
Type: Energy,Mixed mode behavior: BK,# 勾选: Power [2.284]
Normal Mode Fracture Energy [280] # GIc
Shear Mode Fracture Energy First Direction [280] # GIIc
Shear Mode Fracture Energy Second Direction [280] # GIIIc
OK,OK,# 关闭Material Manager对话框
菜单:Section,Manager
# 名为bulk的截面定义单层板
# 给胶层创建一个截面
Create,Name [cohesive],Category: Other,Type: Cohesive,Cont
Material: cohesive,Response: Traction Separation
# 勾选: Out-of-plane thickness [0.02],OK
# 关闭Section Manager对话框
菜单:Assign,Section
# 选取部件,Done,Section: cohesive,OK
iii. 定义分析步
模块:Step
菜单:Step,Create,Cont
# 大位移的几何非线性
标签页:Basic,Nlgeom: On
# 设置求解的时间增量参数
标签页:Incrementation,Maximum number of increments [1000]
Increment size: Initial [0.01],Minimum [1.0E-8],OK
菜单:Output,Field Output Requests,Edit,F-Output-1
Output Variables: # 展开:State/Field/User/Time
# 勾选:STATUS,OK
# 变量STATUS作为开关 指示CAE后处理何时停止绘制cohesive单元
# 完全退化(损伤)的单元的STATUS的值将为0
菜单:Output,History Output Requests,Create
Name [H-Output-2],Step: Step-1,Cont
Domain: Set : top
# 展开:Displ/Veloc/Accel,# 展开:U,# 勾选:U2
# 展开:Forces/Reactions,# 展开:RF,# 勾选:RF2,OK
# 指定集 合(节点)的U2(施加的位移)和RF2(支反力)将用于后处理
iv. 对模型划分网格
使用扫略技术划分网格,因为cohesive单元的长度依赖于方向。本例中,需要从底面到顶面定义胶层,因为cohesive单元的伸长将表示铺层的分离距离。
使用一个粘性参数以及COH2D4单元加速迭代求解的收敛。可以改变粘性参数的值,观察其对求解的影响。
模块:Mesh
模型:coh-els
对象:Part: beam
菜单:Mesh,Controls,Element Shape: Quad,Technique: Structured,OK
菜单:Mesh,Element Type
Family: Plane Strain,# 勾选: Incompatible modes
# 注意已赋CPE4I单元,OK
菜单:Seed,Edges
# 选取顶部水平线,Done
Method: By number,Number of elements [400],OK
# 选取左侧竖直线, Done
Method: By number,Number of elements [2],OK
菜单:Mesh,Part,Yes
对象:Part: adhesive
菜单:Mesh,Controls,Element Shape: Quad,Technique: Sweep
Redefine Sweep Path
# 如果高亮路径与厚度方向一致
Accept Highlighted
# 否则做相应的改变以完成该步操作,OK
菜单:Mesh,Element Type
Family: Cohesive,Viscosity: Specify [1.0E-5]
# 注意已赋COH2D4单元,OK
菜单:Seed,Edges
# 选取顶部水平线,Done
Method: By number,Number of elements [280],OK
# 选取左侧竖直线,Done
Method: By number,Number of elements [1],OK
菜单:Mesh,Part,Yes
v. 创建模型约束
使用有限厚度部件表示胶层有助于cohesive单元特性的定义。此处施加的约束可以保证cohesive单元上下表面在求解开始时重合,这样可以有效定义cohesive单元的初始长度为0。尽管不能形象展示,下面过程调整从面跟随主面。
模块:Interaction
菜单:Constraint,Create,Name [top],Type: Tie,Cont
Choose the master type: Surface,Surfaces,top,Cont
Choose the slave type: Surface,coh-top,Cont
Position Tolerance: Specify distance [0.002],OK
菜单:Constraint,Create,Name [bot],Type: Tie,Cont
Choose the master type: Surface,bot,Cont
Choose the slave type: Surface,coh-bot,Cont
Position Tolerance: Specify distance [0.002],OK
vi. 施加边界条件和载荷
模块:Load
菜单:BC,Create,Name [top],Step: Step-1,Disp/Rota,Cont
Sets,top,Cont,# 勾选:U1 [0],# 勾选:U2 [0.006],OK
菜单:BC,Create,Name [bot],Step: Step-1,Disp/Rota,Cont
Sets,bot,Cont,# 勾选:U1 [0],# 勾选:U2 [-0.006],OK
# 由于模型对称,不需要其他边界条件
vii. 求解和结果可视化
模块:Job
菜单:Job,Manager
Create,Name [Ex-10-1],Cont,OK,Submit,# 当完成后,Results
模块:Visualization
菜单:Plot,Deformed Shape # 注意,梁现在分开
菜单:Plot,Contours,On Deformed Shape
菜单:Animate,Time History # 观察分层过程
可视化模型中的力-分离距离行为:
模块:Visualization
菜单:Result,History Output
Output Variables: Reaction force: RF2 PI,Save As [coh-els-RF2],OK
Output Variables: Spatial displ: U2 PI,Save As [coh-els-U2],OK
# 关闭History Output对话框
菜单:Tools,XY Data,Create,Source: Operate on XY data,Cont
Operators: Combine(X,X),# 选取:coh-els-U2,Add to Expression
# 选取:coh-els-RF2,Add to Expression,
Save As [cohesive elements],OK
# 关闭Operate on XY Data对话框
菜单:Tools,XY Data,Plot,cohesive elements
绘制的结果应该与图10.6中的虚线相似。当cohesive单元开始退化(损伤)时,支反力下降。随着cohesive单元的退化,支反力不断降低。在Visualization模块,放大裂纹尖端附近,确定表示胶层的cohesive单元。
图10.6 对比模型中使用内聚力单元(例10.1)和
内聚力表面(例10.2)的力-分离距离行为
例10.2 使用基于表面的内聚力行为代替基于单元的方法求解例10.1。
解10.2 本例通过修改例10.1中定义的.cae文件来求解。删除了例10.1中定义的表示胶层的部件,然后在两个铺层的界面之间定义相互作用来表示胶层。即,使用基于表面的内聚力方法特征代替基于单元的内聚力方法特征。
菜单:File,Set Work Directory,[C:\SIMULIA\User\Ex_10.2],OK
菜单:File,Open,[C:\SIMULIA\User\Ex_10.1\Ex_10.1.cae],OK
# 在模型树右单击coh-els,Rename,[coh-surf],OK
菜单:File,Save As,[C:\SIMULIA\User\Ex_10.2\Ex_10.2.cae],OK
i. 删除不需要的特征
模块:Assembly
模型:coh-surf
菜单:Tools,Surface,Manager
# 单击coh-top,Delete,Yes
# 单击coh-bot,Delete,Yes,# 关闭Surface Manager
模块:Interaction
菜单:Constraint,Manager
# 单击bot,Delete,Yes,# 单击top,Delete,Yes
# 关闭Constraint Manager
# 在模型树展开coh-surf,# 展开Assembly,# 展开Instances
# 右单击adhesive-1,Delete,Yes
菜单:Feature,Regenerate
模块:Mesh
模型:coh-surf
对象:Part: beam
菜单:Mesh,Delete Part Mesh,Yes
ii. 创建分割
此时,模型仅有两个堆放在一起的梁。现在,需要将两个梁之间的界面划分开,用于表示胶层区域。下面创建分割。
菜单:Tools,Partition
Type: Edge,Method: Enter parameter
# 选取梁的底边,Done,Normalized edge parameter [0.7]
Create Partition,Done,# 关闭Create Partition对话框
iii. 对部件划分网格
菜单:Mesh,Part,Yes
iv. 创建集 合和表面
在例10.1中名为top的表面将被定义为两个梁之间的整个界面。因为两个梁是堆叠的,选择重合的一个面比较困难。为了帮助选择期望的表面,可以使用可视化工具——Display Group工具条。
模块:Assembly
# 找到Display Group工具条,如图没显示
# 单击菜单View,Toolbars,Display Group
# 单击Display Group工具条第一个工具(Replace Selected)
# 选取上部的beam,Done,# 仅有选取的部件可见
菜单:Tools,Surface,Edit,top
# 选取形成梁的底边的两条线,Done
菜单:Tools,Set,Create
Name [bond],Type: Geometry,Cont
# 选取梁底部的最长的线,Done
# 单击 Display Group 工具条第三个工具 (Replace All)
# 显示整个装配
名为bond的集 合表示胶层,与例10.1中名为adhesive-1的作用相同。
v. 定义表示胶层的相互作用
首先,定义接触的性能和特性。然后,定义所选的表面之间的相互作用。
Module: Interaction
菜单:Interaction,Property,Create
Name [coh],Type: Contact,Cont
Mechanical,Tangential Behavior,Friction formulation: Frictionless
Mechanical,Normal Behavior,Pressure-Overclosure: Hard Contact
Constraint enforcement method: Default
Mechanical,Cohesive Behavior
Eligible Slave Nodes: Specify the bounding node set in surf-to-surf
Traction-separation Behavior: Specify stiffness coeffs,Uncoupled
Knn [5.7e14],Kss [5.7e14],Ktt [5.7e14] # KI,KII和KIII
Mechanical,Geometric Properties,Out-of-plane surface thickness [0.02]
Mechanical,Damage,Criterion: Quadratic traction
Normal Only [5.7e7],Shear-1 Only [5.7e7],Shear-2 [5.7e7]
# 这些参数定义胶层中的损伤起始
# 勾选:Specify damage evolution
Type: Energy,
# 勾选:Specify mixed mode behavior: Benzeggagh-Kenane
# 勾选:Specify power-law/BK exponent [2.284]
Normal Fracture Energy [280],# 临界裂纹扩展GIc
1st Shear Fracture Energy [280] # GIIc
2nd Shear Fracture Energy [280] # GIIIc
# 勾选:Specify damage stabilization,Viscosity coeff. [1e-5]
# 与使用cohesive单元的作用相同
OK # 完成定义胶层的特性
菜单:Interaction,Create
Name [coh],Step: Initial,Type: Surface-to-surface (Standard),Cont
Surfaces,# 选取:bot,Cont # 这是主面
Surfaces,# 选取:top,Cont # 这是从面
Discretization method: Node to surface
标签页:Bonding
# 勾选:Limit bonding to slave nodes in subset: bond
# 这表示将梁粘在一起的胶层,OK
vi. 求解和结果可视化
Module: Job
菜单:Job,Manager
Create,Name [Ex-10-2],Cont,OK,Submit,# 当完成后,Results
Module: Visualization
菜单:Plot,Deformed Shape # 注意梁已经分开
菜单:Plot,Contours,On Deformed Shape
菜单:Animate,Time History # 分层扩展过程
可视化模型中的力-分离距离行为:
模块:Visualization
菜单:Result,History Output
Output Variables: Reaction force: RF2 PI,Save As [coh-surf-RF2],OK
Output Variables: Spatial displ: U2 PI,Save As [coh-surf-U2],OK
# 关闭History Output对话框
菜单:Tools,XY Data,Create,Source: Operate on XY data,Cont
Operators: Combine(X,X),# 选取:coh-surf-U2,Add to Expression
# 选取:coh-surf-RF2,Add to Expression,
Save As [cohesive surfaces],OK
# 关闭Operate on XY Data对话框
菜单:Tools,XY Data,Plot,cohesive surfaces