輕松學會ABAQUS—RSG快速建模插件(無需專門學習python)

    以ABAQUS自帶的帶孔平板為例,詳細說明整個插件程序的實現過程,即使是新手也能輕松掌握。

1.png

一、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)、把鼠標移動到窗口邊緣可以拖動改變窗口大小。

3.png

開始配置pythonread

4.jpg

配置完畢,自動讀取上次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)

5.jpg

6.jpg

    繼續繪制矩形,其兩個對角點為(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__']

8.jpg

    此時腳本已初步完成,可以驗證一下是否能夠正常運行,重新創建一個空白CAE文件,然后選擇ABAQUS主界面左下角的按鈕“》》》“,此時右邊的命令行會出現》》》,將上述腳本復制到》》》之后 ,會自動運行,創建出Plate,如果沒有報錯,說明腳本OK。

9.jpg

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

10.jpg

    至此,Python建模已經完成,利用CAE操作結合PythonReader,用戶可輕松得到需求的Python建模腳本,即使沒有專門學習python,也能方便的實現。

二、RSG生成

1、圖形化界面GUI生成

     在CAE中選擇Plug-ins —》Abaqus —》RSG Dialog Builder 打開如下對話框,在Title中設置標題名為Create Plate,選中Dialog Box,然后點擊左側菜單中的“白板“按鈕,如下圖所示。

11.jpg

    彈出小對話框,然后對面板進行如下設置:

12.jpg
13.jpg

    同樣方法,依次完成對參數Height,Radius,PartName的設置,如下圖所示:

14.jpg
15.jpg
16.jpg

    調整參數的順序后,得到如下對話框:

18.jpg

2、Kernel設置  

    左上角切換至Kernel標簽頁,進行如下設置:

17.png

3、插件生成

    再次切換回CUI標簽頁,選擇左側菜單中的“保存”按鈕,彈出Save Plug-in對話框,選擇保存為Standard Plug-in,設置目錄名為CreatePlate,菜單按鈕名設置為Create Plate,保存位置為默認位置,最后選擇OK即可生成插件Create Plate。

18.png

    然后重啟Abaqus,在菜單中Plug-ins下可以看到剛剛創建的插件Create Plate,點擊即可打開。修改參數值,點擊OK即可快速建模。

18.jpg

插件Create Plate下載:

輕松學會ABAQUS—RSG快速建模插件(無需專門學習python)的圖19CreatePlate.zip

PythonReader下載:

輕松學會ABAQUS—RSG快速建模插件(無需專門學習python)的圖20PythonReader.zip

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

28
15
55