找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4589|回复: 10

[ANSYS] 非线性接触分析

[复制链接]

48

主题

51

回帖

1291

积分

村里打铁的

UID
375
威望
0
机械币
241
活力
36
发表于 2016-12-9 12:29:54 | 显示全部楼层 |阅读模式
非线性接触分析

接触问题是一种高度非线性行为,需要较大的计算资源,为了进行实为有效的计算,理解问题的特性和建立合理的模型是很重要的。
接触问题存在两个较大的难点:其一,在你求解问题之前,你不知道接触区域,表面之间是接触或分开是未知的,突然变化的,这随载荷、材料、边界条件和其它因素而定;其二,大多的接触问题需要计算摩擦,有几种摩擦和模型供你挑选,它们都是非线性的,摩擦使问题的收敛性变得困难。

一般的接触分类
接触问题分为两种基本类型:刚体─柔体的接触,半柔体─柔体的接触,在刚体─柔体的接触问题中,接触面的一个或多个被当作刚体,(与它接触的变形体相比,有大得多的刚度),一般情况下,一种软材料和一种硬材料接触时,问题可以被假定为刚体─柔体的接触,许多金属成形问题归为此类接触,另一类,柔体─柔体的接触,是一种更普遍的类型,在这种情况下,两个接触体都是变形体(有近似的刚度)。

ANSYS接触能力
ANSYS支持三种接触方式:点─点,点─面,平面─面,每种接触方式使用的接触单元适用于某类问题。
为了给接触问题建模,首先必须认识到模型中的哪些部分可能会相互接触,如果相互作用的其中之一是一点,模型的对立应组元是一个结点。如果相互作用的其中之一是一个面,模型的对应组元是单元,例如梁单元,壳单元或实体单元,有限元模型通过指定的接触单元来识别可能的接触匹对,接触单元是覆盖在分析模型接触面之上的一层单元,至于ANSTS使用的接触单元和使用它们的过程,下面分类详述。
点─点接触单元
点─点接触单元主要用于模拟点─点的接触行为,为了使用点─点的接触单元,你需要预先知道接触位置,这类接触问题只能适用于接触面之间有较小相对滑动的情况(即使在几何非线性情况下)
如果两个面上的结点一一对应,相对滑动又以忽略不计,两个面挠度(转动)保持小量,那么可以用点─点的接触单元来求解面─面的接触问题,过盈装配问题是一个用点─点的接触单元来模拟面─与的接触问题的典型例子。
点─面接触单元
点─面接触单元主要用于给点─面的接触行为建模,例如两根梁的相互接触。
如果通过一组结点来定义接触面,生成多个单元,那么可以通过点─面的接触单元来模拟面─面的接触问题,面即可以是刚性体也可以是柔性体,这类接触问题的一个典型例子是插头到插座里。
使用这类接触单元,不需要预先知道确切的接触位置,接触面之间也不需要保持一致的网格,并且允许有大的变形和大的相对滑动。
Contact48和Contact49都是点─面的接触单元,Contact26用来模拟柔性点─刚性面的接触,对有不连续的刚性面的问题,不推荐采用Contact26因为可能导致接触的丢失,在这种情况下,Contact48通过使用伪单元算法能提供较好的建模能力。
面─面的接触单元
ANSYS支持刚体─柔体的面─面的接触单元,刚性面被当作“目标”面,分别用Targe169和Targe170来模拟2─D和3—D的“目标”面,柔性体的表面被当作“接触”面,用Conta171,Conta172,Conta173,Conta174来模拟。一个目标单元和一个接单元叫作一个“接触对”程序通过一个共享的实常号来识别“接触对”,为了建立一个“接触对”给目标单元和接触单元指定相同的实常的号。
与点─面接触单元相比,面─面接触单元有好几项优点,
·支持低阶和高阶单元
·支持有大滑动和摩擦的大变形,协调刚度阵计算,单元提法不对称刚度阵 的选项。
·提供工程目的采用的更好的接触结果,例如法向压力和摩擦应力。
·没有刚体表面形状的限制,刚体表面的光滑性不是必须允许有自然的或网格离散引起的表面不连续。
·与点─面接触单元比,需要较多的接触单元,因而造成需要较小的磁盘空间和CPU时间。
·允许多种建模控制,例如:
·绑定接触
·渐变初始渗透
·目标面自动移动到补始接触
·平移接触面(老虎梁和单元的厚度)
·支持死活单元
使用这些单元,能模拟直线(面)和曲线(面),通常用简单的几何形状例如圆、抛物线、球、圆锥、圆柱采模拟曲面,更复杂的刚体形状能使用特殊的前处理技巧来建模。

