- 积分
- 5
- 注册时间
- 2004-10-11
- 仿真币
-
- 最后登录
- 1970-1-1
|
发表于 2007-4-2 12:30:50
|
显示全部楼层
来自 天津河西区
以前做的题目,将建模部分给你作个思路。由于以前全部采用参数化建模,因此里边有许多不必要的参数和部分操作(对你的模型而言),慢慢看!若向看参数含义,请自行调整.其实catia proe、ug等模型完全可以导入ansys,只是可能会有局部的小问题,需要修正而已,多研究一下,问题不大!
!*************************************************
!**** 环境 Ansys 8.1 *****
!**** Copy Right(2004.6) by Li *****
!*************************************************
/prep7 !开启前处理模块
!/units,user !单位制设定(m, Kg, s, °C).
*AFUN,DEG !转换角度单位为度
!*************************************************
!************基本参数定义 ************
!*************************************************
Pi=3.1415926 !圆周率
radius=62.5 !半径2
WireDia=11.5 !线径
TotalCoil=5.5 !总圈数
n=3.9 !有效圈数
height=354 !中心线高度
CenterDotNum=200 !中心线关键点数
StartAngle=270 !起始角
DotDensity=0.05 !关键点密度
SpringType=3 !弹簧类型 0-"C"型 1-"S"型 2-"sin"型 3-Cylinder型 4-"L"型
CenterCur=0.001 !中心线曲率 **注:小于0.005,否则单元变形过大,不能自动划分网格
Amplitude=10 !中心线振幅
SD=0.5 !下段所占比率0.2~0.7
TOPCenterCur=0.001 !上段中心线曲率
DownCenterCur=0.001 !下段中心线曲率
PAOa=0.0008
EndCloseFlag=1 !上端部闭合否 0-否 1-是
EndCloseSmallFlag=1 !上端部缩小否 0-否 1-是
EndCloseRadius=45 !上端部闭合圈半径
EndCloseSpace=10 !上端部闭合间隙
StartCloseFlag=1 !下端部闭合否 0-否 1-是
StartCloseSmallFlag=1 !下端部缩小否 0-否 1-是
StartCloseRadius=49 !下端部闭合圈半径
StartCloseSpace=10 !下端部闭合间隙
StartDotNum=500000 !中心线关键点起始编号
IntAngle=0 !倾斜角度
BottomAreaElementSize=1!下端面单元尺寸
WireElementSize=10 !簧丝单元尺寸
DBaseRI=30 !下底座中心圆柱半径
DBaseHeight=20 !下底座中心圆柱高度
DBaseOffset =-15 !下底座偏移位置
DBaseRO=80 !下底座半径
DBaseElementSize=8 !下底座单元尺寸
UBaseRI=24 !上底座中心圆柱半径
UBaseHeight=20 !上底座中心圆柱高度
UBaseOffset =-15 !上底座偏移位置
UBaseRO=80 !上底座半径
UBaseElementSize=8 !上底座单元尺寸
PistonRodLength=190 !减震器活塞杆长度
PistonRodDia=20 !减震器活塞杆直径
PistonCyLength=250 !减震器筒长度
PistonCyDia=40 !减震器筒直径
!*************************************************
!************材料及基本参数定义 ************
!*************************************************
!*************************************************
!**** 初始计算关键点各段分布 *****
!*************************************************
EndBetweenAngle=(TotalCoil-n)/2*360 !上端部无效圈角度
StartBetweenAngle=(TotalCoil-n)/2*360 !下端部无效圈角度
StartBetweeNum=NINT(StartBetweenAngle*DotDensity) !下端部过渡部分关键点数
KPNum=NINT(n*360*DotDensity) !螺旋线关键点数
EndBetweeNum=NINT(EndBetweenAngle*DotDensity) !上端部过渡部分关键点数
!*************************************************
!**** 旋转并激活工作坐标系 *****
!*************************************************
EndY=((4*Paoa*Paoa*height*height+1)**0.5-1)/2/Paoa
EndX=(EndY/Paoa)**0.5
Enda=atan(Endy/Endx)
csys,4
*IF,SpringType,EQ,4,THEN
wpro,,,90-Enda+IntAngle
k,StartDotNum-1,(EndY/tan(Enda-IntAngle))-EndX,0,0
*ElseIF,SpringType,NE,4
wpro,,,IntAngle
k,StartDotNum-1,Height*tan(IntAngle),0,0
*ENDIF
!*************************************************
!**** 生成中心线关键点 *****
!*************************************************
*IF,SpringType,EQ,3,THEN !圆柱螺旋
*DO,i,StartDotNum,StartDotNum+CenterDotNum-1
k,i,0,0,(i-StartDotNum)*Height/(CenterDotNum-1)
*ENDDO
*ENDIF
!*************************************************
!**** 生成中心线,X向正弦规律 ******
!*************************************************
FLST,3,CenterDotNum,3
*DO,i,StartDotNum,StartDotNum+CenterDotNum-1
FITEM,3,i
*ENDDO
BSPLIN, ,P51X
!*************************************************
!**** 移动工作坐标系到中心线起始点 *****
!**** 垂直于中心线 *****
!*************************************************
LWPL,-1,1,0
!*************************************************
!**** 闭合下端部 ******
!*************************************************
*if,StartCloseFlag,NE,0,then
*if,StartCloseSmallFlag,EQ,0,then
StartCloseRadius=Radius
*endif
closedHeight=WireDia+StartCloseSpace
pPitch=(Height-closedHeight*2)/n
PEXP=(pPitch/closedHeight*(totalCoil-n)/2)
*do,i,1,StartBetweeNum
LWPL,-1,1,(i/StartBetweeNum)**(PEXP)*closedHeight/height
k,i,(StartCloseRadius+(i/StartBetweeNum)*(Radius-StartCloseRadius))*cos(StartAngle+StartBetweenAngle*i/StartBetweeNum),(StartCloseRadius+(i/StartBetweeNum)*(Radius-StartCloseRadius))*sin(StartAngle+StartBetweenAngle*i/StartBetweeNum),0
*enddo
*ELSEIF,StartCloseFlag,EQ,0
StartBetweeNum=0
*endif
!*************************************************
!**** 生成螺旋线关键点 ******
!*************************************************
*DO,i,1,KPNum
LWPL,-1,1,closedHeight/height+i*((Height-closedHeight*2)/KPNum)/Height
k,StartBetweeNum+i,radius*cos((n*360)*i/KPNum+StartAngle+StartBetweenAngle),radius*sin((n*360)*i/KPNum+StartAngle+StartBetweenAngle)
*ENDDO
!*************************************************
!**** 闭合上端部 ******
!*************************************************
*if,EndCloseFlag,NE,0,then
*if,EndCloseSmallFlag,EQ,0,then
EndCloseRadius=Radius
*endif
PEXP=(pPitch/closedHeight*(totalCoil-n)/2)
*do,i,1,EndBetweeNum
LWPL,-1,1,((Height-ClosedHeight)+((i-EndBetweeNum)/(EndBetweeNum))**(PEXP)*closedHeight+closedHeight)/Height
k,StartBetweeNum+KPNum+i,(Radius-i/EndBetweeNum*(Radius-EndCloseRadius))*cos(n*360+StartAngle+StartBetweenAngle+EndBetweenAngle*i/EndBetweeNum),(Radius-i/EndBetweeNum*(Radius-EndCloseRadius))*sin(n*360+StartAngle+StartBetweenAngle+EndBetweenAngle*i/EndBetweeNum)
*enddo
*ELSEIF,EndCloseFlag,EQ,0
EndBetweeNum=0
*endif
!*************************************************
!**** 生成螺旋线 ******
!*************************************************
FLST,3,StartCloseNum+StartBetweeNum+KPNum+EndBetweeNum+EndCloseNum,3
*do,i,1,StartBetweeNum+KPNum+EndBetweeNum
FITEM,3,i
*enddo
BSPLIN, ,P51X
!*************************************************
!**** 移动工作平面到螺旋线起始点 ******
!**** 并垂直于螺旋线 ******
!*************************************************
LWPL,-1,2,0
!*************************************************
!**** 生成簧丝端面 ******
!*************************************************
rectng,-15,15,-5,5
!*************************************************
!**** 扫描生成簧丝实体模型 ******
!*************************************************
VDRAG, 1, , , , , ,2
WPCSYS,-1,0
CYL4,0,0,radius, , , ,height
/VIEW,1,,-1
[ 本帖最后由 lmxtom 于 2007-4-2 12:37 编辑 ] |
评分
-
1
查看全部评分
-
|