找回密码
 注册
Simdroid-非首页
查看: 2555|回复: 58

[接触分析] 接触与螺栓预紧命令流祥解

[复制链接]
发表于 2007-11-29 15:57:46 | 显示全部楼层 |阅读模式 来自 江苏常州
涉及接触以及螺栓预紧
finish  
/clear  
!!!!!!!!!!!!!!!!环境设置!!!!!!!!!!!!!!!!!!!!!!!!!
/filn,flange
/title,flang_bolt
!设定结构基本参数,单位N,mm,MPa.密度为tons/mm3
*SET,PN,4                  !工作压力   
!结构尺寸参数遵循图形
*SET,DN,900            
*SET,D,1115          
*SET,D1,1055           
*SET,D2,1010           
*SET,D3,1000           
*SET,D4,997            
*SET,dta,86            
*SET,H,170  
*SET,xh,42  
*SET,a,3
*SET,a1,3
*SET,dta1,24
*SET,dta2,36
*SET,R,15   
*SET,xd,33  
*SET,h1,225
*SET,h2,50  
*SET,L,2.5*((DN/2+0.5*dta1)*dta1)**0.5     !筒体长
*SET,N,360/96                !法兰分度数
*SET,nut_rad,50.85/2         !螺母半径   
*SET,nut_h,25.6              !螺母高度
*SET,bolt_h,250              !螺栓高度
*SET,forc_bolt,35000         !螺栓预紧力
/prep7                       !进入前处理器
et,1,solid45                 !实体单元
et,2,TARGE170                !3D接触目标面单元170   
et,3,CONTA174                !3D接触接触面单元174   
keyopt,3,9,0                 !包含初始化穿透   
*AFUN,DEG                    !设定角度单位为度数   
!定义法兰材料1
mp,ex,1,2.16e5               !设定弹性模量  
mp,nuxy,1,0.3                !定义泊松比  
mp,dens,1,7.85e-9            !定义密度
!定义螺栓材料2
mp,ex,2,2.11e5               !设定弹性模量  
mp,nuxy,2,0.3                !定义泊松比   
mp,dens,2,7.85e-9            !定义密度   
!定义摩擦系数为材料3
mp,mu,3,0.3
!!!!!!!!!!!!!!创建上法兰!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!创建关键点   
k,1,DN/2,a+H
k,2,DN/2+dta1,a+H   
k,3,DN/2+dta1,a+xh+dta  
k,4,DN/2+dta2,a+dta
k,5,D1/2,a+dta  
k,6,D/2,a+dta   
k,7,D/2,a   
k,8,D1/2,a  
k,9,D4/2,a  
k,10,D4/2,0
k,11,DN/2,0
k,12,DN/2,a+dta
k,13,DN/2,a+dta+xh
!通过关键点连线
*do,ii,1,12
l,ii,ii+1   
*enddo  
l,1,13  
lfillt,2,3,R                !创建倒角
lfillt,3,4,R                !创建倒角
l,13,14
l,12,17
l,17,9  
l,5,8   
!连线构面
al,1,2,16,13
al,16,14,3,15,17,12
al,17,18,9,10,11
al,4,19,8,18
al,5,6,7,19
cm,flang_up,area            !创建上法兰面积组件
!!!!!!!!!!!!!上法兰创建完毕!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!创建下法兰!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!创建关键点     
k,18,DN/2,a-a1  
k,19,D3/2,a-a1  
k,20,D3/2,a
k,21,D1/2,a
k,22,D/2,a  
k,23,D/2,a-a1-dta   
k,24,D1/2,a-a1-dta  
k,25,D3/2,a-a1-dta  
k,26,DN/2+dta2,a-a1-dta
k,27,DN/2+dta1,a-a1-dta-xh  
k,28,DN/2+dta1,a-a1-H   
k,29,DN/2,a-a1-H
k,30,DN/2,a-a1-dta-xh   
k,31,DN/2,a-a1-dta  
!通过关键点连线
*do,ii,18,30
l,ii,ii+1   
*enddo  
l,18,31
lfillt,27,28,R  
lfillt,28,29,R  
l,30,35
l,31,32
l,21,24
l,19,25
!连线构面
al,29,30,31,36  
al,35,36,32,37,34,28
al,20,39,27,37,33   
al,21,22,38,26,39   
al,23,24,25,38  
asel,u,area,,flang_up         !选择除flang_up之外的所有面   
cm,flang_down,area            !创建下法兰面积组件  
!!!!!!!!!!!!!下法兰创建完毕!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!创建椭圆封头!!!!!!!!!!!!!!!!!!!!!!!!!!!!!   
k,,0,a+H+h2                   !创建封头所处位置关键点
circle,36,1                   !创建单位长圆
KWPAVE,36                     !将工作平面移置于新设定点
CSYS,4                        !激活随工作平面的坐标系
lsscale,40,43,1,DN/2+dta1,h1+dta1,,,1  !对单位圆按照椭圆比例进行缩放(外表面)
lsscale,40,43,1,DN/2,h1,,,1   !对单位圆按照椭圆比例进行缩放(内表面)
ldele,49,51,1,1               !删除多余的线段
ldele,45,47,1,1
ldele,40,43,1,1
wpstyl,defa                   !恢复工作平面至默认状态
l,45,41                       !连接封头端、尾
l,42,46
l,1,45                        !连接封头与法兰  
l,2,41
!由线构成封头面  
al,40,42,1,43   
al,44,40,48,41  
asel,u,area,,flang_down       !选择构成封头的所有面
cm,coping,area              !创建封头面积组件  
!!!!!!!!!!!!!封头创建完毕!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!创建筒体!!!!!!!!!!!!!!!!!!!!!!!!!!!!!   
allsel  
k,,DN/2,a-a1-H-L              !创建筒体底端位置点
k,,DN/2+dta1,a-a1-H-L   
a,28,29,37,38                 !连接筒体与下法兰,构成面   
asel,u,area,,flang_up   
asel,u,area,,flang_down
asel,u,area,,coping           !排除筒体之外的所有面
cm,pot,area                !创建筒体面积组件
!!!!!!!!!!!!!筒体创建完毕!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!布尔操作,将面与面之间粘接!!!!!!!!!!!!!
asel,s,area,,flang_up   
asel,a,area,,coping
aglue,all                !将封头与上法兰面粘接
asel,s,area,,flang_down
asel,a,area,,pot
aglue,all                !将筒体与下法兰面粘接   
kdele,36                 !删除建模过程中辅助点
!!!!!!!!!!!!!布尔操作完毕!!!!!!!!!!!!!!!!!!!!!!!!!!
   