48

主题

51

回帖

1291

积分

村里打铁的

UID
375
威望
0
机械币
241
活力
36
 楼主| 发表于 2016-12-9 12:30:30 | 显示全部楼层
执行接触分析
不同的接触分析类型有不同的过程,下面分别讨论
面─面的接触分析
在涉及到两个边界的接触问题中,很自然把一个边界作为“目标”面而把另一个作为“接触”面,对刚体─柔体的接触,“目标”面总是刚性的,“接触”面总是柔性面,这两个面合起来叫作“接触对”使用Targe169和Conta171或Conta172来定义2-D接触对,使用Targe170和Conta173或Conta174来定义3-D接触对,程序通过相同的实常收号来识别“接触对”。
接触分析的步骤:
执行一个典型的面─面接触分析的基本步骤列示如下:
1.  建立模型,并划分网格
2.  识别接触对
3.  定义刚性目标面
4.  定义柔性接触面
5.  设置单元关键字和实常的
6.  定义/控制刚性目标面的运动
7.  给定必须的边界条件
8.  定义求解选项和载荷步
9.  求解接触问题
10.查看结果
步骤1:建立模型,并划分网格
在这一步中,你需要建立代表接触体几何形状的实体模型。与其它分析过程一样,设置单元类型,实常的,材料特性。用恰当的单元类型给接触体划分网格。
命令:AMESH
     VMESH
  GUI:Main Menu>Preprocessor>mesh>Mapped>3 or4 Sided
           Main Menu>Pneprocessor>mesh>mapped>4 or 6 sided
步骤二:识别接触对
你必须认识到,模型在变形期间哪些地方可能发生接触,一是你已经识别出潜在的接触面,你应该通过目标单元和接触单元来定义它们,目标和接触单元跟踪变形阶段的运动,构成一个接触对的目标单元和接触单元通过共享的实常号联系起来。
接触环(区域)可以任意定义,然而为了更有效的进行计算(主要指CPU时间)你可能想定义更小的局部化的接触环,但能保证它足以描述所需要的接触行为,不同的接触对必须通过不同的实常数号来定义(即使实常数号没有变化)。
由于几何模型和潜在变形的多样形,有时候一个接触面的同一区域可能和多个目标面产生接触关系。在这种情况下,应该定义多个接触对(使用多组覆盖层接触单元)。每个接触对有不同的实常数号。
步骤三:定义刚性目标面
刚性目标面可能是2—D的或3─D的。在2—D情况下,刚性目标面的形状可以通过一系列直线、圆弧和抛物线来描述,所有这些都可以用TAPGE169来表示。另外,可以使用它们的任意组合来描述复杂的目标面。
在3—D情况下,目标面的形状可以通过三角面,圆柱面,圆锥面和球面来推述,所有这些都可以用TAPGE170来表示,对于一个复杂的,任意形状的目标面,应该使用三角面来给它建模。
控制结点(Pilot)
刚性目标面可能会和“pilot结点“联系起来,它实际上是一个只有一个结点的单元,通过这个结点的运动可以控制整个目标面的运动,因此可以把pilot结点作为刚性目标的控制器。整个目标面的受力和转动情况可以通过pilot结点表示出来,“pilot结点”可能是目标单元中的一个结点,也可能是一个任意位置的结点,只有当需要转动或力矩载荷时,“pilot结点”的位置才是重要的,如果你定义了“pilot结点”ANSYS程序只在“pilot结点”上检查边界条件,而忽略其它结点上的任何约束。
对于圆、圆柱、圆锥、和球的基本图段,ANSYS总是使用条一个结点作为“pilot结点”

