轻松学会ABAQUS—RSG快速建模插件(无需专门学习python)
以ABAQUS自带的带孔平板为例,详细说明整个插件程序的实现过程,即使是新手也能轻松掌握。
一、python建模
1、辅助程序PythonReader:
在ABAQUS CAE中的每一个菜单或按钮操作都是被解释为Python语句,然后才提交上去。而这些Python语句被适时地保存在工作目录(/temp)下的abaqus.rpy文件中,PythonRead程序会适时的读取abaqus.rpy文件,以便你把相应的CAE操作对照起来,因此即使不会Python语句,只要会在ABAQUS CAE中进行操作,借助PythonReader也能帮助你实现python建模。
PythonRead使用说明:
1)、程序第一次运行时需要指定abaqus.rpy的位置(在你指定的工作目录下,默认为/temp的文件夹根目录下),在窗口上点击右键浏览找到abaqus.rpy即可,以后运行会自动加载上一次设置;
2)、在窗口中拖动右键可以移动窗口位置;
3)、把鼠标移动到窗口边缘可以拖动改变窗口大小。
开始配置pythonread
配置完毕,自动读取上次CAE中的操作
2、ABAQUS CAE 逐步操作生成python建模语句:
在这里使用EditPlus编辑python语句,首先在EditPlus中选择:文件 —》新建文件 —》其它 —》Python,然后选择:文件 —》保存 —》重命名为CreatePlate,此时会在指定的目录下生成CreatePlate.py的空白脚本。将以下语句写入上述脚本的开头:
from abaqus import *
from abaqusConstants import *
from caeModules import *
在ABAQUS CAE中开始建模,选择CreatePart —》重命名为Plate,设置为2D Planner,其他默认。点击Continue..后进入草图编辑,此时可以看到PythonReader自动读取了刚才操作所对应的Python语句,并且以深蓝色显示,如下图所示,因此使用者可以通过这种方式轻松学会Python脚本的编辑。将新生成的语句复制到EditPlus的CreatePlate.py文件中。
s = mdb.models['Model-1'].ConstrainedSketch(name='__profile__', sheetSize=200.0)
g, v, d, c = s.geometry, s.vertices, s.dimensions, s.constraints
s.setPrimaryObject(option=STANDALONE)
继续绘制矩形,其两个对角点为(0,0)和(40,20),绘制半径为3的圆孔,其圆心和圆周上的一点坐标分别为(20,10)和(23,10),然后确定创建,将新生成的语句复制到EditPlus的CreatePlate.py文件中,并用#进行注释,可以将多余的语句注释掉。
s.rectangle(point1=(0.0, 0.0), point2=(40.0, 20.0)) #矩形两个对角点
s.CircleByCenterPerimeter(center=(20.0, 10.0), point1=(23.0, 10.0)) #圆孔(圆心,圆周上一点)
##完成part创建
p = mdb.models['Model-1'].parts['Plate']
p.BaseShell(sketch=s)
s.unsetPrimaryObject()
#p = mdb.models['Model-1'].parts['Plate']
#session.viewports['Viewport: 1'].setValues(displayedObject=p)
del mdb.models['Model-1'].sketches['__profile__']
此时脚本已初步完成,可以验证一下是否能够正常运行,重新创建一个空白CAE文件,然后选择ABAQUS主界面左下角的按钮“》》》“,此时右边的命令行会出现》》》,将上述脚本复制到》》》之后 ,会自动运行,创建出Plate,如果没有报错,说明脚本OK。
3、代码参数化
用户可根据实际的模型情况,进行自定义RSG插件中的参数,本例中可进行如下定义:part的名字定义变量PartName(变量名根据命名规则可随意设置),平板的宽和高定义变量分别为Width和Height,孔径定义为Radius;然后在脚本的开头定义函数,函数名根据命名规则可随意设置,本例取名为CreatePlateFunc,函数的参数即为前述定义的4个参数:
def CreatePlateFunc(PartName,Width,Height,Radius):
然后对函数后的语句进行缩进,并将脚本中相应数值替换为上述4个参数,本例的替换如下:
s.rectangle(point1=(0.0, 0.0), point2=(40.0, 20.0)) ——》s.rectangle(point1=(0.0, 0.0), point2=(Width, Height))
s.CircleByCenterPerimeter(center=(20.0, 10.0), point1=(23.0, 10.0)) ——》s.CircleByCenterPerimeter(center=(Width/2, Height/2), point1=(Width/2+Radius, Height/2))
所有'Plate' ——》PartName
至此,Python建模已经完成,利用CAE操作结合PythonReader,用户可轻松得到需求的Python建模脚本,即使没有专门学习python,也能方便的实现。
二、RSG生成
1、图形化界面GUI生成
在CAE中选择Plug-ins —》Abaqus —》RSG Dialog Builder 打开如下对话框,在Title中设置标题名为Create Plate,选中Dialog Box,然后点击左侧菜单中的“白板“按钮,如下图所示。
弹出小对话框,然后对面板进行如下设置:
同样方法,依次完成对参数Height,Radius,PartName的设置,如下图所示:
调整参数的顺序后,得到如下对话框:
2、Kernel设置
左上角切换至Kernel标签页,进行如下设置:
3、插件生成
再次切换回CUI标签页,选择左侧菜单中的“保存”按钮,弹出Save Plug-in对话框,选择保存为Standard Plug-in,设置目录名为CreatePlate,菜单按钮名设置为Create Plate,保存位置为默认位置,最后选择OK即可生成插件Create Plate。
然后重启Abaqus,在菜单中Plug-ins下可以看到刚刚创建的插件Create Plate,点击即可打开。修改参数值,点击OK即可快速建模。
插件Create Plate下载:
PythonReader下载:
查看更多评论 >