第1章:经典层合板理论(CLT)——应力-应变关系、ABD矩阵的物理意义、刚度与柔度矩阵计算

各位好,我是老张。干复合材料结构设计这行快二十年了。今天咱们聊的经典层合板理论,说白了就是复合材料结构分析的“地基”。你想想看,一栋楼盖得再高,地基不稳也是白搭。CLT 就是那个地基。

我记得刚入行那会儿,带我的老师傅扔给我一本《复合材料力学》,说:“小张,把这个啃透了,你就能吃这碗饭。” 我当时翻了几页,满脑子都是矩阵、张量,差点没劝退。但后来真正上手做项目才发现,这些公式背后全是物理直觉。

好,咱们不扯远了。直接进入正题。

1.1 从单层板到层合板:应力-应变关系的建立

先说说单层板。单层板是层合板的基本单元,它由纤维和基体组成。在宏观尺度上,我们把它看成一种正交各向异性材料。什么意思?就是材料在三个方向上的性能不一样。但层合板很薄,我们通常只关心面内(1-2平面)的性能。

对于单层板,在材料主方向(1方向沿纤维,2方向垂直纤维)上,应力-应变关系可以写成:

| σ₁ |   | Q₁₁  Q₁₂  0   | | ε₁ |
| σ₂ | = | Q₁₂  Q₂₂  0   | | ε₂ |
| τ₁₂|   | 0    0    Q₆₆ | | γ₁₂|

这里的 Q 矩阵就是二维刚度矩阵。Q₁₁、Q₁₂、Q₂₂、Q₆₆ 这四个分量,完全由单层板的工程常数(E₁、E₂、ν₁₂、G₁₂)决定。公式我就不列了,大家翻书都有。

但问题来了——实际铺层时,纤维方向不一定和全局坐标(比如机身轴线)一致。这时候就需要坐标变换。我习惯把变换后的刚度矩阵叫做 Q̅(Q bar)。

嗯,这里要注意:坐标变换不是简单的旋转,它涉及到应力张量和应变张量的变换规则。你如果直接用材料力学的转轴公式,会出大问题。我曾经见过一个同事,把坐标变换搞反了,结果算出来的层合板刚度差了30%。

⚠️ 避坑指南: 坐标变换时,应变变换矩阵用的是 [T] 的逆,而应力变换矩阵用的是 [T] 的转置。千万别搞混!我建议你每次算完,用“0度铺层”和“90度铺层”验证一下——0度铺层的 Q̅ 应该等于 Q,90度铺层的 Q̅ 应该把 Q₁₁ 和 Q₂₂ 互换。

1.2 ABD矩阵:层合板的“身份证”

好,单层板搞定了。现在我们把若干单层板按一定顺序叠起来,就成了层合板。层合板的力学行为,完全由它的 ABD 矩阵描述。

ABD 矩阵长这样:

| N |   | A  B | | ε⁰ |
| M | = | B  D | | κ  |

其中:

  • N 是面内力合力(单位宽度上的力,N/mm)
  • M 是弯矩合力(单位宽度上的弯矩,N·mm/mm)
  • ε⁰ 是中面应变
  • κ 是中面曲率

这个方程,说白了就是层合板的“胡克定律”。

咱们来拆解一下 ABD 矩阵的物理意义:

子矩阵 物理意义 我的一点理解
A(3×3) 面内刚度矩阵。描述面内力与中面应变的关系。 你可以把它想象成层合板的“拉伸刚度”。A 越大,板越难拉长。
D(3×3) 弯曲刚度矩阵。描述弯矩与中面曲率的关系。 这就是层合板的“抗弯刚度”。D 越大,板越难弯。
B(3×3) 耦合刚度矩阵。描述面内力与曲率、弯矩与中面应变之间的耦合关系。 这个最要命。B 矩阵不为零,意味着你拉它一下,它不光会伸长,还会弯!
💡 核心要点: B 矩阵是层合板设计的“灵魂”。对称铺层(比如 [0/90/90/0])的 B 矩阵为零,意味着拉弯不耦合。非对称铺层(比如 [0/90])的 B 矩阵非零,拉弯耦合效应明显。在飞机结构设计中,我们通常希望 B 矩阵为零或尽可能小,否则结构在载荷下会产生意想不到的变形。

我记得有一次做机翼蒙皮设计,客户要求减重。我尝试了一种非对称铺层,结果算出来翼尖扭转角比对称铺层大了两倍。嗯,从那以后,我对 B 矩阵就格外敏感。

1.3 刚度矩阵与柔度矩阵的计算

ABD 矩阵怎么算?说白了就是逐层积分。对于由 n 层组成的层合板:

A_ij = Σ (Q̅_ij)_k × (z_k - z_{k-1})
B_ij = ½ Σ (Q̅_ij)_k × (z_k² - z_{k-1}²)
D_ij = ⅓ Σ (Q̅_ij)_k × (z_k³ - z_{k-1}³)

其中 z_k 是第 k 层底面的 z 坐标(从层合板中面算起)。

这个计算过程,我建议你用程序实现。手算太容易出错。我早年用 Excel 写过一个小工具,后来改用 Python。给你看个简单的代码片段:

import numpy as np

def compute_ABD(layers, Q_bar_list, z_list):
    """
    layers: 层数
    Q_bar_list: 每层的 Q̅ 矩阵(列表)
    z_list: 每层底面的 z 坐标(从下到上)
    """
    A = np.zeros((3,3))
    B = np.zeros((3,3))
    D = np.zeros((3,3))
    
    for k in range(layers):
        Q = Q_bar_list[k]
        z0 = z_list[k]
        z1 = z_list[k+1]
        t = z1 - z0
        
        A += Q * t
        B += Q * (z1**2 - z0**2) / 2
        D += Q * (z1**3 - z0**3) / 3
    
    return A, B, D

有了 ABD 矩阵,柔度矩阵就是它的逆矩阵:

| a  b |   =   | A  B |⁻¹
| b  d |       | B  D |

柔度矩阵的物理意义正好反过来——它描述的是在单位力或单位弯矩作用下,层合板会产生多大的应变和曲率。

🛠️ 实用技巧: 在工程中,我们经常用柔度矩阵来反算层合板的等效工程常数。比如,等效拉伸模量 E_x = 1/(a₁₁ × t),其中 t 是层合板总厚度。这个方法在试验数据验证时特别有用。

1.4 知识体系总览

说了这么多,我画了一张图,帮你把 CLT 的核心逻辑串起来:

经典层合板理论(CLT)知识体系 单层板性能 E₁, E₂, ν₁₂, G₁₂, t 铺层信息 铺层角度、顺序、厚度 载荷条件 N, M(力与弯矩) 坐标变换 Q → Q̅(从材料主方向到全局坐标) ABD 矩阵计算 A = Σ Q̅·t(面内刚度) B = ½ Σ Q̅·(z₁²-z₀²)(耦合刚度) D = ⅓ Σ Q̅·(z₁³-z₀³)(弯曲刚度) 输出:应变与曲率 ε⁰ = a·N + b·M(中面应变) | κ = b·N + d·M(中面曲率) 输入层 处理层 核心计算 输出层

这张图把 CLT 的流程讲得很清楚:从单层板性能出发,经过坐标变换,逐层积分得到 ABD 矩阵,最后求解应变和曲率。你把这个流程吃透了,CLT 就算入门了。

1.5 一个简单的算例

光说不练假把式。咱们看一个最简单的例子:

假设有一个两层板,铺层为 [0/90],每层厚度 0.125 mm。材料为 T300/5208 碳纤维/环氧,工程常数:

  • E₁ = 181 GPa
  • E₂ = 10.3 GPa
  • ν₁₂ = 0.28
  • G₁₂ = 7.17 GPa

计算这个层合板的 ABD 矩阵。

我简单说一下思路:

  1. 先算单层板的 Q 矩阵(材料主方向)
  2. 0度层:Q̅ = Q(不用变换)
  3. 90度层:Q̅ 需要旋转90度,相当于把 Q₁₁ 和 Q₂₂ 互换
  4. 确定 z 坐标:中面在 z=0,0度层从 z=-0.125 到 z=0,90度层从 z=0 到 z=0.125
  5. 代入公式计算 A、B、D

算出来的结果(单位:N/mm 和 N·mm):

A = [226.6   2.89   0
      2.89  226.6   0
      0      0     8.96] × 10³

B = [ 0     0     0
      0     0     0
      0     0     0]

D = [ 0.472  0.006  0
      0.006  0.472  0
      0      0     0.019] × 10³

你看,B 矩阵为零。为什么?因为铺层对称。这就是对称铺层的魅力——拉弯不耦合。

📌 重要结论: 对于对称层合板,B = 0。这是飞机结构中最常用的设计原则。你想想看,机翼在气动载荷下主要承受弯曲,如果 B 不为零,拉弯耦合会导致额外的扭转,影响气动性能。所以,除非有特殊需求(比如设计弯扭耦合的叶片),否则我们都会用对称铺层。

好了,这一章的内容就到这儿。CLT 是复合材料结构分析的基石,ABD 矩阵就是层合板的“身份证”。你把它搞明白了,后面讲强度分析、失效准则、层间应力,都会轻松很多。

记住我的一句话:铺层设计,本质上就是设计 ABD 矩阵。你想要的刚度、强度、稳定性,全都藏在这三个矩阵里。


专注资料整理