48

主题

51

回帖

1291

积分

村里打铁的

UID
375
威望
0
机械币
241
活力
36
 楼主| 发表于 2016-12-9 12:31:23 | 显示全部楼层
基本原型
你能够使用基本几形状来模拟目标面,例如:“圆、圆柱、圆锥、球。直线、抛物线、弧线、和三角形不被允许、虽然你不能把这些基本原型彼此合在一起,或者是把它们和其它的目标形状合在一起以便形成一个同一实常数号的复杂目标面。但你可以给每个基本原型指定它自己的实常的号。
单元类型和实常数
在生成目标单元之前,首先必须定义单元类型(TARG169或TARG170)。
    命令:ET
      GUI:main menu>preprocessor>Element Type> Add/Edit/Delete
随后必须设置目标单元的实常数。
      命令:Real
      GUI:main menn>preprocessor>real constants
对TARGE169和TARGE170仅需设置实常数R1和R2,而只有在使用直接生成法建立目标单元时,才需要从为指定实常数R1、R2,另外除了直接生成法,你也可以使用ANSYS网格划分工具生成目标单元,下面解释这两种方法。
使用直接生成法建立刚性目标单元
为了直接生成目标单元,使用下面的命令和菜单路径。
      命令:TSHAP
      GUI:main menu>preprocessor>modeling-create>Elements>Elem Attributes
随后指定单元形状,可能的形状有:
· straight  line (2D)
· parabola  (2-D)
· clockwise  arc(2-D)
· counterclokwise  arc (2-D)
· circle(2-D)
· Triangle (3-D)
· Cylinder (3-D)
· Cone     (3-D)
· Sphere   (3-D)
· Pilot node  (2-D和3-D)
一旦你指定目标单元形状,所有以后生成的单元都将保持这个形状,除非你指定另外一种形状。
然后你就可以使用标准的ANSYS直接生成技术生成结点和单元。
      命令:N
             E
      GUI:main menu>pnoprocessor> modeling- create> nodes
             main menu>pnoprocessor> modeling- create>Elements
在建立单元之后,你可以通过列示单元来验证单元形状
      命令:ELIST
      GUI:utility menu>list>Elements>Nodes+Attributes
使用ANSYS网格划分工具生成刚性目标单元
你也可以使用标准的ANSYS网格划分功能让程序自动地生成目标单元,ANSYS程序将会以实体模型为基础生成合适的目标单元形状而忽略TSHAP命令的选项。
为了生成一个“PILOT结点”使用下面的命令或GUI路径:
      命令:Kmesh
      GUI:main menu>proprocessor>meshing-mesh>keypoints
注意: KMESH总是生成“PILOT结点”
为了生成一个2─D目标单元,使用下面的命令和GUI路径:
ANSYS在每条直线上生成一条单一的线,在样条曲线上生成抛物线部分,在每条圆弧和倒角上生成圆弧部分,如果所有的圆弧形成一个封闭的圆,ANSYS生成一个单一的圆段。
      命令:LMESH
      GUI:main menu>pneprocessor>mesling-mesh>lines
为了生成3─D的目标单元,使用下面的命令或GUI路径。
如果实体模型的表面部分形成了一个完整的球,圆柱或圆锥,那么ANSYS程序自动生成一个基本的3─D目标单元,因为生成较少的单元,从而使你分析计算更有效率,对任意形状的表面,应该使用Amesh命令来生成目标单元,在这种情况下,网格形状的质量不是重要的,而目标单元的形状是否能完成好的模拟刚性面的表面几何形状显得更重要。
      命令:AMESH
      GUI:main menu>preprocessor>-meshing-mesh>Area
