精华内容
下载资源
问答
  • 有限元法的分析步骤

    2017-10-02 18:34:01
    有限元法的分析步骤
  • solidworks进行有限元分析的一般步骤
  • 有限元建模与分析

    2013-10-15 20:35:06
    这是一个讲有限元分析步骤的很好资料,详细叙述了分析步骤,清晰明了,一看就懂。
  • MATLAB调用ANSYS进行有限元分析

    千次阅读 2020-07-05 11:04:15
    MATLAB调用ANSYS进行有限元分析步骤如下: MATLAB生成数据,并以科学计数法的形式写出到一个txt文件“input.txt”中; 编写ansys的APDL程序,在MATLAB环境下调用APDL程序,ANSYS以batch方式运行进行分析求解,并...

    在有限元分析中,当我们需要改变模型的多个物理参数反复进行分析求解。在ANSYS环境下重复操作费时费力。因此,可以使用MATLAB和ANSYS联合进行求解。
    MATLAB调用ANSYS进行有限元分析步骤如下:

    1. MATLAB生成数据,并以科学计数法的形式写出到一个txt文件“input.txt”中;
    2. 编写ansys的APDL程序,在MATLAB环境下调用APDL程序,ANSYS以batch方式运行进行分析求解,并输出想要分析的结果,写出到一个txt文件“output.txt”中;;
    3. MATLAB调用“output.txt”,进行数据分析。

    在上述步骤中,有3个 最最核心的关键:

    1. 以科学计数法的形式生成数据文件“input.txt”,是为了能够让“input.txt”正确调用到创建的ANSYS数组中,只有数据正确调用到ANSYS中才能准确进行有限元求解。(科学计数法的形式是目前我发现的最方便调用的数据形式)
    %% 将matlab中的样本数据以科学计数法的形式导出成txt文件
    sample = [2.5e-3, 2.1e11, 1.185e-3, 2.1e11, 3.031e-3, 2.1e11, 5.0e4, 5.0e4 5.0e4];
    fid = fopen('truss.txt', 'wt');                                % -t模式按照文本而非二进制模式读写 
    fprintf(fid,[repmat('  %.4e  ', 1, size(sample,2)), '\n'], sample');      % 转置并适时(写完一列后)添加换行
    fclose(fid); 
    
    1. 在编写APDL代码时,首先要创建一个数组用于储存输入数据“input.txt”,
    ! 文件写入
    *Create, dataread, mac
    *DIM, input, array, 1, 9                    ! 创建样本数据存储的数组
    *VREAD, input(1,1), F:\MATLAB_ANSYS\input, TXT, , JIK, 9, 1
    (9f14.4)
    *End
    Dataread
    

    然后进行有限元分析之后,对于想要输出的结果进行输出,创建一个数组储存想要输出的数据并将其写出到一个txt文件“output.txt”。

    ! 将数据导出
    *DIM, output, array, 1, 1                    ! 创建数据存储的数组
    *get, output(1), node, 5, U, y   ! 返回节点5的Y位置,并将结果作为output存储。 
    *create, datawrite, mac
    *cfopen, F:\MATLAB_ANSYS\output, txt
    *vwrite, output(1,1)
      (f14.6)
    *cfclose
    *end
    Datawrite
    finish
    

    上述代码具体含义参考;
    使用MATLAB和ANSYS解决大量不同几何参数和荷载样本下连续求解结点位移.

    1. MATLAB调用ANSYS的操作流程
    % ansys 版本中的可执行文件,path中有空格要加:""
    ansys_path=strcat('"E:\ANSYS150\ANSYS Inc\v150\ansys\bin\winx64\ansys150.exe"');
    % jobname,不需要后缀
    jobname='truss';
    % 是命令流文件,也就是用ansys写的apdl语言,matlab调用时,他将以批处理方式运行,需要后缀
    skriptFileName='F:\MATLAB_ANSYS\truss_ansys.mac';
    % 输出文件所在位置,输出文件保存了程序运行的相关信息,需要后缀
    outputFilename='F:\MATLAB_ANSYS\ans.out';
    % 最终总的调用字符串,其中:32代表空格的字符串ASCII码
    sys_char=strcat('SET KMP_STACKSIZE=2048k &',32,ansys_path,32,...
        '-b -p ane3fl -i',32,skriptFileName,32,...
        '-j',32,jobname,32,...
        '-o',32,outputFilename),
    % 调用ANSYS
    ans1=system(sys_char);
    

    上述代码具体含义参考;
    Matlab调用ANSYS的三种方法.

    之后再用matlab调用ANSYS的输出文件“output.txt”就可以进行数据分析了。

    展开全文
  • 试对在垂直于玻璃平面方向的2的面载荷(包括玻璃自重、钢结构自重、活载荷(人员与演出器械载荷)、风载荷等)作用下的舞台进行有限元分析.(每分格面载荷对于每一支撑点的载荷可等效于0.5的点载荷)。 钢结构...

    一、 题目描述

    某露天大型玻璃平面舞台的钢结构,每个分格(每个最小的矩形即为一个分格)x方向尺寸为1m,y方向尺寸为1m; 钢结构的主梁为高160宽100厚16的方钢管,次梁为直径60厚8的圆钢管(单位为毫米),材料均为碳素结构钢Q235;该结构固定支撑点位于左右两端主梁和最中间(如不是正处于X方向正中间,偏X坐标小处布置)的次梁的两端。

    玻璃采用四点支撑与钢结构连接(采用四点支撑表明垂直作用于玻璃平面的面载荷将传递作用于玻璃所在钢结构分格四周的节点处,表现为点载荷);试对在垂直于玻璃平面方向的2的面载荷(包括玻璃自重、钢结构自重、活载荷(人员与演出器械载荷)、风载荷等)作用下的舞台进行有限元分析.(每分格面载荷对于每一支撑点的载荷可等效于0.5的点载荷)。

    钢结构框架为5列13行,因此框架的外边框为15000×13000(单位mm)。

     

    二、具体操作及分析求解

    1、准备工作

    执行 Utility Menu :File→Clear&start new 清除当前数据库并开始新的分析,更改文件名和文件标题。选择GUI filter,执行 Main Menu: Preferences→Structural→ok。

                                                                                     图1 设置GUI filter

    2、选择单元类型

    执行 Main Menu: Preprocesso→Element Type→Add/Edit/Delete→Add→select→ BEAM188,之后点击OK( 回到Element Types window)→Close

                                                                                      图2 选择单元格

    3、定义材料属性

    该钢结构材料为碳素结构钢Q235,其弹性模量为210GPa,执行 Main Menu→ Preprocessor →Material   Props →Material  Models →Structural →Linear→Elastic  →Isotro,pic此处协调单位制为  mmkgs,故EA设为 2.1E8, PRXY 设置为 0.3。如图所示,选择OK 并关闭对话框。

                                                                                        图3 设置材料参数

    4、定义梁的截面

    定 义 主 梁 和 次 梁 的 截 面 , 执行Main Menu→Preprocessor→Sections→Beam→ Common Sections,弹出如下图所示截面定义对话框。输入 ID1 ,按照 选择方钢管, W1=100,W2=160,t1=t2=t3=t4=14 ;输入 ID2 ,选择圆管, Ri=20, Ro=30,分别如图所示:

                                                                                      图4 主梁截面形状

                                                                                        图5 次梁截面形状

    5、创建实体模型

    执行 Preprocessor→Modeling→Create→KeypointsOn→Working Plane,输入点坐标值,点击apply。依次创建   (0,0),(5000,0),(5000,13000), (0,13000)四个关键点,如图所示。执行 Preprocessor →Modeling→Create   →Lines    →Lines    →Straigh,一次拾取两点连点成线。

                                                                                      图6 创建关键点

                                                                                            图7 创建模型

    执行  Preprocessor →Modeling  →Copy→Lines,偏移1000,行数 13,列数 5,分别复制行和列,则几何模型创建完毕,如图所示:

                                                                                          图8 创建模型

    6、划分单元,生成有限元模型

    执行 preprocessor→meshing→size cntrls→manualsize→lines→All line,然后输入单元长度 1000,如图所示。

                                                                                           图9 设定单元长度

    执行preprocessor →meshing →meshtool,设置global,如图6.3所示。按mesh,选选取所有主梁。再执行preprocessor →meshing →meshtool,设置global。按mesh,再选择所有次梁。网格划分完毕结果如图所示。

                                                                                                 图10 网格划分

                                                                                             图11 网格划分

    7、合并重复nodes 

    执行Preprocessor→NumberingCtrls→MergeItems→OK。执行utility menu:plot→ nodes,结果如图所示:

                                                                                              图12 合并Nodes

    8、定义分析类型并施加约束 

    执行Main Menu→Solution→ Analysis Type→New Analysis,定义分类型为Static。对模型施加约束,执行MainMenu→Solution→Apply→Structural→Displacement→OnNodes,选取6个点1,34,20,15,17,2,约束选为ALL DOF。

    执行Main Menu→Solution→Apply→Structural→Force/Moment→On Nodes,依次对4个角上的结点(1,20,15,2),边缘结点以及中间的结点(剩余所有结点)施加FZ载荷,注意到力的单位是kgmm/s2,值分别为-500000、-1000000、-2000000,其中边缘点:

    A:3,4,5,6,7,8,9,10,11,12,13,14;

    B:16,17,18,19;

    C:21,22,23,24,25,26,27,28,29,30,31,32

    D:33,32,35,36.

                                                                                            图13 节点约束

                                                                                          图14 节点加载

                                                                                              图15载荷、约束模型

    9、求解分析 

    执行Main Menu→Solution→Solve→Current LS→OK,进行求解。结果如图所示。

                                                                                            图16 求解完成

    三、后处理

    1、显示该结构的平面布置结构

    执行 PlotCtrls→Style→SizeandShape→DisplayEloefment →on→Ok

    2、显示结构的变形图

    General Postproc →Plot Results    →Deformed Shape→selectDef+Underformed→OK, 注意长度单位是mm。如图所示:

                                                                                          图17 结构变形图

    3、求支座反力

    执行  Main Menu→General    Posproc→List Results →ReactionSolu →All  struct force F  → OK。可以看到X,Y 方向的支座反力远小于Z方向,几乎为 0,这与理论分析支座反力只有Z向的结果相符,注意力的单位是    kgmm/s²。 同时1与2结点, 17 与 34 结点,15与20 结点的支座反力相等,理论Z 向总载荷为5x13x2=130 kN,平摊到六个节点, 每个节点为  21.6kN,即0.37E8 kgmm/s²。 仿真结果, 6 个节点  Z 向反力相加为120kN,每个节点力数量级为E8,仿真结果同样与理论分析结果相符。

                                                                                                 图18 支座反力

    4、求结点的最大位移及其所在位置

    执行  Main  Menu→GeneralPosproc →ListResults   →SortedListing   →Sort Nodes,选择DOF solution→USUM→  OK。

                                                                                           图19 节点排序设置

    然后执行  Main   Menu→General Posproc →ListResults    →NodaSlolution ,弹出List Nodal Solution ,选择DOF Nodal solution→Displayment Vector Sum点 OK 之后弹出结点位移按顺序排列的结果由输出结果可知,结点最大位移位于107和90 结点上,最大位移值为80.074mm。同样的主要位移在 Z方向,与理论相符。

                                                                                       图20 结点位移

    执行   Main   Menu→General Posproc→Plot Result →Contour Plot →Ndal Solu,选择Displacement vector sum →OK 之后显示最大位移的结点位置,如图所示。

                                                                                       图21 最大位移结点位置

                                                                                 图22 最大位移结点位置

    5、强度校核

    对该结构中最危险单元(杆件)进行强度校核,执行   Main Menu→General Postproc →Plot Results→Element Solution   →Stress,选择  Von Miss Stress,结果如图所示:

                                                                                         图23 强度校核

    如图所示,可以看出机构上最小应力杆单元位于MN附近,应力最大的杆单元位于MX附近边缘。材料是碳素结构钢Q235,其屈服强度极限是235MPa,由最大应力为19.005MPa可知,符合强度要求。

    完毕

     

     

    (欢迎关注博客,不定期分享一些IT技术,谢谢赏脸)

    展开全文
  • 对于有限元分析来说,网格划分是其中最关键的一个步骤,网格划分的好坏直接影响到解算的精度和速度。网格划分有三个步骤:定义单元属性(包括实常数)、在几何模型上定义网格属性、划分网格。今天给大家分享:有限元...

    对于有限元分析来说,网格划分是其中最关键的一个步骤,网格划分的好坏直接影响到解算的精度和速度。网格划分有三个步骤:定义单元属性(包括实常数)、在几何模型上定义网格属性、划分网格。今天给大家分享:有限元仿真分析技术中网格划分的类型与步骤。
    定义网格的属性主要是定义单元的形状、大小。单元大小基本上在线段上定义,可以用线段数目或长度大小来划分,可以在线段建立后立刻声明,或整个实体模型完成后逐一声明。采用Bottom-Up方式建立模型时,采用线段建立后立刻声明比较方便且不易出错。例如声明线段数目和大小后,复制对象时其属性将会一起复制,完成上述操作后便可进行网格化命令。

    网格化过程也可以逐步进行,即实体模型对象完成到某个阶段就进行网格化,如所得结果满意,则继续建立其他对象并网格化。

    网格的划分可以分为自由网格 (freemeshing)、映射网格 (mappedmeshing) 和扫略网格 (sweepmeshing) 等。
    在这里插入图片描述
    一、自由网格划分
    自由网格划分是自动化程度最高的网格划分技术之一,它在面上可以自动生成三角形或四边形网格,在体上自动生成四面体网格。通常情况下,可利用ANSYS的智能尺寸控制技术(SMARTSIZE命令)来自动控制网格的大小和疏密分布,也可进行人工设置网格的大小(AESIZE、LESIZE、KESIZE、ESIZE等系列命令)并控制疏密分布以及选择分网算法等(MOPT命令)。

    对于复杂几何模型而言,这种分网方法省时省力,但缺点是单元数量通常会很大,计算效率降低。同时,由于这种方法对于三维复杂模型只能生成四面体单元,为了获得较好的计算精度,建议采用二次四面体单元(92号单元)。

    如果选用的是六面体单元,则此方法自动将六面体单元退化为阶次一致的四面体单元,因此,最好不要选用线性(一阶次)的六面体单元(没有中间节点,比如45号单元),因为该单元退化后为线性的四面体单元,具有过大的刚度,计算精度较差;如果选用二次的六面体单元(比如95号单元),由于其是退化形式,节点数与其六面体原型单元一致,只是有多个节点在同一位置而已,因此,可以利用TCHG命令将模型中的退化形式的四面体单元变化为非退化的四面体单元(如92号单元),减少每个单元的节点数量,提高求解效率。

    在有些情况下,必须要用六面体单元的退化形式来进行自由网格划分,比如,在进行混合网格划分(后面详述)时,只有用六面体单元才能形成金字塔过渡单元。对于计算流体力学和考虑集肤效应的电磁场分析而言,自由网格划分中的层网格功能(由LESIZE命令的LAYER1和LAYER2域控制)是非常有用的。
    二、映射网格划分
    映射网格划分是对规整模型的一种规整网格划分方法,映射网格要求面或体的形状是规则的,也就是说它们必须遵循一定的规则。

    给面划分四边形映射网格时,必须满足3个条件:

    此面必须由3或4条线围成;

    在对边上必须有相等的单元划分数;

    如果此面由3条线围成,则三条边上的单元划分数必须相等则必须是偶数。

    给体划分六边形单元映射网格时,必须满足4个条件:

    它必须是砖形(六面体),楔形体(五面体)或四面体形;

    在对面和侧边上所定义的单元划分数必须相等;

    如果体是棱柱形或四面体形,在三角形面上的单元划分数必须是偶数;

    相对棱边上划分的单元数必须相等,但不同方向的对应边可以不相等。

    对于三维复杂几何模型而言,通常的做法是利用ANSYS布尔运算功能,将其切割成一系列四、五或六面体,然后对这些切割好的体进行映射网格划分。也可以用连接的方式来得到规则的面和体,连接后生成的线或面对任何实体建模操作都是无效的,仅用于网格的划分。

    面可以是三角形、四边形、或其它任意多边形。对于四边以上的多边形,必须用LCCAT命令将某些边联成一条边,以使得对于网格划分而言,仍然是三角形或四边形;或者用AMAP命令定义3到4个顶点(程序自动将两个顶点之间的所有线段联成一条)来进行映射划分。注意线与线的夹角不要太大或太小。

    体可以是四面体、五面体、六面体或其它任意多面体。对于六面以上的多面体,必须用ACCAT命令将某些面联成一个面,以使得对于网格划分而言,仍然是四、五或六面体。

    面的三角形映射网格划分往往可以为体的自由网格划分服务,以使体的自由网格划分满足一些特定的要求,比如:体的某个狭长面的短边方向上要求一定要有一定层数的单元、某些位置的节点必须在一条直线上、等等。这种在进行体网格划分前在其面上先划分网格的方式,对很多复杂模型可以进行良好的控制,但别忘了在体网格划分完毕后清除面网格(也可用专门用于辅助网格划分的虚拟单元类型-MESH200-来划分面网格,之后不用清除)。

    三、扫略网格划分
    对于由面经过拖拉、旋转、偏移(VDRAG、VROTAT、VOFFST、VEXT等系列命令)等方式生成的复杂三维实体而言,可先在原始面上生成壳(或MESH200)单元形式的面网格,然后在生成体的同时自动形成三维实体网格;对于已经形成好了的三维复杂实体,如果其在某个方向上的拓扑形式始终保持一致,则可用(人工或全自动)扫略网格划分(VSWEEP命令)功能来划分网格。这两种方式形成的单元几乎都是六面体单元。

    通常,采用扫略方式形成网格是一种非常好的方式,对于复杂几何实体,经过一些简单的切分处理,就可以自动形成规整的六面体网格,它比映射网格划分方式具有更大的优势和灵活性。

    四、混合网格划分
    混合网格划分即在几何模型上,根据各部位的特点,分别采用自由、映射、扫略等多种网格划分方式,以形成综合效果尽量好的有限元模型。混合网格划分方式要在计算精度、计算时间、建模工作量等方面进行综合考虑。

    通常,为了提高计算精度和减少计算时间,应首先考虑对适合于扫略和映射网格划分的区域先划分六面体网格,这种网格既可以是线性的(无中节点)、也可以是二次的(有中节点),如果无合适的区域,应尽量通过切分等多种布尔运算手段来创建合适的区域(尤其是对所关心的区域或部位)。

    其次,对实在无法再切分而必须用四面体自由网格划分的区域,采用带中节点的六面体单元进行自由分网(自动退化成适合于自由划分形式的单元),此时,在该区域与已进行扫略或映射网格划分的区域的交界面上,会自动形成金字塔过渡单元(无中节点的六面体单元没有金字塔退化形式)。

    如果对整个分析模型的计算精度要求不高、或对进行自由网格划分区域的计算精度要求不高,则可在自由网格划分区采用无中节点的六面体单元来分网(自动退化成无中节点的四面体单元),此时,虽然在六面体单元划分区和四面体单元划分区之间无金字塔过渡单元,但如果六面体单元区的单元也无中节点,则由于都是线性单元,亦可保证单元的协调性。

    五、利用自由度耦合和约束方程
    对于某些形式的复杂几何模型,可以将相邻的体在进行独立的网格划分(通常是采用映射或扫略方式)后再“粘结”起来,由于各个体之间在几何上没有联系,因此不用费劲地考虑相互之间网格的影响,所以可以自由地采用多种手段划分出良好的网格,而体之间的网格“粘结”是通过形函数差值来进行自由度耦合的,因此连接位置处的位移连续性可以得到绝对保证,如果非常关注连接处的应力,可以如下面所述再在该局部位置建立子区模型予以分析。

    再如,对于循环对称模型(如旋转机械等),可仅建立一个扇区作为分析模型,利用CPCYC命令可自动对扇区的两个切面上的所有对应节点建立自由度耦合条件(用MSHCOPY命令可非常方便地在两个切面上生成对应网格)。

    六、利用子区模型等其它手段
    子区模型是一种先总体、后局部的分析技术(也称为切割边界条件方法),对于只关心局部区域准确结果的复杂几何模型,可采用此手段,以尽量小的工作量来获得想要的结果。

    先建立总体分析模型,并忽略模型中的一系列细小的特征,如导角、开孔、开槽等(因为根据圣维南原理,模型的局部细小改动并不特别影响模型总的分析结果),同时在该大模型上划分较粗的网格(计算和建模的工作量都很小),施加载荷并完成分析;其次,(在与总体模型相同的坐标系下)建立局部模型,此时将前面忽略的细小特征加上,并划分精细网格(模型的切割边界应离关心的区域尽量远),用CBDOF等系列命令自动将前面总体模型的计算结果插值作为该细模型的边界条件,进行求解计算。

    该方法的另外好处是可以在小模型的基础上优化(或任意改变)所关心的细小特征,如改变圆角半径、缝的宽度等;总体模型和局部模型可以采用不同的单元类型,比如,总体模型采用板壳单元,局部模型采用实体单元等。

    子结构(也称超单元)也是一种解决大型问题的有效手段,并且在Abaqus中,超单元可以用于诸如各种非线性以及装配件之间的接触分析等,有效地降低大型模型的求解规模。

    巧妙地利用结构的对称性对实际工作也大有帮助,对于常规的结构和载荷都是轴对称或平面对称的问题,毫无疑问应该利用其对称性,对于一些特殊情况,也可以加以利用,比如:如果结构轴对称而载荷非轴对称,则可用Abaqus处理此类问题;对于由多个部件构成装配件,如果其每个零件都满足平面对称性,但各对称平面又不是同一个的情况下,则可用多个对称面来处理模型(或至少可用此方法来减少建模工作量:各零件只需处理一半的模型然后拷贝或映射即可生成总体模型)。

    总之,对于复杂几何模型,综合运用多种手段建立起高质量、高计算效率的有限元模型是极其重要的一个步骤,这里介绍的注意事项仅仅是很少一部分,用户自己通过许多工程问题的不断摸索、总结和验证才是最能保证有效而高效地处理复杂模型的手段。

    展开全文
  • ANSYS 有限元分析 接触分析

    千次阅读 多人点赞 2020-05-24 14:42:45
    目 录一、前沿二、接触单元类三、接触单元关键选项3.1 CONTA174 KeyOption3.2 TARGE170 KeyOption四、接触分析标准...ANSYS 有限元分析 概述 ANSYS 有限元分析 坐标系/工作平面 ANSYS 有限元分析 几何建模 ANSY



    Blog Links




    一、前沿


      1882 年 Hertz 柏林大学发表的学术论文 论弹性体的接触( On the contact of elastic solids) 开启了接触力学的研究。


      接触问题属于不定边界问题,即使是弹性接触问题也具有表面非线性,其中既有由接触面积变化而产生的非线性及由接触压力分布变化而产生的非线性,也有由摩擦作用产生非线性。


      两个互相接触的物体,随着其载荷大小的不同,无论是接触面积还是接触压力分布,都会发生显著的变化。即随着载荷增大,法向接触压力分布的变化是非线性的,而其切向压力分布由于摩擦作用将会更加复杂。 由于这种表面非线性和边界不定性,所以,一般说来,接触问题的求解是一个 反复迭代 的过程。


      从物理意义上讲,两个物体彼此接触,接触压力在两个物体间传递,同时,接触面之间存在摩擦将产生切应力,阻止物体切向运动;从数值计算上讲,接触是及其不连续的边界条件非线性,即接触面接触时产生接触约束,接触面一旦分离,约束失效。


      处于接触状态的两个表面,有如下特点:

       - 1. 互相不穿透

       - 2. 能够传递法向压力和切向摩擦力

       - 3. 通常不传递法向拉力

    在这里插入图片描述


      接触是 状态改变 非线性,即系统的刚度依赖于接触状态。接触状态可分为分离状态、粘接接触状态、滑动接触状态。


    在这里插入图片描述


      接触是强非线性,随着接触状态的改变,接触表面的法线和切向刚度都有显著变化。刚度突变会导致严重的收敛困难。


    在这里插入图片描述


      接触问题通常分为两类:刚-柔接触 和 柔-柔接触。


    二、接触算法


      以有限元为基础的接触问题数值解法,主要可分为直接迭代法、接触约束算法和数学规划法等。


      直接迭代求解法:首先假设初始接触状态形成系统刚度矩阵,求得位移和接触力后,根据接触条件不断修改接触状态,重新形成刚度矩阵求解,反复迭代直至收敛。迭代法是解决非线性问题的常用方法,方程可用 Newton-Raphson 等方法迭代求解。


      接触约束算法:接触问题可描述为求区域内位移场 U ,使得系统统的势能 Π(U) 在接触边界条件的约束下达到最小。

      接触约束算法就是通过对接触边界约束条件的适当处理,将约束优化问题转化为无约束优化问题求解。 根据无约束优化方法的不同,主要可分为罚函数方法和 Lagrange 乘子法等。


      ANSYS 软件采用的是接触约束算法,它提供了如下四种接触约束算法:

      • 纯罚函数法

      • 增广拉格朗日乘子法

      • 纯拉格朗日乘子法

      • 接触法向采用拉格朗日乘子法与摩擦方向采用罚函数法的综合方法


    2.1 罚函数法


      罚函数法用一个接触弹簧来在两个面间建立关系,弹簧刚度被称为惩罚参数,其实就是接触刚度。当两面分开时,弹簧不起作用;当面开始穿透时,弹簧起作用,根据胡克定律:F = K Δ ,此处的 K 为法向刚度 。


    在这里插入图片描述


      除了表面间传递法向压力外,接触单元还传递切向摩擦力,采用切向罚刚度保证切向的协调,作为初始值,可采用 Ktangent = 0.01 * Knormal


    在这里插入图片描述


      然而,在上述物理模型中,存在一个两难问题,即为了维持相互接触的两个物体的平衡,则接触面间的压力/摩擦力必不为 0 (如果为 0 你费劲巴拉的分析个毛线),进而有接触面间的相对法向/切向位移 Δ (法向可称作作穿透量,切向可称作滑移量) 必不为 0,这与事实相违背,实际上任何两个相互接触且有相互作用的固体,不存在宏观层面上的相互穿透 (微观层面上可能出现相互扩散现象),这是物理事实。为了保证计算能继续进行,又不与物理事实发生严重的背离,则相对位移 Δ 不应过大,而在特定外力作用下,物体维持平衡所需的接触力是固定不变的,那么,此时接触刚度就应该足够大。当接触刚度过大时,又会引起收敛困难,这时因为,如果接触刚度太大,一个微小的穿透就会产生一个很大的接触反力,在下一次迭代中,可能会将接触面推开,这将导致收敛振荡,并且尝尝会发散。因此,必须给定合适的接触刚度,最小的穿透量给出最大的计算精度。

      罚函数法:对于罚函数法需要接触法向刚度与切向刚度。它主要的缺点是两个接触物体表面之间的渗透深度取决于这两个刚度。如果刚度较小,则渗透就会很大。高的刚度可以减小渗透的深度,但是会导致整体刚度矩阵出现病态和收敛的困难。因此,理想的刚度就是既要能保证渗透较小,又要保证整体刚度阵不出现病态,才能够收敛。


    2.2 拉格朗日乘子法法


      拉格朗日乘子法,增加一个附加自由度 (接触压力),来满足不可穿透条件。


    2.3 增广拉格朗日乘子法


      增广拉格朗日乘子法:该方法是通过改变罚因子寻找拉格朗日乘子的迭代过程。与纯罚函数相比增广拉格朗日乘子法通常能够产生更好的情况,接触刚度系数对它的影响相对也要小一些。但是在有些分析中需要一些附加的迭代,需要较多的时间。


      多数 ANSYS 接触单元可以将罚函数法和拉格朗日乘子法结合起来强制接触协调,称之为增广拉格朗日法。在迭代的开始,接触协调基于惩罚刚度确定,一旦达到平衡,检查穿透容差。此时,如有必要,接触压力增加,迭代继续。


      绝对理想情况下,相互接触的两个物体的接触面应该不发生穿透,但为了使得分析的顺利进行,同时,又具有相当的精度,应保证接触面的实际穿透量小于规定的允许穿透量。


      当程序防止相互穿透时,称之为强制接触协调。当没有强制接触协调时,发生穿透。


      对面─面的接触单元,程序可以使用增广拉格朗日算法或罚函数方法,通过使用单元关键项 KETOPT(2) 来指定。



    三、接触特性


      对于接触问题,必须认识到模型在变形期间哪些地方可能发生接触,在 ANSYS 中,通过目标单元和接触单元来定义它们,目标和接触单元跟踪变形阶段的运动,构成一个接触对的目标单元和接触单元通过共享的实常数号联系起来。


      ANSYS 支持刚体─柔体的面─面的接触单元,刚性面被当作 “目标” 面,分别用 Targe169 和 Targe170 来模拟 2-D 和 3-D 的 “目标” 面,柔性体的表面被当作 “接触” 面,用 Conta171、Conta172、Conta173、Conta174 来模拟。一个目标单元和一个接单元叫做一个 “接触对” 程序通过一个共享的实常数号来识别 “接触对”,为了建立一个 “接触对” 给目标单元和接触单元指定相同的实常数号。


      接触对特征:接触刚度、穿透容差、确定目标面。


      在 GUI 中,定义的接触对及相关属性按如下方式查看,保证 ANSYS 处于前处理模块,否则接触竖向无法查看。


    在这里插入图片描述


    3.1 接触刚度


      当外载一定时,若要维持相互接触的两个物体的平衡,接触面上的相互作用力是唯一确定的。于是有,接触面间的接触刚度越大,计算过程中产生的穿透量就越小,越接近物理实际,计算结果也就越精确。但过大的接触刚度将产生计算振荡,甚至是发散,使计算收敛困难。因此,必须指定合适的接触刚度,接触刚度包括法向接触刚度 Kn 和切向接触刚度 Kt ,一般,不特殊说明,接触刚度特指法向接触刚度 Kn,初始切向接触刚度可近似取为 Kt = 0.01 * Kn


       接触刚度 是同时影响计算精度和收敛性的最重要参数 。


      所有的 ANSYS 接触单元都采用罚刚度 (接触刚度) 来保证接触界面的协调性。

      所有的接触问题都需要定义接触刚度,两个表面之间渗透量的大小取决于接触刚度,过大的接触刚度可能会引起总刚矩阵的病态,而造成收敛困难,一般来说,应该选取足够大的接触刚度以保证接触渗透小到可以接受,但同时又应该让接触刚度足够小以使不会引起总刚矩阵的病态问题而保证收敛性。


      所有的接触问题都需要定义接触刚度,两个表面之间渗透量的大小取决于接触刚度,过大的接触刚度可能会引起总刚矩阵的病态而造成收敛困难,一般来说,应该选取足够大的接触刚度以保证接触渗透小到可以接受,但同时又应该让接触刚度足够小以使不会引起总刚矩阵的病态问题而保证收敛性。


    3.1.1 接触刚度的初选


      1. 面-面接触

       对于面-面接触单元,接触刚度通常指定为: Kn = FKN * 基体单元刚度 (KFN为比例因子) 。

       首次计算时,FKN 可按如下方式进行初始估计 (若想获得更精确的解答,需要对FKN进行敏感性分析):


    接触类型 FKN
    大面积实体接触 1.0
    柔性较大的部件 (弯曲主导) 0.01 ~ 0.1

    在这里插入图片描述

       For certain contact problems, you may choose to use the real constant FKN to define a normal contact stiffness factor. The usual factor range is from 0.1 - 10.0, with a default of 1.0. The default value should work in most cases. You can also define an absolute normal contact stiffness by specifying a negative value for FKN.

       Kn 也可直接指定具体数值,其量纲为 (F/L)/(L^2),此时,通过设置 FKN 为负值来实现。


      2. 点-面接触 & 点-点接触

       对于点-点接触单元和点-面接触单元,需要给定绝对法向接触刚度,即直接指定 Kn 的具体取值。


    接触类型 FKN
    对于大变形 0.1 * E < Kn < 1.0 * E
    对于弯曲 0.01 * E < Kn < 0.1 * E

       上表中,E 为弹性模量。


    3.1.2 接触刚度的确定


      参数敏感性分析,确定计算结果对接触刚度是否敏感。以下步骤使用于静态、非路径相关的分析。


      Step 1. 设置接触单元关键选项, 令KEYOPY(10)=1,以允许接触刚度在重启动期间可以修改。

      Step 2. 给定一个较小的初始接触刚度值,使计算能快速收敛。

      Step 3. 运行分析,或对前几个子步进行计算。

      Step 4. 检查穿透量和每一个子步平衡迭代次数。

          若穿透量大,需要提高接触刚度重新分析;若收敛的迭代次数过多或未收敛,则可降低接触刚度重新分析。

      Step 5. 检查接触压力、Mises等效应力 (SEQV) 等是否发生显著变化。

      Step 6. 若有显著变化,则增大接触刚度重新启动求解,直到达到所期望的收敛。


    在这里插入图片描述


      注意:罚刚度 (接触刚度) 可以在荷载步间改变,并且可以在重启动中调整。

      接触刚度是同时影响计算精度和收敛性的最重要参数。如果收敛有问题,减小接触刚度值,重新分析。

      在敏感的分析中,还应该改变接触刚度来验证结果的有效性。在分析中减小接触刚度范围,直到结果 (接触压力、最大 SEQV 等) 不再明显改变。


      在 ANSYS 中,默认情况下,FKN = 1.0 ,在多数情况下,已经能得到相当的计算精度。


    3.2 穿透容差


      同样地,穿透容差也是影响计算精度和收敛性的重要参数。当穿透容差较小时,可以改善计算精度,但会使得收敛更加困难。

      和接触刚度一样,以系数 FTOLN 的方式给定穿透容差。即程序通过下层单元的深度 h 乘以所给出的系数来确定穿透容差,在计算过程中,程序始终保证实际穿透量 Δ 小于等于穿透容差,如下式所示:


    Δ  [Δ]=FTOLN  h \Delta \ \leq \ [\Delta] ={\rm FTOLN} \ * \ h


    在这里插入图片描述


      注意:不要设置较小的接触刚度,同时设置较小的穿透容差,即 FKN 和 FTOLN 尽量协调合理。

      太小的 FTOLN 值将导致收敛困难,增大惩罚刚度 (FKN) 将会减小穿透。


      Use real constant FTOLN in conjunction with the augmented Lagrangian method. FTOLN is a tolerance factor to be applied in the direction of the surface normal. The range for this factor is less than 1.0 (usually less than 0.2), with a default of 0.1, and is based on the depth of the underlying solid, shell, or beam element. This factor is used to determine if penetration compatibility is satisfied.


      Contact compatibility is satisfied if penetration is within an allowable tolerance (FTOLN times the depth of underlying elements). The depth is defined by the average depth of each individual contact element in the pair. If the program detects any penetration larger than this tolerance, the global solution is still considered unconverged, even though the residual forces and displacement increments have met convergence criteria. You can also define an absolute allowable penetration by specifying a negative value for FTOLN. In general, the default contact normal stiffness is inversely proportional to the final penetration tolerance; the tighter the tolerance, the higher the contact normal stiffness.


      增广拉格朗日算法是为了找到精确的拉格朗日乘子而对罚函数修正项进行反复迭代,与罚函数的方法相比,拉格朗日方法不易引起病态条件,对接触刚度的灵敏度较小,然而,在有些分析中,增广拉格朗日方法可能需要更多的迭代,特别是在变形后网格变得太扭曲时。使用拉格朗日算法的同时应使用实常数 FTOLN,FTOLN 为拉格朗日算法指定容许的最大渗透,如果程序发现渗透大于此值时,即使不平衡力和位移增量已经满足了收敛准则,总的求解仍被当作不收敛处理,FTLON 的缺省值为 0.1,这个值可以改变,但如果此值太小可能会造成太多的迭代次数或者不收敛。


    3.3 最大摩擦


      在基本的库仑摩擦模型中,两个接触面在开始相互滑动之前,在它们的界面上会有达到某一大小的剪应力产生,这种状态叫做粘合状态 (stick) 。库仑摩擦模型定义了一个等效剪应力,一旦剪应力超过此值后,两个表面之间将开始相互滑动,这种状态,叫做滑动状态 (Sliding) 粘合/滑动计算决定什么时候一个点从粘合状态到滑动状态或从滑动状态变到粘合状态,摩擦系数可以是任一非负值。程序缺省值为表面之间无摩擦。




      摩擦分为静摩擦、滑动摩擦和滚动摩擦。最大静摩擦比滑动摩擦略大,近似计算时可认为最大静摩擦等于滑动摩擦,通常,滚动摩擦远小于滑动摩擦 (高中物理知识)。

      根据高中物理知识,滑动摩擦力可按下式计算:


    f=μN f = \mu N


      产生摩擦力的三要素:两个物体相互接触、接触面粗糙、存在垂直于接触面的正压力。

      物体在外力的作用下,接触面上将产生摩擦力 (本处不讨论无摩擦情况),摩擦力达到最大静摩擦力前物体保持静止状态,当摩擦力超过最大静摩擦力时,物体将发生滑动,此时摩擦力由静摩擦力转化为滑动摩擦力。




      ANSYS 程序提供了一个不管接触压力多大而人为指定最大等效剪应力的选项,如果等效剪应力达到此值时,滑动发生。为了指定接触界面上最大许可剪应力,设置常数 TAUMAX,这种限制剪应力的情况一般用于接触压力非常大的时候,以至于用库仑理论计算出的界面剪应力超过了材料的屈服极限。一对 TAUMAX 的一个合理估计为 σy/(3^0.5) 即 0.577 σy

    在这里插入图片描述


    3.4 初始接触条件

      在动态分析中,刚体运动一般不会引起问题,然而在静力分析中,当物体没足够的约束时会产生刚体运动,有可能引起错误而终止计算。


      在仅仅通过接触的出现来约束刚体运动时,必须保证在初始几何体中,接触对是接触的,换句话说,要建立模型以便接触对是“刚好接触”的,然而这样作可能会遇到以下问题:

      • 刚体外形常常是复杂的,很难确定第一个接触点的发生位置。

      • 既使实体模型是在初始接触状态,在网格划分后由于数值舍入误差,两个面的单元网格之间也可能会产生很小的缝隙。

      • 接触单元的积分点和目标单元之间可能有小的缝隙。


      同理,在目标面和接触面之间可能发生过大的初始渗透,在这种情况下,接触单元可能会高估接触力,导致不收敛或接触面之间脱离开接触关系。定义初始接触也许是建立接触分析模型时最重要的方面。可通过下面两种方法来调整接触对的初始接触条件。

      1. 使用实常数 ICONT 来指定一个好的初始接触环,初始接触环是指沿着目标面的“调整环”的深度,如果没有人为指定 ICONT 的值,程序会根据几何尺寸来给 ICONT 提供一个小值,同时输出一个警告信息,对 ICONT一个正值表示相对于下面变形体单元厚度的比例因子,一个负值表示接触环的真正值,任何落在“调整环”区域内的接触检查点被自动移到目标面上。

      2. 使用实常数 PMIN 和 PMAX 来指定初始容许的渗透范围,当指定 PMAX 或 PMIN 后,在开始分析时,程序会将目标面移到初始接触状态,如果初始渗透大于 PMAX,程序会调整目标面的减少渗透,接触状态的初始调节仅仅通过平移来实现。


      The program provides one extension of classical Coulomb friction: real constant TAUMAX is maximum contact friction with units of stress. This maximum contact friction stress can be introduced so that, regardless of the magnitude of normal contact pressure, sliding will occur if the friction stress reaches this value. You typically use TAUMAX when the contact pressure becomes very large (such as in bulk metal forming processes). TAUMAX defaults to 1.0e20. Empirical data is often the best source for TAUMAX. Its value may be close to 0.577 σy , where σy is the yield stress of the material being deformed.


    3.5 时间步长


      时间步长必须足够以描述适当的接触。如果时间步长太大,则接触力的光滑传递会被破坏,设置精确时间步长的可信赖的方法是打开自动时间步长。

      为了获得精度足够的计算结果,时间步长应足够小。


    在这里插入图片描述


      接触单元的 KEYOPT(7) 选型用来控制时间步长。


    CONTACT 174 KEYOPT(7)
    Element level time incrementation control / impact constraints

    Value 描述
    0 No control
    1 Automatic bisection of increment
    2 Change in contact predictions made to maintain a reasonable time/load increment
    3 Change in contact predictions made to achieve the minimum time/load increment whenever a change in contact status occurs

      与其他非线性分析一样,对于接触问题,时间步长是非常有力的提高收敛性的工具。

      采用足够小的时间步长已获得收敛,对于冲击瞬态分析,必须使用足够数量的计算步以描述表面间的动量转移;对于路径相关现象 (如接触摩擦),相对较小的最大时间步长对于计算精度是必须的。



    3.6 目标面


      在接触分析中,目标面被定义为连续面,而接触面则通过一系列离散的点 (单元高斯积分点) 来定义。两个面在高斯积分点之间可以穿透,主要是目标面穿透接触面。


    在这里插入图片描述


      Contact detection points are located at the integration points of the contact elements which are interior to the element surface. The contact element is constrained against penetration into the target surface at its integration points. However, the target surface can, in principle, penetrate through into the contact surface.

      Surface-to-surface contact elements use Gauss integration points as a default, which generally provide more accurate results than the nodal detection scheme, which uses the nodes themselves as the integration points. The node-to-surface contact element, CONTA175, the line-to-line contact element, CONTA176, and the line-to-surface contact element, CONTA177, always use the nodal detection scheme.


    在这里插入图片描述


    3.6.1 选面原则


      ANSYS 支持刚体/柔体的面-面的接触单元,刚性面被当做 目标面 (Abaqus中的主面,粗网格硬材料为主面),分别用 Target169Target170 来模拟 2D 和 3D 的目标面,柔性体的表面被当做 接触面 (Abaqus中的从面),用 Conta171Target169Conta173Conta174 来模拟。


      目标面的选择原则:凹、粗、刚、高阶、大,即凹面、网格较粗的面、刚度较大的面、高阶单元、面积较大的面。


      特别注意: 当高低阶单元相接触时,以下均不作为主要因素考虑,此时高阶单元一定是接触面。



    主面 (Abaqus/Master) 目标面 (Ansys/Target) 高阶单元 粗网格 硬材料 大面积 凹面

    从面 (Abaqus/Slaver) 接触面 (Ansys/Contact) 低阶单元 细网格 软材料 小面积 凸面


    主 - 目标 - 高粗硬大凹

    从 - 接触 - 低细软小凸



      一个目标单元和一个接触单元叫做一个 接触对,程序通过一个共享的实常数来识别“接触对”,给目标单元和接触单元指定相同的实常的号。


      在 ANSYS GUI 中,目标面显示为洋红色,接触面显示为绿色,如下所示:


    在这里插入图片描述

    左侧主面 右侧从面

      Abaqus 使用单纯的主-从接触算法:从面上的节点不能侵入主面的任何部分。该算法对主面没有做限制,主面可以在从面的节点之间侵入从面。


    3.6.2 导向节点


      缺省时,程序自动约束刚性目标面,即自动地将目标的位移和转动设定为 0 。

      要模拟刚性目标的更复杂行为,可以创建一个特殊的单结点目标单元,称为导向结点。该单元通过具有相同的实常数属性与目标面联系起来。

      对于整个目标面,导向结点起手柄作用,可以对导向结点指定非零的位移、转动、力或力矩,来模拟目标面的刚体运动。注意,如果存在导向结点,则程序将不自动约束刚性面。

      刚性目标面可以与导向结点联系起来,导向结点的运动控制目标面的运动,可以在导向结点上为整个目标面确定力、位移或转动,可以认为导向结点是整个刚性面的手柄。

      如果定义一个导向结点,ANSYS仅在导向结点上检验边界条件而忽略目标面上其他结点的约束。

      导向结点可以通过对关键点划分网格生成,或通过采用和目标单元相同的单元属性直接生成。

      导向结点可以在任何位置,它不需要实际地附于其他目标单元。

      采用命令 TSHAPE 可直接生成导向结点,该方式是为目标单元形状设置了一个附加属性,在所要求的结点处创建单元。



    • TSHAP

    使用功能: 为目标单元 TARGE169 和 TARGE170 指定 2D 和 3D 几何表面。

    使用格式: TSHAP,shape

    参数说明shape:为目标单元 TARGE169 和 TARGE170 指定几何形状。其有效的形状有:PILO (2D或3D导向/引导节点)。

    使用提示:使用该命令可以生产面与面接触时的刚性目标面,对于 2D 是 TARGE169 、CONTA171 和 CONTA172,对于 3D 是 TARGE170 、CONTA173 和 CONTA174 。执行该命令后,其后生成的单元具有同样的形状,直到用另一个形状来代替。



    • Pilot Nodes

      The rigid target surface can also be associated with a “pilot node,” which is really an element with one node, whose motion governs the motion of the entire target surface. You can think of a pilot node as a handle for the rigid target surface. Forces/moments or rotations/displacements for the entire target surface usually should be prescribed on the pilot node. The pilot node can be one of the nodes on the target element or a node at any arbitrary location. The location of the pilot node is important only when rotation or moment loading is required.



    目标面导向节点 相当于 Abaqus 里的 参考点 Reference Point 。???????


    在这里插入图片描述



    3.7 Pinball


    This option allows you to specify a contact search area commonly referred to as a pinball region.

    Setting a pinball region can be useful in cases where initially, bodies are far enough away from one another that, by default, the program will not detect that they are in contact. You could then increase the pinball region as needed. Consider an example of a surface body that was generated by offsetting a face of a solid body, possibly leaving a large gap, depending on the thickness. Another example is a large deflection problem where a considerable pinball region is required due to possible large amounts of over penetration. In general though, if you want two regions to be bonded together that may be far apart, you should specify a pinball region that is large enough to ensure that contact indeed occurs.



    四、接触单元


      ANSYS 支持三种接触方式:点-点点-面面-面 接触,每种接触方式使用的接触单元适用于某类问题。


      为了给接触问题建模,首先必须认识到模型中的哪些部分可能会相互接触,如果相互作用的其中之一是一点,模型的对立应组元是一个结点。如果相互作用的其中之一是一个面,模型的对应组元是单元,例如梁单元,壳单元或实体单元,有限元模型通过指定的接触单元来识别可能的接触匹对,接触单元是覆盖在分析模型接触面之上的一层单元。


    在这里插入图片描述


      有限元模型通过指定的接触单元来识别可能的接触配对,接触单元是覆盖在分析模型接触面之上的一层单元。


      ANSYS 中常见接触单元如下:


    在这里插入图片描述

    接触CONTA单元类

    在这里插入图片描述

    目标TARGE单元类


    五、单元关键项


    5.1 CONTA174 KeyOption


    在这里插入图片描述

    Contact174默认设置



    在这里插入图片描述



    1. KEYOPT(2) —— Contact algorithm
    0 1 2 3 4
    Augmented Lagrangian (default) Penalty function Multipoint constraint (MPC) Lagrange multiplier on contact normal and penalty on tangent Pure Lagrange multiplier on contact normal and tangent

    1. KEYOPT(4) —— Location of contact detection point
    0 1 2 3
    On Gauss point (for general cases) On nodal point - normal from contact surface On nodal point - normal to target surface On nodal point - normal from contact surface (projection-based method)

    1. KEYOPT(5) —— CNOF/ICONT Automated adjustment
    0 1 2 3 4
    No automated adjustment Close gap with auto CNOF Reduce penetration with auto CNOF Close gap/reduce penetration with auto CNOF Auto ICONT

    1. KEYOPT(9) —— Effect of initial penetration or gap
    0 1 2 3 4 5
    Include both initial geometrical penetration or gap and offset Exclude both initial geometrical penetration or gap and offset Include both initial geometrical penetration or gap and offset, but with ramped effects Include offset only (exclude initial geometrical penetration or gap) Include offset only (exclude initial geometrical penetration or gap), but with ramped effects Include offset only (exclude initial geometrical penetration or gap) regardless of the initial contact status (near-field or closed)

    1. KEYOPT(10) —— Contact stiffness update
    0 1 2
    Each iteration based on the current mean stress of underlying elements. The actual elastic slip does not to exceed the maximum allowable limit (SLTO) within a substep Each load step if FKN is redefined during the load step. Each iteration based on the current mean stress of underlying elements. The actual elastic slip never exceeds the maximum allowable limit (SLTO) during the entire solution.

    1. KEYOPT(12) —— Behavior of contact surface
    0 1 2 3 4 5 6
    Standard Rough No separation (sliding permitted) Bonded No separation (always) Bonded (always) Bonded (initial contact)



    5.2 TARGE170 KeyOption


    在这里插入图片描述

    Target170默认设置


    在这里插入图片描述

    1. KEYOPT(2) —— Boundary conditions for rigid target nodes
    0 1
    Automatically constrained by the program Specified by user


    六、接触分析标准步骤


      创建接触的标准步骤为:定义实常数并设置接触特性参数(实常数的关键选项)、定义接触单元类型并设置单元关键项和创建接触单元(目标面导向结点)。


      实常数用来建立主从接触面间的联系,并定义某些关键参数,如 FKN (定义法向接触刚度因子)、FTOLN (定义最大渗透范围)、PINB (定义pinball区域) 等。

      单元 keyoption 用来定义接触的种类及有关算法,MPC、增广拉格朗日法等等。

      接触单元依附于其他单元的表面,ESURF。


      在 ANSYS 中,可在接触向导即接触对管理器中,快速创建和查看接触信息。接触向导为大多数接触问题提供了一个简单的办法来构造接触对,接触向导将引导创建接触对的过程。



    在这里插入图片描述

    接触向导的两种访问方式


    6.1 定义实常数


    • R

    使用功能: Defines the element real constants.

    使用格式: R,NSETR1R2R3R4R5R6

    参数说明NSET 为 Real constant set identification number (arbitrary).

          R1R2R3, . . . ,R6 分别为实常数值,如下表所示。


    *GET,rlmax,RCON,0,NUM,MAX      ! 获取当前定义的最大实常数编号并将其赋予变量rlmax。
    R,rlmax+1                      ! 定义新的实常数rlmax+1。
    


    在这里插入图片描述

    在这里插入图片描述

    6.2 定义/创建目标单元


      主M - 目标T - 高粗硬大凹 - 连续面

    *GET,etmax,ETYP,,NUM,MAX       ! 获取当前定义的最大单元类型编号并将其赋予变量etmax。
    ET,etmax+1,TARGE170            ! 定义目标面单元类型,单元类型:TARGE170,编号:etmax+1。
    KEYOPT,etmax+1,2,1             ! 设置编号为etmax+1的单元关键项KEYOPT(2)的值为2。
    
    
    REAL,rlmax+1                   ! 激活实常数
    TYPE,etmax+1                   ! 激活单元类型号etmax+1
    MAT,mtmax+1                    ! 激活材料号mtmax+1,如无特殊定义,不需要激活材料号。
    
    
    ...各种选择集,选择出位于接触面上的网格面...
    
    
    ESURF,,TOP
    ALLSEL,ALL                     ! Select everything 显示全部,释放选择集。
    

    在这里插入图片描述

    TARGE170 KEYOPT(2)


      KEYOPT(2) = 1 即用户指定刚性面的边界条件,目的是创建导向结点。


    在这里插入图片描述



    6.3 定义/创建接触单元


      从S - 接触C - 低细软小凸 - 离散面

    ET,etmax+2,CONTA174            ! 定义接触面单元类型,单元类型:CONTA174,编号:etmax+2。
    KEYOPT,etmax+2,4,0             ! KEYOPT(4)=0
    KEYOPT,etmax+2,9,2             ! KEYOPT(9)=2
    KEYOPT,etmax+2,10,2            ! KEYOPT(10)=2
    KEYOPT,etmax+2,5,4             ! KEYOPT(5)=4
    
    
    REAL,rlmax+1                   ! 激活实常数
    TYPE,etmax+2                   ! 激活单元类型号etmax+2
    MAT,mtmax+1                    ! 激活材料号mtmax+1,如无特殊定义,不需要激活材料号。
    
    
    ...各种选择集,选择出位于接触面上的网格面...
    
    
    ESURF,,TOP
    ALLSEL,ALL                     ! Select everything 显示全部,释放选择集。
    

    在这里插入图片描述




    七、接触分析实例


      约束创建前,需将模型按各部件进行装配,相当于 Abaqus 的 Assembly,法兰连接有限元模型主要包括,法兰模型、垫片模型和螺栓杆模型,运行 命令流 No.19,可将各部件进行装配。


      PartFlange.cdb、PartWasher.cdb 及 PartBolt.cdb 文件由 命令流 No.1 ~ No.18 创建,详见博客:ANSYS 有限元分析 几何建模ANSYS 有限元分析 网格划分 等。


    FINISH                                ! 退出当前处理器
    /CLEAR,ALL                            ! 清除所有
    /PREP7                                ! 进人前处理器
    
    CDREAD,db,'PartFlange','cdb',,'',''   ! 导入法兰模型
    CDREAD,db,'PartWasher','cdb',,'',''   ! 导入垫片模型
    CDREAD,db,'PartBolt','cdb',,'',''     ! 导入栓杆模型
    
    /ESHAPE,0                             ! 关闭梁截面显示
    /REPLOT                               ! Replot
    EPLOT                                 ! Elements plots
    
    命令流 No.19


    在这里插入图片描述



      该模型主要约束关系包括:上下法兰间的标准接触、垫片与法兰间的标准接触及垫片与螺栓杆端部间的MPC绑定接触。



    7.1 MPC


      MPC: Multi-point constraints / 多点约束,用于连接不同类型单元的一种接触算法。

      多点约束 MPC 允许在计算模型不同的自由度之间强加约束。简单来说,MPC 定义的是一种结点自由度的耦合关系,即以一个结点的某几个自由度为标准值,然后令其他指定的节点的某几个自由度与这个标准值建立某种关系。多点约束常用于表征一些特定的物理现象,比如刚性连接、铰接、滑动等。多点约束也可用于不相容单元间的载荷传递,是一项重要的有限元建模技术。


    在这里插入图片描述

    Abaqus中的MPC

      MPC 对于处理接触连接时有几点注意事项:

      (1). 接触面节点上不能施加 MPC 以外的位移边界条件或者是其他约束耦合方程。因为接触点的一些自由度已在 MPC 约束删除,单独施加会产生约束过多现象。

      (2). 约束面时不宜过多,否则会引起对内存需求峰值过高,内存较少时应以考虑。



    7.1.1 面-面绑定

    *GET,rlmax,RCON,0,NUM,MAX   ! 获取模型空间当前最大实常数号
    *GET,etmax,ETYP,,NUM,MAX    ! 获取模型空间当前最大单元类型号
    
    R,rlmax+1                   ! 定义新实常数
    
    ET,etmax+1,TARGE170         ! 定义目标面单元 - 连续面
    
    ET,etmax+2,CONTA174         ! 定义接触面单元 - 离散面
    KEYOPT,etmax+2,2,2          ! Contact algorithm: Multipoint constraint (MPC).
    KEYOPT,etmax+2,4,1          ! Location of contact detection point: On nodal point - normal from contact surface
    KEYOPT,etmax+2,5,4          ! CNOF/ICONT Automated adjustment: Auto ICONT.
    KEYOPT,etmax+2,9,1          ! Effect of initial penetration or gap: 
                                ! Exclude both initial geometrical penetration or gap and offset.
    KEYOPT,etmax+2,12,5         ! Behavior of contact surface: Bonded (always).
    

    • 示例

    
    

    7.1.2 点-面绑定


      点-面绑定主要用于加载等。

    *GET,rlmax,RCON,0,NUM,MAX   ! 获取模型空间当前最大实常数号
    *GET,etmax,ETYP,,NUM,MAX    ! 获取模型空间当前最大单元类型号
    
    R,rlmax+1                   ! 定义新实常数
    
    ET,etmax+1,TARGE170         ! 定义目标面单元 - 连续面   
    KEYOPT,etmax+1,2,1          ! Boundary conditions for rigid target nodes: Specified by user.
    
    ET,etmax+2,CONTA174         ! 定义接触面单元 - 离散面
    KEYOPT,etmax+2,2,2          ! Contact algorithm: Multipoint constraint (MPC).
    KEYOPT,etmax+2,4,1          ! Location of contact detection point: On nodal point - normal from contact surface
    KEYOPT,etmax+2,12,5         ! Behavior of contact surface: Bonded (always).
    


    • 示例:创建螺栓杆端部结点与垫片外部表面间的MPC绑定接触。

    1. 创建螺栓杆与上法兰侧垫片的绑定
    *GET,etmax,ETYP, ,NUM,MAX             ! 获取模型空间当前最大单元类型号
    *GET,rlmax,RCON, ,NUM,MAX             ! 获取模型空间当前最大实常数号
     
    ET,etmax+1,TARGE170                   ! 定义目标面单元 - 连续面
    KEYOPT,etmax+1,2,1                    ! 用户指定 rigid target nodes
    
    ET,etmax+2,CONTA174                   ! 定义接触面单元 - 离散面
    KEYOPT,etmax+2,2,2                    ! 接触算法:MPC。
    KEYOPT,etmax+2,4,1                    ! 接触探测点位置:On nodal point - normal from contact surface 。
    KEYOPT,etmax+2,12,5                   ! 接触面行为:始终绑定。
    
    num = 55                              ! 螺栓总数
    radius = 1000                         ! 法兰螺栓分度圆半径
    tf = 40 $ tw = 5                      ! 分别为法兰厚度及垫片厚度
    startPntZ = -(tf+tw)                  ! 在局部坐标系15下,梁轴线起点z坐标值。
    midPntZ = 0                           ! 螺栓预紧力施加位置处
    endPntZ= tf+tw                        ! 在局部坐标系15下,梁轴线终点z坐标值。
    d0 = 40                               ! 螺栓孔直径/垫片内径
    d1 = 70                               ! 垫片外径
    
    CSYS,17                               ! 激活局部坐标系17
    
    
    *DO,i,1,4                             ! DO循环,分别执行 i=1,2,3,4 共执行4次。
    
    CLOCAL,201,1,radius,360/num*(i-1),0   ! 螺栓杆处的局部柱坐标系201
    
    R,rlmax+i                             ! 定义新的实常数
    REAL,rlmax+i                          ! 激活实常数
    
    TYPE,etmax+1                          ! 激活目标单元类型号
    TSHAP,PILO                            ! 目标单元几何形状为导向结点
    
    CMSEL,S,BoltElems                     ! 选择组件BoltElems(全部螺栓杆单元)
    ALLSEL,BELOW,ELEM                     ! 选择单元以下附属即构成单元的结点
    E,NODE(0,0,endPntZ)                   ! 在结点(0,0,endPntZ)处创建目标单元
    ALLSEL,ALL                            ! 全选,清除上述选择集。
    
    TYPE,etmax+2                          ! 激活接触单元类型号
    CMSEL,S,WasherElems                   ! 选择组件WasherElems(全部垫片单元)
    ALLSEL,BELOW,ELEM                     ! 选择单元以下附属即构成单元的结点
    NSEL,R,EXT                            ! 选择外表面结点
    
    ! 按坐标位置选择结点,最终选出垫片外表面结点。
    
    NSEL,R,LOC,X,0,d1/2+0.5             
    NSEL,R,LOC,Z,endPntZ-0.5,endPntZ+0.5
     
    ESURF, ,TOP                           ! 在存在已选单元的自由面上生成重叠单元,即创建接触单元。
    
    ALLSEL,ALL
    CSYS,17
    
    *ENDDO
    
    命令流 No.20

      由 命令流 No.20 创建的螺栓杆端部与上法兰侧垫片间的接触如下图所示:


    在这里插入图片描述


    1. 创建螺栓杆与上法兰侧垫片的绑定
    *GET,etmax,ETYP, ,NUM,MAX             ! 获取模型空间当前最大单元类型号
    *GET,rlmax,RCON, ,NUM,MAX             ! 获取模型空间当前最大实常数号
     
    ET,etmax+1,TARGE170                   ! 定义目标面单元 - 连续面
    KEYOPT,etmax+1,2,1                    ! 用户指定 rigid target nodes
    
    
    ET,etmax+2,CONTA174                   ! 定义接触面单元 - 离散面
    KEYOPT,etmax+2,2,2                    ! 接触算法:MPC。
    KEYOPT,etmax+2,4,1                    ! 接触探测点位置:On nodal point - normal from contact surface 。
    KEYOPT,etmax+2,12,5                   ! 接触面行为:始终绑定。
    
    
    
    num = 55                              ! 螺栓总数
    radius = 1000                         ! 法兰螺栓分度圆半径
    tf = 40 $ tw = 5                      ! 分别为法兰厚度及垫片厚度
    startPntZ = -(tf+tw)                  ! 在局部坐标系15下,梁轴线起点z坐标值。
    midPntZ = 0                           ! 螺栓预紧力施加位置处
    endPntZ= tf+tw                        ! 在局部坐标系15下,梁轴线终点z坐标值。
    d0 = 40                               ! 螺栓孔直径/垫片内径
    d1 = 70                               ! 垫片外径
    
    CSYS,17                               ! 激活局部坐标系17
    
    
    *DO,i,1,4                             ! DO循环,分别执行 i=1,2,3,4 共执行4次。
    
    CLOCAL,201,1,radius,360/num*(i-1),0   ! 螺栓杆处的局部柱坐标系201
    
    R,rlmax+i                             ! 定义新的实常数
    REAL,rlmax+i                          ! 激活实常数
    
    TYPE,etmax+1                          ! 激活目标单元类型号
    TSHAP,PILO                            ! 目标单元几何形状为导向结点
    
    CMSEL,S,BoltElems                     ! 选择组件BoltElems(全部螺栓杆单元)
    ALLSEL,BELOW,ELEM                     ! 选择单元以下附属即构成单元的结点
    E,NODE(0,0,startPntZ)                 ! 在结点(0,0,startPntZ)处创建目标单元
    ALLSEL,ALL                            ! 全选,清除上述选择集。
    
    
    
    TYPE,etmax+2                          ! 激活接触单元类型号
    CMSEL,S,WasherElems                   ! 选择组件WasherElems(全部垫片单元)
    ALLSEL,BELOW,ELEM                     ! 选择单元以下附属即构成单元的结点
    NSEL,R,EXT                            ! 选择外表面结点
    
    ! 按坐标位置选择结点,最终选出垫片外表面结点。
    
    NSEL,R,LOC,X,0,d1/2+0.5             
    NSEL,R,LOC,Z,startPntZ-0.5,startPntZ+0.5
     
    
    ESURF, ,TOP                           ! 在存在已选单元的自由面上生成重叠单元,即创建接触单元。
    
    
    
    ALLSEL,ALL
    CSYS,17
    
    *ENDDO
    
    命令流 No.21

      由 命令流 No.21 创建的螺栓杆端部与下法兰侧垫片间的接触如下图所示:


    在这里插入图片描述



    1. 定义加载点

      实体单元的结点仅有平动自由度,无转动自由度,某一截面上弯矩的施加,需要将该面上的全部结点耦合到一个点上,相当于 Abaqus 中的参考点 Reference Point,即为目标面的形状设置为一结点(导向结点)。


      当导向结点为加载点时,导向结点的位置不要随便给定,会影响力矩数值,因此,应将导向结点严格指定为施加的加载位置处。


    *GET,rlmax,RCON,0,NUM,MAX   ! 获取模型空间当前最大实常数号
    *GET,etmax,ETYP,,NUM,MAX    ! 获取模型空间当前最大单元类型号
    *GET,ndmax,NODE,,NUM,MAX    ! 获取模型空间当前最大结点编号
    
    R,rlmax+1                   ! 定义新实常数
    
    ET,etmax+1,TARGE170         ! 定义目标面单元 - 连续面   
    KEYOPT,etmax+1,2,1          ! Boundary conditions for rigid target nodes: Specified by user.
    
    ET,etmax+2,CONTA174         ! 定义接触面单元 - 离散面
    KEYOPT,etmax+2,2,2          ! Contact algorithm: Multipoint constraint (MPC).
    KEYOPT,etmax+2,4,1          ! Location of contact detection point: On nodal point - normal from contact surface
    KEYOPT,etmax+2,12,5         ! Behavior of contact surface: Bonded (always).
    
    CSYS,17                               ! 激活局部坐标系17
    num = 55                              ! 螺栓总数
    tf = 40                               ! 法兰厚度
    
    N,ndmax+1,1000,-360/num,0.5*tf        ! 新建结点,结点编号为ndmax+1。
    NSEL,,NODE,,NODE(1000,-360/num,0.5*tf)
    CM,loadNode,Node                      ! 为加载点创建一组件
    
    REAL,rlmax+1                          ! 激活实常数
    TYPE,etmax+1                          ! 激活目标单元类型号
    TSHAP,PILO                            
    E,ndmax+1                             ! 创建目标单元
    ALLSEL,ALL                            ! 退出选择集,显示全部。
    
    
    REAL,rlmax+1                          ! 激活实常数
    TYPE,etmax+2                          ! 激活目标单元类型号
    CMSEL,S,TopFlangeElems                ! 选择组件TopFlangeElems(上法兰全部单元)
    ALLSEL,BELOW,ELEM                     ! 选择单元以下附属即构成单元的结点
    NSEL,R,EXT                            ! 选择外表面结点
    NSEL,R,LOC,Y,-(360/num/2+0.5),-(360/num/2-0.2)      ! 选择位于加载面上的全部结点
    ESURF                                 ! 在存在已选单元的自由面上生成重叠单元,即创建接触单元。
    ALLSEL,ALL                            ! 全选,清除上述选择集。(select all entities)
    
    EPLOT   
    
    !NUMCMP,ALL                           ! 压缩所定义项的编号(存在预紧单元时别瞎压缩全部)
    
    !/DELETE,'PartFlange','cdb'           ! 删除部件文件PartFlange.cdb
    !/DELETE,'PartWasher','cdb'           ! 删除部件文件PartWasher.cdb
    !/DELETE,'PartBolt','cdb'             ! 删除部件文件PartBolt.cdb
    
    CDWRITE,DB,'AllAsmbs','cdb',,'',''    ! 当前模型另存为 AllAsmbs.cdb 文件。
                                          ! AllAsmbs.cdb为装配及接触创建完成后的有限元模型文件。
    
    命令流 No.24


      下接 命令流 No.25 ,命令流 No.25 见博客: ANSYS 有限元分析 加载与求解 >> 五、施加荷载 >> 5.2 荷载施加 。



      由 命令流 No.24 创建的加载点与加载面间的约束如下图所示:


    在这里插入图片描述



    7.2 标准接触


    7.2.1 接触面贴合紧密


      接触面贴合较紧密,如法兰面间的接触。

    *GET,rlmax,RCON,0,NUM,MAX   ! 获取模型空间当前最大实常数号
    *GET,etmax,ETYP,,NUM,MAX    ! 获取模型空间当前最大单元类型号
    *GET,mtmax,MAT, ,NUM,MAX    ! 获取模型空间当前最大材料编号
    
    R,rlmax+1                   ! 定义新实常数
    
    ET,etmax+1,170              ! 定义目标面单元 - 连续面
    
    ET,etmax+2,174              ! 定义接触面单元 - 离散面
    KEYOPT,etmax+2,2,0          ! Contact algorithm: Augmented Lagrangian (default)
    KEYOPT,etmax+2,4,0          ! Location of contact detection point: On Gauss point (for general cases).
    KEYOPT,etmax+2,5,4          ! CNOF/ICONT Automated adjustment: Auto ICONT.
    
    KEYOPT,etmax+2,9,2          ! Effect of initial penetration or gap: 
                                ! Include both initial geometrical penetration or gap and offset, 
                                ! but with ramped effects.
    
    KEYOPT,etmax+2,10,2         ! Contact stiffness update: 
                                ! Each iteration based on the current mean stress of underlying elements. 
                                ! The actual elastic slip never exceeds the maximum allowable limit (SLTO) 
                                ! during the entire solution.
    
    KEYOPT,etmax+2,12,0         ! Behavior of contact surface: Standard.                            
    MP,MU,mtmax+1,0.12          ! 定义摩擦系数
    
    
    ! KEYOPT,etmax+2,9,1        ! Effect of initial penetration or gap: ???????????????????????
    ! 不收敛时启用               ! Include both initial geometrical penetration or gap and offset
    

    7.2.2 接触面存在较大间隙


      接触面间存在一定距离,如锁定销与锁定孔间的接触。

    *GET,rlmax,RCON,0,NUM,MAX   ! 获取模型空间当前最大实常数号
    *GET,etmax,ETYP,,NUM,MAX    ! 获取模型空间当前最大单元类型号
    *GET,mtmax,MAT, ,NUM,MAX    ! 获取模型空间当前最大材料编号
    
    R,rlmax+1,,,,,,500,         ! 定义新实常数,Pinball = 500。
    
    ET,etmax+1,170              ! 定义目标面单元 - 连续面
    
    ET,etmax+2,174              ! 定义接触面单元 - 离散面
    KEYOPT,etmax+2,4,0          ! Location of contact detection point: On Gauss point (for general cases).
    KEYOPT,etmax+2,5,3          ! CNOF/ICONT Automated adjustment: Close gap/reduce penetration with auto CNOF.
    
    KEYOPT,etmax+2,9,1          ! Effect of initial penetration or gap:
                                ! Exclude both initial geometrical penetration or gap and offset
    
    KEYOPT,etmax+2,10,2         ! Contact stiffness update: 
                                ! Each iteration based on the current mean stress of underlying elements. 
                                ! The actual elastic slip never exceeds the maximum allowable limit (SLTO) 
                                ! during the entire solution.
                                
    KEYOPT,etmax+2,12,0         ! Behavior of contact surface: Standard.    
    MP,MU,mtmax+1,0.12          ! 定义摩擦系数
    

    • 示例 1:创建上下法兰与垫片间的标准接触。
    *GET,etmax,ETYP, ,NUM,MAX             ! 获取模型空间当前最大单元类型号
    *GET,rlmax,RCON, ,NUM,MAX             ! 获取模型空间当前最大实常数号
     
    R,rlmax+1                             ! 定义新的实常数
    
    ET,etmax+1,170                        ! 定义目标面单元 - 连续面
    
    ET,etmax+2,174                        ! 定义接触面单元 - 离散面
    KEYOPT,etmax+2,2,0                    ! 接触算法:增广拉格朗日乘子法。
    KEYOPT,etmax+2,4,0                    ! 接触探测点位置:高斯积分点。
    KEYOPT,etmax+2,5,4                    ! CNOF/ICONT Automated adjustment: Auto ICONT.
    KEYOPT,etmax+2,9,2                    ! 初始穿透/间隙效应:包含初始几何穿透或间隙和偏置,但带有坡道效应。
    KEYOPT,etmax+2,10,2                   ! 接触刚度更新:在每个迭代步基于下层单元目前的平均应力进行更新,
                                          ! 但在整个求解过程中实际弹性滑移始终不超过最大允许极限。
    
    MP,MU,etmax+1,0.3                     ! 定义摩擦系数
    
    CSYS,17                               ! 激活局部坐标系17
    REAL,rlmax+1                          ! 激活实常数
    MAT,etmax+1                           ! 激活材料编号
    tf = 40 $ tw = 5                      ! 分别为法兰厚度及垫片厚度
    
    TYPE,etmax+1                          ! 激活目标单元类型号
    
    CMSEL,S,WasherElems                   ! 选择组件WasherElems(全部螺栓杆单元)
    ALLSEL,BELOW,ELEM                     ! 选择单元以下附属即构成单元的全部结点
    NSEL,R,EXT                            ! 选择表面全部结点
    NSEL,R,LOC,Z,-tf-0.5,tf+0.5           ! 选择位于接触面上的全部结点
    ESLN,S,0                              ! 选择结点附属单元,0表示单元的任何一个结点被选中,则该单元被选中。
    
    ESURF                                 ! 在存在已选单元的自由面上生成重叠单元,即创建接触单元。
    ALLSEL,ALL                            ! 全选,清除上述选择集。
    
    TYPE,etmax+2                          ! 激活接触单元类型号
    CMSEL,S,TopFlangeElems                ! 选择组件TopFlangeElems(上法兰全部单元)
    CMSEL,A,BotFlangeElems                ! 补选组件BotFlangeElems(上法兰全部单元)
    
    ALLSEL,BELOW,ELEM                     ! 选择单元以下附属即构成单元的结点
    NSEL,R,EXT                            ! 选择外表面结点
    NSEL,U,LOC,Z,-tf+0.5,tf-0.5           ! 选择位于接触面上的全部结点
    ESURF                                 ! 在存在已选单元的自由面上生成重叠单元,即创建接触单元。
    ALLSEL,ALL                            ! 全选,清除上述选择集。
    
    命令流 No.22

      由 命令流 No.22 创建的垫片与上下法兰面间的接触如下图所示:


    在这里插入图片描述



    • 示例 2:创建上下法兰间的标准接触。
    *GET,etmax,ETYP, ,NUM,MAX             ! 获取模型空间当前最大单元类型号
    *GET,rlmax,RCON, ,NUM,MAX             ! 获取模型空间当前最大实常数号
     
    R,rlmax+1                             ! 定义新的实常数
    
    ET,etmax+1,170                        ! 定义目标面单元 - 连续面
    
    
    ET,etmax+2,174                        ! 定义接触面单元 - 离散面
    KEYOPT,etmax+2,2,0                    ! 接触算法:增广拉格朗日乘子法。
    KEYOPT,etmax+2,4,0                    ! 接触探测点位置:高斯积分点。
    KEYOPT,etmax+2,5,4                    ! CNOF/ICONT Automated adjustment: Auto ICONT.
    KEYOPT,etmax+2,9,2                    ! 初始穿透/间隙效应:包含初始几何穿透或间隙和偏置,但带有坡道效应。
    KEYOPT,etmax+2,10,2                   ! 接触刚度更新:在每个迭代步基于下层单元目前的平均应力进行更新,
                                          ! 但在整个求解过程中实际弹性滑移始终不超过最大允许极限。
    
    
    MP,MU,etmax+1,0.3                     ! 定义摩擦系数
    
    
    CSYS,17                               ! 激活局部坐标系17
    REAL,rlmax+1                          ! 激活实常数
    MAT,etmax+1                           ! 激活材料编号
    tf = 40 $ tw = 5                      ! 分别为法兰厚度及垫片厚度
    
    TYPE,etmax+1                          ! 激活目标单元类型号
    CMSEL,S,TopFlangeElems                ! 选择组件TopFlangeElems(上法兰全部单元)
    ALLSEL,BELOW,ELEM                     ! 选择单元以下附属即构成单元的结点
    NSEL,R,EXT                            ! 选择外表面结点
    NSEL,R,LOC,Z,-0.5,0.5                 ! 选择位于接触面上的全部结点
    ESURF                                 ! 在存在已选单元的自由面上生成重叠单元,即创建接触单元。
    ALLSEL,ALL                            ! 全选,清除上述选择集。
    
    
    TYPE,etmax+2                          ! 激活接触单元类型号
    CMSEL,S,BotFlangeElems                ! 选择组件BotFlangeElems(下法兰全部单元)
    ALLSEL,BELOW,ELEM                     ! 选择单元以下附属即构成单元的结点
    NSEL,R,EXT                            ! 选择外表面结点
    NSEL,R,LOC,Z,-0.5,0.5                 ! 选择位于接触面上的全部结点
    ESURF                                 ! 在存在已选单元的自由面上生成重叠单元,即创建接触单元。
    ALLSEL,ALL                            ! 全选,清除上述选择集。
    
    命令流 No.23

      由 命令流 No.23 创建的上下法兰面间的标准接触如下图所示:


    在这里插入图片描述

    八、约束方程



    • CE

    使用功能: Defines a constraint equation relating degrees of freedom.

    使用格式: CE,NEQNCONSTNODE1Lab1C1NODE2Lab2C2NODE3Lab3C3

    参数说明NEQN: Set equation reference number 其值可以为 n、HIGH、NEXT。

          NEXT:The highest defined constraint equation number plus one.

          This option automatically numbers coupled sets so that existing sets are not modified.


          CONST: Constant term of equation.

          NODE1: Node for first term of equation. If -NODE1, this term is deleted from the equation.


          Lab1: Degree of freedom label for first term of equation. Structural labels: UX, UY, or UZ (displacements);

          ROTX,ROTY, or ROTZ (rotations, in radians).


          C1: Coefficient for first node term of equation. If zero, this term is ignored.

          NODE2Lab2C2: Node, label, and coefficient for second term.

          NODE3Lab3C3: Node, label, and coefficient for third term.



    • GUI 操作

    在这里插入图片描述


      The following example illustrates a typical application of a constraint equation, in which moment transfer capability is created for a connection between a beam element and plane elements:


    在这里插入图片描述


      In this example, node 2 acts as a hinge if no constraint equations are used. To transfer moment between the beam and the plane-stress elements, you can use the following equation:

      ROTZ2 = (UY3 - UY1)/10

      This equation would be rewritten in the required format and entered into the program as:

      0 = UY3 - UY1 - 10*ROTZ2

    CE,1,0,3,UY,1,1,UY,-1,2,ROTZ,-10

      The first unique degree of freedom in the equation is eliminated in terms of all other degrees of freedom in the equation. A unique degree of freedom is one which is not specified in any other constraint equation, coupled node set, specified displacement set, or master degree of freedom set. You should make the first term of the equation be the degree of freedom to be eliminated. Although you may, in theory, specify the same degree of freedom in more than one equation, you must be careful to avoid over-specification. You must also take care to ensure that each node and degree of freedom exists in the model. (Remember that for a degree of freedom to be present at a node, that node must be connected to an element which supplies the necessary degree of freedom.)



    • 示例:约束两结点 uz 方向位移,使之保持一致。
    ALLSEL,ALL                                ! 全选即清空选择集
    CMSEL,S,MNode
    *GET,mndmax,NODE, ,NUM,MAX
    CMSEL,S,SNode
    *GET,sndmax,NODE, ,NUM,MAX
    allsel,all
    CE,NEXT,0,mndmax,uz,1,sndmax,uz,-1,,,,
    

      该命令流构建的位移约束方程为:

      UZ(MNode) = UZ(SNode) → 0 = 1.0 * UZ(MNode) - 1.0 * UZ(SNode)

      另外,这两个结点可以分别定义为两个目标面的导向结点,那么,就可以使得两个面间的 Uz 方向的位移保持一致。



    九、尾声


      以上,便是 ANSYS 接触问题 部分的简单介绍。

      仅以此文为我 ANSYS 的相关学习做一个备忘,同时也为有需要的人提供多一点参考。

      胸藏文墨怀若谷,腹有诗书气自华,希望各位都能在知识的 pāo 子里快乐徜徉。

      因个人水平有限,文中难免有所疏漏,还请各位大神不吝批评指正。

      最后,祝各位攻城狮们,珍爱生命,保护发际线!

      欢迎大家点赞、评论及转载,转载请注明出处!

      为我打call,不如为我打款!


    在这里插入图片描述




    十、参考文献



    [01]. 有限元接触分析及其在飞机投放挂架中的应用. 覃小雄.

    [02]. ABAQUS 工程实例 详解. 江丙云 孔祥宏 罗元元 编著.

    [03]. ANSYS 接触分析. 安世亚太.

    [04]. ANSYS-高级接触分析.

    [05]. ANSYS接触分析总结. 晓喻.

    [06]. ANSYS 15.0 有限元分析完全自学手册. 郝勇 钟礼东 等编著.

    [07]. ANSYS 参数化编程与命令手册. 龚曙光 谢桂兰 黄云清 编著.

    [08]. ANSYS Mechanical APDL Command Reference. Release 18.2.

    [09]. ANSYS Mechanical APDL Element Reference. Release 18.2.

    [10]. Ansys中的接触协调条件和多点约束MPC. 坐倚北风.





    展开全文
  • 本节书摘来自异步社区《ANSYS Workbench有限元分析实例详解(静力学)》一书中的第1章,第1.1节,作者: 周炬 , 苏金英 更多章节内容可以访问云栖社区“异步社区”公众号查看。 第1章 CAE分析步骤 在现代工程领域,...
  • 《CATIA V5R17有限元分析实例教程》着重讲解例题建模和分析的步骤,对于机械设计相关的工作台,只简单讲述使用到的命令,而把重点放在有限元分析的网格划分、边界条件定义、分析计算、结果显示。通过《CATIA V5R17...
  • ANSYS CFX有限元分析

    2013-08-25 16:15:10
    ansys有限元分析,计算流体力学分析教程,教程里面有详细的炒作步骤,希望大家看看!
  • 曾攀有限元分析整理

    2021-01-07 10:48:26
    一.基础 1.变形体力学中的三大类变量和三大类方程 2.试函数方法 设定满足边界条件的试函数,然后把该试函数带入控制方程得到残差函数,...1.有限元方法步骤详解 有限元方法的核心:把复杂几何区域划分成多个小区域单元
  • 使用 Abaqus 进行有限元分析

    万次阅读 2019-03-07 20:18:34
      有限元分析(FEA - Finite Element Analysis)是指利用数学近似的方法对真实物理系统(几何和载荷工况)进行模拟。...  有限元分析的基本步骤通常分为三步:   (1)前处理:根据实际问...
  • Ansoft工程磁场有限元分析,介绍分析方法及Ansoft的应用,典型案例及操作步骤
  • Abaqus齿轮有限元分析

    2021-05-19 13:54:50
    首先先对齿轮模型划分网格,该分析所用的前处理软件为Hypermesh,如果不会划分可以参考这篇文章Hypermesh前处理+Abaqus有限元分析 划分之后的模型选择inp格式导入Abaqus,如下图所示: 另一个齿轮(从动轮)也是...
  • 结物急圆款合应周 第三章 MATLAB限元分析与应用 3-1弹簧元 3-2线性杆元 3-3二次杆元 3-4平面桁架元 3-5空间桁架元 3-6梁元 2019/9/15 结物圆款合应周 3-1弹簧元 1有限元方法的步骤 离散化域 形成单刚矩阵 集成整体...
  • SolidWorks有限元分析流程

    千次阅读 2020-08-25 19:10:53
    平时大家多采用专业有限元仿真软件进行仿真分析,如ANSYS;不过SolidWorks软件因为制图简单,同时存在专用的有限元仿真模块Simulation,对于初学者往往更加适用,下面简单介绍下SolidWorks Simulation仿真流程。 1. ...
  • 这些文件伴随着“使用 MATLAB 进行 3D 有限元分析”网络研讨会。 在本次网络研讨会中,您将学习如何在 MATLAB 中执行 3-D 有限元分析 (FEA)。 这可以帮助您为结构力学、静电学、静磁学、传导、传热和扩散等应用程序...
  • 有限元分析基础操作(ANSYS)

    千次阅读 2020-06-07 18:21:09
    ANSYS有限元分析基础操作 有限元分析基础操作(ANSYS) 写下这篇文章的目的其实是在前段时间做车辆有限元作业时,使用的有限元分析软件ANSYS难搜索到教程,幸好有老师的录屏才得以顺利完成实验。因此对作业过程做一...
  • 柴油机连杆的有限元分析方法和步骤,包括分析的原理和计算方法等
  • 凸轮设计步骤多、涉及参数多,给设计工作者带来很多的不便,降低了设计效率。通过用SolidWorks实现凸轮机构的参数化设计,...利用有限元理论通过AYSYS软件对凸轮进行分析得到凸轮变形、固有频率等,为凸轮设计提供依据。
  • abaqus带法兰油缸的有限元分析,详细的步骤解析,很好的对法兰油缸进行建模。用实例使初学者更好的运用abaqus软件。
  • 有限元分析(笔记)

    千次阅读 2018-06-03 22:06:37
    第一节 有限元分析 涉及结构力学位移法知识、离散、插值、能量原理、矩阵运算等知识。 具体步骤: (1)结构的离散化。用点、线、面把结构剖分为有限个离散单元体,并在离散单元体上指定点设置节点。研究单元的...
  • 利用有限元分析软件建立了格莱圈有限元分析模型,通过建模、划分网格、加载、求解以及后处理等步骤,对其在不同压缩率、不同气压时密封面接触压力分布规律进行探讨分析,确定格莱圈易失效位置,分析压缩率和气压对格莱圈...
  • 主要介绍了对于同轴度要求较高的细长轴,其单件或者小批量生产的加工方法及有限元分析。利用SolidWorks进行实体建模,分析其在加工过程中引起变形的因素,并对其进行工艺分析、详细加工步骤做出说明,在实际加工过程中,...
  • 以CR型液压圆锥破碎机为研究对象,使用三维软件Solid Works建立了三维模型,并导入到Ansys Workbench分析软件获得有限元分析模型,对其模型进行添加模型材料、网格划分及其载荷加载与约束等步骤。对主轴进行结构静力学...
  • 4.2 有限元分析的基本步骤及表达式 4.3 杆单元及其坐标变换 4.4 梁单元及其坐标变换 4.5 典型例题及详解 4.6 本章要点及参考内容 4.7 习题 第5章 连续体的有限元分析原理 5.1 连续体的离散过程及特征 5.2 平面问题的...
  • 车架作为整车的一个重要部件,对其进行结构分析与研究具有重要意义,而悬架机构以及连接部件的模拟是建立有限元模型的关键步骤。介绍了以组合单元建立货车车架有限元模型的方法,运用有限元法计算分析车架在典型工况...
  • SolidMAT是面向对象的软件系统,已针对中小型结构应用的有限元和寿命分析进行设计和开发。 用户可以配置,启动和监视分析过程中涉及的不同连续步骤。 软件包的主要功能可以突出如下: 预处理(离散化和网格生成,...
  • 《ANSYS 14有限元分析自学手册》以ANSYS的最新版本ANSYS 14为蓝本,对ANSYS分析的基本思路、操作步骤、应用技巧进行了详细介绍,并结合典型工程应用实例详细讲述了ANSYS具体工程应用方法。  书中尽量避开了繁琐的...
  • 张秀辉、胡仁喜、康士廷 等编著的《ANSYS14.0有限元分析从入门到精通(附光盘)》以ANSYS的最新版本ANSYS14.0为依托,对ANSYS分析的基本思路、操作步骤、应用技巧进行了详细介绍,并结合典型工程应用实例详细讲述了...

空空如也

空空如也

1 2 3 4 5 ... 12
收藏数 225
精华内容 90
关键字:

有限元分析步骤