allsel  
vrotat,all,,,,,,42,46,N        !将所有的面绕y轴旋转N度,创建体

!!!!!!!!!!!!!创建螺栓!!!!!!!!!!!!!   
KL,76,0.5, ,                   !设定关键点平分线76,该点为螺栓中心所在
KWPAVE,77                      !将工作平面移动至该点
wprota,0,90                    !将工作平面绕x轴旋转90度
cyl4,,,xd/2,,,,bolt_h          !创建螺栓
!将与螺栓相交的体组成一个组件,以便选取   
vsel,s,volu,,4,5,1  
vsel,a,volu,,9,10,1
cm,buer,volu                   !创建与螺栓相交的体积组件buer
allsel
bopt,numb,off  
vsbv,buer,14                   !将组件buer与螺栓进行布尔操作,挖出螺栓孔洞
cyl4,,,xd/2,,,,bolt_h          !创建螺栓,体积编号为4  
VGEN,,4,,,,,-(bolt_h/2-dta-a),,,1   !将螺栓平移至合适位置   
rpr4,6,,,nut_rad,,-nut_h            !创建螺母
vgen,2,5,,,,,2*dta+a1+nut_h,,,0     !复制螺母至合适位置  
!!!!!!!!!!!!!螺栓创建完毕!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!创建各部分体积组件方便选择!!!!!!!!!!!!!   
vsel,s,volu,,4,5,1  
vsel,a,volu,,9  
vptn,all
cm,bvolu,volu                   !创建螺栓组件   
allsel  
wpstyl,defa
vsel,s,loc,y,-H-L,a1
vsel,u,volu,,bvolu  
cm,flang_dvolu,volu             !创建下法兰组件
allsel  
vsel,s,loc,y,a1,H   
vsel,u,volu,,bvolu  
cm,flang_upvolu,volu            !创建上法兰组件
allsel  
vsel,s,loc,y,H+a,H+h1+dta1  
cm,cop_volu,volu                !创建封头组件
!!!!!!!!!!!!!!!划分网格!!!!!!!!!!!!!!!!!!!!!!!!!!!!  
mat,1                           !指定材料   
esize,5                         !指定单元大小
cmsel,s,cop_volu                !选中封头组件
vsweep,all                      !对封头分网
esize,5                         !指定单元大小  
cmsel,s,flang_dvolu             !选中下法兰组件
vsweep,all                      !对下法兰分网  
cmsel,s,flang_upvolu            !选中上法兰组件
vsweep,all                      !对上法兰分网   
esize,4                         !指定单元大小
mat,2                           !指定材料      
cmsel,s,bvolu                 !选中螺栓组件  
vsweep,all                      !对螺栓分网
!!!!!!!!!!!!!网格划分完毕!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!对模型节点进行压缩合并!!!!!!!!!!!!!!!!!!!!!
!合并上法兰节点
allsel  
vsel,s,loc,y,0,2*H  
vsel,u,volu,,bvolu
nslv,s,1
nummrg,node
!合并下法兰节点
allsel
vsel,s,loc,y,-(H+L),a1
vsel,u,volu,,bvolu
nslv,s,1
nummrg,node
!!!!!!!!!!!!!节点合并完毕!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!建立螺栓预紧单元!!!!!!!!!!!!!!!!!!!!!
allsel  
!在0号坐标系下,对螺栓1(14号体积)建立预紧单元,secid为1,name为bolt1
!预紧单元方向为y轴,位置为y向0位置处,同时将预紧单元存储于bolt_1单元组件中,预紧单元pretention179无需预先定义
psmesh,1,bolt1,,volu,14,0,y,0,,,,bolt_1
!!!!!!!!!!!!!螺栓预紧单元建立完毕!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!创建接触!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!创建凹面接触单元
cmsel,s,flang_upvolu          !选择上法兰体积组件
aslv                          !选择依附于体上的面
asel,r,loc,y,0                !通过坐标选择法兰上的接触面  
cm,as_up,area                 !建立上法兰接触面组件as_up   
allsel  
cmsel,s,flang_dvolu           !选择下法兰体积组件
aslv                          !选择依附于体上的面
asel,r,loc,y,a-a1             !通过坐标选择法兰上的接触面  
asel,r,loc,x,0,D3/2            
cm,as_down,area               !建立下法兰接触面组件as_down  
r,1                           !定义接触实常数1
real,1                        !指定实常数1  
mat,3                         !指定材料3
cmsel,s,as_up                 !选择上法兰接触面组件as_up   
type,2                        !指定单元接触类型2  
nsla,s,1                      !选择接触面上的所有节点,包括边界点
esln,s,0                      !选择依附于这些节点的单元
esurf,all                     !构建接触单元   
allsel  
cmsel,s,as_down               !选择下法兰接触面组件as_down
type,3                        !指定单元接触类型3   
nsla,s,1                      !选择接触面上的所有节点,包括边界点
esln,s,0                      !选择依附于这些节点的单元
esurf,all                     !构建接触单元   
!创建凸面接触单元
allsel  
cmsel,s,flang_upvolu          !选择上法兰体积组件
aslv                          !选择依附于体上的面
asel,r,loc,y,a                !通过坐标选择法兰上的接触面  
cm,as_up1,area                !建立上法兰接触面组件as_up1  
allsel  
cmsel,s,flang_dvolu           !选择下法兰体积组件
aslv                          !选择依附于体上的面
asel,r,loc,y,a                !通过坐标选择法兰上的接触面   
cm,as_down1,area              !建立下法兰接触面组件as_down1
et,5,TARGE170                 !定义目标单元170   
et,6,CONTA174                 !定义接触单元174
keyopt,6,9,0                  !包含初始化穿透
r,2                           !定义接触实常数2
real,2                        !指定实常数2   
mat,3                         !指定材料3
cmsel,s,as_up1                !选择上法兰接触面组件as_up1   
type,5                        !指定单元接触类型5
nsla,s,1                      !选择接触面上的所有节点,包括边界点
esln,s,0                      !选择依附于这些节点的单元
esurf,all                     !构建接触单元   
allsel  
cmsel,s,as_down1              !选择下法兰接触面组件as_down1
type,6                        !指定单元接触类型6  
nsla,s,1                      !选择接触面上的所有节点,包括边界点
esln,s,0                      !选择依附于这些节点的单元
esurf,all                     !构建接触单元   
!创建螺母与上法兰接触   
allsel  
cmsel,s,bvolu              !选择螺栓体积组件  
KWPAVE,77                     !将工作平面移至77点
wprota,0,90                   !将工作平面绕x轴旋转90度
aslv                          !选择依附于体上的面
asel,r,loc,z,0                !通过坐标选择螺栓上的接触面
asel,u,area,,104              !删除螺栓柱面,保留螺母面
cm,b_up,area                  !创建螺母与上法兰接触面组件b_up
cmsel,s,flang_upvolu          !选择上法兰体积组件
aslv                          !选择依附于体上的面
asel,r,loc,z,0                !通过坐标选择上法兰上的目标面   
asel,r,loc,x,-(D-D1)/2,(D-D1)/2
cm,f_up,area                  !创建上法兰与螺母目标面组件f_up
cmsel,s,bvolu              !选择螺栓体积组件     
aslv                          !选择依附于体上的面
asel,r,loc,z,2*dta+a1         !通过坐标选择螺栓与下法兰的接触面   
asel,u,area,,108              !删除螺栓柱面,保留螺母面
cm,b_down,area                !创建螺母与下法兰接触面组件b_down
cmsel,s,flang_dvolu          !选择下法兰体积组件
aslv                          !选择依附于体上的面
asel,r,loc,z,2*dta+a1         !通过坐标选择螺栓与下法兰的目标面   
asel,r,loc,x,-(D-D1)/2,(D-D1)/2
cm,f_down,area                !创建螺母与下法兰目标面组件f_down
et,7,TARGE170                 !定义目标单元170     
et,8,CONTA174                 !定义接触单元174  
keyopt,8,9,0                  !包含初始化穿透
r,3                           !定义接触实常数3
real,3                        !指定实常数3   
mat,3                         !指定材料3
cmsel,s,b_up                  !选择螺母与上法兰接触面组件b_up
type,7                        !指定单元接触类型7   
nsla,s,1                      !选择接触面上的所有节点,包括边界点
esln,s,0                      !选择依附于这些节点的单元
esurf,all                     !构建接触单元  
allsel  
cmsel,s,f_up                  !选择上法兰与螺母目标面组件f_up
type,8                        !指定单元接触类型8     
nsla,s,1                      !选择接触面上的所有节点,包括边界点
esln,s,0                      !选择依附于这些节点的单元
esurf,all                     !构建接触单元   
!创建螺母与下法兰接触   
et,9,TARGE170                 !定义目标单元170     
et,10,CONTA174                !定义接触单元174
keyopt,10,9,0                 !包含初始化穿透
r,4                           !定义接触实常数4
real,4                        !指定实常数4   
mat,3                         !指定材料3
cmsel,s,b_down                !选择螺母与下法兰接触面组件b_down
type,9                        !指定单元接触类型9   
nsla,s,1                      !选择接触面上的所有节点,包括边界点
esln,s,0                      !选择依附于这些节点的单元
esurf,all                     !构建接触单元                  
allsel  
cmsel,s,f_down                !选择螺母与下法兰目标面组件f_down  
type,10                       !指定单元接触类型10   
nsla,s,1                      !选择接触面上的所有节点,包括边界点
esln,s,0                      !选择依附于这些节点的单元
esurf,all                     !构建接触单元   
!!!!!!!!!!!!接触创建完毕!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  
FINISH  
/SOL                          !进入求解处理器
allsel  
lsclear,all                   !清空所有载荷
NROPT,Full                    !激活完全Newton-Raphson
pred,on                       !打开变形预测
lnsrch,on                     !激活线性搜索   
antype,0                      !静态分析
autots,1                      !自动时间步长
nsubst,25,100,1               !设置载荷步
outres,all,all                !输出所有结果
eqslv,pcg,1e-8                !采用pcg算法,对于大模型接触算法很有效
   
