ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Ansys Workbench齿轮接触分析:从赫兹公式到有限元仿真的工程实践

Ansys Workbench齿轮接触分析:从赫兹公式到有限元仿真的工程实践 1. 齿轮接触分析到底在算什么很多人第一次拿到齿轮接触强度的分析任务脑子里第一反应是打开软件、导入模型、划网格、点求解。这套动作本身没错但如果你不清楚软件背后在算什么结果出来你根本判断不了对错。我见过太多人算完齿轮接触应力云图花花绿绿挺好看一问接触应力峰值出现在哪个啮合位置、为什么是这个值就答不上来了。齿轮接触分析的核心本质上是在求解两个弹性体在压力作用下的接触面行为。这里有两个关键量一个是接触面上的法向压力分布另一个是接触区附近的次表面剪应力。前者直接对应齿面会不会压溃后者对应齿面会不会剥落。赫兹在一百多年前就给出了两个圆柱体接触的解析解齿轮的齿面啮合在局部可以近似成两个圆柱体的接触所以赫兹公式至今仍然是校核齿轮接触强度的第一道手算关卡。那既然有赫兹公式为什么还要做有限元因为赫兹公式的假设太苛刻了它要求接触体是各向同性、均质、完全弹性接触面光滑且无摩擦载荷垂直于接触面接触区尺寸远小于接触体尺寸。实际齿轮呢齿根过渡曲线有应力集中齿面有摩擦轮齿有弯曲变形导致接触位置偏移多齿啮合时载荷分配不均匀这些赫兹公式统统处理不了。有限元的价值就在于把这些“不理想”的因素全部纳入计算。具体到Ansys Workbench这个平台齿轮接触分析通常走的是静力学结构分析路线。你可能会问齿轮明明是转动的为什么用静力学因为我们要看的是某一瞬间、某一个啮合位置的应力状态。把齿轮转到最不利的啮合位置固定住施加载荷算这一瞬间的应力。这叫“准静态”分析思路。当然如果你要看整个啮合周期的应力变化那就需要做瞬态分析或者多载荷步分析那是另一个话题了。还有一个概念必须提前说清楚接触应力和齿根弯曲应力是两码事。接触应力是齿面压出来的弯曲应力是轮齿当悬臂梁弯出来的。这两个应力的危险位置不同、失效模式不同、评价标准也不同。很多人把这两个混在一起看结果齿根应力超标了却去改齿面硬度完全南辕北辙。这篇内容主要聚焦接触强度但弯曲应力的提取我也会顺带提一下因为实际工程中这两个通常要一起看。2. 几何模型处理从CAD到分析模型的取舍2.1 齿轮建模最容易犯的错直接从三维软件里把完整的齿轮装配体导进来这是新手最常干的事。一个模数2、齿数40的直齿轮单齿建模可能就几百个特征整个齿轮几十个齿导进来之后Workbench直接卡死。更麻烦的是那些倒角、圆角、键槽、减重孔对接触应力的影响微乎其微但会吃掉你大量的网格和计算资源。正确的做法是做几何简化。对于齿轮接触强度分析你只需要保留参与啮合的2到3个齿。为什么是2到3个因为齿轮啮合时重合度通常在1.2到1.8之间意味着有时候是一对齿啮合有时候是两对齿同时啮合。你至少要保留3个齿才能覆盖“两对齿同时啮合”的工况。如果只保留1个齿你连多齿啮合的效果都看不到。具体操作上我通常的做法是在三维CAD软件里用拉伸切除把不需要的齿全部切掉只留3个齿的扇形区域。然后在扇形区域的两侧端面施加对称约束或者固定约束模拟被切掉部分对保留部分的约束作用。这里有个细节切的时候不要沿着齿根切要沿着齿根往下留足够的材料一般留2到3倍的模数深度否则约束会影响到齿根应力。2.2 齿廓修形要不要加进去齿廓修形是齿轮设计里的高级话题。简单说就是故意把齿顶或者齿根修掉一点点材料让啮合时的接触应力分布更均匀。如果你的分析目的是校核现有设计那修形量是多少就建多少不要自己改。如果你的分析目的是优化设计那修形量就是一个变量你需要做参数化扫描。但这里有个坑修形量通常只有几十微米而齿轮的模数可能是几毫米两者差了两个数量级。在网格划分时如果你不加密修形区域的网格软件根本捕捉不到修形带来的几何变化。我一般会在修形区域设置局部网格尺寸控制把单元尺寸压到修形量的三分之一以下。比如修形量是20微米那网格尺寸不要超过6微米。这个尺寸下网格数量会暴涨所以只对修形区域加密其他区域用较粗的网格。2.3 装配位置的确定齿轮接触分析里装配位置决定了初始接触状态。如果你把两个齿轮随便一放就提交计算很可能出现两种情况要么两个齿面之间有大间隙软件要花很多载荷步才能建立接触要么两个齿面已经穿透了软件直接报错。正确的做法是根据齿轮的啮合几何计算出理论啮合位置。对于标准渐开线齿轮你可以用齿轮啮合原理算出节点位置然后把两个齿轮转到节点啮合的状态。更简单的办法是在CAD软件里用“齿轮配合”功能自动定位然后把这个位置导出。Ansys Workbench的DM模块也有齿轮装配功能但说实话不太好用我一般还是在CAD里定好位置再导入。导入之后在Workbench里检查一下两个齿面之间的初始间隙。理想情况下初始间隙应该是0但实际建模总会有误差。如果间隙在几微米以内可以接受如果超过几十微米建议回去重新调整装配位置。3. 材料本构与接触设置的底层逻辑3.1 齿轮材料模型的选择齿轮常用材料是合金钢比如20CrMnTi、40Cr、42CrMo这些。在有限元里这些材料通常用双线性等向强化模型来描述。你需要输入三个关键参数弹性模量、泊松比、屈服强度。弹性模量一般取206GPa泊松比0.3这些没什么争议。争议大的是切线模量。双线性强化模型里材料屈服后还有一段硬化段这段的斜率就是切线模量。很多人直接取0也就是理想弹塑性模型。但齿轮钢在渗碳淬火后表面硬度很高屈服强度可能到1200MPa以上硬化段其实挺明显的。如果你取切线模量为0算出来的塑性区会偏大接触应力峰值会偏低。我的经验是如果你只是做弹性接触分析看接触应力有没有超过许用值那用线弹性模型就够了不需要输入屈服强度和切线模量。但如果你要看齿面塑性变形、残余应力那就必须用塑性模型切线模量建议取弹性模量的2%到5%。这个值不是拍脑袋来的你可以查材料手册里的应力-应变曲线取屈服点之后那段直线的斜率。3.2 接触对的定义Workbench里定义接触对需要选接触面和目标面。这里有个原则凸面作为接触面凹面作为目标面。齿轮的齿面是凸的所以两个齿轮的齿面互为接触面和目标面。但软件不允许一个面同时是接触面和目标面所以你需要指定一个齿轮的齿面为接触面另一个齿轮的齿面为目标面。那到底哪个当接触面、哪个当目标面理论上是对称的但实际计算中接触面的网格应该比目标面更密。因为接触算法是在接触面上检测穿透接触面网格越密检测越准确。所以我通常把小齿轮的齿面设为接触面因为小齿轮通常齿数少、曲率大接触区域更集中需要更密的网格。接触类型选摩擦接触还是无摩擦接触齿轮啮合肯定有摩擦摩擦系数一般在0.05到0.1之间。但如果你只是看接触应力峰值摩擦的影响其实不大因为接触应力主要是法向压力。不过摩擦会影响齿根应力和齿面次表面应力所以如果你要看这些就必须加摩擦。我一般取0.08这是齿轮钢在良好润滑下的典型值。3.3 接触算法的选择Workbench提供了几种接触算法增广拉格朗日法、罚函数法、MPC法。齿轮接触分析我推荐用增广拉格朗日法。为什么因为罚函数法对罚刚度敏感罚刚度太小穿透量大罚刚度太大收敛困难。增广拉格朗日法在罚函数的基础上增加了拉格朗日乘子对罚刚度的敏感性低很多而且能保证穿透量在允许范围内。但增广拉格朗日法也有代价计算量更大收敛更慢。如果你做的是大规模参数化扫描每个工况都要算几十次那可以考虑用罚函数法但要把罚刚度调到合适值。法向刚度因子我一般取0.1到1.0之间具体看收敛情况。如果收敛困难就调小如果穿透量太大就调大。还有一个关键设置接触探测方法。Workbench默认是高斯点探测对于齿轮这种曲面接触建议改成节点探测。节点探测更精确但计算量更大。如果你发现接触应力云图上有明显的锯齿状波动那就是探测方法的问题改成节点探测会平滑很多。4. 网格划分接触分析的命门4.1 为什么齿轮接触对网格如此敏感接触应力在齿面上的分布是高度非线性的接触区边缘的应力梯度极大。如果你用粗网格软件会把接触区“抹平”算出来的接触应力峰值偏低而且接触区形状失真。我做过对比同一个齿轮模型网格尺寸从0.5mm降到0.1mm接触应力峰值从800MPa涨到了1100MPa差了将近40%。这不是软件算错了而是粗网格根本捕捉不到应力集中。那网格要密到什么程度经验法则是接触区宽度内至少有5到6个单元。接触区宽度可以用赫兹公式估算。对于齿轮接触区半宽b的公式是b sqrt(4 * F * R / (π * L * E))其中F是法向载荷R是等效曲率半径L是接触线长度E是等效弹性模量。你用手算一下b然后让网格尺寸小于b/5。比如算出来b0.2mm那网格尺寸不要超过0.04mm。4.2 局部网格控制的实操在Workbench里做局部网格控制有几种手段第一种是面尺寸控制。选中齿面设置单元尺寸。这是最直接的方法但缺点是整个齿面都加密了包括不参与接触的区域。对于3齿模型齿面面积不大直接加密可以接受。第二种是接触尺寸控制。在接触对下面有个“Contact Sizing”选项可以专门针对接触面设置网格尺寸。这个更精准只加密接触区域。但注意接触尺寸控制只影响接触面目标面的网格不会自动加密你还需要单独设置目标面。第三种是影响球。在齿面接触位置放一个影响球球内的网格加密球外的网格稀疏。这个方法适合你只知道大概接触位置、但不确定精确范围的情况。影响球的半径一般取2到3倍的接触区宽度。我通常的组合是接触尺寸控制 影响球。接触尺寸控制保证接触面网格足够密影响球保证接触区附近的次表面网格也足够密。因为次表面剪应力峰值出现在接触面下方一定深度处如果只加密表面次表面网格太粗剪应力也算不准。4.3 单元类型的选择齿轮接触分析六面体单元是首选。六面体单元在接触分析中精度更高收敛更好而且能用更少的单元达到同样的精度。但齿轮的齿廓是渐开线曲面直接划六面体比较困难。Workbench的扫掠网格功能可以处理但需要你把几何切分成可扫掠的块。如果实在划不出六面体二阶四面体单元也可以接受。注意是二阶不是一阶。一阶四面体单元在接触分析中太刚算出来的应力偏低不能用。二阶四面体单元Workbench里叫SOLID187有中间节点精度比一阶好很多但计算量也大。我个人的做法是能划六面体就划六面体划不了就用二阶四面体但要把网格密度再提高一档弥补四面体精度上的不足。另外接触面上的单元不要用退化单元比如楔形单元或者金字塔单元这些单元在接触分析中容易出问题。4.4 网格质量检查划完网格别急着提交计算。先检查网格质量。Workbench里有网格质量指标重点看三个雅可比比率反映单元形状的扭曲程度最好在0.7以上低于0.3的单元要重新划。长宽比单元最长边和最短边的比值接触区域建议控制在5以内其他区域可以放宽到10。翘曲度对于六面体单元检查面是否翘曲翘曲度大的单元在接触分析中容易穿透。如果发现质量差的单元集中在接触区那必须重新划。如果集中在远离接触区的区域可以暂时忽略但要在结果里检查这些区域的应力是否合理。5. 载荷与边界条件的施加技巧5.1 扭矩怎么加才合理齿轮接触分析的载荷通常是扭矩。在Workbench里加扭矩有两种方式直接加在面上或者通过远程点加。直接加在面上你需要选一个面然后输入扭矩值。但这里有个问题齿轮的端面通常不是完整的圆环你切了3个齿之后端面是个扇形。直接在这个扇形面上加扭矩软件会按照面积比例分配但实际齿轮的扭矩是通过轴传递的不是均匀分布在端面上。更合理的方式是通过远程点加扭矩。在齿轮中心创建一个远程点把齿轮的内孔面或者端面跟远程点建立刚性连接或者柔性连接然后在远程点上加扭矩。这样扭矩的传递路径更接近实际。刚性连接会让连接区域变刚可能影响齿根应力柔性连接更真实但计算量更大。我一般用柔性连接如果收敛困难再改成刚性。5.2 约束怎么加才不引入虚假应力约束是齿轮接触分析里最容易引入虚假应力的地方。如果你把齿轮内孔面全部固定那内孔附近的应力会失真而且这个失真会传递到齿根。正确的做法是只约束必要的自由度。对于主动轮你可以约束内孔面的径向和轴向位移释放切向位移让齿轮可以绕轴转动。对于从动轮你可以施加一个反向扭矩作为负载同时约束径向和轴向位移。这样两个齿轮都能自由转动接触力通过齿面传递更接近实际。但这样有个问题两个齿轮都能转动如果没有额外的约束整个模型会有刚体位移。解决办法是在从动轮上施加一个很小的制动扭矩或者用弱弹簧约束切向位移。弱弹簧的刚度要足够小不能影响接触力的分布但又要足够大能消除刚体位移。我一般取齿轮扭转刚度的千分之一左右。5.3 载荷步的设置齿轮接触分析通常需要多个载荷步。第一个载荷步施加一个很小的载荷让接触建立起来第二个载荷步施加全载荷如果需要看卸载后的残余应力再加第三个载荷步卸载。第一个载荷步很关键。如果直接施加全载荷接触可能一下子穿透导致收敛失败。我一般取全载荷的1%到10%作为第一个载荷步然后逐步加到全载荷。Workbench的自动时间步功能可以帮你做这件事但你要设置好初始子步、最小子步、最大子步。还有一个技巧打开大变形开关。齿轮接触分析中轮齿的变形虽然不大但接触区的局部变形是显著的。打开大变形开关后软件会在每个子步更新几何接触检测更准确。代价是计算时间增加但值得。6. 求解设置与收敛失败的排查链路6.1 求解器选择Workbench默认用直接求解器对于齿轮接触这种非线性问题直接求解器更稳健但内存消耗大。如果你的模型网格数量超过50万直接求解器可能内存不够那就得用迭代求解器。迭代求解器内存消耗小但收敛性差一些需要调更多的参数。我一般先用直接求解器算一遍如果内存不够再换迭代。换迭代求解器时注意调整收敛容差。默认是1e-4对于接触分析可以放宽到1e-3但不能再宽了否则结果不可信。6.2 收敛失败的常见原因齿轮接触分析收敛失败90%的情况是以下几个原因第一个原因是初始接触没有建立。两个齿面之间有大间隙软件在第一个载荷步里拼命找接触找不到就报错。解决办法是检查装配位置确保初始间隙在几微米以内。如果间隙实在消不掉可以在接触设置里打开“Adjust to Touch”让软件自动把目标面移到接触面上。但注意这个功能会改变几何只适合间隙很小的情况。第二个原因是接触刚度太大。法向刚度因子设得太大接触力在接触面上震荡收敛不了。解决办法是把法向刚度因子调小从1.0降到0.1甚至0.01。但调太小会导致穿透量增大需要权衡。第三个原因是网格太粗。接触区网格太粗接触力在单元之间跳来跳去收敛困难。解决办法是加密接触区网格尤其是接触面边缘的网格。第四个原因是载荷步太大。一个载荷步里载荷翻了好几倍接触状态剧烈变化收敛不了。解决办法是增加子步数让载荷慢慢加。6.3 排查收敛问题的完整链路当你遇到收敛失败不要瞎调参数。按这个顺序排查第一步看求解信息。Workbench的求解信息里会告诉你哪个载荷步、哪个子步失败了以及失败的原因。如果是“接触状态剧烈变化”那就是接触刚度或者载荷步的问题如果是“单元畸变”那就是网格或者变形的问题。第二步看接触状态。在结果里插入“Contact Status”看接触面是“Sticking”还是“Sliding”还是“Near Contact”。如果大部分区域是“Near Contact”说明接触没建立起来要回去检查装配位置。第三步看力收敛曲线。Workbench会画出力收敛曲线如果曲线在震荡说明接触刚度太大如果曲线一直下降但降不到容差以下说明载荷步太大或者网格太粗。第四步逐步缩小问题范围。如果实在找不到原因把模型简化去掉摩擦改成无摩擦接触把载荷降到很小把网格划得很粗。如果这样能收敛再逐步加回复杂因素看是哪一步导致失败。7. 结果提取与接触应力评价7.1 接触应力怎么读Workbench的结果里接触应力有几个不同的输出Contact Pressure、Contact Friction Stress、Contact Penetration。你关心的是Contact Pressure也就是法向接触压力。但注意Contact Pressure是接触面上的压力而赫兹公式算的是接触区内的压力分布。两者在接触区中心应该接近但在接触区边缘有限元的Contact Pressure会迅速降到零而赫兹公式是椭圆分布。这是因为有限元里接触区边缘的网格不够密或者接触算法在边缘处有数值处理。所以评价接触应力时取接触区中心的峰值不要取边缘的值。还有一个细节Contact Pressure的单位是MPa但Workbench默认可能显示为Pa。检查一下单位设置别把Pa当成MPa。7.2 次表面剪应力的提取齿面剥落通常不是接触压力直接导致的而是次表面剪应力导致的。次表面剪应力峰值出现在接触面下方一定深度处大约是接触区半宽的0.5到0.8倍。要提取这个应力你需要在齿面下方创建一个路径然后沿路径画剪应力分布。在Workbench里你可以用Construction Geometry创建一个路径路径起点在接触面中心终点在齿面下方2到3倍接触区半宽处。然后插入Linearized Stress或者直接用Path结果画剪应力沿路径的变化。找到峰值位置和峰值大小跟材料的剪切屈服强度对比。7.3 齿根弯曲应力的顺带提取虽然这篇主要讲接触强度但齿根弯曲应力通常要一起看。提取方法很简单在齿根过渡曲线处创建一个路径画第一主应力或者等效应力。注意齿根应力对网格非常敏感齿根过渡曲线的网格必须足够密否则应力会偏低。评价标准方面接触强度用赫兹应力或许用接触应力对比弯曲强度用齿根应力或许用弯曲应力对比。这两个许用值通常来自材料手册或者齿轮设计标准不同材料、不同热处理、不同可靠度要求许用值都不一样。我一般会留20%的安全裕度因为有限元算出来的应力峰值对网格、接触设置、载荷施加方式都很敏感不留裕度心里没底。8. 我踩过的坑和几条实在建议第一个坑网格收敛性没做。我第一次算齿轮接触划了一套网格就提交了结果接触应力800MPa觉得挺合理。后来换了台电脑网格划得细了一点算出来1100MPa。我才意识到网格没收敛。从那以后我每次做齿轮接触分析至少做三套网格单元尺寸依次减半看接触应力峰值的变化。如果两次之间的变化小于5%才算收敛。第二个坑接触面选反了。有一次我把大齿轮的齿面设为接触面小齿轮的齿面设为目标面。结果接触应力云图看起来正常但接触区形状不对偏向齿顶。后来才明白接触面的网格应该更密而我把网格密的那一侧设成了目标面。从那以后我固定把小齿轮齿面设为接触面因为小齿轮通常网格更密。第三个坑忘了打开大变形。有一次算一个重载齿轮接触应力算出来偏低我以为是材料模型的问题换了塑性模型还是偏低。后来打开大变形开关接触应力涨了15%。原因是重载下轮齿变形大接触位置偏移小变形假设不成立了。几条实在建议第一先手算再仿真。用赫兹公式估算接触应力用悬臂梁公式估算齿根应力心里有个底。如果仿真结果跟手算差了一个数量级那肯定是哪里错了。第二做网格收敛性验证。这是接触分析的基本功没有收敛性验证的结果不可信。第三保留计算日志。Workbench的求解信息里有很多有用的信息比如接触状态变化、收敛历史、警告信息。出了问题先看日志不要瞎调参数。第四参数化扫描要控制变量。如果你要优化齿廓修形量一次只改一个参数其他参数固定。同时改多个参数你根本不知道哪个参数起了作用。最后说一个容易被忽略的点温度的影响。齿轮在高速重载下齿面温度会升高材料弹性模量和屈服强度都会下降。如果你的工况温度超过100度建议做热-结构耦合分析或者至少把材料参数按温度修正一下。我见过一个案例常温下算出来接触应力合格实际运行中齿面点蚀后来做热-结构耦合分析才发现齿面温度到了150度接触应力涨了20%。这个坑希望你别再踩。
返回列表