ANSYS在所有可能的面上推荐使用三角形的映射网格划分,如果在表面的边界上没有曲率,则在网格划分时,指定那条边界分为一分,下面的命令或GUI路径将尽可能的生成一个映射网格(如果不能进行映射,它将生成自由网格)
      命令:MSHKFY,2
      GUI:main menu>preprocessor>-meshling-mesh>-Ares-Target Surf   

48

主题

51

回帖

1291

积分

村里打铁的

UID
375
威望
0
机械币
241
活力
36
 楼主| 发表于 2016-12-9 12:32:12 | 显示全部楼层
建模和网格划分的注意点:
一个目标面可能由两个或多个面断的区域组成,你应该尽可能地通过定义多个目标面来使接触区域局部比(每个目标面有一个不同的实常数号)刚性目标面上由的离散能足够指述出目标面的形状,过粗的网格离散可能导致收敛问题。如果刚性面有一个实的凸角,求解大的滑动问题时很难获得收敛结果,为了避免这些建模问题,在实体模型上,使用线或面的倒角来使尖角光滑比,或者在曲率突然变化的区域使用更细的网格。
注意:不能使用镜面对称技术(ARSYSM,LSYMM)来映射圆、圆柱、圆锥或球面到对称平面的另一边,因为每个实常数的设置不能同时赋给多个基本原型段。
检验目标面的接触方向
目标面的结点号顺序是重要的,因为它定义了接触主向,对2─D接触问题,当沿着目标线从第一个结点移向第二个结点时,变形体的接触单元必须位于
目标面的右边。
对3─D接触问题,目标三角形单元号应该使刚性面的外法线方向指向接触面,外法线通过右手原则来定义
    为了检查法线方向,显示单元坐标系
      命令:/PSYMS,ESYS,1
      GUI:Utility menu>plotctrls>symbols
如果单元法向不指向接触面,选择单元反转表面的法向的方向。
      命令:ESURF,,REVE
      GUI:main menu>preprocossor>create>Element>on free surf
步骤4:定义柔性体的接触面
    为了定义柔性体的接触面,必须使用接触单元CONFA171或CONFA172(对2─D)或CONTA173或CONTA174(对3─D)来定义表面
    程序通过组成变形体表面的接触单元来定义接触表面,接触单元与下面覆盖的变形体单元有同样的几何特性,接触单元与下面覆盖的变形体单元必须处于同一阶次(低阶或高阶)下面的变形体单元可能是实体单元、壳单元、梁单元或超单元,接触面可能壳或梁单元任何一边。
    与目标面单元一样,你必须定义接触面的单元类型,然后选择正确的实常数号(实常数号必须与它对应目标的实常数号相同)最后生成接触单元。
    单元类型:
下面简单描述四种类型的接触单元
    CONTA171:这是一种2─D,2个结点的低附线单元,可能位于2─D实体,壳或梁单元的表面
    CONTA172:这是一个2─D的,3结点的高阶抛物线形单元,可能位于有中结点的2─D实体或梁单元的表面
    CONTA173:这是一个3─D的,4结点的低阶四边形单元可能位于3─D实体或壳单元的表面,它可能褪化成一个结点的三角形单元。
    CONTA174:这是一个3─D,8结点的高阶四边形单元,可能位于有中结点的3─D实体或壳单元的表面,它可能褪化成6结点的三角形单元。
不能在高阶柔性体单元的表面上分成低阶接触单元,反之也不行,不能在高阶接触单元上消去中结点。
      命令:ET
      GUI:main menu>preprocessor>Element type>Add/Edit/Delete
    实常数和材料特性
在定义了单元类型之后,需要选择正确的实常数的设置,每个接触对的接触面和目标面必须有相同的实常数号,而每个接触对必须有它自己不同的实常数号。
ANSYS使用下面柔性体单元的材料特性来计算一个合适的接触(或罚)刚度,如果下面的单元是一个超单元。接触单元的材料的设置必须与超单元形成时的原始结构单元相同,生成接触单元。
我们既可以通过直接生成法生成接触单元,也可以在柔性体单元的外表面上自动生成接触单元,我们推荐采用自动生成法,这种方法更为简单和可靠。
可以通过下面三个步骤来自动生成接触单元
1、选择结点
    选择已划分网格的柔性体表面的结果,如果你确定某一部分结点永远不会接触到目标面,你可以忽略它以便减少计算时间,然而,你必须保证设有漏掉可能会接触到目标面的结点。
    命令:NSEL
    GUI:main menu>preprocessor>create>Element>on>free surf