wpstyl,defa          !将工作平面恢复至默认状态
csys,5             !激活柱坐标系(以y轴为旋转轴)
asel,s,loc,y,0        !通过坐标选择角度为0的面
asel,a,loc,y,-N        !通过坐标选择角度为-N的面
da,all,symm                   !施加对称边界条件
csys,0                        !激活笛卡尔坐标系
cmsel,s,flang_dvolu           !选择下法兰体积组件
nslv,r,1                      !选择依附于体积上的节点
nsel,r,loc,y,a-a1-H-L         !选择筒体底端节点
d,all,uy            !施加y向位移约束
allsel  
sload,1,9,lock,forc,forc_bolt,1,2   !在螺栓中施加螺栓预紧
!第一载荷步中施加载荷大小为forc_bolt的预紧力,在第二个载荷步中锁住其位移,最终产生预紧效果  
time,10                       !设置时间步长为10               
allsel  
lswrite,1                     !写出第一个载荷步文件   
time,20                       !设置时间步至20  
lswrite,2                     !写出第二个载荷步文件      
!对容器壁施加内压
asel,s,area,,68               !选中编号为68的面
nsla,s,1                      !选择依附于面上的节点
csys,5             !激活柱坐标系(以y轴为旋转轴)  
nsel,a,loc,x,DN/2             !通过坐标选择内壁上的节点   
sf,all,pres,PN                !对内壁施加压强,大小为PN
allsel  
time,30                       !设置时间步至30
lswrite,3                     !写出第三个载荷步文件  
lssolve,1,3,1                 !计算载荷步1-3

