首页/文章/ 详情

快速学会一项分析-对橡胶圈使用自接触进行挤压和滑动分析-OS-T:1550

1月前浏览1001
超弹性材料定义:首先,需要定义橡胶材料的超弹性特性。在OptiStruct中,可以通过MATHE卡片选择适当的超弹性模型,如,ABOYCE、Mooney-Rivlin或Yeoh模型,并输入相应的材料系数  。
本教学案例在OptiStruct中演示了使用超弹性材料和自接触进行非线性大位移隐式分析。
在开始之前,请将本教程中使用的文件复 制到您的工作目录。http://majorv.help.altair.com/minorv/simulation/tutorials/hwsolvers/optistruct/OS-T-1550/Rubber_ring_input.zip
图1.FE模型
包括以下步骤:
·将模型导入HyperMesh
·设置超弹性材料和自接触。
·设置非线性分析
·在HyperView中查看结果
一、启动HyperMesh并设置OptiStruct用户配置文件
1.启动HyperMesh。
此时将打开User Profile对话框。
2.选择OptiStruct,然后单击OK。
这将加载用户配置文件。它包括相应的模板、宏菜单和导入阅读器,将HyperMesh的功能缩减为与生成OptiStruct模型相关的功能。
二、打开模型
1.单击File>Open>Model
2.选择保存到工作目录的Rubber_ring_input.hm文件。
3.单击Open
 Rubber_ring_input.hm数据库被加载到当前的HyperMesh会话中,替换任何现有数据。