2、  生成接触单元
    命令:ESURF
    GUI:main menu>preprocessor>create>Element>on free surf
如果接触单元是附在已用实体单元划分网格的面或体上,程序会自动决定接触计算所需的外法向,如果下面的单元是梁或壳单元,则必须指明哪个表面(上表面或下表面)是接触面
    命令:ESURF,TOP OR BOTIOM
    GUI:main menu>preprocessor>create>Element>on free surf
使用上表面生成接触单元,则它们的外法向与梁或壳单元的法向相同,使用下表面生成接触单元,则它们的外法向与梁或壳单元的法向相反,如果下面的单元是实体单元,则TOP或BOTTOM选项不起作用
3、检查接触单元外法线的方向,当程序进行是否接触的检查时,接触面的外法线方向是重要的,对3─D单元,按结点程序号以右手定则来决定单元的外法向,接面的外法向应该指向目标面,否则,在开始分析计算时,程序可能会认为有面的过度渗透而很难找到初始解。在此情况下,程序一般会立即停止执行,你可以检查单元外法线方向是否正确。
    命令:/PSYMB
    GUI:Utility menu>plotctrls>symbols
    当发现单元的外法线方向不正确时,必须通过倒不正确单元的结点号来改变它们。
    命令:ESURF,REVE
    GUI:main menu>preprocossor>Create>Elements on free surf
步骤5:设置实常数和单元关键字
程序使用九个实常数和好几个单元关键字来控制面─面接触单元的接触行为。

48

主题

51

回帖

1291

积分

村里打铁的

UID
375
威望
0
机械币
241
活力
36
 楼主| 发表于 2016-12-9 12:33:16 | 显示全部楼层
实常数
    9个实常数中,两个(R1和R2)用采定义目标面单元的几何形状,乘下的7个用来控制接触行为。
    R1和R2定义目标单元几何形状
    FKN  定义法向接触刚度因子
    FTOLN 定义最大的渗透范围
    ICONT 定义初始靠近因子
    PINB  定义“Pinball"区域
    PMIN和PMAX 定义初始渗透的容许范围
    TAUMAR   指定最大的接触摩擦
    命令:R
    GUI:main menu> preprocessor>real constant
对实常数FKN,FTOLN,ICONT,PINB,PMAX,和PMIN,你既可以定义一个正值也可以定义一个负值,程序将正值作为比例因子,将负值作为真实值,程序将下面覆盖原单元的厚度作为ICON,FTOLN,PINB,PMAX和PMIN的参考值,例如对ICON,0.1表明初始间隙因子是0.1*下面覆盖层单元的厚度。然而,-0.1表明真实缝隙是0.1,如果下面覆盖层单元是超单元,则将接触单元的最小长度作为厚度。
单元关键字
每种接触单元都饭知好几个关键字,对大多的接触问题缺省的关键字是合适的,而在某些情况下,可能需要改变缺省值,来控制接触行为。
    接触算法(罚函数+拉格郎日或罚函数)(KEYOPT(2))
    出现超单元时的应力状态(DEYOPT(3))
    接触方位点的位置      (KEYOPI(4))
    刚度矩阵的选择        (KEYOPT(6))
    时间步长控制          (KEYOPT(7))
    初始渗透影响          (KEYOPT(9))
    接触表面情况          (KEYOPT(12))
    命令:KEYOPT
          ET
    GUI:main menu>preprocessor>Elemant Type>Add/Edit/Delete
    选择接触算法:
    对面─面的接触单元,程序可以使用扩增的拉格朗日算法或罚函数方法,通过使用单元关键字KETOPT(2)来指定。
    扩张的拉格朗日算法是为了找到精确的拉格朗日乘子而对罚函数修正项进行反复迭代,与罚函数的方法相比,拉格朗日方法不易引起病态条件,对接触刚度的灵敏度较小,然而,在有些分析中,扩增的拉格朗日方法可能需要更多的迭代,特别是在变形后网格变得太扭曲时。
    使用拉格朗日算法的同时应使用实常数FTOLN
    FTOLN为搠格朗日算法指定容许的最大渗艉,如果程序发现渗透大于此值时,即使不平衡力和位移增量已经满足了收敛准则,总的求解仍被当作不收敛处理,FTLON的缺省值为0.1,你可以改变这个值,但要注意如果此值太小可能会造成太多的迭代次数或者不收敛。
