- 积分
- 3
- 注册时间
- 2009-9-25
- 仿真币
-
- 最后登录
- 1970-1-1
|
本帖最后由 zhanshenchuanyu 于 2009-12-23 16:16 编辑
各位大侠,我的前处理装配中,出现了三个part,上下轧辊和轧件,轧辊先实现装配再轧件写入,都设定为Mesh on part(dependent),修改了一下jnl文件,删除多余操作,产生了一个通过运行的.py文件,装配一部分源代码如下:
mdb.models['Rolling Model'].rootAssembly.DatumCsysByDefault(CARTESIAN)
mdb.models['Rolling Model'].rootAssembly.Instance(dependent=ON, name=
'Rollerdown-1', part=mdb.models['Rolling Model'].parts['Rollerdown'])
mdb.models['Rolling Model'].rootAssembly.Instance(dependent=ON, name=
'Rollerup-1', part=mdb.models['Rolling Model'].parts['Rollerup'])
mdb.models['Rolling Model'].rootAssembly.instances['Rollerup-1'].translate(
vector=(1120.0, 0.0, 0.0))
mdb.models['Rolling Model'].rootAssembly.FaceToFace(clearance=0.0, fixedPlane=
mdb.models['Rolling Model'].rootAssembly.instances['Rollerdown-1'].faces[98]
, flip=OFF, movablePlane=
mdb.models['Rolling Model'].rootAssembly.instances['Rollerup-1'].faces[0])
mdb.models['Rolling Model'].rootAssembly.Instance(dependent=ON, name=
'workpiece-1', part=mdb.models['Rolling Model'].parts['workpiece'])
mdb.models['Rolling Model'].rootAssembly.DatumPlaneByOffset(flip=SIDE2, offset=
260.0, plane=
mdb.models['Rolling Model'].rootAssembly.instances['Rollerup-1'].faces[78])
mdb.models['Rolling Model'].rootAssembly.DatumPlaneByTwoPoint(point1=
mdb.models['Rolling Model'].rootAssembly.instances['Rollerup-1'].vertices[79]
, point2=
mdb.models['Rolling Model'].rootAssembly.instances['Rollerdown-1'].vertices[0])
mdb.models['Rolling Model'].rootAssembly.FaceToFace(clearance=0.0, fixedPlane=
mdb.models['Rolling Model'].rootAssembly.datums[10], flip=OFF,
movablePlane=
mdb.models['Rolling Model'].rootAssembly.instances['workpiece-1'].datums[8])
mdb.models['Rolling Model'].rootAssembly.FaceToFace(clearance=0.0, fixedPlane=
mdb.models['Rolling Model'].rootAssembly.datums[9], flip=ON, movablePlane=
mdb.models['Rolling Model'].rootAssembly.instances['workpiece-1'].datums[10])
mdb.models['Rolling Model'].rootAssembly.setValues(
regenerateConstraintsTogether=OFF)
问题简述如下:
1、上下两个轧辊先实现装配,定位时,对应的侧面约束是Face to Face,那么这两个侧面怎么判断,即上面红色的faces[98]和faces[0],而且flip=OFF或者是ON怎么通过程序判断?比如任意一个圆柱的两个对应圆面,怎么选出来是其中一个圆面,而不是另一个呢?
2、在建立一个基准面datum plane的时候,用到了取两个点中间面的做法,即datum plane by two point,那么这两个点,如上面红色的vertices[79]和vertices[0]是两个对应面的两个圆心,那么79和0怎么通过程序来实现呢?
问?个人想法是不是可以先对轧辊两个零件,面通过tools-surfaces或者datum plane,而点通过参考点reference point或者datum point来强调出来。因为两个轧辊在进入前处理之前已经生成好了.cae文件,所以之前在CAE界面下进行手工操作是可以实现的。
3、轧件的面和上面建立的基准面faces[78]重合时,怎么判定flip=ON还是OFF?
4、轧件的头部怎么判定进给方向里轧辊不太远也不要进去咬合。查过一些资料,好像通过datum point,但是在cae下手工操作我觉得实现就行,也就是说可以经常用translate这种操作,慢慢调到自己想要的位置,但是程序怎么判定呢?毕竟前处理是个界面,对用户直接提交就是了。
做适合多种型号产品的开发程序,所以以一个型号为基础来做,实际上问题就是怎么把这些特殊的面和点挑出来。希望得到高手指点!谢谢! |
|