三、设置模型
1           
2           
3           
3.1创建Material    
1.在Model Browser中,右键单击并从上下文菜单中选择Create>Material。
2.对于Name ,输入hyper_elastic。
一种新的材料hyper_elastic已经创建。
3.对于Card Image,选择MATHE。
4.对于MODEL,选择ABOYCE
5.在相应字段旁边输入材料值。
a)对于NU,输入0.495。
b)对于RHO,输入1.11e-9。
c)对于TEXP,输入0.000165。
图2.定义超弹性材料
6.单击TAB1并分配Tension-Compression uniaxial。
7.单击TAB2并指定等双轴张力biaxial
8.单击TAB4并分配Pure Shear planar_shear。
3.2创建属性
1.在Model Browser中,右键单击并从上下文菜单中选择Create>Property。    
默认PSHELL属性显示在Entity Editor中。
2.对于Name ,输入hyper_elastic。
3.对于Card Image,选择PLSOLID
4.对于Material,单击Unspecified>Material
5.Select Material对话框中,选择hyper_elastic,然后单击OK
图3.为-roperty选择Material hyper_elastic
6.在Model Browser中,点击componentWHEEL。
component字段显示在Entity Editor中。
7.对于Property ,单击Unspecified>Property
8.Select Property对话框中,选择hyper_elastic,然后单击OK
componentWHEEL已使用同名属性进行更新,并且当前是当前component(请参阅WHEEL右下角的框)。此component引用了Material hyper_elastic
图4.为component选择属性hyper_elastic
3.3创建触点参数的属性
在此步骤中,将定义Surface to Surface和Self-Contact Surface的属性。
1.在Model Browser中,右键单击并从上下文菜单中选择Create>Property。
2.对于Name ,输入Contact。
3.对于Card Image,选择PCONT
4.激活GPAD_OPT,对于GPAD,从下拉菜单中选择NONE
5.对于STIFF,请选择SOFT    
6.对于MU1,输入0.3。
图5.Contact的属性值
7.在Model Browser中,右键单击并从上下文菜单中选择Create>Property。
8.对于Name ,输入self_contact。
9.对于Card Image,选择PCONT
10.激活GPAD_OPT,对于GPAD,从下拉菜单中选择None
11.对于STIFF,请选择AUTO
12.对于MU1,输入0.3。
3.4创建Set Segments
将定义Set Segments,稍后将用于定义Contact Group。
1.在Model Browser中,右键单击并选择Create>Set Segment
2.对于Name ,输入Top。
3.右键单击componentTop并选择Isolate Only
4.单击Entity IDs以选择与Top对应的Element
注: 确保将选择面板从面切换到Element。
5.单击elems
此时将打开选择面板。    
6.从下拉菜单中选择add shell faces,
7.从第二个下拉列表中,选择elems,如下所示。
8.单击elems>displayed
这将选择与component Top对应的所有Element
图6.Element选择面板
9.这将创建一个Top set Segment,其中包含与Top对应的Element
图7.创建Top set Segment
10.同样,为component Base创建一个Set Segment
Note:确保在为TopBase创建set Segment时选择FACE_FORMAT    
11.要为wheel的内表面和外表面创建接触Set Segment,请右键单击零部件Wheel,然后选择Isolate Only
12.在Model Browser中,右键单击并选择Create>Set Segments
13.对于Name ,输入rubber_inner。
14.将选择面板设置为add solid faces
图8.创建rubber_inner Contact Set Segment
15.选择wheel的内表面以选择对Rubber_inner Set Segment的Element。
图9.选择rubber_inner接触Set Segment
16.同样,通过选择零部件Wheel的外表面,创建接触Set Segment Rubber_outer
3.5创建Contact Group
在这里,将定义Contact Group。
1.在Model Browser中,右键单击并从上下文菜单中选择Create>Group。
2.对于Name ,输入Top_rubber。
3.对于Card Image,选择CONTACT
4.对于Property Option ,选择Property Id
5.展开PID并选择Contact surfaces    
图10.创建Contact Group
6.对于Secondary Entity IDs,选择rubber_outer
7.对于Main Entity IDs,选择Top
8.对于MORIENT (Contact Orientation),选择NORM
9.对于DISCR,选择N2S(Node to Surface)。
10.对于TRACK,选择CONSLI
11.同样,创建一个Contact Group Bottom_rubber,其中rubber_outer作为次要实体ID,Base作为主要实体ID,其他参数与图10 相同。
12.现在,创建一个Contact Group Self_contact并选择Card Image CONTACT
13.对于Property Id,分配之前创建的self_contact属性,如图11 所示。
14.选择之前为Rubber_inner创建的Set Segment作为从面实体ID。
15.对于DISCRET,选择S2S(Surface to Surface)。    
图11.创建self_contact组
四、创建载荷和边界条件
在以下步骤中,您将在模型上应用边界条件和指定位移。
4           
4.1创建SPC Load Collector
1.在Model Browser中,右键单击并从上下文菜单中选择Create>Load Collector。
默认Load Collector显示在Entity Editor中。
2.对于Name ,输入spc_top1。
3.单击BCs>Create>Constraints以打开约束面板。
4.选择与Topcomponent对应的节点2269。
5.在1345和6方向上约束节点。
为第一个Load Step (Compression) 分配边界条件。
图12.约束节点2269
6.单击create
这会将约束应用于所选节点。    
7.约束dof2,输入-6.44。
分配了-y方向上的大小位移。
图13.将位移应用于对应于第一个Load Step的节点2269
8.在Model Browser中,右键单击并从上下文菜单中选择Create>Load Collector。
9.对于Name ,输入spc_top2。
10.在dof的3、4和5中应用约束。
11.对于dof1,输入-13.0。
在-x方向上应用幅值的位移。
12.对于dof2,输入-6.44。
在-y方向上应用大小位移,该位移对应于wheel的x和y位移。
13.对于dof6,输入-10.44。
在x-z平面中应用旋转。
图14.将位移应用于与第二个Load Step相对应的节点2269
14.在Model Browser中,右键单击并从上下文菜单中选择Create>Load Collector。
15.对于Name ,输入SPC_base_wheel。
16.右键单击component Wheel并选择Isolate Only。
17.单击BCs>Create>Constraints以打开约束面板。
18.单击nodes,然后从面板中选择displayed
图15.将约束应用于wheel
19.选择dof3,然后单击create
20.在Model Browser中,右键单击并从上下文菜单中选择Create>Load Collector。
21.对于Name ,输入SPC_base_wheel_X。    
22.如图16 所示,在x方向(dof1) 上约束节点,并在所有dof中约束节点2266。
图16.
23.在Model Browser中,右键单击并从上下文菜单中选择Create>Load Collector。
24.对于Name ,输入SPCADD1。
25.对于Card Image,选择SPCADD。
26.对于SPCADD_Num_Set,输入3。
27.定义卡片spc_top1SPC_wheel_base_XSPC_wheel_base
SPCADD卡已创建。
图17.创建SPCADD卡
28.在Model Browser中,右键单击并从上下文菜单中选择Create>Load Collector。
29.对于Name ,输入SPCADD2。
30.如上所述,定义卡片spc_top2SPC_wheel_base
4.2创建NLPARM Load Step Input
1.在Model Browser中,右键单击并选择Create>Load Step Inputs
2.对于Name ,输入NLPARM。
3.单击Color并从调色板中选择一种颜色。    
4.对于Config type ,选择Nonlinear Parameters
键入default为NLPARM
5.对于NINC,输入2000。
6.对于MAXITER,输入25。
7.对于CONV,请选择UPW。
8.对于EPSU,输入0.001。
9.对于EPSP,输入0.001。
10.对于EPSW,输入1e-11。
4.3创建NLADAPT Load Step Input
1.在Model Browser中,右键单击并选择Create>Load Step Inputs
2.对于Name ,输入NLADAPT1。
3.对于Config type ,选择Time step Parameters
4.对于Type ,默认值为NLADAPT
5.对于DTMAX,输入0.1。
6.对于DTMIN,输入1e-6。
图18.创建NLADAPT load step inputs.
7.在Model Browser中,右键单击并选择Create>Load Step Inputs    
8.对于Name ,输入NLADAPT2。
9.对于DTMAX,输入0.025。
10.对于DTMIN,输入1e-6。
4.4创建CNTSTB Load Collector
1.在Model Browser中,右键单击并从上下文菜单中选择Create>Load Collector。
默认Load Collector显示在Entity Editor中。
2.对于Name ,输入CNTSTB。
3.对于SI,输入1e-5
4.对于SCALE,输入1。
5.对于TFRAC,输入0.1。
图19.创建CNTSTB卡
4.5创建NLOUT Load Step Input
1.在Model Browser中,右键单击并选择Create>Load Step Inputs
2.对于Name ,输入NLOUT。    
3.对于Config type ,选择Output Parameters
4.对于Type ,默认值为NLOUT
5.对于NINT,输入500。
6.激活SVNONCNV
图20.创建NLOUT卡
4.6定义输出控制参数
1.在Model Browser中,右键单击并选择Create>Output Request
2.在DISPLACEMENT、ELFORCE、STRESS和CONTF下,将Option设置为Yes    
图21.
4.7激活PARAM控制卡
1.在Anaysis页面中,选择Control Cards
2.对于Control Cards,选择PARAM。
3.激活HASHASSM,输入YES。
4.激活LGDISP,输入1。
5.激活NLMON,输入DISP。
6.激活UNSYMSLV,输入YES。
图22.创建控制卡
4.8激活GLOBAL_CASE_CONTROL
a)在Analysis页面中,选择control cards
b)对于控制卡,请选择CNTNLSUB并选择YES    
图23.创建全局大小写控制
4.9创建Load Step
1.在Model Browser中,右键单击并选择Create>Load Step
默认Load Collector显示在Entity Editor中
2.对于Name ,输入RING_DOWN。
3.对于Type ,选择Nonlinear Static
4.SPC Select Loadcol对话框中,Load Collector列表中选择SPCADD1,然后单击OK
这将选择上面创建的边界条件。
5.同样,选择NLPARMNLADAPTNLOUTCNTSTB,并分配相应的load step inputs和Load Collector 。
五、提交作业
1.在Analysis页面中,单击OptiStruct面板。
图24.访问OptiStruct面板
2.单击save as
3.Save As对话框中,指定写入OptiStruct模型文件的位置并输入filename。
4.单击Save
input file字段显示在Save As对话框中指定的文件名和位置。
5.将导出选项切换设置为all
6.将run options切换设置为analysis
7.单击OptiStruct提交作业。
六、查看结果    
1.在命令窗口中收到消息Process completed successfully后,单击HyperView。
2.打开结果并绘制100% 载荷下的位移和von Mises应力云图。
3.在工具栏上,单击 。
4.在结果类型下,从第一个下拉菜单中选择Element Stress(2D & 3D)(t)
5.在Result type下,从第二个下拉菜单中选择vonMises
图25.云图面板
6.验证Contour面板中的字段是否与图25 中的字段匹配,然后单击Apply
图26.分析的位移和应力结果
             