决定接触刚度
所有的接触问题都需要定义接触刚度,两个表面之间渗 量的大小取决了接触刚度,过大的接触刚度可能会引起总刚矩阵的病态,而造成收敛困难,一般来谘,应该选取足够大的接触刚度以保证接触渗透小到可以接受,但同时又应该让接触刚度足够小以使不会引起总刚矩阵的病态问题而保证收敛性。
程序会根据变形体单元的材料特性来估计一个缺省的接触刚度值,你能够用实常数FKN来为接触刚度指定一个比例因子或指定一个真正的值,比例因子一般在0.01和10之间,当避免过多的迭代次数时,应该尽量使渗透到达极小值。
为了取得一个较好的接触刚度值,又可需要一些经验,你可以按下面的步骤过行。
1、开始时取一个较低的值,低估些值要比高估些值好因为由一个较低的接触刚度导致的渗透问题要比  过高的接触刚度导致的收敛性困难,要容易解决。
2、对前几个子步进行计算
3、检查渗透量和每一子步中的平衡迭代次数,如果总体收敛困难是由过大的渗透引起的(而不是由不平衡力和位移增量引起的),那么可能低估了FKN的值或者是将FTOLN的值取得大小,如果总体的收敛困难是由于不平衡力和位移增量达到收敛值需要过多的迭代次数,而不是由于过大的渗透量,那么FKN的值可能被高估。
4、按需要调查FKN或FTOLN的值,重新分析。

48

主题

51

回帖

1291

积分

村里打铁的

UID
375
威望
0
机械币
241
活力
36
 楼主| 发表于 2016-12-9 12:35:26 | 显示全部楼层
