宋 明, 王文慧, 吳 瓊, 曹宇光, 杜傳勝
(中國(guó)石油大學(xué)(華東)a. 儲(chǔ)運(yùn)與建筑工程學(xué)院;b. 海洋與空間信息學(xué)院;c. 材料科學(xué)與工程學(xué)院,山東青島266580)
小沖桿實(shí)驗(yàn)方法[1-4](Small Punch Test,SPT)是一種微試樣實(shí)驗(yàn)技術(shù)。目前該技術(shù)無(wú)論是實(shí)驗(yàn)操作還是有限元理論模擬都已經(jīng)日趨成熟[5,6],它利用尺寸極其微小的試樣對(duì)服役材料進(jìn)行失效分析和壽命預(yù)測(cè),分析測(cè)試材料的基本力學(xué)性能,包括屈服強(qiáng)度、抗拉強(qiáng)度、韌脆性轉(zhuǎn)變溫度、斷裂韌性和蠕變性能等[7-9];國(guó)內(nèi)外研究者也提出了多種含有損傷參數(shù)的小沖桿實(shí)驗(yàn)有限元模型,典型的如含有連續(xù)介質(zhì)損傷(Gurson-Tvergaard-Needleman,GTN)模型參數(shù)的小沖桿實(shí)驗(yàn)?zāi)P停?]。隨著國(guó)家新工科教育理念的提出與推廣,該實(shí)驗(yàn)已作為創(chuàng)新型實(shí)驗(yàn)逐步引入大學(xué)生創(chuàng)新創(chuàng)業(yè)項(xiàng)目,通過(guò)該實(shí)驗(yàn)?zāi)軌蜃寣W(xué)生更形象、深刻地學(xué)習(xí)和理解力學(xué)中材料大變形、非線性接觸、摩擦、應(yīng)變強(qiáng)化、連續(xù)介質(zhì)損傷等問(wèn)題。Matlab / GUI 是一種新型的圖形用戶(hù)界面開(kāi)發(fā)方式,通過(guò)此界面可以方便地實(shí)現(xiàn)用戶(hù)的一些特定操作需求,簡(jiǎn)單易學(xué)且功能強(qiáng)大。既能嵌入已有的仿真程序,又能把仿真的圖形化結(jié)果以人機(jī)交互的動(dòng)態(tài)方式呈現(xiàn)給用戶(hù),使用者不需要學(xué)習(xí)復(fù)雜的代碼,只需了解具體操作步驟,即可方便地操作界面[10-13]。
本文設(shè)計(jì)并建立了一種基于Matlab / GUI 和Abaqus的小沖桿實(shí)驗(yàn)學(xué)習(xí)與應(yīng)用虛擬平臺(tái)。該平臺(tái)包括學(xué)習(xí)和應(yīng)用兩個(gè)模式,不僅可以實(shí)現(xiàn)學(xué)生對(duì)小沖桿實(shí)驗(yàn)理論基礎(chǔ)的自學(xué),了解小沖桿實(shí)驗(yàn)過(guò)程,還可以通過(guò)平臺(tái)應(yīng)用模式,直接啟用Abaqus 進(jìn)行有限元模擬,分析不同參數(shù)對(duì)實(shí)驗(yàn)結(jié)果的影響。使用者只需將程序下載至電腦即可使用,操作簡(jiǎn)單;也可以通過(guò)進(jìn)一步修改m程序文件,實(shí)現(xiàn)對(duì)實(shí)驗(yàn)平臺(tái)的再開(kāi)發(fā)。此過(guò)程不僅能夠加深學(xué)生對(duì)實(shí)驗(yàn)的認(rèn)識(shí),還可提高其編程能力。該實(shí)驗(yàn)平臺(tái)的人機(jī)交互性不僅使實(shí)驗(yàn)容易理解,激發(fā)學(xué)生對(duì)小沖桿實(shí)驗(yàn)方法研究的濃厚興趣,更加突破了傳統(tǒng)實(shí)驗(yàn)對(duì)時(shí)間、空間的限制,提高了實(shí)驗(yàn)效率。
小沖桿實(shí)驗(yàn)學(xué)習(xí)與應(yīng)用平臺(tái)結(jié)構(gòu)與主要功能如圖1 所示。該平臺(tái)有學(xué)習(xí)和應(yīng)用兩種模式。學(xué)習(xí)模式又包含理論基礎(chǔ)和實(shí)驗(yàn)操作兩大模塊,應(yīng)用模式包括與Abaqus交互的小沖桿實(shí)驗(yàn)有限元模擬模塊和各種參數(shù)對(duì)實(shí)驗(yàn)結(jié)果分析影響模塊;理論基礎(chǔ)包括實(shí)驗(yàn)背景、定義、目的、優(yōu)勢(shì)、原理、進(jìn)展和實(shí)驗(yàn)裝置認(rèn)識(shí)[14-15]。實(shí)驗(yàn)操作分為:取樣、試樣加工、加載測(cè)試、獲得曲線、數(shù)據(jù)處理5 個(gè)步驟。有限元分析操作主要有修改inp文件相關(guān)參數(shù)、提交計(jì)算、查看結(jié)果。參數(shù)影響分析模塊采用控制變量法,分別賦予試樣厚度、沖頭直徑、沖桿速度、下模具孔徑、材料彈性模量以及泊松比6 種參數(shù)不同的值,使實(shí)驗(yàn)的載荷位移曲線產(chǎn)生變化,得出各參數(shù)對(duì)實(shí)驗(yàn)結(jié)果的影響。實(shí)驗(yàn)平臺(tái)所有界面均使用Matlab GUI工具箱設(shè)計(jì),通過(guò)編寫(xiě)回調(diào)函數(shù)實(shí)現(xiàn)相關(guān)功能。
圖1 小沖桿實(shí)驗(yàn)學(xué)習(xí)與應(yīng)用平臺(tái)結(jié)構(gòu)與功能示意圖
小沖桿實(shí)驗(yàn)學(xué)習(xí)與應(yīng)用平臺(tái)的主界面如圖2 所示,其特點(diǎn)為設(shè)計(jì)簡(jiǎn)潔,操作明了。主界面由標(biāo)題、封面圖片、模式選擇、“OK”按鈕和“EXIT”按鈕組成,使用到的組件為Static Text、Axes、Pushbutton 和Popupmenu控件,主要實(shí)現(xiàn)模式選擇功能。用戶(hù)首先選擇一種模式,點(diǎn)擊“OK”按鈕,系統(tǒng)進(jìn)入相應(yīng)的模式界面,該功能通過(guò)回調(diào)函數(shù)的switch-case 語(yǔ)句實(shí)現(xiàn)。主界面右下角的“EXIT”按鈕用來(lái)退出并關(guān)閉實(shí)驗(yàn)平臺(tái)的運(yùn)行,其回調(diào)函數(shù)為:clear;close(gcf)。
圖2 小沖桿實(shí)驗(yàn)學(xué)習(xí)與應(yīng)用平臺(tái)主界面
學(xué)習(xí)模塊包括理論基礎(chǔ)與實(shí)驗(yàn)過(guò)程。操作者首先進(jìn)入理論基礎(chǔ)界面,如圖3(a)所示,其中理論基礎(chǔ)包含“背景”“定義”“目的”“優(yōu)勢(shì)”“原理”“進(jìn)展”和“裝置”7 個(gè)內(nèi)容。分別點(diǎn)擊前6 個(gè)按鈕,在空白框中展現(xiàn)相應(yīng)的介紹;點(diǎn)擊“裝置”按鈕,將進(jìn)入實(shí)驗(yàn)裝置認(rèn)識(shí)界面,可分別選擇“類(lèi)型說(shuō)明”“剖面圖”和“三維圖”實(shí)現(xiàn)多角度認(rèn)識(shí)裝置。
以“目的”為例,顯示相應(yīng)文本的回調(diào)函數(shù)如下:
function pushbutton3_Callback(hObject,eventdata,handles)
str1 =['基于‘無(wú)損取樣’的概念,通過(guò)“小沖桿試樣方法”,檢測(cè)、評(píng)價(jià)材料狀況以及預(yù)測(cè)其剩余壽命等。',10];%文本內(nèi)容
圖3 小沖桿實(shí)驗(yàn)理論基礎(chǔ)學(xué)習(xí)界面
set(handles. edit1,'string',str1,'FontSize',12,'ForegroundColor','b');%輸出文本
理論基礎(chǔ)學(xué)習(xí)完畢后,點(diǎn)擊如圖3(b)所示的“NEXT”,即可進(jìn)入小沖桿實(shí)驗(yàn)過(guò)程界面,如圖4所示。
圖4 小沖桿實(shí)驗(yàn)過(guò)程界面
通過(guò)左上角的“實(shí)驗(yàn)步驟”下拉菜單,即可學(xué)習(xí)取樣、試樣加工、加載測(cè)試、獲得曲線、數(shù)據(jù)處理5 個(gè)過(guò)程。其中加載變形分析界面如圖5 所示,可以實(shí)現(xiàn)裝置的組裝,沖桿的動(dòng)態(tài)加載以及顯示加載過(guò)程中試樣的變形和內(nèi)部應(yīng)力分布動(dòng)態(tài)演化示意圖。
圖5 小沖桿實(shí)驗(yàn)過(guò)程加載變形分析界面
為實(shí)現(xiàn)視頻播放,首先應(yīng)添加Windows Media Player視頻播放控件,然后通過(guò)回調(diào)函數(shù)控制視頻的讀取與播放。視頻讀取與播放的回調(diào)函數(shù)如下:
function pushbutton2_Callback(hObject,eventdata,handles)
url2 = 'D:\SPT INFORMATION\E. avi';%讀取視頻
set (handles. activex1,'URL ',url2);% 用Windows Media Player播放視頻
另外,小沖桿實(shí)驗(yàn)裝置認(rèn)識(shí)界面的按鈕組選擇回調(diào)函數(shù)如下:
function uibuttongroup1 _ SelectionChangedFcn (hObject,eventdata,handles)
str =get(hObject,'string');%拿到所選按鈕的名稱(chēng)
axes(handles. axes1);
switch str
case '類(lèi)型說(shuō)明'
cla reset;
axis on;
a =imread('D:\SPT INFORMATION \ A. png');%讀取類(lèi)型圖圖片
imshow(a);%圖片顯示
axis off;
size(a);
hold on;
set(handles. edit1,'visible','on');
str1 = ['說(shuō)明:1—整體式?jīng)_桿;2—試樣;3—上夾具;4—下夾具;5—分體式?jīng)_桿;6—分體式?jīng)_頭。',10];
set(handles. edit1,'string',str1,'FontSize',12,'ForegroundColor','b');
case '剖面圖'
cla reset;
axis on;
b =imread('D:\ SPT INFORMATION \ B. png');%讀取剖面圖圖片
imshow(b);
axis off;
size(b);
hold on;
set(handles. edit1,'visible','on');
str1 =['此MEA測(cè)試夾具由五部分組成,包括環(huán)形柱1、壓緊件2、底座3、頂蓋4和小沖桿5。',10];
set(handles. edit1,'string',str1,'FontSize',12,'ForegroundColor','b');
case '三維圖'
cla reset;
set(handles. edit1,'visible','off');
axis on;
c =imread('D:\ SPT INFORMATION \ C. png');%讀取三維圖圖片
imshow(c);
axis off;
size(c);end
小沖桿實(shí)驗(yàn)應(yīng)用模式包括Abaqus 交互模塊和參數(shù)分析模塊,Abaqus交互模塊第1 部分介紹了國(guó)家標(biāo)準(zhǔn)中的規(guī)范參數(shù);第2 部分則為Matlab與Abaqus的聯(lián)合應(yīng)用,通過(guò)修改inp文件連接平臺(tái)與Abaqus數(shù)據(jù)接口,實(shí)現(xiàn)了由實(shí)驗(yàn)平臺(tái)提交數(shù)據(jù),Abaqus進(jìn)行計(jì)算,最終實(shí)時(shí)得到小沖桿實(shí)驗(yàn)有限元模擬結(jié)果的功能。參數(shù)分析模塊如圖6 所示。首先用戶(hù)在左側(cè)按鈕選擇一種分析參數(shù),包括試樣厚度、沖頭直徑、沖桿速度、下模具孔徑、材料彈性模量和泊松比,文本框中將實(shí)時(shí)顯示除控制變量外其余參數(shù)的取值,然后在下拉菜單中選擇該研究參數(shù)的具體取值并提交進(jìn)行計(jì)算,最終繪制得到相應(yīng)的載荷位移曲線,進(jìn)而分析各參數(shù)對(duì)實(shí)驗(yàn)結(jié)果的影響。
圖6 小沖桿實(shí)驗(yàn)應(yīng)用模式參數(shù)分析模塊界面
經(jīng)分析可知,試樣厚度的選取要和試樣的直徑相協(xié)調(diào),同時(shí)考慮尺寸效應(yīng)[16],試樣厚度越大,相同位移下所需的載荷越大。沖頭直徑尺寸不同,載荷-位移曲線的高低差異很大,因此在小沖桿實(shí)驗(yàn)研究中,沖頭直徑必須闡明。小沖桿實(shí)驗(yàn)的載荷-位移曲線對(duì)下模具孔徑相當(dāng)敏感,下模具孔徑的不同,直接影響相同沖桿位移條件下的最大載荷值,下模具孔徑越小,相同位移下所對(duì)應(yīng)的載荷越大。材料的彈性模量、泊松比直接影響載荷-位移曲線的形狀,因而可用小沖桿實(shí)驗(yàn)載荷位移曲線分析不同材料的力學(xué)性能。
其中,為實(shí)現(xiàn)實(shí)驗(yàn)平臺(tái)直接提交inp 文件供Abaqus計(jì)算的功能而編寫(xiě)的調(diào)用函數(shù)[17,18]如下:
% runabaqus. m
function [output_args ] =runabaqus(Path,InpFile,cpus)
inputFile = ['abaqus job = ',InpFile,' cpus = ',cpus];
t0 =tic;%開(kāi)始計(jì)時(shí)
MatlabPath =pwd();%記下當(dāng)前Matlab目錄
cd(Path);%進(jìn)入inp文件所在目錄
[output_args ]=system(inputFile);%通過(guò)系統(tǒng)調(diào)用,運(yùn)行Abaqus,提交inp文件
pause(3);%暫停3 s
cd(MatlabPath);%返回Matlab目錄
if (exist([Path,'’,InpFile,'. lck'],'file')= =2)%若提交成功
H =dialog('name','提示','position',[200 300 400 100]);
uicontrol('parent',H,'style','text','string','已提交,正在計(jì)算…請(qǐng)等待。','position',[20 40 350 20],'fontsize',12);%彈出提交成功的提示對(duì)話框
while exist([Path,'’,InpFile,'. lck'],'file')= =2 %提交成功
t =toc(t0);
h =fix(t/ 3600);
m =fix(mod(t,3600)/ 60);
sec =fix(mod(mod(t,3600),60));
pause(1);
fprintf('----------ABAQUS calculating----------\ n time costed
% d:% d:% d\n',h,m,sec);%輸出已計(jì)算時(shí)間
end
delete(H);
H =dialog('name','提示','position',[200 300 400 100]);%計(jì)算完成對(duì)話框
uicontrol('parent',H,'style','text','string','計(jì)算完成!','position',[20 40 350 20],'fontsize',12);
pause(3);
delete(H);
else %若提交不成功
h =errordlg('提交失敗,計(jì)算錯(cuò)誤?。ВЬ妫В?;%彈出警告對(duì)話框,提示提交失敗
ha =get(h,'children');
ht =findall(ha,'type','text');
set(ht,'fontsize',12);
end
通過(guò)mcc -m SPT1. m SPT2. m SPT3. m SPT4. m SPT5. m SPT6. m SPT7. m SPT8. m SPT10. m runabaqus.m語(yǔ)句便可將設(shè)計(jì)好的小沖桿實(shí)驗(yàn)學(xué)習(xí)與應(yīng)用平臺(tái)編譯為可獨(dú)立運(yùn)行的. exe 應(yīng)用程序。經(jīng)整理,最終形成“SPT軟件包”文件夾,用戶(hù)只需按照文件夾中的安裝說(shuō)明完成平臺(tái)安裝即可使用。
利用小沖桿實(shí)驗(yàn)學(xué)習(xí)與應(yīng)用平臺(tái)對(duì)實(shí)驗(yàn)下模具孔徑及試樣厚度進(jìn)行分析,得到的不同下模具孔徑和試樣厚度的載荷位移曲線如圖7 所示??梢园l(fā)現(xiàn)隨著孔徑尺寸的進(jìn)一步增大,如圖7(a)所示,得到的最大載荷也逐漸增大,但對(duì)實(shí)驗(yàn)曲線的第一部分并沒(méi)有明顯影響。而圖7(b)的結(jié)果顯示,隨著試樣厚度逐漸增大,實(shí)驗(yàn)曲線各個(gè)階段都呈現(xiàn)明顯上升的趨勢(shì)。
圖7 小沖桿實(shí)驗(yàn)有限元仿真分析結(jié)果
通過(guò)在多臺(tái)計(jì)算機(jī)安裝測(cè)試以及教學(xué)實(shí)踐,眾多學(xué)生使用反饋表明:小沖桿實(shí)驗(yàn)學(xué)習(xí)與應(yīng)用平臺(tái)操作簡(jiǎn)單,內(nèi)容豐富,實(shí)用性強(qiáng),達(dá)到了對(duì)未接觸過(guò)小沖桿實(shí)驗(yàn)學(xué)生前期學(xué)習(xí)小沖桿實(shí)驗(yàn)的教學(xué)目的。
該實(shí)驗(yàn)平臺(tái)基于Matlab 語(yǔ)言設(shè)計(jì),故通過(guò)繼續(xù)修改或編寫(xiě)m程序文件,即可實(shí)現(xiàn)對(duì)實(shí)驗(yàn)平臺(tái)的再開(kāi)發(fā)與推廣。一方面可以向小沖桿實(shí)驗(yàn)測(cè)量材料其他力學(xué)性能,如蠕變、斷裂韌性、損傷參數(shù)等多個(gè)方向進(jìn)行開(kāi)發(fā),完善小沖桿實(shí)驗(yàn)平臺(tái)內(nèi)容;另一方面,可以從建立小沖桿實(shí)驗(yàn)與其他力學(xué)實(shí)驗(yàn)相關(guān)聯(lián)的方向進(jìn)行開(kāi)發(fā),逐漸建立一個(gè)更完整更全面的虛擬實(shí)驗(yàn)平臺(tái)。
基于Matlab / GUI和Abaqus開(kāi)發(fā)的小沖桿實(shí)驗(yàn)學(xué)習(xí)與應(yīng)用虛擬平臺(tái),實(shí)現(xiàn)了小沖桿實(shí)驗(yàn)教學(xué)工作的直觀、高效和經(jīng)濟(jì)性,不僅可以使學(xué)生充分學(xué)習(xí)小沖桿實(shí)驗(yàn)中包含的基礎(chǔ)力學(xué)理論知識(shí),為進(jìn)一步研究工作打好基礎(chǔ),并通過(guò)對(duì)交互性應(yīng)用界面的探索,激發(fā)學(xué)生學(xué)習(xí)與科研的興趣。通過(guò)實(shí)驗(yàn)平臺(tái)的長(zhǎng)期運(yùn)行與補(bǔ)充,可知本文所開(kāi)發(fā)的小沖桿實(shí)驗(yàn)學(xué)習(xí)與應(yīng)用平臺(tái)具有設(shè)計(jì)簡(jiǎn)單、可再開(kāi)發(fā)性強(qiáng)、操作人性化等優(yōu)點(diǎn)。