
1. 总体设计思路地铁车辆动力学模型的刚柔耦合改造1.1 为什么要做柔性轮对和轴箱在地铁车辆动力学仿真里轮对和轴箱长期以来都是按刚性体处理的。对高速动车组、机车、地铁车辆做稳定性分析和曲线通过能力研究时多刚体模型确实能解决不少问题但现在的地铁线路条件越来越复杂轮轨磨耗、噪声、振动问题越来越突出单纯把轮对当作刚体很多现象根本解释不了。轮对是典型的细长旋转轴类构件。车轮和钢轨接触时轮轨法向力和切向力都会在轮对内部产生弯曲变形尤其是过曲线、通过道岔、车轮踏面出现局部缺陷时轮对挠曲变形直接影响轮轨接触几何和蠕滑力分布。轴箱是连接轮对和一系悬挂的过渡部件它本身刚度很大但它的安装位置、与轮对轴承的配合关系决定了整个一系力传递路径的准确性。如果轴箱也做成柔性体轮对变形传递到轴箱、再到一系弹簧的路径更真实后续做车体振动、线路不平顺响应分析时会精确一个档次。用一句话概括刚柔耦合就是把车辆系统中受力复杂、变形明显的零部件从“铁疙瘩”变成有弹性、能振动的结构体而轮对和轴箱正是优先考虑柔性化的第一梯队零部件。1.2 全柔性化还是局部柔性化不少初学者上来就想把整个转向架包括构架、轮对、轴箱、摇枕全做成柔性体这个想法出发点是好的但实际跑起来会非常痛苦。整车模态数量爆炸式增长每一个柔性体都携带几十阶模态多体系统方程的自由度可能冲到几十万求解动辄几个小时起步而且模型一旦发散排查范围也很广。我的建议是分阶段做第一步把轮对和轴箱做成柔性体构架和车体先保持刚性跑顺以后再看结果差异决定是否加入柔性构架。做轮对和轴箱的柔性化不是因为它们变形量最大而是因为它们的变形会通过轮轨接触直接影响车辆运行安全性指标——轮重减载率、脱轨系数、轮轨横向力的波动。轮对弯曲变形、轴箱扭转位移这些在刚性模型里是完全被忽略的而在实测数据里恰恰是高频振动的重要来源。这套方法从逻辑上是递进的先解决最直接影响轮轨关系的结构柔性验证结果合理之后再考虑把柔性范围往外扩展千万不要一上来就贪大求全。1.3 软件分工与总体流程做刚柔耦合仿真Ansys 和 SIMPACK 的分工很明确Ansys 负责有限元建模、计算模态、输出柔性体中性文件SIMPACK 负责导入柔性体、建立多体系统拓扑、设置轮轨接触和激励、求解后处理。两者之间通过标准接口文件传递信息。具体流程是三维几何建模、有限元网格划分、材料参数设置、建立连接节点和刚性区域、自由模态求解、导出柔性体文件、SIMPACK 导入、定义连接复核、建立轮轨接触和悬挂边界、仿真求解、结果后处理。每一步之间有强烈的先后依赖关系尤其是接口节点位置和坐标系定义如果在 Ansys 阶段定错了到 SIMPACK 里装不上回头改代价非常大。2. 前期准备与模型简化2.1 软件版本与功能模块Ansys 这边的柔性体输出一般用 Mechanical APDL 界面来做比 Workbench 更方便控制节点、刚性区域和输出选项。当然 Workbench 也能做但要把分析类型切到 Modal然后通过 FE Modeler 或直接导出 CDB 文件流程上绕一些。SIMPACK 那边必须有 Multibody Dynamics 的完整许可并且需要能读取对应格式柔性体文件的模块。有一点容易踩坑不同软件版本之间的柔性体文件格式兼容性。老版本 SIMPACK 读取新版本 Ansys 导出的 CDB 文件时某些单元类型可能不认识导致导入失败。我用的组合是 Ansys 19.0 左右配合 SIMPACK 2020x 左右整体兼容性较好。如果你用的是更老或更新的组合建议先做一个小模型验证导入链路是否通畅不要等到整车模型搭了一半才发现导入不了。2.2 三维几何模型获取与处理地铁轮对几何模型可以直接从三维软件导入常见的格式是 STEP 或 IGES。拿到原始模型之后别急着画网格先做几何清理。轮对上有踏面、轮缘、辐板孔、轮毂、轴颈、轴身等结构很多细节如倒角、退刀槽、小圆角对动力学振动模态影响极小却会拖垮网格质量和计算时间。我当时做地铁轮对时把直径小于 3mm 的圆角、倒角全部忽略把辐板孔保留因为辐板孔对轮对模态有一定影响但把孔边的小倒角删掉。轴箱模型相对简单外形像一个套筒加耳座但要特别注意轴承安装孔和弹簧座的配合面。轴箱上用于连接一系弹簧的弹簧座面、用于安装转臂或定位节点的位置后续要定义载荷传递节点这些面不能简化过头要保证在网格划分时有足够的节点可供选择。2.3 网格划分原则和材料参数轮对网格推荐用六面体单元为主因为六面体在轴类结构上有更高的计算精度和更少的单元数量。踏面接触区域、轮缘根部、辐板过渡位置适当加密单元尺寸大概控制在 5~10mm其他区域可以放到 15~20mm。轴箱相对小整体尺寸 5mm 左右比较稳妥。需要特别注意的是网格密度和模态结果紧密相关网格太粗会让模态频率偏高这个特性在轴类零件上尤其明显。材料参数方面地铁轮对基本用的是高强度碳素钢或合金钢弹性模量取 210GPa 左右密度 7.85e3 kg/m³泊松比 0.3。轴箱材质通常是铸钢或锻钢参数类似。阻尼比在模态分析中通常设定为 0.01~0.02虽然模态频率不受阻尼影响但 SIMPACK 动力学求解中模态阻尼会影响振动衰减速度建议按照实际材料特性给 0.01 左右。我整理了一个常用的参数表方便照着设置参数项轮对值轴箱值备注弹性模量2.1e11 Pa2.1e11 Pa标准钢材泊松比0.30.3各向同性密度7.85e3 kg/m³7.85e3 kg/m³铸钢可能略低模态阻尼比0.010.01后续可调整2.4 Ansys 中接口节点与刚性区域设置这一节是整个流程中最容易出错的地方我单独拿出来讲。Ansys 导出到 SIMPACK 的柔性体必须有“外部节点”也就是接口节点用于 SIMPACK 中施加约束、弹簧和力。接口节点选择的原则是在轴箱与一系弹簧连接处、轮对轴承安装位置、轴箱与构架定位节点处各建一个节点。这些节点不一定是网格节点可以是空间中的独立点通过刚性区域如 CERIG连接到周围实体网格节点上。在 Ansys 里用 CERIG 命令建立刚性区域时要选一个主节点这个主节点就是外部接口节点再把周围一圈实体节点耦合到主节点上。这个主节点在后续导出 CDB 文件时会成为 SIMPACK 中的 Marker 点用来施加力和运动约束。刚性区域覆盖的范围不宜过大过大把柔性体局部做得过刚变形被锁死模态振型失真过小则载荷传递不充分。以轴箱为例在一系弹簧座位置建立一个外部节点用刚性区域连接弹簧座安装面上的所有节点。这样做的物理含义是弹簧座面本身刚度远大于弹簧视为刚性块是合理的。3. 用 Ansys 生成可用的柔性体文件3.1 模态分析类型设置柔性体文件本质上是模态数据文件SIMPACK 利用模态叠加法来模拟弹性变形。所以在 Ansys 里做的分析类型是模态分析而且默认是自由模态也就是不加任何约束结构处于自由-自由状态。这一点很多人会搞错尤其是习惯了做“固定约束模态分析”的很容易在轮对轴箱上施加约束。一旦加了固定约束模态频率和振型都不对导入 SIMPACK 后整个系统的模态叠加结果完全乱套。自由模态分析的前 6 阶是刚体模态频率接近 0对应三个平动和三个转动这 6 阶必须保留因为 SIMPACK 里柔性体的刚体运动由多体系统的约束方程决定柔性体文件里的刚体模态恰好提供了这种数学基础。有效弹性模态从第 7 阶开始。模态提取方法用默认的 Block Lanczos 就行设置起始频率 0Hz提取前 20~30 阶模态足够覆盖地铁车辆关心的频段。地铁轮对的实际踏面激励频率在 80km/h 速度下主要分布在 0~300Hz轮对一阶弯曲模态通常在 60~100Hz取 30 阶可以覆盖到 2000Hz 以上足够满足动力学舒适性和安全性分析需求。3.2 导出文件格式与单位统一Ansys 中可以通过 CDWRITE 命令直接写出 CDB 文件也可以在模态分析后通过专用工具导出。SIMPACK 兼容的格式有多个版本常用的有两种FBI 格式和 CDB 格式。CDB 文件体积大但包含单元信息完整适合调试阶段使用FBI 文件是经过压缩的二进制格式适合正式仿真。单位统一是跨软件协作最容易翻车的点。Ansys 建模时如果用的是国际单位制导出文件后 SIMPACK 也设置为国际单位制这是最稳妥的做法。我见过有人在 Ansys 里用毫米建模导出后忘记调整单位SIMPACK 里导入后轮对尺寸全部放大轮轨接触几何完全错乱弹出的结果根本没法看。补充一句Ansys 的模态分析不强制要求单位制但导出文件和 SIMPACK 模型之间的单位必须一致建议全程统一为 kg-m-s。3.3 导出前的检查和调试导出文件之前有几步检查建议养成习惯第一模型总重量。在 Ansys 里查看轮对和轴箱总体质量和实际地铁轮对 1.2~1.5 吨左右的量级对比如果差得太多说明几何或材料密度有问题。第二模态频率合理性。自由模态第 7 阶开始的弹性模态千万不能出现负频率负频率直接说明求解器异常。一阶弹性模态应该在几十赫兹范围如果出现上千赫兹说明网格刚度过大或接口区域设置过刚。第三刚体模态检查。前 6 阶频率应该在 0Hz 附近数值上可以出现小数点后几位的小数偏差但不能超过 1e-5 量级如果有明显偏差说明结构内部有预紧或约束残留。做过这几项检查后导出的 CDB 文件导入 SIMPACK 时基本不会出现大问题。我踩过一次很深的坑模型里有几个孤立点没参与任何单元导出后导入 SIMPACK 提示节点数据错误排查了一下午才发现是建模时遗留的几何点。建议导出前用 SELECT 命令把所有独立节点选出来检查一遍避免这种低级错误。4. SIMPACK 刚柔耦合模型搭建与求解4.1 柔性体导入与坐标对齐SIMPACK 中新建一个模型选择对应车辆模板或者从空白模型开始搭建。导入柔性体的步骤是在 Models 下选择 Flexible Body导入刚才的 CDB 文件SIMPACK 会自动读取模态信息。导入之后第一件事是确认坐标对齐。Ansys 里的笛卡尔坐标系和 SIMPACK 的全局坐标系可能存在旋转或平移差异。比如轮对的旋转轴在 Ansys 中是 X 轴而 SIMPACK 中默认 Z 轴或 Y 轴需要设置旋转矩阵对齐。坐标不对齐的情况下轮对会出现明显的装错位——最典型的表现是轮对在轨道上歪斜仿真一开始就剧烈振动甚至直接飞出去。正确做法是导入柔性体后在柔性体属性里查看“参考坐标系”手动输入旋转角度对齐到 SIMPACK 全局坐标。如果轮对是绕 X 轴旋转的圆柱体就调整 RY 或 RZ 旋转角让轴线与 SIMPACK 中轮对运动轴方向一致。每一步调整后最好在图形界面里目测一下轮对和钢轨的位置关系确认无误后再继续。4.2 Marker 点定义与连接关系SIMPACK 中的力和约束都通过 Marker 施加柔性体导入后Ansys 中定义的外部节点会自动生成对应的 Marker。这些 Marker 带有柔性体节点的位移信息SIMPACK 会把载荷和约束精确映射到对应的模态坐标上。轮对和轴箱之间通过轴承连接由于轮对是柔性体轴箱是柔性体二者之间的连接不能再简单用铰接而应该用弹性力或者 bushing 单元来模拟轴承刚度。地铁轮对轴承径向刚度通常在 1e8~1e9 N/m 量级仿真中可以按实测或供应商数据输入。如果这里直接给刚体铰接柔性轮对的变形就无法传递到轴箱刚柔耦合的意义就失去了一半。一系悬挂连接同样在 Marker 上施加弹簧阻尼力。轴箱上的弹簧座 Marker 和构架上的对应 Marker 之间加一系弹簧刚度按地铁车辆一系悬挂垂向约 1e6 N/m 量级设置。注意弹簧力的施加点一定选在 Ansys 里定义的接口节点上如果选在普通网格节点上SIMPACK 的柔性体计算会无法正确插值导致力在某一个节点上集中产生局部的虚假变形。4.3 轮轨接触模型参数设置SIMPACK 的核心优势是轮轨接触建模。导入柔性轮对后轮轨接触算法不变但柔性体的表面会参与接触计算。这里有一个重要细节柔性体的接触点标记要设置在轮对踏面表面的外部节点上SIMPACK 通过插值计算接触点位置再利用模态坐标计算接触区域的局部变形。轮轨法向力用 Hertz 接触理论计算切向力用 Kalker 简化理论或 FASTSIM 算法。地铁车辆仿真里我一般用 FASTSIM 作为默认算法计算效率高且精度足够。轨道不平顺谱按线路等级选取如果做直线运行分析可以用美国谱或我国地铁谱中对应等级。踏面轮廓建议用 LMA 或 LM 磨耗型踏面配 60kg/m 钢轨廓形轨距按 1435mm 标准轨底坡 1:40。这些参数直接影响轮轨接触几何计算结果务必从真实运营线路资料获取。4.4 求解器与仿真工况配置SIMPACK 求解刚柔耦合模型积分器要选择适合刚性问题的一种。SIMPACK 内置多种积分器较常用的有 SODASRT 和 DASSL。柔性体模型中高频模态会让方程变得更刚性建议优先选用 DASSL 或者 SORASRT 这类隐式积分器时间步长控制在 1e-4~1e-5 秒量级仿真长度根据工况需求设置比如跑 10 秒线路取 2~5 秒稳定段做分析。初始化阶段要先做静平衡计算。柔性体引入了大量弹性自由度静平衡迭代容易出现不收敛的情况。遇到不收敛第一步检查约束是否正确约束了刚体模态第二步检查弹簧刚度初始力是否过大第三步调低收敛容差把容差从默认 1e-6 放到 1e-5 再试。地铁车辆典型仿真工况包括直线运行不同速度60km/h、80km/h、100km/h、曲线通过曲率半径 300m超高 120mm、道岔通过以及线路不平顺激励下的随机响应。每个工况设置好速度和路径后开始求解观察轮轨力、脱轨系数、轮重减载率等关键指标。我用过一个比较实用的方法先跑一版刚体模型做对比基准再跑刚柔耦合模型两者之差直接反映柔性变形的影响量。5. 结果分析、验证与常见问题处理5.1 模态与频响的合理性验证仿真结束后的第一步不是看轮轨力而是检查柔性体的变形量级是否符合物理常识。在 SIMPACK 后处理中调出轮对轴箱的弹性位移云图观察最大变形位置。地铁轮对在正常行驶工况下弹性变形量级应该是在 0.1~1mm 范围。如果出现几毫米甚至几十毫米的变形说明模态参数设置或者载荷施加有问题仿真结果不可信。再看频域特征把轮对中间位置的垂向加速度做频谱分析柔性模型的频谱中应该能看到轮对一阶弯曲模态对应的峰值。如果峰值频率和 Ansys 模态分析得到的频率一致说明刚柔耦合链路打通了。我实测的一次结果里轮对一阶弯曲模态约 78Hz在 SIMPACK 仿真频谱中 78Hz 附近有明显峰值和理论值误差在 2% 以内这就是验证成功的标志。还有一个值得对比的指标是高频轮轨力。刚体模型轮轨力在接触几何不变时基本稳定柔性模型由于轮对变形影响轮轨力会出现明显的高频波动。这种波动不是数值噪声而是物理上轮对变形、回弹导致的轮轨力重新分配。观察这些高频成分的幅值如果远小于主频力幅值的5%则保持现状即可如果占比很大要考虑是否触发了轮轨分离。5.2 常见错误与排查手段刚柔耦合仿真最常见的报错和异常我整理成了一张速查表现象可能原因处理方法导入 CDB 文件报错单元类型不兼容或格式版本问题换低版本格式或用 FBI 文件导入仿真开始瞬间发散柔性体坐标未对齐或单位错误重新检查旋转矩阵和单位制轮轨力出现高频振荡接触节点没有正确附着到柔性体检查接触 Marker 是否取自接口节点静平衡迭代不收敛约束不足或弹簧刚度组合异常检查刚体模态约束放宽容差变形量异常偏大接口节点刚性区域遗漏回 Ansys 检查 CERIG 设置结果文件巨大柔性体模态阶数过多减少模态阶数到需要的频段几倍SIMPACK 报错日志里经常出现的内容包括“no valid mode shape data”、“marker belongs to rigid body”等这些错误基本都指向柔性体文件未正确读取或 Marker 定义错误。排查时先看柔性体数据再看 Marker 属性最后检查力元连接顺序。这里有个容易被忽略的小细节SIMPACK 中力元连接 Marker 时要区分“作用在柔性体上的 Marker”和“连接到地面的 Marker”。柔性体上的 Marker 有模态坐标依赖顺序弄反了会导致力被当作阻尼或质量矩阵的一部分产生不合理的能量耗散。5.3 仿真效率优化与个人经验刚柔耦合模型的求解时间比刚性模型长了一个数量级是正常的。我的经验是一个包含 10 秒线路仿真的模型刚性模型可能只要几分钟柔性轮对轴箱模型就要半小时到一小时左右。如果只关心稳态曲线通过可以缩短仿真时长只跑曲线中段的 6~8 秒省去直线加速进入的过渡段。想进一步提速可以考虑把模态分析中不需要的高阶模态截断。地铁车辆运行速度 120km/h 以内轮轨激励主频集中在 500Hz 以下保留到 800~1000Hz 已经足够对应的模态阶数可能需要 30~50 阶。模态截断后求解速度能提升 30% 以上而且结果几乎不受影响。一个比较激进但有效的做法是只让一根轮对是柔性的另一根保持刚性用来对比分析柔性效应对左右轮对的差异。这样做可以控制计算规模同时能观察柔性轮对的扭转、弯曲变形对两侧轮轨力的不对称影响。当然这是研究性做法如果做工程评估建议四根轮对全部柔性化避免人为引入不对称。5.4 一个需要注意的工程细节刚柔耦合仿真结果和实测对标时不要忽略轮对不平衡力和初始几何偏差。实际地铁轮对不可避免存在踏面磨损、轮径差、动平衡偏差这些因素在仿真模型中如果不设置刚柔耦合带来的高频力反而会和实测数据对不上。我的习惯是在做刚柔耦合仿真前先加入轮轨不平顺激励再做稳态仿真对比确认仿真结果对激励的响应是合理的然后再加入铰接部位的间隙和非线性特性。顺序错了会导致大量变量同时耦合出问题很难定位。另外柔性体的阻尼设置会影响轮轨力高频成分的衰减速度。如果仿真结果显示系统阻尼过大轮轨力高频振荡衰减过快和实测能量分布不匹配可以把模态阻尼调到 0.005 再试。这些细节参数没有绝对标准需要结合实测数据进行标定。最后分享一个个人心得刚柔耦合仿真并不是“越柔越好”柔性体引入的本质是为了更精准地还原结构变形对系统动力学的影响而不是为了炫技。搭建模型时建议每加一个柔性体就问自己一句它在这个工况下的变形真的会改变轮轨力或者车辆稳定性的结论吗如果答案不确定就先保持刚性跑通流程再回来尝试柔性化。这种克制能让建模过程更高效排查问题也更清晰。