选择摩擦类型
在基本的库仑摩擦模型中,两个接触面在开始相互滑动之前,在它们的界面上会有达到某一大小的剪应力产生,这种状态则作粘合状态(stick)库仑摩擦模型定义了一个等效剪应力。)一旦剪应力超过此值后,两个表面之间将开始相互滑动,这种状态,叫作滑动状态(Sliding)粘合\滑动计算决定什么时候一个点从粘合状态到滑动状态或从滑动状态变到粘合状态,摩擦系数可以是任一非负值。程序缺省值为表面之间无摩擦,对rough或bonded接触(KEYOPT(2)=1(或3),程序将不管给定的MV值而认为摩擦阻力无限大。
程序提供了一个不管接触压力的故而人为指定最大等效剪应力的选项,如果等效剪应力达到此值时,滑动发生。看图,4─1,为了指定接触界面上最大许可剪应力,设置常数 TAUMAX(缺省为1.0E20),这种限制剪应力的情况一般用于接触压力非常大的时候,以至于用库仑理论计算出的界面剪应力超过了材料的屈服极限。一对TAUMAX的一个合理高估为 1.png (是材料的mises屈服应力)。
2.png       
图4—1    摩擦模式
对无摩擦rough和bonded接触,接触单元刚度矩阵是对称的,而涉及到摩擦的接触问题产生一个不对称的刚度,而在每次迭代使用不对称的求解器比对称的求解器需要更多的计算时间,因此ANSYS程序采用对称化算法。通过采用这种算法大多的摩擦接触问题能够使用对称系统的求解器来求解。如果摩擦应力在整个位移范围内有相当大的影响,并且摩擦应力的大小高度依赖于求解过程。对刚度阵的任何对称近似都可能导致收敛性的降低,在这种情况下,选择不对称求解选项(KEYOPT(6)=1)来改善收敛性。
选择检查接触与否的位置
接触检查点位于接触单元的积分点上,在积分点上,接触单元不渗透进入目标面,然而,目标面能渗透进入接触面,看图4—2。
3.png
图4—2  接触检查点位于高斯积分点上
ANSYS面─接触单元使用GAUSS积分点作为缺省值,GAUSS积分点通常会比Newton-Cotes/robatto结点积分项产生更精确的结果,Newton-cotes/lobatto使用结点本身作为积分点,通过KEYOPT(4)来选择,你想使用的方法,然而,使用结点本身作为积分点仅应该用于角接触问题(看图4─3)。
4.png
图4—3  接触检查点位于高斯结点上
然而,使用结点作为接触发现点,可能会导致其它的收敛性问题,例如“滑脱”(结点滑下目标面的边界)看图4─4,对大多的点─面的接触问题,我们推荐使用其它的点─面的接触单元,例如CONTA26、CONTA48和CONTA49。
5.png
图4—4  结点滑脱

48

主题

51

回帖

1291

积分

村里打铁的

UID
375
威望
0
机械币
241
活力
36
 楼主| 发表于 2016-12-9 12:37:47 | 显示全部楼层
调整初始接触条件
在动态分析中,刚体运动一般不会引起问题,然而在静力分析中,当物体没有足够的约束时会产生刚体运动,有可能引起错误而终止计算。
在仅仅通过接触的出现来约束刚体运动时,必须保证在初始几何体中,接触对是接触的,换句话说,你要建立模型以便接触对是“刚好接触”的,然而这样作可能会遇到以下问题:
·刚体外形常常是复杂的,很难决定第一个接触点发生在哪儿
·既使实体模型是在初始接触状态,在网格划分后余于数值舍入误差;两个面的单元网格之间也可能会产生小的缝隙。
·接触单元的积分点和目标单元之间可能有小的缝隙。
同理,在目标面和接触面之间可能发生过大的初始渗透,在这种情况下,接触单元可能会高估接触力,导致不收敛或 民接触面之间脱离开接触关系。定义初始接触也许是建立接触分析模型时最重要的方面,因此,程序提供了几种方法来调整接触对的初始接触条件。
注意:下面的技巧可以在开始分析时独立执行成几个联合起来执行,它们是为了消除由于生成网格造成的数值舍入误差而引起的小缝隙或渗透,而不是为了改正网格或几何数据的错误。
1、   使用实常数ICONT来指定一个好的初始接触环,初始接触环是指沿着目标面的“调整环”的深度,如果没有人为指定ICONT的值,程序会根据几何尺寸来给ICONT提供一个小值,同时输出一个表时什么值被指定的警告信息,对ICONT一个正值表示相对于下面变形体单元厚度的比例因子,一个负值表示接触环的真正值,任何落在“调整环”敬域内的接触检查点被自动移到目标面上,(看图4—5(a))建议使用一个小的ICONT值否则,可能会发生大的不连续(看图4─5(b))
5.png
77.png
图4—5   用ICON进行接触面的调整
(a)   调整前
(b)  调整后
2、使用实常数PMIN和PMAX来指定初始容许的渗透范围,当指定PMAX或PMIN后,在开始分析时,程序会将目标面移到初始接触状态,如果初始渗透大于PMAX,程序会调整目标面的减少渗透,接触状态的初始调节仅仅通过平移来实现。
对给定载  或给定位移的刚性目标面将会执行初始接触状态的初始调节。同样,对没有指定边界条件的目标面也可以进行初始接触的调整。
当目标面上的节点,有给的零位移值时,使用PMAX和PMIN的初始调节将不会被执行。
注意:ANSYS程序独立地处理目标面上节点的自由度,例如:如果你指定自中度UX值为“0”,那么,沿着X方向就没有初始调查,然而,在Y和Z方向仍然会激活PMAX和PMIN选项。
初始状态调整是一个迭代过程,程序最多进行20次迭代,如果目标面不能进入可接受的渗透范围,程序会给出一个警告信息,你可能需要调整你的初始几何模型。
图4─6给出了一个初始接触调整迭代失败的例子。目标面的UY被约束住。因此,初始接触唯一容许的调整是在X方向,然而,在这个问题中,刚性目标面在X方向的任何运动都不会引起初始接触。
6.png
图4—6   一个初始调整失败的例子
3、  设置KEYOPI(9)=1来消除初始渗透,看图4─7。
7.png
图4—7  消除初始始渗透
在某些情况下,例如过盈装配问题,期望有过度的渗,为了缓解收敛性困难,在第一个载荷步中设置KEYOTI(9)=2来使过度渗透渐进到0,看图4─8。当使用这种方法时,在第一个载  步中不要给定其它任何载荷,也就是说要保证载荷是渐进的(KBC,0)
8.png
图4—8  渐进初始渗透
在开始分析时,程序会给出每个目标面的初始接触状态的输出信息,(在输出窗口或输出文件中),这个信息有助于决定每个目标面的最大渗透成最小间隙。
对于给定的目标面如果没有发现接触,可能是目标面离接触面太远(超出了Piaball区域或者是接触/目标单元已经被杀死。
决定接触状态和Pinball区域。
接触单元相对于目标面的运动和位置决定了接触单元的状态;程序检测每个接触单元并给出一种状态
· STAT=0  未合的远区接触
· STAT=1  未合的近区接触
· STAT=2  滑动接触
· STAT=3  粘合接触
当目标面进入pinball区域后,接触单元就被当作未合上的近区域接触,pinball区域是以接触单元的积分点为中心的。使用实常数PINB来为pinball指定一个比例因子(正值)或其实值(负值),缺省时,程序将pinball区域定义为一个以4*变形体单元厚度为半径的圆(对2-D问题)或球(对3-D问题)。
检查接触的计算时间依赖于pinball区域的大小,远区接触单元的计算是简单的且计算时间较少,近区接触计算将要接触的接触单元是较慢的,并是较复杂,当单元已经接触时,计算最为复杂。
如果刚性面有好几个凸形区域,为了克服伪接触定义,设置一个合适的pinball区域是有用的,名而对大多数问题,缺省值是合适的
选择表面作用模式
通过设置kcyopt(12)来选择下面的某种作用模式
·法问单边接触    (KEYOPT(12)=0)
·.粗糙接触,用来模拟无滑动的,表面相当粗糙的摩擦接触问题,这种设置对应于摩擦系数无限大(MU),因此用户定义的摩擦系的(MU)被忽略KEYOPT(12)=1)
·.不分开的接触,用来模拟那种一是接触就再不分开的问题,这种不分开是指对法方接触而言,允许有相对滑动。(KEYOPT(12)=2)
·.绑定接触 用来模拟那种接触一是发生表面在所省方向都被绑定的问题。一旦接触就再也不能脱开也不允许有相对滑动(KEYOPT(12)=3)
3、管理层应重点关注团队技术人员的整体培养和面临的具体技术疑惑,科学培养很重要。

0

主题

279

回帖

572

积分

机械工程师

UID
33451
威望
0
机械币
141
活力
149
发表于 2016-12-22 16:41:15 | 显示全部楼层
楼主太强了

0

主题

5

回帖

1

积分

防灌水审核

UID
33941
威望
0
机械币
0
活力
1
发表于 2017-1-15 12:52:13 | 显示全部楼层
感谢分享

0

主题

279

回帖

572

积分

机械工程师

UID
33451
威望
0
机械币
141
活力
149
发表于 2017-1-18 08:11:56 | 显示全部楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|机械村 ( 渝ICP备17010994号-1 )

GMT+8, 2024-4-24 04:28 , Processed in 0.085835 second(s), 24 queries , Gzip On.

Powered by Jixiecun.com

Copyright © 2012-2024

快速回复 返回顶部 返回列表