韓永旺
(無錫機(jī)床股份有限公司,江蘇 無錫214161)
作為數(shù)控磨床的操作者要根據(jù)磨削效果調(diào)整磨削量、磨削速度等磨削工藝參數(shù)。在磨削前,操作者要將工件的磨削位置輸入到相應(yīng)參數(shù)中,比如X 軸磨削位,Z 軸磨削位,一般方式為操作者將機(jī)床軸運(yùn)動(dòng)到工件磨削位,將機(jī)床坐標(biāo)界面下對(duì)應(yīng)各軸當(dāng)前位置值記下,轉(zhuǎn)至參數(shù)界面,將記錄的數(shù)值輸入到機(jī)床廠家預(yù)定義的參數(shù)中,這樣,由于界面切換的操作,以及人工輸入的方式將造成使用上的不便以及數(shù)值錯(cuò)誤會(huì)造成的撞車等危險(xiǎn)。鑒于此,需要開發(fā)對(duì)刀功能。雖然各個(gè)數(shù)控磨床廠家配置的數(shù)控系統(tǒng)品牌型號(hào)不同,但相應(yīng)的功能其作用相同,只是名稱區(qū)別。本文以西門子802D sl 數(shù)控系統(tǒng)為例介紹3 種對(duì)刀功能方案的開發(fā)。
方案1:PLC 讀取軸位置后送至相關(guān)位置參數(shù)。
802D sl 系統(tǒng)采用PLC 程序可以讀取機(jī)床坐標(biāo)中的各個(gè)軸的位置。對(duì)應(yīng)各軸的位置地址:
第一軸:VD57000000;第二軸:VD57010000;第三軸:VD57020000;第四軸:VD57030000;第五軸:VD57040000。
802D sl 系統(tǒng) 提供512 字節(jié)NC 與PLC 交換數(shù)據(jù),PLC 定義接口地址對(duì)應(yīng)公共存儲(chǔ)區(qū)V49000000.0~V49000512.7,可以按字節(jié)、字、長字對(duì)其讀取。
NC 亦定義了系統(tǒng)變量對(duì)應(yīng)于此公共存儲(chǔ)區(qū),NC程序中可以利用系統(tǒng)變量對(duì)該存儲(chǔ)器進(jìn)行讀寫。系統(tǒng)變量為:$A_DBB[n]——字節(jié);$A_DBW[n]——字;$A_DBD[n]——長字;$A_DBR[n]——浮點(diǎn)數(shù)。其中n 表示地址偏移。
結(jié)合上述功能編輯PLC 程序,如圖1 所示。
用對(duì)刀按鈕觸發(fā),將軸位置VD57000000 以MOV_R 形式傳遞到V49000000 中,在NC 磨削循環(huán)中可以將將系統(tǒng)變量$A_DBR[0]直接用于X 軸磨削位或賦值給其他變量。
NC 程序如下:
%_N_磨削循環(huán)_MPF
;$PATH=/_N_MPF_DIR
……….
MSG(“X 軸到磨削位”)
G90 G01 X= $A_DBR[0]F=2000
………
M30
方案2:采用異步子程序在NC 程序中將軸位置賦值給相關(guān)位置參數(shù)
西門子數(shù)控802D sl 可以使用異步子程序功能,即可以采用PLC 程序觸發(fā)一些NC 程序,這個(gè)操作不受操作模式的限制,也不受任何加工程序的限制,從而為磨床在非循環(huán)加工前對(duì)刀提供了條件,機(jī)床制造商可以在JOG 方式下觸發(fā)NC 程序?qū)⑤S位置賦值給相關(guān)位置參數(shù)(磨削循環(huán)中的變量R 參數(shù))。
具體步驟如下:
(1)將PLCASUP1.SPF 和PLCASUP2.SPF 兩個(gè)程序存放在CMA 機(jī)床制造商循環(huán)目錄。
兩個(gè)ASUP 子程序如下:
PLCASUP1.SPF
;PROC PLCASUP1 DISPLOF
MSG(“X 軸磨削位對(duì)刀有效”)
R0= $A_IW[X] ;將X 軸當(dāng)前位置賦值給R0
G04 F0.2
MSG(“”)
M17
PLCASUP2.SPF
;PROC PLCASUP2 DISPLOF
MSG(“Z 軸磨削位對(duì)刀有效”)
R1= $A_IW[Z];將Z 軸當(dāng)前位置賦值給R1
G04 F0.2
MSG(“”)
M17
(2)設(shè)置系統(tǒng)參數(shù)
MD19340 $ON_PROG_MASK=4
MD10702 $MN_IGNORE_SINGLEBLOCK_MASK=13
MD11604 $MN_ASUP_START_PRIO_LEVEL=2
MD20107 $MC_PROG_EVENT_IGN_INHIBIT=C
MD20109 $MC_PROG_EVENT_MASK_PROPERTIES=1
(3)PLC 進(jìn)行初始化
ASUPS 初始化信號(hào):
①VB12000001:送數(shù)值1:分配中斷程序PLCASUP1.SPF,其優(yōu)先級(jí)為1。送數(shù)值2:分配中斷程序PLCASUP2.SPF,其優(yōu)先級(jí)為2。
②V12000000.0:啟動(dòng)。
③V12000000.1:寫變量。
④V12000000.2:PI 服務(wù)。
初始化梯形圖,如圖2 所示。
出錯(cuò)時(shí)復(fù)位中斷請(qǐng)求梯形圖,如圖3 所示。
用10.0 觸發(fā)PLCASUP1.SPF 中斷程序,實(shí)現(xiàn)X軸磨削位對(duì)刀梯形圖,如圖4 所示。
用I0.2 觸發(fā)PLCASUP2.SPF 中斷程序,實(shí)現(xiàn)Z軸磨削位對(duì)刀梯形圖,如圖5 所示。
在上述操作后,通過按壓X 對(duì)刀按鈕I0.0 即可將X 軸位置送至R0,通過按壓Z 軸對(duì)刀按鈕I0.1 即可將Z 軸位置送至R1,在磨削循環(huán)中R0 和R1 可以直接用于編程。
磨削循環(huán)程序如下:
%_N_磨削循環(huán)_MPF
;$PATH=/_N_MPF_DIR
……….
MSG(“X 軸到磨削位”)
G90 G01 X=R0 F=2000
MSG(“Z 軸到磨削位”)
G90 G01 Z=R1 F=2000
………
M30
方案3:OEM 人機(jī)界面中處理系統(tǒng)變量將軸位置賦值給相關(guān)位置參數(shù)。
在用戶界面下采用軟鍵觸發(fā)OP 寫指令,如下:
<softkey POSITION="1">
<caption>X 磨削位</caption>
<let name = "tmpVar3" type="INT"></let>
<MSGBOX text="確認(rèn)對(duì)應(yīng)關(guān)系后操作" caption=" 確認(rèn)窗口"
retvalue="tmpVar3" type="BTN_OKCANCEL"/>
<IF>
<CONDITION>"tmpVar3" !=0</CONDITION>
<THEN>
<o(jì)p > " nck/Channel/Parameter/R [0]" = " nck/Channel/MachineAxis/actToolBasePos[u1,0]" </op> //將X 軸位置寫入R0 參數(shù)中
<o(jì)p>"tmpVar3"=0 </op>
</THEN>
<ELSE>
</ELSE>
</IF>
</softkey>
在用戶界面下操作者可以進(jìn)行各個(gè)位置對(duì)刀操作,磨削循環(huán)中可以直接應(yīng)用R 參數(shù)編程。對(duì)刀畫面如圖6 所示
對(duì)比上述3 種方案,各有優(yōu)劣,方案1、2 中都采用了PLC 與NC 結(jié)合實(shí)現(xiàn),編程工作量大,更新修改麻煩,方案3 只在人機(jī)界面中編程實(shí)現(xiàn),對(duì)原PLC 和NC無任何影響,比較適合已有機(jī)床功能增加。人機(jī)界面的開發(fā)不僅局限在對(duì)刀操作,還有更多的功能可實(shí)現(xiàn),對(duì)于提高機(jī)床品質(zhì)會(huì)有很多幫助,機(jī)床電氣設(shè)計(jì)人員可以將此作為開發(fā)重點(diǎn)。
[1]西門子公司. 西門子簡明調(diào)試手冊(cè)[Z].