4、材料本构模型:Johnson-Cook模型、Barlat模型、粘弹性模型
做防护材料仿真这些年,我最大的体会就是:选对本构模型,仿真就成功了一半。材料在冲击下的行为太复杂了——它既会变硬,又会变软;既有弹性,又有塑性;还跟温度、应变率、加载方向扯不清关系。今天咱们就聊聊三种最常用的本构模型,我一个个拆开讲。
4.1 Johnson-Cook模型:高应变率下的“万金油”
Johnson-Cook模型,简称J-C模型。说白了,它就是描述材料在大变形、高应变率、高温下怎么变形的。你想想看,子弹打装甲、碎片撞击防护板,哪个不是这种工况?
J-C模型的核心公式长这样:
σ = (A + B·εⁿ) · (1 + C·ln(ε̇*)) · (1 - T*ᵐ)
看着复杂?其实就三部分相乘:
- (A + B·εⁿ) —— 静态应力-应变曲线,A是屈服强度,B是硬化系数,n是硬化指数
- (1 + C·ln(ε̇*)) —— 应变率强化项,C控制材料对加载速度的敏感度
- (1 - T*ᵐ) —— 温度软化项,m控制材料随温度升高变软的速度
关键参数获取
我个人习惯,A、B、n从准静态拉伸试验得到。C值需要做不同应变率的 Hopkinson 杆试验。m值嘛,得做高温拉伸。这些参数一个都不能少,少一个仿真结果就偏了。
我的经验
我在做装甲钢仿真时遇到过一个问题:J-C模型预测的穿深总是偏小。后来发现,是C值取错了。不同应变率区间,C值其实不一样。我建议你至少取三个应变率点(10⁻³、10²、10⁴/s)来拟合C值,别偷懒。
4.2 Barlat模型:各向异性材料的“精准尺”
J-C模型假设材料是各向同性的。但现实中呢?轧制板材、挤压型材,哪个不是有方向性的?这时候就得请出Barlat模型了。
Barlat模型专门处理各向异性屈服问题。它用一个屈服函数来描述材料在不同方向上的强度差异。最常见的Barlat'89和Barlat'2000,在汽车覆盖件、铝合金装甲板仿真中特别常用。
它的核心思想是:
- 引入各向异性系数(r₀、r₄₅、r₉₀),描述不同方向上的塑性流动差异
- 用屈服面形状指数(M值)控制屈服面的形状,M=6适用于BCC材料,M=8适用于FCC材料
- 能准确预测拉压不对称性——有些材料拉伸和压缩强度不一样
注意!
Barlat模型参数多,标定起来比较麻烦。我曾经帮一个学生调参数,他给了7组不同方向的拉伸数据,我花了整整两天才拟合好。但一旦标定准确,仿真精度确实比J-C模型高出一大截。
下面这张图展示了J-C模型和Barlat模型在描述材料屈服行为上的区别:
4.3 粘弹性模型:时间依赖的“记忆材料”
有些材料,比如橡胶、聚合物、生物组织,它们的力学行为跟时间密切相关。你拉它一下,它不会立刻恢复原状,而是慢慢回弹。这就是粘弹性。
粘弹性模型的核心是松弛时间和蠕变。最常用的有:
- Maxwell模型:弹簧+阻尼器串联,描述应力松弛
- Kelvin-Voigt模型:弹簧+阻尼器并联,描述蠕变
- 广义Maxwell模型:多个Maxwell单元并联,更贴近真实材料
在仿真软件里,粘弹性模型通常用Prony级数来定义:
G(t) = G₀ · [1 - Σgᵢ · (1 - e^(-t/τᵢ))]
其中G₀是瞬时剪切模量,gᵢ是相对模量,τᵢ是松弛时间。一般取3-5个Prony项就够了。
避坑指南
我曾经用粘弹性模型仿真橡胶密封圈的冲击响应,结果算出来应力比实测大了3倍。后来发现,是我把松弛时间取错了。粘弹性材料的松弛时间跟温度强相关——温度越高,松弛越快。记得用WLF方程做时温等效转换。
4.4 三种模型的对比与选择
说了这么多,到底什么时候用哪个?我整理了一个对比表:
| 模型 | 适用材料 | 适用工况 | 参数数量 | 标定难度 |
|---|---|---|---|---|
| Johnson-Cook | 金属(钢、铝、钛) | 高应变率冲击、穿甲 | 6-8个 | 中等 |
| Barlat | 轧制板材、铝合金 | 各向异性变形、成形 | 10-15个 | 较高 |
| 粘弹性 | 橡胶、聚合物、泡沫 | 低速冲击、缓冲吸能 | 6-12个 | 中等 |
我的建议
做防护材料仿真,我一般这样选:
- 金属装甲:首选J-C模型,简单实用。如果材料有明显各向异性(比如轧制钛合金),再加Barlat修正。
- 复合材料:用粘弹性模型描述基体,再加损伤模型。
- 多层复合装甲:陶瓷层用J-C,背板用粘弹性,中间界面用内聚力模型。
嗯,这里要注意一点:没有万能模型。我见过有人非要用J-C模型算橡胶,结果算出来应力是负的——因为J-C模型根本不适合描述大变形弹性体。选模型之前,先搞清楚你的材料在冲击下到底怎么变形的。
最后说一句,模型参数标定是门手艺活。我建议你拿到一组参数后,先用一个简单的单轴拉伸或压缩算例验证一下,确认趋势对了再上复杂工况。别一上来就跑整弹穿甲,算出来结果不对都不知道错在哪。
公众号:蓝海资料掘金营,微信deep3321