/post1                        !进入通用后处理
set,last                      !读取最后结果
PLNSOL,S,EQV,0,1              !输出Von Mises应力结果
cmsel,s,bvolu                 !选择螺栓组件
eslv,s,1                      !选中依附于体积的单元
nslv,s,1                      !选中依附于体积的节点
PLNSOL,S,EQV,0,1              !输出Von Mises应力结果
cmsel,s,flang_dvolu           !选择下法兰组件
eslv,s,1                      !选中依附于体积的单元
nslv,s,1                      !选中依附于体积的节点
PLNSOL,S,EQV,0,1              !输出Von Mises应力结果

评分

1

查看全部评分

发表于 2007-11-29 16:19:42 | 显示全部楼层 来自 黑龙江哈尔滨

回复 #1 huanghui01 的帖子

Simdroid开发平台
谢谢搂主。
原创的???
回复 不支持

使用道具 举报

发表于 2007-12-1 10:39:14 | 显示全部楼层 来自 江苏常州
辛苦了,斑竹
谢谢,学习一下
回复 不支持

使用道具 举报

发表于 2007-12-20 22:31:47 | 显示全部楼层 来自 Reserved
多谢,很详细呀
回复 不支持

使用道具 举报

发表于 2007-12-22 16:59:05 | 显示全部楼层 来自 合肥工业大学
对我有帮助,谢谢
回复 不支持

