ADAMS 提供了三种接触力的计算方法:Restitution 、Impact 和User Defined 。Restitution是基于回归的补偿接触算法,由惩罚参数(施加了单面约束)和回归系数(决定了接触时的能量损失)计算接触力。Impact是基于碰撞函数的接触算法,ADAMS/Solver调用函数库中的IMPACT函数来计算接触力,参数有刚度、力指数、阻尼和穿透深度。User Defined支持用户自定义接触算法。下面介绍分析中使用较广的是Impact法。
ADAMS的接触力模型,分解为正压力和摩擦力两部分。正压力使用Impact法计算,摩擦力使用Coulomb法 计算。接触正压力的计算模型基于赫兹接触理论 ,采用Impact函数提供的非线性等效弹簧阻尼模型,接触力的广义表达式是弹性力和阻尼力两项叠加。弹性力是两个部件之间挤压变形、相互穿透产生,阻尼力是两个部件相对运动产生。
其中,
ADAMS摩擦力基于非线性摩擦模型,动摩擦和静摩擦根据接触体之间的相对滑移速度转换。Vs为静摩擦转变速度,Vd为动摩擦转变速度,μs为最大静摩擦系数,μd为动摩擦系数,满足Vs<Vd,μs>μd。当相对滑移速度位于[-Vs,Vs],对应静摩擦系数[μs,-μs]。相对滑移速度的绝对值由Vs变为Vd,静摩擦向动摩擦转变。相对滑移速度的绝对值大于Vd,部件受动摩擦,摩擦系数保持为μd。
下表是不同材料接触参数设置。其中,K对应Stiffness,单位:N/mm。C为Dampling,单位:N*s/mm。e表示Force Exponent。δ是Penetration Depth,单位:mm。V为法向相对速度,单位:mm/s。R为恢复系数。
| 材料1 | 材料2 | K | C | e | δ | Vs | Vd | μs | μd | R |
| Steel (Dry) | Steel (Dry) | 100000 | 50 | 1.5 | 0.1 | 0.1 | 10 | 0.3 | 0.25 | 0.15 |
| Steel (Greasy) | Steel (Greasy) | 100000 | 50 | 1.5 | 0.1 | 0.1 | 10 | 0.08 | 0.05 | 0.15 |
| Steel (Greasy) | Steel (Dry) | 100000 | 50 | 1.5 | 0.1 | 0.1 | 10 | 0.08 | 0.05 | 0.15 |
| Aluminum (Dry) | Aluminum (Dry) | 35000 | 28 | 1.5 | 0.1 | 0.1 | 10 | 0.25 | 0.2 | 0.2 |
| Aluminum (Dry)铝 | Steel (Dry) | 35000 | 28 | 1.5 | 0.1 | 0.1 | 10 | 0.25 | 0.2 | 0.2 |
| Aluminum (Dry) | Steel (Greasy) | 35000 | 28 | 1.5 | 0.1 | 0.1 | 10 | 0.08 | 0.05 | 0.2 |
| Aluminum (Greasy油腻的) | Aluminum (Greasy) | 35000 | 28 | 1.5 | 0.1 | 0.1 | 10 | 0.05 | 0.03 | 0.2 |
| Aluminum (Greasy) | Steel (Dry) | 35000 | 28 | 1.5 | 0.1 | 0.1 | 10 | 0.05 | 0.03 | 0.2 |
| Aluminum (Greasy) | Steel (Greasy) | 35000 | 28 | 1.5 | 0.1 | 0.1 | 10 | 0.05 | 0.03 | 0.2 |
| Aluminum (Greasy) | Aluminum (Dry) | 35000 | 28 | 1.5 | 0.1 | 0.1 | 10 | 0.05 | 0.03 | 0.2 |
| Acrylic腈纶、丙烯酸 | Acrylic | 1150 | 0.68 | 2 | 0.1 | 0.1 | 10 | 0.15 | 0.1 | 0.4 |
| Acrylic | Steel (Dry) | 1150 | 0.68 | 2 | 0.1 | 0.1 | 10 | 0.15 | 0.1 | 0.4 |
| Acrylic | Steel (Greasy) | 1150 | 0.68 | 2 | 0.1 | 0.1 | 10 | 0.08 | 0.05 | 0.4 |
| Acrylic | Aluminum (Dry) | 1150 | 0.68 | 2 | 0.1 | 0.1 | 10 | 0.15 | 0.1 | 0.4 |
| Acrylic | Aluminum (Greasy) | 1150 | 0.68 | 2 | 0.1 | 0.1 | 10 | 0.15 | 0.1 | 0.4 |
| Nylon尼龙塑料 | Nylon | 3800 | 1.52 | 2 | 0.1 | 0.1 | 10 | 0.13 | 0.09 | 0.5 |
| Nylon | Steel (Dry) | 3807.762 | 1.52 | 2 | 0.1 | 0.1 | 10 | 0.13 | 0.09 | 0.5 |
| Nylon | Steel (Greasy) | 3800 | 1.52 | 2 | 0.1 | 0.1 | 10 | 0.08 | 0.05 | 0.5 |
| Nylon | Aluminum (Dry) | 3800 | 1.52 | 2 | 0.1 | 0.1 | 10 | 0.13 | 0.09 | 0.5 |
| Nylon | Aluminum (Greasy) | 3800 | 1.52 | 2 | 0.1 | 0.1 | 10 | 0.05 | 0.03 | 0.5 |
| Nylon | Acrylic | 3800 | 1.52 | 2 | 0.1 | 0.1 | 10 | 0.13 | 0.09 | 0.5 |
| Rubber (Dry)橡胶 | Rubber (Dry) | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.7 | 0.55 | 0.8 |
| Rubber (Dry) | Steel (Dry) | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.3 | 0.25 | 0.8 |
| Rubber (Dry) | Steel (Greasy) | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.08 | 0.05 | 0.8 |
| Rubber (Dry) | Aluminum (Dry) | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.25 | 0.2 | 0.8 |
| Rubber (Dry) | Aluminum (Greasy) | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.05 | 0.03 | 0.8 |
| Rubber (Dry) | Acrylic | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.15 | 0.1 | 0.8 |
| Rubber (Dry) | Nylon | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.13 | 0.09 | 0.8 |
| Rubber (Greasy) | Rubber (Greasy) | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.5 | 0.43 | 0.8 |
| Rubber (Greasy) | Steel (Dry) | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.3 | 0.25 | 0.8 |
| Rubber (Greasy) | Steel (Greasy) | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.08 | 0.05 | 0.8 |
| Rubber (Greasy) | Aluminum (Dry) | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.25 | 0.2 | 0.8 |
| Rubber (Greasy) | Aluminum (Greasy) | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.05 | 0.03 | 0.8 |
| Rubber (Greasy) | Acrylic | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.15 | 0.1 | 0.8 |
| Rubber (Greasy) | Nylon | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.15 | 0.1 | 0.8 |
| Rubber (Greasy) | Rubber (Dry) | 2855 | 0.57 | 1.1 | 0.1 | 0.1 | 10 | 0.5 | 0.43 | 0.8 |
发生穿透可能的原因有:
根据穿透原因的分析,可以制定相应的解决方法,如:简化模型、调整仿真步长、修改求解器等。STEMer在实际仿真中确实遇到过这些问题,相同的模型前处理设置,不同的求解器,确实会对结果产生影响,甚至不收敛。在某多体弹簧碰撞模型中,接触参数设置不合理,导致部件运动不稳定,期望碰撞后部件位移一定距离,结果出现了往复运动现象;采用默认积分器,求解不收敛问题,更换积分器后,得到了预期结果。下图是设置修正前后的结果曲线(具体仿真模型不便于公开),修正前的受力和位移结果是不正确的;而在修正后,得到了与实际情况近似的受力和位移曲线。
下面介绍下积分器、积分格式和积分误差。
积分器:常用的刚性积分器有GSTIFF 、WSTIFF 和BDF 三种,其计算效率和稳定性有差异。数值计算效率关系为GSTIFF>WSTIFF>BDF;稳定性关系为BDF>WSTIFF>GSTIFF。GSTIFF是常用/默认积分器,在求解失败时,可以尝试用BDF。
积分格式:有I3、SI2和SI1三种。I3格式求解快,但精度差;SI2考虑了约束方程,可避免雅克比矩阵的病态,求解慢,但精度高;SI1精度优于SI2,但计算代价大。
积分误差:设置迭代步的预测值与校正值之间的误差。积分误差大,容易迭代,但结果误差大;积分误差小,收敛过程慢。一般积分误差设为0.001。