接触分析时,一个关键的前置步骤就是处理好接触的穿透和间隙。在前几期涉及案例的文章中我们主要讲了接触穿透的处理问题(详见文末推荐阅读),也在《接触仿真知多少? 来看看初始接触间隙、初始穿透会造成哪些求解问题!》一文中对初始穿透和初始间隙造成的影响做了表述。本文我们来看看接触间隙的处理问题。
本文中的案例源自于官方案例视频,相关文字为笔者学习时个人总结,如有不当还请指正~
--01--
我们知道,如果初始接触间隙存在,在外载作用下可能导致模型的刚体运动。在动态分析中,刚体运动一般不会引起问题。原因在于: 在结构动力学中,动力学方程在描述系统动态响应时包含了描述运动的选项。瞬态动力学方程如下:
然而在静力分析中,静力学平衡方程(F=K·U)中并未包含描述运动的选项,当物体没有足够的约束时,产生刚体运动会造成刚度矩阵奇异等问题,导致计算不收敛和结果不正确。
在静力学分析中,软件的“Zero or negative pivot”零或负主元警告信息、计算结果出现不切实际的过大位移等表明有未约束的运动。因此,一般在静力学分析时,我们需要检查初始接触状态,并根据初始接触状态调整接触设置选项。
ANSYS workbench中的初始接触状态检查方法如下图所示:
图1 初始接触状态检查
在静力学仿真中,为避免接触间隙导致刚体运动,物体仅仅由接触来约束时,必须保证接触对在初始几何中是接触的。换句话说,要建立的模型的接触对是“刚好接触(adjust to touch )”的。这种设置是我们在处理接触时的常用做法如下图所示:
图2 接触表面处理选项
Adjust to touch选项表示将接触调整为刚好发生接触,这种调整不是对物理模型的调整,而是对内部的数值计算模型的调整,忽略了间隙或穿透的存在。其对应了经典版本中的KEYOPT(9)=1和KEYOPT(5)=1,如下图所示:
图3 KEYOPT(9)和KEYOPT(5)释义
然而上述这样做也可能遇到如下一些问题:
① 接触体的外形常常是复杂的,很难决定第一个接触点发生在哪儿(详见后续案例,第一个接触点会影响结果);
② 既使实体模型是在初始接触状态,在网格划分后由于数值截断误差:两个面的单元网格之间也可能会产生小的缝隙;
③ 接触单元和目标单元的积分点之间可能有小的缝隙。
那我们如何去合理处理接触间隙呢?
从前述静力学和动力学分析方程的不同可知,在处理接触间隙时,静力学分析和动力学分析的要求是不一样的,如下图所示:
图4 接触间隙和穿透的处理要求
可以看到,在静力学分析中ANSYS workbench软件推荐采用接触阻尼处理初始接触间隙。接下来我们就以一个官方学习案例对此进行分析。
--02--
一、案例概况及手动插入接触
本案例中所有部件的材料都为结构钢,销子和销孔的摩擦系数为0.2。模型完全固定底座底面,在轴的中间部位施加向下1.5kN的力,如下图5所示。
图5 案例概况
很显然,该问题为一个静力学问题,我们采用静力学模块分析。如下图所示:
图6 静力学分析模块
材料均采用结构钢,因此此处不用修改,采用默认即可。导入模型后,双击model进入分析系统,发现二者间隙过大,软件并未侦测到接触对。
图7 销孔间隙
遇到这种情况,我们可以手动插入接触,如下图8,采用软件自动侦测的方式创建接触对。
图8 手动插入接触
侦测前,将“Contact”的设置选项中的“''Tolerance Type”改为改为输入值(Value)的方式,并输入一个较大的值(大于间隙值),如0.1,然后右键即可自动创建接触,如下图所示。
图9 接触侦测设置及创建
接触侦测和创建成功后,我们就可以进行接触的设置了。
二、接触设置及接触状态检查
根据条件,将接触由绑定改为摩擦接触行为,摩擦系数0.2,设置如下:
图10 摩擦接触设置
接下来检查接触状态,如下图所示,可以看到初始接触状态为间隙接触,接触间隙在球形区域(pinball)内部(近场接触),接触间隙约为2mm。
图11 接触状态检查
我们间隙接触必须消除,如果我们不消除,会如何呢?
三、接触间隙不消除的计算问题分析
为了理解接触间隙存在造成的求解问题,此处我们按照图5所示设置约束边界条件和荷载边界条件,并划分网格(相对简单,不在具体阐述)。分析设置中我们关闭弱弹簧,打开大变形,直接求解,会出现如下图所示的病态矩阵错误提示。
图12 病态矩阵错误提示
可以看到间隙不消除,会造成计算不收敛。具体原因笔者在《接触仿真知多少? 来看看初始接触间隙、初始穿透会造成哪些求解问题!》一文已做了解释,此处不再赘述。
上面分析时,我们关闭了弱弹簧,如果我们打开弱弹簧,会发生什么呢?我们将弱弹簧打开,并设置为弹簧刚度值为20N/m,如下图所示:
图13 弱弹簧设置
再次计算,就会发现虽然收敛了,但销轴完全穿过了模型,两者没有接触上,如下图所示。圆杆与弱弹簧达成了平衡(弱弹簧已经不弱了)。求解完全是不合理的,不可接受的!
图14 销轴完全穿过了模型
从以上不消除间隙的试算,我们可以明白消除初始接触间隙的意义,那我们如何调整呢?
三、消除接触间隙的计算分析
①方法一: “adjust to touch”接触设置的分析
将接触的“'Interface Treatment”设置为“adjust to touch”,并更新重新检查初始接触状态,如下图所示。
图15 adjust to touch设置及接触状态检查
图16 计算结果
可以看到,“adjust to touch”设置实现了力的传递,得到了计算结果。但从图中圆孔处的应力云图发现(图17),此处的应力云图结果形式并不正确。
其原因在于上述方式虽然在计算上强行闭合了接触,但并不是修改模型尺寸,模型仍然存在间隙,这种方式是强行将接触绑在一起传递力(类似一周圈的弹簧绑定),如下图所示,但是这种计算方式有时是不够准确的,甚至是错误的(下图应力云图不符合实际情况)。
图17 局部计算结果
此外从上面的结果可以看到,接触并没有实现接触间隙在模型上的闭合。那么如果我们要在静力学模块中得到更准确的结果,并展示真实的间隙闭合过程,该如何做呢?
② 方法二: 稳定阻尼系数接触设置的分析
如果我们要在静力学模块中得到更准确的结果,并展示真实的间隙闭合过程,我们可以通过稳定阻尼系数去调整初始接触间隙(软件推荐方法)。
本文前面已经提到,计算接触分析产生的刚体 位移可能是由接触对两侧的单元网格数值舍入误差引入了小间隙或接触单元和目标单元的积分点之间存在小间隙引起。这种间隙很难通过方法一去调整。为了解决以上问题,ANSYS增加了接触阻尼功能。如下图所示:
图18 稳定阻尼系数选项
对于标准接触KEYOPT(12)=0或粗糙接触(KEYOPT(12)=1,用户可以使用实常数FDMN和FDMT来定义沿着接触法向和切向的接触阻尼比例因子,如下图。Workbench中只给了法向的稳定阻尼系数,切向与法向存在一定关系,切向大概是法向的10%.
① 接触刚度
② 球形区域半径
③ 间隙距离
④ 子步数量
⑤ 当前子步的时间尺度增量
一般当其它初始接触调整技术没有效果或对特殊问题不合适时,可以使用稳定阻尼系数技术。
对于张开接触(间隙),采用稳定阻尼系数的目的是衰减接触和目标面之间的相对运动。它提供了一定量的抗力来减少刚体运动的趋势。
指定稳定阻尼系数应该足够大能防止刚体运动,但是也不能过大,必须保证能够完成求解,过大的稳态阻尼系数会影响求解精度。理想的值完全取决于具体问题,载荷步的时间和子步数量。
ANSYS推荐采用稳定阻尼系数求解有初始间隙的接触问题,但稳态阻尼系数应尽量小,只要能帮助收敛即可,过大会造成接触部位接触压力降低,一般设置为0.005~0.01左右。此外,稳定阻尼系数相当于一个弹簧,因此采用稳定阻尼系数,建议把弱弹簧关闭掉。
回到本例,我们采用稳定阻尼系数计算,设置如下:
重新计算后,可得到如下结果:
图21 稳定阻尼系数法计算结果
图22 初始未接触体接触分析方法
各种分析方法均有其局限性,具体问题还需要结合实际情况分析采用何总方式更合适。本文中介绍的两种方法可以说是常用的,可以适应多数的需求。