来源:TodayCAEer
ACTOptiStructHyperMeshHyperView非线性UM材料控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-10-26
最近编辑:1月前
TodayCAEer
本科 签名征集中
获赞 22粉丝 40文章 257课程 0
点赞
收藏
作者推荐

Excel函数:从知识付费到自我提升的旅程-8

在Excel的函数宝库中,惊喜总是源源不断。经过前面七篇的深入剖析,我们对Excel函数的运用更加得心应手。现在,让我们一同开启第八篇的精彩之旅。一、DATE函数函数介绍:DATE函数用于根据年、月、日三个参数构建一个日期。应用场景:在处理日期数据时非常有用,可以根据不同的数值组合生成特定的日期。例如,根据项目开始的年份、月份和日期生成项目启动日期。示例:“=DATE(2024,9,22)”将返回“2024/9/22”这个日期。二、YEAR函数函数介绍:YEAR函数提取指定日期中的年份部分。应用场景:用于分析日期数据中的年份信息,比如统计不同年份的销售数据、计算员工的工龄等。示例:若A1单元格中有日期“2023/5/15”,“=YEAR(A1)”将返回2023。三、MONTH函数函数介绍:MONTH函数提取指定日期中的月份部分。应用场景:可以用于按月份进行数据分类和汇总,例如统计每个月的销售额、分析不同月份的业务趋势等。示例:当B2单元格中有“2024/11/3”,“=MONTH(B2)”会返回11。四、DAY函数函数介绍:DAY函数提取指定日期中的日部分。应用场景:在一些需要具体日期信息的场景中很实用,比如计算距离某个特定日期还有多少天、确定某一天是当月的第几天等。示例:假设C3单元格中是“2025/2/18”,“=DAY(C3)”将返回18。五、DATEDIF函数函数介绍:DATEDIF函数用于计算两个日期之间的差值,可以按年、月、日等不同单位进行计算。应用场景:常用于计算员工的在职时间、项目的持续时间等。例如,计算从项目开始到现在经过了多少个月。示例:“=DATEDIF(A1,B1,"m")”,其中A1和B1分别为两个日期,"m"表示计算月份差。在这第八篇文章中,我们又探索了五个与日期相关的Excel函数。这些函数为我们处理日期数据提供了强大的工具,希望能在你的工作和生活中发挥重要作用。让我们继续在Excel的函数世界中挖掘更多的宝藏。来源:TodayCAEer

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