使用道具 举报

发表于 2007-12-25 22:43:24 | 显示全部楼层 来自 江苏镇江
谢谢分享
回复 不支持

使用道具 举报

发表于 2007-12-27 15:50:14 | 显示全部楼层 来自 北京
谢谢分享!
回复 不支持

使用道具 举报

发表于 2008-1-3 16:38:24 | 显示全部楼层 来自 江苏南京
回去好好研究研究  谢谢
回复 不支持

使用道具 举报

发表于 2008-1-5 10:23:28 | 显示全部楼层 来自 湖北武汉
收益匪浅啊
回复 不支持

使用道具 举报

发表于 2008-7-1 10:50:54 | 显示全部楼层 来自 山东青岛
多谢了 非常详细啊
回复 不支持

使用道具 举报

发表于 2008-7-3 11:45:20 | 显示全部楼层 来自 河南郑州

回复 1# 的帖子

对初学者帮助甚大
回复 不支持

使用道具 举报

发表于 2008-7-14 20:56:50 | 显示全部楼层 来自 山西临汾

正找这个呢

正找这个呢,下来试试
回复 不支持

使用道具 举报

发表于 2008-7-22 21:15:38 | 显示全部楼层 来自 上海闵行区

佩服

楼上太厉害了,我正做这个,下载下来看看,互相切磋哈
回复 不支持

使用道具 举报

发表于 2008-10-12 16:28:11 | 显示全部楼层 来自 湖南长沙

回复 1# huanghui01 的帖子

辛苦了,斑竹
谢谢,学习一下
回复 不支持

使用道具 举报

发表于 2008-10-14 09:38:11 | 显示全部楼层 来自 江苏南京
这是一个很好的工作
回复 不支持

使用道具 举报

发表于 2008-10-25 11:51:08 | 显示全部楼层 来自 河南洛阳
真实不容易,能和大家分享真好,我也要好好努力多做一些,和大家一起分享
回复 不支持

使用道具 举报

发表于 2008-11-18 10:31:08 | 显示全部楼层 来自 新疆乌鲁木齐
楼主高人啊,我正做这个,下载下来学习一下,谢了!
回复 不支持

使用道具 举报

发表于 2008-11-18 20:32:06 | 显示全部楼层 来自 广东珠海
I have learned a lot from this.
Thank you.
回复 不支持

使用道具 举报

发表于 2008-12-6 15:32:20 | 显示全部楼层 来自 陕西西安
正在考虑做接触,学习了。
回复 不支持

使用道具 举报

发表于 2009-2-4 11:21:07 | 显示全部楼层 来自 湖南长沙
谢谢分享!
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-10-3 13:25 , Processed in 0.086088 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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