王英杰,左希慶
(湖州職業(yè)技術(shù)學(xué)院 機(jī)電與汽車工程學(xué)院,浙江 湖州 313000)
摘要:數(shù)控仿真技術(shù)對于數(shù)控程序可靠性檢驗(yàn)和切削過程預(yù)測有良好的效果。文章對數(shù)控仿真系統(tǒng)各項(xiàng)功能進(jìn)行了研究,選擇 Delphi7作為開發(fā)環(huán)境,實(shí)現(xiàn)了西門子802D數(shù)控仿真系統(tǒng)的交互界面設(shè)計(jì),開發(fā)西門子802D數(shù)控仿真系統(tǒng)的界面及菜單,實(shí)現(xiàn)了仿真系統(tǒng)對用戶操作的響應(yīng)。
關(guān)鍵詞:數(shù)控仿真技術(shù);交互界面;西門子802D數(shù)控仿真系統(tǒng)
0引言
數(shù)控機(jī)床從發(fā)展至今,給制造業(yè)帶來了巨大的便利。但其價(jià)格相對較高,中小型企業(yè)和大部分學(xué)校引進(jìn)的數(shù)控機(jī)床有限,不足以滿足培訓(xùn)需求,而且直接操作數(shù)控機(jī)床有一定的危險(xiǎn)性[1]。數(shù)控仿真技術(shù)可以較好地解決以上問題。數(shù)控仿真技術(shù)是為虛擬制造建立一個(gè)真實(shí)的加工環(huán)境,與實(shí)際機(jī)床的性能、特征相同,可以通過仿真實(shí)現(xiàn)對各環(huán)節(jié)產(chǎn)品質(zhì)量控制的評(píng)估,成為虛擬制造的一個(gè)重要分支和基礎(chǔ)。利用數(shù)控仿真技術(shù),不僅可以高效率、高安全性、高準(zhǔn)確性地評(píng)估數(shù)控程序的正確性,還可以依據(jù)仿真結(jié)果快速修改加工程序,避免因試切過程造成時(shí)間和材料的不必要浪費(fèi),提高了生產(chǎn)率[2 3]。
1西門子802D數(shù)控系統(tǒng)整體設(shè)計(jì)思想
西門子802D系統(tǒng)是西門子公司發(fā)行的數(shù)控系統(tǒng),它以其友好的操作界面以及強(qiáng)大的數(shù)控加工功能,在國內(nèi)數(shù)控機(jī)床中占有了非常大的比重。西門子802D數(shù)控系統(tǒng)是一款經(jīng)濟(jì)型數(shù)控系統(tǒng)[4],主要包括面板控制單元(PCU)、鍵盤、機(jī)床控制面板(MCP)、SIMODRIVE模塊式驅(qū)動(dòng)系統(tǒng)、帶編碼器的1FK7伺服電機(jī)、IΠO模塊PP72/48、電子手輪[5]等幾大部分。其數(shù)控系統(tǒng)功能采用模塊化的設(shè)計(jì)方法,主要包括POSITON、PROGRAM、OFFSET PARAM 、PROGRAM MANAGER 、SYSTEM ALARM、CUSTOM 6個(gè)模塊。整體設(shè)計(jì)思路如圖1所示。
2西門子802D數(shù)控仿真系統(tǒng)的界面實(shí)現(xiàn)
Delphi是由Borland公司開發(fā)的深受廣大程序員所喜愛的可視化和面向?qū)ο蟮能浖_發(fā)工具。與Visual C++相比,Delphi更簡單、更易于掌握,因此選用Delphi作為西門子802D數(shù)控仿真系統(tǒng)的開發(fā)工具能快速有效地開發(fā)出界面友好、功能強(qiáng)大的數(shù)控仿真系統(tǒng)。數(shù)控仿真系統(tǒng)交互界面由屏幕顯示區(qū)域、系統(tǒng)操作區(qū)域、系統(tǒng)輸入?yún)^(qū)域組成,如圖2所示。
各個(gè)區(qū)域分別定義一個(gè)TPanel組件,然后再在TPanel組件上添加TImage組件、TButton組件、TLabel組件、TStringGrid組件等來完成整個(gè)數(shù)控仿真系統(tǒng)界面的顯示。整個(gè)系統(tǒng)設(shè)計(jì)工程量較大,本文僅介紹POSITION狀態(tài)下屏幕顯示區(qū)域的實(shí)現(xiàn),其他單元的設(shè)計(jì)與此類似。
POSITION狀態(tài)下屏幕顯示區(qū)域使用的組件及要設(shè)置組件的屬性如表1所示。
在Delphi7開發(fā)界面的組件欄[6]上選擇所需要的組件,如圖3所示。
當(dāng)組件在Form上添加好以后就需要在對象編輯器里設(shè)置組件的各種屬性了,如圖4所示。
以上就是仿真系統(tǒng)界面開發(fā)的基本步驟,所有組件都通過上述方法添加和設(shè)置。
POSITION狀態(tài)下屏幕顯示區(qū)域和系統(tǒng)狀態(tài)區(qū)域均由TLabel組件和TPanel組件構(gòu)成。通過設(shè)置Label.Caption來顯示不同的狀態(tài),在Panel上添加Label來顯示機(jī)床坐標(biāo)位置和機(jī)床工藝參數(shù)。其界面如圖5所示。
3西門子802D仿真系統(tǒng)內(nèi)部響應(yīng)的實(shí)現(xiàn)
在系統(tǒng)操作區(qū)域主要的功能有機(jī)床急停開關(guān)的狀態(tài),機(jī)床操作方式Per Point、Jog、VAR INC、Auto、MDA的設(shè)置,機(jī)床快速進(jìn)給的操作,主軸進(jìn)給倍率的調(diào)節(jié),主軸轉(zhuǎn)動(dòng)倍率的調(diào)節(jié),手輪的操作。當(dāng)進(jìn)行這些操作時(shí),仿真系統(tǒng)需要處理這些響應(yīng)事件并把處理結(jié)果顯示在屏幕上。本文僅介紹主軸快速運(yùn)動(dòng)的實(shí)現(xiàn)。
在點(diǎn)擊“Z+”(或“Z-”)按鈕時(shí),機(jī)床主軸將會(huì)進(jìn)行快速移動(dòng),Z軸的坐標(biāo)值也會(huì)隨其變化。但機(jī)床主軸只有在某些操作狀態(tài)下才會(huì)進(jìn)給,因此需要檢查機(jī)床狀態(tài)標(biāo)志的變量值,在此需要檢查3個(gè)標(biāo)志機(jī)床狀態(tài)的全局變量。首先檢查機(jī)床急停開關(guān)的狀態(tài),如果NC_Stop=1則正常,否則給出提示信息要求關(guān)閉急停開關(guān)。其次再檢查機(jī)床操作方式的狀態(tài)的全局變量NC_Status的值,如果NC_Status=2,即機(jī)床處于“JOG”模式下,主軸才能運(yùn)動(dòng)。機(jī)床主軸運(yùn)動(dòng)時(shí)主軸進(jìn)給倍率會(huì)影響主軸運(yùn)動(dòng)的速度,因此需要通過判斷NC_M的值來獲取當(dāng)前主軸的進(jìn)給倍率。代碼如下:
case NC_M of//獲取主軸進(jìn)給倍率
1:Label27.Caption:=‘0’;
2:Label27.Caption:=‘2’;
……
14:Label27.Caption:=‘110’;
15:Label27.Caption:=‘120’;
在仿真系統(tǒng)的屏幕顯示界面會(huì)顯示出當(dāng)前主軸進(jìn)給倍率,如圖6所示。
當(dāng)機(jī)床主軸運(yùn)動(dòng)時(shí)先獲取當(dāng)前坐標(biāo)值Label10.Caption,由于這是個(gè)字符串,要先通過StrToFloat( )函數(shù)把它轉(zhuǎn)化為Float型,再把主軸進(jìn)給倍率Label27.Caption轉(zhuǎn)化為Float型。由于數(shù)控機(jī)床的主軸運(yùn)動(dòng)是在一定范圍內(nèi)進(jìn)行的,一旦超出這個(gè)范圍機(jī)床就會(huì)報(bào)錯(cuò)。因此在機(jī)床主軸運(yùn)動(dòng)時(shí)還需要對主軸進(jìn)行超行程檢查,一旦超出機(jī)床運(yùn)動(dòng)行程則給出提示信息。機(jī)床Z軸坐標(biāo)變化實(shí)現(xiàn)代碼如下:
procedureTForm1.Image75MouseDown(Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);
begin
NC_Stop:=Waring;//機(jī)床急停開關(guān)檢查
if(NC_Stop< >0) then
begin
Image75.Picture.LoadFromFile('pic\\b17-1.bmp');
Z1:=StrToFloat(Label10.Caption);//獲取當(dāng)前Z軸坐標(biāo)值并轉(zhuǎn)換為Float型
if NC_Status =2 then
begin
if(Z1<=-400) then//機(jī)床最大行程檢查
ShowMessage('達(dá)到最大行程')
else
begin
Z1:=Z1-1.55*StrToFloat(Label27.Caption)/100;
Label10.Caption:=FloatToStr(Z1);//把Z軸坐標(biāo)值轉(zhuǎn)化為字符型并在屏幕上顯示end;
end;
end;
end;
在仿真系統(tǒng)屏幕顯示區(qū)域的變化如圖7所示。
4結(jié)束語
利用Delphi7強(qiáng)大的可視化開發(fā)技術(shù),完成了西門子802D數(shù)控仿真系統(tǒng)的交互界面開發(fā),實(shí)現(xiàn)西門子802D數(shù)控仿真系統(tǒng)對用戶操作的內(nèi)部響應(yīng),為后續(xù)機(jī)床實(shí)體仿真奠定了良好的基礎(chǔ)。
參考文獻(xiàn)
?。?] 段英宏. 仿真技術(shù)在數(shù)控系統(tǒng)中的應(yīng)用與發(fā)展[C].2007系統(tǒng)仿真技術(shù)及其應(yīng)用學(xué)術(shù)研討會(huì),2007:481-483.
?。?] 張泉. 數(shù)控加工中心切削過程仿真系統(tǒng)的研究與開發(fā)[D].天津:天津大學(xué),2005.
?。?] 鄧遵義,李攀峰. 數(shù)控仿真軟件在數(shù)控教學(xué)中的應(yīng)用淺析[J]. 中國電力教育,2010(2):81-82.
?。?] 王德軍. 經(jīng)濟(jì)型數(shù)控系統(tǒng)與可編程序控制器(PLC)接口設(shè)計(jì)[J].哈爾濱軸承,2005,26 (4):62-64.
[5] 王新如. 西門子802D數(shù)控系統(tǒng)在車床改造中的應(yīng)用[J]. 中國高新技術(shù)企業(yè),2008(18):125.
?。?] 張宏林. Delphi7程序設(shè)計(jì)與開發(fā)技術(shù)大全[M].北京:人民郵電出版社,2004.